From 4490108c2e710b9f50191a84cb8183c2726f1321 Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 15:25:36 -0800 Subject: [PATCH 01/11] Performance: switch from arrays to hashmaps in HitCounter --- build.sbt | 5 +- .../search/MatchHashesAndScoreQuery.java | 6 --- .../HitCounterBenchmarks.scala | 49 +++++++++++++++++++ .../VectorOpsJmhBenchmark.scala | 3 +- .../klibisz/elastiknn/models/ExactModel.java | 2 - 5 files changed, 54 insertions(+), 11 deletions(-) create mode 100644 elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala rename elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/{vectors => microbenchmarks}/VectorOpsJmhBenchmark.scala (96%) diff --git a/build.sbt b/build.sbt index 306a376c6..308220545 100644 --- a/build.sbt +++ b/build.sbt @@ -77,7 +77,8 @@ lazy val `elastiknn-lucene` = project version := ElastiknnVersion, libraryDependencies ++= Seq( "org.apache.lucene" % "lucene-core" % LuceneVersion, - "org.apache.lucene" % "lucene-analysis-common" % LuceneVersion % Test + "org.apache.lucene" % "lucene-analysis-common" % LuceneVersion % Test, + "org.eclipse.collections" % "eclipse-collections" % "11.1.0" ), TpolecatSettings, TestSettings @@ -103,7 +104,7 @@ lazy val `elastiknn-models` = project lazy val `elastiknn-models-benchmarks` = project .in(file("elastiknn-models-benchmarks")) - .dependsOn(`elastiknn-models`, `elastiknn-api4s`) + .dependsOn(`elastiknn-models`, `elastiknn-api4s`, `elastiknn-lucene`) .enablePlugins(JmhPlugin) .settings( Jmh / javaOptions ++= Seq("--add-modules", "jdk.incubator.vector"), diff --git a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java index 5132f10d0..d0e404a50 100644 --- a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java +++ b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java @@ -79,12 +79,6 @@ private HitCounter countHits(LeafReader reader) throws IOException { } private DocIdSetIterator buildDocIdSetIterator(HitCounter counter) { - // TODO: Add back this logging once log4j mess has settled. -// if (counter.numHits() < candidates) { -// logger.warn(String.format( -// "Found fewer approximate matches [%d] than the requested number of candidates [%d]", -// counter.numHits(), candidates)); -// } if (counter.isEmpty()) return DocIdSetIterator.empty(); else { diff --git a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala new file mode 100644 index 000000000..448dbbd3e --- /dev/null +++ b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala @@ -0,0 +1,49 @@ +package com.klibisz.elastiknn.microbenchmarks + +import org.openjdk.jmh.annotations._ +import org.apache.lucene.util.hppc.IntIntHashMap + +import scala.util.Random + +@State(Scope.Benchmark) +class HitCounterBenchmarksFixtures { + val rng = new Random(0) + val numDocs = 1000000 + val numHits = 10000 + val candidates = 1000 + val docs = (1 to numHits).map(_ => rng.nextInt(numDocs)).toArray +} + +class HitCounterBenchmarks { + + @Benchmark + @BenchmarkMode(Array(Mode.Throughput)) + @Fork(value = 1) + @Warmup(time = 5, iterations = 1) + @Measurement(time = 1, iterations = 10) + def arrayCountBaseline(f: HitCounterBenchmarksFixtures): Unit = { + val arr = new Array[Int](f.numDocs) + for (d <- f.docs) arr.update(d, arr(d) + 1) + } + + @Benchmark + @BenchmarkMode(Array(Mode.Throughput)) + @Fork(value = 1) + @Warmup(time = 5, iterations = 1) + @Measurement(time = 1, iterations = 10) + def hashMapGetOrDefault(f: HitCounterBenchmarksFixtures): Unit = { + val h = new java.util.HashMap[Int, Int](f.numDocs, 0.99f) + for (d <- f.docs) h.put(d, h.getOrDefault(d, 0) + 1) + } + + + @Benchmark + @BenchmarkMode(Array(Mode.Throughput)) + @Fork(value = 1) + @Warmup(time = 5, iterations = 1) + @Measurement(time = 1, iterations = 10) + def luceneIntIntHashMap(f: HitCounterBenchmarksFixtures): Unit = { + val m = new IntIntHashMap(f.numDocs, 0.99d) + for (d <- f.docs) m.putOrAdd(d, 1, 1) + } +} diff --git a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/vectors/VectorOpsJmhBenchmark.scala b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/VectorOpsJmhBenchmark.scala similarity index 96% rename from elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/vectors/VectorOpsJmhBenchmark.scala rename to elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/VectorOpsJmhBenchmark.scala index 9c153ac1b..afbbdb3eb 100644 --- a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/vectors/VectorOpsJmhBenchmark.scala +++ b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/VectorOpsJmhBenchmark.scala @@ -1,6 +1,7 @@ -package com.klibisz.elastiknn.vectors +package com.klibisz.elastiknn.microbenchmarks import com.klibisz.elastiknn.api.Vec +import com.klibisz.elastiknn.vectors._ import org.openjdk.jmh.annotations._ import scala.util.Random diff --git a/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java b/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java index fb23f7d2d..cfaead674 100644 --- a/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java +++ b/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java @@ -4,8 +4,6 @@ import com.klibisz.elastiknn.vectors.FloatVectorOps; import jdk.internal.vm.annotation.ForceInline; -import java.util.Arrays; - public class ExactModel { @ForceInline From 88ef0be9315c9660734fbb1961bc2f2a1887c5ed Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 16:58:10 -0800 Subject: [PATCH 02/11] First pass implementation based on IntIntHashMap and all tests pass --- build.sbt | 9 ++- .../elastiknn/search/ArrayHitCounter.java | 4 +- .../elastiknn/search/HashMapHitCounter.java | 67 +++++++++++++++++++ .../klibisz/elastiknn/search/TestCasting.java | 13 ++++ .../org/apache/lucene/search/KthGreatest.java | 16 ++--- .../search/MatchHashesAndScoreQuery.java | 3 +- .../elastiknn/search/KthGreatestSuite.scala | 8 +-- .../HitCounterBenchmarks.scala | 31 ++++++--- 8 files changed, 126 insertions(+), 25 deletions(-) create mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java create mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java diff --git a/build.sbt b/build.sbt index 308220545..d62e16289 100644 --- a/build.sbt +++ b/build.sbt @@ -77,8 +77,7 @@ lazy val `elastiknn-lucene` = project version := ElastiknnVersion, libraryDependencies ++= Seq( "org.apache.lucene" % "lucene-core" % LuceneVersion, - "org.apache.lucene" % "lucene-analysis-common" % LuceneVersion % Test, - "org.eclipse.collections" % "eclipse-collections" % "11.1.0" + "org.apache.lucene" % "lucene-analysis-common" % LuceneVersion % Test ), TpolecatSettings, TestSettings @@ -108,7 +107,11 @@ lazy val `elastiknn-models-benchmarks` = project .enablePlugins(JmhPlugin) .settings( Jmh / javaOptions ++= Seq("--add-modules", "jdk.incubator.vector"), - TpolecatSettings + TpolecatSettings, + libraryDependencies ++= Seq( + "org.eclipse.collections" % "eclipse-collections" % "11.1.0", + "org.eclipse.collections" % "eclipse-collections-api" % "11.1.0" + ) ) lazy val `elastiknn-plugin` = project diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java index 2c16904a3..b7b63cbbc 100644 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java @@ -68,7 +68,9 @@ public int maxKey() { @Override public KthGreatest.Result kthGreatest(int k) { - return KthGreatest.kthGreatest(counts, Math.min(k, counts.length - 1)); + int[] ints = new int[counts.length]; + for (int i = 0; i < counts.length; i++) ints[i] = counts[i]; + return KthGreatest.kthGreatest(ints, Math.min(k, counts.length - 1)); } } diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java new file mode 100644 index 000000000..284c29f85 --- /dev/null +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java @@ -0,0 +1,67 @@ +package com.klibisz.elastiknn.search; + +import org.apache.lucene.search.KthGreatest; +import org.apache.lucene.util.hppc.IntIntHashMap; + +public final class HashMapHitCounter implements HitCounter { + + private IntIntHashMap hashMap; + private int capacity; + private int minKey; + private int maxKey; + + public HashMapHitCounter(int capacity, int expectedElements, float loadFactor) { + this.capacity = capacity; + hashMap = new IntIntHashMap(expectedElements, loadFactor); + minKey = capacity; + maxKey = 0; + } + + + @Override + public void increment(int key, short count) { + hashMap.putOrAdd(key, count, count); + } + + @Override + public void increment(int key, int count) { + minKey = Math.min(key, minKey); + maxKey = Math.max(key, maxKey); + hashMap.putOrAdd(key, count, count); + } + + @Override + public boolean isEmpty() { + return hashMap.isEmpty(); + } + + @Override + public short get(int key) { + return (short) hashMap.get(key); + } + + @Override + public int numHits() { + return hashMap.size(); + } + + @Override + public int capacity() { + return capacity; + } + + @Override + public int minKey() { + return minKey; + } + + @Override + public int maxKey() { + return maxKey; + } + + @Override + public KthGreatest.Result kthGreatest(int k) { + return KthGreatest.kthGreatest(hashMap.values, Math.min(k, hashMap.size() - 1)); + } +} diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java new file mode 100644 index 000000000..8eb016983 --- /dev/null +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java @@ -0,0 +1,13 @@ +package com.klibisz.elastiknn.search; + +public class TestCasting { + + public static void main(String[] args) { + int[] ints = {1,2,3,4,5}; + short[] shorts = new short[ints.length]; + System.arraycopy(ints, 0, shorts, 0, shorts.length); + for (int i = 0; i < shorts.length; i++) { + System.out.println(shorts[i]); + } + } +} diff --git a/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java b/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java index 9884198e8..250958387 100644 --- a/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java +++ b/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java @@ -3,10 +3,10 @@ public class KthGreatest { public static class Result { - public final short kthGreatest; + public final int kthGreatest; public final int numGreaterThan; public final int numNonZero; - public Result(short kthGreatest, int numGreaterThan, int numNonZero) { + public Result(int kthGreatest, int numGreaterThan, int numNonZero) { this.kthGreatest = kthGreatest; this.numGreaterThan = numGreaterThan; this.numNonZero = numNonZero; @@ -23,7 +23,7 @@ public Result(short kthGreatest, int numGreaterThan, int numNonZero) { * @param k the desired largest value. * @return the kth largest value. */ - public static Result kthGreatest(short[] arr, int k) { + public static Result kthGreatest(int[] arr, int k) { if (arr.length == 0) { throw new IllegalArgumentException("Array must be non-empty"); } else if (k < 0 || k >= arr.length) { @@ -33,9 +33,9 @@ public static Result kthGreatest(short[] arr, int k) { )); } else { // Find the min and max values. - short max = arr[0]; - short min = arr[0]; - for (short a: arr) { + int max = arr[0]; + int min = arr[0]; + for (int a: arr) { if (a > max) max = a; else if (a < min) min = a; } @@ -43,14 +43,14 @@ public static Result kthGreatest(short[] arr, int k) { // Build and populate a histogram for non-zero values. int[] hist = new int[max - min + 1]; int numNonZero = 0; - for (short a: arr) { + for (int a: arr) { hist[a - min] += 1; if (a > 0) numNonZero++; } // Find the kth largest value by iterating from the end of the histogram. int numGreaterEqual = 0; - short kthGreatest = max; + int kthGreatest = max; while (kthGreatest >= min) { numGreaterEqual += hist[kthGreatest - min];; if (numGreaterEqual > k) break; diff --git a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java index d0e404a50..aa75e5d0b 100644 --- a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java +++ b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java @@ -2,6 +2,7 @@ import com.klibisz.elastiknn.models.HashAndFreq; import com.klibisz.elastiknn.search.ArrayHitCounter; +import com.klibisz.elastiknn.search.HashMapHitCounter; import com.klibisz.elastiknn.search.HitCounter; import org.apache.lucene.index.*; import org.apache.lucene.util.BytesRef; @@ -62,7 +63,7 @@ private HitCounter countHits(LeafReader reader) throws IOException { } else { TermsEnum termsEnum = terms.iterator(); PostingsEnum docs = null; - HitCounter counter = new ArrayHitCounter(reader.maxDoc()); + HitCounter counter = new HashMapHitCounter(reader.maxDoc(), candidates * 10, 0.9f); double counterLimit = counter.capacity() + 1; // TODO: Is this the right place to use the live docs bitset to check for deleted docs? // Bits liveDocs = reader.getLiveDocs(); diff --git a/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala b/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala index dcac7b0a6..eeb2882bf 100644 --- a/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala +++ b/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala @@ -21,7 +21,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { } test("example") { - val counts: Array[Short] = Array(2, 2, 8, 7, 4, 4) + val counts: Array[Int] = Array(2, 2, 8, 7, 4, 4) val res = KthGreatest.kthGreatest(counts, 3) res.kthGreatest shouldBe 4 res.numGreaterThan shouldBe 2 @@ -33,7 +33,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { val rng = new Random(seed) info(s"Using seed $seed") for (_ <- 0 until 999) { - val counts = (0 until (rng.nextInt(10000) + 1)).map(_ => rng.nextInt(Short.MaxValue).toShort).toArray + val counts = (0 until (rng.nextInt(10000) + 1)).map(_ => rng.nextInt(Short.MaxValue)).toArray val k = rng.nextInt(counts.length) val res = KthGreatest.kthGreatest(counts, k) res.kthGreatest shouldBe counts.sorted.reverse(k) @@ -43,7 +43,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { } test("all zero except one") { - val counts = Array[Short](50, 0, 0, 0, 0, 0, 0, 0, 0, 0) + val counts = Array[Int](50, 0, 0, 0, 0, 0, 0, 0, 0, 0) val res = KthGreatest.kthGreatest(counts, 3) res.kthGreatest shouldBe 0 res.numGreaterThan shouldBe 1 @@ -51,7 +51,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { } test("all zero") { - val counts = Array[Short](0, 0, 0, 0, 0, 0, 0, 0, 0, 0) + val counts = Array[Int](0, 0, 0, 0, 0, 0, 0, 0, 0, 0) val res = KthGreatest.kthGreatest(counts, 3) res.kthGreatest shouldBe 0 res.numGreaterThan shouldBe 0 diff --git a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala index 448dbbd3e..f1a084f0f 100644 --- a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala +++ b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala @@ -2,6 +2,7 @@ package com.klibisz.elastiknn.microbenchmarks import org.openjdk.jmh.annotations._ import org.apache.lucene.util.hppc.IntIntHashMap +import org.eclipse.collections.impl.map.mutable.primitive.IntShortHashMap import scala.util.Random @@ -19,31 +20,45 @@ class HitCounterBenchmarks { @Benchmark @BenchmarkMode(Array(Mode.Throughput)) @Fork(value = 1) - @Warmup(time = 5, iterations = 1) - @Measurement(time = 1, iterations = 10) + @Warmup(time = 5, iterations = 5) + @Measurement(time = 5, iterations = 5) def arrayCountBaseline(f: HitCounterBenchmarksFixtures): Unit = { val arr = new Array[Int](f.numDocs) for (d <- f.docs) arr.update(d, arr(d) + 1) + () } @Benchmark @BenchmarkMode(Array(Mode.Throughput)) @Fork(value = 1) - @Warmup(time = 5, iterations = 1) - @Measurement(time = 1, iterations = 10) + @Warmup(time = 5, iterations = 5) + @Measurement(time = 5, iterations = 5) def hashMapGetOrDefault(f: HitCounterBenchmarksFixtures): Unit = { - val h = new java.util.HashMap[Int, Int](f.numDocs, 0.99f) + val h = new java.util.HashMap[Int, Int](f.candidates * 10, 0.99f) for (d <- f.docs) h.put(d, h.getOrDefault(d, 0) + 1) + () } @Benchmark @BenchmarkMode(Array(Mode.Throughput)) @Fork(value = 1) - @Warmup(time = 5, iterations = 1) - @Measurement(time = 1, iterations = 10) + @Warmup(time = 5, iterations = 5) + @Measurement(time = 5, iterations = 5) def luceneIntIntHashMap(f: HitCounterBenchmarksFixtures): Unit = { - val m = new IntIntHashMap(f.numDocs, 0.99d) + val m = new IntIntHashMap(f.candidates * 10, 0.99d) for (d <- f.docs) m.putOrAdd(d, 1, 1) + () + } + + @Benchmark + @BenchmarkMode(Array(Mode.Throughput)) + @Fork(value = 1) + @Warmup(time = 5, iterations = 5) + @Measurement(time = 5, iterations = 5) + def eclipseIntShortHashMapAddToValue(f: HitCounterBenchmarksFixtures): Unit = { + val m = new IntShortHashMap(f.candidates * 10) + for (d <- f.docs) m.addToValue(d, 1) + () } } From d51a4782821f32ca70c7d2ef15d078493f55748e Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 17:18:37 -0800 Subject: [PATCH 03/11] Add EmptyHitCounter --- .../elastiknn/search/EmptyHitCounter.java | 48 +++++++++++++++++++ .../search/MatchHashesAndScoreQuery.java | 5 +- .../HitCounterBenchmarks.scala | 6 +-- 3 files changed, 53 insertions(+), 6 deletions(-) create mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java new file mode 100644 index 000000000..0ce8841d5 --- /dev/null +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java @@ -0,0 +1,48 @@ +package com.klibisz.elastiknn.search; + +import org.apache.lucene.search.KthGreatest; + +public final class EmptyHitCounter implements HitCounter { + public EmptyHitCounter() { } + + @Override + public void increment(int key, short count) { } + + @Override + public void increment(int key, int count) { } + + @Override + public boolean isEmpty() { + return true; + } + + @Override + public short get(int key) { + return 0; + } + + @Override + public int numHits() { + return 0; + } + + @Override + public int capacity() { + return 0; + } + + @Override + public int minKey() { + return 0; + } + + @Override + public int maxKey() { + return 0; + } + + @Override + public KthGreatest.Result kthGreatest(int k) { + return new KthGreatest.Result(0, 0, 0); + } +} diff --git a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java index aa75e5d0b..cccb91bc8 100644 --- a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java +++ b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java @@ -1,7 +1,7 @@ package org.apache.lucene.search; import com.klibisz.elastiknn.models.HashAndFreq; -import com.klibisz.elastiknn.search.ArrayHitCounter; +import com.klibisz.elastiknn.search.EmptyHitCounter; import com.klibisz.elastiknn.search.HashMapHitCounter; import com.klibisz.elastiknn.search.HitCounter; import org.apache.lucene.index.*; @@ -10,7 +10,6 @@ import java.io.IOException; import java.util.Arrays; import java.util.Objects; -import java.util.Set; import java.util.function.Function; import static java.lang.Math.min; @@ -59,7 +58,7 @@ private HitCounter countHits(LeafReader reader) throws IOException { Terms terms = reader.terms(field); // terms seem to be null after deleting docs. https://github.com/alexklibisz/elastiknn/issues/158 if (terms == null) { - return new ArrayHitCounter(0); + return new EmptyHitCounter(); } else { TermsEnum termsEnum = terms.iterator(); PostingsEnum docs = null; diff --git a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala index f1a084f0f..a8d1de268 100644 --- a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala +++ b/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala @@ -9,9 +9,9 @@ import scala.util.Random @State(Scope.Benchmark) class HitCounterBenchmarksFixtures { val rng = new Random(0) - val numDocs = 1000000 - val numHits = 10000 - val candidates = 1000 + val numDocs = 600000 + val numHits = 6000 + val candidates = 500 val docs = (1 to numHits).map(_ => rng.nextInt(numDocs)).toArray } From 97942c0571c68a1a4f234f6c56af1ac8cd9ce5ac Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 17:33:59 -0800 Subject: [PATCH 04/11] private final --- .../elastiknn/search/ArrayHitCounter.java | 76 ------------------- .../elastiknn/search/HashMapHitCounter.java | 4 +- .../klibisz/elastiknn/search/TestCasting.java | 13 ---- 3 files changed, 2 insertions(+), 91 deletions(-) delete mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java delete mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java deleted file mode 100644 index b7b63cbbc..000000000 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.klibisz.elastiknn.search; - -import org.apache.lucene.search.KthGreatest; - -/** - * Use an array of counts to count hits. The index of the array is the doc id. - * Hopefully there's a way to do this that doesn't require O(num docs in segment) time and memory, - * but so far I haven't found anything on the JVM that's faster than simple arrays of primitives. - */ -public class ArrayHitCounter implements HitCounter { - - private final short[] counts; - private int numHits; - private int minKey; - private int maxKey; - - public ArrayHitCounter(int capacity) { - counts = new short[capacity]; - numHits = 0; - minKey = capacity; - maxKey = 0; - } - - @Override - public void increment(int key, short count) { - if (counts[key] == 0) { - numHits++; - minKey = Math.min(key, minKey); - maxKey = Math.max(key, maxKey); - } - counts[key] += count; // Important to be after the above. - } - - @Override - public void increment(int key, int count) { - increment(key, (short) count); - } - - @Override - public boolean isEmpty() { - return numHits == 0; - } - - @Override - public short get(int key) { - return counts[key]; - } - - @Override - public int numHits() { - return numHits; - } - - @Override - public int capacity() { - return counts.length; - } - - @Override - public int minKey() { - return minKey; - } - - @Override - public int maxKey() { - return maxKey; - } - - @Override - public KthGreatest.Result kthGreatest(int k) { - int[] ints = new int[counts.length]; - for (int i = 0; i < counts.length; i++) ints[i] = counts[i]; - return KthGreatest.kthGreatest(ints, Math.min(k, counts.length - 1)); - } - -} diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java index 284c29f85..1f741a3ba 100644 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java @@ -5,8 +5,8 @@ public final class HashMapHitCounter implements HitCounter { - private IntIntHashMap hashMap; - private int capacity; + private final IntIntHashMap hashMap; + private final int capacity; private int minKey; private int maxKey; diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java deleted file mode 100644 index 8eb016983..000000000 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.klibisz.elastiknn.search; - -public class TestCasting { - - public static void main(String[] args) { - int[] ints = {1,2,3,4,5}; - short[] shorts = new short[ints.length]; - System.arraycopy(ints, 0, shorts, 0, shorts.length); - for (int i = 0; i < shorts.length; i++) { - System.out.println(shorts[i]); - } - } -} From e1301bb3b5dfdfd578d67cd5d7df171ccb45dfb9 Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sun, 26 Nov 2023 02:22:46 +0000 Subject: [PATCH 05/11] Updated benchmarks with Lucene IntIntHashMap --- docs/pages/performance/fashion-mnist/plot.b64 | 1547 +++++++++-------- docs/pages/performance/fashion-mnist/plot.png | Bin 43776 -> 44604 bytes .../performance/fashion-mnist/results.md | 16 +- .../elastiknn/search/ArrayHitCounter.java | 76 + .../klibisz/elastiknn/search/TestCasting.java | 13 + 5 files changed, 878 insertions(+), 774 deletions(-) create mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java create mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java diff --git a/docs/pages/performance/fashion-mnist/plot.b64 b/docs/pages/performance/fashion-mnist/plot.b64 index a9e81bd4f..ec1d7d98e 100644 --- a/docs/pages/performance/fashion-mnist/plot.b64 +++ b/docs/pages/performance/fashion-mnist/plot.b64 @@ -1,768 +1,783 @@ iVBORw0KGgoAAAANSUhEUgAABHsAAAMKCAYAAAAViEgEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90 bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9h -AAAPYQGoP6dpAACqbUlEQVR4nOzdd3hUZd7G8ftMTU9oIfS+IgiCdEVBUEBQRGFZOxZEEGXVXQsW -FCws6tpeFQsKLsqqgAoqSBM7CFIEAWlSBaSHhCRTz/uHZHZmksAMJEzK93NduXSec+bMb4YnM8md -pximaZoCAAAAAABAuWCJdQEAAAAAAAAoPoQ9AAAAAAAA5QhhDwAAAAAAQDlC2AMAAAAAAFCOEPYA -AAAAAACUI4Q9AAAAAAAA5QhhDwAAAAAAQDlC2AMAAAAAAFCOEPYAAAAAAACUI4Q9AE4LwzD02GOP -BW5PmjRJhmFo69atMaupON14442qX79+rMtAMfnqq69kGIa++uqriM5/+umn1bRpU/n9/pItLMiB -AweUmJioWbNmnbbHPBn169fXjTfeWKKP4fV6dd9996lOnTqyWCzq16+fJCk7O1uDBw9WRkaGDMPQ -XXfdVaJ1lGXh79GlRf369XXppZfGvIaT7cMlVf9jjz0mwzCK5VqGYeiOO+4olmsBAEoPwh6gHMgP -TvK/bDabatWqpRtvvFG///57rMsrNtu3b9fQoUNVv359OZ1Opaen64orrtAPP/wQ69JQgR05ckTj -xo3T/fffL4vlfx+rH3zwga677jo1adJEhmGoa9eux72O3+9XtWrV9PTTT0f0uFWqVNHgwYP1yCOP -RHT+2rVr9dhjj5WbgDXY22+/rWeeeUYDBgzQO++8o7vvvluS9NRTT2nSpEkaNmyYJk+erOuvvz7G -lZZtu3bt0mOPPaaVK1cW63XLc9+MVHl6DY7XT6ZMmaIXXnjhtNcEABWRLdYFACg+Y8aMUYMGDZSX -l6fFixdr0qRJ+u677/TLL78oLi4u1uWdku+//169e/eWJA0ePFjNmjXTnj17NGnSJHXu3FmvvPKK -hg0bFrP63nzzzdM6qgOlx9tvvy2v16urr746pH38+PFatmyZ2rVrpwMHDpzwOkuWLNH+/fvVp0+f -iB976NCheumll/Tll1+qW7duxz137dq1Gj16tLp27VruRqF9+eWXqlWrlp5//vkC7R07dtSjjz4a -o8rKl127dmn06NGqX7++WrVqVWzXLe19c/369SFBbkmI9jV4+OGH9cADD5RoTSfreP1kypQp+uWX -XxhlBwCnAWEPUI5ccsklatu2raQ/A5GqVatq3LhxmjlzpgYOHBjj6k7eoUOHNGDAAMXHx+v7779X -o0aNAsfuuece9ezZU3feeadat26tjh07ntbajh49qsTERNnt9tP6uKeL1+uV3++Xw+GIdSml1sSJ -E9W3b98CgerkyZNVq1YtWSwWnXXWWSe8zqxZs1SvXj01b9484sc+88wzddZZZ2nSpEknDHuiYZqm -8vLyFB8fX2zXLEl79+5VWlpaoe3NmjU7/QWhzAv+HnA6nbEupwCbzSabjR/jpT9HRbrd7jL/Ry0A -KG5M4wLKsfPPP1+StHnz5pD2X3/9VQMGDFDlypUVFxentm3baubMmQXuf/jwYd19992BaVO1a9fW -DTfcoP3790uS3G63Ro0apTZt2ig1NVWJiYk6//zztXDhwmJ9Hq+//rr27NmjZ555JiTokaT4+Hi9 -8847kv4c2ZSvqPUMiloraPbs2Tr//POVmJio5ORk9enTR2vWrAk558Ybb1RSUpI2b96s3r17Kzk5 -Wddee23gWPhfY/1+v1544QU1b95ccXFxql69um677TYdOnQo5LyffvpJPXv2VNWqVRUfH68GDRro -5ptvPuHrkr8WxNy5c9WqVSvFxcWpWbNm+uijjwqce/jwYd11112qU6eOnE6nGjdurHHjxoWMRtq6 -dasMw9Czzz6rF154QY0aNZLT6dTatWuLrGHevHnq3Lmz0tLSlJSUpDPOOEMPPvhgyDkul0uPPvqo -GjduLKfTqTp16ui+++6Ty+UqcL13331X7du3V0JCgipVqqQLLrhAc+fODTnn1VdfVfPmzeV0OlWz -Zk0NHz5chw8fDjmna9euOuuss7R27VpdeOGFSkhIUK1atQqdIrVz507169dPiYmJSk9P1913311o -bYXZsmWLVq1apYsuuqjAsfz1YyL1+eefh4zqibRfXHzxxfr0009lmmaR1540aZL++te/SpIuvPDC -wJTP/DWJ8vvSnDlz1LZtW8XHx+v111+X9GeY1a1bN6Wnp8vpdKpZs2YaP358gccwTVNPPPGEateu -rYSEBF144YUFvofyRdIfpT/D1H/84x+B88444ww9++yzgeea32cXLlyoNWvWhDwvwzC0ZcsWff75 -54H24poiU9T6NuFru+S/33zzzTe67bbbVKVKFaWkpOiGG24o8D5QmFWrVunGG29Uw4YNFRcXp4yM -DN18880FRorlv99t2rRJN954o9LS0pSamqqbbrpJOTk5Iee6XC7dfffdqlatmpKTk9W3b1/t3Lnz -hLV89dVXateunSTppptuCrymkyZNCpwzdepUtWnTRvHx8apataquu+66E04lPlHfzPfdd9+pffv2 -iouLU8OGDfWf//ynwLUi7VeFOd73QGFr9qxatUpdunRRfHy8ateurSeeeEITJ04ssp8dr/5IX4Ng -hX3GRfJ+fDzvvfeezjjjDMXFxalNmzb65ptvCpzz+++/6+abb1b16tXldDrVvHlzvf3224Hjx+sn -Xbt21eeff65t27YF2oM/NyP9rMhfY+i9994LfBZ88cUXET9PAKgo+JMAUI7l/8BZqVKlQNuaNWt0 -3nnnqVatWnrggQeUmJioDz/8UP369dP06dN1xRVXSPpzYdPzzz9f69at080336xzzjlH+/fv18yZ -M7Vz505VrVpVR44c0YQJE3T11Vfr1ltvVVZWlt566y317NlTS5YsKbZh/p9++qni4uKKHJ3UoEED -de7cWfPnz1deXl7Uf92bPHmyBg0apJ49e2rcuHHKycnR+PHj1blzZ61YsSLkh1Gv16uePXuqc+fO -evbZZ5WQkFDkdW+77TZNmjRJN910k0aMGKEtW7bo5Zdf1ooVK/T999/Lbrdr79696tGjh6pVq6YH -HnhAaWlp2rp1a6GBTWE2btyov/3tbxo6dKgGDRqkiRMn6q9//au++OILXXzxxZKknJwcdenSRb// -/rtuu+021a1bVz/88INGjhyp3bt3F1g/YeLEicrLy9OQIUPkdDpVuXLlQh97zZo1uvTSS9WyZUuN -GTNGTqdTmzZt0vfffx84x+/3q2/fvvruu+80ZMgQnXnmmVq9erWef/55bdiwQZ988kng3NGjR+ux -xx7TueeeqzFjxsjhcOjHH3/Ul19+qR49ekj68xec0aNH66KLLtKwYcO0fv16jR8/XkuXLg28pvkO -HTqkXr166corr9TAgQM1bdo03X///WrRooUuueQSSVJubq66d++u7du3a8SIEapZs6YmT56sL7/8 -MqLXP3+9qHPOOSei84uyZ88erVixIhBYRtMv2rRpo+eff15r1qwpcgTRBRdcoBEjRuill17Sgw8+ -qDPPPFOSAv+V/pyqcvXVV+u2227TrbfeqjPOOEPSn9PRmjdvrr59+8pms+nTTz/V7bffLr/fr+HD -hwfuP2rUKD3xxBPq3bu3evfureXLl6tHjx5yu90htUTaH03TVN++fbVw4ULdcsstatWqlebMmaN7 -771Xv//+u55//nlVq1ZNkydP1pNPPqns7GyNHTs28LwmT56su+++W7Vr19Y//vEPSVK1atVO5p/n -lN1xxx1KS0vTY489Fuiz27ZtC4RSRZk3b55+++033XTTTcrIyNCaNWv0xhtvaM2aNVq8eHGB+w4c -OFANGjTQ2LFjtXz5ck2YMEHp6ekaN25c4JzBgwfr3Xff1TXXXKNzzz1XX375ZURTB88880yNGTNG -o0aN0pAhQwJ/TDj33HMlKfBe165dO40dO1Z//PGHXnzxRX3//fdasWJFoSOvpMj65qZNmzRgwADd -csstGjRokN5++23deOONatOmTWAkXLTvc4Up6nsg3O+//x4IZUaOHKnExERNmDChyBFAJ6o/ktfg -RCJ5Pz6er7/+Wh988IFGjBghp9OpV199Vb169dKSJUsC7yt//PGHOnbsGAhbqlWrptmzZ+uWW27R -kSNHdNdddx23n9SqVUuZmZnauXNnYMplUlKSpOg+K6Q/p2h++OGHuuOOO1S1atVSOf0PAGLOBFDm -TZw40ZRkzp8/39y3b5+5Y8cOc9q0aWa1atVMp9Np7tixI3Bu9+7dzRYtWph5eXmBNr/fb5577rlm -kyZNAm2jRo0yJZkfffRRgcfz+/2maZqm1+s1XS5XyLFDhw6Z1atXN2+++eaQdknmo48+WqDmLVu2 -nPD5paWlmWefffZxzxkxYoQpyVy1apVpmqb56KOPmoW9xYU/blZWlpmWlmbeeuutIeft2bPHTE1N -DWkfNGiQKcl84IEHClx30KBBZr169QK3v/32W1OS+d5774Wc98UXX4S0f/zxx6Ykc+nSpcd9foWp -V6+eKcmcPn16oC0zM9OsUaOG2bp160Db448/biYmJpobNmwIuf8DDzxgWq1Wc/v27aZpmuaWLVtM -SWZKSoq5d+/eEz7+888/b0oy9+3bV+Q5kydPNi0Wi/ntt9+GtL/22mumJPP77783TdM0N27caFos -FvOKK64wfT5fyLn5/W3v3r2mw+Ewe/ToEXLOyy+/bEoy33777UBbly5dTEnmf/7zn0Cby+UyMzIy -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 -kfl/KQz+6+SPP/6oRYsWRV1rs2bNdNFFFwW+gtcOuO2225SRkaF77723wBoHeXl5ge1dg/+imx/i -BK/TcPTo0ZDRQ5LUs2dPpaSk6Kmnnip0bZTg1yQaAwcOlM/n0+OPP17gmNfrDfyieOjQoQJ/3c0P -OyLZ/nvXrl0h/0ZHjhzRf/7zH7Vq1SowUmngwIFatGiR5syZU+D+hw8fltfrjfRphTh48GCBtvDa -Bw4cqN9//11vvvlmgXNzc3N19OhRSX+ORLNYLBozZkyBEQv5r89FF10kh8Ohl156KeQ1e+utt5SZ -mRnRjkLhevfurV27dmnatGmBtpycnCKnKYTLn8rx008/Rf3Y+WbNmlWg9mj6xbJly5SamhrYlago -iYmJklQgpDiewr7HMzMzNXHixJDzLrroItntdv3f//1fyLmF7YAUaX/s3bu3fD6fXn755ZBznn/+ -eRmGEdhRrTi0adMm5P3nRGuBNGrUqMAaMG+88UaRI3veeOONkPeX8ePHy+v1Hvc5FPbaS4W/ppHK -f7yXXnrppK5ZVB9q27at0tPT9dprr4X0z9mzZ2vdunUn/N48mb4ZrqTe5wrTs2dPLVq0SCtXrgy0 -HTx4sMiRnJE41dcgkvfj41m0aFHImjs7duzQjBkz1KNHD1mtVlmtVvXv31/Tp08v9A9BwZ+Vx3su -iYmJhU5BjPSzAgAQOUb2AOXcvffeq7/+9a+aNGmShg4dqldeeUWdO3dWixYtdOutt6phw4b6448/ -tGjRIu3cuVM///xz4H7Tpk3TX//6V918881q06aNDh48qJkzZ+q1117T2WefrUsvvVQfffSRrrji -CvXp00dbtmzRa6+9pmbNmik7O7vYnkOlSpU0bdo09e7dW+ecc44GDx6sZs2aac+ePZo0aZJ+++03 -vfzyy+rQoUPgPj169FDdunV1yy236N5775XVatXbb7+tatWqafv27YHzUlJSNH78eF1//fU655xz -dNVVVwXO+fzzz3XeeecV+GUzEl26dNFtt92msWPHauXKlerRo4fsdrs2btyoqVOn6sUXX9SAAQP0 -zjvv6NVXX9UVV1yhRo0aKSsrS2+++aZSUlKO+1f/fH/5y190yy23aOnSpapevbrefvtt/fHHHyG/ -jN97772aOXOmLr300sB2v0ePHtXq1as1bdo0bd269aSmAI0ZM0bffPON+vTpo3r16mnv3r169dVX -Vbt2bXXu3FmSdP311+vDDz/U0KFDtXDhQp133nny+Xz69ddf9eGHH2rOnDlq27atGjdurIceekiP -P/64zj//fF155ZVyOp1aunSpatasqbFjx6patWoaOXKkRo8erV69eqlv375av369Xn31VbVr167Q -UV8ncuutt+rll1/WDTfcoGXLlqlGjRqaPHmyEhISIrp/w4YNddZZZ2n+/Pm6+eabQ4598803gUBg -3759Onr0qJ544glJf243fcEFF2jLli1at26dxo8fH3LfaPrFvHnzdNlll53wr+GtWrWS1WrVuHHj -lJmZKafTqW7duh13nasePXrI4XDosssu02233abs7Gy9+eabSk9PDwmMq1Wrpn/+858aO3asLr30 -UvXu3VsrVqzQ7NmzC/StSPvjZZddpgsvvFAPPfSQtm7dqrPPPltz587VjBkzdNdddxVYd+Z0Gjx4 -sIYOHar+/fvr4osv1s8//6w5c+YU+X3kdrvVvXt3DRw4MNBnO3furL59+xb5GCkpKbrgggv09NNP -y+PxqFatWpo7d25gJNfJaNWqla6++mq9+uqryszM1LnnnqsFCxZEPCKlUaNGSktL02uvvabk5GQl -JiaqQ4cOatCggcaNG6ebbrpJXbp00dVXXx3Yer1+/fq6++67T1hXtH0zXEm9zxXmvvvu07vvvquL -L75Yd955Z2Dr9bp16+rgwYMnNTLlVF+DSN6Pj+ess85Sz549Q7Zel6TRo0cHzvnXv/6lhQsXqkOH -Drr11lvVrFkzHTx4UMuXL9f8+fMDgdPx+kmbNm30wQcf6J577lG7du2UlJSkyy67LOLPCgBAFE7v -5l8ASkL+9r6FbdPs8/nMRo0amY0aNTK9Xq9pmqa5efNm84YbbjAzMjJMu91u1qpVy7z00kvNadOm -hdz3wIED5h133GHWqlXLdDgcZu3atc1BgwYFtl31+/3mU089ZdarV890Op1m69atzc8++6zANuSm -eWpbr+fbunWrOWTIELNu3bqmzWYLbBc7f/78Qs9ftmyZ2aFDB9PhcJh169Y1n3vuuSIfd+HChWbP -nj3N1NRUMy4uzmzUqJF54403hmxFO2jQIDMxMbHQxyrsOZumab7xxhtmmzZtzPj4eDM5Odls0aKF -ed9995m7du0yTdM0ly9fbl599dVm3bp1TafTaaanp5uXXnppyOMWJX9b6Tlz5pgtW7Y0nU6n2bRp -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 -vz+iL4IeAAAAACWtps2my8K2Yl/icmklW7EDqMCiDnsAAAAAoDQZmJSkVEvorzZvsRU7gAqMsAcA -AABAmZZosei65OSQtm1er+bk5MSoIgCILcIeAAAAAGXeRfHxahC2KPN7WVnKZit2ABUQYQ8AAACA -Mq+wrdizTFMfsBU7gAqIsAcAAABAudDC6VSnuLiQts+OHtVOr7eIewBA+RR12LN8+XKtXr06cHvG -jBnq16+fHnzwQbnd7mItDgAAAACicVNysoInc/n051bsAFCRRB323HbbbdqwYYMk6bffftNVV12l -hIQETZ06Vffdd1+xFwgAAAAAkcqw2XR52FbsP7lcWs5W7AAqkKjDng0bNqhVq1aSpKlTp+qCCy7Q -lClTNGnSJE2fPr246wMAAACAqPw1KUlphWzF7mUrdgAVRNRhj2ma8h9b0X7+/Pnq3bu3JKlOnTra -v39/8VYHAAAAAFFKsFh0fdhW7Du8Xn3BVuwAKoiow562bdvqiSee0OTJk/X111+rT58+kqQtW7ao -evXqxV4gAAAAAESre3y8GoVtxf7frCxlsRU7gAog6rDnhRde0PLly3XHHXfooYceUuPGjSVJ06ZN -07nnnlvsBQIAAABAtCyGocGpqSFtWaap/2ZlxagiADh9bCc+JVTLli1DduPK98wzz8hqtRZLUQAA -AABwqpo7HDovLk7f5+UF2mbl5KhXQoLq2u0xrAwASlbUI3sk6fDhw5owYYJGjhypgwcPSpLWrl2r -vXv3FmtxAAAAAHAqbkxOVnCs45f0NqN7AJRzUYc9q1atUpMmTTRu3Dg9++yzOnz4sCTpo48+0siR -I4u7PgAAAAA4adVtNl2RlBTSttzl0k9Bo30AoLyJOuy55557dNNNN2njxo2Ki4sLtPfu3VvffPNN -VNcaO3as2rVrp+TkZKWnp6tfv35av359yDldu3aVYRghX0OHDg05Z/v27erTp48SEhKUnp6ue++9 -V16vN9qnBgAAAKAc6p+YqMpsxQ6gAok67Fm6dKluu+22Au21atXSnj17orrW119/reHDh2vx4sWa -N2+ePB6PevTooaNHj4acd+utt2r37t2Br6effjpwzOfzqU+fPnK73frhhx/0zjvvaNKkSRo1alS0 -Tw0AAABAORRvseiGsK3Yf/f59DlbsQMop6JeoNnpdOrIkSMF2jds2KBq1apFda0vvvgi5PakSZOU -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 -ymHr9bbPb7755rj00ktj5syZ8dRTT8WNN94Yt9xyS1x22WX9XDlsnZaWlhg3blzMnj17q85//vnn -4+STT44JEybEypUr44tf/GKcd955cffdd/dxpZSrinj1+hFHHBGHH354fO9734uIiK6urhg7dmxc -cMEFcemll25y/sc+9rFoaWmJBQsWdK8deeSRcfDBB8f111/fb3VDb/S2z3sqFAoxfPjw+N73vhef -+tSn+rpc2Cbb0ueFQiGOOeaY+MxnPhO/+c1v4o033tiqf12DpPS2z6+//vr4xje+EU8//XRkMpn+ -Lhe2SW/7fPr06fHUU0/Ffffd1732D//wD/Hwww/H0qVL+61u2BapVCpuu+22t91dfMkll8TChQtL -Nhh8/OMfjzfeeCMWLVrUD1VSbsp+Z09HR0esWLEiTjjhhO61qqqqOOGEE2LZsmWb/Z5ly5aVnB8R -ceKJJ77l+ZC0benznnK5XOTz+RgxYkRflQnvyLb2+de+9rUYNWpUnHvuuf1RJrwj29Lnd9xxR4wf -Pz6mTZsWO++8cxxwwAFx9dVXR6FQ6K+yoVe2pc8/8IEPxIoVK7of9XruuefizjvvjJNOOqlfaoa+ -5h6U7a066QL62muvvRaFQiF23nnnkvWdd945nn766c1+z9q1azd7/tq1a/usTngntqXPe7rkkkti -l1122eQvGRgotqXPly5dGjfeeGOsXLmyHyqEd25b+vy5556L+++/Pz75yU/GnXfeGc8880z83d/9 -XeTz+Zg5c2Z/lA29si19/olPfCJee+21+OAHPxjFYjE6Ozvjc5/7nMe4KBtvdQ/a1NQUra2tUVdX -l1BlDFZlv7MH2LJrrrkm5s2bF7fddlvU1tYmXQ5sF83NzXHWWWfFD3/4w9hxxx2TLgf6TFdXV4wa -NSpuuOGGOOyww+JjH/tYfPnLX/boOWXlgQceiKuvvjq+//3vx6OPPhq//OUvY+HChXHllVcmXRrA -gFT2O3t23HHHSKfTsW7dupL1devWxejRozf7PaNHj+7V+ZC0benzN33zm9+Ma665Ju6999446KCD -+rJMeEd62+fPPvtsvPDCC3Hqqad2r3V1dUVERHV1daxatSr23nvvvi0aemlbfp+PGTMmMplMpNPp -7rX3vOc9sXbt2ujo6Iiampo+rRl6a1v6/J/+6Z/irLPOivPOOy8iIg488MBoaWmJ888/P7785S9H -VZV/w2Zwe6t70MbGRrt62CZl/1uxpqYmDjvssJJhbl1dXXHffffF+PHjN/s948ePLzk/ImLx4sVv -eT4kbVv6PCLi2muvjSuvvDIWLVoU73//+/ujVNhmve3z/fffPx5//PFYuXJl99eHP/zh7rdcjB07 -tj/Lh62yLb/PjzrqqHjmmWe6w8yIiD/+8Y8xZswYQQ8D0rb0eS6X2yTQeTPgrID3zVAB3IOy3RUr -wLx584rZbLY4Z86c4h/+8Ifi+eefX9xhhx2Ka9euLRaLxeJZZ51VvPTSS7vP/+1vf1usrq4ufvOb -3yw+9dRTxZkzZxYzmUzx8ccfT+oSYIt62+fXXHNNsaampvjzn/+8uGbNmu6v5ubmpC4Btqi3fd7T -2WefXTzttNP6qVrYNr3t89WrVxcbGhqK06dPL65ataq4YMGC4qhRo4r//M//nNQlwBb1ts9nzpxZ -bGhoKP7sZz8rPvfcc8V77rmnuPfeexf/5m/+JqlLgLfV3NxcfOyxx4qPPfZYMSKK3/rWt4qPPfZY -8X/+53+KxWKxeOmllxbPOuus7vOfe+65Yn19ffHiiy8uPvXUU8XZs2cX0+l0cdGiRUldAoNc2T/G -FfHnV6m/+uqrccUVV8TatWvj4IMPjkWLFnUPwFq9enXJvxR84AMfiJtvvjkuv/zyuOyyy2LfffeN -22+/PQ444ICkLgG2qLd9ft1110VHR0d89KMfLfk5M2fOjK985Sv9WTpstd72OQxGve3zsWPHxt13 -3x0zZsyIgw46KHbdddf4+7//+7jkkkuSugTYot72+eWXXx6pVCouv/zyeOmll2KnnXaKU089Na66 -6qqkLgHe1iOPPBITJkzoPr7wwgsjIuLss8+OOXPmxJo1a2L16tXdn++5556xcOHCmDFjRnznO9+J -3XbbLX70ox/FiSee2O+1Ux5SxaJ9jwAAAADlwj9/AgAAAJQRYQ8AAABAGRH2AAAAAJQRYQ8AAABA -GRH2AAAAAJQRYQ8AAABAGRH2AAAAAJQRYQ8AAABAGRH2AAD9LpVKxe233x4RES+88EKkUqlYuXJl -ojUBAJQLYQ8AVJhzzjknUqlUpFKpyGQyseeee8Y//uM/RltbW9KlAQCwHVQnXQAA0P8mT54cN910 -U+Tz+VixYkWcffbZkUql4utf/3rSpQEA8A7Z2QMAFSibzcbo0aNj7NixMXXq1DjhhBNi8eLFERHR -1dUVs2bNij333DPq6upi3Lhx8fOf/7zk+5988sk45ZRTorGxMRoaGuLoo4+OZ599NiIifv/738fE -iRNjxx13jGHDhsWxxx4bjz76aL9fIwBApRL2AECFe+KJJ+Khhx6KmpqaiIiYNWtW/Nu//Vtcf/31 -8eSTT8aMGTPizDPPjCVLlkRExEsvvRTHHHNMZLPZuP/++2PFihXxmc98Jjo7OyMiorm5Oc4+++xY -unRpLF++PPbdd9846aSTorm5ObFrBACoJB7jAoAKtGDBghg6dGh0dnZGe3t7VFVVxfe+971ob2+P -q6++Ou69994YP358RETstddesXTp0vjBD34Qxx57bMyePTuGDRsW8+bNi0wmExER7373u7t/9vHH -H1/yZ91www2xww47xJIlS+KUU07pv4sEAKhQwh4AqEATJkyI6667LlpaWuLb3/52VFdXx+mnnx5P -Pvlk5HK5mDhxYsn5HR0dccghh0RExMqVK+Poo4/uDnp6WrduXVx++eXxwAMPxCuvvBKFQiFyuVys -Xr26z68LAABhDwBUpCFDhsQ+++wTERE//vGPY9y4cXHjjTfGAQccEBERCxcujF133bXke7LZbERE -1NXVve3PPvvss+P111+P73znO/Gud70rstlsjB8/Pjo6OvrgSgAA6EnYAwAVrqqqKi677LK48MIL -449//GNks9lYvXp1HHvssZs9/6CDDoq5c+dGPp/f7O6e3/72t/H9738/TjrppIiIePHFF+O1117r -02sAAOD/GNAMAMRf//VfRzqdjh/84Adx0UUXxYwZM2Lu3Lnx7LPPxqOPPhrf/e53Y+7cuRERMX36 -9GhqaoqPf/zj8cgjj8R///d/x09+8pNYtWpVRETsu+++8ZOf/CSeeuqpePjhh+OTn/zkFncDAQCw -/djZAwBEdXV1TJ8+Pa699tp4/vnnY6eddopZs2bFc889FzvssEMceuihcdlll0VExMiRI+P++++P -iy++OI499thIp9Nx8MEHx1FHHRURETfeeGOcf/75ceihh8bYsWPj6quvjosuuijJywMAqCipYrFY -TLoIAAAAALYPj3EBAAAAlBFhDwAAAEAZEfYAAAAAlBFhDwAAAEAZEfYAAAAAlBFhDwAAAEAZEfYA -AAAAlBFhDwAAAEAZEfYAAAAAlBFhDwAAAEAZEfYAAAAAlJH/D53UJ0Cj2UYPAAAAAElFTkSuQmCC +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 +Q4Zox44dh8zlo48+0kknnSRJuvrqq6PP6dy5c6NtFixYoO7du8vhcCgtLU2XX375IacSH6pvFvn0 +00918sknKzk5WW3bttWLL75Y4lwV7VelKe9voLQ1ezZu3KjevXvL4XCoefPmeuCBBzRnzpwy+1l5 ++Vf0OThYae9xFXk9Ls/LL7+sY489VsnJyerevbtWrVpVos3vv/+ua665Ro0aNZLdbtfxxx+v2bNn +R4+X10/69Omjd999V9u2bYvGD37frOh7RdEaQy+//HL0veD999+v8HUCQF3BVwJALVb0gbNevXrR +2HfffafTTz9dzZo105133qmUlBS99tprGjp0qF5//XVdeOGFkv5Y2PSMM87Q999/r2uuuUYnnnii +MjIytHjxYu3YsUNpaWnKysrSc889p0suuUSjR49Wdna2nn/+eQ0YMEBffvllpQ3zf/vtt5WcnFzm +6KQ2bdqoV69eWr58ufLz8+P+dm/evHkaOXKkBgwYoGnTpikvL09PPfWUevXqpa+//jrmw2hhYaEG +DBigXr166V//+pecTmeZ5x0zZozmzp2rq6++WhMmTNCWLVs0a9Ysff311/rss89ktVq1d+9e9e/f +Xw0bNtSdd94pr9errVu3llqwKc1PP/2k//u//9P111+vkSNHas6cOfrrX/+q999/X+ecc44kKS8v +T71799bvv/+uMWPGqGXLlvr888911113adeuXSXWT5gzZ47y8/N13XXXyW63q379+qU+9nfffafz +zjtPJ5xwgu6//37Z7Xb9/PPP+uyzz6JtIpGIhgwZok8//VTXXXedjjvuOH3zzTeaMWOGfvzxR731 +1lvRtpMnT9akSZN02mmn6f7775fNZtP//vc/ffjhh+rfv7+kP/6BM3nyZJ199tm64YYbtHnzZj31 +1FNas2ZN9DktcuDAAQ0cOFAXXXSRRowYoYULF+qOO+5Q586dde6550qSAoGA+vXrp+3bt2vChAlq +2rSp5s2bpw8//LBCz3/RelEnnnhihdqXZffu3fr666+jBct4+kX37t01Y8YMfffdd2WOIDrzzDM1 +YcIEPf7447r77rt13HHHSVL0v9IfU1UuueQSjRkzRqNHj9axxx4r6Y/paMcff7yGDBmipKQkvf32 +27rxxhsViUQ0duzY6P3vvfdePfDAAxo0aJAGDRqkdevWqX///goGgzG5VLQ/GoahIUOGaOXKlbr2 +2mvVtWtXffDBB7rtttv0+++/a8aMGWrYsKHmzZunBx98UDk5OZo6dWr0uubNm6eJEyeqefPmuvXW +WyVJDRs2PJxfzxEbN26cvF6vJk2aFO2z27ZtixalyrJs2TL9+uuvuvrqq9W4cWN99913euaZZ/Td +d9/piy++KHHfESNGqE2bNpo6darWrVun5557Tunp6Zo2bVq0zahRo/TSSy/p0ksv1WmnnaYPP/yw +QlMHjzvuON1///269957dd1110W/TDjttNMkKfpad9JJJ2nq1Knas2ePHnvsMX322Wf6+uuvSx15 +JVWsb/78888aPny4rr32Wo0cOVKzZ8/WVVddpe7du0dHwsX7Oleasv4Givv999+jRZm77rpLKSkp +eu6558ocAXSo/CvyHBxKRV6Py/Pxxx/r1Vdf1YQJE2S32/Xkk09q4MCB+vLLL6OvK3v27FHPnj2j +xZaGDRvqvffe07XXXqusrCzdfPPN5faTZs2aye/3a8eOHdEpl6mpqZLie6+Q/pii+dprr2ncuHFK +S0urltP/ACDhDAA13pw5cwxJxvLly419+/YZv/32m7Fw4UKjYcOGht1uN3777bdo2379+hmdO3c2 +8vPzo7FIJGKcdtppxjHHHBON3XvvvYYk44033ijxeJFIxDAMwygsLDQKCgpijh04cMBo1KiRcc01 +18TEJRn33XdfiZy3bNlyyOvzer1Gly5dym0zYcIEQ5KxceNGwzAM47777jNKe4kr/rjZ2dmG1+s1 +Ro8eHdNu9+7dhsfjiYmPHDnSkGTceeedJc47cuRIo1WrVtHbn3zyiSHJePnll2Pavf/++zHxN998 +05BkrFmzptzrK02rVq0MScbrr78ejfn9fqNJkyZGt27dorEpU6YYKSkpxo8//hhz/zvvvNOwWCzG +9u3bDcMwjC1bthiSDLfbbezdu/eQjz9jxgxDkrFv374y28ybN88wm83GJ598EhN/+umnDUnGZ599 +ZhiGYfz000+G2Ww2LrzwQiMcDse0Lepve/fuNWw2m9G/f/+YNrNmzTIkGbNnz47GevfubUgyXnzx +xWisoKDAaNy4sTFs2LBobObMmYYk47XXXovGcnNzjfbt2xuSjJUrV5b7HPzjH/8wJBnZ2dnltjv+ ++OON3r17l3n8+eefNxwOh5GXl2cYRnz94vPPPzckGa+++mq57RYsWFDmNRX1pffff7/EsaKcDjZg +wACjbdu20dtFv5vBgwdHf1+GYRh33323IckYOXJkNFbR/vjWW28ZkowHHnggpt3w4cMNk8lk/Pzz +z9FY7969jeOPP77U6xo8eHCJ+JEq/np28OMdfK1Frzfdu3c3gsFgNP7www8bkoxFixaV+zilPff/ +/e9/DUnGqlWrorGi17vir7sXXnih0aBBg+jt9evXG5KMG2+8MabdpZdeWuY1HWzNmjWGJGPOnDkx +8WAwaKSnpxudOnUyAoFANP7OO+8Ykox777233PNWpG8efL179+417Ha7ceutt0ZjFe1XZSnvb6D4 +73X8+PGGyWQyvv7662gsMzPTqF+/fon3tYrmX95zUJri73EVeT0uiyRDkvHVV19FY9u2bTOSk5ON +Cy+8MBq79tprjSZNmhgZGRkx97/44osNj8cT7a9l9RPDMIzBgwfHvFcWqeh7RVG+ZrPZ+O677+K+ +VgCoS5jGBdQiZ599tho2bKgWLVpo+PDhSklJ0eLFi9W8eXNJ0v79+/Xhhx9qxIgRys7OVkZGhjIy +MpSZmakBAwbop59+ig65f/3119WlS5foSJ+DFX2bbLFYomu5RCIR7d+/X4WFherRo4fWrVtXadeV +nZ0tl8tVbpui49nZ2XGde9myZfL5fLrkkkuiz0dGRoYsFotOOeWUUqekVWQh6AULFsjj8eicc86J +OW/37t2VmpoaPW/Rt93vvPOOQqFQXLlLUtOmTWN+R0VTRL7++mvt3r07mssZZ5yhevXqxeRy9tln +KxwOlxiqP2zYsAqNgCjKfdGiRWVOk1iwYIGOO+44dejQIeaxi9aXKXoe3nrrLUUiEd17770lpj4V +9bfly5crGAzq5ptvjmkzevRoud1uvfvuuzH3S01N1eWXXx69bbPZdPLJJ+vXX3+NxpYsWaImTZpo ++PDh0ZjT6dR11113yOuX/tj+PCkpKfrt9OFasmSJzjrrrOgaOfH0i6KRe0XTKw9XmzZtNGDAgBLx +g9ft8fv9ysjIUO/evfXrr7/K7/dL+v+/m/Hjx8eMNiltEdaK9sclS5bIYrFowoQJMfe/9dZbZRiG +3nvvvSO63qPpuuuuixl1dsMNNygpKUlLliwp934HP/f5+fnKyMiIrktW2mvs9ddfH3P7jDPOUGZm +prKysiQp+njFn9MjXSz3q6++0t69e3XjjTfGjKwcPHiwOnToUOJvM14dO3aMjhCR/hihdeyxx8b8 +Lcf7Oleasv4Ginv//fd16qmnxoxerV+/fnRa7+Hkf6Qq8npcnlNPPVXdu3eP3m7ZsqUuuOACffDB +BwqHwzIMQ6+//rrOP/98GYYR8xwPGDBAfr//iN73K/peUaR3796sxwUAh8A0LqAWeeKJJ/SXv/xF +fr9fs2fP1qpVq2KGlf/8888yDEP33HNPmds17927V82aNdMvv/yiYcOGHfIxX3jhBT366KP64Ycf +Yv5R2qZNm7hy9/v9CgQC0ds2my06fcjlch2yiFN0PD09Pa7H/emnnySpzMVt3W53zO2kpKRo8exQ +5/X7/WXms3fvXkl/fGAdNmyYJk+erBkzZqhPnz4aOnSoLr300gotCtq+ffsSUzn+8pe/SPpjGl/j +xo31008/aePGjWUWcIpyKVLR393//d//6bnnntOoUaN05513ql+/frrooos0fPjwaDHmp59+0vff +f3/Ix/7ll19kNpvL/fC+bds2SSoxtcJms6lt27bR40WaN29e4rmpV6+eNm7cGHPO0p7DsqZvVIVQ +KKRly5ZFpyBJ8fUL48/1a8qbDlQRZf3eP/vsM913331avXp1ifVf/H6/PB5P9Lk/5phjYo43bNgw +ZhqppAr3x23btqlp06YlCr1FU1uK/76PxP79+2OmmzkcDnk8nko7f/HnJTU1VU2aNDnkGkL79+/X +5MmT9corr5T4Oy0qtB2sZcuWMbeLnvsDBw7I7XZr27ZtMpvNJdY+O9L+XtbfpiR16NBBn3766RGd +v/h1SX9c28HrHsX7Oleair72bdu2TaeeemqJePv27UttX5H8j1RFXo/LU7yPSn+8l+Tl5Wnfvn0y +m83y+Xx65pln9Mwzz5R6joo8x2Wp6HtFkXg/YwBAXUSxB6hFTj755OhuXEOHDlWvXr106aWXavPm +zUpNTY1+2/e3v/2tzG8vy/qwWpqXXnpJV111lYYOHarbbrtN6enpslgsmjp1aolFoQ/lpptuii60 +LP3xj92ixSk7duyodevWqaCgoMwCyMaNG2Wz2dSsWTNJZf/DNxwOx9wuek7mzZunxo0bl2hffLcT +u91eoQ/OkUhE6enpevnll0s9XvSB1mQyaeHChfriiy/09ttv64MPPtA111yjRx99VF988cURjxgp +yuWcc87R7bffXurxouJQkYruwORwOLRq1SqtXLlS7777rt5//329+uqr6tu3r5YuXSqLxaJIJKLO +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 +6qSTTip11NehjB49WrNmzdKVV16ptWvXqkmTJpo3b56cTmeF7t+2bVt16tRJy5cv1zXXXBNzbNWq +VdGCwL59+5Sbm6sHHnhA0h/bTZ955pnasmWLvv/+ez311FMx942nXyxbtkznn3/+Ib8N79q1qywW +i6ZNmya/3y+73a6+ffuWu85V//79ZbPZdP7552vMmDHKycnRs88+q/T09JiCccOGDfW3v/1NU6dO +1XnnnadBgwbp66+/1nvvvVeib1W0P55//vk666yz9Pe//11bt25Vly5dtHTpUi1atEg333xziXVn +jqZRo0bp+uuv17Bhw3TOOedow4YN+uCDD8r8OwoGg+rXr59GjBgR7bO9evXSkCFDynwMt9utM888 +Uw8//LBCoZCaNWumpUuXRkdyHY6uXbvqkksu0ZNPPim/36/TTjtNK1asqPCIlHbt2snr9erpp5+W +y+VSSkqKTjnlFLVp00bTpk3T1Vdfrd69e+uSSy6Jbr3eunVrTZw48ZB5xds3i6uq17nS3H777Xrp +pZd0zjnnaPz48dGt11u2bKn9+/cf1siUI30OKvJ6XJ5OnTppwIABMVuvS9LkyZOjbf75z39q5cqV +OuWUUzR69Gh17NhR+/fv17p167R8+fJowam8ftK9e3e9+uqruuWWW3TSSScpNTVV559/foXfKwAA +cTi6m38BqApF2/uWtk1zOBw22rVrZ7Rr184oLCw0DMMwfvnlF+PKK680GjdubFitVqNZs2bGeeed +ZyxcuDDmvpmZmca4ceOMZs2aGTabzWjevLkxcuTI6LarkUjEeOihh4xWrVoZdrvd6Natm/HOO++U +2IbcMI5s6/UiW7duNa677jqjZcuWRlJSUnS72OXLl5fafu3atcYpp5xi2Gw2o2XLlsb06dPLfNyV +K1caAwYMMDwej5GcnGy0a9fOuOqqq2K2oh05cqSRkpJS6mOVds2GYRjPPPOM0b17d8PhcBgul8vo +3Lmzcfvttxs7d+40DMMw1q1bZ1xyySVGy5YtDbvdbqSnpxvnnXdezOOWpWhb6Q8++MA44YQTDLvd +bnTo0MFYsGBBibbZ2dnGXXfdZbRv396w2WxGWlqacdpppxn/+te/oltCF229/sgjjxzysQ3DMFas +WGFccMEFRtOmTQ2bzWY0bdrUuOSSS0psfRwMBo1p06YZxx9/vGG324169eoZ3bt3NyZPnmz4/f6Y +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 +p5fthYV67s/RPo8eOKBvCwoY7QMAxWRHIrpi795yf27OzNSKQCCukTxjMzLKPWdFC/E5OTkaN26c +WrZsqfT0dF155ZXy+/0l2i1dulQ9evSQx+NRkyZNdOONNyoQCESPT58+XS1btpTL5VLr1q313HPP +6euvv9b111+vb775RqmpqUpNTdX27ds1adIkDR06tNR8fvzxR7Vr106zZs2SJPXp00d33XWXBgwY +IJfLpRNPPDFmplLr1q318MMPq2fPnnK5XOrdu7d+++23Cl1727Zt9be//U3NmzeX2WzW+eefr2OP +PVZffPFFqe2XLVumE044QS6XS40aNdINN9wQc/ztt99W+/bt5fV6ddVVVykUClUoj7LEXewxDEOR +P3/xy5cv16BBgyRJLVq0UEZGxhElAwAAgJqjrKJPA4tF/+dy6ZmGDTWpfn2dlpyssso+IUkf5+fr +7v37deO+fXozJ0dZjPYBgBrhmmuu0f79+7Vx40Zt2bJFoVBI48aNK9HO4XDo2Wef1f79+/XZZ59p +5cqVmj59uqQ/CjT/+Mc/tHTpUmVnZ+t///ufTj75ZHXr1k1PP/20OnfurJycHOXk5Khly5Zl5vLl +l1+qb9++mjp1akwO8+bN08MPP6wDBw6oR48eGj9+fMz9XnrpJf33v//Vvn37lJKSonvuueewnou9 +e/fq+++/1wknnFDq8ZEjR+q2225Tdna2fv31V11xxRUxx9977z19/fXX2rRpk1asWKGXX375sPIo +Enexp0ePHnrggQc0b948ffzxxxo8eLAkacuWLWrUqNERJQMAAICa5+Cij+OgBZjNJpNOtNt1Z716 +mp2erpEulxqXM9rn93BYc7KzddWePXrkwAFtKChgKgEAVFP79u3T66+/rieeeEJer1cpKSm6//77 +9eqrryocDse0PeOMM9StWzdZLBa1bdtWY8aM0UcffSRJslgsMgxD3333nQKBgBo1alRmwaQs77// +voYOHaoXX3xRI0aMiDl2+eWXq0uXLkpKStLIkSO1du3amOM33nij2rRpo+TkZF122WUljldEMBjU +xRdfrBEjRqhHjx6ltrFarfr555+jRaXTTjst5vi9994rl8ulpk2bauDAgYeVx8HiLvbMnDlT69at +07hx4/T3v/9d7du3lyQtXLiwRLIAAACoO9IsFtlMplKP1bNYNCw1VU83bKgp9evrjOTkMhd6LpT0 +SX6+7tm/X9fv26fXc3J0oNg/HAAAibV161ZFIhG1adNGXq9XXq9XJ510ksxms3bv3h3Tds2aNTr7 +7LPVqFEjud1u3X333dGZQe3atdMLL7ygWbNmqVGjRurfv7/Wr18fVy4zZ87UWWedpb59+5Y41rhx +4+j/p6SkKCcnp9zj2dnZkv7Y9ato+ti5555b5mMHg0ENHz5cTqez3F3L33zzTX377bc69thj1a1b +N7322msVyuNwxb31+gknnBAzx63II488Iks539QAAAAAZpNJXex2dbHb5Q+H9WEgoKV5efq9jGLO +7nBYL2Rn66XsbJ2SnKz+Tqe62mwyl1FUAoDaxGU2a156erlt9ofDejsvTx/FsW7PE2lpcpvLHvvh +KudYkRYtWshsNmvnzp1yOp0xx7Zu3Rpz+5JLLtHVV1+tRYsWKSUlRTNnztTcuXOjx0eMGKERI0Yo +EAjo3nvv1RVXXKFvvvlG5grkIUnz58/X3/72N40fP17//ve/K3SfQ7n77rt19913l9smGAzqr3/9 +q4LBoBYtWiSbzVZm2xNPPFGvv/66IpGI3nrrLY0YMUK9e/eulFxLE/fInrIkJyfLarVW1ukAAABQ +y3ksFl2YmqonGzbUQ/Xrq3dyssr6NBmW9Hl+vibt36/r9u3Tq9nZymS0D4BazmwyyWOxlPvTxmbT +BK+33J0Si3ObzeWesyIF9caNG2vo0KEaN25cdJTO7t279eabb5Zom5WVFZ3q9f333+upp56KHtu8 +ebOWLVumQCAgm82m1NRUJSX9cRWNGjXSrl27YhZzLk39+vW1YsUKrV69WjfccMNRWfA/FAppxIgR +ys3N1VtvvSW73V5m22AwqHnz5unAgQMym83yer2SFL3OqlBpxR4AAADgcJhMJnWy23VrvXqa26iR +RrndalHOB+C94bBezsnRtXv36oH9+7UmP19h1vYBUMeVt1NiVZk7d250+pbb7dYZZ5xR6loz//nP +f/Svf/1Lqampuv7663XxxRdHjwWDQd1zzz1q1KiRGjRooA8//DA66qdv377q2bOnmjVrJq/Xq+3b +t5eZS7169bR8+XKtW7dO1113XZUXfD7//HMtWrRIn332mdLS0qJTvh566KFS28+fP1/t27eXy+XS ++PHjNX/+fDVo0KDK8jMZ7HGprKwseTweZWRkVOmTDSRSKBTSwoULNXz4cEbhodain6MuqCv93DAM +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 ++UgeeOCBbNiwYaf+dQ2qZaB9ftNNN+V//a//lX/7t39Lc3PzcJcLu2SgfX7RRRdl+fLlueeee/rW +/uZv/iaLFy/Ogw8+OGx1w64oFAr5wQ9+8Kq7iy+++OLceeed/TYYnH322dmwYUPuuuuuYaiSWlPz +O3u6urry2GOP5aSTTupba2hoyEknnZRFixbt8GcWLVrU7/okOeWUU17xeqi2XenzSm1tbSmVSpk8 +efJQlQm7ZVf7/HOf+1ymTp2a888/fzjKhN2yK33+L//yL5k9e3YuvPDC7LPPPjnkkENy5ZVXpqen +Z7jKhgHZlT4/5phj8thjj/WNej377LP54Q9/mNNPP31Yaoah5h6UwdZU7QKG2tq1a9PT05N99tmn +3/o+++yTf/u3f9vhz6xevXqH169evXrI6oTdsSt9Xuniiy/O9OnTt/tLBkaKXenzBx98MF//+tez +bNmyYagQdt+u9Pmzzz6be++9N+ecc05++MMf5umnn85f/uVfplQqZcGCBcNRNgzIrvT5H//xH2ft +2rU57rjjUi6X093dnT//8z83xkXNeKV70E2bNqW9vT1jxoypUmWMVjW/swd4bVdffXVuvfXW/OAH +P0hra2u1y4FBsXnz5px77rn52te+lilTplS7HBgyvb29mTp1am6++ea89a1vzfvf//586lOfMnpO +Tbnvvvty5ZVX5itf+UqWLl2a73//+7nzzjvz+c9/vtqlAYxINb+zZ8qUKWlsbMwLL7zQb/2FF17I +tGnTdvgz06ZNG9D1UG270ucvu/baa3P11VfnJz/5SQ477LChLBN2y0D7/JlnnsnKlStzxhln9K31 +9vYmSZqamvLkk09m//33H9qiYYB25c/zfffdN83NzWlsbOxbO/jgg7N69ep0dXWlpaVlSGuGgdqV +Pr/iiity7rnn5k/+5E+SJIceemi2bt2aCy64IJ/61KfS0ODfsBndXukedPz48Xb1sEtq/k/FlpaW +vPWtb+33MLfe3t7cc889mT179g5/Zvbs2f2uT5K77777Fa+HatuVPk+Sa665Jp///Odz11135eij +jx6OUmGXDbTPDzrooPziF7/IsmXL+n69613v6nvLxYwZM4azfNgpu/Ln+bHHHpunn366L8xMkn// +93/PvvvuK+hhRNqVPm9ra9su0Hk54KyD981QB9yDMujKdeDWW28tF4vF8i233FL+1a9+Vb7gggvK +EydOLK9evbpcLpfL5557bvmSSy7pu/6hhx4qNzU1la+99try8uXLywsWLCg3NzeXf/GLX1TrK8Br +GmifX3311eWWlpbyd7/73fLzzz/f92vz5s3V+grwmgba55XOO++88plnnjlM1cKuGWifr1q1qjxu +3LjyRRddVH7yySfLd9xxR3nq1KnlL3zhC9X6CvCaBtrnCxYsKI8bN678z//8z+Vnn322/OMf/7i8 +//77l9/3vvdV6yvAq9q8eXP58ccfLz/++OPlJOUvfvGL5ccff7z861//ulwul8uXXHJJ+dxzz+27 +/tlnny2PHTu2/IlPfKK8fPny8o033lhubGws33XXXdX6CoxyNT/GlfzHq9TXrFmTT3/601m9enWO +OOKI3HXXXX0PwFq1alW/fyk45phj8u1vfzuXX355Lrvsshx44IG57bbbcsghh1TrK8BrGmiff/Wr +X01XV1fe+9739vucBQsW5DOf+cxwlg47baB9DqPRQPt8xowZ+dGPfpR58+blsMMOy+te97r81V/9 +VS6++OJqfQV4TQPt88svvzyFQiGXX355nnvuuey9994544wz8rd/+7fV+grwqpYsWZITTjih73j+ +/PlJkvPOOy+33HJLnn/++axatarv/MyZM3PnnXdm3rx5+fKXv5zXv/71+T//5//klFNOGfbaqQ2F +ctm+RwAAAIBa4Z8/AQAAAGqIsAcAAACghgh7AAAAAGqIsAcAAACghgh7AAAAAGqIsAcAAACghgh7 +AAAAAGqIsAcAAACghgh7AIBhVygUcttttyVJVq5cmUKhkGXLllW1JgCAWiHsAYA68+EPfziFQiGF +QiHNzc2ZOXNmPvnJT6ajo6PapQEAMAiaql0AADD8Tj311PzjP/5jSqVSHnvssZx33nkpFAr5n//z +f1a7NAAAdpOdPQBQh4rFYqZNm5YZM2bkrLPOykknnZS77747SdLb25urrroqM2fOzJgxY3L44Yfn +u9/9br+ff+KJJ/JHf/RHGT9+fMaNG5c5c+bkmWeeSZI8+uijOfnkkzNlypRMmDAhxx9/fJYuXTrs +3xEAoF4JewCgzv3yl7/Mww8/nJaWliTJVVddlW9+85u56aab8sQTT2TevHn54Ac/mPvvvz9J8txz +z2Xu3LkpFou5995789hjj+UjH/lIuru7kySbN2/OeeedlwcffDCPPPJIDjzwwJx++unZvHlz1b4j +AEA9McYFAHXojjvuyJ577pnu7u50dnamoaEhN9xwQzo7O3PllVfmJz/5SWbPnp0keeMb35gHH3ww +f//3f5/jjz8+N954YyZMmJBbb701zc3NSZI3velNfZ/9jne8o9/vdfPNN2fixIm5//7780d/9EfD +9yUBAOqUsAcA6tAJJ5yQr371q9m6dWv+7u/+Lk1NTXnPe96TJ554Im1tbTn55JP7Xd/V1ZUjjzwy +SbJs2bLMmTOnL+ip9MILL+Tyyy/PfffdlxdffDE9PT1pa2vLqlWrhvx7AQAg7AGAurTHHnvkgAMO +SJL8wz/8Qw4//PB8/etfzyGHHJIkufPOO/O6172u388Ui8UkyZgxY171s88777ysW7cuX/7yl/N7 +v/d7KRaLmT17drq6uobgmwAAUEnYAwB1rqGhIZdddlnmz5+ff//3f0+xWMyqVaty/PHH7/D6ww47 +LN/4xjdSKpV2uLvnoYceyle+8pWcfvrpSZLf/OY3Wbt27ZB+BwAA/osHNAMA+R//43+ksbExf//3 +f5+Pf/zjmTdvXr7xjW/kmWeeydKlS3P99dfnG9/4RpLkoosuyqZNm3L22WdnyZIleeqpp/Ktb30r +Tz75ZJLkwAMPzLe+9a0sX748ixcvzjnnnPOau4EAABg8dvYAAGlqaspFF12Ua665JitWrMjee++d +q666Ks8++2wmTpyYo446KpdddlmSZK+99sq9996bT3ziEzn++OPT2NiYI444Iscee2yS5Otf/3ou +uOCCHHXUUZkxY0auvPLKfPzjH6/m1wMAqCuFcrlcrnYRAAAAAAwOY1wAAAAANUTYAwAAAFBDhD0A +AAAANUTYAwAAAFBDhD0AAAAANUTYAwAAAFBDhD0AAAAANUTYAwAAAFBDhD0AAAAANUTYAwAAAFBD +hD0AAAAANeT/BxQktFNAuYJ8AAAAAElFTkSuQmCC diff --git a/docs/pages/performance/fashion-mnist/plot.png b/docs/pages/performance/fashion-mnist/plot.png index 12c7544c3105a43d72cdf31ca22c924d60657296..e39a1cb442922e403a5b079647a96de11ad368c3 100644 GIT binary patch literal 44604 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 JC!cA8l;mbU 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 Dw5>cv diff --git a/docs/pages/performance/fashion-mnist/results.md b/docs/pages/performance/fashion-mnist/results.md index 31d234a0a..f4217c533 100644 --- a/docs/pages/performance/fashion-mnist/results.md +++ b/docs/pages/performance/fashion-mnist/results.md @@ -1,10 +1,10 @@ |Model|Parameters|Recall|Queries per Second| |---|---|---|---| -|eknn-l2lsh|L=100 k=4 w=1024 candidates=500 probes=0|0.378|363.121| -|eknn-l2lsh|L=100 k=4 w=1024 candidates=1000 probes=0|0.446|299.144| -|eknn-l2lsh|L=100 k=4 w=1024 candidates=500 probes=3|0.634|270.522| -|eknn-l2lsh|L=100 k=4 w=1024 candidates=1000 probes=3|0.716|240.419| -|eknn-l2lsh|L=100 k=4 w=2048 candidates=500 probes=0|0.768|280.053| -|eknn-l2lsh|L=100 k=4 w=2048 candidates=1000 probes=0|0.847|240.014| -|eknn-l2lsh|L=100 k=4 w=2048 candidates=500 probes=3|0.922|186.668| -|eknn-l2lsh|L=100 k=4 w=2048 candidates=1000 probes=3|0.960|166.241| +|eknn-l2lsh|L=100 k=4 w=1024 candidates=500 probes=0|0.379|272.975| +|eknn-l2lsh|L=100 k=4 w=1024 candidates=1000 probes=0|0.447|257.790| +|eknn-l2lsh|L=100 k=4 w=1024 candidates=500 probes=3|0.634|192.264| +|eknn-l2lsh|L=100 k=4 w=1024 candidates=1000 probes=3|0.717|177.546| +|eknn-l2lsh|L=100 k=4 w=2048 candidates=500 probes=0|0.767|179.336| +|eknn-l2lsh|L=100 k=4 w=2048 candidates=1000 probes=0|0.847|165.566| +|eknn-l2lsh|L=100 k=4 w=2048 candidates=500 probes=3|0.922|113.075| +|eknn-l2lsh|L=100 k=4 w=2048 candidates=1000 probes=3|0.960|106.883| diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java new file mode 100644 index 000000000..b7b63cbbc --- /dev/null +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java @@ -0,0 +1,76 @@ +package com.klibisz.elastiknn.search; + +import org.apache.lucene.search.KthGreatest; + +/** + * Use an array of counts to count hits. The index of the array is the doc id. + * Hopefully there's a way to do this that doesn't require O(num docs in segment) time and memory, + * but so far I haven't found anything on the JVM that's faster than simple arrays of primitives. + */ +public class ArrayHitCounter implements HitCounter { + + private final short[] counts; + private int numHits; + private int minKey; + private int maxKey; + + public ArrayHitCounter(int capacity) { + counts = new short[capacity]; + numHits = 0; + minKey = capacity; + maxKey = 0; + } + + @Override + public void increment(int key, short count) { + if (counts[key] == 0) { + numHits++; + minKey = Math.min(key, minKey); + maxKey = Math.max(key, maxKey); + } + counts[key] += count; // Important to be after the above. + } + + @Override + public void increment(int key, int count) { + increment(key, (short) count); + } + + @Override + public boolean isEmpty() { + return numHits == 0; + } + + @Override + public short get(int key) { + return counts[key]; + } + + @Override + public int numHits() { + return numHits; + } + + @Override + public int capacity() { + return counts.length; + } + + @Override + public int minKey() { + return minKey; + } + + @Override + public int maxKey() { + return maxKey; + } + + @Override + public KthGreatest.Result kthGreatest(int k) { + int[] ints = new int[counts.length]; + for (int i = 0; i < counts.length; i++) ints[i] = counts[i]; + return KthGreatest.kthGreatest(ints, Math.min(k, counts.length - 1)); + } + +} diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java new file mode 100644 index 000000000..8eb016983 --- /dev/null +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java @@ -0,0 +1,13 @@ +package com.klibisz.elastiknn.search; + +public class TestCasting { + + public static void main(String[] args) { + int[] ints = {1,2,3,4,5}; + short[] shorts = new short[ints.length]; + System.arraycopy(ints, 0, shorts, 0, shorts.length); + for (int i = 0; i < shorts.length; i++) { + System.out.println(shorts[i]); + } + } +} From a3410e8024b4c7e976c30f746fa5fa39f7fe1d0b Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 19:25:38 -0800 Subject: [PATCH 06/11] Remove HashMapHitCounter and cleanup benchmarks --- Taskfile.yaml | 2 +- build.sbt | 6 +- .../jmhbenchmarks}/HitCounterBenchmarks.scala | 15 +++-- .../VectorOpsJmhBenchmark.scala | 2 +- .../elastiknn/search/HashMapHitCounter.java | 67 ------------------- .../search/MatchHashesAndScoreQuery.java | 4 +- 6 files changed, 15 insertions(+), 81 deletions(-) rename {elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks => elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks}/HitCounterBenchmarks.scala (82%) rename {elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks => elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks}/VectorOpsJmhBenchmark.scala (98%) delete mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java diff --git a/Taskfile.yaml b/Taskfile.yaml index 80eb4b017..a30d8b87c 100644 --- a/Taskfile.yaml +++ b/Taskfile.yaml @@ -186,9 +186,9 @@ tasks: cmds: - sbt -client elastiknn-api4s/test - sbt -client elastiknn-client-elastic4s/test + - sbt -client elastiknn-jmh-benchmarks/test - sbt -client elastiknn-lucene/test - sbt -client elastiknn-models/test - - sbt -client elastiknn-models-benchmarks/test - sbt -client elastiknn-plugin/test jvmUnitTestQuick: diff --git a/build.sbt b/build.sbt index d62e16289..000ea41ec 100644 --- a/build.sbt +++ b/build.sbt @@ -38,7 +38,7 @@ lazy val `elastiknn-root` = project `elastiknn-client-elastic4s`, `elastiknn-lucene`, `elastiknn-models`, - `elastiknn-models-benchmarks`, + `elastiknn-jmh-benchmarks`, `elastiknn-plugin`, `elastiknn-plugin-integration-tests` ) @@ -101,8 +101,8 @@ lazy val `elastiknn-models` = project TestSettings ) -lazy val `elastiknn-models-benchmarks` = project - .in(file("elastiknn-models-benchmarks")) +lazy val `elastiknn-jmh-benchmarks` = project + .in(file("elastiknn-jmh-benchmarks")) .dependsOn(`elastiknn-models`, `elastiknn-api4s`, `elastiknn-lucene`) .enablePlugins(JmhPlugin) .settings( diff --git a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala similarity index 82% rename from elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala rename to elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala index a8d1de268..b69603353 100644 --- a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/HitCounterBenchmarks.scala +++ b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala @@ -1,4 +1,4 @@ -package com.klibisz.elastiknn.microbenchmarks +package com.klibisz.elastiknn.jmhbenchmarks import org.openjdk.jmh.annotations._ import org.apache.lucene.util.hppc.IntIntHashMap @@ -9,10 +9,11 @@ import scala.util.Random @State(Scope.Benchmark) class HitCounterBenchmarksFixtures { val rng = new Random(0) - val numDocs = 600000 - val numHits = 6000 - val candidates = 500 + val numDocs = 60000 + val numHits = 2000 + val initialMapSize = 1000 val docs = (1 to numHits).map(_ => rng.nextInt(numDocs)).toArray + val arr = new Array[Int](numDocs) } class HitCounterBenchmarks { @@ -34,7 +35,7 @@ class HitCounterBenchmarks { @Warmup(time = 5, iterations = 5) @Measurement(time = 5, iterations = 5) def hashMapGetOrDefault(f: HitCounterBenchmarksFixtures): Unit = { - val h = new java.util.HashMap[Int, Int](f.candidates * 10, 0.99f) + val h = new java.util.HashMap[Int, Int](f.initialMapSize, 0.99f) for (d <- f.docs) h.put(d, h.getOrDefault(d, 0) + 1) () } @@ -46,7 +47,7 @@ class HitCounterBenchmarks { @Warmup(time = 5, iterations = 5) @Measurement(time = 5, iterations = 5) def luceneIntIntHashMap(f: HitCounterBenchmarksFixtures): Unit = { - val m = new IntIntHashMap(f.candidates * 10, 0.99d) + val m = new IntIntHashMap(f.initialMapSize, 0.99d) for (d <- f.docs) m.putOrAdd(d, 1, 1) () } @@ -57,7 +58,7 @@ class HitCounterBenchmarks { @Warmup(time = 5, iterations = 5) @Measurement(time = 5, iterations = 5) def eclipseIntShortHashMapAddToValue(f: HitCounterBenchmarksFixtures): Unit = { - val m = new IntShortHashMap(f.candidates * 10) + val m = new IntShortHashMap(f.initialMapSize) for (d <- f.docs) m.addToValue(d, 1) () } diff --git a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/VectorOpsJmhBenchmark.scala b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/VectorOpsJmhBenchmark.scala similarity index 98% rename from elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/VectorOpsJmhBenchmark.scala rename to elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/VectorOpsJmhBenchmark.scala index afbbdb3eb..acb19b79a 100644 --- a/elastiknn-models-benchmarks/src/main/scala/com/klibisz/elastiknn/microbenchmarks/VectorOpsJmhBenchmark.scala +++ b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/VectorOpsJmhBenchmark.scala @@ -1,4 +1,4 @@ -package com.klibisz.elastiknn.microbenchmarks +package com.klibisz.elastiknn.jmhbenchmarks import com.klibisz.elastiknn.api.Vec import com.klibisz.elastiknn.vectors._ diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java deleted file mode 100644 index 1f741a3ba..000000000 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/HashMapHitCounter.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.klibisz.elastiknn.search; - -import org.apache.lucene.search.KthGreatest; -import org.apache.lucene.util.hppc.IntIntHashMap; - -public final class HashMapHitCounter implements HitCounter { - - private final IntIntHashMap hashMap; - private final int capacity; - private int minKey; - private int maxKey; - - public HashMapHitCounter(int capacity, int expectedElements, float loadFactor) { - this.capacity = capacity; - hashMap = new IntIntHashMap(expectedElements, loadFactor); - minKey = capacity; - maxKey = 0; - } - - - @Override - public void increment(int key, short count) { - hashMap.putOrAdd(key, count, count); - } - - @Override - public void increment(int key, int count) { - minKey = Math.min(key, minKey); - maxKey = Math.max(key, maxKey); - hashMap.putOrAdd(key, count, count); - } - - @Override - public boolean isEmpty() { - return hashMap.isEmpty(); - } - - @Override - public short get(int key) { - return (short) hashMap.get(key); - } - - @Override - public int numHits() { - return hashMap.size(); - } - - @Override - public int capacity() { - return capacity; - } - - @Override - public int minKey() { - return minKey; - } - - @Override - public int maxKey() { - return maxKey; - } - - @Override - public KthGreatest.Result kthGreatest(int k) { - return KthGreatest.kthGreatest(hashMap.values, Math.min(k, hashMap.size() - 1)); - } -} diff --git a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java index cccb91bc8..3dd0f79ff 100644 --- a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java +++ b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java @@ -1,8 +1,8 @@ package org.apache.lucene.search; import com.klibisz.elastiknn.models.HashAndFreq; +import com.klibisz.elastiknn.search.ArrayHitCounter; import com.klibisz.elastiknn.search.EmptyHitCounter; -import com.klibisz.elastiknn.search.HashMapHitCounter; import com.klibisz.elastiknn.search.HitCounter; import org.apache.lucene.index.*; import org.apache.lucene.util.BytesRef; @@ -62,7 +62,7 @@ private HitCounter countHits(LeafReader reader) throws IOException { } else { TermsEnum termsEnum = terms.iterator(); PostingsEnum docs = null; - HitCounter counter = new HashMapHitCounter(reader.maxDoc(), candidates * 10, 0.9f); + HitCounter counter = new ArrayHitCounter(reader.maxDoc()); double counterLimit = counter.capacity() + 1; // TODO: Is this the right place to use the live docs bitset to check for deleted docs? // Bits liveDocs = reader.getLiveDocs(); From ba982f07b68b796cf0b1ae7fd1e0cf819d8f06a8 Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 19:30:04 -0800 Subject: [PATCH 07/11] More cleanup --- .../elastiknn/search/ArrayHitCounter.java | 4 +- .../elastiknn/search/EmptyHitCounter.java | 48 ------------------- .../klibisz/elastiknn/search/TestCasting.java | 13 ----- .../org/apache/lucene/search/KthGreatest.java | 16 +++---- .../search/MatchHashesAndScoreQuery.java | 10 +++- 5 files changed, 17 insertions(+), 74 deletions(-) delete mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java delete mode 100644 elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java index b7b63cbbc..2c16904a3 100644 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java +++ b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/ArrayHitCounter.java @@ -68,9 +68,7 @@ public int maxKey() { @Override public KthGreatest.Result kthGreatest(int k) { - int[] ints = new int[counts.length]; - for (int i = 0; i < counts.length; i++) ints[i] = counts[i]; - return KthGreatest.kthGreatest(ints, Math.min(k, counts.length - 1)); + return KthGreatest.kthGreatest(counts, Math.min(k, counts.length - 1)); } } diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java deleted file mode 100644 index 0ce8841d5..000000000 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/EmptyHitCounter.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.klibisz.elastiknn.search; - -import org.apache.lucene.search.KthGreatest; - -public final class EmptyHitCounter implements HitCounter { - public EmptyHitCounter() { } - - @Override - public void increment(int key, short count) { } - - @Override - public void increment(int key, int count) { } - - @Override - public boolean isEmpty() { - return true; - } - - @Override - public short get(int key) { - return 0; - } - - @Override - public int numHits() { - return 0; - } - - @Override - public int capacity() { - return 0; - } - - @Override - public int minKey() { - return 0; - } - - @Override - public int maxKey() { - return 0; - } - - @Override - public KthGreatest.Result kthGreatest(int k) { - return new KthGreatest.Result(0, 0, 0); - } -} diff --git a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java b/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java deleted file mode 100644 index 8eb016983..000000000 --- a/elastiknn-lucene/src/main/java/com/klibisz/elastiknn/search/TestCasting.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.klibisz.elastiknn.search; - -public class TestCasting { - - public static void main(String[] args) { - int[] ints = {1,2,3,4,5}; - short[] shorts = new short[ints.length]; - System.arraycopy(ints, 0, shorts, 0, shorts.length); - for (int i = 0; i < shorts.length; i++) { - System.out.println(shorts[i]); - } - } -} diff --git a/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java b/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java index 250958387..9884198e8 100644 --- a/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java +++ b/elastiknn-lucene/src/main/java/org/apache/lucene/search/KthGreatest.java @@ -3,10 +3,10 @@ public class KthGreatest { public static class Result { - public final int kthGreatest; + public final short kthGreatest; public final int numGreaterThan; public final int numNonZero; - public Result(int kthGreatest, int numGreaterThan, int numNonZero) { + public Result(short kthGreatest, int numGreaterThan, int numNonZero) { this.kthGreatest = kthGreatest; this.numGreaterThan = numGreaterThan; this.numNonZero = numNonZero; @@ -23,7 +23,7 @@ public Result(int kthGreatest, int numGreaterThan, int numNonZero) { * @param k the desired largest value. * @return the kth largest value. */ - public static Result kthGreatest(int[] arr, int k) { + public static Result kthGreatest(short[] arr, int k) { if (arr.length == 0) { throw new IllegalArgumentException("Array must be non-empty"); } else if (k < 0 || k >= arr.length) { @@ -33,9 +33,9 @@ public static Result kthGreatest(int[] arr, int k) { )); } else { // Find the min and max values. - int max = arr[0]; - int min = arr[0]; - for (int a: arr) { + short max = arr[0]; + short min = arr[0]; + for (short a: arr) { if (a > max) max = a; else if (a < min) min = a; } @@ -43,14 +43,14 @@ public static Result kthGreatest(int[] arr, int k) { // Build and populate a histogram for non-zero values. int[] hist = new int[max - min + 1]; int numNonZero = 0; - for (int a: arr) { + for (short a: arr) { hist[a - min] += 1; if (a > 0) numNonZero++; } // Find the kth largest value by iterating from the end of the histogram. int numGreaterEqual = 0; - int kthGreatest = max; + short kthGreatest = max; while (kthGreatest >= min) { numGreaterEqual += hist[kthGreatest - min];; if (numGreaterEqual > k) break; diff --git a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java index 3dd0f79ff..5132f10d0 100644 --- a/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java +++ b/elastiknn-lucene/src/main/java/org/apache/lucene/search/MatchHashesAndScoreQuery.java @@ -2,7 +2,6 @@ import com.klibisz.elastiknn.models.HashAndFreq; import com.klibisz.elastiknn.search.ArrayHitCounter; -import com.klibisz.elastiknn.search.EmptyHitCounter; import com.klibisz.elastiknn.search.HitCounter; import org.apache.lucene.index.*; import org.apache.lucene.util.BytesRef; @@ -10,6 +9,7 @@ import java.io.IOException; import java.util.Arrays; import java.util.Objects; +import java.util.Set; import java.util.function.Function; import static java.lang.Math.min; @@ -58,7 +58,7 @@ private HitCounter countHits(LeafReader reader) throws IOException { Terms terms = reader.terms(field); // terms seem to be null after deleting docs. https://github.com/alexklibisz/elastiknn/issues/158 if (terms == null) { - return new EmptyHitCounter(); + return new ArrayHitCounter(0); } else { TermsEnum termsEnum = terms.iterator(); PostingsEnum docs = null; @@ -79,6 +79,12 @@ private HitCounter countHits(LeafReader reader) throws IOException { } private DocIdSetIterator buildDocIdSetIterator(HitCounter counter) { + // TODO: Add back this logging once log4j mess has settled. +// if (counter.numHits() < candidates) { +// logger.warn(String.format( +// "Found fewer approximate matches [%d] than the requested number of candidates [%d]", +// counter.numHits(), candidates)); +// } if (counter.isEmpty()) return DocIdSetIterator.empty(); else { From 093937d7ca9886f703dd73b5a80d4e3932b96138 Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 19:31:11 -0800 Subject: [PATCH 08/11] More cleanup --- docs/pages/performance/fashion-mnist/plot.b64 | 1547 ++++++++--------- docs/pages/performance/fashion-mnist/plot.png | Bin 44604 -> 43776 bytes .../performance/fashion-mnist/results.md | 16 +- 3 files changed, 774 insertions(+), 789 deletions(-) diff --git a/docs/pages/performance/fashion-mnist/plot.b64 b/docs/pages/performance/fashion-mnist/plot.b64 index ec1d7d98e..a9e81bd4f 100644 --- a/docs/pages/performance/fashion-mnist/plot.b64 +++ b/docs/pages/performance/fashion-mnist/plot.b64 @@ -1,783 +1,768 @@ iVBORw0KGgoAAAANSUhEUgAABHsAAAMKCAYAAAAViEgEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90 bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9h -AAAPYQGoP6dpAACtqUlEQVR4nOzdeXhTZfr/8U+SJmnSZgFK2XccEUFAUFFREBQQFFEYvu64gKgs -io7rjAqiMugI6OAyLoCijAouoKKyiOKCI4KAiuLGIrK2kHRLmzQ5vz+0+ZFuNNCSLu/XdfXS3OfJ -yX3Sp0m48ywmwzAMAQAAAAAAoFYwJzoBAAAAAAAAVB6KPQAAAAAAALUIxR4AAAAAAIBahGIPAAAA -AABALUKxBwAAAAAAoBah2AMAAAAAAFCLUOwBAAAAAACoRSj2AAAAAAAA1CIUewAAAAAAAGoRij0A -jgqTyaRJkyZFb8+dO1cmk0lbt25NWE6V6aqrrlLr1q0TnQYqyUcffSSTyaSPPvqoQu0ffvhhdejQ -QZFIpGoTO0hmZqZSUlK0ZMmSo/aYh6N169a66qqrqvQxCgsLdfvtt6tFixYym80aOnSoJCknJ0ej -Ro1S48aNZTKZdPPNN1dpHjVZ8dfo6qJ169Y677zzEp7D4fbhqsp/0qRJMplMlXIuk8mkcePGVcq5 -AADVB8UeoBYoKpwU/SQlJalZs2a66qqr9Pvvvyc6vUqzfft2XX/99WrdurXsdrvS09N14YUX6vPP -P090aqjDsrKyNG3aNN1xxx0ym///2+qrr76qyy+/XMccc4xMJpP69OlT7nkikYgaNmyohx9+uEKP -26BBA40aNUr33HNPhdpv2rRJkyZNqjUF1oPNnj1bjzzyiIYPH64XXnhBEydOlCQ99NBDmjt3rm64 -4QbNmzdPV1xxRYIzrdl27typSZMmaf369ZV63trcNyuqNj0H5fWT+fPna+bMmUc9JwCoi5ISnQCA -ynP//ferTZs2ys/P1xdffKG5c+fq008/1bfffqvk5OREp3dEPvvsMw0aNEiSNGrUKHXs2FG7d+/W -3Llz1atXLz3xxBO64YYbEpbfs88+e1RHdaD6mD17tgoLC3XJJZfExJ966imtXbtWJ510kjIzMw95 -ni+//FIZGRkaPHhwhR/7+uuv1+OPP64PP/xQffv2Lbftpk2bNHnyZPXp06fWjUL78MMP1axZM82Y -MaNEvGfPnrrvvvsSlFntsnPnTk2ePFmtW7dW165dK+281b1vbt68OaaQWxXifQ7+8Y9/6M4776zS -nA5Xef1k/vz5+vbbbxllBwBHAcUeoBY599xz1aNHD0l/FETS0tI0bdo0LV68WCNGjEhwdofvwIED -Gj58uBwOhz777DO1a9cueuyWW27RgAEDNH78eHXr1k09e/Y8qrnl5uYqJSVFVqv1qD7u0VJYWKhI -JCKbzZboVKqtOXPmaMiQISUKqvPmzVOzZs1kNpvVqVOnQ55nyZIlatWqlY4//vgKP/Zxxx2nTp06 -ae7cuYcs9sTDMAzl5+fL4XBU2jmr0t69e+X1ekuNd+zY8egnhBrv4L8Bu92e6HRKSEpKUlISH+Ol -P0ZFBoPBGv+lFgBUNqZxAbXYGWecIUn65ZdfYuI//PCDhg8frvr16ys5OVk9evTQ4sWLS9zf5/Np -4sSJ0WlTzZs315VXXqmMjAxJUjAY1L333qvu3bvL4/EoJSVFZ5xxhlauXFmp1/Gf//xHu3fv1iOP -PBJT6JEkh8OhF154QdIfI5uKlLWeQVlrBb333ns644wzlJKSIpfLpcGDB+u7776LaXPVVVcpNTVV -v/zyiwYNGiSXy6XLLrsseqz4t7GRSEQzZ87U8ccfr+TkZDVq1EhjxozRgQMHYtp99dVXGjBggNLS -0uRwONSmTRtdc801h3xeitaCWLp0qbp27ark5GR17NhRb7zxRom2Pp9PN998s1q0aCG73a727dtr -2rRpMaORtm7dKpPJpH/961+aOXOm2rVrJ7vdrk2bNpWZw7Jly9SrVy95vV6lpqbq2GOP1d133x3T -pqCgQPfdd5/at28vu92uFi1a6Pbbb1dBQUGJ87300ks6+eST5XQ6Va9ePZ155plaunRpTJsnn3xS -xx9/vOx2u5o2baqxY8fK5/PFtOnTp486deqkTZs26ayzzpLT6VSzZs1KnSK1Y8cODR06VCkpKUpP -T9fEiRNLza00W7Zs0caNG3X22WeXOFa0fkxFvfvuuzGjeiraL8455xy9/fbbMgyjzHPPnTtXf/3r -XyVJZ511VnTKZ9GaREV96YMPPlCPHj3kcDj0n//8R9Ifxay+ffsqPT1ddrtdHTt21FNPPVXiMQzD -0AMPPKDmzZvL6XTqrLPOKvE3VKQi/VH6o5h66623Rtsde+yx+te//hW91qI+u3LlSn333Xcx12Uy -mbRlyxa9++670XhlTZEpa32b4mu7FL3erFq1SmPGjFGDBg3kdrt15ZVXlngdKM3GjRt11VVXqW3b -tkpOTlbjxo11zTXXlBgpVvR69/PPP+uqq66S1+uVx+PR1Vdfrby8vJi2BQUFmjhxoho2bCiXy6Uh -Q4Zox44dh8zlo48+0kknnSRJuvrqq6PP6dy5c6NtFixYoO7du8vhcCgtLU2XX375IacSH6pvFvn0 -00918sknKzk5WW3bttWLL75Y4lwV7VelKe9voLQ1ezZu3KjevXvL4XCoefPmeuCBBzRnzpwy+1l5 -+Vf0OThYae9xFXk9Ls/LL7+sY489VsnJyerevbtWrVpVos3vv/+ua665Ro0aNZLdbtfxxx+v2bNn -R4+X10/69Omjd999V9u2bYvGD37frOh7RdEaQy+//HL0veD999+v8HUCQF3BVwJALVb0gbNevXrR -2HfffafTTz9dzZo105133qmUlBS99tprGjp0qF5//XVdeOGFkv5Y2PSMM87Q999/r2uuuUYnnnii -MjIytHjxYu3YsUNpaWnKysrSc889p0suuUSjR49Wdna2nn/+eQ0YMEBffvllpQ3zf/vtt5WcnFzm -6KQ2bdqoV69eWr58ufLz8+P+dm/evHkaOXKkBgwYoGnTpikvL09PPfWUevXqpa+//jrmw2hhYaEG -DBigXr166V//+pecTmeZ5x0zZozmzp2rq6++WhMmTNCWLVs0a9Ysff311/rss89ktVq1d+9e9e/f -Xw0bNtSdd94pr9errVu3llqwKc1PP/2k//u//9P111+vkSNHas6cOfrrX/+q999/X+ecc44kKS8v -T71799bvv/+uMWPGqGXLlvr888911113adeuXSXWT5gzZ47y8/N13XXXyW63q379+qU+9nfffafz -zjtPJ5xwgu6//37Z7Xb9/PPP+uyzz6JtIpGIhgwZok8//VTXXXedjjvuOH3zzTeaMWOGfvzxR731 -1lvRtpMnT9akSZN02mmn6f7775fNZtP//vc/ffjhh+rfv7+kP/6BM3nyZJ199tm64YYbtHnzZj31 -1FNas2ZN9DktcuDAAQ0cOFAXXXSRRowYoYULF+qOO+5Q586dde6550qSAoGA+vXrp+3bt2vChAlq -2rSp5s2bpw8//LBCz3/RelEnnnhihdqXZffu3fr666+jBct4+kX37t01Y8YMfffdd2WOIDrzzDM1 -YcIEPf7447r77rt13HHHSVL0v9IfU1UuueQSjRkzRqNHj9axxx4r6Y/paMcff7yGDBmipKQkvf32 -27rxxhsViUQ0duzY6P3vvfdePfDAAxo0aJAGDRqkdevWqX///goGgzG5VLQ/GoahIUOGaOXKlbr2 -2mvVtWtXffDBB7rtttv0+++/a8aMGWrYsKHmzZunBx98UDk5OZo6dWr0uubNm6eJEyeqefPmuvXW -WyVJDRs2PJxfzxEbN26cvF6vJk2aFO2z27ZtixalyrJs2TL9+uuvuvrqq9W4cWN99913euaZZ/Td -d9/piy++KHHfESNGqE2bNpo6darWrVun5557Tunp6Zo2bVq0zahRo/TSSy/p0ksv1WmnnaYPP/yw -QlMHjzvuON1///269957dd1110W/TDjttNMkKfpad9JJJ2nq1Knas2ePHnvsMX322Wf6+uuvSx15 -JVWsb/78888aPny4rr32Wo0cOVKzZ8/WVVddpe7du0dHwsX7Oleasv4Givv999+jRZm77rpLKSkp -eu6558ocAXSo/CvyHBxKRV6Py/Pxxx/r1Vdf1YQJE2S32/Xkk09q4MCB+vLLL6OvK3v27FHPnj2j -xZaGDRvqvffe07XXXqusrCzdfPPN5faTZs2aye/3a8eOHdEpl6mpqZLie6+Q/pii+dprr2ncuHFK -S0urltP/ACDhDAA13pw5cwxJxvLly419+/YZv/32m7Fw4UKjYcOGht1uN3777bdo2379+hmdO3c2 -8vPzo7FIJGKcdtppxjHHHBON3XvvvYYk44033ijxeJFIxDAMwygsLDQKCgpijh04cMBo1KiRcc01 -18TEJRn33XdfiZy3bNlyyOvzer1Gly5dym0zYcIEQ5KxceNGwzAM47777jNKe4kr/rjZ2dmG1+s1 -Ro8eHdNu9+7dhsfjiYmPHDnSkGTceeedJc47cuRIo1WrVtHbn3zyiSHJePnll2Pavf/++zHxN998 -05BkrFmzptzrK02rVq0MScbrr78ejfn9fqNJkyZGt27dorEpU6YYKSkpxo8//hhz/zvvvNOwWCzG -9u3bDcMwjC1bthiSDLfbbezdu/eQjz9jxgxDkrFv374y28ybN88wm83GJ598EhN/+umnDUnGZ599 -ZhiGYfz000+G2Ww2LrzwQiMcDse0Lepve/fuNWw2m9G/f/+YNrNmzTIkGbNnz47GevfubUgyXnzx -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 -6sknn1Tz5s3Vq1cvSdIVV1yh1157Tddff71Wrlyp008/XeFwWD/88INee+01ffDBB+rRo4fat2+v -v//975oyZYrOOOMMXXTRRbLb7VqzZo2aNm2qqVOnqmHDhrrrrrs0efJkDRw4UEOGDNHmzZv15JNP -6qSTTip11NehjB49WrNmzdKVV16ptWvXqkmTJpo3b56cTmeF7t+2bVt16tRJy5cv1zXXXBNzbNWq -VdGCwL59+5Sbm6sHHnhA0h/bTZ955pnasmWLvv/+ez311FMx942nXyxbtkznn3/+Ib8N79q1qywW -i6ZNmya/3y+73a6+ffuWu85V//79ZbPZdP7552vMmDHKycnRs88+q/T09JiCccOGDfW3v/1NU6dO -1XnnnadBgwbp66+/1nvvvVeib1W0P55//vk666yz9Pe//11bt25Vly5dtHTpUi1atEg333xziXVn -jqZRo0bp+uuv17Bhw3TOOedow4YN+uCDD8r8OwoGg+rXr59GjBgR7bO9evXSkCFDynwMt9utM888 -Uw8//LBCoZCaNWumpUuXRkdyHY6uXbvqkksu0ZNPPim/36/TTjtNK1asqPCIlHbt2snr9erpp5+W -y+VSSkqKTjnlFLVp00bTpk3T1Vdfrd69e+uSSy6Jbr3eunVrTZw48ZB5xds3i6uq17nS3H777Xrp -pZd0zjnnaPz48dGt11u2bKn9+/cf1siUI30OKvJ6XJ5OnTppwIABMVuvS9LkyZOjbf75z39q5cqV -OuWUUzR69Gh17NhR+/fv17p167R8+fJowam8ftK9e3e9+uqruuWWW3TSSScpNTVV559/foXfKwAA -cTi6m38BqApF2/uWtk1zOBw22rVrZ7Rr184oLCw0DMMwfvnlF+PKK680GjdubFitVqNZs2bGeeed -ZyxcuDDmvpmZmca4ceOMZs2aGTabzWjevLkxcuTI6LarkUjEeOihh4xWrVoZdrvd6Natm/HOO++U -2IbcMI5s6/UiW7duNa677jqjZcuWRlJSUnS72OXLl5fafu3atcYpp5xi2Gw2o2XLlsb06dPLfNyV -K1caAwYMMDwej5GcnGy0a9fOuOqqq2K2oh05cqSRkpJS6mOVds2GYRjPPPOM0b17d8PhcBgul8vo -3Lmzcfvttxs7d+40DMMw1q1bZ1xyySVGy5YtDbvdbqSnpxvnnXdezOOWpWhb6Q8++MA44YQTDLvd -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 -GQNAzRYxDPnD4XJ/fg0G9ZjPF1eRJysSKfecEQryh5STk6Nu3brpiy++kM/n0/33369LLrlEmzZt -SnRqkg6j2PPjjz9GK2sLFixQ7969NX/+fM2dO1evv/56ZecHAACAaqa8os8tXq+eT0/XZampSi9n -p5fthYV67s/RPo8eOKBvCwoY7QMAxWRHIrpi795yf27OzNSKQCCukTxjMzLKPWdFC/E5OTkaN26c -WrZsqfT0dF155ZXy+/0l2i1dulQ9evSQx+NRkyZNdOONNyoQCESPT58+XS1btpTL5VLr1q313HPP -6euvv9b111+vb775RqmpqUpNTdX27ds1adIkDR06tNR8fvzxR7Vr106zZs2SJPXp00d33XWXBgwY -IJfLpRNPPDFmplLr1q318MMPq2fPnnK5XOrdu7d+++23Cl1727Zt9be//U3NmzeX2WzW+eefr2OP -PVZffPFFqe2XLVumE044QS6XS40aNdINN9wQc/ztt99W+/bt5fV6ddVVVykUClUoj7LEXewxDEOR -P3/xy5cv16BBgyRJLVq0UEZGxhElAwAAgJqjrKJPA4tF/+dy6ZmGDTWpfn2dlpyssso+IUkf5+fr -7v37deO+fXozJ0dZjPYBgBrhmmuu0f79+7Vx40Zt2bJFoVBI48aNK9HO4XDo2Wef1f79+/XZZ59p -5cqVmj59uqQ/CjT/+Mc/tHTpUmVnZ+t///ufTj75ZHXr1k1PP/20OnfurJycHOXk5Khly5Zl5vLl -l1+qb9++mjp1akwO8+bN08MPP6wDBw6oR48eGj9+fMz9XnrpJf33v//Vvn37lJKSonvuueewnou9 -e/fq+++/1wknnFDq8ZEjR+q2225Tdna2fv31V11xxRUxx9977z19/fXX2rRpk1asWKGXX375sPIo -Enexp0ePHnrggQc0b948ffzxxxo8eLAkacuWLWrUqNERJQMAAICa5+Cij+OgBZjNJpNOtNt1Z716 -mp2erpEulxqXM9rn93BYc7KzddWePXrkwAFtKChgKgEAVFP79u3T66+/rieeeEJer1cpKSm6//77 -9eqrryocDse0PeOMM9StWzdZLBa1bdtWY8aM0UcffSRJslgsMgxD3333nQKBgBo1alRmwaQs77// -voYOHaoXX3xRI0aMiDl2+eWXq0uXLkpKStLIkSO1du3amOM33nij2rRpo+TkZF122WUljldEMBjU -xRdfrBEjRqhHjx6ltrFarfr555+jRaXTTjst5vi9994rl8ulpk2bauDAgYeVx8HiLvbMnDlT69at -07hx4/T3v/9d7du3lyQtXLiwRLIAAACoO9IsFtlMplKP1bNYNCw1VU83bKgp9evrjOTkMhd6LpT0 -SX6+7tm/X9fv26fXc3J0oNg/HAAAibV161ZFIhG1adNGXq9XXq9XJ510ksxms3bv3h3Tds2aNTr7 -7LPVqFEjud1u3X333dGZQe3atdMLL7ygWbNmqVGjRurfv7/Wr18fVy4zZ87UWWedpb59+5Y41rhx -4+j/p6SkKCcnp9zj2dnZkv7Y9ato+ti5555b5mMHg0ENHz5cTqez3F3L33zzTX377bc69thj1a1b -N7322msVyuNwxb31+gknnBAzx63II488Iks539QAAAAAZpNJXex2dbHb5Q+H9WEgoKV5efq9jGLO -7nBYL2Rn66XsbJ2SnKz+Tqe62mwyl1FUAoDaxGU2a156erlt9ofDejsvTx/FsW7PE2lpcpvLHvvh -KudYkRYtWshsNmvnzp1yOp0xx7Zu3Rpz+5JLLtHVV1+tRYsWKSUlRTNnztTcuXOjx0eMGKERI0Yo -EAjo3nvv1RVXXKFvvvlG5grkIUnz58/X3/72N40fP17//ve/K3SfQ7n77rt19913l9smGAzqr3/9 -q4LBoBYtWiSbzVZm2xNPPFGvv/66IpGI3nrrLY0YMUK9e/eulFxLE/fInrIkJyfLarVW1ukAAABQ -y3ksFl2YmqonGzbUQ/Xrq3dyssr6NBmW9Hl+vibt36/r9u3Tq9nZymS0D4BazmwyyWOxlPvTxmbT -BK+33J0Si3ObzeWesyIF9caNG2vo0KEaN25cdJTO7t279eabb5Zom5WVFZ3q9f333+upp56KHtu8 -ebOWLVumQCAgm82m1NRUJSX9cRWNGjXSrl27YhZzLk39+vW1YsUKrV69WjfccMNRWfA/FAppxIgR -ys3N1VtvvSW73V5m22AwqHnz5unAgQMym83yer2SFL3OqlBpxR4AAADgcJhMJnWy23VrvXqa26iR -RrndalHOB+C94bBezsnRtXv36oH9+7UmP19h1vYBUMeVt1NiVZk7d250+pbb7dYZZ5xR6loz//nP -f/Svf/1Lqampuv7663XxxRdHjwWDQd1zzz1q1KiRGjRooA8//DA66qdv377q2bOnmjVrJq/Xq+3b -t5eZS7169bR8+XKtW7dO1113XZUXfD7//HMtWrRIn332mdLS0qJTvh566KFS28+fP1/t27eXy+XS -+PHjNX/+fDVo0KDK8jMZ7HGprKwseTweZWRkVOmTDSRSKBTSwoULNXz4cEbhodain6MuqCv93DAM -/RAKaWlenj4JBBQ8RPs0s1lnO506x+lUQ5YWqPHqSj9H3ZaZmam0tDT5/X653e5oPD8/X1u2bIku -Gny4MsJhLczJ0dK8vBLTu+alp8vDa2WNVNH+cTSKfQAAAEBcTCaTjrPZdJzNpmvdbq0KBPR+Xp62 -Fpa+IkVGJKJXcnL0ak6Outvt6u90qofdriTW9gFQRxWN9Bmemlpm0Qe1V1zTuEKhkNq1a6fvv/++ -qvIBAAAAYqSazRqUkqLH0tL0rwYN1N/hUHIZRRxD0lcFBXrowAGN2rtXL2Vna3cZBSIAqAsSMb0L -iRfX79lqtSo/P7+qcgEAAADKZDKZ9BebTX+x2XRNJKJV+flampenn0OhUtvvj0T0Wk6OFuTkqKvN -pv5Op05OTpaV0T4A6qCDR/o4KrjLFWquuH/DY8eO1bRp01TINyQAAABIEKfZrIFOp6anpWlGWpoG -Op1ylDPa5+tgUNN8Pl2zd6/mZmVpJ59lAdRRaRaLbBS9a724R3CtWbNGK1as0NKlS9W5c2elpKTE -HH/jjTcqLTkAAADgUNpZrbrR49E1Lpc++XO0z+YyRvv4IxG9kZurN3Jz1dlm0wCnU6cy2gdANcRe -SihNRftF3MUer9erYcOGxZ0QAAAAUJWSzWad8+eOXFv/3MlrZSCg3DI+GH8TDOqbYFAuk0l9nU4N -cDrVvJwt3wHgaLD8uUtWMBiUw+FIcDaobvLy8iTpkDsVxv1uNmfOnMPLCAAAADhKWlutus7j0Ui3 -W58HAvogL0+byhjtk20YWpSbq0W5uepos2mAw6HTHA7ZGe0DIAGSkpLkdDq1b98+Wa1WmVlfB/pj -RE9eXp727t0rr9cbLQqW5bC+uigsLNRHH32kX375RZdeeqlcLpd27twpt9ut1NTUw0ocAAAAqGx2 -k0lnOZ06y+nU9lBIywIBfZiXp+wyRvtsCga1KRjUM1lZ6utwqL/TqVaH+PYUACqTyWRSkyZNtGXL -Fm3bti3R6aCa8Xq9aty48SHbxV3s2bZtmwYOHKjt27eroKBA55xzjlwul6ZNm6aCggI9/fTTh5Uw -AAAAUJVaWq261mrVFS6XVv+5ts83wWCpbXMNQ2/n5entvDx1sFrV3+lUr+RkJfMNO4CjwGaz6Zhj -jlGwjNco1E1Wq/WQI3qKxF3suemmm9SjRw9t2LBBDRo0iMYvvPBCjR49Ot7TAQAAAEeVzWRSb4dD -vR0O/V5YqKV5efowEJA/Eim1/Q+hkH7w+/VcVpZ6Oxwa4HSqLaN9AFQxs9ms5OTkRKeBGiruYs8n -n3yizz//XDabLSbeunVr/f7775WWGAAAAFDVmiUl6Wq3W5e7XPrfn6N91pfxTXqeYei9vDy9l5en -9larBjidOiM5WU5G+wAAqpm4iz2RSEThcLhEfMeOHXK5XJWSFAAAAHA0WU0m9XI41Mvh0O7CQi3L -y9PyQEAHyhjt83MopJ/9fs3OytIZycka4HSqvdUqE4s6AwCqgbi/hujfv79mzpwZvW0ymZSTk6P7 -7rtPgwYNqszcAAAAgKOucVKSrnC79Xx6uu6uV0/d7XaVVcIJGIaWBgK6NTNTN2dkaElurnLLKBAB -AHC0xD2y59FHH9WAAQPUsWNH5efn69JLL9VPP/2ktLQ0/fe//62KHAEAAICjLslkUs/kZPVMTtbe -wkItDwS0LC9PmWUUc7YUFurprCzNyc5Wrz9H+xzLaB8AQALEXexp3ry5NmzYoFdeeUUbN25UTk6O -rr32Wl122WVyOBxVkSMAAACQUOlJSbrU5dL/paZqXUGBPsjL01cFBSqt7FNgGFoRCGhFIKBWSUnq -73TqLIdDqaztAwA4SuIu9khSUlKSLr/88srOBQAAAKjWLCaTTkpO1knJycoIh7U8L0/LAgHtK2VN -S0naVlioZ7Oy9EJWlk77cyevjoz2AQBUscMq9mzevFn//ve/9f3330uSjjvuOI0bN04dOnSo1OQA -AACA6irNYtHFLpf+mpqq9QUFWhoI6Mv8fJVW9glK+igQ0EeBgJpbLOrvdKqv0yk3o30AAFUg7neX -119/XZ06ddLatWvVpUsXdenSRevWrVPnzp31+uuvV0WOAAAAQLVlMZnUPTlZd9Wrp9np6brS5VJj -i6XM9jvCYc3OztZVe/bokQMHtLGgQIZhHMWMAQC1Xdwje26//Xbddddduv/++2Pi9913n26//XYN -Gzas0pIDAAAAapJ6FouGp6bqopQUbQwGtTQvT1/k56uwlLaFkj7Jz9cn+flqUjTax+FQvXIKRQAA -VETcI3t27dqlK6+8skT88ssv165duyolKQAAAKAmM5tM6mq36/Z69TQnPV1Xu1xqWk4RZ1c4rBey -s3XN3r3654ED+rqgQBFG+wAADlPcI3v69OmjTz75RO3bt4+Jf/rppzrjjDMqLTEAAACgNvBYLLow -NVVDU1L0XTCoD/Ly9Hl+vkKltA1L+jw/X5/n56uRxaJzHA71czrVgNE+AIA4xF3sGTJkiO644w6t -XbtWPXv2lCR98cUXWrBggSZPnqzFixfHtAUAAAAgmUwmdbLb1clu1+hIRCsDAS3Ny9NvhaVN8pL2 -hMN6KSdH83NydJLdrgFOp7rZ7bKwkxcA4BDiLvbceOONkqQnn3xSTz75ZKnHpD/ezMJlbEEJAAAA -1GVus1kXpKRoiNOp70MhLc3L06eBgIKltI1I+l9Bgf5XUKA0s1nnOJ062+lUQ0b7AADKEHexJxKJ -VEUeAAAAQJ1jMpnU0WZTR5tNo9xufRwI6IO8PG0tY7RPRiSi/+bk6NWcHJ3452ifHoz2AQAUE3ex -BwAAAEDlSzWbNTglRYOcTv0UCumDvDx9kp+v/FIWao5I+qqgQF8VFKi+2ayznU6d43CoURIf7wEA -FHsAAACAasVkMukvNpv+YrPp2khEqwIBLQ0E9HOotCWdpf2RiF7LydGCnBx1tds1wOHQycnJSmK0 -DwDUWRR7AAAAgGrKaTZrYEqKBqak6Oc/1/b5OBBQoJTRPoakrwsK9HVBgbxms/o5HDrH6VTTKhjt -sy8clsdslo2CEgBUSxR7AAAAgBqgvdWq9h6Prna59El+vpbm5enHMkb7+CIRvZ6bq9dzc3WCzaYB -Tqd6JifLeoTFmX3hsF7PydHSvDzNSU+XjUWiAaBaotgDAAAA1CAOs1n9nU71dzq15c/RPh8FAsot -ZbSPJG0MBrUxGJTbbFZfh0P9nU41j3O0z8FFntKXjgYAVCdxF3vWrVsnq9Wqzp07S5IWLVqkOXPm -qGPHjpo0aZJsNlulJwkAAACgpDZWq8Z4PLrK7dZnf+7k9X0Zo32yIhG9lZurt3JzdbzNpv4Oh05z -OGQvZ7QPRR4AqJnM8d5hzJgx+vHHHyVJv/76qy6++GI5nU4tWLBAt99+e6UnCAAAAKB8dpNJfZ1O -TUtL06y0NA1JSVFqOUWc74JBzfD7dfWePXrW79f2YgWifeGwnvb7NWbvXi2h0AMANU7cI3t+/PFH -de3aVZK0YMECnXnmmZo/f74+++wzXXzxxZo5c2YlpwgAAACgolparRpltepKl0ur8/P1QV6evg0G -S22bYxh6Oy9Pb+flqYPVqtOSk/V7OKwVFHgAoEaLu9hjGIYikYgkafny5TrvvPMkSS1atFBGRkbl -ZgcAAADgsNhMJvV2ONTb4dCOwkIty8vTikBAWX9+li/uh1BIP5QxBQwAULPEPY2rR48eeuCBBzRv -3jx9/PHHGjx4sCRpy5YtatSoUaUnCAAAAODINE9K0tVut+akp+t2r1ddWGcTAGq1uIs9M2fO1Lp1 -6zRu3Dj9/e9/V/v27SVJCxcu1GmnnVbpCQIAAACoHFaTSb0cDk3wetU7OTn+fwwAAGqEuKdxnXDC -Cfrmm29KxB955BFZLJZKSQoAAABA1TFJSjGbZZZU+qQuAEBNdljFfJ/Pp+eee0533XWX9u/fL0na -tGmT9u7dW6nJAQAAAKh8aRaLrvd49Ex6ugY5nfF/AwwAqNbifl3fuHGj+vXrJ6/Xq61bt2r06NGq -X7++3njjDW3fvl0vvvhiVeQJAAAAoJIVFX2Gp6ZqYU6OlsaxC9fOcFgeRvYDQLUU98ieW265RVdf -fbV++uknJScnR+ODBg3SqlWrKjU5AAAAAFXvcEb63JOZqffz8mQYRpXnBwCIT9zFnjVr1mjMmDEl -4s2aNdPu3bsrJSkAAAAAR188RZ+gpCf9fj104ID84fDRShEAUAFxF3vsdruysrJKxH/88Uc1bNiw -UpICAAAAkDjxFH3+V1CgCRkZWldQcNTyAwCUL+5iz5AhQ3T//fcrFApJkkwmk7Zv36477rhDw4YN -q/QEAQAAACRGRYs+ByIRTdq/X8/6/QoyrQsAEi7uYs+jjz6qnJwcpaenKxAIqHfv3mrfvr1cLpce -fPDBqsgRAAAAQAIVL/pYJLlMphLt3s7L060ZGdry5xfDAIDEiHs3Lo/Ho2XLlunTTz/Vxo0blZOT -oxNPPFFnn312VeQHAAAAoJo4ePeusGHoqaysEtO3thUW6taMDI10uXR+SorMpRSFAABVK+5iT5Fe -vXqpV69elZkLAAAAgBog7c8t1++rV0/v5uVpblaWggcdL5T0fHa2vioo0M1erxqwRTsAHFUVKvY8 -/vjjuu6665ScnKzHH3+83LYTJkyolMQAAAAAVG8mk0nnpaToBJtN//L5tLWwMOb4hmBQE/bt01iP -R6c5HAnKEgDqngoVe2bMmKHLLrtMycnJmjFjRpntTCYTxR4AAACgjmlpterRtDTNy87WW7m5Mcey -DUP/9Pl0TkGBRrndcpjjXjYUABCnChV7tmzZUur/AwAAAIAkWU0mXeN2q7vdrpk+nzIjkZjjywIB -fRsM6lavV3+x2RKUJQDUDXGV1UOhkNq1a6fvv/++Uh581apVOv/889W0aVOZTCa99dZbMcdNJlOp -P4888ki0TevWrUsc/+c//1kp+QEAAACITxe7XY83bKjTkpNLHNsVDuv2zEy9mp2tMFu0A0CViavY -Y7ValZ+fX2kPnpubqy5duuiJJ54o9fiuXbtifmbPni2TyaRhw4bFtLv//vtj2o0fP77ScgQAAAAQ -H5fZrDu8Xk3weOQothtXRNLLOTm6OzNTu4ut8QMAqBxx78Y1duxYTZs2Tc8995ySkg57My9J0rnn -nqtzzz23zOONGzeOub1o0SKdddZZatu2bUzc5XKVaAsAAAAgcUwmk852OnW8zaZHfT79GArFHP8+ -FNJNGRm63u1WH4dDJrZoB4BKE3e1Zs2aNVqxYoWWLl2qzp07KyUlJeb4G2+8UWnJHWzPnj169913 -9cILL5Q49s9//lNTpkxRy5Ytdemll2rixInlFqIKCgpUUFAQvZ2VlSXpj2lqoWJvQkBtUdS36eOo -zejnqAvo56hp0iRNcbu1MC9PrwcCOngln4BhaIbfry8DAY1JTVXKn4s3089RF9C/UZXiLvZ4vd4S -06iOhhdeeEEul0sXXXRRTHzChAk68cQTVb9+fX3++ee66667tGvXLk2fPr3Mc02dOlWTJ08uEX/3 -3XfldDorPXegOlm0aFGiUwCqHP0cdQH9HDVNkqS+brdWH3eccottw/5ZMKivd+7Uqd9/r3S/Pxqn -n6M2y8vLS3QKqMVMhlE9VkYzmUx68803NXTo0FKPd+jQQeecc47+/e9/l3ue2bNna8yYMcrJyZHd -bi+1TWkje1q0aKFdu3apQYMGh30NQHUWCoW0aNEiXXDBBbJarYlOB6gS9HPUBfRz1HR5kYiez83V -Rwd9Hi9ikjTU4dAwq1XvLl5MP0etlpmZqSZNmsjv98vtdic6HdQyh7XoTmFhoT766CP98ssvuvTS -S+VyubRz50653W6lpqZWdo765JNPtHnzZr366quHbHvKKaeosLBQW7du1bHHHltqG7vdXmohyGq1 -8maCWo9+jrqAfo66gH6Omsoj6Ra7XScHAnrC71fuQd89G5LeDAS0IRjUcU4n/Ry1Gn0bVSnuYs+2 -bds0cOBAbd++XQUFBTrnnHPkcrk0bdo0FRQU6Omnn670JJ9//nl1795dXbp0OWTb9evXy2w2Kz09 -vdLzAAAAAFA5ejkcOtZm00yfT98EgzHHfg2Hta17dzULBDQ4KYnFmwEgTnEXe2666Sb16NFDGzZs -iJnydOGFF2r06NFxnSsnJ0c///xz9PaWLVu0fv161a9fXy1btpT0xxSrBQsW6NFHHy1x/9WrV+t/ -//ufzjrrLLlcLq1evVoTJ07U5Zdfrnr16sV7aQAAAACOooYWi6bUr6+3cnP1Una2Dt6IPWyx6Jnc -XK0vLNR4j0ceiyVheQJATRN3seeTTz7R559/LpvNFhNv3bq1fv/997jO9dVXX+mss86K3r7lllsk -SSNHjtTcuXMlSa+88ooMw9All1xS4v52u12vvPKKJk2apIKCArVp00YTJ06MngcAAABA9WY2mXRR -aqq62O2a7vPpt8LCmONfFhRofEaGbvJ41D05OUFZAkDNEnexJxKJKBwOl4jv2LFDLpcrrnP16dNH -h1of+rrrrtN1111X6rETTzxRX3zxRVyPCQAAAKD6aWe1anpamuZkZWlJsV2KfJGIJh84oMFOp65y -u2VnWhcAlMsc7x369++vmTNnRm+bTCbl5OTovvvu06BBgyozNwAAAAB1iN1k0vUej+52u2Uvto6P -JL2bl6dbMjL0ayiUgOwAoOaIu9jz6KOP6rPPPlPHjh2Vn5+vSy+9NDqFa9q0aVWRIwAAAIA6pLvN -pnPXrNGJpexW9Fthof6WkaE3c3IUOcQsAQCoq+KextW8eXNt2LBBr7zyijZu3KicnBxde+21uuyy -y+RwOKoiRwAAAAB1jCMU0t1ut5aHQpqdlaWDx/kUSpqTna11BQW62etVAxZvBoAYcRd7JCkpKUmX -X355ZecCAAAAAFEmk0mDUlLU2WbTv3w+bSm2ePOGYFDj9+3TOI9Hp/HFMwBExV3sefHFF8s9fuWV -Vx52MgAAAABQXAurVf9KS9NL2dl6KzdXB0/eyjEM/dPnU7+CAo12u+U0x71SBQDUOnEXe2666aaY -26FQSHl5ebLZbHI6nRR7AAAAAFQ6q8mkq91udbfbNdPnU0YkEnN8RSCg74JB3eL1qoPNlqAsAaB6 -iLvsfeDAgZifnJwcbd68Wb169dJ///vfqsgRAAAAACRJJ9jterxhQ52enFzi2O5wWHdmZuqV7GyF -WbwZQB1WKWMcjznmGP3zn/8sMeoHAAAAACpbqtms271e3eTxyGEyxRyLSJqfk6O7MjO1u9gaPwBQ -V1TahNakpCTt3Lmzsk4HAAAAAGUymUzq53TqsbQ0dShli/YfQiHdlJGhD/PyZDDKB0AdE/eaPYsX -L465bRiGdu3apVmzZun000+vtMQAAAAA4FAaJyVpaoMGei0nR6/m5OjglXwChqGZfr++KijQjR6P -Ulm8GUAdEXexZ+jQoTG3TSaTGjZsqL59++rRRx+trLwAAAAAoEIsJpMucbnUzW7XdJ9Pu8PhmOOf -5ufrh2BQN3u9OsFuT1CWAHD0xF3siRRb9R4AAAAAqoMONptmpqXp2awsrQgEYo5lRCK6Z/9+XZiS -ostcLlmLrfUDALXJYY9jzMjIUFZWVmXmAgAAAABHxGk26yavV3d4vUotVtAxJL2Rm6vbMjL0WyiU -mAQB4CiIq9jj8/k0duz/a+/eo+ys63vxv/fc9iSQKyGEaKgRUDhyl5oGSBCBcrEIHj2KRcQlLb2A -tklVLoLxVuBwOFa5KMVji7pqcR0v0B9YFEEIlxAJIUfFlHJJjCKBXMh1bntm9u+PlmlmJ0AmmZk9 -s/frtVbW8vk+z+x89lofEp93vp/nuTBTpkzJPvvsk0mTJmXatGm59NJL09bWNlQ1AgAADMixY8bk -ur33zmEtLdude7a7O/PWrs0Pt2718GagJu30GNf69esze/bsPPfccznnnHNy8MEHJ0l+9atf5frr -r8/dd9+dBx98MD//+c/zyCOP5GMf+9iQFQ0AAPBapjQ25nOTJ+f2rVvzrc2bs+2L2LuS3LRpU5Z0 -duajEyZkUmNjtcoEGHQ7HfZ87nOfS0tLS5555pnss88+2537wz/8w5x77rn58Y9/nOuuu27QCwUA -ABiohkIh795zzxxRLObaDRvym+7ufueXdHbmY2vX5q8mTMjRra1VqhJgcO30GNdtt92Wa6+9drug -J0mmTZuWa665Jt/73vcyf/78nHfeeYNaJAAAwO6Y2dycL06ZkneOHbvduY29vfncSy/lpo0b02ms -C6gBOx32PP/883nLW97yiucPOeSQNDQ0ZMGCBYNSGAAAwGAqFgr5swkTsmDSpExs2P5W6IdtbZm/ -dm2e9fBmYJTb6bBnypQpWbly5SueX7FiRaZOnToYNQEAAAyZt7a25ropU/K2YnG7c7/p7s7H167N -97dsSa9dPsAotdNhzymnnJJPfepT6erq2u5cZ2dnrrjiipx66qmDWhwAAMBQmNjYmE9NmpS/GD8+ -le/r6k5yy+bNuWL9+qzp6alGeQC7ZUAPaD766KNz4IEH5sILL8xBBx2Ucrmc5cuX5ytf+Uo6Ozvz -zW9+cyhrBQAAGDSFQiGn7bFHDi0W879feinPVDy8+RddXfnYmjW5cMKEHDdmzIA/f01PTyY0NKSl -UBiskgF2yk6HPa9//euzaNGi/OVf/mUuvfTSlP9zS2OhUMjJJ5+cG264Ifvtt9+QFQoAADAUXt/U -lGumTMm3N2/O97duzbbDW1vL5VyzYUOWdHbmgvHjM3YHz/qptKanJ9/bsiU/bmvLP06dmhavdQeG -2U6HPUkyc+bM/Ou//mteeumlPPXUU0mSAw44IJMnTx6S4gAAAIZDc6GQ88aPz1HFYv5uw4as7e3t -d/7e9vY80dWVv5k4MQe1VA5+/YdtQ57uHV4BMDwGFPa8bNKkSXnb29422LUAAABU1aHFYq7be+98 -dePGPNDR0e/cCz09uWTdurxvzz3z/j33TON/jmcJeYCRZpfCHgAAgFq1Z0NDPj5xYo5ub89Nmzal -fZu3cvUmuXXLljze2ZkPjxuXBzo6hDzAiCPsAQAAqFAoFHLC2LE5uKUlf7dhQ5aXSv3OP1kq5dL1 -66tUHcCr2+lXrwMAANSbaU1NuXKvvXLOnnvGO7WA0ULYAwAA8CrW9/bmpd5eN0/AqGGMCwAAYAc8 -eBkYrYTTAAAAO2BsCxithD0AAAA7MKWxMX8+YUJunjo1p48daywCGDWEPQAAAK9C6AOMNsIeAACA -nSD0AUYLYQ8AAMAAbBv6HN7SUu1yALYj7AEAANgFUxobc+mkSWmudiEAFYQ9AAAAu2hsQ0N+v7W1 -35q3eAHVJuwBAADYDXMrwp5ykneMGeOZPkDVCHsAAAB2w9GtrRlb6L+f5w1NTbl56tSMaXDLBQw/ -f/IAAADshpZCIbMrdvcs7OjIlMbGtBQMdQHDT9gDAACwm+aOGdPv+OlSKb/r7q5SNUC9E/YAAADs -psNaWjKhYmRrYXt7laoB6p2wBwAAYDc1Fgo5rmKU6/729pTL5SpVBNQzYQ8AAMAgqBzleq6nJ88a -5QKqQNgDAAAwCA5qbs7UxsZ+a0a5gGoQ9gAAAAyCQqGQORWjXA+0t6fXKBcwzIQ9AAAAg6RylGtt -b2+Wl0pVqgaoV8IeAACAQfKGpqbs19TUb+1+o1zAMBP2AAAADJJCoZC5FaNcD7W3p9soFzCMhD0A -AACDqHKUa3O5nP/X2VmlaoB6JOwBAAAYRNOamvKm5uZ+a/d3dFSpGqAeCXsAAAAGWeXunsUdHek0 -ygUME2EPAADAIDuutbXfzVZ7uZxH7e4BhomwBwAAYJBNbmzMoS0t/dYWeisXMEyEPQAAAEOgcpRr -SWdntvT2VqkaoJ4IewAAAIbA7NbWNG1z3J1kkVEuYBgIewAAAIbAng0NObpY7LdmlAsYDsIeAACA -IVI5yvWLrq681NNTpWqAeiHsAQAAGCK/39qaMYVC33FvkgeNcgFDTNgDAAAwRIqFQma1tvZbM8oF -DDVhDwAAwBCaWxH2PFkqZXV3d5WqAeqBsAcAAGAIHVEsZtw2o1xJstAoFzCEhD0AAABDqKlQyLEV -D2o2ygUMJWEPAADAEKsc5VrV3Z2VpVKVqgFqnbAHAABgiP23lpZMaeh/+2V3DzBUhD0AAABDrKFQ -yJzKUa6OjpTL5SpVBNQyYQ8AAMAwmFsR9rzY05MnjXIBQ0DYAwAAMAze2NSU1zU29lu73ygXMASE -PQAAAMOgUChst7vnwY6O9BjlAgaZsAcAAGCYVIY9G3t78/OuripVA9QqYQ8AAMAweV1TUw5obu63 -5q1cwGAT9gAAAAyjua2t/Y4XdXSkyygXMIiEPQAAAMNozpgxKWxz3FYuZ0lHR9XqAWqPsAcAAGAY -7dXYmLe0tPRbWyjsAQaRsAcAAGCYVT6oeUlHR9p6e6tUDVBrhD0AAADD7JjW1jRuc9yV5BG7e4BB -IuwBAAAYZuMbGnJUsdhvzSgXMFiEPQAAAFVQOcq1rLMzG3t6qlQNUEuEPQAAAFXwtmIx2z6muTfJ -Q3b3AINA2AMAAFAFYxoaMqu1td/awvb2KlUD1BJhDwAAQJVUjnL9qlTKGqNcwG4S9gAAAFTJUcVi -9iwU+q3Z3QPsLmEPAABAlTQXCjnGKBcwyIQ9AAAAVTSnYpRrRXd3flMqVakaoBYIewAAAKrokJaW -TG7of2u20Fu5gN1Q1bBn4cKFOeOMMzJ9+vQUCoXcdttt/c5/+MMfTqFQ6Pfr1FNP7XfN+vXrc845 -52T8+PGZOHFizj///GzZsmUYvwUAAMCuaywUclzF7p7729tTLperVBEw2lU17Nm6dWsOP/zw3Hjj -ja94zamnnprnn3++79c///M/9zt/zjnn5Iknnsjdd9+dO+64IwsXLswFF1ww1KUDAAAMmuMrntuz -uqcnTxvlAnZRUzV/89NOOy2nnXbaq15TLBYzbdq0HZ5bvnx57rrrrjz66KM5+uijkyTXX399Tj/9 -9Fx77bWZPn36oNcMAAAw2A5obs60xsas3ua16ws7OnJgS0sVqwJGq6qGPTvjvvvuy9SpUzNp0qS8 -4x3vyBe+8IXstddeSZJFixZl4sSJfUFPkpx00klpaGjI4sWL8+53v3uHn9nZ2ZnOzs6+402bNiVJ -SqVSStJzatTLva3HqWX6nHqgz6kH9drnx7W05LvbvIlrYXt7zmltTWPFq9mpDfXW3wyvER32nHrq -qfnv//2/Z+bMmXnmmWdy2WWX5bTTTsuiRYvS2NiY1atXZ+rUqf1+pqmpKZMnT87q1atf8XOvuuqq -fPazn91u/c4778zYsWMH/XvASHL77bdXuwQYcvqceqDPqQf11udtY8cmb3tb3/FLvb256Z57ss+G -DdUriiHT1tZW7RKoYSM67Dn77LP7/vehhx6aww47LPvvv3/uu+++nHjiibv8uZdeemnmz5/fd7xp -06bMmDEj73znO/t2DUGtKZVKuf3223PmmWemubm52uXAkNDn1AN9Tj2o5z7/1UsvZeU2o1wNs2bl -vePGVbEihsq6deuqXQI1bESHPZXe+MY3ZsqUKXn66adz4oknZtq0aXnxxRf7XdPd3Z3169e/4nN+ -kv94DlCxWNxuvbm5ue7+MqH+6HPqgT6nHuhz6kE99vnxY8dm5ebNfcePdHXlL5qa0myUq+bUW28z -vKr6Nq6B+u1vf5t169Zl3333TZLMnj07GzZsyGOPPdZ3zb333pve3t7MmjWrWmUCAADskrkVr2Df -Ui7n8W2eNwqwM6oa9mzZsiXLli3LsmXLkiQrVqzIsmXLsmrVqmzZsiWf+MQn8sgjj2TlypW55557 -cuaZZ+aAAw7IKaeckiQ5+OCDc+qpp+ZP//RP87Of/SwPPfRQLrroopx99tnexAUAAIw6ezc25uCK -HR/3b/PQZoCdUdWwZ8mSJTnyyCNz5JFHJknmz5+fI488Mp/+9KfT2NiYn//853nXu96VN73pTTn/ -/PPz1re+NQ888EC/Eax/+qd/ykEHHZQTTzwxp59+eo477rjcfPPN1fpKAAAAu+X4it09P+vsTHtv -b5WqAUajqj6z5+1vf3vK5fIrnv/Rj370mp8xefLkfPvb3x7MsgAAAKrm2NbW3LxpU16OdzrL5fys -s3O7EAjglYyqZ/YAAADUugmNjTmi4oUyC41yAQMg7AEAABhh5ra29jte2tmZTUa5gJ0k7AEAABhh -/qC1NS3bHPckebijo1rlAKOMsAcAAGCEGdvQkKMrdvc8YJQL2EnCHgAAgBGocpTrl11dWdfTU6Vq -gNFE2AMAADACHd3amrGFQt9xOXb3ADtH2AMAADACtRQKmV2xu2eh5/YAO0HYAwAAMELNHTOm3/HT -pVJ+191dpWqA0ULYAwAAMEId1tKSCQ39b9sWGuUCXoOwBwAAYIRqLBRyXMUo1/3t7SmXy1WqCBgN -hD0AAAAj2PEVo1zP9fTkWaNcwKsQ9gAAAIxgb25uztTGxn5rRrmAVyPsAQAAGMEKhULmVIxyPdDe -nl6jXMArEPYAAACMcJWjXGt7e7O8VKpSNcBIJ+wBAAAY4d7Q3Jz9mpr6rd1vlAt4BcIeAACAUWBu -xe6eh9rb022UC9gBYQ8AAMAoMLfiuT2by+X8v87OKlUDjGTCHgAAgFFgWlNT3tTc3G/t/o6OKlUD -jGTCHgAAgFGi8kHNizs60mmUC6gg7AEAABgljmtt7XcT114u51G7e4AKwh4AAIBRYlJjYw5taem3 -ttBbuYAKwh4AAIBRpPKtXEs6O7Olt7dK1QAjkbAHAABgFJnd2pqmbY67kywyygVsQ9gDAAAwiuzZ -0JCji8V+a0a5gG0JewAAAEaZylGuX3R15aWenipVA4w0wh4AAIBR5vdbWzOmUOg77k3yoFEu4D8J -ewAAAEaZYqGQWa2t/daMcgEvE/YAAACMQnMrwp4nS6Ws7u6uUjXASCLsAQAAGIWOKBYzbptRriRZ -aJQLiLAHAABgVGoqFHJsxYOajXIBibAHAABg1Dq+IuxZ1d2dlaVSlaoBRgphDwAAwCh1cHNzpjT0 -v62zuwcQ9gAAAIxSDYVC5lSOcnV0pFwuV6kiYCQQ9gAAAIxicyvCnhd7evKkUS6oa8IeAACAUeyN -TU15XWNjv7X7jXJBXRP2AAAAjGKFQmG7BzU/2NGRHqNcULeEPQAAAKNc5SjXxt7e/Lyrq0rVANUm -7AEAABjlpjc15YDm5n5r3soF9UvYAwAAUAPmtrb2O17U0ZEuo1xQl4Q9AAAANWDOmDEpbHPcVi5n -SUdH1eoBqkfYAwAAUAP2amzMIS0t/dYWCnugLgl7AAAAasScigc1L+noSFtvb5WqAapF2AMAAFAj -jmltTdM2x11JHrG7B+qOsAcAAKBGjG9oyJHFYr81o1xQf4Q9AAAANWRuxSjXss7ObOzpqVI1QDUI -ewAAAGrI24rFFAv/9V6u3iQP2d0DdUXYAwAAUEPGNDTkbZWjXO3tVaoGqAZhDwAAQI05vmKU61el -UtYY5YK6IewBAACoMUcWi9lzm1GuxO4eqCfCHgAAgBrTXCjkmNbWfmvCHqgfwh4AAIAaVPlWrhXd -3flNqVSlaoDhJOwBAACoQW9pacnkhv63fAu9lQvqgrAHAACgBjUWCplTsbvn/vb2lMvlKlUEDBdh -DwAAQI2aW/HcntU9PXnaKBfUPGEPAABAjTqguTnTGhv7rd1vlAtqnrAHAACgRhUKhRxfMcr1YHt7 -eoxyQU0T9gAAANSwylGu9b29eaKrq0rVAMNB2AMAAFDDZjQ3Z2ZTU7+1he3tVaoGGA7CHgAAgBo3 -t2KU6+GOjpSMckHNEvYAAADUuMqwZ0u5nKWdnVWqBhhqwh4AAIAat3djY/5bc3O/NaNcULuEPQAA -AHWgcnfPzzo7097bW6VqgKEk7AEAAKgDx7a29rsB7CyX8zOjXFCThD0AAAB1YEJjY44oFvutGeWC -2iTsAQAAqBNzW1v7HS/t7Mwmo1xQc4Q9AAAAdeIPWlvTss1xT/7jNexAbRH2AAAA1ImxDQ05umJ3 -zwNGuaDmCHsAAADqyPEVb+X6ZVdX1vX0VKkaYCgIewAAAOrIW4vFjC0U+o7LsbsHao2wBwAAoI60 -FAqZXTHKtdBze6CmCHsAAADqzNyKUa6nS6X8rru7StUAg03YAwAAUGcOa2nJhIb+t4MLjXJBzRD2 -AAAA1JnGQiFzKka57m9vT7lcrlJFwGAS9gAAANShylGu53p68qxRLqgJwh4AAIA69Obm5kxtbOy3 -ZpQLaoOwBwAAoA4VCoXMrRjleqC9Pb1GuWDUE/YAAADUqcpRrrW9vVleKlWpGmCwCHsAAADq1Bua -m/N7TU391u43ygWjnrAHAACgjs2p2N3zUHt7uo1ywagm7AEAAKhjlc/t2VwuZ1lnZ5WqAQaDsAcA -AKCOTWtqypubm/utLezoqFI1wGAQ9gAAANS5ygc1L+7oSKdRLhi1hD0AAAB17rjW1n43h+3lch61 -uwdGLWEPAABAnZvU2JhDW1r6rS30Vi4Ytaoa9ixcuDBnnHFGpk+fnkKhkNtuu63vXKlUysUXX5xD -Dz00e+yxR6ZPn54PfehD+d3vftfvM97whjekUCj0+3X11VcP8zcBAAAY3SpHuZZ0dmZLb2+VqgF2 -R1XDnq1bt+bwww/PjTfeuN25tra2LF26NFdccUWWLl2a73//+3nyySfzrne9a7trP/e5z+X555/v -+/XRj350OMoHAACoGbNbW9O0zXF3kkVGuWBUanrtS4bOaaedltNOO22H5yZMmJC7776739oNN9yQ -t73tbVm1alX222+/vvVx48Zl2rRpQ1orAABALduzoSFHF4t5ZJvXri9sb8/JY8dWsSpgV1Q17Bmo -jRs3plAoZOLEif3Wr7766nz+85/Pfvvtlz/+4z/OvHnz0tT0yl+ts7Mzndv8AbZp06Yk/zE6ViqV -hqR2qLaXe1uPU8v0OfVAn1MP9Hn1HNvS0i/s+UVXV17s7MykBo97HWz6m6E0asKejo6OXHzxxfnA -Bz6Q8ePH961/7GMfy1FHHZXJkyfn4YcfzqWXXprnn38+X/ziF1/xs6666qp89rOf3W79zjvvzFip -NTXu9ttvr3YJMOT0OfVAn1MP9Pnw625oSNMxx6T7P//xvDfJVxYvzpufe666hdWgtra2apdADSuU -y+VytYtIkkKhkB/84Ac566yztjtXKpXynve8J7/97W9z33339Qt7Kv3DP/xD/uzP/ixbtmxJsVjc -4TU72tkzY8aMPP/889lrr712+7vASFQqlXL77bfnzDPPTHNzc7XLgSGhz6kH+px6oM+r68ubN2fh -NvdLBzY15eqK6Qp237p167Lvvvtm48aNr3qPC7tixO/sKZVKed/73pdf//rXuffee1/zP4JZs2al -u7s7K1euzJvf/OYdXlMsFncYBDU3N/vLhJqnz6kH+px6oM+pB/q8Ok4YO7Zf2PNUd3fWFQqZ9iqP -ymDg9DZDaUQPXr4c9Dz11FP5yU9+slO7bpYtW5aGhoZMnTp1GCoEAACoLYcXixlXKPRbW+itXDCq -VDWa3bJlS55++um+4xUrVmTZsmWZPHly9t1337z3ve/N0qVLc8cdd6SnpyerV69OkkyePDktLS1Z -tGhRFi9enBNOOCHjxo3LokWLMm/evHzwgx/MpEmTqvW1AAAARq2mQiHHjRmTf93mmTIL29vzvj33 -rGJVwEBUNexZsmRJTjjhhL7j+fPnJ0nOO++8fOYzn8m//Mu/JEmOOOKIfj/305/+NG9/+9tTLBZz -66235jOf+Uw6Ozszc+bMzJs3r+9zAAAAGLi5FWHPqu7urCyV8gajRzAqVDXsefvb355Xez70az07 -+qijjsojjzwy2GUBAADUtYObmzOloSFre3v71u5vbxf2wCgxop/ZAwAAwPBrKBQyZ8yYfmsPdHS8 -5j/IAyODsAcAAIDtzK0Ie17s6cmTpVKVqgEGQtgDAADAdt7Y1JTXNzb2W7u/vb1K1QADIewBAABg -O4VCYbvdPQ92dKTHKBeMeMIeAAAAdqgy7NnY25ufd3VVqRpgZwl7AAAA2KHpTU05oOINXAuNcsGI -J+wBAADgFc1tbe13vKijI11GuWBEE/YAAADwiuaMGZPCNsdt5XKWdHRUrR7gtQl7AAAAeEV7NTbm -kJaWfmsLhT0wogl7AAAAeFWVD2p+tKMjbb29VaoGeC3CHgAAAF7VMa2tadrmuJTkEbt7YMQS9gAA -APCqxjU05Mhisd+aUS4YuYQ9AAAAvKbKUa5lnZ3Z2NNTpWqAVyPsAQAA4DXNKhZTLPzXe7l6kzxk -dw+MSMIeAAAAXlNrQ0NmVYxy3d/eXqVqgFcj7AEAAGCnVI5yLS+VssYoF4w4wh4AAAB2ypHFYvbc -ZpQrSRba3QMjjrAHAACAndJcKOSY1tZ+a8IeGHmEPQAAAOy0ylGuFd3dWVUqVakaYEeEPQAAAOy0 -t7S0ZHJD/1vJhd7KBSOKsAcAAICd1lgoZE7F7p6F7e0pl8tVqgioJOwBAABgQOZWPLdndU9PnjbK -BSOGsAcAAIABOaC5Ofs2NvZbu98oF4wYwh4AAAAGpFAobPeg5gfb29NjlAtGBGEPAAAAA1Y5yrW+ -tzdPdHVVqRpgW8IeAAAABmxGc3NmNjX1W1vY3l6laoBtCXsAAADYJZWjXA93dKRklAuqTtgDAADA -LqkMe7aUy1na2VmlaoCXCXsAAADYJXs3Nua/NTf3WzPKBdUn7AEAAGCXVe7u+VlnZ9p7e1/x+jU9 -Peky6gVDStgDAADALju2tbXfjWVnuZyf7WCUa01PT27auDF/9uKLrxoGAbuv6bUvAQAAgB2b0NiY -I4rFfs/qWdjenuP/c8fPmp6efG/Llvy4rS3d1SoS6oywBwAAgN1yfGtrv7BnaWdnVpRK+VFbm5AH -qkDYAwAAwG6Z1dqalo0b0/Wfxz1J5q1dG8NaUB2e2QMAAMBuGdvQkMOKxX5rgh6oHjt7AAAA2GUv -P5Pn8R08lBmoDmEPAAAAA+bByzByCXsAAADYaUIeGPk8swcAAICdVqh2AcBrEvYAAACw06Y0NubP -J0zIzVOn5vSxY42LwAgk7AEAAGDAdif0uWnTpmzu9b4uGCrCHgAAAHbZroQ+D3V05MI1a/Jwe/uQ -1wf1SNgDAADAbhto6LOhtzdXb9iQq196KS/19AxLjVAvhD0AAAAMmoGGPg93dOSiNWvy07a2lMvl -YakRap2wBwAAgEE3kNBnc7mcv9u4MZ9/6aWstcsHdpuwBwAAgCGzo9DnL8aPz7jC9i9xX9LZmYvW -rMmP7PKB3SLsAQAAYMhtG/qcOHZsbtx77xzX2rrddW3lcm7cuDGfXr8+q7u7q1ApjH7CHgAAAIbN -lMbGtBQKmdjYmE9OmpTLJk3KpIbtb03/X1dXPrp2bf6/rVvTa5cPDIiwBwAAgKr5g9bW3Lj33jlx -zJjtznWWy/napk25dN26/NYuH9hpwh4AAACqas+GhvzVxIn5zOTJmbKDXT7LS6X81Zo1+d6WLemx -ywdek7AHAACAEeGoYjE37L13Ths7drtzpSTf2Lw5n1i3LitKpeEvDkYRYQ8AAAAjxtiGhvzFhAm5 -cvLkTGts3O7806VS5q9dm29v3pySXT6wQ8IeAAAARpxDisVcv/feOWuPPba7ce1JcuuWLZm/dm2e -6urard9nTU9PuoRG1BhhDwAAACNSsVDIR8aPz9V77ZUZTU3bnf91d3c+sW5d/nHTpnQOMLBZ09OT -mzZuzJ+9+GLae3sHq2QYEbb/rwUAAABGkINaWvKlKVPynS1b8t0tW7JtNNOb5Adbt2ZxR0c+OnFi -3tLS8qqftaanJ9/bsiU/bmuL93tRq4Q9AAAAjHjNhUI+OG5cZre25roNG7Ki4lXsv+vpyaXr1uWd -Y8fmQ+PGZUzFW72EPNQTYQ8AAACjxv7NzfnfU6bk+1u35tbNm7cLbu5sa8ujnZ25cMKEHFksCnmo -S8IeAAAARpWmQiHv23PPzC4Wc93GjXmy4lXsL/b0ZMH69Xl9Y2NW9/QIeag7HtAMAADAqDSjuTlX -77VXzh8/Pjt6Us9vBT3UKWEPAAAAo1ZjoZAz99gjn508OZMb3OJCYowLAACAUcwzeWB7Yk8AAABG -rUK1C4ARSNgDAADAqDWlsTF/PmFCbp46NaePHWt8BSLsAQAAoAYIfeC/CHsAAACoGUIfEPYAAABQ -g4Q+1DNhDwAAADVL6EM9EvYAAABQ84Q+1BNhDwAAAHVD6EM90NcAAADUnZdDn/fuuWfGNNgHQW0R -9gAAAFC3pjQ2VrsEGHTiSwAAAIAaIuwBAAAAqCHCHgAAAIAaIuwBAAAAqCHCHgAAAIAaIuwBAAAA -qCHCHgAAAIAaIuwBAAAAqCHCHgAAAIAaIuwBAAAAqCHCHgAAAIAaIuwBAAAAqCFVDXsWLlyYM844 -I9OnT0+hUMhtt93W73y5XM6nP/3p7LvvvhkzZkxOOumkPPXUU/2uWb9+fc4555yMHz8+EydOzPnn -n58tW7YM47cAAAAAGDmqGvZs3bo1hx9+eG688cYdnr/mmmty3XXX5aabbsrixYuzxx575JRTTklH -R0ffNeecc06eeOKJ3H333bnjjjuycOHCXHDBBcP1FQAAAABGlKZq/uannXZaTjvttB2eK5fL+dKX -vpTLL788Z555ZpLkm9/8ZvbZZ5/cdtttOfvss7N8+fLcddddefTRR3P00UcnSa6//vqcfvrpufba -azN9+vRh+y4AAAAAI0FVw55Xs2LFiqxevTonnXRS39qECRMya9asLFq0KGeffXYWLVqUiRMn9gU9 -SXLSSSeloaEhixcvzrvf/e4dfnZnZ2c6Ozv7jjdt2pQkKZVKKZVKQ/SNoLpe7m09Ti3T59QDfU49 -0OfUA/3NUBqxYc/q1auTJPvss0+/9X322afv3OrVqzN16tR+55uamjJ58uS+a3bkqquuymc/+9nt -1u+8886MHTt2d0uHEe3222+vdgkw5PQ59UCfUw/0ObWsra2t2iVQw0Zs2DOULr300syfP7/veNOm -TZkxY0be+c53Zq+99qpiZTB0SqVSbr/99px55plpbm6udjkwJPQ59UCfUw/0OfVg3bp11S6BGjZi -w55p06YlSV544YXsu+++fesvvPBCjjjiiL5rXnzxxX4/193dnfXr1/f9/I4Ui8UUi8Xt1pubm/1l -Qs3T59QDfU490OfUA31OLdPbDKWqvo3r1cycOTPTpk3LPffc07e2adOmLF68OLNnz06SzJ49Oxs2 -bMhjjz3Wd829996b3t7ezJo1a9hrBgAAAKi2qu7s2bJlS55++um+4xUrVmTZsmWZPHly9ttvv/z1 -X/91vvCFL+TAAw/MzJkzc8UVV2T69Ok566yzkiQHH3xwTj311Pzpn/5pbrrpppRKpVx00UU5++yz -vYkLAAAAqEtVDXuWLFmSE044oe/45efonHfeebnlllvyyU9+Mlu3bs0FF1yQDRs25Ljjjstdd92V -1tbWvp/5p3/6p1x00UU58cQT09DQkPe85z257rrrBlRHuVxOkmzevNlWOmpWqVRKW1tbNm3apM+p -WfqceqDPqQf6nHqwefPmJP91PwqDqVDWWXn22Wez//77V7sMAAAA6swzzzyTN77xjdUugxozYh/Q -PJwmT56cJFm1alUmTJhQ5WpgaLz81rnf/OY3GT9+fLXLgSGhz6kH+px6oM+pBxs3bsx+++3Xdz8K -g0nYk6Sh4T+eUz1hwgR/mVDzxo8fr8+pefqceqDPqQf6nHrw8v0oDCZdBQAAAFBDhD0AAAAANUTY -k6RYLGbBggUpFovVLgWGjD6nHuhz6oE+px7oc+qBPmcoeRsXAAAAQA2xswcAAACghgh7AAAAAGqI -sAcAAACghgh7AAAAAGpI3YQ9N954Y97whjektbU1s2bNys9+9rNXvf7//t//m4MOOiitra059NBD -88Mf/nCYKoVdN5A+/9rXvpY5c+Zk0qRJmTRpUk466aTX/O8CRoKB/nn+sltvvTWFQiFnnXXW0BYI -g2Cgfb5hw4ZceOGF2XfffVMsFvOmN73J/3dhxBton3/pS1/Km9/85owZMyYzZszIvHnz0tHRMUzV -wsAsXLgwZ5xxRqZPn55CoZDbbrvtNX/mvvvuy1FHHZVisZgDDjggt9xyy5DXSe2qi7DnO9/5TubP -n58FCxZk6dKlOfzww3PKKafkxRdf3OH1Dz/8cD7wgQ/k/PPPz+OPP56zzjorZ511Vn75y18Oc+Ww -8wba5/fdd18+8IEP5Kc//WkWLVqUGTNm5A//8A/z3HPPDXPlsPMG2ucvW7lyZT7+8Y9nzpw5w1Qp -7LqB9nlXV1dOPvnkrFy5Mt/97nfz5JNP5mtf+1pe97rXDXPlsPMG2uff/va3c8kll2TBggVZvnx5 -vv71r+c73/lOLrvssmGuHHbO1q1bc/jhh+fGG2/cqetXrFiRd77znTnhhBOybNmy/PVf/3X+5E/+ -JD/60Y+GuFJqVV28en3WrFn5/d///dxwww1Jkt7e3syYMSMf/ehHc8kll2x3/fvf//5s3bo1d9xx -R9/aH/zBH+SII47ITTfdNGx1w0AMtM8r9fT0ZNKkSbnhhhvyoQ99aKjLhV2yK33e09OTuXPn5iMf -+UgeeOCBbNiwYaf+dQ2qZaB9ftNNN+V//a//lX/7t39Lc3PzcJcLu2SgfX7RRRdl+fLlueeee/rW -/uZv/iaLFy/Ogw8+OGx1w64oFAr5wQ9+8Kq7iy+++OLceeed/TYYnH322dmwYUPuuuuuYaiSWlPz -O3u6urry2GOP5aSTTupba2hoyEknnZRFixbt8GcWLVrU7/okOeWUU17xeqi2XenzSm1tbSmVSpk8 -efJQlQm7ZVf7/HOf+1ymTp2a888/fzjKhN2yK33+L//yL5k9e3YuvPDC7LPPPjnkkENy5ZVXpqen -Z7jKhgHZlT4/5phj8thjj/WNej377LP54Q9/mNNPP31Yaoah5h6UwdZU7QKG2tq1a9PT05N99tmn -3/o+++yTf/u3f9vhz6xevXqH169evXrI6oTdsSt9Xuniiy/O9OnTt/tLBkaKXenzBx98MF//+tez -bNmyYagQdt+u9Pmzzz6be++9N+ecc05++MMf5umnn85f/uVfplQqZcGCBcNRNgzIrvT5H//xH2ft -2rU57rjjUi6X093dnT//8z83xkXNeKV70E2bNqW9vT1jxoypUmWMVjW/swd4bVdffXVuvfXW/OAH -P0hra2u1y4FBsXnz5px77rn52te+lilTplS7HBgyvb29mTp1am6++ea89a1vzfvf//586lOfMnpO -Tbnvvvty5ZVX5itf+UqWLl2a73//+7nzzjvz+c9/vtqlAYxINb+zZ8qUKWlsbMwLL7zQb/2FF17I -tGnTdvgz06ZNG9D1UG270ucvu/baa3P11VfnJz/5SQ477LChLBN2y0D7/JlnnsnKlStzxhln9K31 -9vYmSZqamvLkk09m//33H9qiYYB25c/zfffdN83NzWlsbOxbO/jgg7N69ep0dXWlpaVlSGuGgdqV -Pr/iiity7rnn5k/+5E+SJIceemi2bt2aCy64IJ/61KfS0ODfsBndXukedPz48Xb1sEtq/k/FlpaW -vPWtb+33MLfe3t7cc889mT179g5/Zvbs2f2uT5K77777Fa+HatuVPk+Sa665Jp///Odz11135eij -jx6OUmGXDbTPDzrooPziF7/IsmXL+n69613v6nvLxYwZM4azfNgpu/Ln+bHHHpunn366L8xMkn// -93/PvvvuK+hhRNqVPm9ra9su0Hk54KyD981QB9yDMujKdeDWW28tF4vF8i233FL+1a9+Vb7gggvK -EydOLK9evbpcLpfL5557bvmSSy7pu/6hhx4qNzU1la+99try8uXLywsWLCg3NzeXf/GLX1TrK8Br -GmifX3311eWWlpbyd7/73fLzzz/f92vz5s3V+grwmgba55XOO++88plnnjlM1cKuGWifr1q1qjxu -3LjyRRddVH7yySfLd9xxR3nq1KnlL3zhC9X6CvCaBtrnCxYsKI8bN678z//8z+Vnn322/OMf/7i8 -//77l9/3vvdV6yvAq9q8eXP58ccfLz/++OPlJOUvfvGL5ccff7z861//ulwul8uXXHJJ+dxzz+27 -/tlnny2PHTu2/IlPfKK8fPny8o033lhubGws33XXXdX6CoxyNT/GlfzHq9TXrFmTT3/601m9enWO -OOKI3HXXXX0PwFq1alW/fyk45phj8u1vfzuXX355Lrvsshx44IG57bbbcsghh1TrK8BrGmiff/Wr -X01XV1fe+9739vucBQsW5DOf+cxwlg47baB9DqPRQPt8xowZ+dGPfpR58+blsMMOy+te97r81V/9 -VS6++OJqfQV4TQPt88svvzyFQiGXX355nnvuuey9994544wz8rd/+7fV+grwqpYsWZITTjih73j+ -/PlJkvPOOy+33HJLnn/++axatarv/MyZM3PnnXdm3rx5+fKXv5zXv/71+T//5//klFNOGfbaqQ2F -ctm+RwAAAIBa4Z8/AQAAAGqIsAcAAACghgh7AAAAAGqIsAcAAACghgh7AAAAAGqIsAcAAACghgh7 -AAAAAGqIsAcAAACghgh7AIBhVygUcttttyVJVq5cmUKhkGXLllW1JgCAWiHsAYA68+EPfziFQiGF -QiHNzc2ZOXNmPvnJT6ajo6PapQEAMAiaql0AADD8Tj311PzjP/5jSqVSHnvssZx33nkpFAr5n//z -f1a7NAAAdpOdPQBQh4rFYqZNm5YZM2bkrLPOykknnZS77747SdLb25urrroqM2fOzJgxY3L44Yfn -u9/9br+ff+KJJ/JHf/RHGT9+fMaNG5c5c+bkmWeeSZI8+uijOfnkkzNlypRMmDAhxx9/fJYuXTrs -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 +E9W3b98CgerkyZNVq1YtWSwWnXXWWSe8zqxZs1SvXj01b9484sc+88wzddZZZ2nSpEknDHuiYZqm +8vLyFB8fX2zXLEl79+5VWlpaoe3NmjU7/QWhzAv+HnA6nbEupwCbzSabjR/jpT9HRbrd7jL/Ry0A +KG5M4wLKsfPPP1+StHnz5pD2X3/9VQMGDFDlypUVFxentm3baubMmQXuf/jwYd19992BaVO1a9fW +DTfcoP3790uS3G63Ro0apTZt2ig1NVWJiYk6//zztXDhwmJ9Hq+//rr27NmjZ555JiTokaT4+Hi9 +8847kv4c2ZSvqPUMiloraPbs2Tr//POVmJio5ORk9enTR2vWrAk558Ybb1RSUpI2b96s3r17Kzk5 +Wddee23gWPhfY/1+v1544QU1b95ccXFxql69um677TYdOnQo5LyffvpJPXv2VNWqVRUfH68GDRro +5ptvPuHrkr8WxNy5c9WqVSvFxcWpWbNm+uijjwqce/jwYd11112qU6eOnE6nGjdurHHjxoWMRtq6 +dasMw9Czzz6rF154QY0aNZLT6dTatWuLrGHevHnq3Lmz0tLSlJSUpDPOOEMPPvhgyDkul0uPPvqo +GjduLKfTqTp16ui+++6Ty+UqcL13331X7du3V0JCgipVqqQLLrhAc+fODTnn1VdfVfPmzeV0OlWz +Zk0NHz5chw8fDjmna9euOuuss7R27VpdeOGFSkhIUK1atQqdIrVz507169dPiYmJSk9P1913311o +bYXZsmWLVq1apYsuuqjAsfz1YyL1+eefh4zqibRfXHzxxfr0009lmmaR1540aZL++te/SpIuvPDC +wJTP/DWJ8vvSnDlz1LZtW8XHx+v111+X9GeY1a1bN6Wnp8vpdKpZs2YaP358gccwTVNPPPGEateu +rYSEBF144YUFvofyRdIfpT/D1H/84x+B88444ww9++yzgeea32cXLlyoNWvWhDwvwzC0ZcsWff75 +54H24poiU9T6NuFru+S/33zzzTe67bbbVKVKFaWkpOiGG24o8D5QmFWrVunGG29Uw4YNFRcXp4yM +DN18880FRorlv99t2rRJN954o9LS0pSamqqbbrpJOTk5Iee6XC7dfffdqlatmpKTk9W3b1/t3Lnz +hLV89dVXateunSTppptuCrymkyZNCpwzdepUtWnTRvHx8apataquu+66E04lPlHfzPfdd9+pffv2 +iouLU8OGDfWf//ynwLUi7VeFOd73QGFr9qxatUpdunRRfHy8ateurSeeeEITJ04ssp8dr/5IX4Ng +hX3GRfJ+fDzvvfeezjjjDMXFxalNmzb65ptvCpzz+++/6+abb1b16tXldDrVvHlzvf3224Hjx+sn +Xbt21eeff65t27YF2oM/NyP9rMhfY+i9994LfBZ88cUXET9PAKgo+JMAUI7l/8BZqVKlQNuaNWt0 +3nnnqVatWnrggQeUmJioDz/8UP369dP06dN1xRVXSPpzYdPzzz9f69at080336xzzjlH+/fv18yZ +M7Vz505VrVpVR44c0YQJE3T11Vfr1ltvVVZWlt566y317NlTS5YsKbZh/p9++qni4uKKHJ3UoEED +de7cWfPnz1deXl7Uf92bPHmyBg0apJ49e2rcuHHKycnR+PHj1blzZ61YsSLkh1Gv16uePXuqc+fO +evbZZ5WQkFDkdW+77TZNmjRJN910k0aMGKEtW7bo5Zdf1ooVK/T999/Lbrdr79696tGjh6pVq6YH +HnhAaWlp2rp1a6GBTWE2btyov/3tbxo6dKgGDRqkiRMn6q9//au++OILXXzxxZKknJwcdenSRb// +/rtuu+021a1bVz/88INGjhyp3bt3F1g/YeLEicrLy9OQIUPkdDpVuXLlQh97zZo1uvTSS9WyZUuN +GTNGTqdTmzZt0vfffx84x+/3q2/fvvruu+80ZMgQnXnmmVq9erWef/55bdiwQZ988kng3NGjR+ux +xx7TueeeqzFjxsjhcOjHH3/Ul19+qR49ekj68xec0aNH66KLLtKwYcO0fv16jR8/XkuXLg28pvkO +HTqkXr166corr9TAgQM1bdo03X///WrRooUuueQSSVJubq66d++u7du3a8SIEapZs6YmT56sL7/8 +MqLXP3+9qHPOOSei84uyZ88erVixIhBYRtMv2rRpo+eff15r1qwpcgTRBRdcoBEjRuill17Sgw8+ +qDPPPFOSAv+V/pyqcvXVV+u2227TrbfeqjPOOEPSn9PRmjdvrr59+8pms+nTTz/V7bffLr/fr+HD +hwfuP2rUKD3xxBPq3bu3evfureXLl6tHjx5yu90htUTaH03TVN++fbVw4ULdcsstatWqlebMmaN7 +771Xv//+u55//nlVq1ZNkydP1pNPPqns7GyNHTs28LwmT56su+++W7Vr19Y//vEPSVK1atVO5p/n +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 +Bw4cqN9//11vvvlmgXNzc3N19OhRSX+ORLNYLBozZkyBEQv5r89FF10kh8Ohl156KeQ1e+utt5SZ +mRnRjkLhevfurV27dmnatGmBtpycnCKnKYTLn8rx008/Rf3Y+WbNmlWg9mj6xbJly5SamhrYlago +iYmJklQgpDiewr7HMzMzNXHixJDzLrroItntdv3f//1fyLmF7YAUaX/s3bu3fD6fXn755ZBznn/+ +eRmGEdhRrTi0adMm5P3nRGuBNGrUqMAaMG+88UaRI3veeOONkPeX8ePHy+v1Hvc5FPbaS4W/ppHK +f7yXXnrppK5ZVB9q27at0tPT9dprr4X0z9mzZ2vdunUn/N48mb4ZrqTe5wrTs2dPLVq0SCtXrgy0 +HTx4sMiRnJE41dcgkvfj41m0aFHImjs7duzQjBkz1KNHD1mtVlmtVvXv31/Tp08v9A9BwZ+Vx3su +iYmJhU5BjPSzAgAQOUb2AOXcvffeq7/+9a+aNGmShg4dqldeeUWdO3dWixYtdOutt6phw4b6448/ +tGjRIu3cuVM///xz4H7Tpk3TX//6V918881q06aNDh48qJkzZ+q1117T2WefrUsvvVQfffSRrrji +CvXp00dbtmzRa6+9pmbNmik7O7vYnkOlSpU0bdo09e7dW+ecc44GDx6sZs2aac+ePZo0aZJ+++03 +vfzyy+rQoUPgPj169FDdunV1yy236N5775XVatXbb7+tatWqafv27YHzUlJSNH78eF1//fU655xz +dNVVVwXO+fzzz3XeeecV+GUzEl26dNFtt92msWPHauXKlerRo4fsdrs2btyoqVOn6sUXX9SAAQP0 +zjvv6NVXX9UVV1yhRo0aKSsrS2+++aZSUlKO+1f/fH/5y190yy23aOnSpapevbrefvtt/fHHHyG/ +jN97772aOXOmLr300sB2v0ePHtXq1as1bdo0bd269aSmAI0ZM0bffPON+vTpo3r16mnv3r169dVX +Vbt2bXXu3FmSdP311+vDDz/U0KFDtXDhQp133nny+Xz69ddf9eGHH2rOnDlq27atGjdurIceekiP +P/64zj//fF155ZVyOp1aunSpatasqbFjx6patWoaOXKkRo8erV69eqlv375av369Xn31VbVr167Q +UV8ncuutt+rll1/WDTfcoGXLlqlGjRqaPHmyEhISIrp/w4YNddZZZ2n+/Pm6+eabQ4598803gUBg +3759Onr0qJ544glJf243fcEFF2jLli1at26dxo8fH3LfaPrFvHnzdNlll53wr+GtWrWS1WrVuHHj +lJmZKafTqW7duh13nasePXrI4XDosssu02233abs7Gy9+eabSk9PDwmMq1Wrpn/+858aO3asLr30 +UvXu3VsrVqzQ7NmzC/StSPvjZZddpgsvvFAPPfSQtm7dqrPPPltz587VjBkzdNdddxVYd+Z0Gjx4 +sIYOHar+/fvr4osv1s8//6w5c+YU+X3kdrvVvXt3DRw4MNBnO3furL59+xb5GCkpKbrgggv09NNP +y+PxqFatWpo7d25gJNfJaNWqla6++mq9+uqryszM1LnnnqsFCxZEPCKlUaNGSktL02uvvabk5GQl +JiaqQ4cOatCggcaNG6ebbrpJXbp00dVXXx3Yer1+/fq6++67T1hXtH0zXEm9zxXmvvvu07vvvquL +L75Yd955Z2Dr9bp16+rgwYMnNTLlVF+DSN6Pj+ess85Sz549Q7Zel6TRo0cHzvnXv/6lhQsXqkOH +Drr11lvVrFkzHTx4UMuXL9f8+fMDgdPx+kmbNm30wQcf6J577lG7du2UlJSkyy67LOLPCgBAFE7v +5l8ASkL+9r6FbdPs8/nMRo0amY0aNTK9Xq9pmqa5efNm84YbbjAzMjJMu91u1qpVy7z00kvNadOm +hdz3wIED5h133GHWqlXLdDgcZu3atc1BgwYFtl31+/3mU089ZdarV890Op1m69atzc8++6zANuSm +eWpbr+fbunWrOWTIELNu3bqmzWYLbBc7f/78Qs9ftmyZ2aFDB9PhcJh169Y1n3vuuSIfd+HChWbP +nj3N1NRUMy4uzmzUqJF54403hmxFO2jQIDMxMbHQxyrsOZumab7xxhtmmzZtzPj4eDM5Odls0aKF +ed9995m7du0yTdM0ly9fbl599dVm3bp1TafTaaanp5uXXnppyOMWJX9b6Tlz5pgtW7Y0nU6n2bRp +U3Pq1KkFzs3KyjJHjhxpNm7c2HQ4HGbVqlXNc88913z22WcDW0Lnb73+zDPPnPCxTdM0FyxYYF5+ ++eVmzZo1TYfDYdasWdO8+uqrC2x97Ha7zXHjxpnNmzc3nU6nWalSJbNNmzbm6NGjzczMzJBz3377 +bbN169aB87p06WLOmzcv5JyXX37ZbNq0qWm3283q1aubw4YNMw8dOhRyTlFbcRf277Rt2zazb9++ +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 +jBnq16+fHnzwQbnd7mItDgAAAACicVNysoInc/n051bsAFCRRB323HbbbdqwYYMk6bffftNVV12l +hIQETZ06Vffdd1+xFwgAAAAAkcqw2XR52FbsP7lcWs5W7AAqkKjDng0bNqhVq1aSpKlTp+qCCy7Q +lClTNGnSJE2fPr246wMAAACAqPw1KUlphWzF7mUrdgAVRNRhj2ma8h9b0X7+/Pnq3bu3JKlOnTra +v39/8VYHAAAAAFFKsFh0fdhW7Du8Xn3BVuwAKoiow562bdvqiSee0OTJk/X111+rT58+kqQtW7ao +evXqxV4gAAAAAESre3y8GoVtxf7frCxlsRU7gAog6rDnhRde0PLly3XHHXfooYceUuPGjSVJ06ZN +07nnnlvsBQIAAABAtCyGocGpqSFtWaap/2ZlxagiADh9bCc+JVTLli1DduPK98wzz8hqtRZLUQAA +AABwqpo7HDovLk7f5+UF2mbl5KhXQoLq2u0xrAwASlbUI3sk6fDhw5owYYJGjhypgwcPSpLWrl2r +vXv3FmtxAAAAAHAqbkxOVnCs45f0NqN7AJRzUYc9q1atUpMmTTRu3Dg9++yzOnz4sCTpo48+0siR +I4u7PgAAAAA4adVtNl2RlBTSttzl0k9Bo30AoLyJOuy55557dNNNN2njxo2Ki4sLtPfu3VvffPNN +VNcaO3as2rVrp+TkZKWnp6tfv35av359yDldu3aVYRghX0OHDg05Z/v27erTp48SEhKUnp6ue++9 +V16vN9qnBgAAAKAc6p+YqMpsxQ6gAok67Fm6dKluu+22Au21atXSnj17orrW119/reHDh2vx4sWa +N2+ePB6PevTooaNHj4acd+utt2r37t2Br6effjpwzOfzqU+fPnK73frhhx/0zjvvaNKkSRo1alS0 +Tw0AAABAORRvseiGsK3Yf/f59DlbsQMop6JeoNnpdOrIkSMF2jds2KBq1apFda0vvvgi5PakSZOU +np6uZcuW6YILLgi0JyQkKCMjo9BrzJ07V2vXrtX8+fNVvXp1tWrVSo8//rjuv/9+PfbYY3I4HFHV +BAAAAKD86Rofr89zcrTR4wm0vZ+VpQvj45ViOamlTAGg1Io67Onbt6/GjBmjDz/8UJJkGIa2b9+u ++++/X/379z+lYjIzMyVJlStXDml/77339O677yojI0OXXXaZHnnkESUkJEiSFi1apBYtWqh69eqB +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 +unRpLF++PPbdd9846aSTorm5ObFrBACoJB7jAoAKtGDBghg6dGh0dnZGe3t7VFVVxfe+971ob2+P +q6++Ou69994YP358RETstddesXTp0vjBD34Qxx57bMyePTuGDRsW8+bNi0wmExER7373u7t/9vHH +H1/yZ91www2xww47xJIlS+KUU07pv4sEAKhQwh4AqEATJkyI6667LlpaWuLb3/52VFdXx+mnnx5P +Pvlk5HK5mDhxYsn5HR0dccghh0RExMqVK+Poo4/uDnp6WrduXVx++eXxwAMPxCuvvBKFQiFyuVys +Xr26z68LAABhDwBUpCFDhsQ+++wTERE//vGPY9y4cXHjjTfGAQccEBERCxcujF133bXke7LZbERE +1NXVve3PPvvss+P111+P73znO/Gud70rstlsjB8/Pjo6OvrgSgAA6EnYAwAVrqqqKi677LK48MIL +449//GNks9lYvXp1HHvssZs9/6CDDoq5c+dGPp/f7O6e3/72t/H9738/TjrppIiIePHFF+O1117r +02sAAOD/GNAMAMRf//VfRzqdjh/84Adx0UUXxYwZM2Lu3Lnx7LPPxqOPPhrf/e53Y+7cuRERMX36 +9GhqaoqPf/zj8cgjj8R///d/x09+8pNYtWpVRETsu+++8ZOf/CSeeuqpePjhh+OTn/zkFncDAQCw +/djZAwBEdXV1TJ8+Pa699tp4/vnnY6eddopZs2bFc889FzvssEMceuihcdlll0VExMiRI+P++++P +iy++OI499thIp9Nx8MEHx1FHHRURETfeeGOcf/75ceihh8bYsWPj6quvjosuuijJywMAqCipYrFY +TLoIAAAAALYPj3EBAAAAlBFhDwAAAEAZEfYAAAAAlBFhDwAAAEAZEfYAAAAAlBFhDwAAAEAZEfYA +AAAAlBFhDwAAAEAZEfYAAAAAlBFhDwAAAEAZEfYAAAAAlJH/D53UJ0Cj2UYPAAAAAElFTkSuQmCC diff --git a/docs/pages/performance/fashion-mnist/plot.png b/docs/pages/performance/fashion-mnist/plot.png index e39a1cb442922e403a5b079647a96de11ad368c3..12c7544c3105a43d72cdf31ca22c924d60657296 100644 GIT binary patch literal 43776 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 Dw5>cv literal 44604 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 JC!cA8l;mbU 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 Date: Sat, 25 Nov 2023 19:31:45 -0800 Subject: [PATCH 09/11] More cleanup --- .../com/klibisz/elastiknn/search/KthGreatestSuite.scala | 8 ++++---- .../java/com/klibisz/elastiknn/models/ExactModel.java | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala b/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala index eeb2882bf..dcac7b0a6 100644 --- a/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala +++ b/elastiknn-lucene/src/test/scala/com/klibisz/elastiknn/search/KthGreatestSuite.scala @@ -21,7 +21,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { } test("example") { - val counts: Array[Int] = Array(2, 2, 8, 7, 4, 4) + val counts: Array[Short] = Array(2, 2, 8, 7, 4, 4) val res = KthGreatest.kthGreatest(counts, 3) res.kthGreatest shouldBe 4 res.numGreaterThan shouldBe 2 @@ -33,7 +33,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { val rng = new Random(seed) info(s"Using seed $seed") for (_ <- 0 until 999) { - val counts = (0 until (rng.nextInt(10000) + 1)).map(_ => rng.nextInt(Short.MaxValue)).toArray + val counts = (0 until (rng.nextInt(10000) + 1)).map(_ => rng.nextInt(Short.MaxValue).toShort).toArray val k = rng.nextInt(counts.length) val res = KthGreatest.kthGreatest(counts, k) res.kthGreatest shouldBe counts.sorted.reverse(k) @@ -43,7 +43,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { } test("all zero except one") { - val counts = Array[Int](50, 0, 0, 0, 0, 0, 0, 0, 0, 0) + val counts = Array[Short](50, 0, 0, 0, 0, 0, 0, 0, 0, 0) val res = KthGreatest.kthGreatest(counts, 3) res.kthGreatest shouldBe 0 res.numGreaterThan shouldBe 1 @@ -51,7 +51,7 @@ class KthGreatestSuite extends AnyFunSuite with Matchers { } test("all zero") { - val counts = Array[Int](0, 0, 0, 0, 0, 0, 0, 0, 0, 0) + val counts = Array[Short](0, 0, 0, 0, 0, 0, 0, 0, 0, 0) val res = KthGreatest.kthGreatest(counts, 3) res.kthGreatest shouldBe 0 res.numGreaterThan shouldBe 0 diff --git a/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java b/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java index cfaead674..fb23f7d2d 100644 --- a/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java +++ b/elastiknn-models/src/main/java/com/klibisz/elastiknn/models/ExactModel.java @@ -4,6 +4,8 @@ import com.klibisz.elastiknn.vectors.FloatVectorOps; import jdk.internal.vm.annotation.ForceInline; +import java.util.Arrays; + public class ExactModel { @ForceInline From e4fa2fd0737fd4a367edd2f1048b14eb84bc0d1d Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 19:42:19 -0800 Subject: [PATCH 10/11] Remove unused --- .../klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala | 1 - 1 file changed, 1 deletion(-) diff --git a/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala index b69603353..154fa9a7f 100644 --- a/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala +++ b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala @@ -13,7 +13,6 @@ class HitCounterBenchmarksFixtures { val numHits = 2000 val initialMapSize = 1000 val docs = (1 to numHits).map(_ => rng.nextInt(numDocs)).toArray - val arr = new Array[Int](numDocs) } class HitCounterBenchmarks { From dedb01de1c3eaae848d6e2ade4f54b632a351bde Mon Sep 17 00:00:00 2001 From: Alex Klibisz <8015228+alexklibisz@users.noreply.github.com> Date: Sat, 25 Nov 2023 19:42:49 -0800 Subject: [PATCH 11/11] scalafmt --- .../klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala | 1 - 1 file changed, 1 deletion(-) diff --git a/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala index 154fa9a7f..4bd2d3367 100644 --- a/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala +++ b/elastiknn-jmh-benchmarks/src/main/scala/com/klibisz/elastiknn/jmhbenchmarks/HitCounterBenchmarks.scala @@ -39,7 +39,6 @@ class HitCounterBenchmarks { () } - @Benchmark @BenchmarkMode(Array(Mode.Throughput)) @Fork(value = 1)