lucenenet-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From nightowl...@apache.org
Subject [01/11] lucenenet git commit: Ported enough of Sandbox to support QueryParser.Xml
Date Wed, 07 Dec 2016 13:48:19 GMT
Repository: lucenenet
Updated Branches:
  refs/heads/master 5a4837fcf -> bec42a430


http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3395a8b4/Lucene.Net.Tests.Sandbox/Queries/TestSortedSetSortFieldSelectors.cs
----------------------------------------------------------------------
diff --git a/Lucene.Net.Tests.Sandbox/Queries/TestSortedSetSortFieldSelectors.cs b/Lucene.Net.Tests.Sandbox/Queries/TestSortedSetSortFieldSelectors.cs
new file mode 100644
index 0000000..78119e0
--- /dev/null
+++ b/Lucene.Net.Tests.Sandbox/Queries/TestSortedSetSortFieldSelectors.cs
@@ -0,0 +1,611 @@
+using Lucene.Net.Codecs;
+using Lucene.Net.Codecs.DiskDV;
+using Lucene.Net.Codecs.Lucene45;
+using Lucene.Net.Codecs.Memory;
+using Lucene.Net.Documents;
+using Lucene.Net.Index;
+using Lucene.Net.Search;
+using Lucene.Net.Store;
+using Lucene.Net.Util;
+using NUnit.Framework;
+
+namespace Lucene.Net.Sandbox.Queries
+{
+    /*
+     * Licensed to the Apache Software Foundation (ASF) under one or more
+     * contributor license agreements.  See the NOTICE file distributed with
+     * this work for additional information regarding copyright ownership.
+     * The ASF licenses this file to You under the Apache License, Version 2.0
+     * (the "License"); you may not use this file except in compliance with
+     * the License.  You may obtain a copy of the License at
+     *
+     *     http://www.apache.org/licenses/LICENSE-2.0
+     *
+     * Unless required by applicable law or agreed to in writing, software
+     * distributed under the License is distributed on an "AS IS" BASIS,
+     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     * See the License for the specific language governing permissions and
+     * limitations under the License.
+     */
+
+    /// <summary>
+    /// Tests for SortedSetSortField selectors other than MIN,
+    /// these require optional codec support (random access to ordinals)
+    /// </summary>
+    public class TestSortedSetSortFieldSelectors : LuceneTestCase
+    {
+        static Codec savedCodec;
+
+        [TestFixtureSetUp]
+        public static void beforeClass()
+        {
+            savedCodec = Codec.Default;
+            // currently only these codecs that support random access ordinals
+            int victim = Random().nextInt(3);
+            switch (victim)
+            {
+                case 0: Codec.Default = (TestUtil.AlwaysDocValuesFormat(new DirectDocValuesFormat())); break;
+                case 1: Codec.Default = (TestUtil.AlwaysDocValuesFormat(new DiskDocValuesFormat())); break;
+                default: Codec.Default = (TestUtil.AlwaysDocValuesFormat(new Lucene45DocValuesFormat())); break;
+            }
+        }
+
+        [TestFixtureTearDown]
+        public static void afterClass()
+        {
+            Codec.Default = (savedCodec);
+        }
+
+        public override void SetUp()
+        {
+            base.SetUp();
+            // ensure there is nothing in fieldcache before test starts
+            FieldCache.DEFAULT.PurgeAllCaches();
+        }
+
+        private void assertNoFieldCaches()
+        {
+            // docvalues sorting should NOT create any fieldcache entries!
+            assertEquals(0, FieldCache.DEFAULT.CacheEntries.Length);
+        }
+
+        [Test]
+        public void TestMax()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("foo")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("bar")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("baz")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+
+            Sort sort = new Sort(new SortedSetSortField("value", false, Selector.MAX));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'baz' comes before 'foo'
+            assertEquals("2", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("1", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMaxReverse()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("foo")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("bar")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("baz")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+
+            Sort sort = new Sort(new SortedSetSortField("value", true, Selector.MAX));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'baz' comes before 'foo'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMaxMissingFirst()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("foo")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("bar")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("baz")));
+            doc.Add(NewStringField("id", "3", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+
+            SortField sortField = new SortedSetSortField("value", false, Selector.MAX);
+            sortField.MissingValue = (SortField.STRING_FIRST);
+            Sort sort = new Sort(sortField);
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(3, td.TotalHits);
+            // null comes first
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            // 'baz' comes before 'foo'
+            assertEquals("3", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[2].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMaxMissingLast()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("foo")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("bar")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("baz")));
+            doc.Add(NewStringField("id", "3", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+
+            SortField sortField = new SortedSetSortField("value", false, Selector.MAX);
+            sortField.MissingValue = (SortField.STRING_LAST);
+            Sort sort = new Sort(sortField);
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(3, td.TotalHits);
+            // 'baz' comes before 'foo'
+            assertEquals("3", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            // null comes last
+            assertEquals("1", searcher.Doc(td.ScoreDocs[2].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMaxSingleton()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("baz")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("bar")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            Sort sort = new Sort(new SortedSetSortField("value", false, Selector.MAX));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'bar' comes before 'baz'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMin()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            Sort sort = new Sort(new SortedSetSortField("value", false, Selector.MIDDLE_MIN));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'b' comes before 'c'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMinReverse()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            Sort sort = new Sort(new SortedSetSortField("value", true, Selector.MIDDLE_MIN));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'b' comes before 'c'
+            assertEquals("2", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("1", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMinMissingFirst()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(NewStringField("id", "3", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            SortField sortField = new SortedSetSortField("value", false, Selector.MIDDLE_MIN);
+            sortField.MissingValue = (SortField.STRING_FIRST);
+            Sort sort = new Sort(sortField);
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(3, td.TotalHits);
+            // null comes first
+            assertEquals("3", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            // 'b' comes before 'c'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[2].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMinMissingLast()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(NewStringField("id", "3", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            SortField sortField = new SortedSetSortField("value", false, Selector.MIDDLE_MIN);
+            sortField.MissingValue = (SortField.STRING_LAST);
+            Sort sort = new Sort(sortField);
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(3, td.TotalHits);
+            // 'b' comes before 'c'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            // null comes last
+            assertEquals("3", searcher.Doc(td.ScoreDocs[2].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMinSingleton()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("baz")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("bar")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            Sort sort = new Sort(new SortedSetSortField("value", false, Selector.MIDDLE_MIN));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'bar' comes before 'baz'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMax()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            Sort sort = new Sort(new SortedSetSortField("value", false, Selector.MIDDLE_MAX));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'b' comes before 'c'
+            assertEquals("2", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("1", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMaxReverse()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            Sort sort = new Sort(new SortedSetSortField("value", true, Selector.MIDDLE_MAX));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'b' comes before 'c'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMaxMissingFirst()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(NewStringField("id", "3", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            SortField sortField = new SortedSetSortField("value", false, Selector.MIDDLE_MAX);
+            sortField.MissingValue = (SortField.STRING_FIRST);
+            Sort sort = new Sort(sortField);
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(3, td.TotalHits);
+            // null comes first
+            assertEquals("3", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            // 'b' comes before 'c'
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertEquals("1", searcher.Doc(td.ScoreDocs[2].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMaxMissingLast()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(NewStringField("id", "3", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("a")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("c")));
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("d")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("b")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            SortField sortField = new SortedSetSortField("value", false, Selector.MIDDLE_MAX);
+            sortField.MissingValue = (SortField.STRING_LAST);
+            Sort sort = new Sort(sortField);
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(3, td.TotalHits);
+            // 'b' comes before 'c'
+            assertEquals("2", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("1", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            // null comes last
+            assertEquals("3", searcher.Doc(td.ScoreDocs[2].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+
+        [Test]
+        public void TestMiddleMaxSingleton()
+        {
+            Directory dir = NewDirectory();
+            RandomIndexWriter writer = new RandomIndexWriter(Random(), dir, Similarity, TimeZone);
+            Document doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("baz")));
+            doc.Add(NewStringField("id", "2", Field.Store.YES));
+            writer.AddDocument(doc);
+            doc = new Document();
+            doc.Add(new SortedSetDocValuesField("value", new BytesRef("bar")));
+            doc.Add(NewStringField("id", "1", Field.Store.YES));
+            writer.AddDocument(doc);
+            IndexReader ir = writer.Reader;
+            writer.Dispose();
+
+            // slow wrapper does not support random access ordinals (there is no need for that!)
+            IndexSearcher searcher = NewSearcher(ir, false);
+            Sort sort = new Sort(new SortedSetSortField("value", false, Selector.MIDDLE_MAX));
+
+            TopDocs td = searcher.Search(new MatchAllDocsQuery(), 10, sort);
+            assertEquals(2, td.TotalHits);
+            // 'bar' comes before 'baz'
+            assertEquals("1", searcher.Doc(td.ScoreDocs[0].Doc).Get("id"));
+            assertEquals("2", searcher.Doc(td.ScoreDocs[1].Doc).Get("id"));
+            assertNoFieldCaches();
+
+            ir.Dispose();
+            dir.Dispose();
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3395a8b4/Lucene.Net.Tests.Sandbox/Queries/fuzzyTestData.txt
----------------------------------------------------------------------
diff --git a/Lucene.Net.Tests.Sandbox/Queries/fuzzyTestData.txt b/Lucene.Net.Tests.Sandbox/Queries/fuzzyTestData.txt
new file mode 100644
index 0000000..b759da7
--- /dev/null
+++ b/Lucene.Net.Tests.Sandbox/Queries/fuzzyTestData.txt
@@ -0,0 +1,3721 @@
+3
+0,0,1,0.1
+1
+0,1.0
+1,0,1,0.1
+1
+1,1.0
+2,0,1,0.1
+1
+2,1.0
+3,0,1,0.1
+1
+3,1.0
+4,0,1,0.1
+1
+4,1.0
+5,0,1,0.1
+1
+5,1.0
+6,0,1,0.1
+1
+6,1.0
+7,0,1,0.1
+1
+7,1.0
+0,0,1,0.3
+1
+0,1.0
+1,0,1,0.3
+1
+1,1.0
+2,0,1,0.3
+1
+2,1.0
+3,0,1,0.3
+1
+3,1.0
+4,0,1,0.3
+1
+4,1.0
+5,0,1,0.3
+1
+5,1.0
+6,0,1,0.3
+1
+6,1.0
+7,0,1,0.3
+1
+7,1.0
+0,0,1,0.5
+1
+0,1.0
+1,0,1,0.5
+1
+1,1.0
+2,0,1,0.5
+1
+2,1.0
+3,0,1,0.5
+1
+3,1.0
+4,0,1,0.5
+1
+4,1.0
+5,0,1,0.5
+1
+5,1.0
+6,0,1,0.5
+1
+6,1.0
+7,0,1,0.5
+1
+7,1.0
+0,0,1,0.7
+1
+0,1.0
+1,0,1,0.7
+1
+1,1.0
+2,0,1,0.7
+1
+2,1.0
+3,0,1,0.7
+1
+3,1.0
+4,0,1,0.7
+1
+4,1.0
+5,0,1,0.7
+1
+5,1.0
+6,0,1,0.7
+1
+6,1.0
+7,0,1,0.7
+1
+7,1.0
+0,0,1,0.9
+1
+0,1.0
+1,0,1,0.9
+1
+1,1.0
+2,0,1,0.9
+1
+2,1.0
+3,0,1,0.9
+1
+3,1.0
+4,0,1,0.9
+1
+4,1.0
+5,0,1,0.9
+1
+5,1.0
+6,0,1,0.9
+1
+6,1.0
+7,0,1,0.9
+1
+7,1.0
+0,0,2,0.1
+1
+0,1.0
+1,0,2,0.1
+1
+1,1.0
+2,0,2,0.1
+2
+2,0.91381156
+4,0.4061385
+3,0,2,0.1
+2
+3,0.91381156
+2,0.4061385
+4,0,2,0.1
+2
+4,0.84623283
+5,0.53281325
+5,0,2,0.1
+2
+5,0.84623283
+4,0.53281325
+6,0,2,0.1
+2
+6,0.84623283
+4,0.53281325
+7,0,2,0.1
+2
+7,0.84623283
+5,0.53281325
+0,0,2,0.3
+1
+0,1.0
+1,0,2,0.3
+1
+1,1.0
+2,0,2,0.3
+2
+2,0.96152395
+4,0.27472112
+3,0,2,0.3
+2
+3,0.96152395
+2,0.27472112
+4,0,2,0.3
+2
+4,0.88583153
+5,0.4640069
+5,0,2,0.3
+2
+5,0.88583153
+4,0.4640069
+6,0,2,0.3
+2
+6,0.88583153
+4,0.4640069
+7,0,2,0.3
+2
+7,0.88583153
+5,0.4640069
+0,0,2,0.5
+1
+0,1.0
+1,0,2,0.5
+1
+1,1.0
+2,0,2,0.5
+1
+2,1.0
+3,0,2,0.5
+1
+3,1.0
+4,0,2,0.5
+2
+4,0.9486833
+5,0.3162277
+5,0,2,0.5
+2
+5,0.9486833
+4,0.3162277
+6,0,2,0.5
+2
+6,0.9486833
+4,0.3162277
+7,0,2,0.5
+2
+7,0.9486833
+5,0.3162277
+0,0,2,0.7
+1
+0,1.0
+1,0,2,0.7
+1
+1,1.0
+2,0,2,0.7
+1
+2,1.0
+3,0,2,0.7
+1
+3,1.0
+4,0,2,0.7
+1
+4,1.0
+5,0,2,0.7
+1
+5,1.0
+6,0,2,0.7
+1
+6,1.0
+7,0,2,0.7
+1
+7,1.0
+0,0,2,0.9
+1
+0,1.0
+1,0,2,0.9
+1
+1,1.0
+2,0,2,0.9
+1
+2,1.0
+3,0,2,0.9
+1
+3,1.0
+4,0,2,0.9
+1
+4,1.0
+5,0,2,0.9
+1
+5,1.0
+6,0,2,0.9
+1
+6,1.0
+7,0,2,0.9
+1
+7,1.0
+0,0,3,0.1
+1
+0,1.0
+1,0,3,0.1
+1
+1,1.0
+2,0,3,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,0,3,0.1
+3
+3,0.84664875
+2,0.37628835
+5,0.37628835
+4,0,3,0.1
+3
+4,0.74683726
+5,0.47023085
+6,0.47023085
+5,0,3,0.1
+3
+5,0.74683726
+4,0.47023085
+7,0.47023085
+6,0,3,0.1
+3
+6,0.74683726
+4,0.47023085
+7,0.47023085
+7,0,3,0.1
+3
+7,0.74683726
+5,0.47023085
+6,0.47023085
+0,0,3,0.3
+1
+0,1.0
+1,0,3,0.3
+1
+1,1.0
+2,0,3,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,0,3,0.3
+3
+3,0.92717266
+2,0.26490647
+5,0.26490647
+4,0,3,0.3
+3
+4,0.8035427
+5,0.42090324
+6,0.42090324
+5,0,3,0.3
+3
+5,0.80354273
+4,0.42090327
+7,0.42090327
+6,0,3,0.3
+3
+6,0.80354273
+4,0.42090327
+7,0.42090327
+7,0,3,0.3
+3
+7,0.8035427
+5,0.42090324
+6,0.42090324
+0,0,3,0.5
+1
+0,1.0
+1,0,3,0.5
+1
+1,1.0
+2,0,3,0.5
+1
+2,1.0
+3,0,3,0.5
+1
+3,1.0
+4,0,3,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,0,3,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,0,3,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,0,3,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,0,3,0.7
+1
+0,1.0
+1,0,3,0.7
+1
+1,1.0
+2,0,3,0.7
+1
+2,1.0
+3,0,3,0.7
+1
+3,1.0
+4,0,3,0.7
+1
+4,1.0
+5,0,3,0.7
+1
+5,1.0
+6,0,3,0.7
+1
+6,1.0
+7,0,3,0.7
+1
+7,1.0
+0,0,3,0.9
+1
+0,1.0
+1,0,3,0.9
+1
+1,1.0
+2,0,3,0.9
+1
+2,1.0
+3,0,3,0.9
+1
+3,1.0
+4,0,3,0.9
+1
+4,1.0
+5,0,3,0.9
+1
+5,1.0
+6,0,3,0.9
+1
+6,1.0
+7,0,3,0.9
+1
+7,1.0
+0,0,4,0.1
+1
+0,1.0
+1,0,4,0.1
+1
+1,1.0
+2,0,4,0.1
+4
+2,0.7924058
+3,0.35218036
+4,0.35218036
+5,0.35218036
+3,0,4,0.1
+4
+3,0.79240584
+2,0.3521804
+5,0.3521804
+6,0.3521804
+4,0,4,0.1
+4
+4,0.7088104
+5,0.44628802
+6,0.44628802
+2,0.31502685
+5,0,4,0.1
+4
+5,0.7088104
+4,0.44628802
+7,0.44628802
+2,0.31502685
+6,0,4,0.1
+4
+6,0.7088104
+4,0.44628802
+7,0.44628802
+2,0.31502685
+7,0,4,0.1
+4
+7,0.7088104
+5,0.44628802
+6,0.44628802
+3,0.31502685
+0,0,4,0.3
+1
+0,1.0
+1,0,4,0.3
+1
+1,1.0
+2,0,4,0.3
+4
+2,0.8962582
+3,0.25607374
+4,0.25607374
+5,0.25607374
+3,0,4,0.3
+4
+3,0.8962582
+2,0.25607374
+5,0.25607374
+6,0.25607374
+4,0,4,0.3
+4
+4,0.7831679
+5,0.41023073
+6,0.41023073
+2,0.22376224
+5,0,4,0.3
+4
+5,0.7831679
+4,0.41023073
+7,0.41023073
+2,0.22376224
+6,0,4,0.3
+4
+6,0.7831679
+4,0.41023073
+7,0.41023073
+2,0.22376224
+7,0,4,0.3
+4
+7,0.7831679
+5,0.41023073
+6,0.41023073
+3,0.22376224
+0,0,4,0.5
+1
+0,1.0
+1,0,4,0.5
+1
+1,1.0
+2,0,4,0.5
+1
+2,1.0
+3,0,4,0.5
+1
+3,1.0
+4,0,4,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,0,4,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,0,4,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,0,4,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,0,4,0.7
+1
+0,1.0
+1,0,4,0.7
+1
+1,1.0
+2,0,4,0.7
+1
+2,1.0
+3,0,4,0.7
+1
+3,1.0
+4,0,4,0.7
+1
+4,1.0
+5,0,4,0.7
+1
+5,1.0
+6,0,4,0.7
+1
+6,1.0
+7,0,4,0.7
+1
+7,1.0
+0,0,4,0.9
+1
+0,1.0
+1,0,4,0.9
+1
+1,1.0
+2,0,4,0.9
+1
+2,1.0
+3,0,4,0.9
+1
+3,1.0
+4,0,4,0.9
+1
+4,1.0
+5,0,4,0.9
+1
+5,1.0
+6,0,4,0.9
+1
+6,1.0
+7,0,4,0.9
+1
+7,1.0
+0,0,5,0.1
+1
+0,1.0
+1,0,5,0.1
+1
+1,1.0
+2,0,5,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,0,5,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,0,5,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,0,5,0.1
+5
+5,0.67605716
+4,0.42566562
+7,0.42566562
+2,0.30046988
+3,0.30046988
+6,0,5,0.1
+5
+6,0.67605716
+4,0.42566562
+7,0.42566562
+2,0.30046988
+3,0.30046988
+7,0,5,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,0,5,0.3
+1
+0,1.0
+1,0,5,0.3
+1
+1,1.0
+2,0,5,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,0,5,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,0,5,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,0,5,0.3
+5
+5,0.7642683
+4,0.40033093
+7,0.40033093
+2,0.21836235
+3,0.21836235
+6,0,5,0.3
+5
+6,0.7642683
+4,0.40033093
+7,0.40033093
+2,0.21836235
+3,0.21836235
+7,0,5,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,0,5,0.5
+1
+0,1.0
+1,0,5,0.5
+1
+1,1.0
+2,0,5,0.5
+1
+2,1.0
+3,0,5,0.5
+1
+3,1.0
+4,0,5,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,0,5,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,0,5,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,0,5,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,0,5,0.7
+1
+0,1.0
+1,0,5,0.7
+1
+1,1.0
+2,0,5,0.7
+1
+2,1.0
+3,0,5,0.7
+1
+3,1.0
+4,0,5,0.7
+1
+4,1.0
+5,0,5,0.7
+1
+5,1.0
+6,0,5,0.7
+1
+6,1.0
+7,0,5,0.7
+1
+7,1.0
+0,0,5,0.9
+1
+0,1.0
+1,0,5,0.9
+1
+1,1.0
+2,0,5,0.9
+1
+2,1.0
+3,0,5,0.9
+1
+3,1.0
+4,0,5,0.9
+1
+4,1.0
+5,0,5,0.9
+1
+5,1.0
+6,0,5,0.9
+1
+6,1.0
+7,0,5,0.9
+1
+7,1.0
+0,0,6,0.1
+1
+0,1.0
+1,0,6,0.1
+1
+1,1.0
+2,0,6,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,0,6,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,0,6,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,0,6,0.1
+6
+5,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+6,0.17264226
+6,0,6,0.1
+6
+6,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+5,0.17264226
+7,0,6,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,0,6,0.3
+1
+0,1.0
+1,0,6,0.3
+1
+1,1.0
+2,0,6,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,0,6,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,0,6,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,0,6,0.3
+6
+5,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+6,0.036369618
+6,0,6,0.3
+6
+6,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+5,0.036369618
+7,0,6,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,0,6,0.5
+1
+0,1.0
+1,0,6,0.5
+1
+1,1.0
+2,0,6,0.5
+1
+2,1.0
+3,0,6,0.5
+1
+3,1.0
+4,0,6,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,0,6,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,0,6,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,0,6,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,0,6,0.7
+1
+0,1.0
+1,0,6,0.7
+1
+1,1.0
+2,0,6,0.7
+1
+2,1.0
+3,0,6,0.7
+1
+3,1.0
+4,0,6,0.7
+1
+4,1.0
+5,0,6,0.7
+1
+5,1.0
+6,0,6,0.7
+1
+6,1.0
+7,0,6,0.7
+1
+7,1.0
+0,0,6,0.9
+1
+0,1.0
+1,0,6,0.9
+1
+1,1.0
+2,0,6,0.9
+1
+2,1.0
+3,0,6,0.9
+1
+3,1.0
+4,0,6,0.9
+1
+4,1.0
+5,0,6,0.9
+1
+5,1.0
+6,0,6,0.9
+1
+6,1.0
+7,0,6,0.9
+1
+7,1.0
+0,0,7,0.1
+1
+0,1.0
+1,0,7,0.1
+1
+1,1.0
+2,0,7,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,0,7,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,0,7,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,0,7,0.1
+6
+5,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+6,0.17264226
+6,0,7,0.1
+6
+6,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+5,0.17264226
+7,0,7,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,0,7,0.3
+1
+0,1.0
+1,0,7,0.3
+1
+1,1.0
+2,0,7,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,0,7,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,0,7,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,0,7,0.3
+6
+5,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+6,0.036369618
+6,0,7,0.3
+6
+6,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+5,0.036369618
+7,0,7,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,0,7,0.5
+1
+0,1.0
+1,0,7,0.5
+1
+1,1.0
+2,0,7,0.5
+1
+2,1.0
+3,0,7,0.5
+1
+3,1.0
+4,0,7,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,0,7,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,0,7,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,0,7,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,0,7,0.7
+1
+0,1.0
+1,0,7,0.7
+1
+1,1.0
+2,0,7,0.7
+1
+2,1.0
+3,0,7,0.7
+1
+3,1.0
+4,0,7,0.7
+1
+4,1.0
+5,0,7,0.7
+1
+5,1.0
+6,0,7,0.7
+1
+6,1.0
+7,0,7,0.7
+1
+7,1.0
+0,0,7,0.9
+1
+0,1.0
+1,0,7,0.9
+1
+1,1.0
+2,0,7,0.9
+1
+2,1.0
+3,0,7,0.9
+1
+3,1.0
+4,0,7,0.9
+1
+4,1.0
+5,0,7,0.9
+1
+5,1.0
+6,0,7,0.9
+1
+6,1.0
+7,0,7,0.9
+1
+7,1.0
+0,0,8,0.1
+1
+0,1.0
+1,0,8,0.1
+1
+1,1.0
+2,0,8,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,0,8,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,0,8,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,0,8,0.1
+6
+5,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+6,0.17264226
+6,0,8,0.1
+6
+6,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+5,0.17264226
+7,0,8,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,0,8,0.3
+1
+0,1.0
+1,0,8,0.3
+1
+1,1.0
+2,0,8,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,0,8,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,0,8,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,0,8,0.3
+6
+5,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+6,0.036369618
+6,0,8,0.3
+6
+6,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+5,0.036369618
+7,0,8,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,0,8,0.5
+1
+0,1.0
+1,0,8,0.5
+1
+1,1.0
+2,0,8,0.5
+1
+2,1.0
+3,0,8,0.5
+1
+3,1.0
+4,0,8,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,0,8,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,0,8,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,0,8,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,0,8,0.7
+1
+0,1.0
+1,0,8,0.7
+1
+1,1.0
+2,0,8,0.7
+1
+2,1.0
+3,0,8,0.7
+1
+3,1.0
+4,0,8,0.7
+1
+4,1.0
+5,0,8,0.7
+1
+5,1.0
+6,0,8,0.7
+1
+6,1.0
+7,0,8,0.7
+1
+7,1.0
+0,0,8,0.9
+1
+0,1.0
+1,0,8,0.9
+1
+1,1.0
+2,0,8,0.9
+1
+2,1.0
+3,0,8,0.9
+1
+3,1.0
+4,0,8,0.9
+1
+4,1.0
+5,0,8,0.9
+1
+5,1.0
+6,0,8,0.9
+1
+6,1.0
+7,0,8,0.9
+1
+7,1.0
+0,1,1,0.1
+1
+0,1.0
+1,1,1,0.1
+1
+1,1.0
+2,1,1,0.1
+1
+2,1.0
+3,1,1,0.1
+1
+3,1.0
+4,1,1,0.1
+1
+4,1.0
+5,1,1,0.1
+1
+5,1.0
+6,1,1,0.1
+1
+6,1.0
+7,1,1,0.1
+1
+7,1.0
+0,1,1,0.3
+1
+0,1.0
+1,1,1,0.3
+1
+1,1.0
+2,1,1,0.3
+1
+2,1.0
+3,1,1,0.3
+1
+3,1.0
+4,1,1,0.3
+1
+4,1.0
+5,1,1,0.3
+1
+5,1.0
+6,1,1,0.3
+1
+6,1.0
+7,1,1,0.3
+1
+7,1.0
+0,1,1,0.5
+1
+0,1.0
+1,1,1,0.5
+1
+1,1.0
+2,1,1,0.5
+1
+2,1.0
+3,1,1,0.5
+1
+3,1.0
+4,1,1,0.5
+1
+4,1.0
+5,1,1,0.5
+1
+5,1.0
+6,1,1,0.5
+1
+6,1.0
+7,1,1,0.5
+1
+7,1.0
+0,1,1,0.7
+1
+0,1.0
+1,1,1,0.7
+1
+1,1.0
+2,1,1,0.7
+1
+2,1.0
+3,1,1,0.7
+1
+3,1.0
+4,1,1,0.7
+1
+4,1.0
+5,1,1,0.7
+1
+5,1.0
+6,1,1,0.7
+1
+6,1.0
+7,1,1,0.7
+1
+7,1.0
+0,1,1,0.9
+1
+0,1.0
+1,1,1,0.9
+1
+1,1.0
+2,1,1,0.9
+1
+2,1.0
+3,1,1,0.9
+1
+3,1.0
+4,1,1,0.9
+1
+4,1.0
+5,1,1,0.9
+1
+5,1.0
+6,1,1,0.9
+1
+6,1.0
+7,1,1,0.9
+1
+7,1.0
+0,1,2,0.1
+1
+0,1.0
+1,1,2,0.1
+1
+1,1.0
+2,1,2,0.1
+2
+2,0.91381156
+4,0.4061385
+3,1,2,0.1
+2
+3,0.91381156
+2,0.4061385
+4,1,2,0.1
+2
+4,0.84623283
+5,0.53281325
+5,1,2,0.1
+2
+5,0.84623283
+4,0.53281325
+6,1,2,0.1
+2
+6,0.84623283
+4,0.53281325
+7,1,2,0.1
+2
+7,0.84623283
+5,0.53281325
+0,1,2,0.3
+1
+0,1.0
+1,1,2,0.3
+1
+1,1.0
+2,1,2,0.3
+2
+2,0.96152395
+4,0.27472112
+3,1,2,0.3
+2
+3,0.96152395
+2,0.27472112
+4,1,2,0.3
+2
+4,0.88583153
+5,0.4640069
+5,1,2,0.3
+2
+5,0.88583153
+4,0.4640069
+6,1,2,0.3
+2
+6,0.88583153
+4,0.4640069
+7,1,2,0.3
+2
+7,0.88583153
+5,0.4640069
+0,1,2,0.5
+1
+0,1.0
+1,1,2,0.5
+1
+1,1.0
+2,1,2,0.5
+1
+2,1.0
+3,1,2,0.5
+1
+3,1.0
+4,1,2,0.5
+2
+4,0.9486833
+5,0.3162277
+5,1,2,0.5
+2
+5,0.9486833
+4,0.3162277
+6,1,2,0.5
+2
+6,0.9486833
+4,0.3162277
+7,1,2,0.5
+2
+7,0.9486833
+5,0.3162277
+0,1,2,0.7
+1
+0,1.0
+1,1,2,0.7
+1
+1,1.0
+2,1,2,0.7
+1
+2,1.0
+3,1,2,0.7
+1
+3,1.0
+4,1,2,0.7
+1
+4,1.0
+5,1,2,0.7
+1
+5,1.0
+6,1,2,0.7
+1
+6,1.0
+7,1,2,0.7
+1
+7,1.0
+0,1,2,0.9
+1
+0,1.0
+1,1,2,0.9
+1
+1,1.0
+2,1,2,0.9
+1
+2,1.0
+3,1,2,0.9
+1
+3,1.0
+4,1,2,0.9
+1
+4,1.0
+5,1,2,0.9
+1
+5,1.0
+6,1,2,0.9
+1
+6,1.0
+7,1,2,0.9
+1
+7,1.0
+0,1,3,0.1
+1
+0,1.0
+1,1,3,0.1
+1
+1,1.0
+2,1,3,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,1,3,0.1
+3
+3,0.84664875
+2,0.37628835
+5,0.37628835
+4,1,3,0.1
+3
+4,0.74683726
+5,0.47023085
+6,0.47023085
+5,1,3,0.1
+3
+5,0.74683726
+4,0.47023085
+7,0.47023085
+6,1,3,0.1
+3
+6,0.74683726
+4,0.47023085
+7,0.47023085
+7,1,3,0.1
+3
+7,0.74683726
+5,0.47023085
+6,0.47023085
+0,1,3,0.3
+1
+0,1.0
+1,1,3,0.3
+1
+1,1.0
+2,1,3,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,1,3,0.3
+3
+3,0.92717266
+2,0.26490647
+5,0.26490647
+4,1,3,0.3
+3
+4,0.8035427
+5,0.42090324
+6,0.42090324
+5,1,3,0.3
+3
+5,0.80354273
+4,0.42090327
+7,0.42090327
+6,1,3,0.3
+3
+6,0.80354273
+4,0.42090327
+7,0.42090327
+7,1,3,0.3
+3
+7,0.8035427
+5,0.42090324
+6,0.42090324
+0,1,3,0.5
+1
+0,1.0
+1,1,3,0.5
+1
+1,1.0
+2,1,3,0.5
+1
+2,1.0
+3,1,3,0.5
+1
+3,1.0
+4,1,3,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,1,3,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,1,3,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,1,3,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,1,3,0.7
+1
+0,1.0
+1,1,3,0.7
+1
+1,1.0
+2,1,3,0.7
+1
+2,1.0
+3,1,3,0.7
+1
+3,1.0
+4,1,3,0.7
+1
+4,1.0
+5,1,3,0.7
+1
+5,1.0
+6,1,3,0.7
+1
+6,1.0
+7,1,3,0.7
+1
+7,1.0
+0,1,3,0.9
+1
+0,1.0
+1,1,3,0.9
+1
+1,1.0
+2,1,3,0.9
+1
+2,1.0
+3,1,3,0.9
+1
+3,1.0
+4,1,3,0.9
+1
+4,1.0
+5,1,3,0.9
+1
+5,1.0
+6,1,3,0.9
+1
+6,1.0
+7,1,3,0.9
+1
+7,1.0
+0,1,4,0.1
+1
+0,1.0
+1,1,4,0.1
+1
+1,1.0
+2,1,4,0.1
+4
+2,0.7924058
+3,0.35218036
+4,0.35218036
+5,0.35218036
+3,1,4,0.1
+4
+3,0.79240584
+2,0.3521804
+5,0.3521804
+6,0.3521804
+4,1,4,0.1
+4
+4,0.7088104
+5,0.44628802
+6,0.44628802
+2,0.31502685
+5,1,4,0.1
+4
+5,0.7088104
+4,0.44628802
+7,0.44628802
+2,0.31502685
+6,1,4,0.1
+4
+6,0.7088104
+4,0.44628802
+7,0.44628802
+2,0.31502685
+7,1,4,0.1
+4
+7,0.7088104
+5,0.44628802
+6,0.44628802
+3,0.31502685
+0,1,4,0.3
+1
+0,1.0
+1,1,4,0.3
+1
+1,1.0
+2,1,4,0.3
+4
+2,0.8962582
+3,0.25607374
+4,0.25607374
+5,0.25607374
+3,1,4,0.3
+4
+3,0.8962582
+2,0.25607374
+5,0.25607374
+6,0.25607374
+4,1,4,0.3
+4
+4,0.7831679
+5,0.41023073
+6,0.41023073
+2,0.22376224
+5,1,4,0.3
+4
+5,0.7831679
+4,0.41023073
+7,0.41023073
+2,0.22376224
+6,1,4,0.3
+4
+6,0.7831679
+4,0.41023073
+7,0.41023073
+2,0.22376224
+7,1,4,0.3
+4
+7,0.7831679
+5,0.41023073
+6,0.41023073
+3,0.22376224
+0,1,4,0.5
+1
+0,1.0
+1,1,4,0.5
+1
+1,1.0
+2,1,4,0.5
+1
+2,1.0
+3,1,4,0.5
+1
+3,1.0
+4,1,4,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,1,4,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,1,4,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,1,4,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,1,4,0.7
+1
+0,1.0
+1,1,4,0.7
+1
+1,1.0
+2,1,4,0.7
+1
+2,1.0
+3,1,4,0.7
+1
+3,1.0
+4,1,4,0.7
+1
+4,1.0
+5,1,4,0.7
+1
+5,1.0
+6,1,4,0.7
+1
+6,1.0
+7,1,4,0.7
+1
+7,1.0
+0,1,4,0.9
+1
+0,1.0
+1,1,4,0.9
+1
+1,1.0
+2,1,4,0.9
+1
+2,1.0
+3,1,4,0.9
+1
+3,1.0
+4,1,4,0.9
+1
+4,1.0
+5,1,4,0.9
+1
+5,1.0
+6,1,4,0.9
+1
+6,1.0
+7,1,4,0.9
+1
+7,1.0
+0,1,5,0.1
+1
+0,1.0
+1,1,5,0.1
+1
+1,1.0
+2,1,5,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,1,5,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,1,5,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,1,5,0.1
+5
+5,0.67605716
+4,0.42566562
+7,0.42566562
+2,0.30046988
+3,0.30046988
+6,1,5,0.1
+5
+6,0.67605716
+4,0.42566562
+7,0.42566562
+2,0.30046988
+3,0.30046988
+7,1,5,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,1,5,0.3
+1
+0,1.0
+1,1,5,0.3
+1
+1,1.0
+2,1,5,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,1,5,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,1,5,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,1,5,0.3
+5
+5,0.7642683
+4,0.40033093
+7,0.40033093
+2,0.21836235
+3,0.21836235
+6,1,5,0.3
+5
+6,0.7642683
+4,0.40033093
+7,0.40033093
+2,0.21836235
+3,0.21836235
+7,1,5,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,1,5,0.5
+1
+0,1.0
+1,1,5,0.5
+1
+1,1.0
+2,1,5,0.5
+1
+2,1.0
+3,1,5,0.5
+1
+3,1.0
+4,1,5,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,1,5,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,1,5,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,1,5,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,1,5,0.7
+1
+0,1.0
+1,1,5,0.7
+1
+1,1.0
+2,1,5,0.7
+1
+2,1.0
+3,1,5,0.7
+1
+3,1.0
+4,1,5,0.7
+1
+4,1.0
+5,1,5,0.7
+1
+5,1.0
+6,1,5,0.7
+1
+6,1.0
+7,1,5,0.7
+1
+7,1.0
+0,1,5,0.9
+1
+0,1.0
+1,1,5,0.9
+1
+1,1.0
+2,1,5,0.9
+1
+2,1.0
+3,1,5,0.9
+1
+3,1.0
+4,1,5,0.9
+1
+4,1.0
+5,1,5,0.9
+1
+5,1.0
+6,1,5,0.9
+1
+6,1.0
+7,1,5,0.9
+1
+7,1.0
+0,1,6,0.1
+1
+0,1.0
+1,1,6,0.1
+1
+1,1.0
+2,1,6,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,1,6,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,1,6,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,1,6,0.1
+6
+5,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+6,0.17264226
+6,1,6,0.1
+6
+6,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+5,0.17264226
+7,1,6,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,1,6,0.3
+1
+0,1.0
+1,1,6,0.3
+1
+1,1.0
+2,1,6,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,1,6,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,1,6,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,1,6,0.3
+6
+5,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+6,0.036369618
+6,1,6,0.3
+6
+6,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+5,0.036369618
+7,1,6,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,1,6,0.5
+1
+0,1.0
+1,1,6,0.5
+1
+1,1.0
+2,1,6,0.5
+1
+2,1.0
+3,1,6,0.5
+1
+3,1.0
+4,1,6,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,1,6,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,1,6,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,1,6,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,1,6,0.7
+1
+0,1.0
+1,1,6,0.7
+1
+1,1.0
+2,1,6,0.7
+1
+2,1.0
+3,1,6,0.7
+1
+3,1.0
+4,1,6,0.7
+1
+4,1.0
+5,1,6,0.7
+1
+5,1.0
+6,1,6,0.7
+1
+6,1.0
+7,1,6,0.7
+1
+7,1.0
+0,1,6,0.9
+1
+0,1.0
+1,1,6,0.9
+1
+1,1.0
+2,1,6,0.9
+1
+2,1.0
+3,1,6,0.9
+1
+3,1.0
+4,1,6,0.9
+1
+4,1.0
+5,1,6,0.9
+1
+5,1.0
+6,1,6,0.9
+1
+6,1.0
+7,1,6,0.9
+1
+7,1.0
+0,1,7,0.1
+1
+0,1.0
+1,1,7,0.1
+1
+1,1.0
+2,1,7,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,1,7,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,1,7,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,1,7,0.1
+6
+5,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+6,0.17264226
+6,1,7,0.1
+6
+6,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+5,0.17264226
+7,1,7,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,1,7,0.3
+1
+0,1.0
+1,1,7,0.3
+1
+1,1.0
+2,1,7,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,1,7,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,1,7,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,1,7,0.3
+6
+5,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+6,0.036369618
+6,1,7,0.3
+6
+6,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+5,0.036369618
+7,1,7,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,1,7,0.5
+1
+0,1.0
+1,1,7,0.5
+1
+1,1.0
+2,1,7,0.5
+1
+2,1.0
+3,1,7,0.5
+1
+3,1.0
+4,1,7,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,1,7,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,1,7,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,1,7,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,1,7,0.7
+1
+0,1.0
+1,1,7,0.7
+1
+1,1.0
+2,1,7,0.7
+1
+2,1.0
+3,1,7,0.7
+1
+3,1.0
+4,1,7,0.7
+1
+4,1.0
+5,1,7,0.7
+1
+5,1.0
+6,1,7,0.7
+1
+6,1.0
+7,1,7,0.7
+1
+7,1.0
+0,1,7,0.9
+1
+0,1.0
+1,1,7,0.9
+1
+1,1.0
+2,1,7,0.9
+1
+2,1.0
+3,1,7,0.9
+1
+3,1.0
+4,1,7,0.9
+1
+4,1.0
+5,1,7,0.9
+1
+5,1.0
+6,1,7,0.9
+1
+6,1.0
+7,1,7,0.9
+1
+7,1.0
+0,1,8,0.1
+1
+0,1.0
+1,1,8,0.1
+1
+1,1.0
+2,1,8,0.1
+5
+2,0.7474093
+3,0.33218193
+4,0.33218193
+5,0.33218193
+6,0.33218193
+3,1,8,0.1
+5
+3,0.74740934
+2,0.33218196
+5,0.33218196
+6,0.33218196
+7,0.33218196
+4,1,8,0.1
+5
+4,0.697137
+5,0.4389381
+6,0.4389381
+2,0.30983868
+7,0.18073922
+5,1,8,0.1
+6
+5,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+6,0.17264226
+6,1,8,0.1
+6
+6,0.6659059
+4,0.41927406
+7,0.41927406
+2,0.2959582
+3,0.2959582
+5,0.17264226
+7,1,8,0.1
+5
+7,0.697137
+5,0.4389381
+6,0.4389381
+3,0.30983868
+4,0.18073922
+0,1,8,0.3
+1
+0,1.0
+1,1,8,0.3
+1
+1,1.0
+2,1,8,0.3
+5
+2,0.86824316
+3,0.24806947
+4,0.24806947
+5,0.24806947
+6,0.24806947
+3,1,8,0.3
+5
+3,0.8682432
+2,0.24806948
+5,0.24806948
+6,0.24806948
+7,0.24806948
+4,1,8,0.3
+5
+4,0.7826238
+5,0.40994576
+6,0.40994576
+2,0.2236068
+7,0.037267767
+5,1,8,0.3
+6
+5,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+6,0.036369618
+6,1,8,0.3
+6
+6,0.76376265
+4,0.40006608
+7,0.40006608
+2,0.2182179
+3,0.2182179
+5,0.036369618
+7,1,8,0.3
+5
+7,0.7826238
+5,0.40994576
+6,0.40994576
+3,0.2236068
+4,0.037267767
+0,1,8,0.5
+1
+0,1.0
+1,1,8,0.5
+1
+1,1.0
+2,1,8,0.5
+1
+2,1.0
+3,1,8,0.5
+1
+3,1.0
+4,1,8,0.5
+3
+4,0.9045341
+5,0.3015113
+6,0.3015113
+5,1,8,0.5
+3
+5,0.9045341
+4,0.3015113
+7,0.3015113
+6,1,8,0.5
+3
+6,0.9045341
+4,0.3015113
+7,0.3015113
+7,1,8,0.5
+3
+7,0.9045341
+5,0.3015113
+6,0.3015113
+0,1,8,0.7
+1
+0,1.0
+1,1,8,0.7
+1
+1,1.0
+2,1,8,0.7
+1
+2,1.0
+3,1,8,0.7
+1
+3,1.0
+4,1,8,0.7
+1
+4,1.0
+5,1,8,0.7
+1
+5,1.0
+6,1,8,0.7
+1
+6,1.0
+7,1,8,0.7
+1
+7,1.0
+0,1,8,0.9
+1
+0,1.0
+1,1,8,0.9
+1
+1,1.0
+2,1,8,0.9
+1
+2,1.0
+3,1,8,0.9
+1
+3,1.0
+4,1,8,0.9
+1
+4,1.0
+5,1,8,0.9
+1
+5,1.0
+6,1,8,0.9
+1
+6,1.0
+7,1,8,0.9
+1
+7,1.0
+0,2,1,0.1
+1
+0,1.0
+1,2,1,0.1
+1
+1,1.0
+2,2,1,0.1
+1
+2,1.0
+3,2,1,0.1
+1
+3,1.0
+4,2,1,0.1
+1
+4,1.0
+5,2,1,0.1
+1
+5,1.0
+6,2,1,0.1
+1
+6,1.0
+7,2,1,0.1
+1
+7,1.0
+0,2,1,0.3
+1
+0,1.0
+1,2,1,0.3
+1
+1,1.0
+2,2,1,0.3
+1
+2,1.0
+3,2,1,0.3
+1
+3,1.0
+4,2,1,0.3
+1
+4,1.0
+5,2,1,0.3
+1
+5,1.0
+6,2,1,0.3
+1
+6,1.0
+7,2,1,0.3
+1
+7,1.0
+0,2,1,0.5
+1
+0,1.0
+1,2,1,0.5
+1
+1,1.0
+2,2,1,0.5
+1
+2,1.0
+3,2,1,0.5
+1
+3,1.0
+4,2,1,0.5
+1
+4,1.0
+5,2,1,0.5
+1
+5,1.0
+6,2,1,0.5
+1
+6,1.0
+7,2,1,0.5
+1
+7,1.0
+0,2,1,0.7
+1
+0,1.0
+1,2,1,0.7
+1
+1,1.0
+2,2,1,0.7
+1
+2,1.0
+3,2,1,0.7
+1
+3,1.0
+4,2,1,0.7
+1
+4,1.0
+5,2,1,0.7
+1
+5,1.0
+6,2,1,0.7
+1
+6,1.0
+7,2,1,0.7
+1
+7,1.0
+0,2,1,0.9
+1
+0,1.0
+1,2,1,0.9
+1
+1,1.0
+2,2,1,0.9
+1
+2,1.0
+3,2,1,0.9
+1
+3,1.0
+4,2,1,0.9
+1
+4,1.0
+5,2,1,0.9
+1
+5,1.0
+6,2,1,0.9
+1
+6,1.0
+7,2,1,0.9
+1
+7,1.0
+0,2,2,0.1
+1
+0,1.0
+1,2,2,0.1
+1
+1,1.0
+2,2,2,0.1
+2
+2,0.91381156
+4,0.4061385
+3,2,2,0.1
+2
+3,0.91381156
+6,0.4061385
+4,2,2,0.1
+2
+4,0.84623283
+5,0.53281325
+5,2,2,0.1
+2
+5,0.84623283
+4,0.53281325
+6,2,2,0.1
+2
+6,0.84623283
+7,0.53281325
+7,2,2,0.1
+2
+7,0.84623283
+6,0.53281325
+0,2,2,0.3
+1
+0,1.0
+1,2,2,0.3
+1
+1,1.0
+2,2,2,0.3
+2
+2,0.96152395
+4,0.27472112
+3,2,2,0.3
+2
+3,0.96152395
+6,0.27472112
+4,2,2,0.3
+2
+4,0.88583153
+5,0.4640069
+5,2,2,0.3
+2
+5,0.88583153
+4,0.4640069
+6,2,2,0.3
+2
+6,0.88583153
+7,0.4640069
+7,2,2,0.3
+2
+7,0.88583153
+6,0.4640069
+0,2,2,0.5
+1
+0,1.0
+1,2,2,0.5
+1
+1,1.0
+2,2,2,0.5
+1
+2,1.0
+3,2,2,0.5
+1
+3,1.0
+4,2,2,0.5
+2
+4,0.9486833
+5,0.3162277
+5,2,2,0.5
+2
+5,0.9486833
+4,0.3162277
+6,2,2,0.5
+2
+6,0.9486833
+7,0.3162277
+7,2,2,0.5
+2
+7,0.9486833
+6,0.3162277
+0,2,2,0.7
+1
+0,1.0
+1,2,2,0.7
+1
+1,1.0
+2,2,2,0.7
+1
+2,1.0
+3,2,2,0.7
+1
+3,1.0
+4,2,2,0.7
+1
+4,1.0
+5,2,2,0.7
+1
+5,1.0
+6,2,2,0.7
+1
+6,1.0
+7,2,2,0.7
+1
+7,1.0
+0,2,2,0.9
+1
+0,1.0
+1,2,2,0.9
+1
+1,1.0
+2,2,2,0.9
+1
+2,1.0
+3,2,2,0.9
+1
+3,1.0
+4,2,2,0.9
+1
+4,1.0
+5,2,2,0.9
+1
+5,1.0
+6,2,2,0.9
+1
+6,1.0
+7,2,2,0.9
+1
+7,1.0
+0,2,3,0.1
+1
+0,1.0
+1,2,3,0.1
+1
+1,1.0
+2,2,3,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,2,3,0.1
+3
+3,0.84664875
+6,0.37628835
+7,0.37628835
+4,2,3,0.1
+3
+4,0.7920648
+5,0.49870744
+2,0.35202882
+5,2,3,0.1
+3
+5,0.7920648
+4,0.49870744
+2,0.35202882
+6,2,3,0.1
+3
+6,0.7920648
+7,0.49870744
+3,0.35202882
+7,2,3,0.1
+3
+7,0.7920648
+6,0.49870744
+3,0.35202882
+0,2,3,0.3
+1
+0,1.0
+1,2,3,0.3
+1
+1,1.0
+2,2,3,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,2,3,0.3
+3
+3,0.92717266
+6,0.26490647
+7,0.26490647
+4,2,3,0.3
+3
+4,0.85875386
+5,0.44982338
+2,0.24535823
+5,2,3,0.3
+3
+5,0.85875386
+4,0.44982338
+2,0.24535823
+6,2,3,0.3
+3
+6,0.85875386
+7,0.44982338
+3,0.24535823
+7,2,3,0.3
+3
+7,0.85875386
+6,0.44982338
+3,0.24535823
+0,2,3,0.5
+1
+0,1.0
+1,2,3,0.5
+1
+1,1.0
+2,2,3,0.5
+1
+2,1.0
+3,2,3,0.5
+1
+3,1.0
+4,2,3,0.5
+2
+4,0.9486833
+5,0.3162277
+5,2,3,0.5
+2
+5,0.9486833
+4,0.3162277
+6,2,3,0.5
+2
+6,0.9486833
+7,0.3162277
+7,2,3,0.5
+2
+7,0.9486833
+6,0.3162277
+0,2,3,0.7
+1
+0,1.0
+1,2,3,0.7
+1
+1,1.0
+2,2,3,0.7
+1
+2,1.0
+3,2,3,0.7
+1
+3,1.0
+4,2,3,0.7
+1
+4,1.0
+5,2,3,0.7
+1
+5,1.0
+6,2,3,0.7
+1
+6,1.0
+7,2,3,0.7
+1
+7,1.0
+0,2,3,0.9
+1
+0,1.0
+1,2,3,0.9
+1
+1,1.0
+2,2,3,0.9
+1
+2,1.0
+3,2,3,0.9
+1
+3,1.0
+4,2,3,0.9
+1
+4,1.0
+5,2,3,0.9
+1
+5,1.0
+6,2,3,0.9
+1
+6,1.0
+7,2,3,0.9
+1
+7,1.0
+0,2,4,0.1
+1
+0,1.0
+1,2,4,0.1
+1
+1,1.0
+2,2,4,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,2,4,0.1
+3
+3,0.84664875
+6,0.37628835
+7,0.37628835
+4,2,4,0.1
+3
+4,0.7920648
+5,0.49870744
+2,0.35202882
+5,2,4,0.1
+3
+5,0.7920648
+4,0.49870744
+2,0.35202882
+6,2,4,0.1
+3
+6,0.7920648
+7,0.49870744
+3,0.35202882
+7,2,4,0.1
+3
+7,0.7920648
+6,0.49870744
+3,0.35202882
+0,2,4,0.3
+1
+0,1.0
+1,2,4,0.3
+1
+1,1.0
+2,2,4,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,2,4,0.3
+3
+3,0.92717266
+6,0.26490647
+7,0.26490647
+4,2,4,0.3
+3
+4,0.85875386
+5,0.44982338
+2,0.24535823
+5,2,4,0.3
+3
+5,0.85875386
+4,0.44982338
+2,0.24535823
+6,2,4,0.3
+3
+6,0.85875386
+7,0.44982338
+3,0.24535823
+7,2,4,0.3
+3
+7,0.85875386
+6,0.44982338
+3,0.24535823
+0,2,4,0.5
+1
+0,1.0
+1,2,4,0.5
+1
+1,1.0
+2,2,4,0.5
+1
+2,1.0
+3,2,4,0.5
+1
+3,1.0
+4,2,4,0.5
+2
+4,0.9486833
+5,0.3162277
+5,2,4,0.5
+2
+5,0.9486833
+4,0.3162277
+6,2,4,0.5
+2
+6,0.9486833
+7,0.3162277
+7,2,4,0.5
+2
+7,0.9486833
+6,0.3162277
+0,2,4,0.7
+1
+0,1.0
+1,2,4,0.7
+1
+1,1.0
+2,2,4,0.7
+1
+2,1.0
+3,2,4,0.7
+1
+3,1.0
+4,2,4,0.7
+1
+4,1.0
+5,2,4,0.7
+1
+5,1.0
+6,2,4,0.7
+1
+6,1.0
+7,2,4,0.7
+1
+7,1.0
+0,2,4,0.9
+1
+0,1.0
+1,2,4,0.9
+1
+1,1.0
+2,2,4,0.9
+1
+2,1.0
+3,2,4,0.9
+1
+3,1.0
+4,2,4,0.9
+1
+4,1.0
+5,2,4,0.9
+1
+5,1.0
+6,2,4,0.9
+1
+6,1.0
+7,2,4,0.9
+1
+7,1.0
+0,2,5,0.1
+1
+0,1.0
+1,2,5,0.1
+1
+1,1.0
+2,2,5,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,2,5,0.1
+3
+3,0.84664875
+6,0.37628835
+7,0.37628835
+4,2,5,0.1
+3
+4,0.7920648
+5,0.49870744
+2,0.35202882
+5,2,5,0.1
+3
+5,0.7920648
+4,0.49870744
+2,0.35202882
+6,2,5,0.1
+3
+6,0.7920648
+7,0.49870744
+3,0.35202882
+7,2,5,0.1
+3
+7,0.7920648
+6,0.49870744
+3,0.35202882
+0,2,5,0.3
+1
+0,1.0
+1,2,5,0.3
+1
+1,1.0
+2,2,5,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,2,5,0.3
+3
+3,0.92717266
+6,0.26490647
+7,0.26490647
+4,2,5,0.3
+3
+4,0.85875386
+5,0.44982338
+2,0.24535823
+5,2,5,0.3
+3
+5,0.85875386
+4,0.44982338
+2,0.24535823
+6,2,5,0.3
+3
+6,0.85875386
+7,0.44982338
+3,0.24535823
+7,2,5,0.3
+3
+7,0.85875386
+6,0.44982338
+3,0.24535823
+0,2,5,0.5
+1
+0,1.0
+1,2,5,0.5
+1
+1,1.0
+2,2,5,0.5
+1
+2,1.0
+3,2,5,0.5
+1
+3,1.0
+4,2,5,0.5
+2
+4,0.9486833
+5,0.3162277
+5,2,5,0.5
+2
+5,0.9486833
+4,0.3162277
+6,2,5,0.5
+2
+6,0.9486833
+7,0.3162277
+7,2,5,0.5
+2
+7,0.9486833
+6,0.3162277
+0,2,5,0.7
+1
+0,1.0
+1,2,5,0.7
+1
+1,1.0
+2,2,5,0.7
+1
+2,1.0
+3,2,5,0.7
+1
+3,1.0
+4,2,5,0.7
+1
+4,1.0
+5,2,5,0.7
+1
+5,1.0
+6,2,5,0.7
+1
+6,1.0
+7,2,5,0.7
+1
+7,1.0
+0,2,5,0.9
+1
+0,1.0
+1,2,5,0.9
+1
+1,1.0
+2,2,5,0.9
+1
+2,1.0
+3,2,5,0.9
+1
+3,1.0
+4,2,5,0.9
+1
+4,1.0
+5,2,5,0.9
+1
+5,1.0
+6,2,5,0.9
+1
+6,1.0
+7,2,5,0.9
+1
+7,1.0
+0,2,6,0.1
+1
+0,1.0
+1,2,6,0.1
+1
+1,1.0
+2,2,6,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,2,6,0.1
+3
+3,0.84664875
+6,0.37628835
+7,0.37628835
+4,2,6,0.1
+3
+4,0.7920648
+5,0.49870744
+2,0.35202882
+5,2,6,0.1
+3
+5,0.7920648
+4,0.49870744
+2,0.35202882
+6,2,6,0.1
+3
+6,0.7920648
+7,0.49870744
+3,0.35202882
+7,2,6,0.1
+3
+7,0.7920648
+6,0.49870744
+3,0.35202882
+0,2,6,0.3
+1
+0,1.0
+1,2,6,0.3
+1
+1,1.0
+2,2,6,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,2,6,0.3
+3
+3,0.92717266
+6,0.26490647
+7,0.26490647
+4,2,6,0.3
+3
+4,0.85875386
+5,0.44982338
+2,0.24535823
+5,2,6,0.3
+3
+5,0.85875386
+4,0.44982338
+2,0.24535823
+6,2,6,0.3
+3
+6,0.85875386
+7,0.44982338
+3,0.24535823
+7,2,6,0.3
+3
+7,0.85875386
+6,0.44982338
+3,0.24535823
+0,2,6,0.5
+1
+0,1.0
+1,2,6,0.5
+1
+1,1.0
+2,2,6,0.5
+1
+2,1.0
+3,2,6,0.5
+1
+3,1.0
+4,2,6,0.5
+2
+4,0.9486833
+5,0.3162277
+5,2,6,0.5
+2
+5,0.9486833
+4,0.3162277
+6,2,6,0.5
+2
+6,0.9486833
+7,0.3162277
+7,2,6,0.5
+2
+7,0.9486833
+6,0.3162277
+0,2,6,0.7
+1
+0,1.0
+1,2,6,0.7
+1
+1,1.0
+2,2,6,0.7
+1
+2,1.0
+3,2,6,0.7
+1
+3,1.0
+4,2,6,0.7
+1
+4,1.0
+5,2,6,0.7
+1
+5,1.0
+6,2,6,0.7
+1
+6,1.0
+7,2,6,0.7
+1
+7,1.0
+0,2,6,0.9
+1
+0,1.0
+1,2,6,0.9
+1
+1,1.0
+2,2,6,0.9
+1
+2,1.0
+3,2,6,0.9
+1
+3,1.0
+4,2,6,0.9
+1
+4,1.0
+5,2,6,0.9
+1
+5,1.0
+6,2,6,0.9
+1
+6,1.0
+7,2,6,0.9
+1
+7,1.0
+0,2,7,0.1
+1
+0,1.0
+1,2,7,0.1
+1
+1,1.0
+2,2,7,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,2,7,0.1
+3
+3,0.84664875
+6,0.37628835
+7,0.37628835
+4,2,7,0.1
+3
+4,0.7920648
+5,0.49870744
+2,0.35202882
+5,2,7,0.1
+3
+5,0.7920648
+4,0.49870744
+2,0.35202882
+6,2,7,0.1
+3
+6,0.7920648
+7,0.49870744
+3,0.35202882
+7,2,7,0.1
+3
+7,0.7920648
+6,0.49870744
+3,0.35202882
+0,2,7,0.3
+1
+0,1.0
+1,2,7,0.3
+1
+1,1.0
+2,2,7,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,2,7,0.3
+3
+3,0.92717266
+6,0.26490647
+7,0.26490647
+4,2,7,0.3
+3
+4,0.85875386
+5,0.44982338
+2,0.24535823
+5,2,7,0.3
+3
+5,0.85875386
+4,0.44982338
+2,0.24535823
+6,2,7,0.3
+3
+6,0.85875386
+7,0.44982338
+3,0.24535823
+7,2,7,0.3
+3
+7,0.85875386
+6,0.44982338
+3,0.24535823
+0,2,7,0.5
+1
+0,1.0
+1,2,7,0.5
+1
+1,1.0
+2,2,7,0.5
+1
+2,1.0
+3,2,7,0.5
+1
+3,1.0
+4,2,7,0.5
+2
+4,0.9486833
+5,0.3162277
+5,2,7,0.5
+2
+5,0.9486833
+4,0.3162277
+6,2,7,0.5
+2
+6,0.9486833
+7,0.3162277
+7,2,7,0.5
+2
+7,0.9486833
+6,0.3162277
+0,2,7,0.7
+1
+0,1.0
+1,2,7,0.7
+1
+1,1.0
+2,2,7,0.7
+1
+2,1.0
+3,2,7,0.7
+1
+3,1.0
+4,2,7,0.7
+1
+4,1.0
+5,2,7,0.7
+1
+5,1.0
+6,2,7,0.7
+1
+6,1.0
+7,2,7,0.7
+1
+7,1.0
+0,2,7,0.9
+1
+0,1.0
+1,2,7,0.9
+1
+1,1.0
+2,2,7,0.9
+1
+2,1.0
+3,2,7,0.9
+1
+3,1.0
+4,2,7,0.9
+1
+4,1.0
+5,2,7,0.9
+1
+5,1.0
+6,2,7,0.9
+1
+6,1.0
+7,2,7,0.9
+1
+7,1.0
+0,2,8,0.1
+1
+0,1.0
+1,2,8,0.1
+1
+1,1.0
+2,2,8,0.1
+3
+2,0.84664875
+4,0.37628835
+5,0.37628835
+3,2,8,0.1
+3
+3,0.84664875
+6,0.37628835
+7,0.37628835
+4,2,8,0.1
+3
+4,0.7920648
+5,0.49870744
+2,0.35202882
+5,2,8,0.1
+3
+5,0.7920648
+4,0.49870744
+2,0.35202882
+6,2,8,0.1
+3
+6,0.7920648
+7,0.49870744
+3,0.35202882
+7,2,8,0.1
+3
+7,0.7920648
+6,0.49870744
+3,0.35202882
+0,2,8,0.3
+1
+0,1.0
+1,2,8,0.3
+1
+1,1.0
+2,2,8,0.3
+3
+2,0.92717266
+4,0.26490647
+5,0.26490647
+3,2,8,0.3
+3
+3,0.92717266
+6,0.26490647
+7,0.26490647
+4,2,8,0.3
+3
+4,0.85875386
+5,0.44982338
+2,0.24535823
+5,2,8,0.3
+3
+5,0.85875386
+4,0.44982338
+2,0.24535823
+6,2,8,0.3
+3
+6,0.85875386
+7,0.44982338
+3,0.24535823
+7,2,8,0.3
+3
+7,0.85875386
+6,0.44982338
+3,0.24535823
+0,2,8,0.5
+1
+0,1.0
+1,2,8,0.5
+1
+1,1.0
+2,2,8,0.5
+1
+2,1.0
+3,2,8,0.5
+1
+3,1.0
+4,2,8,0.5
+2
+4,0.9486833
+5,0.3162277
+5,2,8,0.5
+2
+5,0.9486833
+4,0.3162277
+6,2,8,0.5
+2
+6,0.9486833
+7,0.3162277
+7,2,8,0.5
+2
+7,0.9486833
+6,0.3162277
+0,2,8,0.7
+1
+0,1.0
+1,2,8,0.7
+1
+1,1.0
+2,2,8,0.7
+1
+2,1.0
+3,2,8,0.7
+1
+3,1.0
+4,2,8,0.7
+1
+4,1.0
+5,2,8,0.7
+1
+5,1.0
+6,2,8,0.7
+1
+6,1.0
+7,2,8,0.7
+1
+7,1.0
+0,2,8,0.9
+1
+0,1.0
+1,2,8,0.9
+1
+1,1.0
+2,2,8,0.9
+1
+2,1.0
+3,2,8,0.9
+1
+3,1.0
+4,2,8,0.9
+1
+4,1.0
+5,2,8,0.9
+1
+5,1.0
+6,2,8,0.9
+1
+6,1.0
+7,2,8,0.9
+1
+7,1.0

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3395a8b4/Lucene.Net.Tests.Sandbox/packages.config
----------------------------------------------------------------------
diff --git a/Lucene.Net.Tests.Sandbox/packages.config b/Lucene.Net.Tests.Sandbox/packages.config
new file mode 100644
index 0000000..139d513
--- /dev/null
+++ b/Lucene.Net.Tests.Sandbox/packages.config
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="NUnit" version="2.6.3" targetFramework="net451" />
+</packages>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3395a8b4/Lucene.Net.sln
----------------------------------------------------------------------
diff --git a/Lucene.Net.sln b/Lucene.Net.sln
index e7a3ef8..5a460ce 100644
--- a/Lucene.Net.sln
+++ b/Lucene.Net.sln
@@ -74,6 +74,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lucene.Net.Spatial", "src\L
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lucene.Net.Tests.Spatial", "src\Lucene.Net.Tests.Spatial\Lucene.Net.Tests.Spatial.csproj", "{31F52F5C-A08F-4363-8003-23D6F7D6EB3A}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lucene.Net.Sandbox", "Lucene.Net.Sandbox\Lucene.Net.Sandbox.csproj", "{13274BA9-9052-4354-8FFE-E3F32593368F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lucene.Net.Tests.Sandbox", "Lucene.Net.Tests.Sandbox\Lucene.Net.Tests.Sandbox.csproj", "{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -737,6 +741,54 @@ Global
 		{31F52F5C-A08F-4363-8003-23D6F7D6EB3A}.Release35|Mixed Platforms.Build.0 = Release|Any CPU
 		{31F52F5C-A08F-4363-8003-23D6F7D6EB3A}.Release35|x86.ActiveCfg = Release|Any CPU
 		{31F52F5C-A08F-4363-8003-23D6F7D6EB3A}.Release35|x86.Build.0 = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug|x86.Build.0 = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug35|Any CPU.ActiveCfg = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug35|Any CPU.Build.0 = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug35|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug35|Mixed Platforms.Build.0 = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug35|x86.ActiveCfg = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Debug35|x86.Build.0 = Debug|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release|Any CPU.Build.0 = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release|x86.ActiveCfg = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release|x86.Build.0 = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release35|Any CPU.ActiveCfg = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release35|Any CPU.Build.0 = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release35|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release35|Mixed Platforms.Build.0 = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release35|x86.ActiveCfg = Release|Any CPU
+		{13274BA9-9052-4354-8FFE-E3F32593368F}.Release35|x86.Build.0 = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug|x86.Build.0 = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug35|Any CPU.ActiveCfg = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug35|Any CPU.Build.0 = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug35|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug35|Mixed Platforms.Build.0 = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug35|x86.ActiveCfg = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Debug35|x86.Build.0 = Debug|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release|Any CPU.Build.0 = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release|x86.ActiveCfg = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release|x86.Build.0 = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release35|Any CPU.ActiveCfg = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release35|Any CPU.Build.0 = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release35|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release35|Mixed Platforms.Build.0 = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release35|x86.ActiveCfg = Release|Any CPU
+		{7865CBC8-2C6B-462C-ACF5-B2C4D60D93C9}.Release35|x86.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3395a8b4/src/Lucene.Net.Core/Search/SortField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Search/SortField.cs b/src/Lucene.Net.Core/Search/SortField.cs
index 84a5935..adb8841 100644
--- a/src/Lucene.Net.Core/Search/SortField.cs
+++ b/src/Lucene.Net.Core/Search/SortField.cs
@@ -261,7 +261,7 @@ namespace Lucene.Net.Search
             }
         }
 
-        public virtual object MissingValue
+        public virtual object MissingValue // LUCENENET TODO: Change back to SetMissingValue() method - properties should always have a getter
         {
             set
             {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3395a8b4/src/Lucene.Net.Core/Support/Number.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Support/Number.cs b/src/Lucene.Net.Core/Support/Number.cs
index 4d19e36..4f2b6fc 100644
--- a/src/Lucene.Net.Core/Support/Number.cs
+++ b/src/Lucene.Net.Core/Support/Number.cs
@@ -394,21 +394,8 @@ namespace Lucene.Net.Support
 
         public static string ToBinaryString(int value)
         {
-            var sb = new System.Text.StringBuilder();
-
-            var uval = (uint)value;
-
-            for (int i = 0; i < 32; i++)
-            {
-                if ((uval & 0x80000000) == 0x80000000)
-                    sb.Append('1');
-                else
-                    sb.Append('0');
-
-                uval <<= 1;
-            }
-
-            return sb.ToString();
+            // Convert to base 2 string with no leading 0's
+            return Convert.ToString(value, 2);
         }
 
         public static float IntBitsToFloat(int value)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3395a8b4/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
index 186bc0e..3b01564 100644
--- a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
@@ -1655,6 +1655,15 @@ namespace Lucene.Net.Util
             return NewSearcher(r, maybeWrap, true, similarity);
         }
 
+        /// <summary>
+        /// Create a new searcher over the reader. This searcher might randomly use
+        /// threads.
+        /// </summary>
+        public IndexSearcher NewSearcher(IndexReader r, bool maybeWrap)
+        {
+            return NewSearcher(r, maybeWrap, true);
+        }
+
         public IndexSearcher NewSearcher(IndexReader r, bool maybeWrap, bool wrapWithAssertions)
         {
             return NewSearcher(r, maybeWrap, wrapWithAssertions, ClassEnvRule.Similarity);


Mime
View raw message