From b856ce07afe4d1a8e4d3a3ae6d9ba05e0af22faa Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 15:50:17 +0200 Subject: [PATCH 01/16] Fix not using LSBBitReader --- .../com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java | 2 +- .../imageio/plugins/webp/lossless/VP8LDecoder.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java index 64d2bc6d..546ce22d 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java @@ -153,7 +153,7 @@ final class WebPImageReader extends ImageReaderBase { Rectangle bounds = new Rectangle(x, y, w, h); // TODO: Expose duration/flags in image metadata - int duration = (int) imageInput.readBits(24); + int duration = (int) lsbBitReader.readBits(24); int flags = imageInput.readUnsignedByte(); // 6 bit reserved + blend mode + disposal mode frames.add(new AnimationFrame(chunkLength, chunkStart, bounds, duration, flags)); diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index be067cf9..860f2b9e 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -155,7 +155,7 @@ public final class VP8LDecoder { System.err.println("transformType: COLOR_INDEXING_TRANSFORM"); // 8 bit value for color table size - int colorTableSize = imageInput.readUnsignedByte() + 1; // 1-256 + int colorTableSize = ((int) lsbBitReader.readBits(8)) + 1; // 1-256 System.err.println("colorTableSize: " + colorTableSize); // If the index is equal or larger than color_table_size, From 7382151db8e72d31cfb6c0626d148353b8db538f Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 16:30:22 +0200 Subject: [PATCH 02/16] Convert transforms list and colorCache to local variables This is needed because on recursion new (empty) ones are necessary. --- .../imageio/plugins/webp/lossless/VP8LDecoder.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index 860f2b9e..ade640b3 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -52,9 +52,6 @@ public final class VP8LDecoder { private final ImageInputStream imageInput; private final LSBBitReader lsbBitReader; - private final List transforms = new ArrayList<>(); - private ColorCache colorCache; - public VP8LDecoder(final ImageInputStream imageInput, final boolean debug) { this.imageInput = imageInput; lsbBitReader = new LSBBitReader(imageInput); @@ -67,8 +64,9 @@ public final class VP8LDecoder { int ySize = raster.getHeight(); // Read transforms + ArrayList transforms = new ArrayList<>(); while (topLevel && lsbBitReader.readBit() == 1) { - xSize = readTransform(xSize, ySize); + xSize = readTransform(xSize, ySize, transforms); } // Read color cache size @@ -83,6 +81,8 @@ public final class VP8LDecoder { // Read Huffman codes readHuffmanCodes(colorCacheBits, topLevel); + ColorCache colorCache = null; + if (colorCacheBits > 0) { colorCache = new ColorCache(colorCacheBits); } @@ -91,7 +91,7 @@ public final class VP8LDecoder { // decodeImageData(raster, ) } - private int readTransform(int xSize, int ySize) throws IOException { + private int readTransform(int xSize, int ySize, List transforms) throws IOException { int transformType = (int) lsbBitReader.readBits(2); // TODO: Each transform type can only be present once in the stream. From 28270b4d5b3ed3256c5e6f1d8a6b266b4fc5012c Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 16:58:55 +0200 Subject: [PATCH 03/16] Objectify Transforms Deduplicate code for parsing predictor and color transforms. Add missing subtraction code removal on indexing transform. --- .../plugins/webp/lossless/VP8LDecoder.java | 106 +++++++----------- .../transform/ColorIndexingTransform.java | 18 +++ .../lossless/transform/ColorTransform.java | 17 +++ .../{ => transform}/PredictorMode.java | 2 +- .../transform/PredictorTransform.java | 17 +++ .../transform/SubtractGreenTransform.java | 11 ++ .../lossless/{ => transform}/Transform.java | 21 +--- .../{ => transform}/TransformType.java | 4 +- 8 files changed, 114 insertions(+), 82 deletions(-) create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java rename imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/{ => transform}/PredictorMode.java (97%) create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java rename imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/{ => transform}/Transform.java (82%) rename imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/{ => transform}/TransformType.java (94%) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index ade640b3..23bd8444 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -32,6 +32,12 @@ package com.twelvemonkeys.imageio.plugins.webp.lossless; import com.twelvemonkeys.imageio.plugins.webp.LSBBitReader; +import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.ColorIndexingTransform; +import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.ColorTransform; +import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.PredictorTransform; +import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.SubtractGreenTransform; +import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.Transform; +import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.TransformType; import javax.imageio.IIOException; import javax.imageio.stream.ImageInputStream; @@ -40,7 +46,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import static com.twelvemonkeys.imageio.util.RasterUtils.asByteRaster; import static java.lang.Math.*; /** @@ -97,58 +102,38 @@ public final class VP8LDecoder { // TODO: Each transform type can only be present once in the stream. switch (transformType) { - case TransformType.PREDICTOR_TRANSFORM: { + case TransformType.PREDICTOR_TRANSFORM: System.err.println("transformType: PREDICTOR_TRANSFORM"); -// int sizeBits = (int) readBits(3) + 2; - int sizeBits = (int) lsbBitReader.readBits(3) + 2; - int size = 1 << sizeBits; - - int blockWidth = size; - int blockHeight = size; - -// int blockSize = divRoundUp(width, size); - int blockSize = divRoundUp(xSize, size); - - for (int y = 0; y < ySize; y++) { - for (int x = 0; x < xSize; x++) { - int blockIndex = (y >> sizeBits) * blockSize + (x >> sizeBits); - } - } - - // Special rules: - // Top-left pixel of image is predicted BLACK - // Rest of top pixels is predicted L - // Rest of leftmost pixels are predicted T - // Rightmost pixels using TR, uses LEFTMOST pixel on SAME ROW (same distance as TR in memory!) - -// WritableRaster data = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, blockWidth, blockHeight, blockWidth, 1, new int[] {0}, null); -// readVP8Lossless(data, false); -// - break; - } + //Intentional Fallthrough case TransformType.COLOR_TRANSFORM: { // The two first transforms contains the exact same data, can be combined - System.err.println("transformType: COLOR_TRANSFORM"); + if (transformType == TransformType.COLOR_TRANSFORM) { + System.err.println("transformType: COLOR_TRANSFORM"); + } - int sizeBits = (int) lsbBitReader.readBits(3) + 2; -// int size = 1 << sizeBits; - - // TODO: Understand difference between spec divRoundUp and impl VP8LSubSampleSize + byte sizeBits = (byte) (lsbBitReader.readBits(3) + 2); int blockWidth = subSampleSize(xSize, sizeBits); int blockHeight = subSampleSize(ySize, sizeBits); - WritableRaster data = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, blockWidth, blockHeight, blockWidth, 1, new int[] {0}, null); - readVP8Lossless(data, false); + WritableRaster raster = + Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, blockWidth, blockHeight, 4 * blockWidth, 4, + new int[] {0, 1, 2, 3}, null); + readVP8Lossless(raster, false); - transforms.add(new Transform(transformType, ((DataBufferByte) data.getDataBuffer()).getData())); + //Keep data as raster for convenient (x,y) indexing + if (transformType == TransformType.PREDICTOR_TRANSFORM) { + transforms.add(0, new PredictorTransform(raster, sizeBits)); + } + else { + transforms.add(0, new ColorTransform(raster, sizeBits)); + } break; } case TransformType.SUBTRACT_GREEN: { System.err.println("transformType: SUBTRACT_GREEN"); // No data here - -// addGreenToBlueAndRed(); + transforms.add(0, new SubtractGreenTransform()); break; } case TransformType.COLOR_INDEXING_TRANSFORM: { @@ -167,41 +152,36 @@ public final class VP8LDecoder { System.err.println("safeColorTableSize: " + safeColorTableSize); - int[] colorTable = new int[safeColorTableSize]; + byte[] colorTable = new byte[safeColorTableSize * 4]; // The color table can be obtained by reading an image, // without the RIFF header, image size, and transforms, // assuming a height of one pixel and a width of // color_table_size. The color table is always // subtraction-coded to reduce image entropy. - // TODO: Read *without transforms*, using SUBTRACT_GREEN only! - readVP8Lossless(asByteRaster( - Raster.createPackedRaster( - new DataBufferInt(colorTable, colorTableSize), - colorTableSize, 1, colorTableSize, - new int[] {0}, null - ) - ), false); + readVP8Lossless( + Raster.createInterleavedRaster( + new DataBufferByte(colorTable, colorTableSize * 4), + colorTableSize, 1, colorTableSize * 4, + 4, new int[] {0, 1, 2, 3}, null) + , false); - // TODO: We may not really need this value... - // What we need is the number of pixels packed into each green sample (byte) - int widthBits = colorTableSize > 16 ? 0 : - colorTableSize > 4 ? 1 : - colorTableSize > 2 ? 2 : 3; + + //resolve subtraction code + for (int i = 4; i < colorTable.length; i++) { + colorTable[i] += colorTable[i - 4]; + } + + // The number of pixels packed into each green sample (byte) + byte widthBits = (byte) (colorTableSize > 16 ? 0 : + colorTableSize > 4 ? 1 : + colorTableSize > 2 ? 2 : 3); xSize = subSampleSize(xSize, widthBits); - /* - // TODO: read ARGB - int argb = 0; - - // Inverse transform - // TODO: Expand to mutliple pixels? - argb = colorTable[GREEN(argb)]; - */ - + // The colors components are stored in ARGB order at 4*index, 4*index + 1, 4*index + 2, 4*index + 3 // TODO: Can we use this to produce an image with IndexColorModel instead of expanding the values in-memory? - transforms.add(new Transform(transformType, colorTable)); + transforms.add(0, new ColorIndexingTransform(colorTable, widthBits)); break; } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java new file mode 100644 index 00000000..32d16009 --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java @@ -0,0 +1,18 @@ +package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; + +import java.awt.image.*; + +public class ColorIndexingTransform implements Transform { + + private final byte[] colorTable; + private final byte bits; + + public ColorIndexingTransform(byte[] colorTable, byte bits) { + this.colorTable = colorTable; + this.bits = bits; + } + + @Override + public void applyInverse(WritableRaster raster) { + } +} diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java new file mode 100644 index 00000000..6ecb8e73 --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java @@ -0,0 +1,17 @@ +package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; + +import java.awt.image.*; + +public class ColorTransform implements Transform { + private final Raster data; + private final byte bits; + + public ColorTransform(Raster raster, byte bits) { + this.data = raster; + this.bits = bits; + } + + @Override + public void applyInverse(WritableRaster raster) { + } +} diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/PredictorMode.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorMode.java similarity index 97% rename from imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/PredictorMode.java rename to imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorMode.java index 907c4ed2..d3e0bca1 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/PredictorMode.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorMode.java @@ -29,7 +29,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ -package com.twelvemonkeys.imageio.plugins.webp.lossless; +package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; /** * PredictorMode. diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java new file mode 100644 index 00000000..10d80911 --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java @@ -0,0 +1,17 @@ +package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; + +import java.awt.image.*; + +public class PredictorTransform implements Transform { + private final Raster data; + private final byte bits; + + public PredictorTransform(Raster raster, byte bits) { + this.data = raster; + this.bits = bits; + } + + @Override + public void applyInverse(WritableRaster raster) { + } +} diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java new file mode 100644 index 00000000..63a5b982 --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java @@ -0,0 +1,11 @@ +package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; + +import java.awt.image.*; + +public class SubtractGreenTransform implements Transform { + + + @Override + public void applyInverse(WritableRaster raster) { + } +} diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/Transform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/Transform.java similarity index 82% rename from imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/Transform.java rename to imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/Transform.java index d4aafa74..98394f1e 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/Transform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/Transform.java @@ -29,27 +29,16 @@ * POSSIBILITY OF SUCH DAMAGE. */ -package com.twelvemonkeys.imageio.plugins.webp.lossless; +package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; + +import java.awt.image.WritableRaster; /** * Transform. * * @author Harald Kuhr */ -final class Transform { - final int type; - final Object data; +public interface Transform { - Transform(final int type, final Object data) { - this.type = type; - this.data = data; - } - - byte[] getData() { - return (byte[]) data; - } - - int[] getColorMap() { - return (int[]) data; - } + void applyInverse(WritableRaster raster); } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/TransformType.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/TransformType.java similarity index 94% rename from imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/TransformType.java rename to imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/TransformType.java index 525a6fa8..18ba23e6 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/TransformType.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/TransformType.java @@ -29,7 +29,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ -package com.twelvemonkeys.imageio.plugins.webp.lossless; +package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; /** * TransformType. @@ -37,7 +37,7 @@ package com.twelvemonkeys.imageio.plugins.webp.lossless; * @author Harald Kuhr */ // Hmm.. Why doesn't SUBTRACT_GREEN follow the convention? -interface TransformType { +public interface TransformType { int PREDICTOR_TRANSFORM = 0; int COLOR_TRANSFORM = 1; int SUBTRACT_GREEN = 2; From 008e57a7cebca5cc0d88c23f083060e4c9e64933 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 17:31:57 +0200 Subject: [PATCH 04/16] Move helper methods to transforms needing them --- .../plugins/webp/lossless/VP8LDecoder.java | 137 ------------------ .../lossless/transform/ColorTransform.java | 72 +++++++++ .../transform/PredictorTransform.java | 55 +++++++ .../transform/SubtractGreenTransform.java | 5 + 4 files changed, 132 insertions(+), 137 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index 23bd8444..bde0bb5e 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -46,7 +46,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; -import static java.lang.Math.*; /** * VP8LDecoder. @@ -196,143 +195,7 @@ public final class VP8LDecoder { } - //// - - // FROM the spec - private static int divRoundUp(final int numerator, final int denominator) { - return (numerator + denominator - 1) / denominator; - } - private static int subSampleSize(final int size, final int samplingBits) { return (size + (1 << samplingBits) - 1) >> samplingBits; } - - private static int ALPHA(final int ARGB) { - return ARGB >>> 24; - } - - private static int RED(final int ARGB) { - return (ARGB >> 16) & 0xff; - } - - private static int GREEN(final int ARGB) { - return (ARGB >> 8) & 0xff; - } - - private static int BLUE(final int ARGB) { - return ARGB & 0xff; - } - - private static int select(final int L, final int T, final int TL) { - // L = left pixel, T = top pixel, TL = top left pixel. - - // ARGB component estimates for prediction. - int pAlpha = ALPHA(L) + ALPHA(T) - ALPHA(TL); - int pRed = RED(L) + RED(T) - RED(TL); - int pGreen = GREEN(L) + GREEN(T) - GREEN(TL); - int pBlue = BLUE(L) + BLUE(T) - BLUE(TL); - - // Manhattan distances to estimates for left and top pixels. - int pL = abs(pAlpha - ALPHA(L)) + abs(pRed - RED(L)) + - abs(pGreen - GREEN(L)) + abs(pBlue - BLUE(L)); - int pT = abs(pAlpha - ALPHA(T)) + abs(pRed - RED(T)) + - abs(pGreen - GREEN(T)) + abs(pBlue - BLUE(T)); - - // Return either left or top, the one closer to the prediction. - return pL < pT ? L : T; - } - - private static int average2(final int a, final int b) { - return (a + b) / 2; - } - - // Clamp the input value between 0 and 255. - private static int clamp(final int a) { - return max(0, min(a, 255)); - } - - private static int clampAddSubtractFull(final int a, final int b, final int c) { - return clamp(a + b - c); - } - - private static int clampAddSubtractHalf(final int a, final int b) { - return clamp(a + (a - b) / 2); - } - - static final class ColorTransformElement { - final int green_to_red; - final int green_to_blue; - final int red_to_blue; - - ColorTransformElement(final int green_to_red, final int green_to_blue, final int red_to_blue) { - this.green_to_red = green_to_red; - this.green_to_blue = green_to_blue; - this.red_to_blue = red_to_blue; - } - } - - // NOTE: For encoding! - private static void colorTransform(final int red, final int blue, final int green, - final ColorTransformElement trans, - final int[] newRedBlue) { - // Transformed values of red and blue components - int tmp_red = red; - int tmp_blue = blue; - - // Applying transform is just adding the transform deltas - tmp_red += colorTransformDelta((byte) trans.green_to_red, (byte) green); - tmp_blue += colorTransformDelta((byte) trans.green_to_blue, (byte) green); - tmp_blue += colorTransformDelta((byte) trans.red_to_blue, (byte) red); - - // No pointer dereferences in Java... - // TODO: Consider passing an offset too, so we can modify in-place - newRedBlue[0] = tmp_red & 0xff; - newRedBlue[1] = tmp_blue & 0xff; - } - - // A conversion from the 8-bit unsigned representation (uint8) to the 8-bit - // signed one (int8) is required before calling ColorTransformDelta(). It - // should be performed using 8-bit two's complement (that is: uint8 range - // [128-255] is mapped to the [-128, -1] range of its converted int8 - // value). - private static byte colorTransformDelta(final byte t, final byte c) { - return (byte) ((t * c) >> 5); - } - - private static void inverseTransform(final byte red, final byte green, final byte blue, - final ColorTransformElement trans, - final int[] newRedBlue) { - // Applying inverse transform is just subtracting the - // color transform deltas - // Transformed values of red and blue components - int tmp_red = red; - int tmp_blue = blue; - - tmp_red -= colorTransformDelta((byte) trans.green_to_red, green); - tmp_blue -= colorTransformDelta((byte) trans.green_to_blue, green); - tmp_blue -= colorTransformDelta((byte) trans.red_to_blue, red); // Spec has red & 0xff - - newRedBlue[0] = tmp_red & 0xff; - newRedBlue[1] = tmp_blue & 0xff; - } - - private static void inverseTransform(final byte[] rgb, final ColorTransformElement trans) { - // Applying inverse transform is just subtracting the - // color transform deltas - // Transformed values of red and blue components - int tmp_red = rgb[0]; - int tmp_blue = rgb[2]; - - tmp_red -= colorTransformDelta((byte) trans.green_to_red, rgb[1]); - tmp_blue -= colorTransformDelta((byte) trans.green_to_blue, rgb[1]); - tmp_blue -= colorTransformDelta((byte) trans.red_to_blue, rgb[0]); // Spec has red & 0xff - - rgb[0] = (byte) (tmp_red & 0xff); - rgb[2] = (byte) (tmp_blue & 0xff); - } - - private static void addGreenToBlueAndRed(byte[] rgb) { - rgb[0] = (byte) ((rgb[0] + rgb[1]) & 0xff); - rgb[2] = (byte) ((rgb[2] + rgb[1]) & 0xff); - } } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java index 6ecb8e73..2623e946 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java @@ -14,4 +14,76 @@ public class ColorTransform implements Transform { @Override public void applyInverse(WritableRaster raster) { } + + // NOTE: For encoding! + private static void colorTransform(final int red, final int blue, final int green, + final ColorTransformElement trans, + final int[] newRedBlue) { + // Transformed values of red and blue components + int tmp_red = red; + int tmp_blue = blue; + + // Applying transform is just adding the transform deltas + tmp_red += colorTransformDelta((byte) trans.green_to_red, (byte) green); + tmp_blue += colorTransformDelta((byte) trans.green_to_blue, (byte) green); + tmp_blue += colorTransformDelta((byte) trans.red_to_blue, (byte) red); + + // No pointer dereferences in Java... + // TODO: Consider passing an offset too, so we can modify in-place + newRedBlue[0] = tmp_red & 0xff; + newRedBlue[1] = tmp_blue & 0xff; + } + + // A conversion from the 8-bit unsigned representation (uint8) to the 8-bit + // signed one (int8) is required before calling ColorTransformDelta(). It + // should be performed using 8-bit two's complement (that is: uint8 range + // [128-255] is mapped to the [-128, -1] range of its converted int8 + // value). + private static byte colorTransformDelta(final byte t, final byte c) { + return (byte) ((t * c) >> 5); + } + + private static void inverseTransform(final byte red, final byte green, final byte blue, + final ColorTransformElement trans, + final int[] newRedBlue) { + // Applying inverse transform is just subtracting the + // color transform deltas + // Transformed values of red and blue components + int tmp_red = red; + int tmp_blue = blue; + + tmp_red -= colorTransformDelta((byte) trans.green_to_red, green); + tmp_blue -= colorTransformDelta((byte) trans.green_to_blue, green); + tmp_blue -= colorTransformDelta((byte) trans.red_to_blue, red); // Spec has red & 0xff + + newRedBlue[0] = tmp_red & 0xff; + newRedBlue[1] = tmp_blue & 0xff; + } + + private static void inverseTransform(final byte[] rgb, final ColorTransformElement trans) { + // Applying inverse transform is just subtracting the + // color transform deltas + // Transformed values of red and blue components + int tmp_red = rgb[0]; + int tmp_blue = rgb[2]; + + tmp_red -= colorTransformDelta((byte) trans.green_to_red, rgb[1]); + tmp_blue -= colorTransformDelta((byte) trans.green_to_blue, rgb[1]); + tmp_blue -= colorTransformDelta((byte) trans.red_to_blue, rgb[0]); // Spec has red & 0xff + + rgb[0] = (byte) (tmp_red & 0xff); + rgb[2] = (byte) (tmp_blue & 0xff); + } + + static final class ColorTransformElement { + final int green_to_red; + final int green_to_blue; + final int red_to_blue; + + ColorTransformElement(final int green_to_red, final int green_to_blue, final int red_to_blue) { + this.green_to_red = green_to_red; + this.green_to_blue = green_to_blue; + this.red_to_blue = red_to_blue; + } + } } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java index 10d80911..711e1cf3 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java @@ -2,6 +2,8 @@ package com.twelvemonkeys.imageio.plugins.webp.lossless.transform; import java.awt.image.*; +import static java.lang.Math.*; + public class PredictorTransform implements Transform { private final Raster data; private final byte bits; @@ -14,4 +16,57 @@ public class PredictorTransform implements Transform { @Override public void applyInverse(WritableRaster raster) { } + + private static int ALPHA(final int ARGB) { + return ARGB >>> 24; + } + + private static int RED(final int ARGB) { + return (ARGB >> 16) & 0xff; + } + + private static int GREEN(final int ARGB) { + return (ARGB >> 8) & 0xff; + } + + private static int BLUE(final int ARGB) { + return ARGB & 0xff; + } + + private static int select(final int L, final int T, final int TL) { + // L = left pixel, T = top pixel, TL = top left pixel. + + // ARGB component estimates for prediction. + int pAlpha = ALPHA(L) + ALPHA(T) - ALPHA(TL); + int pRed = RED(L) + RED(T) - RED(TL); + int pGreen = GREEN(L) + GREEN(T) - GREEN(TL); + int pBlue = BLUE(L) + BLUE(T) - BLUE(TL); + + // Manhattan distances to estimates for left and top pixels. + int pL = abs(pAlpha - ALPHA(L)) + abs(pRed - RED(L)) + + abs(pGreen - GREEN(L)) + abs(pBlue - BLUE(L)); + int pT = abs(pAlpha - ALPHA(T)) + abs(pRed - RED(T)) + + abs(pGreen - GREEN(T)) + abs(pBlue - BLUE(T)); + + // Return either left or top, the one closer to the prediction. + return pL < pT ? L : T; + } + + private static int average2(final int a, final int b) { + return (a + b) / 2; + } + + // Clamp the input value between 0 and 255. + private static int clamp(final int a) { + return max(0, min(a, 255)); + } + + private static int clampAddSubtractFull(final int a, final int b, final int c) { + return clamp(a + b - c); + } + + private static int clampAddSubtractHalf(final int a, final int b) { + return clamp(a + (a - b) / 2); + } + } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java index 63a5b982..157f723b 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java @@ -5,6 +5,11 @@ import java.awt.image.*; public class SubtractGreenTransform implements Transform { + private static void addGreenToBlueAndRed(byte[] rgb) { + rgb[0] = (byte) ((rgb[0] + rgb[1]) & 0xff); + rgb[2] = (byte) ((rgb[2] + rgb[1]) & 0xff); + } + @Override public void applyInverse(WritableRaster raster) { } From 7ab627a7545a473626921e93bab9a1a87c17900e Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 18:00:09 +0200 Subject: [PATCH 05/16] Setup Huffman Table framework, decode meta groups --- .../plugins/webp/lossless/VP8LDecoder.java | 50 ++++++++++++++++++- .../lossless/huffman/HuffmanCodeGroup.java | 25 ++++++++++ .../webp/lossless/huffman/HuffmanInfo.java | 17 +++++++ .../webp/lossless/huffman/HuffmanTable.java | 16 ++++++ 4 files changed, 106 insertions(+), 2 deletions(-) create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanCodeGroup.java create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanInfo.java create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index bde0bb5e..08415316 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -32,6 +32,8 @@ package com.twelvemonkeys.imageio.plugins.webp.lossless; import com.twelvemonkeys.imageio.plugins.webp.LSBBitReader; +import com.twelvemonkeys.imageio.plugins.webp.lossless.huffman.HuffmanCodeGroup; +import com.twelvemonkeys.imageio.plugins.webp.lossless.huffman.HuffmanInfo; import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.ColorIndexingTransform; import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.ColorTransform; import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.PredictorTransform; @@ -46,6 +48,8 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; +import static com.twelvemonkeys.imageio.util.RasterUtils.asByteRaster; +import static java.lang.Math.max; /** * VP8LDecoder. @@ -83,7 +87,7 @@ public final class VP8LDecoder { } // Read Huffman codes - readHuffmanCodes(colorCacheBits, topLevel); + HuffmanInfo huffmanInfo = readHuffmanCodes(xSize, ySize, colorCacheBits, topLevel); ColorCache colorCache = null; @@ -191,8 +195,50 @@ public final class VP8LDecoder { return xSize; } - private void readHuffmanCodes(int colorCacheBits, boolean allowRecursion) { + private HuffmanInfo readHuffmanCodes(int xSize, int ySize, int colorCacheBits, boolean readMetaCodes) + throws IOException { + int huffmanGroupNum = 1; + int huffmanXSize; + int huffmanYSize; + int metaCodeBits = 0; + + WritableRaster huffmanMetaCodes = null; + if (readMetaCodes && lsbBitReader.readBit() == 1) { + //read in meta codes + metaCodeBits = (int) lsbBitReader.readBits(3) + 2; + huffmanXSize = subSampleSize(xSize, metaCodeBits); + huffmanYSize = subSampleSize(ySize, metaCodeBits); + + //Raster with elements as BARG (only the RG components encode the meta group) + WritableRaster packedRaster = Raster.createPackedRaster(DataBuffer.TYPE_INT, huffmanXSize, huffmanYSize, + new int[] {0x0000ff00, 0x000000ff, 0xff000000, 0x00ff0000}, null); + readVP8Lossless(asByteRaster(packedRaster), false); + + int[] data = ((DataBufferInt) packedRaster.getDataBuffer()).getData(); + //Max metaGroup is number of meta groups + int maxCode = Integer.MIN_VALUE; + for (int code : data) { + maxCode = max(maxCode, code & 0xffff); + } + huffmanGroupNum = maxCode + 1; + + /* + New Raster with just RG components exposed as single band allowing simple access of metaGroupIndex with + x,y lookup + */ + huffmanMetaCodes = Raster.createPackedRaster(packedRaster.getDataBuffer(), huffmanXSize, huffmanYSize, + huffmanXSize, new int[] {0xffff}, null); + + } + + HuffmanCodeGroup[] huffmanGroups = new HuffmanCodeGroup[huffmanGroupNum]; + + for (int i = 0; i < huffmanGroups.length; i++) { + huffmanGroups[i] = new HuffmanCodeGroup(lsbBitReader, colorCacheBits); + } + + return new HuffmanInfo(huffmanMetaCodes, metaCodeBits, huffmanGroups); } private static int subSampleSize(final int size, final int samplingBits) { diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanCodeGroup.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanCodeGroup.java new file mode 100644 index 00000000..bc1a629a --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanCodeGroup.java @@ -0,0 +1,25 @@ +package com.twelvemonkeys.imageio.plugins.webp.lossless.huffman; + +import com.twelvemonkeys.imageio.plugins.webp.LSBBitReader; + +import java.io.IOException; + +public class HuffmanCodeGroup { + /** + * Used for green, backward reference length and color cache + */ + public final HuffmanTable mainCode; + + public final HuffmanTable redCode; + public final HuffmanTable blueCode; + public final HuffmanTable alphaCode; + public final HuffmanTable distanceCode; + + public HuffmanCodeGroup(LSBBitReader lsbBitReader, int colorCacheBits) throws IOException { + mainCode = new HuffmanTable(lsbBitReader, 256 + 24 + (colorCacheBits > 0 ? 1 << colorCacheBits : 0)); + redCode = new HuffmanTable(lsbBitReader, 256); + blueCode = new HuffmanTable(lsbBitReader, 256); + alphaCode = new HuffmanTable(lsbBitReader, 256); + distanceCode = new HuffmanTable(lsbBitReader, 40); + } +} diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanInfo.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanInfo.java new file mode 100644 index 00000000..c06bc8ed --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanInfo.java @@ -0,0 +1,17 @@ +package com.twelvemonkeys.imageio.plugins.webp.lossless.huffman; + +import java.awt.image.*; + +public class HuffmanInfo { + public Raster huffmanMetaCodes; //Raster allows intuitive lookup by x and y + + public int metaCodeBits; + + public HuffmanCodeGroup[] huffmanGroups; + + public HuffmanInfo(Raster huffmanMetaCodes, int metaCodeBits, HuffmanCodeGroup[] huffmanGroups) { + this.huffmanMetaCodes = huffmanMetaCodes; + this.metaCodeBits = metaCodeBits; + this.huffmanGroups = huffmanGroups; + } +} \ No newline at end of file diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java new file mode 100644 index 00000000..ae53ea57 --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java @@ -0,0 +1,16 @@ +package com.twelvemonkeys.imageio.plugins.webp.lossless.huffman; + +import com.twelvemonkeys.imageio.plugins.webp.LSBBitReader; + +import java.io.IOException; + + +public class HuffmanTable { + + + public HuffmanTable(LSBBitReader lsbBitReader, int alphabetSize) throws IOException { + + } + + +} From b3004a12279e48180bd46fa12d4bd5c103c88d59 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 18:11:32 +0200 Subject: [PATCH 06/16] Implement buffering in LSBBitReader This optimizes away the constant re-reading of bytes. Also allows peeking at coming bits without consuming them. --- .../imageio/plugins/webp/LSBBitReader.java | 145 ++++++++++++++---- 1 file changed, 113 insertions(+), 32 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/LSBBitReader.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/LSBBitReader.java index ab19f722..c8eff70c 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/LSBBitReader.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/LSBBitReader.java @@ -11,46 +11,127 @@ public final class LSBBitReader { // TODO: Consider creating an ImageInputStream wrapper with the WebP implementation of readBit(s)? private final ImageInputStream imageInput; - int bitOffset = 0; + private int bitOffset = 64; + private long streamPosition = -1; + + /** + * Pre buffers up to the next 8 Bytes in input. + * Contains valid bits in bits 63 to {@code bitOffset} (inclusive). + * Should always be refilled to have at least 56 valid bits (if possible) + */ + private long buffer; public LSBBitReader(ImageInputStream imageInput) { this.imageInput = imageInput; } - // TODO: Optimize this... Read many bits at once! + /** + * Reads the specified number of bits from the stream in an LSB-first way and advances the bitOffset. + * The underlying ImageInputStream will be advanced to the first not (completely) read byte. + * Requesting more than 64 bits will advance the reader by the correct amount and return the lowest 64 bits of + * the read number + * + * @param bits the number of bits to read + * @return a signed long built from the requested bits (truncated to the low 64 bits) + * @throws IOException if an I/O error occurs + * @see LSBBitReader#peekBits + */ public long readBits(int bits) throws IOException { - long result = 0; - for (int i = 0; i < bits; i++) { - result |= (long) readBit() << i; - } - - return result; + return readBits(bits, false); } - // TODO: Optimize this... - // TODO: Consider not reading value over and over.... + /** + * Reads the specified number of bits from the buffer in an LSB-first way. + * Does not advance the bitOffset or the underlying input stream. + * As only 56 bits are buffered (in the worst case) peeking more is not possible without advancing the reader and + * as such disallowed. + * + * @param bits the number of bits to peek (max 56) + * @return a signed long built from the requested bits + * @throws IOException if an I/O error occurs + * @see LSBBitReader#readBits + */ + public long peekBits(int bits) throws IOException { + if (bits > 56) { + throw new IllegalArgumentException("Tried peeking over 56"); + } + return readBits(bits, true); + } + + //Driver + private long readBits(int bits, boolean peek) throws IOException { + if (bits <= 56) { + + /* + Could eliminate if we never read from the underlying InputStream outside this class after the object is + created + */ + long inputStreamPosition = imageInput.getStreamPosition(); + if (streamPosition != inputStreamPosition) { + //Need to reset buffer as stream was read in the meantime + resetBuffer(); + } + + long ret = (buffer >>> bitOffset) & ((1L << bits) - 1); + + if (!peek) { + bitOffset += bits; + refillBuffer(); + } + + return ret; + } + else { + //FIXME Untested + long lower = readBits(56); + return (readBits(bits - 56) << (56)) | lower; + } + } + + private void refillBuffer() throws IOException { + + //Set to stream position consistent with buffered bytes + imageInput.seek(streamPosition + 8); + for (; bitOffset >= 8; bitOffset -= 8) { + try { + byte b = imageInput.readByte(); + buffer >>>= 8; + streamPosition++; + buffer |= ((long) b << 56); + } + catch (EOFException e) { + imageInput.seek(streamPosition); + return; + } + } + /* + Reset to guarantee stream position consistent with returned bytes + Would not need to do this seeking around when the underlying ImageInputStream is never read from outside + this class after the object is created. + */ + imageInput.seek(streamPosition); + } + + private void resetBuffer() throws IOException { + + long inputStreamPosition = imageInput.getStreamPosition(); + try { + buffer = imageInput.readLong(); + bitOffset = 0; + streamPosition = inputStreamPosition; + imageInput.seek(inputStreamPosition); + } + catch (EOFException e) { + //Retry byte by byte + streamPosition = inputStreamPosition - 8; + bitOffset = 64; + refillBuffer(); + } + + } + + //Left for backwards compatibility / Compatibility with ImageInputStream interface public int readBit() throws IOException { - int bit = 7 - bitOffset; - - imageInput.setBitOffset(bit); - - // Compute final bit offset before we call read() and seek() - int newBitOffset = (bitOffset + 1) & 0x7; - - int val = imageInput.read(); - if (val == -1) { - throw new EOFException(); - } - - if (newBitOffset != 0) { - // Move byte position back if in the middle of a byte - // NOTE: RESETS bit offset! - imageInput.seek(imageInput.getStreamPosition() - 1); - } - - bitOffset = newBitOffset; - - // Shift the bit to be read to the rightmost position - return (val >> (7 - bit)) & 0x1; + return (int) readBits(1); } } From 0ed024676292933166b7ebd42e78f040baf90cd3 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 18:13:14 +0200 Subject: [PATCH 07/16] Implement Huffman Table parsing and decoding Uses a 2 level table approach inspired by libwebp --- .../webp/lossless/huffman/HuffmanTable.java | 320 +++++++++++++++++- 1 file changed, 319 insertions(+), 1 deletion(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java index ae53ea57..f0130357 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/huffman/HuffmanTable.java @@ -2,15 +2,333 @@ package com.twelvemonkeys.imageio.plugins.webp.lossless.huffman; import com.twelvemonkeys.imageio.plugins.webp.LSBBitReader; +import javax.imageio.IIOException; import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; - +/** + * Represents a single huffman tree as a table. + *

+ * Decoding a symbol just involves reading bits from the input stream and using that read value to index into the + * lookup table. + *

+ * Code length and the corresponding symbol are packed into one array element (int). + * This is done to avoid the overhead and the fragmentation over the whole heap involved with creating objects + * of a custom class. The upper 16 bits of each element are the code length and lower 16 bits are the symbol. + *

+ * The max allowed code length by the WEBP specification is 15, therefore this would mean the table needs to have + * 2^15 elements. To keep a reasonable memory usage, instead the lookup table only directly holds symbols with code + * length up to {@code LEVEL1_BITS} (Currently 8 bits). For longer codes the lookup table stores a reference to a + * second level lookup table. This reference consists of an element with length as the max length of the level 2 + * table and value as the index of the table in the list of level 2 tables. + *

+ * Reading bits from the input is done in a least significant bit first way (LSB) way, therefore the prefix of the + * read value of length i is the lowest i bits in inverse order. + * The lookup table is directly indexed by the {@code LEVEL1_BITS} next bits read from the input (i.e. the bits + * corresponding to next code are inverse suffix of the read value/index). + * So for a code length of l all values with the lowest l bits the same need to decode to the same symbol + * regardless of the {@code (LEVEL1_BITS - l)} higher bits. So the lookup table needs to have the entry of this symbol + * repeated every 2^(l + 1) spots starting from the bitwise inverse of the code. + */ public class HuffmanTable { + private static final int LEVEL1_BITS = 8; + /** + * Symbols of the L-code in the order they need to be read + */ + private static final int[] L_CODE_ORDER = {17, 18, 0, 1, 2, 3, 4, 5, 16, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}; + private final int[] level1 = new int[1 << LEVEL1_BITS]; + private final List level2 = new ArrayList<>(); + /** + * Build a Huffman table by reading the encoded symbol lengths from the reader + * + * @param lsbBitReader the reader to read from + * @param alphabetSize the number of symbols in the alphabet to be decoded by this huffman table + * @throws IOException when reading produces an exception + */ public HuffmanTable(LSBBitReader lsbBitReader, int alphabetSize) throws IOException { + boolean simpleLengthCode = lsbBitReader.readBit() == 1; + + if (simpleLengthCode) { + int symbolNum = lsbBitReader.readBit() + 1; + boolean first8Bits = lsbBitReader.readBit() == 1; + short symbol1 = (short) lsbBitReader.readBits(first8Bits ? 8 : 1); + + if (symbolNum == 2) { + short symbol2 = (short) lsbBitReader.readBits(8); + + for (int i = 0; i < (1 << LEVEL1_BITS); i += 2) { + level1[i] = 1 << 16 | symbol1; + level1[i + 1] = 1 << 16 | symbol2; + } + } + else { + Arrays.fill(level1, symbol1); + } + } + else { + /* + code lengths also huffman coded + first read the "first stage" code lengths + In the following this is called the L-Code (for length code) + */ + int numLCodeLengths = (int) (lsbBitReader.readBits(4) + 4); + short[] lCodeLengths = new short[L_CODE_ORDER.length]; + int numPosCodeLens = 0; + + for (int i = 0; i < numLCodeLengths; i++) { + short len = (short) lsbBitReader.readBits(3); + lCodeLengths[L_CODE_ORDER[i]] = len; + if (len > 0) { + numPosCodeLens++; + } + + } + + //Use L-Code to read the actual code lengths + short[] codeLengths = readCodeLengths(lsbBitReader, lCodeLengths, alphabetSize, numPosCodeLens); + + + buildFromLengths(codeLengths); + } + } + + /** + * Builds a Huffman table by using already given code lengths to generate the codes from + * + * @param codeLengths the array specifying the bit length of the code for a symbol (i.e. {@code codeLengths[i]} + * is the bit length of the code for the symbol i) + * @param numPosCodeLens the number of positive (i.e. non-zero) codeLengths in the array (allows more efficient + * table generation) + */ + private HuffmanTable(short[] codeLengths, int numPosCodeLens) { + buildFromLengths(codeLengths, numPosCodeLens); } + /* + Helper methods to allow reusing in different constructors + */ + + private void buildFromLengths(short[] codeLengths) { + int numPosCodeLens = 0; + for (short codeLength : codeLengths) { + if (codeLength != 0) { + numPosCodeLens++; + } + } + buildFromLengths(codeLengths, numPosCodeLens); + } + + private void buildFromLengths(short[] codeLengths, int numPosCodeLens) { + + //Pack code length and corresponding symbols as described above + + int[] lengthsAndSymbols = new int[numPosCodeLens]; + + int index = 0; + for (int i = 0; i < codeLengths.length; i++) { + if (codeLengths[i] != 0) { + lengthsAndSymbols[index++] = codeLengths[i] << 16 | i; + } + } + + //Special case: Only 1 code value + if (numPosCodeLens == 1) { + //Length is 0 so mask to clear length bits + Arrays.fill(level1, lengthsAndSymbols[0] & 0xffff); + } + + //Due to the layout of the elements this effectively first sorts by length and then symbol. + Arrays.sort(lengthsAndSymbols); + + /* + The next code, in the bit order it would appear on the input stream, i.e. it is reversed. + Only the lowest bits (corresponding to the bit length of the code) are considered. + Example: code 0..010 (length 2) would appear as 0..001. + */ + int code = 0; + + //Used for level2 lookup + int rootEntry = -1; + int[] currentTable = null; + + for (int i = 0; i < lengthsAndSymbols.length; i++) { + + int lengthAndSymbol = lengthsAndSymbols[i]; + + int length = lengthAndSymbol >>> 16; + + if (length <= LEVEL1_BITS) { + for (int j = code; j < level1.length; j += 1 << length) { + level1[j] = lengthAndSymbol; + } + } + else { + //Existing level2 table not fitting + if ((code & ((1 << LEVEL1_BITS) - 1)) != rootEntry) { + /* + Figure out needed table size. + Start at current symbol and length. + Every symbol uses 1 slot at the current bit length. + Going up 1 bit in length multiplies the slots by 2. + No more open slots indicate the table size to be big enough. + */ + int maxLength = length; + for (int j = i, openSlots = 1 << (length - LEVEL1_BITS); + j < lengthsAndSymbols.length && openSlots > 0; + j++, openSlots--) { + + int innerLength = lengthsAndSymbols[j] >>> 16; + + while (innerLength != maxLength) { + maxLength++; + openSlots <<= 1; + } + } + + int level2Size = maxLength - LEVEL1_BITS; + + currentTable = new int[1 << level2Size]; + rootEntry = code & ((1 << LEVEL1_BITS) - 1); + level2.add(currentTable); + + //Set root table indirection + level1[rootEntry] = (LEVEL1_BITS + level2Size) << 16 | (level2.size() - 1); + } + + //Add to existing (or newly generated) 2nd level table + for (int j = (code >>> LEVEL1_BITS); j < currentTable.length; j += 1 << (length - LEVEL1_BITS)) { + currentTable[j] = (length - LEVEL1_BITS) << 16 | (lengthAndSymbol & 0xffff); + } + } + + code = nextCode(code, length); + + } + } + + /** + * Computes the next code + * + * @param code the current code + * @param length the currently valid length + * @return {@code reverse(reverse(code, length) + 1, length)} where {@code reverse(a, b)} is the lowest b bits of + * a in inverted order + */ + private int nextCode(int code, int length) { + int a = (~code) & ((1 << length) - 1); + + //This will result in the highest 0-bit in the lower length bits of code set (by construction of a) + //I.e. the lowest 0-bit in the value code represents + int step = Integer.highestOneBit(a); + + //In the represented value this clears the consecutive 1-bits starting at bit 0 and then sets the lowest 0 bit + //This corresponds to adding 1 to the value + return (code & (step - 1)) | step; + } + + private static short[] readCodeLengths(LSBBitReader lsbBitReader, short[] aCodeLengths, int alphabetSize, + int numPosCodeLens) throws IOException { + + HuffmanTable huffmanTable = new HuffmanTable(aCodeLengths, numPosCodeLens); + + //Not sure where this comes from. Just adapted from the libwebp implementation + int codedSymbols; + if (lsbBitReader.readBit() == 1) { + int maxSymbolBitLength = (int) (2 + 2 * lsbBitReader.readBits(3)); + codedSymbols = (int) (2 + lsbBitReader.readBits(maxSymbolBitLength)); + } + else { + codedSymbols = alphabetSize; + } + + short[] codeLengths = new short[alphabetSize]; + + //Default code for repeating + short prevLength = 8; + + for (int i = 0; i < alphabetSize && codedSymbols > 0; i++, codedSymbols--) { + short len = huffmanTable.readSymbol(lsbBitReader); + + if (len < 16) { //Literal length + codeLengths[i] = len; + if (len != 0) { + prevLength = len; + } + } + else { + short repeatSymbol = 0; + int extraBits; + int repeatOffset; + + switch (len) { + case 16: //Repeat previous + repeatSymbol = prevLength; + extraBits = 2; + repeatOffset = 3; + break; + case 17: //Repeat 0 short + extraBits = 3; + repeatOffset = 3; + break; + case 18: //Repeat 0 long + extraBits = 7; + repeatOffset = 11; + break; + default: + throw new IIOException("Huffman: Unreachable: Decoded Code Length > 18."); + } + + int repeatCount = (int) (lsbBitReader.readBits(extraBits) + repeatOffset); + + + if (i + repeatCount > alphabetSize) { + throw new IIOException( + String.format( + "Huffman: Code length repeat count overflows alphabet: Start index: %d, count: " + + "%d, alphabet size: %d", i, repeatCount, alphabetSize) + ); + } + + Arrays.fill(codeLengths, i, i + repeatCount, repeatSymbol); + i += repeatCount - 1; + + } + } + + + return codeLengths; + } + + /** + * Reads the next code symbol from the streaming and decode it using the Huffman table + * + * @param lsbBitReader the reader to read a symbol from (will be advanced accordingly) + * @return the decoded symbol + * @throws IOException when the reader throws one reading a symbol + */ + public short readSymbol(LSBBitReader lsbBitReader) throws IOException { + + int index = (int) lsbBitReader.peekBits(LEVEL1_BITS); + int lengthAndSymbol = level1[index]; + + int length = lengthAndSymbol >>> 16; + + if (length > LEVEL1_BITS) { + //Lvl2 lookup + lsbBitReader.readBits(LEVEL1_BITS); //Consume bits of first level + int level2Index = (int) lsbBitReader.peekBits(length - LEVEL1_BITS); //Peek remaining required bits + lengthAndSymbol = level2.get(lengthAndSymbol & 0xffff)[level2Index]; + length = lengthAndSymbol >>> 16; + } + + lsbBitReader.readBits(length); //Consume bits + + return (short) (lengthAndSymbol & 0xffff); + } } From fafa58b7183f74fa34ea98ead16771e126ef8598 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Mon, 29 Aug 2022 18:46:52 +0200 Subject: [PATCH 08/16] Implement actual decoding including resolving backward refs and cache --- .../plugins/webp/lossless/VP8LDecoder.java | 168 +++++++++++++++++- 1 file changed, 167 insertions(+), 1 deletion(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index 08415316..3b4621e8 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -57,6 +57,25 @@ import static java.lang.Math.max; * @author Harald Kuhr */ public final class VP8LDecoder { + + /** + * Used for decoding backward references + * Upper 4Bits are y distance, lower 4 Bits are 8 minus x distance + */ + private final static byte[] DISTANCES = { + 0x18, 0x07, 0x17, 0x19, 0x28, 0x06, 0x27, 0x29, 0x16, 0x1a, + 0x26, 0x2a, 0x38, 0x05, 0x37, 0x39, 0x15, 0x1b, 0x36, 0x3a, + 0x25, 0x2b, 0x48, 0x04, 0x47, 0x49, 0x14, 0x1c, 0x35, 0x3b, + 0x46, 0x4a, 0x24, 0x2c, 0x58, 0x45, 0x4b, 0x34, 0x3c, 0x03, + 0x57, 0x59, 0x13, 0x1d, 0x56, 0x5a, 0x23, 0x2d, 0x44, 0x4c, + 0x55, 0x5b, 0x33, 0x3d, 0x68, 0x02, 0x67, 0x69, 0x12, 0x1e, + 0x66, 0x6a, 0x22, 0x2e, 0x54, 0x5c, 0x43, 0x4d, 0x65, 0x6b, + 0x32, 0x3e, 0x78, 0x01, 0x77, 0x79, 0x53, 0x5d, 0x11, 0x1f, + 0x64, 0x6c, 0x42, 0x4e, 0x76, 0x7a, 0x21, 0x2f, 0x75, 0x7b, + 0x31, 0x3f, 0x63, 0x6d, 0x52, 0x5e, 0x00, 0x74, 0x7c, 0x41, + 0x4f, 0x10, 0x20, 0x62, 0x6e, 0x30, 0x73, 0x7d, 0x51, 0x5f, + 0x40, 0x72, 0x7e, 0x61, 0x6f, 0x50, 0x71, 0x7f, 0x60, 0x70 + }; private final ImageInputStream imageInput; private final LSBBitReader lsbBitReader; @@ -95,8 +114,155 @@ public final class VP8LDecoder { colorCache = new ColorCache(colorCacheBits); } + //If multiple indices packed into one pixel xSize is different from raster width + WritableRaster writableChild = raster.createWritableChild(0, 0, xSize, ySize, 0, 0, null); + // Use the Huffman trees to decode the LZ77 encoded data. -// decodeImageData(raster, ) + decodeImage(writableChild, huffmanInfo, colorCache); + + } + + private void decodeImage(WritableRaster raster, HuffmanInfo huffmanInfo, ColorCache colorCache) throws IOException { + int width = raster.getWidth(); + int height = raster.getHeight(); + + int huffmanMask = huffmanInfo.metaCodeBits == 0 ? -1 : ((1 << huffmanInfo.metaCodeBits) - 1); + HuffmanCodeGroup curCodeGroup = huffmanInfo.huffmanGroups[0]; + + byte[] rgba = new byte[4]; + + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + + if ((x & huffmanMask) == 0 && huffmanInfo.huffmanMetaCodes != null) { + //Crossed border into new metaGroup + int index = huffmanInfo.huffmanMetaCodes.getSample(x >> huffmanInfo.metaCodeBits, y >> huffmanInfo.metaCodeBits, 0); + curCodeGroup = huffmanInfo.huffmanGroups[index]; + } + + short code = curCodeGroup.mainCode.readSymbol(lsbBitReader); + + if (code < 256) { //Literal + decodeLiteral(raster, colorCache, curCodeGroup, rgba, y, x, code); + + } + else if (code < 256 + 24) { //backward reference + + int length = decodeBwRef(raster, colorCache, width, curCodeGroup, rgba, code, x, y); + + //Decrement one because for loop already increments by one + x--; + y = y + ((x + length) / width); + x = (x + length) % width; + + + //Reset Huffman meta group + if (y < height && x < width && huffmanInfo.huffmanMetaCodes != null) { + int index = huffmanInfo.huffmanMetaCodes.getSample(x >> huffmanInfo.metaCodeBits, y >> huffmanInfo.metaCodeBits, 0); + curCodeGroup = huffmanInfo.huffmanGroups[index]; + } + + + } + else { //colorCache + //Color cache should never be null here + assert colorCache != null; + decodeCached(raster, colorCache, rgba, y, x, code); + + } + } + } + } + + private void decodeCached(WritableRaster raster, ColorCache colorCache, byte[] rgba, int y, int x, short code) { + + int argb = colorCache.lookup(code - 256 - 24); + + rgba[0] = (byte) ((argb >> 16) & 0xff); + rgba[1] = (byte) ((argb >> 8) & 0xff); + rgba[2] = (byte) (argb & 0xff); + rgba[3] = (byte) (argb >>> 24); + + raster.setDataElements(x, y, rgba); + } + + private void decodeLiteral(WritableRaster raster, ColorCache colorCache, HuffmanCodeGroup curCodeGroup, byte[] rgba, int y, int x, short code) throws IOException { + byte red = (byte) curCodeGroup.redCode.readSymbol(lsbBitReader); + byte blue = (byte) curCodeGroup.blueCode.readSymbol(lsbBitReader); + byte alpha = (byte) curCodeGroup.alphaCode.readSymbol(lsbBitReader); + rgba[0] = red; + rgba[1] = (byte) code; + rgba[2] = blue; + rgba[3] = alpha; + raster.setDataElements(x, y, rgba); + if (colorCache != null) { + colorCache.insert((alpha & 0xff) << 24 | (red & 0xff) << 16 | (code & 0xff) << 8 | (blue & 0xff)); + } + } + + private int decodeBwRef(WritableRaster raster, ColorCache colorCache, int width, HuffmanCodeGroup curCodeGroup, byte[] rgba, short code, int x, int y) throws IOException { + int length = lz77decode(code - 256); + + short distancePrefix = curCodeGroup.distanceCode.readSymbol(lsbBitReader); + int distanceCode = lz77decode(distancePrefix); + + int xSrc, ySrc; + + if (distanceCode > 120) { + //Linear distance + int distance = distanceCode - 120; + ySrc = y - (distance / width); + xSrc = x - (distance % width); + } + else { + //See comment of distances array + xSrc = x - (8 - (DISTANCES[distanceCode - 1] & 0xf)); + ySrc = y - (DISTANCES[distanceCode - 1] >> 4); + + } + + if (xSrc < 0) { + ySrc--; + xSrc += width; + } + else if (xSrc >= width) { + xSrc -= width; + ySrc++; + } + + for (int l = length; l > 0; x++, l--) { + //Check length and xSrc, ySrc not falling outside raster? (Should not occur if image is correct) + + if (x == width) { + x = 0; + y++; + } + raster.getDataElements(xSrc++, ySrc, rgba); + raster.setDataElements(x, y, rgba); + if (xSrc == width) { + xSrc = 0; + ySrc++; + } + if (colorCache != null) { + colorCache.insert((rgba[3] & 0xff) << 24 | (rgba[0] & 0xff) << 16 | (rgba[1] & 0xff) << 8 | (rgba[2] & 0xff)); + } + } + return length; + } + + private int lz77decode(int prefixCode) throws IOException { + //According to specification + + if (prefixCode < 4) { + return prefixCode + 1; + } + else { + int extraBits = (prefixCode - 2) >> 1; + int offset = (2 + (prefixCode & 1)) << extraBits; + return offset + (int) lsbBitReader.readBits(extraBits) + 1; + + } + } private int readTransform(int xSize, int ySize, List transforms) throws IOException { From 326b98d5e500caf5874bdfa370c192d2c7756559 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Tue, 30 Aug 2022 15:36:57 +0200 Subject: [PATCH 09/16] Implement applying of the inverse transforms --- .../plugins/webp/lossless/VP8LDecoder.java | 4 + .../transform/ColorIndexingTransform.java | 25 ++ .../lossless/transform/ColorTransform.java | 76 +++--- .../transform/PredictorTransform.java | 232 +++++++++++++++--- .../transform/SubtractGreenTransform.java | 13 + 5 files changed, 281 insertions(+), 69 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index 3b4621e8..19e4cf18 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -120,6 +120,10 @@ public final class VP8LDecoder { // Use the Huffman trees to decode the LZ77 encoded data. decodeImage(writableChild, huffmanInfo, colorCache); + for (Transform transform : transforms) { + transform.applyInverse(raster); + } + } private void decodeImage(WritableRaster raster, HuffmanInfo huffmanInfo, ColorCache colorCache) throws IOException { diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java index 32d16009..5d75e947 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorIndexingTransform.java @@ -14,5 +14,30 @@ public class ColorIndexingTransform implements Transform { @Override public void applyInverse(WritableRaster raster) { + + int width = raster.getWidth(); + int height = raster.getHeight(); + + byte[] rgba = new byte[4]; + + for (int y = 0; y < height; y++) { + //Reversed so no used elements are overridden (in case of packing) + for (int x = width - 1; x >= 0; x--) { + + int componentSize = 8 >> bits; + int packed = 1 << bits; + int xC = x / packed; + int componentOffset = componentSize * (x % packed); + + int sample = raster.getSample(xC, y, 1); + + int index = sample >> componentOffset & ((1 << componentSize) - 1); + + //Arraycopy for 4 elements might not be beneficial + System.arraycopy(colorTable, index * 4, rgba, 0, 4); + raster.setDataElements(x, y, rgba); + + } + } } } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java index 2623e946..9e90e2b6 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/ColorTransform.java @@ -13,6 +13,24 @@ public class ColorTransform implements Transform { @Override public void applyInverse(WritableRaster raster) { + int width = raster.getWidth(); + int height = raster.getHeight(); + + byte[] rgba = new byte[4]; + + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + + data.getDataElements(x >> bits, y >> bits, rgba); + ColorTransformElement trans = new ColorTransformElement(rgba); + + raster.getDataElements(x, y, rgba); + + trans.inverseTransform(rgba); + + raster.setDataElements(x, y, rgba); + } + } } // NOTE: For encoding! @@ -43,47 +61,33 @@ public class ColorTransform implements Transform { return (byte) ((t * c) >> 5); } - private static void inverseTransform(final byte red, final byte green, final byte blue, - final ColorTransformElement trans, - final int[] newRedBlue) { - // Applying inverse transform is just subtracting the - // color transform deltas - // Transformed values of red and blue components - int tmp_red = red; - int tmp_blue = blue; + private static final class ColorTransformElement { - tmp_red -= colorTransformDelta((byte) trans.green_to_red, green); - tmp_blue -= colorTransformDelta((byte) trans.green_to_blue, green); - tmp_blue -= colorTransformDelta((byte) trans.red_to_blue, red); // Spec has red & 0xff - - newRedBlue[0] = tmp_red & 0xff; - newRedBlue[1] = tmp_blue & 0xff; - } - - private static void inverseTransform(final byte[] rgb, final ColorTransformElement trans) { - // Applying inverse transform is just subtracting the - // color transform deltas - // Transformed values of red and blue components - int tmp_red = rgb[0]; - int tmp_blue = rgb[2]; - - tmp_red -= colorTransformDelta((byte) trans.green_to_red, rgb[1]); - tmp_blue -= colorTransformDelta((byte) trans.green_to_blue, rgb[1]); - tmp_blue -= colorTransformDelta((byte) trans.red_to_blue, rgb[0]); // Spec has red & 0xff - - rgb[0] = (byte) (tmp_red & 0xff); - rgb[2] = (byte) (tmp_blue & 0xff); - } - - static final class ColorTransformElement { final int green_to_red; final int green_to_blue; final int red_to_blue; - ColorTransformElement(final int green_to_red, final int green_to_blue, final int red_to_blue) { - this.green_to_red = green_to_red; - this.green_to_blue = green_to_blue; - this.red_to_blue = red_to_blue; + ColorTransformElement(final byte[] rgba) { + this.green_to_red = rgba[2]; + this.green_to_blue = rgba[1]; + this.red_to_blue = rgba[0]; + } + + private void inverseTransform(final byte[] rgb) { + // Applying inverse transform is just adding (!, different from specification) the + // color transform deltas 3 + + // Transformed values of red and blue components + int tmp_red = rgb[0]; + int tmp_blue = rgb[2]; + + tmp_red += colorTransformDelta((byte) this.green_to_red, rgb[1]); + tmp_blue += colorTransformDelta((byte) this.green_to_blue, rgb[1]); + tmp_blue += colorTransformDelta((byte) this.red_to_blue, (byte) tmp_red); // Spec has red & 0xff + + rgb[0] = (byte) (tmp_red & 0xff); + rgb[2] = (byte) (tmp_blue & 0xff); } } + } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java index 711e1cf3..e5d7fe70 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/PredictorTransform.java @@ -15,45 +15,190 @@ public class PredictorTransform implements Transform { @Override public void applyInverse(WritableRaster raster) { + + int width = raster.getWidth(); + int height = raster.getHeight(); + + byte[] rgba = new byte[4]; + + //Handle top and left border separately + + //(0,0) Black (0x000000ff) predict + raster.getDataElements(0, 0, rgba); + rgba[3] += 0xff; + raster.setDataElements(0, 0, rgba); + + + byte[] predictor = new byte[4]; + byte[] predictor2 = new byte[4]; + byte[] predictor3 = new byte[4]; + + //(x,0) L predict + for (int x = 1; x < width; x++) { + raster.getDataElements(x, 0, rgba); + raster.getDataElements(x - 1, 0, predictor); + addPixels(rgba, predictor); + + raster.setDataElements(x, 0, rgba); + } + + //(0,y) T predict + for (int y = 1; y < height; y++) { + raster.getDataElements(0, y, rgba); + raster.getDataElements(0, y - 1, predictor); + addPixels(rgba, predictor); + + raster.setDataElements(0, y, rgba); + } + + for (int y = 1; y < height; y++) { + for (int x = 1; x < width; x++) { + + int transformType = data.getSample(x >> bits, y >> bits, 1); + + raster.getDataElements(x, y, rgba); + + int lX = x - 1; //x for left + + int tY = y - 1; //y for top + + //top right is not (x+1, tY) if last pixel in line instead (0, y) + int trX = x == width - 1 ? 0 : x + 1; + int trY = x == width - 1 ? y : tY; + + switch (transformType) { + case PredictorMode.BLACK: + rgba[3] += 0xff; + break; + case PredictorMode.L: + raster.getDataElements(lX, y, predictor); + addPixels(rgba, predictor); + break; + case PredictorMode.T: + raster.getDataElements(x, tY, predictor); + addPixels(rgba, predictor); + break; + case PredictorMode.TR: + raster.getDataElements(trX, trY, predictor); + addPixels(rgba, predictor); + break; + case PredictorMode.TL: + raster.getDataElements(lX, tY, predictor); + addPixels(rgba, predictor); + break; + case PredictorMode.AVG_L_TR_T: + raster.getDataElements(lX, y, predictor); + raster.getDataElements(trX, trY, predictor2); + average2(predictor, predictor2); + + raster.getDataElements(x, tY, predictor2); + average2(predictor, predictor2); + + addPixels(rgba, predictor); + break; + case PredictorMode.AVG_L_TL: + raster.getDataElements(lX, y, predictor); + raster.getDataElements(lX, tY, predictor2); + average2(predictor, predictor2); + + addPixels(rgba, predictor); + break; + case PredictorMode.AVG_L_T: + raster.getDataElements(lX, y, predictor); + raster.getDataElements(x, tY, predictor2); + average2(predictor, predictor2); + + addPixels(rgba, predictor); + break; + case PredictorMode.AVG_TL_T: + raster.getDataElements(lX, tY, predictor); + raster.getDataElements(x, tY, predictor2); + average2(predictor, predictor2); + + addPixels(rgba, predictor); + break; + case PredictorMode.AVG_T_TR: + raster.getDataElements(x, tY, predictor); + raster.getDataElements(trX, trY, predictor2); + average2(predictor, predictor2); + + addPixels(rgba, predictor); + break; + case PredictorMode.AVG_L_TL_T_TR: + raster.getDataElements(lX, y, predictor); + raster.getDataElements(lX, tY, predictor2); + average2(predictor, predictor2); + + raster.getDataElements(x, tY, predictor2); + raster.getDataElements(trX, trY, predictor3); + average2(predictor2, predictor3); + + average2(predictor, predictor2); + + addPixels(rgba, predictor); + break; + case PredictorMode.SELECT: + raster.getDataElements(lX, y, predictor); + raster.getDataElements(x, tY, predictor2); + raster.getDataElements(lX, tY, predictor3); + + + addPixels(rgba, select(predictor, predictor2, predictor3)); + break; + case PredictorMode.CLAMP_ADD_SUB_FULL: + raster.getDataElements(lX, y, predictor); + raster.getDataElements(x, tY, predictor2); + raster.getDataElements(lX, tY, predictor3); + clampAddSubtractFull(predictor, predictor2, predictor3); + + addPixels(rgba, predictor); + break; + case PredictorMode.CLAMP_ADD_SUB_HALF: + raster.getDataElements(lX, y, predictor); + raster.getDataElements(x, tY, predictor2); + average2(predictor, predictor2); + + raster.getDataElements(lX, tY, predictor2); + clampAddSubtractHalf(predictor, predictor2); + + addPixels(rgba, predictor); + break; + + } + + raster.setDataElements(x, y, rgba); + } + } } - private static int ALPHA(final int ARGB) { - return ARGB >>> 24; - } - - private static int RED(final int ARGB) { - return (ARGB >> 16) & 0xff; - } - - private static int GREEN(final int ARGB) { - return (ARGB >> 8) & 0xff; - } - - private static int BLUE(final int ARGB) { - return ARGB & 0xff; - } - - private static int select(final int L, final int T, final int TL) { - // L = left pixel, T = top pixel, TL = top left pixel. + private static byte[] select(final byte[] l, final byte[] t, final byte[] tl) { + // l = left pixel, t = top pixel, tl = top left pixel. // ARGB component estimates for prediction. - int pAlpha = ALPHA(L) + ALPHA(T) - ALPHA(TL); - int pRed = RED(L) + RED(T) - RED(TL); - int pGreen = GREEN(L) + GREEN(T) - GREEN(TL); - int pBlue = BLUE(L) + BLUE(T) - BLUE(TL); + + int pAlpha = addSubtractFull(l[3], t[3], tl[3]); + int pRed = addSubtractFull(l[0], t[0], tl[0]); + int pGreen = addSubtractFull(l[1], t[1], tl[1]); + int pBlue = addSubtractFull(l[2], t[2], tl[2]); // Manhattan distances to estimates for left and top pixels. - int pL = abs(pAlpha - ALPHA(L)) + abs(pRed - RED(L)) + - abs(pGreen - GREEN(L)) + abs(pBlue - BLUE(L)); - int pT = abs(pAlpha - ALPHA(T)) + abs(pRed - RED(T)) + - abs(pGreen - GREEN(T)) + abs(pBlue - BLUE(T)); + int pL = manhattanDistance(l, pAlpha, pRed, pGreen, pBlue); + int pT = manhattanDistance(t, pAlpha, pRed, pGreen, pBlue); // Return either left or top, the one closer to the prediction. - return pL < pT ? L : T; + return pL < pT ? l : t; } - private static int average2(final int a, final int b) { - return (a + b) / 2; + private static int manhattanDistance(byte[] rgba, int pAlpha, int pRed, int pGreen, int pBlue) { + return abs(pAlpha - (rgba[3] & 0xff)) + abs(pRed - (rgba[0] & 0xff)) + + abs(pGreen - (rgba[1] & 0xff)) + abs(pBlue - (rgba[2] & 0xff)); + } + + private static void average2(final byte[] rgba1, final byte[] rgba2) { + rgba1[0] = (byte) (((rgba1[0] & 0xff) + (rgba2[0] & 0xff)) / 2); + rgba1[1] = (byte) (((rgba1[1] & 0xff) + (rgba2[1] & 0xff)) / 2); + rgba1[2] = (byte) (((rgba1[2] & 0xff) + (rgba2[2] & 0xff)) / 2); + rgba1[3] = (byte) (((rgba1[3] & 0xff) + (rgba2[3] & 0xff)) / 2); } // Clamp the input value between 0 and 255. @@ -61,12 +206,33 @@ public class PredictorTransform implements Transform { return max(0, min(a, 255)); } - private static int clampAddSubtractFull(final int a, final int b, final int c) { - return clamp(a + b - c); + private static void clampAddSubtractFull(final byte[] a, final byte[] b, final byte[] c) { + a[0] = (byte) clamp(addSubtractFull(a[0], b[0], c[0])); + a[1] = (byte) clamp(addSubtractFull(a[1], b[1], c[1])); + a[2] = (byte) clamp(addSubtractFull(a[2], b[2], c[2])); + a[3] = (byte) clamp(addSubtractFull(a[3], b[3], c[3])); } - private static int clampAddSubtractHalf(final int a, final int b) { - return clamp(a + (a - b) / 2); + private static void clampAddSubtractHalf(final byte[] a, final byte[] b) { + a[0] = (byte) clamp(addSubtractHalf(a[0], b[0])); + a[1] = (byte) clamp(addSubtractHalf(a[1], b[1])); + a[2] = (byte) clamp(addSubtractHalf(a[2], b[2])); + a[3] = (byte) clamp(addSubtractHalf(a[3], b[3])); + } + + private static int addSubtractFull(byte a, byte b, byte c) { + return (a & 0xff) + (b & 0xff) - (c & 0xff); + } + + private static int addSubtractHalf(byte a, byte b) { + return (a & 0xff) + ((a & 0xff) - (b & 0xff)) / 2; + } + + private static void addPixels(byte[] rgba, byte[] predictor) { + rgba[0] += predictor[0]; + rgba[1] += predictor[1]; + rgba[2] += predictor[2]; + rgba[3] += predictor[3]; } } diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java index 157f723b..0de60314 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/transform/SubtractGreenTransform.java @@ -12,5 +12,18 @@ public class SubtractGreenTransform implements Transform { @Override public void applyInverse(WritableRaster raster) { + + int width = raster.getWidth(); + int height = raster.getHeight(); + + byte[] rgba = new byte[4]; + + for (int y = 0; y < height; y++) { + for (int x = 0; x < width; x++) { + raster.getDataElements(x, y, rgba); + addGreenToBlueAndRed(rgba); + raster.setDataElements(x, y, rgba); + } + } } } From 6608f6135304fc5c3005615b3d05b45d32e898e2 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Tue, 30 Aug 2022 15:38:12 +0200 Subject: [PATCH 10/16] Fix starting to read at wrong offset, now skips header --- .../imageio/plugins/webp/lossless/VP8LDecoder.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index 19e4cf18..f88b04aa 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -87,6 +87,11 @@ public final class VP8LDecoder { public void readVP8Lossless(final WritableRaster raster, final boolean topLevel) throws IOException { //https://github.com/webmproject/libwebp/blob/666bd6c65483a512fe4c2eb63fbc198b6fb4fae4/src/dec/vp8l_dec.c#L1114 + //Skip past already read parts of header (signature, width, height, alpha, version) 5 Bytes in total + if (topLevel) { + imageInput.seek(imageInput.getStreamPosition() + 5); + } + int xSize = raster.getWidth(); int ySize = raster.getHeight(); From 67b48ce1e3c2d4eb4fe0de2ac360cf2889d84395 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Tue, 30 Aug 2022 15:41:53 +0200 Subject: [PATCH 11/16] Implement decoding of compressed alpha chunks, alpha filtering --- .../imageio/plugins/webp/AlphaFiltering.java | 8 ++ .../imageio/plugins/webp/WebPImageReader.java | 131 ++++++++++++++---- 2 files changed, 110 insertions(+), 29 deletions(-) create mode 100644 imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/AlphaFiltering.java diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/AlphaFiltering.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/AlphaFiltering.java new file mode 100644 index 00000000..e4c44bef --- /dev/null +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/AlphaFiltering.java @@ -0,0 +1,8 @@ +package com.twelvemonkeys.imageio.plugins.webp; + +public interface AlphaFiltering { + int NONE = 0; + int HORIZONTAL = 1; + int VERTICAL = 2; + int GRADIENT = 3; +} diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java index 546ce22d..277542d2 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java @@ -38,6 +38,7 @@ import java.awt.image.BufferedImage; import java.awt.image.ColorConvertOp; import java.awt.image.ColorModel; import java.awt.image.DataBuffer; +import java.awt.image.Raster; import java.awt.image.WritableRaster; import java.io.IOException; import java.nio.ByteOrder; @@ -465,35 +466,7 @@ final class WebPImageReader extends ImageReaderBase { switch (nextChunk) { case WebP.CHUNK_ALPH: - int reserved = (int) imageInput.readBits(2); - if (reserved != 0) { - // Spec says SHOULD be 0 - processWarningOccurred(String.format("Unexpected 'ALPH' chunk reserved value, expected 0: %d", reserved)); - } - - int preProcessing = (int) imageInput.readBits(2); - int filtering = (int) imageInput.readBits(2); - int compression = (int) imageInput.readBits(2); - - if (DEBUG) { - System.out.println("preProcessing: " + preProcessing); - System.out.println("filtering: " + filtering); - System.out.println("compression: " + compression); - } - - switch (compression) { - case 0: - readUncompressedAlpha(destination.getAlphaRaster()); - break; - case 1: - opaqueAlpha(destination.getAlphaRaster()); // TODO: Remove when correctly implemented! -// readVP8Lossless(destination.getAlphaRaster(), param); - break; - default: - processWarningOccurred("Unknown WebP alpha compression: " + compression); - opaqueAlpha(destination.getAlphaRaster()); - break; - } + readAlpha(destination, param); break; @@ -527,6 +500,106 @@ final class WebPImageReader extends ImageReaderBase { } } + private void readAlpha(BufferedImage destination, ImageReadParam param) throws IOException { + int reserved = (int) imageInput.readBits(2); + if (reserved != 0) { + // Spec says SHOULD be 0 + processWarningOccurred( + String.format("Unexpected 'ALPH' chunk reserved value, expected 0: %d", reserved)); + } + + int preProcessing = (int) imageInput.readBits(2); + int filtering = (int) imageInput.readBits(2); + int compression = (int) imageInput.readBits(2); + + if (DEBUG) { + System.out.println("preProcessing: " + preProcessing); + System.out.println("filtering: " + filtering); + System.out.println("compression: " + compression); + } + + WritableRaster alphaRaster = destination.getAlphaRaster(); + switch (compression) { + case 0: + readUncompressedAlpha(alphaRaster); + break; + case 1: + WritableRaster tempRaster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, + destination.getWidth(), destination.getHeight(), 4, null); + //Simulate header + imageInput.seek(imageInput.getStreamPosition() - 5); + readVP8Lossless(tempRaster, param); + //Copy from green (band 1) in temp to alpha in destination + alphaRaster.setRect(tempRaster.createChild(0, 0, tempRaster.getWidth(), + tempRaster.getHeight(), 0, 0, new int[] {1})); + break; + default: + processWarningOccurred("Unknown WebP alpha compression: " + compression); + opaqueAlpha(alphaRaster); + break; + } + + if (filtering != AlphaFiltering.NONE) { + for (int y = 0; y < destination.getHeight(); y++) { + for (int x = 0; x < destination.getWidth(); x++) { + int predictorAlpha = getPredictorAlpha(alphaRaster, filtering, y, x); + alphaRaster.setSample(x, y, 0, alphaRaster.getSample(x, y, 0) + predictorAlpha % 256); + } + } + } + } + + private int getPredictorAlpha(WritableRaster alphaRaster, int filtering, int y, int x) { + switch (filtering) { + case AlphaFiltering.NONE: + return 0; + case AlphaFiltering.HORIZONTAL: + if (x == 0) { + if (y == 0) { + return 0; + } + else { + return alphaRaster.getSample(0, y - 1, 0); + } + } + else { + return alphaRaster.getSample(x - 1, y, 0); + } + case AlphaFiltering.VERTICAL: + if (y == 0) { + if (x == 0) { + return 0; + } + else { + return alphaRaster.getSample(x - 1, 0, 0); + } + } + else { + return alphaRaster.getSample(x, y - 1, 0); + } + case AlphaFiltering.GRADIENT: + if (x == 0 && y == 0) { + return 0; + } + else if (x == 0) { + return alphaRaster.getSample(0, y - 1, 0); + } + else if (y == 0) { + return alphaRaster.getSample(x - 1, 0, 0); + } + else { + int left = alphaRaster.getSample(x - 1, y, 0); + int top = alphaRaster.getSample(x, y - 1, 0); + int topLeft = alphaRaster.getSample(x - 1, y - 1, 0); + + return Math.max(0, Math.min(left + top - topLeft, 255)); + } + default: + processWarningOccurred("Unknown WebP alpha filtering: " + filtering); + return 0; + } + } + private void applyICCProfileIfNeeded(final BufferedImage destination) { if (iccProfile != null) { ColorModel colorModel = destination.getColorModel(); From c858454c5ac0b8357a4045abaaa27dcc48c33fa5 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Fri, 9 Sep 2022 00:42:55 +0200 Subject: [PATCH 12/16] Support ImageReadParam Settings limiting Raster size On animation frames dimension has to be passed as it is not guaranteed the same as in the file header. --- .../imageio/plugins/webp/WebPImageReader.java | 25 +++-- .../plugins/webp/lossless/VP8LDecoder.java | 103 +++++++++++++++--- 2 files changed, 107 insertions(+), 21 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java index 277542d2..edaea979 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java @@ -427,7 +427,7 @@ final class WebPImageReader extends ImageReaderBase { AnimationFrame frame = frames.get(imageIndex); imageInput.seek(frame.offset + 16); opaqueAlpha(destination.getAlphaRaster()); - readVP8Extended(destination, param, frame.offset + frame.length); + readVP8Extended(destination, param, frame.offset + frame.length, frame.bounds.width, frame.bounds.height); } else { imageInput.seek(header.offset + header.length); @@ -453,6 +453,11 @@ final class WebPImageReader extends ImageReaderBase { } private void readVP8Extended(BufferedImage destination, ImageReadParam param, long streamEnd) throws IOException { + readVP8Extended(destination, param, streamEnd, header.width, header.height); + } + + private void readVP8Extended(BufferedImage destination, ImageReadParam param, long streamEnd, final int width, + final int height) throws IOException { while (imageInput.getStreamPosition() < streamEnd) { int nextChunk = imageInput.readInt(); long chunkLength = imageInput.readUnsignedInt(); @@ -466,7 +471,7 @@ final class WebPImageReader extends ImageReaderBase { switch (nextChunk) { case WebP.CHUNK_ALPH: - readAlpha(destination, param); + readAlpha(destination, param, width, height); break; @@ -476,7 +481,7 @@ final class WebPImageReader extends ImageReaderBase { break; case WebP.CHUNK_VP8L: - readVP8Lossless(RasterUtils.asByteRaster(destination.getRaster()), param); + readVP8Lossless(RasterUtils.asByteRaster(destination.getRaster()), param, width, height); break; case WebP.CHUNK_ANIM: @@ -500,7 +505,7 @@ final class WebPImageReader extends ImageReaderBase { } } - private void readAlpha(BufferedImage destination, ImageReadParam param) throws IOException { + private void readAlpha(BufferedImage destination, ImageReadParam param, final int width, final int height) throws IOException { int reserved = (int) imageInput.readBits(2); if (reserved != 0) { // Spec says SHOULD be 0 @@ -525,10 +530,11 @@ final class WebPImageReader extends ImageReaderBase { break; case 1: WritableRaster tempRaster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, - destination.getWidth(), destination.getHeight(), 4, null); + destination.getWidth(), destination.getHeight(), 4, + destination.getRaster().getBounds().getLocation()); //Simulate header imageInput.seek(imageInput.getStreamPosition() - 5); - readVP8Lossless(tempRaster, param); + readVP8Lossless(tempRaster, param, width, height); //Copy from green (band 1) in temp to alpha in destination alphaRaster.setRect(tempRaster.createChild(0, 0, tempRaster.getWidth(), tempRaster.getHeight(), 0, 0, new int[] {1})); @@ -638,8 +644,13 @@ final class WebPImageReader extends ImageReaderBase { } private void readVP8Lossless(final WritableRaster raster, final ImageReadParam param) throws IOException { + readVP8Lossless(raster, param, header.width, header.height); + } + + private void readVP8Lossless(final WritableRaster raster, final ImageReadParam param, + final int width, final int height) throws IOException { VP8LDecoder decoder = new VP8LDecoder(imageInput, DEBUG); - decoder.readVP8Lossless(raster, true); + decoder.readVP8Lossless(raster, true, param, width, height); } private void readVP8(final WritableRaster raster, final ImageReadParam param) throws IOException { diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index f88b04aa..12a818bd 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -42,7 +42,9 @@ import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.Transform; import com.twelvemonkeys.imageio.plugins.webp.lossless.transform.TransformType; import javax.imageio.IIOException; +import javax.imageio.ImageReadParam; import javax.imageio.stream.ImageInputStream; +import java.awt.*; import java.awt.image.*; import java.io.IOException; import java.util.ArrayList; @@ -84,7 +86,8 @@ public final class VP8LDecoder { lsbBitReader = new LSBBitReader(imageInput); } - public void readVP8Lossless(final WritableRaster raster, final boolean topLevel) throws IOException { + public void readVP8Lossless(final WritableRaster raster, final boolean topLevel, ImageReadParam param, int width, + int height) throws IOException { //https://github.com/webmproject/libwebp/blob/666bd6c65483a512fe4c2eb63fbc198b6fb4fae4/src/dec/vp8l_dec.c#L1114 //Skip past already read parts of header (signature, width, height, alpha, version) 5 Bytes in total @@ -92,13 +95,12 @@ public final class VP8LDecoder { imageInput.seek(imageInput.getStreamPosition() + 5); } - int xSize = raster.getWidth(); - int ySize = raster.getHeight(); + int xSize = width; // Read transforms ArrayList transforms = new ArrayList<>(); while (topLevel && lsbBitReader.readBit() == 1) { - xSize = readTransform(xSize, ySize, transforms); + xSize = readTransform(xSize, height, transforms); } // Read color cache size @@ -111,7 +113,7 @@ public final class VP8LDecoder { } // Read Huffman codes - HuffmanInfo huffmanInfo = readHuffmanCodes(xSize, ySize, colorCacheBits, topLevel); + HuffmanInfo huffmanInfo = readHuffmanCodes(xSize, height, colorCacheBits, topLevel); ColorCache colorCache = null; @@ -119,16 +121,89 @@ public final class VP8LDecoder { colorCache = new ColorCache(colorCacheBits); } - //If multiple indices packed into one pixel xSize is different from raster width - WritableRaster writableChild = raster.createWritableChild(0, 0, xSize, ySize, 0, 0, null); + WritableRaster fullSizeRaster; + WritableRaster decodeRaster; + if (topLevel) { - // Use the Huffman trees to decode the LZ77 encoded data. - decodeImage(writableChild, huffmanInfo, colorCache); + Rectangle bounds = new Rectangle(width, height); + fullSizeRaster = getRasterForDecoding(raster, param, bounds); - for (Transform transform : transforms) { - transform.applyInverse(raster); + //If multiple indices packed into one pixel xSize is different from raster width + decodeRaster = fullSizeRaster.createWritableChild(0, 0, xSize, height, 0, 0, null); + } + else { + //All recursive calls have Rasters of the correct sizes with origin (0, 0) + decodeRaster = fullSizeRaster = raster; } + // Use the Huffman trees to decode the LZ77 encoded data. + decodeImage(decodeRaster, huffmanInfo, colorCache); + + for (Transform transform : transforms) { + transform.applyInverse(fullSizeRaster); + } + + if (fullSizeRaster != raster && param != null) { + //Copy into destination raster with settings applied + Rectangle sourceRegion = param.getSourceRegion(); + int sourceXSubsampling = param.getSourceXSubsampling(); + int sourceYSubsampling = param.getSourceYSubsampling(); + int subsamplingXOffset = param.getSubsamplingXOffset(); + int subsamplingYOffset = param.getSubsamplingYOffset(); + Point destinationOffset = param.getDestinationOffset(); + + if (sourceRegion == null) { + sourceRegion = raster.getBounds(); + } + + if (sourceXSubsampling == 1 && sourceYSubsampling == 1) { + //Only apply offset (and limit to requested region) + raster.setRect(destinationOffset.x, destinationOffset.y, fullSizeRaster); + } + else { + //Manual copy, more efficient way might exist + byte[] rgba = new byte[4]; + int xEnd = raster.getWidth() + raster.getMinX(); + int yEnd = raster.getHeight() + raster.getMinY(); + for (int xDst = destinationOffset.x, xSrc = sourceRegion.x + subsamplingXOffset; + xDst < xEnd; xDst++, xSrc += sourceXSubsampling) { + for (int yDst = destinationOffset.y, ySrc = sourceRegion.y + subsamplingYOffset; + yDst < yEnd; yDst++, ySrc += sourceYSubsampling) { + fullSizeRaster.getDataElements(xSrc, ySrc, rgba); + raster.setDataElements(xDst, yDst, rgba); + } + } + } + } + } + + private WritableRaster getRasterForDecoding(WritableRaster raster, ImageReadParam param, Rectangle bounds) { + //If the ImageReadParam requires only a subregion of the image, and if the whole image does not fit into the + // Raster or subsampling is requested, we need a temporary Raster as we can only decode the whole image at once + + boolean originSet = false; + if (param != null) { + if (param.getSourceRegion() != null && !param.getSourceRegion().contains(bounds) || + param.getSourceXSubsampling() != 1 || param.getSourceYSubsampling() != 1) { + //Can't reuse existing + return Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, bounds.width, bounds.height, + 4 * bounds.width, 4, new int[] {0, 1, 2, 3}, null); + } + else { + bounds.setLocation(param.getDestinationOffset()); + originSet = true; + + } + } + if (!raster.getBounds().contains(bounds)) { + //Can't reuse existing + return Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, bounds.width, bounds.height, 4 * bounds.width, + 4, new int[] {0, 1, 2, 3}, null); + } + return originSet ? + //Recenter to (0, 0) + raster.createWritableChild(bounds.x, bounds.y, bounds.width, bounds.height, 0, 0, null) : + raster; } private void decodeImage(WritableRaster raster, HuffmanInfo huffmanInfo, ColorCache colorCache) throws IOException { @@ -296,7 +371,7 @@ public final class VP8LDecoder { WritableRaster raster = Raster.createInterleavedRaster(DataBuffer.TYPE_BYTE, blockWidth, blockHeight, 4 * blockWidth, 4, new int[] {0, 1, 2, 3}, null); - readVP8Lossless(raster, false); + readVP8Lossless(raster, false, null, blockWidth, blockHeight); //Keep data as raster for convenient (x,y) indexing if (transformType == TransformType.PREDICTOR_TRANSFORM) { @@ -342,7 +417,7 @@ public final class VP8LDecoder { new DataBufferByte(colorTable, colorTableSize * 4), colorTableSize, 1, colorTableSize * 4, 4, new int[] {0, 1, 2, 3}, null) - , false); + , false, null, colorTableSize, 1); //resolve subtraction code @@ -388,7 +463,7 @@ public final class VP8LDecoder { //Raster with elements as BARG (only the RG components encode the meta group) WritableRaster packedRaster = Raster.createPackedRaster(DataBuffer.TYPE_INT, huffmanXSize, huffmanYSize, new int[] {0x0000ff00, 0x000000ff, 0xff000000, 0x00ff0000}, null); - readVP8Lossless(asByteRaster(packedRaster), false); + readVP8Lossless(asByteRaster(packedRaster), false, null, huffmanXSize, huffmanYSize); int[] data = ((DataBufferInt) packedRaster.getDataBuffer()).getData(); //Max metaGroup is number of meta groups From b766420e3e38bcd4ea2ed862bba4c62c59a0eac9 Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Tue, 30 Aug 2022 15:43:57 +0200 Subject: [PATCH 13/16] Parse ANIM metadata Still need to expose them in image metadata --- .../imageio/plugins/webp/WebPImageReader.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java index edaea979..953ce1ca 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReader.java @@ -142,6 +142,16 @@ final class WebPImageReader extends ImageReaderBase { case WebP.CHUNK_ANIM: // TODO: 32 bit bg color (hint!) + 16 bit loop count // + expose bg color in std image metadata... + +/* + int b = (int) lsbBitReader.readBits(8); + int g = (int) lsbBitReader.readBits(8); + int r = (int) lsbBitReader.readBits(8); + int a = (int) lsbBitReader.readBits(8); + + Color bg = new Color(r, g, b, a); + short loopCount = (short) lsbBitReader.readBits(16); +*/ break; case WebP.CHUNK_ANMF: From 5a4525aaa1778c59407286adc1c090b62a5f0aca Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Fri, 2 Sep 2022 17:56:29 +0200 Subject: [PATCH 14/16] Remove debug prints --- .../imageio/plugins/webp/lossless/VP8LDecoder.java | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java index 12a818bd..bc3f6c5a 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/lossless/VP8LDecoder.java @@ -249,8 +249,6 @@ public final class VP8LDecoder { } else { //colorCache - //Color cache should never be null here - assert colorCache != null; decodeCached(raster, colorCache, rgba, y, x, code); } @@ -356,13 +354,9 @@ public final class VP8LDecoder { switch (transformType) { case TransformType.PREDICTOR_TRANSFORM: - System.err.println("transformType: PREDICTOR_TRANSFORM"); //Intentional Fallthrough case TransformType.COLOR_TRANSFORM: { // The two first transforms contains the exact same data, can be combined - if (transformType == TransformType.COLOR_TRANSFORM) { - System.err.println("transformType: COLOR_TRANSFORM"); - } byte sizeBits = (byte) (lsbBitReader.readBits(3) + 2); @@ -384,17 +378,14 @@ public final class VP8LDecoder { break; } case TransformType.SUBTRACT_GREEN: { - System.err.println("transformType: SUBTRACT_GREEN"); // No data here transforms.add(0, new SubtractGreenTransform()); break; } case TransformType.COLOR_INDEXING_TRANSFORM: { - System.err.println("transformType: COLOR_INDEXING_TRANSFORM"); // 8 bit value for color table size int colorTableSize = ((int) lsbBitReader.readBits(8)) + 1; // 1-256 - System.err.println("colorTableSize: " + colorTableSize); // If the index is equal or larger than color_table_size, // the argb color value should be set to 0x00000000 @@ -403,7 +394,6 @@ public final class VP8LDecoder { colorTableSize > 4 ? 16 : colorTableSize > 2 ? 4 : 2; - System.err.println("safeColorTableSize: " + safeColorTableSize); byte[] colorTable = new byte[safeColorTableSize * 4]; From 7c4487be041e163f835c7d672c40816c368678ae Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Tue, 6 Sep 2022 00:16:12 +0200 Subject: [PATCH 15/16] Add tests for lossless decoder --- .../plugins/webp/WebPImageReaderTest.java | 28 +++++++++++++----- .../src/test/resources/webp/2_webp_a.webp | Bin 0 -> 14082 bytes .../src/test/resources/webp/2_webp_ll.webp | Bin 0 -> 27650 bytes .../test/resources/webp/2_webp_ll_alt.webp | Bin 0 -> 27670 bytes .../src/test/resources/webp/3_webp_a.webp | Bin 0 -> 52872 bytes .../src/test/resources/webp/3_webp_ll.webp | Bin 0 -> 152614 bytes .../src/test/resources/webp/4_webp_a.webp | Bin 0 -> 18718 bytes .../src/test/resources/webp/4_webp_ll.webp | Bin 0 -> 33986 bytes .../src/test/resources/webp/5_webp_a.webp | Bin 0 -> 58728 bytes .../src/test/resources/webp/5_webp_ll.webp | Bin 0 -> 99434 bytes 10 files changed, 20 insertions(+), 8 deletions(-) create mode 100644 imageio/imageio-webp/src/test/resources/webp/2_webp_a.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/2_webp_ll.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/2_webp_ll_alt.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/3_webp_a.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/3_webp_ll.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/4_webp_a.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/4_webp_ll.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/5_webp_a.webp create mode 100644 imageio/imageio-webp/src/test/resources/webp/5_webp_ll.webp diff --git a/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java b/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java index 8d3b6dc6..244b89a6 100644 --- a/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java +++ b/imageio/imageio-webp/src/test/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderTest.java @@ -39,14 +39,26 @@ public class WebPImageReaderTest extends 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 A;Q#;t literal 0 HcmV?d00001 diff --git a/imageio/imageio-webp/src/test/resources/webp/2_webp_ll.webp b/imageio/imageio-webp/src/test/resources/webp/2_webp_ll.webp new file mode 100644 index 0000000000000000000000000000000000000000..7c5de8033978b44bd153ddc82ffdb7c1b1bfd179 GIT binary patch literal 27650 zcmV(=K-s@iNk&HcYXAUOMM6+kP&iEPYXAT*fq`NWO~{gMH3%dh5YXoK{ui96v8U!g zqW=@1|1yu_FQAtZpSfN~eB-W-5#Jm;6!C$(wjN>I%w6p0h<#>=J+=!o;SBYNN9+SL zzX1IfCV`~<%q|$pG0Ys$Nz9+Hu*O*YV9O887*b2t0@WCQpr^z7IJyP!)fhD-WF}Sd z7f#Nh0WDQY;2*GvGg98aznPf;?w>_v!*6D0nK;&F`>Zk*r&(5&1F<-ExVxKKRc1!S zX~LOf5%$VgRhgL;5put#)+*wK-{h(ya0j|uF&z={$ZtAR(hUnqb`uYLLjew2K8Tgy zTd!1+laH}zJC5U+V)7lCiSTiw#gP#a(zQ^#d*3PbaxzH~5%O8n@#J;eaU7;tPDo~E zAK8rw+`sFE6aiZQ0j9_Qfc}AqZ@hhjq%WEc3iZ6DyYVftPuir=8Zt8_fE)KMu*lmV z0Kr13_wHz&SrJtNcj%Qe-nhH&&#H*R=h6}>;>C3#VA1D!p2c-tm)XShi#=l)Xx(jQ zHf%Xbi0(IM>4{%7c2UmBKjh-1<-#@ZsCd0{~zx?58V(F$dM#DZW3Ap18U8B(|^Ng0_;e( zRV(v}L;g__!r)Kun{#mQ{{+ClRbO~Q40VT>_1g+&m^rLE*dEMo9Fc8yUYcnp0cP>V zF#gCc#RqQHm5k`jFyM(}yJIVeIk0&9f`K27@7c!~p8|&VG_ucLpD?-*!~KQ6f<5|) zlkV0ZeqQYH#cxrH85x-=-RTZL5m(obtYXZ}kSXOTP75i{XIvN>07!QhFuH!+{eOI6 zKC+52W^Amd6aa}#Q!wV`+%(fn1wsNtq0H)wm{nFHQ_P_R#F!FJ;0iO7#E6K13Nd;C z08nCN-k5XFX~a2Wj1(tCLyA%X0w$>iV@v>^USf>6rDM%8#~k5PigAMUR*EShAh7IM zc9=v25OV;;xb`s3^_(HZ7?Ya7Nls);c}XcoWW#>PvcnhxfJlavLgw5)A2EcOvc&uo z{RBA6eLiDMh!NRDfEaTH0J+R6r4-V(=9(+U6k|?d?ctPuGV0ne-k0W(+(?omN#RkQ zM1Pfwbl2?NKO!dJ`6o&e2>meI-zae`en7mwhhB5<%R5M4a7FBN3U_7$NX&vCux*ZY z)y6iq@d0o_*amFCHU?duY|QML`4Xp+?H`hW4Zi_iUc<%?l{Va9X`9;0=E@qZimLAJ zGP(~?RUX|v%I2Qu%xqVcZL|J@^}?kHmzOJEfo8m|sG2gJi{u*)T;+9UPQZ)x(Vj`m z=Y+kK=19v8e6ii}a=;4oiWP^FkOUJT=?zKpdVz*O>$5Ml1f5>d;jj4Q{KotNccm|M z2lVNmN#iZH!N%xgAA^rSBWgs|;xIF-^le90M08c{sv@R{{vxBsvbt+k8IhH9^t;F! z+vJabH0nK?4z`H$k6wr!DQIbWaM6*EgFGcz+w ze}I{p^%u0V7;W^JWim4}Gc&f4RS92Kep%*iiKP~^MrCElVwjGy(mEX_nJjBl3@IFI z%oLN^JA#hhh!icgr#{{uNHH@@ZKP3gEGgRW6_lW-_8;^Sok*))9dqTSWRb;Cq7s$8 z;2kStc}=Y)RvPV%xy&V)vc#-fDlyBNkf#VYwr#7)jyvu!0?IJ|u~5>vbjf#GZQHV3 zZ~lb|r2TXzU=e9-V3ASSfCV&r<9wM+a|@8N{STYG4gw02DOep02ip|1I0y<_6i^&w z3f3tAj@(iObSJJs0TZB$`Tyl|B*()%v&_tl1G^h$W@ct)W@ct)=4EDP#)054(=xnt z&U>oP$>k^1OMX?Mwoa(LHzO^VPN*Grhe{{taC|jK-cakeYRMCN<(68qN*d@6*DQ4D zgxXiDnow5-dwD%erRqSB-jJ7ns;jn6sF&BhR5^>j8mWS%3fa<<`>IqOYQI5upe0)i zt+N5?a4heqN#DygL|olsj^M(YHZcRis}EjsMEI`V|tavMpKBIPkl z%~RFr z3KzAm3A}VEjlgJWAxD^JQPld3vQOtU1G6QwrbccVXI7Gt^*2qe&9*i+&1M;wHZ$F< zcuk9CVi1y)eS=I=2{nX}LYM$MwQaka=9FMK{)CkIsJ-{D{_hLk`>G`d6Np@Vf}7m5 zEsQ6xmQ=}?+^`T71KCuF#Npt1$w%Puxj`{10*yv#BM=p(LI63EBt??v{#So384m-F zZEMG~_kLBJl$cZcOe>W!0h^sV+qU%^Hzoj2wr$Tpx%pPAoB<>brsU3lG(HR}^QewjEopY}>XqZv`!)VN-hv9nCp&L)*6dZJW6dYPD_4n=7)4nVA+~CjF0+ z5h5$Q0W%E1%*^C+BGIL)=br$){r@kLCTDt{J!WQx2u=`(vQSKyh60eQXuxBv>K;)5 z?+6rwtc5m?+U#DYGRaxsj+}-t)Fr+01IcVUr;n=pdtU0*5yF0XQt(Vp@0w|de z^I$O!t>WKG<(_%VW0I&4_tE5|5|J5@7>b%<( zcVdXhxHs;KJ0L&qezxyD^Ulm#!SwMP_@u~6cO8q74hH$B3yU;$nW|kj$uH^fk42t& zCtc*7yb(_1wrgj5pR;hH9}bZ_4DL2qbgDB_KW=jc{}h+p-8*^1#xskih$sfv9~Rj? zxI+`_WE3Uaw$(<`IZt04hJa#bY*w#o{*z#4h)h#hw)Cjs|7W7Qe@yS ziHkz!M}{f}Wl&VEspGb71c~wek-xGOevG z$fXgn8QDOh4M%eXN3z;(@@AX(}_uq7mddtFQr1YKGRo`^7A z&;&K;d-O-|o522+s{}EP(zHa*M}PDQ%zat2&NPUks6_Up$O^$)CmKb9Q&eK`DsTxn z;{n%A=GeUx|83k^`jf?IvW>-W)lt+;WVi<aq_#vff`5zQys+X3!bTdakvrODdwp$FZ6>C z1`Wi5(W`HG{XW$%c&oTIw5X{E-Wl!{8p?j(t6zBieo55}-U@!LMa@0%=(snaE&IcI z#RT%FzbuyH?;p>Trba&S&T;R+^wD3U9`PHeF2(x&;lmzl;K#`S|5{g;0XoEZk9p;uQpjo^&+_{YS%2Q~fBC&Ooh0ftfiVBn+k?cVUj@_RUpB)-V8})#JkIs|eXI%rRHE$mmiwcwt&-MM= zZ=myo<3oVj^a^psr~ql??!2hPy7<@M9;jtME85qW4|k8kXf?`3fM zvG;_p1T!ez*;V5nfb-u2E`C;6a8m{!>3subd?dGaBluJxemo^|9YN-zj)R9S#t}R`=Bl~dEHJSBBI3%A zh6~yW+>6nh!uG_MjpsTWY$Sn8NfHCu&xor=oWU*PXW1YayOME$!RL8bAnyF|xJ%d| zaU~fBuL_?N#GiMCj{rLqE+oU~N5xylA$)S&3ha=%jzM7LO7RImJbEg;U)V|#m*Eu{ z9nOqPc-&is9kQ{j7-u+rfgeRpPmSlXMd2zY82*Q=hobO+w+34jE}{qwT`KMtSbMji zZG)k6fWc#%OF#e~D z=4|L%dkPTY&P$vSCqiv;>u|utB}@Wi|Nm>4cp9weIxVnVM)ula7#-za&}INqul+W# zq*fs1Ajw=ov%vW6;c8%P@`_i*n4NiTxIwgLv48(3#lpMBB#h1P2yYFw!D8d69z7zNK9DtKOM~ftk@AqE&5># zi0bTvZvpdx8Lzl!O}9g;*Fhmz)z8Po4~9K$^q61AOHhVdken%Fc&=tJ49l3_HCgF8wn%i+ctf3%`Ajnr%8xlZooZW?UDZ9h=8` z9KbQLdL1r)f-i+L0H%Ln92+&+;g0afYPY*##()0KR)_x}F!yg=DR6v7v{(%~%&m;%*|`d>yz(blM;@vL9R{PUs+XRIY=W ztG37VZ)V|>&v+le@?@C25X-{gto40;M}kR1!%KceY^Va`OXe0WVDdh24LD)Vx_U&w zZ>rnw$ej5mTR#^Zu@Uoo!+w8e4DGT0S0GY4Jf+*zAp&cPfNH-$9DHGc-n_IHieuv}TPq>~6PoV?Jx4|sEaO$$)B zMasavW3M4z`#mBW4NoxV35a50=OEY;#M1Wdi`!{jh$UcsnSU z+jqV;;-YJjl|P4-IOoBS1^-1?vfO1F&?yDT#8;QjW)?lM?rGCIoWsKNM0FYp2; z6(S*M9X0D<^7@6tUj(qS4q$X)$)d1-PdQb;6-cDevEMY=D^2-_RUo~w0MK~<9*?nP zO2feqTE%>enFCjic{p7-`jSuZl7|CioBc{8G!m$p*D%ZHivqfOfzsmnSk}E_KG}L$ z4lChVHG^%wW=sFrw^|B>D~kX_Pfp=gGh+?AO~-WZOI%`*$p6b>Z*?Hhdn?$r;%t3H z5+xH1rD=OX@#xqL9j8DQ%lbY4N%pYyAb>bhj0#G}!S~-k_9lA+bZr8dy_CQHFC)Wy z-6}9HtKT6-w7=#Nu=NK}xG8Mu$d3rSRZNgEd)p_b+#JHaViGnhQrx+*Q81r(4r%}4 z-}|56K?>9Hs|LU}ZR~rPy$gSrD$uuR=L+tevSKZ?pL@N7(44-44KTfKDI-mg8N;TK z&yJ0WiXx7CCghs$|E9lJ5EHWP0r*QjzFM7)mM?(~z=8vp;Npg_dH*o?U7--YhNoVA z^B|RlbD{%lMb=gQ4veB>uu~8n`ug8ZW>FK$=>R&qsk^w<<+rQCt4wRg<=sDb4TVGI z+A({mUJVPvap-Tvy2aPV7ybhH!q`;o+?1aH>v=Ln2QR;@stpFpMW8psJHUY^)h~%B zhy1?Faojj&XI4aD^Ve+TBzT8NI0Q#5%!c@lSho!O$q?!89zH#~I|kCL#$cx)Vy?dW zZS=MnNLD}_HTMk*z|ud|4KokNZc9Vky8fj&&FA}?2Ktf?=(ztUXJle~lmwk1s+Qnt zLAik6i*>F=OIZL#)H`6T@&9}KaGA$B?l7wUnEDOX3_vmmr7Fw5Gu;0bGmI}xVO~0* zd;V;qnd(e$8n*+pFI37s&4^iO5`EPY{990gjBjIi_57@_3aBV}zwmeeTc3Rxj9epf z^nKsYRK1tHc^GI4A>*@c`aCxc80^8cI(zmy+*s)wm|=tdyFg2Bk9pCF6zkX%^TIME z59{kjr+ShCgQ0ngqX}nLGjE#x#I8e^MI`+uNzD z0M(1o(qan;H+3El7VwgzykpEW9B5WLQmY2$-?wKQTje)=@%Hw?Ld(P#zyAJ>NqdP< z7JtUi{rTt4nRNUJUxi$A6VTf-gzfhA>-(k(AOH$_QnW05$rc-ETT|bvz>J1%*l8vp zk)q)ecK3`|NXm!LynV>A$#q};W#jpPX#REobbenG_R`Id)CJJnP{Quu^ap=tvPmB2u?jpbV~KVp%m zQVk29Z`(u|+-Zx2j9i6c%H-Kr(^~)jNO>m_>!7%?K1iX>@i_miM`7%dMdjE3^+P-h= zZQv4^cC;;T#-YNxIg7_U7|AWI+OYdijv#UBP7?~;FR`3M2tc`AASu@lG(H&a8>!v5 z_)U9*fFd2UrD;}c#f}1su6goafplp@Bs!iY3JrzYjhrp*S{B;cu9@ z%DRY%lQ1WM?vY(mEzAl}0w=kO1X>Jvyr5}80np^2LeJn`U`QzBT$C!)2r2)*-}w30 zi_zp71%l(CfN^8&FeqK&o=(yz)5vw5XrQzDKqUeSsf8O9O}i*krc{of{P0zxwP2wU z$z+ou$2luHBbD9g01?T%#{`fa3Dr5w>x+V`2d?6?FJ8Ge$J^vR=aMkH#0XW@fnctk zOap*;x=Hg`lU>1svm$;Or6uE<+*SPlzw~llkcUNvlz_2a#!z%5SYoF|4XpKu20bD< za;bwNis$IUcsAf~y5vvWTszPh62Z)_i(PXfLQGMU* z0DVc9kxFsh`0TC_7VYx>o0=}yISy5{J(zBhZu5Or_0@67x=bFR%9ocw5e4x*&+GQR zwx@(7f}}_zq+Ia-{?un^nJlv2AC=NY4T_2an;I5a9I{&#yDBuXTr+a%%h@z%6=mh@ zw!$GUNfjxVWALB+BG-An(PX!eFz6xOzx;P7%MaTUAU!r{HobKNq9BSWc5`j(l6v_9 zhZIpL_sr4O>F!{pMyV9d!H;|ni`Ufxlmt2^AZvpY&P%B5%ze&ll_%hKc{?#tpI{;!zQW=Q_s za`DhvWUFaIeGmY5f(xAzUT)?dSpn2?jpcD{zECJ#fS@Y~4s=KA9_r-79ZmCkYq36} z&)(|q`G@h(zRMDf`?qfV>r|?Bz_L|g$l}Lc@X>MO&?k7Y?{n^npe#+6r?YKlju8}K zMkU;|%oQ$jB=<3Oid?J13}Zav29)m(Wue!9s5oR zfVzKZ#$R7{*jgE2V-Pevm*~(TUkV0Td&sjtO@L8R%p7k&b(v>nT;#gp2KQJ9WSf`c z=3}~IexDlnkl4~}^dTN_iWHb01P>bmlYh(enDFvn02fP7fD+aABJ4q03=%7(X)_z< z14Lc$FvSw4TYVUq@n*ljQD9I`iVZmhp6j*iOqh7!!vm_3o3{_fuuy&_2nO9CNUous z(5|+*OmX2p#TGLjuwt_J7r-HVPC)xW5Iksm2SDRb-rsDu*W0Z~l(Pwu&>$HESB(TJ zjcE`s!iAgX4~oS%TnWQlf6dc_li;G7t_w2z74IDeUbxY$?fu{(wv3jyv0PJpKPRqm zlQP>bv)6nqH)q3Pi?@r}4f{Mn73h3^NV7JZ>@ewl)q2C4-7fr=TcT0=>ZPb6`I>}u zg5XJFJ{TW99v3QyVo}$=BjztJjL1om4}BA!ppoJIw%ZKFor(7CxajKpfyhXLkV=$e zd6gTq7?dsSZVv@oDk0|6UiTfT^f)EYSL`uc696x+4hJrANfR8bZ#AJ;c8nS>&Kq7rg_ouvZ>%?s$PUqt?TXNieYHFN>rlN%uWy_ZR!8M>o8-Y8nvDGX@~Vs;Gj#Z zO!5a?!jKhJdtLv}K9UxZV-q5x^WBiDP%6hX->XzAO2Uq)G5BXHEWhB8z4iVyG8bu{ z9fpkFDeQgc|I$a>a?a3D(MhXp1`Yr$ucngk!{Sn zX_$|+i>0+#2)fo4scRS-{?2b8NpcmuXf1F4dd~nP6DA^(&#AX`oS{+HXqz?);j2K065R_aNreQ2w>7{ zZ#L=qZvo~#w=Ti*?0&d1QlMO#?|=1m$i*fI<^HHBoDji(n+edd;U!y0wzG$)k8I){ zQK%e<=_Ha*{*r%wuHjmj9YSbi2wD@!T6f^7Pb$kj;a7g~rzlFU0fH9|=<2>8s7|V70{x5lQ9$cELPcF;QHNwk^ zAQ;5hhdu&<_^p3=+00UP_$QXPb%EJ0d(U?+itw*gKEXRRc~{u3 zcNOavpAg@D9>54T^SGep+AD&>_;|Tc4%rL0=I-Huu6sv85TRKZ_Q8vS0KWSxf9~Jk z_kH<;y}$C5zyq%-isN@;^=8qT%)QDzVRF#=KX;iC;;HIrW)D)H?3JJTcg71ySdd_7 zp=(m*86j=vLA4Tyz+!TIg&L6%>$mO@|97IF+_~}s*F3N&!u`JcPH?WDkZj7%Dwo5e z5GE_-z%6MuJEZ5n{`yCL>Wj}M5J?3=`^9i=q&&x#hfcN9Qemu;?LC1QdQ>)T1i^xIJ$_j?`V(8e*e0uXG`xlyJ<4I-B#045D_ATZ}Lt0==&z;cxH}%2_}3> z6TTJHBr0ZeE;%+$L&borBgGlu>RrpL3W0NT-mEWTrL+!3C_=b+d+3t8LyNDAwem(| zhWg3uW=)#3w$Km!!0C%&_H3Tt`{l^4<-pOs@7#1M-KS*Fso8TXy(eYM9QOS**5y)Z zhM3CIU@7#MU%1ibYGW|D>(Bcq-LyJgmN)?eGfbHRCMTGl9g6!?#fjt^zafNI3c2jE z!_4ffuf#+NK|@g0P=rf{@I?>(7v1-t|G|PZp>eX+X3izMx^Yz>I(p{!f%!x0X^*|r zXZzIEN@y=(_pTvBlf zT?Z4)%&?JJX@<$9_Idga+fi4&L~c1mEGBJuWjyVc1>86f+0AQiq)IG8mdUR%jb^=LNG;xCB;OxH~>>tcQrA)J0uFJ6ZUm}Ufq%=X|9u{q6Wwdh2 z`a||iV!7CfB}z6P z4J)m*kvVW0>H~H(F)S-wVuCWMDl5b2)NNz>-Vwqy2xXV1&wuf6{~eGnlj&+BMjHy_ z33l@FpdY^cB~K>DAfR-dIgT!P;c!-@B*85}cexT4YT~Ru;t?s_=nS4>S`hs2Np+D7B; zmwxFxuYd37C)GR0j>K%FFb(Y3tQ-v{3ZPiiqv`bK3HzQ?{&`{YJO^OO!Z~^5A|~fl zc>tO2PnHK!>^`RBbInQZYTLCmk@duSWhza;B`bxzy31a%Nl!R3?f&td4R?4Z>|aKsVW(*^>_Jnv9a{b#(23slTopTLbf8e zAuD>*`xkFD_Mo#g*_Wk#Fn@XF|KAk28StfaJSsrCH{Tgb*jq5DOJt9nU{|q=(=*Mt z9;5HtZ^YNtu&mf6V(CHem$QgmMCpR+)Mg!Hlg5;qzKzGyGt5R+p>{xQ!wN-{QG_Ct zJ^w!GIWxaEG%~;M>;C46FE7uV_+^(}cKH^Rtl50e=qKhQWf2^)>G-%EbXd+$y`N*D zM(wmsN6G(c9tzSv2`nu=g&mE=VvJqv@w&AQ%o8|=sSGm{iHcIlg&YbiQlugl(=W&L zPx|X;yQ zV9caWHmU{NNCU=;F|iP#1;-m{ZfZ^8dXk9DOcq%$BdnN+kqAX*PjC9A3zL_I)BeA) z%lziAXMgsuyR+H+=5>?*N;T$axDjm|7XaOw6cW;Y-t6X$cOA6jBI1^!z9bT~A&AF2aVwb=~e zZDGkzJ}F{us3^zA#zSXpks*JDDfcqVb4G7ySv-HP;>qZ-Y0Gww}{vhR3$k! zw%+ui@a|E}_#)?kUv2_Xi`#wp{`qgLsx9#3EH<-LuxI>!C)%=VYqPpsjzrxY;5}p0%lF0-BNZ9i z>PGNQuL4C4{EQFPu?}fcRRLJ)BRBuD`@WBvx9`I%B2qnL3O3ubJxc_9kF1ueraxU@ zE?nK$<4{Hmz5BXG5BTBXF|%5p^!(ftcD-MA@b#7TO4#1sorbmBTu+2|gHMB#BbEeN zL3Rrs?euPOP!d!%^g9&w+SZK?_kPMM&inAa?2XkEse3%001>fCoGExO5&CTHF}X&8 zp!4Hw5np3k-P3!i-nJL_AGK;!KkMI{TtY2`sr%omYP*`(?KryV$Uoa{pBNenf_exh z?3?|7_|J%_X_J&ZRrNa>1wlzl{=gSEq{5NtYiKYLd&VZl2F9^$ne}r!mi0nEJ;UpQ zmNqZ?W$7*B1-qY*m@0d_{{NVr+}(+rV^YcXcIrs@grMus#p+(EzTEe?r_1d3 z^YZX`9FqL@$s6l+s#Xb7Rn_*i)|wa<6_s~|WnJ4a94Lk$2&#QrKLchVW{M&R$wDAf zD5zH3ldDoH$P6wd#yXm({pTi*L}dLv-(UwoR#xp`f~^USgTY9Y%rTr^EA4jtvC0 zsR}+e{k#4Lo6R=MK`&l5*F)q}50o$J2VQ7MBN7Qnks#M3ie^H4Kle7Bxj}5N<>K{G zrc#3!SBgau3d5Sm8QCF#%J`rB*oYBgMG!1-3|oBhx4=$w%naLRb`e(3ZQNV_A2BR~ z7(kXp+Frf-9R4s5*VL{hU|+5uTZF8|dXreGgrd+4XuY!g)gG+1Jgtm>Cd9@u2nr<- ztQqaEw!o$pu@mVu&BUAtdVnCqHi+9sBP zC17VK6!glg94E(hi2w=&fyBV2;TrLHK+r3|%Q1RNe1F`(#TUc(?a%{buwg9jY%@#i zJ>kv`2?11%h5@oF`J?Z}&9|!;OY)vqms`|B_`_4=-~?N|#*q8fV73yT9z@}5aDL=mt5ERhK(OXFm|+Yz@)b9#ohN=@Kyj8k)$L{GqjfOv7i)1 zb0C%736Mzw%RtmMh`-(H?_YxH)q&!HS(oFoTpM}aYc0$ef(S4FciqN|vHbERj+U^e zkww=7*S*Gj2FA^{oM*O~G3^w#MKuIhOZ8ebE?Pr{@by5*Y6(K2s{X=CdA~9I><8}b zu-WU?rLA>ugta_5Ga?AG?H7RCc5P-EGADy&cwfNn?+J%uzHQLO!Gp1OlXATzYH{kSpfFIWCvh+>kssUmc+sJievtecy+SO9k5JJ$S7GEJ3 zt*L?}RXfZ%k?HX7yIu0lE?#eAVP~h<*=x4F<{s`@Yte|tn$t`Wif%h0t`xw_L*`h< zzd-W;=)e9uPlI`S+iaVeF&(U#mOtg{O>IYo*`>aP0X;v;t{vOp5j>vN%c3F_h3;fp zt5-5wOb9{<^GJx?4qWzfa5;ccGEUapC)ro~FMfAOa@{*%IVMt=Wz|AR8-Y91ui$sp zUw}uzd!Ge(5B0h*J^a736N(3hP*!WTMlBBnLYT)Pz-_@@-XjdP_9T-togjTtl9%v^_{8m!g|$YW^*7%I&)OzS^~gUe*`;62Q(&eZCH z7DWaG4S^upJ&ju0a?K!vz%auYige#JT(#BlP)n`H@+Pq;Q~u=vbKLAO%#0Z`8|E@L zY!C%#jLCXk0s~y`Ygsp=f62l{jx96k$w8jBDi&I5NUI^_xDY!C%rS-{0_S;TH+5bY z?3AfPOd!GbNr22Rwm`5sv(vB{Gi=z_!Zt5-K~YtxH^MB&u8}&12BuuPVDcy=2l>e% zI@!h1psPa&LDPcj)sVGK2F!6rLonVn+{9LPoN_6)$FCbQ-6+1l0wE+KNhpz<+wGc| z^R(zr{q{rTl6APSBOTfuz>`52OD0A2SA8q;S9Rar`6g;13pKd0%$#G+F&aDm#qYUk z+0kGlUrUg+b@dpR=|kdpzVNC(<9F)zwkh(uN4QrOZDi#*PsVucoUa0Ix*A+LY_J~ES|~c@@=J!wi(c+1VxjCEu?!eJ^ z@YJ>cFy|Y1y@uL7p($9Ju&~3!c^JC~?*uMNF1KSWYn<_Ggp2Cl1C9r^>JlRIlq5Ok zJXlt(jjCF?YC40?U?n*4UAq28Uw^eNQwtR=I%A*44KWwX2!Bjwzs#p@0ssi z=lyWQ?rnjy5KkgnXXsMp!)qH&OUr~blIyYu?=f!J{tMhg;DALykZMu{TiExRH_zJBKJ7&E>Y&S z$IDsV!oK-~w9tg}9SB0MAzLvsGX`U0Tdx*ISi48)cxY+RhIzm7-Te^}JA4jlt;us( z!p83bvq-6(PUu3ex#plC#^pG}Ue*j^gqBp_g8RM&IXCZ1e7CFWqMc*N=N3u5nv$1n zZDHg5L?{yB$u;MkW9GayHri(M+UsVt)+n#sub6ACrWV#PPm4*EKLKKi-zCp$NLq5a zz}D{pMaVkXqic>`j=?r&SD0-xv)9IAYpqyV%{8sbIg_zxT)Fa@V~LqXNNa_c!cx~( z`H4`(@t#4>9gc_dY{<;Kw#_V0j-o+okcJj6ANTA*F~#B%WmFsToW%|7?H3`Xj?gpc za_kT~QDg+0u_hxgiI6HqmarD{@m5t0t_9B=Q*f1l)T;q$&de6}&QAnVM0C$xI~-?Q z8Z+Ch8GFrMEi>`*Ey!9e$6V8peY;# z+r3E9(>~EDCfbesHi$eMr8zS_I9IprR0OhE+N~UJl#3 zIQMb;4zmo$fLdo%M?$*P-BH2}77NleI^Laq!gE|ZW@JO1F|z@YEpoc2z__otej-2$ zH}{m7F%M@3**sl_%(G$GCnp6jCLO*yf^FEe+r{{OLUDcFY6U9lrgKk7!Z3wJ=P@M1QA{)p7Tl1D7=R5T=$v6S~2 zV+@U%SZt0nvrk?xtgMR#JZIe*+jW$P$<-Lk8cVt)DMev24~GfS(WmLe7%4fTYcsEx z*sMFkBt`7!@f;WHnZ<(5b;dwqEeAWr2L7-ki4#-$tHkJPRYR@@cyic{B2Gtj@;@UZbPArv!=MPrhm|vHR|TX@%I&lQV-g?POXqGuOF( z8YF?@>X?C{dxZn$K+voi3o3Jl&WN*t7+!6b)Yzj-hy=?#xtvQC%%@=)AeLxrbRgs0 zQU|3o06W*svY_T17NI$Xt4xwhEHARj=kS7O&ISMtUmQ__(#}*9RV~!v(DGSKa zKSYe@S7KhE#?3KL&vDM9=F9;ss#%zY#FQjp7K5cI3^X^7q@OWri!d)!gYJa9*LgUf zrh%c@V_Ear_q_ZQf|oa|G-Pisr!b))pVQYJse!Fl7I165MUI-bNAG(+ofk<0tpCEpV%-$S`5c)s z=5loR6VcoW@%Zy_Z%@%8sBzHyn@{74VP#hu;J_U_tYdaA$P8owcMhW7+B`*%sz>Gb zdHH_1gKwE4T8q@8tToV3oe4FyDnNbI9+uph1XW<)DG#%ZBS-|Ru5rO_gJ`!lSE!l^ zO0fW+kc?>8Q`4F2AR{$*4tG2VRq!e}e_I+Sm0;g{x2&2wf{8Al*~TcfHdm;e#FHj+ z?qC%V?*}f?E(l%(yHqeV1W7}0WwT`sPl-KDbQHnzBY~*4HdmZ27@syOO2O0+B6 zSEIoLfk_pg-^}$Sak#qu6jV$)lQA;aTQzCir)E9TTF?caAO{+Hf3(q2#m)=v3E~QC z#q!%?{>GIa+N2}6AbF2k1jPLnHE4abjK^_+w(#1`4$4Uzye*UQqQiY)S;x48fq7}P zfqxEUudBmSHSV+QaU0_}4$zLgcG{NxJ)cVl){5o(1Uk#MR=3Zi4Pqbpd$6vMDCXJ!`~dCziVpHtw}G_{Jbsj_?O1P|M@4^vZ4;8Z=vW(1 zG_W#XjdqLE;;ACi(;ppG@}Wg~UIF98A7g1@$>C~4HU29opgNL`8ODC0q4h_rRl=MZ z9~-5|FWdzx6$+TfFteoI zPLjmYn#4NBzK^!`a__wge0fxofy%w2gM|gbk04z$md=0D*ZKp^Xa2$t0KbFn^LD}n zV#8+8^b54TRsi0HP6EAsFo9!FSo)#Ep9lb(JJtcegQSHeJ$5t!2rRmm2$~eI)+x{) z2DEkOt9K1DF|fbS_jK2R)+tU&FzHYWv#K@{!K9j<(UJv8V6Ec=>jwgp8rG3{5VV4Q z9HD)=V?HO#q(I^|D|)c234kjTBwp+HGj==|z#C@jPowG}DuK)A^X92YE@&3yZ6%av z{LPvGW5Ij$h@2jj3CO%DF`rq`lc-pk$pwrBH)=*J>}vv`Rx=hP($&nwf>u=<31JVm zEXbTHvmlFIO#t#SRFH&q$-Drk9w+AYBr09=GRGn_FK2&l(MpbQ~ai6bIn&9|TBV*r>|2l|w-V~N!1)|eWB740k60AAjx9sCIc>Ebo z?gjP|KraeQz70%Jz@J9PN%3yc>7dO)M>5_k*_bo3pQRTF4LJ3Q_kA04 z99%Jef>$R&34OQ$gkdzixUXcx;cxx{XE-SnH8^&IFS-bXVsDD7os!0To?5A`-+WDY zG(fBd#9Z)d5Q?PjG-BI}`$|}k+L70U=fcNOG!;QG=6qx*QpnkG=n?1pL?kW1YysRW zBh-M8B91z|z`Pi(PKt!0WXEP&4BvpDokJCfVbi49qS1jS4s*Gw zZV+;j;NFpp?>swgW+P?~2Z+@HpVfEoq22Rb_X=Ryf3W9ieAllwMhydx-;VJav4;r? zxqr?{zOMq^UvHALe&Tx%2hERP!1OgBRtaKSw}DDzp5@QL@37}-d{?s32yFHCfO+sQ z6e#6sN^T5itOP4oI3lk1u(^=j3muN-LjioX@C3PR-8QOm_xQ;l2g_{rYg|{dGn$@Q zhh_B$k~OuU-{IrWSdH%M!L`8_rE)yiZ>R7W1+2G*4vOg|W$OcV@G92`2O7_n)JEs& zfpv9jk~P)fG#$Qkn~p2RbO*%q{n*Tijjc0uP)@JU0Ur{Ep;>C4y?%A1k=UOOX(aX@ z^nPa8#=axyprHMdFGA-@V6TLwT0~W9fgVJ4Pn0~_hRweLL9ZfSp96mLOTW}&iiY5tCxhnnlPky z&8RkDrkM53W9NL=>saI!#b&?S(#Y+-V4twO=OVXv@I1H~ zRIR=n`l>=7Hm??Ds@N`JRI})dBkU8SM6lCY?d|Yz7Cej&-{Ro`f`YORBL4a@3<|>) zTV#^hRL}?nJDJKmV4ncRahGc+#qmz_Q0TY9Fd)Fbb0cUSbzum96as|dm!8cVq>J}s z&a=yP&tV^{ylajj$a^0QgI{>tqc*`9zAbc6SZ_%0Hwm@hd64VpZ?2E7Ju}Y^X3l$x zeQff4t|4;n&@(&Cd5nI+b(gByli^6RHI<=Jvh+GSg2Y!Hs8il?hneGGbKEoRW09wW zh+Ly5-s5G=b)Wy^V=#Knz88k5?GS$TOSND9N%#>IOJ9BUp%60ZxtR=O=D^H#Pq2?H z&jwwBbRar)+G&i#%$J`zj5aZORftjCQOYIavH-OGE7umyHXX z>mIR>Bu@s3kc33J<{js{F~j`g&0u;_kcKOg_^LyrXBHy19$ zY^<@t9@>$2!*=J=RKN2O+1bc@Ux;;bjjLR#n0SZw<7= zC5TYwwB(X-@q*5%_^8kreZ_mKD!7wy4{*;&Kv*pzAoh$kMG=;U9z4uBgw@1u6ZDc? zZ>dDE4jMuv5epG{078X`AkWu(@vR<$G*BlZxN%%gQ>zqRPtoex!_q1UIq3RWxe7fV zLSI#qoGK@K0bMP^=~6Dn0@6yLEvBJO(}uw??7_&xsG$j((AK@Sd#jS0bQpeH>*A_> z!?!oDT$LZLRG6H({+eAs(l$soKZ^(MX{iYRBUDtf`ZmA=54c27rl@oTm)lcjsjn2S z*82^uT0@In*J#zZ>9`P+KAab+8@n6b$0ML)Ci>uN!0KPNWUh0Q<@wS>Q*yD^k4*>y zBEqt)HH{9AgJIa=*+|jknAnOn$?n~5Dg0?e@HhNG8-06CxT*=?-gvO73GN|XBblxW zV8Z0~+Y9)i+w^QsF1CEK=99%8U2d*(JD*5JCBq$p#&schKn!Iy`T(_qx3|eLknQn=P($zhoY`#d4k}!;q9N*X-VIR$U`_{7hf#KpCL-1?r=*8?AKy>{nRFS6}(wwPn0*j!Yc_Q3SvuLxBLpQ7;gZ!`;$#Qr_YWr|Xz|@*uGe;!jPz z;s*5{L{|{J>S&X-?|Pq}F!8IrS%Aff0m4m=J9^4Hw5vlm?scV$Q*m7?yF0zolPum( z&P($ALRX`zBuVpl+BBRZ3z>Te8Y(J5AfQ3>mgL*R$^F2+ng*QuQEm0RNcX+U@d@*8 z#*N6NTOwW2971tG1x0c5EV#>0y6`;6+`oPCQ%A43LHYK9?DwygZtRPLwG+{o z4P2Mb#zt$xFYvhoM>}^|z@4S)ccgh6)i$l~diz7THEOec-}Sz- zib-1<8fWcHl0BGO_a=@5ynx#|W*1QVWjSjocz2kzbFe9H0g*N$8}imAWl~QktMQel zl$_S&^EW6-1R*iVvAVnOS0=P*Su_v@w>st?eyiUP*{0PJD(eH5X#hTlQj!Oa$k?HC zPn(xe!CV`thu%Pk*ex7sXH_|mTFP}I-%+wfY%w>H&KK^tjx29K)$hOSKL}f6X=MY_ zSv&hVI}UOFoSjp+4|oB*gkxU^_H}%z!O- ztz%gVbdw>Gm2!SsEQMuDczi_L^yqw69Xi{k+ zUlP9?dX(htR9jl#{Tl}1Yxul7_SyGo&nM!w4E^tK)G@*qaJj(?fEVBfUuV!Ec=@fY zx!p5ocww+R98!mA^V)uSZJ%qU`)9pTl4vyQ4Z5Q;ACp;K&W~%q@peR-V9ZPy>3ZL* z?Vg$@mIabFS$lVWb9vwW{9v~4^wl<1e|s}VkcDQ9MM$MQ7=w?zioTc8^eTp0%~by` z*aQ1pIrf1pyTucC_(YFMhL-Zrrx}{cagPSEP20QQ;UII36N|D@6sG5B^#&F`^P; zbHC}=^$ifl*dWa6K2%G~F{af^UWEFat0u;ml5b!8f=txyZGQTuZGL)x^OuBg91sNN z(R9ah53AQW_1et5$TD2Gz+ilrbOtc?=T&ngdAb&A( z2Df?hc-6OS`*Svbi}~wJ6p37uNXLnw2X?jblJc`9U)>l+l&N=E(uoWlx=3BTKU0GD%es-VWVwqVkT%AdJb8vsq7aR-J)Ej0juXU?s79n{R8!4! za!(h{RiMQBgB&9?gHfTX4Ma9v5%cvh?n)&Y8MIVyAIh~}>6I3FCAm!~En-*3_UWV} z9U~{8Hozh+)qv|UHns# zpa548&!qdogf!ejv-lp14`vL2r=Lhp#o!3E(u!8JkU>)T&jkdRAQ0n5Ici4Nl=!0+ zwdP1pl<^>#h6lzEgyxcCXuAt=(hy>|V&*Y&t|Fc13#C*(c29X$pp*iJ?GC zOscK{4>E=COh2A7KxsJCv=Y-tn;(gX$jv>fXhs#MK5B8vJcwA4XQ+2UWVqYPV zYt@~T9!85BnA*HSPoQhxc0Q*v6gs667=~QGBs9A=L?pt%H}k)5v{%(_@;EhB_wC%U z{MPI2Q`kVFNbgf5q^x0%kyy_7Ta`C-SLV5sJ+Kn@calLdo!kyGmfJn;Sx$qc?;q;Z z`!@AR&Jcv;PIgZhVNWO`sw2ywZ0zyfWKqf$yl6b`W(GQZt6`K|XBbU|7)d62_KO=di5 z$W9>M+}n6XtB+OvNY3Oe?hg!t;Iyyl_V;fG`1NGGG@K@c8v_@O%Mzn;wlgun&fgp{*orq{ga>^#iU*t2JC>R*0({2r`rvP4bDEit&B7=O(uWJw(27=0wG?@SUTi}=EfB4=abIk>R#s&Z z8A@cx&I>S<;xHDGsC&DID#yHj>QO@k%pnLuK{<)AhVD!Lsj;999ynmjyw=?scWg&Lrs8O_`=LQxq>(VWdUjj#*s zjW~_XxX*$RoN(SLj=f$57i)9#J?@urx|0X^2*Kt!f+`beO>}>oZ%*XaBi_~#lvYO| zQOzxqe%ncu-l)bTBSja3=tLK$bZ1B@%d2T5Gt^9!oWzML7`5A!`yP%TlYZXV5*653})^#e`YWV%JGCF zAHZCzxz@nhnltd@EMgZm19uQKL3NlUQLWWXBih%w_gF5F9E2!Qp2w+lN>YZaIDCP^ z&TJG}NQ54Bj7#K7@K69j=@8StSH}#>$8q&nzOEJyfkf9W$nhIb<%74;sD%!495HsS z^O;b`dN%W8A8d~k#}hNQv^WiH5nHp)wRfgD+B@p`^_B0(3>?U^X;H_HGM*MorZK_+ z%QqK~zMh@^o=*o}0?s*{3JQ0KAqKiUFX)3vmsrgOLxDx`B|x!q zSh;!iYq=sxxOJztmP-DVRI4%SaFAk>4y6hqa-;zHx>TIV!}~ms2r?o}pP6=OX7ZV_ zJDfOgTXV*-_RV1{y!Xea-syw8eFg4W_Jh+Q7Ds9Dx2IWkyQ(KW!8g zd>v%o>#=M_D-%0*6-9~-Bgn90iWw6$ESRKq1r$ZiwT{vDZ1Y)riEb0j=I>Tjs`TN8 z5Htj`%l!IH)Y3J&khQK;)xIc-qL^zo4_|+K)~+$oIF}2lxZr~OBhEBb=$*)!JgyN(z zkwn=~%o52)p&HYIS-Wn}uPvhHxe98`Drm6Zq7=E`NBtD&rntTC-5U@zo4GVfnvDs1OD%BWPM zgMtBKFS~X$=&zd)s4qY+>O1Ooxt=U*!tYE6`u zpsFfYLTnS;Q_+5L9t8z2a2{`85)X*sqeQWl9aD)ENYbJ#3TkSbIF6ED)$vH8TuM;O zDEHc4Z^XVk8hu^T;c1u%eBbBg$s&{ z=n-x7pVlw58>ZygYeTk07X8-KE<%=_?f@kJ^^4bv^L+i)Btn5=v}kP8(7DJ2V9+Dr zL-}R!7-egypf(lcM95gFMG|EPgC7EzX9&{w<|NDUtSv@mdpr)3#AzSR51WK#ySb-9 z5m`AeN!xtc^^g?TYH=(r?CtrUlK?$n04~V*Bo_2Y%?dr^zM83^PNinFwZCcZP;q6D4Vh?8+?3n?|jLX*mfQ`Y^-;@!%tTz-SbEiDD~) zZ5E{!c1#)IUmfrnA5k+^g^7$%g=dw6ZJXrk*Ef+UTF}K7tN}y54ne-^xW7WuGfM^FZ&TvuS zY>+sOh=9Ou6V(X~8jc$Agq#-~Fbe8x2!$V_uA(w+MIb{3NgASvG(o$G89Z#5K~-ej z(bi?$d{$WwDD#`>@@{t^ZhDoODogwIwLV)iaAu-wm^r+Gd6OP6aK5yze`s;xLWK(o zEfqfE5wXjeMB^e&XkXD#y~YJdrxQTbPwB&xBiuT55}7$TXNU^?*O=f#_3)$S#R&x^0oaYR-JgchY=+6d&K`zaYYh{M)euW{~{PptLJQ~rN zBks*Z2uJPr4n)qI^nl@)pXAu2M$&cco#fcuu+0^xQ_MB6EvjqYd#7rF6deW7G=#tr zY-H}0eZ;AOXz|}&{`_0awNoMKj6`9lLZVB=ZXcQ?x2 zUAdE08kl^!Us{V|v+aAHuM_yoalyijFe8`=W`a3{iyb?hgTO;`x|{!7Wb5iqvXOLz zS1zOdYj0Q79+@&Fn<$XLCk+1jQ~px^X8Jk&%_NF1425K3Hig8TB8l#T#B6R8Y~T;; zYg&FcGb#~nSzWsu+oC&(l7Q<-V~mJ6*|@usq_*!;j&)L}awr-X!beMj8DU145i!#^ z@&U|^_AH1Yf^g)h<5vq3>COgXDiWRG2d~At=aAG#sjC76(E0BxztXumXXm#2f)f?R z<|ZYItxH@MM8eH0x~wa!3%;B9wm`a~S)}VqIqB0%-Q9B3#wH{pNTSP%LA%hJYV}{a z6c;ozQ<-);Gu5<(S&A6Hh>CG)M(%b|17a-cL{6}g_{TVyA~i*Th)YrF{qgIk<`Ig+ zc%sTy1c?$AxpJ`*Nu&wB?h0;e%6hJ|k`e*wTHCE7ce?NHEE-x{MdBDCLgKrw(@Cw# z#Vr<@sz}}7Je6Rkn9inbxdt@rmbpX^G>4lb@9_(QgtR04bk_by5~;HUz!hA+@+(gm zQgm*+j{H%?&?b`}z6ea(lyJMG-KebRyp|YML82RpYeMCL?k{sa6&&%~|E?erit^wzqbEW|N zsvcLc`}Ira;R<dR>NbF1`5EOfggSe3m~Xo6FI;$4*RSl z=b{{Tu1nGQR5Z^n4kLv!T*bB77FB4ISvC^=mJ2iCGHx#gXT3bU?I94ykDv1t*EDp@@Xq_n-BTVQ`xw z;J^jMdVbBbLGi_jL7N1%88IxjGK*mAB(miM=TQP@eUZPAGTd9W_DmLA!|d+_5U>uC zoI9yCj=>_im)SOwGsToGCQ%=y3`|?*E#Zt76iN*9-MNT>vl>>~Q*^cOpR+Dwvs4fn zvYu$Fe8i_qRi$d#0tH9%0aDkw;0_l8$3T{q$!rvb(Ws%og~;)tmeR?RMQ50Wr&?wW z1!&H#8JepA2X@n>r?y*d$88Cr6i6F(Y=82*IY?hko<1<9`7|0$W`Y`Vha(?wUVM}& zQdR~4OULt&6XYh=Q zRkSu}gR;1Y+OHp^ir7=~w~^0qMn9&JgZDCIO(FnycCwzrO7WahpiHH818qXbj9w{0 z#)cpGv?Kyl6%Jx;^LOWX!+}x-Lu3hz(o@?}A!5XU;Esg59J4}3r_=t0bgu{C3yS17b+fd@O!m7VH0gW=Gkh8pIC4)7O# zH_Q;RzD7QRQyMnRF?WmD0!O|;a)-;JL=n3Yj8H-bV<@y@1aSeGt9}p&sKP)-yQ~F? zr&2)Vk8k#}MYBc@eH}DSJT-Y5Loygfu+sJ&(8M_7oIWsqT&P)z%0SLcWg5&@Ckm4* zJQZ7Qq$#GYC=6Jc+l)1- zLG8pWGaF$9iH12)p)pI1$i&&sXZ)j*9Bj>La`yfjA4P^hNCARY`+k7`CZ%t``tERS zXe=Qo51gia!z}YsYem7jH*B5g5}~_L!7PQVIEbPs5{2T>{~IP6$(;%nJ9Ib{?bwTu zR;>aWM)xn(_G^(@O=HvjDdafrJT~P7QwkX~1kS-}U8fkf(>Ltb>*T;VU@t|^2zLmx zNnw?BB+pW#*yBpZiQ(-w@9ze?5ex-Jg#)!JW`PA-Gst?nl;#5;)*1^D{qG_-Z~8ag)Rd1+gdGxY znM^VWqFCWYC+hGsc%0m-@!c}jZo8(lsZh4&q;Uq3OgVZeeImnvpiEJ5z#sVS4=~^3 zF9cpeHJT6^kzEkl4IPtu-x~I@DiVh=1hQkYGYLka*w?}kgXr(NyypZ25;8cf$YCu? z952UUSu(!xp5lMm{8reI{b{&61HR<^&l)em@!ddn!;pg(Df!As9wcV9B z?g0Kh|HfbO7ylK{%Fi45mn^lnAAR_i4u@DI)_^qV!^8t|dOlI0mF$EgB4M`&!eu96 zmSBWlDBg2_-&KL)7;tD3NCr8R&T$Zg=Zv4O;nHWB`w|WjKy<0x1YFr!*!$rg?%^J6 z79x2>MO%>6f|5IgG0(x_SD?VC1|b_26l#QER%8e8BWU0k)wzfnUVToBG+&e??;G=f z^Ye@yw)u`-edD9XhC8ol34 zoz=h=}7>b9cv5& za~BbgHMEYFJ+!nuTqk-YM`LHuWYA3j&nUH=oa= zb43T_kVYCIS)Nz2eC3JzKyaWr@IKYpQ#CwQ_%wkD{ z!+snR%QVsyE_+#R)R@4TCg18X5%|kW;yCV3+*zA!MNx=@zjs{^`>7Q-TtG!K0Xdf- z@Fb#z#rGV~AM}^cx2Z@kPZ1a%o9HSDBAger`ro~sl>W9TZ;R@-sgHcr+rvHF!!_EW z1qHTrN}>l*)0m9pFPADfy8uw4$1Gb+Gcq_7JUHU56nrE<^?bAjzNE{Wp=Kmi^4>nr zv*JKSa5<%8ZV(kN;fA~TX9D$$!hnNBdYPb(|zyV_SmzUx1wQt$)SnK4x=jFTr zKkFL={`Z@wxp~^VVZB?{`)bGg_{ldwP_QsVn;@+$xTA?l4WvffUyn=mh+zXyl`I3|92+vPT+fvHEV9L8&Y1j2ZzJK2&f?zrRju$ zDHN75o#Au7gtG-elbTV|n5c|}4CDf$P-Rw+lI{KEUEmE@WNqd%!^69J#7{n}9#tQI z=BetQDtuE8qzCE)7%BJreeZAQ@0~ziYZ((+c{wFyRlwk|A|7gLQglx4&Wq^M8awu6 zD?!C^aQXMO&rvrqaA#x{1%!x{0|9RF&Y$dl@LwuA=vt=pa^CaW`rn^p&6+i9p5wUb zFJ{n(wZM;Y^1UvPK`Ry#3U^~28jOB_u820ToJphE5>wS~u2C?0-xW*C7Rix^M4(U` zyr@ch_9uU`N7p`mpnIy~8*(5&kfD&V-?GdP{xkf;<^2x~QAIB|Y6e)_AF_hS(|*%B z+N&fS@kF;sNvs?a5KNB4_QdzKpDP>!WfZ`XgJFk=2;ouYUcBT)9_|(&@RQruetwQ7I=RHZlL(;p`mn)sz1vG08RnqT9A;_8LG>>|j( zfFX#ifD{<~{44xCm$&J1go(nWLPio)IFLB@|HSXXuR>u@fieO$6e_ZUD&ulW*oQw( z|HlS9Kr!c@nIU|`_tyLBGnp?H*S~-G`L~V}u*rBDJS}LnG%6L8G=hu;HCQTsL<9%b zDzp(DYpL0JMPBje+xYVDh7HtYiU1LO))DB<{mq+ugB82KFVe4zsN3-I8z$Fn5Bp^Y z?CUSB4}Rp+<=U0fATk6P2;vY%8p||QKc9$ci&Iyzh!WC{DEq!i`kkXUuM9UOZ*cf{uiJ6&mf;hG-S-6X@nbffU>G= zUD4#ctrRU5?cn#&_Xjk>1JZ;70-yhQu%DjM?q|%oasNdTeQV&Gu#X!oLL-*fSmfk= zZ#ebhDj5W*XPI$NfoU0OqU{Mo>`;$N)Y%`$$EZ2zQ~mG?PFL3(`(7ia;??5r&2WiO&5X z@m_mezwQDr9Rb}P8>9d49ISOQa~{<1TlUxN^$Ujhq7&mM55*?(X^=!CG>Q&In+zk3 z!Y-{l$BSbn+GyGb>ff5L&c4b;#-K4)T=-4uJ&!nj?KzI`e5d08+IHV&)`-mg%`Ld2 zXh_bpu<&*pq@FUx(yL7~{iZ9dKBSG(N3>D9BwdKeVF(eZfC&tIt4u&(mVlXIy~47F zSY!$!2}Urib|I8P{NUvhe|Nl)xa))TJFN11%RPA=%I=Q6o_|`h7%djY)`*q-`Ud~; z&E}Uj<0lN!_K-e`A2UE3okR#v{={ggP-x0zLa`Xe^*d2Xp=3~4D4cm9g=Qro#Pbqc zLHGf;{M`9Y^39g{dd~y?I~4sL+k+jHT-@(>6Z7nDL6hrXX$hF7X?lYt;zvhE%h3Wy zEGz&E>wkoM(0eEE7xyN(0n^mssOfMQb-c8G{KPU%6PDFrvxP}1En_(12~P~3u=NSw zNAIow4E&6V8%)!5gAPMWhqI*PrtJ?Fu+8pw&9cb(sX{kFSF~Cq3&1o@>y|ZZKiasr zJ~2&9)5L*Uo^38?bG`B+3(FIpF#g2%D@^NeuuL4dZFlF1jB*RQ+5=6C#kBUu(b00W z9C5@lS{N^*d+d9w_uRuYO%v0!W?GiDE}nmGt<=@g!m=z+@B~j7ePZx^``++p_!-vR zn3xup=^!(hQ${bJ`?k|{8)J`2gVx#@!`#3SA||6Dnsr*cFsG$4G&0#3hPiK^p8f$5Dojp^t7ENV}J(=u4q zMJ+Ozz5gTJf-+s4x48~lw6%@F+{8{I%jLANX3AP&Gd5{qO&4Zk&T|ukh{?pg?&Ulc zbG^BV&9mj%uo|t&%!av{T{JJc)-++#=DbaqrnS7_>|$T>2`n#V;IBE5UKrH=!KImeLe(0#Fac5Yx7=Ng(C%Q9$xg$7v`Z5nKz zpBvc4xgiYJqe61|?p1DVA3QGRoYqMrjO}7>Vi##xFfz^M!otkfi6$dh%QzRh$+MX;*L(SL9a&8GWEdHm24lzwnLQ@PnCrcKxsFtFUfjdrg9G}Nztu5U B?Gpe1 literal 0 HcmV?d00001 diff --git a/imageio/imageio-webp/src/test/resources/webp/2_webp_ll_alt.webp b/imageio/imageio-webp/src/test/resources/webp/2_webp_ll_alt.webp new file mode 100644 index 0000000000000000000000000000000000000000..8559e8be91641cd1ff67a51a2981af95319e5ef9 GIT binary patch literal 27670 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ɧnb`LO@AdBq%c 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

1q|DQvwj-rQ=oD1?oa03ev1>ch=N2%T`C|K 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 S0000000000000000001BIS|zV literal 0 HcmV?d00001 diff --git a/imageio/imageio-webp/src/test/resources/webp/3_webp_ll.webp b/imageio/imageio-webp/src/test/resources/webp/3_webp_ll.webp new file mode 100644 index 0000000000000000000000000000000000000000..32ba54bca68d58e93f75f62b47725b12c63de06a GIT binary patch literal 152614 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 literal 0 HcmV?d00001 diff --git a/imageio/imageio-webp/src/test/resources/webp/4_webp_a.webp b/imageio/imageio-webp/src/test/resources/webp/4_webp_a.webp new file mode 100644 index 0000000000000000000000000000000000000000..d4fe932067a1c41115998f2e865cc5ce2ec4a678 GIT binary patch literal 18718 zcmV(!K;^$uNk&E%NdN#>MM6+kP&il$0000G0001_0RW-^06|PpNWK{W00HnuZQFCD z*|u$SPP!Buf~bHZ_TGC-jK+`{OT<{xjbe)>MU7(b9gW7=F|kDKy?0O(yAcI@M^Py% zpy>8vp5-`?c}}kDx@$yC0RG?q|L<#y?+y*e&J$g){qak>uTUk~upnH_ z_TBR&d40G`-Yh6fA9*&|sh#~$IYKOVRgnA+SRFTVoCs?=%y zfqk>efmUOJshpjjkyttFz40la(T5VAvvGJIlG<8tPjk&R33omm8?(^mB$`Tqxh4P>srNBR3jOdSNlvz zFXRQi_U8oa`uGA3PyMq)VF8vT4H+(ZDo>k+PlenslotS&X8CJ-cO&I|y`hVz9<qsPAIC@S_t>&4RGv^Gy_G@;a-BPX_x@rUI7UcF>nXQKOizAg)m`@}r5=o|T! z6GG6Nn-%~Q>5zB7)#R967~Gt2>k;XsytCK^8m$fA2;sLnTt~0sY-fb(^R1|Ko{oBT zke5SwrnLl`;cs%TbNY!Vq0!=nKg68VRxmLmot2ytfGV%(z-f~U%i-=Lq~{q-+Y#BG zXm_`k%^5vn2`wmu)?!#i)A>m#c+wSJmVM}iK1iiw=ZyA}!MmuCtuv9#+jFn_u3)B% z6Kch^&>Z0B^HR(TEzQmVZopSOzrOK5iQ$YCf5M7 zUuD)e6}Q7wejI9y?Nti&`sDuekC1a3R!;`-q)NnzD~yLTokEk{Y=EVxRbLS{MfCt+ zW=^wv{$}F+7u63L6U1}6YO~P{AuORX;>@#dEe|~a3SWHX<4l&)WRDjzqL{0`W3jNW z^uj&r2+VXhwU#lYG*9aqy%?Ru{HQdRExshrmP4!T3kTsu|Dd@(kAk5k+;x3(*`}~# zQ*~A`lMktRq#-qUR!`8Z08|pQPa!U&4&Yu0D9&$2Eq5Z*X{wp?17U0do1VbL04Q!I zd&5jGYMW$8ZC=+?wFO{%CgdrA&||y3puB%F((5~q8Z^@@J$xYh!5&a9Hn%CvG+(y1 zPKK0WiXIC9Y!||h&?YwqszHoAu>wxB;3E@Bcpt`EOGXTuIb+6*fghK*sVzPav)-sJ z$Pj4#MlkQB(-()_%es2GkmGfth>)pLwn4#_0 z;Pjp@h86sU%vtwQPyx>(eu1}?c=J(K_REx{-Oc;!=ZOEvEKvc^_8 za;XeTd%Uo)!_4Ul?J+_QSm4kN_>YJ>f+C!V&(aX32{igzKOZ=D-~&p0H&D>;Jmn9) zP1fGi_xRTW4poTs7f|r6n7(Qadz&6cXO*%Gd~49deh~dloGh-1lsef%$T(j2guudY zb&;u`ITDf?DF7G5j8dDFqNCoxM&=X17i|D6rJ>Ji#G z9ux6{m<4Ks$Zd6%f)7*i&_j}Mt}N?X&@8r-?6J^@r`=&}7y8TKkuD$0>8ek@CupJ= z{#DRnKH(J+oy06st4Wd<=0`8s_kgPR7RJn&y6EU_^7k_4u!LkzwgH=q!(hvcpJW(I z2RtOgQ&3GoeE6QD)Z}#$9mFhF!z}9W3FY7+*^DuTUubA%6pa6p`Hah-?Ff8VkL8Pv z7C}f6L=JV361*v*vzUb%Fe+EiO`8hfvzrGkCJ<}L#!$$3bF^{u=#cyL0Qn$#z1{9~ z0i5FyLEFgb7JX5MAwkE{5NQ5`2lF}JY6G74fSlECxEd8g2MyFEexP0Bco7`o0DkvL zvYWmEVq&x`rRMmm(7T@19B-qz-9;hm_HIV~DdxqKTmPInb7KF#eftv5BxeX|rNd&t zJ0u@riV#+pZvgFo)i+AaNDZ^7eGzoKG=k%A6*e96cGzc7W$I4aIsT&%cW8Gh)pFqS zgxfk|by!`*RVCR8?ZuomD1Yf1E#GhTUdtAhG^|ostZ%%SZ`D4d&RzOUai5@5O(65- zaAVGBOIh1H1O}EEb4?4wfY9R|RgA1eP6K>j31L@pW&8edEtl#KHw*(*Ci?m5d0nMn1FoqcOtpf_lNHUMq5yj9x>Sm$tzai4Pz03?XH zDkyZ`Nea9>cO#Xv!}Z092~|m?-q+qH< zfd3bN9#`Nu03x}|&8SIZVLx6B8|koEEf%;0?WfUcA-Yb92~ZkG{guq8#sdnyR1C0M zCBptu2CQM?sA@2$)c-GoL~* z1x_#>mxmO5D+q9rz_0N;)q?D*BwNL~6oIkTQUn1gIp|iL3+%sr^pzAy6_e?q&A#kS z%Gg>*!8bzgLorT7Mwr=jr~Z`XyN(|{_WXbwjQ=z-n0?4MYw;4BA1E&JpzIK#qmmukce@Yu? zOA+(8jw){`Yq(0OKnpNb%tE_D)Sf|J1^|~rFml+Qp%%%8Q2FKhds!MT0kC+uyBOv2 zSPQ>ItsJX^RNN*DKDzRaVOTCE)uJin5vA>*QqFFJn2vS>bxe=p13S^atJb&y12~=S zNnLk2{T8{4;UpQxx_z54d= z)3G2@pXln0iz+3gMLDCjFKL2qPPLq031r6`3S2Y_@lz^F%p-ICUoe z@VZrV$9&tf$A@)F`C2siW{cUP!81#mHh6DM77vD~tP=CH-ANrU-HpLND_(ISQ0iv3 zmqd-Y1cFQW%Yk@JZ87Eu9JK5m6_n?0^7 zfV*OjX^5hGaLX+8AwPEAUM1X|Rj zZKP!_aHb;wYj6pxe7hv7#x)S?6WX%tz_|ya02~yPq~W|giOaIRr1OO4No2p&BsH&i>-qdNQH$+N66~SLcNS z_;D&)Q+2MZwsKJ+g$)TaBJ7*rRs13 zTX4HMa8GOavj6QENZgxS)PQ3uBrgohFOR(&6i-wwN{z|IG)0lTy>(1IVdXE2idb@v zipfx%!#a>~q@cPgGbFmA&7WeI0`PjFFHTIq`-~}p5ev&F0@hoMh0McvNXtiB$mjEe zWm2wi3V&+h4R(x$hz&cM@Ov`vZ zeDN%^nd><^$qW0SW{GZ1{(yoFc>|BA}5-~_qvY0yn zP*VgOY4cmbnQYG8_B09{)}!>KtZ!tvuTH)Q}-yK zR^}4O+D%YxI{=4eDy=1yV%ONU7IIpPb#&^%ig5H6OtNXfPJN88EYYfwXrQBy4s_F{ zn437`-7s&JfO$K#$Fu`>8($Zc4 z*-aYDgD|+g(AGu|jtWuCxv^*ImcthxQ2097PJRssOLbAIMVZ@Z`Atw2yS8HPDK)>t zIWWcVm{m$c0U_)!OV4WnR%m+UuB)^-DIUdOm=ldL_(UW8&> zO1)IWGC?gBS_tAVh;0Hh9mAKNYGnoST4f3L9foqiPy4T2Tpn4i=U!?&s1lIn5Dg)D zyrA`V)`Ab@TCd@mm}fSH(xO-aCflVlG~N`%+)oV)XLA+B78_qv^LHxv%n=4a^41jG zTOsU?Tzk~srP!@d^vw}&x z>ZXJwQEYEwZN>3gBV#mIKT6%#pwacbY*CPXBn6*_ed%1u4yw346Z6tTWty-%R`YVp z5=TyzWC#T=*8;ypsgi0#_F5F(Ltz&s->VWyvA;pJmN5QcURY)XuQZe(`~XGv)`S9y z62-Vc_5u$?<>t5hkg{)4*(9iy8ZHXUE^1!23?XOx8RS2WVuQ57FJ6|j4Pl@~Q2Ton zy&Cohq+6uql_Tc0pN8*+@sxStFJt(0h=&2;b6-+y0(8enk@77J^|FevEur|bcHuNO zB}+iG($^Hb1RA|Eg>k-lwKa%L+x$gQF|GDdcvpRR_oiW~13h4@tG9p}Nff^c_EAPW zTh*Xij)2dV4hSl*1w+NLyJ_LPQT9o3BRka(FJx1(2GkmNo#G!^1;F;*JwyKK;SM7! z76IVxrN?&`jcllJLfEUV5w5^W3T&iM^sSgbq5Y<~Hx*5*p$w`|lTU0~vnuY?6B^qM zVy#~v6!!FU80*em0N`WO>|5sCV8uC46q4WrLAW%pPGNCy)^ndlx>}69!PrfLMi3% z!!z0hK)o+T-iQ4s6nY5yKh70KerZyu^43hw!-Ox8%-->H$Lfv0ov`N(jc==Daf7{Q z(K_$7tRDiM`JW3pq;OG8DFLXRBaSmn3Xx_~&y3!u+?$~SBll3~EW3sjItD_U=8EI~ z0CU1Z^OyyrLxwp5hD&wHLq*-&qF~XqoMJoMZ5Of;f@^1pO&kQlhve8^7{(V(qUcBfzOMzWfU&(^ z8ld>>_{LeC3Y!R;zBPd#V0^<@u8sl>$(CR+B&__1qBC3o^rilvV04is1}Wxl_`p2S z_=UrbgoHzGLUvc18jAh)#Gp&>K*G8&DSR;iBAA0gwe zCGxpy0NlSkV!-Kckg@X{iVp+OlzL-4AZNgk+XiK3k(^{2@Qib)k&rU;6Y2Dq{XJ96 z;pUKXIt^S00Oz#5T~!_uH(ziiLrBVz1w9*vczF3&7{eIT0D8T0oPLnf?Rs&C`+B&? zC$X3HWUZ|SDc!fy$m#&TpvKpG1_wZP_sWA-pM0wJ;`DF58x)7u3N=jx;fEaLQ6tD% zCZbX^N4wn%07`eAyyvDu&dFJk1t4elJ2Y}X0PmM-*MACxqq>x+RJ}}C`3k|FF!`uQ zj&Ljhat?bt%%I}Eh4qo=Z5a;tey4LKyV(Ph z_J0xjEk`(l=B10_nAT_-ycB?2y4~qckU0PB_?v%^4s=3o*Z}|v_uKtKp7>87t6NG< zAhx2$CV&=Fx6k>cP>YlL9jKf zRj=Vwr%s)^C^j~B&d*k`l(iVb5qe>J&aE zGuU=Io5Ji1E&po}u=3f%hLTy+!n%`#@VE-(4*2dGW&9P6ds531XHcCB29X0Z8^AgK z`m}0lkYojKySaXrGrs95AaZ0RVAbdD?(VKHV)YwJIRy?pLCeQZ!1`=5FgLdVoMfdm z3_b|SyXHzqaj9NI0@}?Jv>GlPT#SIC3!! z7vThZ5&&vr@`WEQ&LD1k3zm}&`!iQ?9R^&fd_6d9L}KQF_o4BFC)Y;zU7hGaH!1@t@}Q$5In(mFLDoi#S@+4Z*<_>> zFwq7a0{d#qvK%DN3--%cEH7jUcvTv1&rhQIqLZ9~JakcZf~w!xSB@|cs=NMDYTY3( z<87V$aLJ=90YKyQo5)Lleh^y2PD__m6Y6dWixeI$&CA$=eEObU5)+n}2DFOQn!cR zUmt(&`t=((uAN-ct^kZK$Ya&oaWIx-C*ePt9Z1IFVA9Zp|7akfNnv!mkG(_wvtgg{ z;fJYi|MBo)5*y$@pMw(W;6I)g{73XZB>(UK|AGuwP&gnmF8}}#q5z!%Dy0FV06r-W zg+if+KlTOyp((rZf6YjyI0N~fNHaiofc^pabNbxnSo{O<&hr>y{Wob=r|rL$|JOa( z>%ZAQvHqR@HA||HOZK_OW~` z_FMLo-apXS^?$ezkPqp<;(z#iTmRkmE&agu1pTh`+5OS@I{w4|2loTuPxkBo*RTiw zPi)Qt-{${@-?bkpekJ**^$*5x-rwF;R0Xs#s0qa8*_%X z!7S5#^^2+YeZAIWDNWHWgv>bGoHZ1+C=D!eho^THm%rH}-(>5*(>OXf+VZL0HiAF= z?chy?D-h2UZ!Ple<&;Q+lK;=6)%X64Va!r!oWZQN6^bEc{D|ep?vFF=%$nu?{-sPpd|E$Ry=1X)jtD1RC>u_gVSw=p?rH%a_X0p++nxtb zcY96CQqD5Xg`<%A{mG`=2S*(~oQ7ZX(CU@&wS-iCAQ|*52^1YTF5!oYj@4=%=lNPD zu>YGF;4t0z58y*#CU_G9Y2zLR%R+95h^`{tY@K1-&wy)||wL z393U2T%&3sE3=#s6xCzd(H%{`A@ees7H>c161rvcDeC{VKyB2X>{#LXHKtut?yQlp zT^f=Tdugalu`R+?ql3hDV&bdMn4RFuVV!JxHzD9a?{var#WIQIG zuBZ%5%iE&NZ|(^tiW(&bx+Em0e|iC4+oAB^QbgzR;lW084{L^bo}vgb9wd|3MTrw9 zrZZws0>^>u$7o_08PJ|CAKB|hN#N3y`>?2z&4K>DpZ)F=Q|N+p^HOim@A|T{Vdye7 zd2*Tosj~YfWS!NyDC_BUze>gJW&5z2zrxsW(*PJ$4f+}7V|ufT8Lz$F836ece99O!v*j6L5HI+y0cs(CqKmt`&`{+zCZ@>&3tJu< zYMiRFq^!l3&cCCx&thYQgv4x~bq)Y$$5cFG#V7~nM9xItgJTFU8%S=QhWGh%4#K^Q zCH%in?qi@K_r@vK7~ECpGP=>6UqI9k{9o(wgJfD;|9-v|3L{Z9fyor~s+?S@J1s0)C_ z7w`AHzkj`6>eYQ7DrE-au;*(c?9EkF{#r=zv{FZfqLMr<6p`U*q>iuv0RGg30085# zE@PdI)gG@tjCa5XMDR$D?q!~9i;duRv?T~dM7BvpDCf52=`-W$kJKL==VQD8wUu*h zbl~z(Oc)^enyVT4%*^_^-$u){ClE<_b?(SPF^##pC*x*$gSkcH>}W@<3pNzbEHFB`>fe9SeCHyUl&#*D+VnO0&eiYeIwp zffy0K>3S&9B8=D%TQ9@+Md|8jp9w-BXUXQd%DPA!Fr>f7VGuKaifLc%J8hR$q>-9Z*B6EvX=F?Xh|YH1E83;V2fy%X1Cy#}VO^UM&XuiVeE0?`>O>Y38Gt2Z%h z&oDIU`BH!?+ zn+HKJ3glBCAlUqiIQsMLtJ69Ua}F27*Zcq!lNUIej&4`WFV{%)32>y4!BQ(vrT^-- z#^hdvxFApUKi><&V1Og9CriaGBPbMp>{gyc{ zpOR&x-!*`HWEP~>h@#23DD{#tN_)Qbm2I&SIAtc5SP2lwYq-m<%{{WEi*;%GpZ^$MC`?jCd|DAmAG zLGOg4``o(U+drseGJ|+F&b-W$tt!KFtxX@>YC~g-<5PXD30F zoe1=L#*%v($(eh^S`K$Avf7?VR03SezyJWFYH;iL!C?qZ!o`9i(2I=8ngwoxAA)AB z;h_rVWCF|4<$s5mjYmbE7j)B}xVTyYV6)6l-*zF#Kw5A@~wf?E_f-ygO>$;1wq zRc?x&W6L=?LSYRKq%Srz$C>|%uJghbB)i)KBqH-&=HX6(k5jWZQD3d zRj=FUv}=w0?zdQ&+%1n#Ic;M;%TrcKz@wsDuvf3!??F+t^SAyzKpQ$zB&X`2-LBtNE!PN>leri-GT`C+s~He{F!6VpeelT|KEEiRCYwe8Rw)5M6tr30N(Nznl=dNr z=gNdHA}e2nLLo+dl5!cRq$g#SZRq$p2AW5YEsawjv~3!`zA^=#+FU@F>HntFe9l;> zG@0hEh0OFbwYjg=O)VfEwcwEN-}G8F_~`;^n^I}PL9)ErR%8}dI5UvZ%aVMzKkWgr z1DrzGQ8@?3W-@^P*92R;S`gDFs;13>do%Lc0UU3u1AOrRf@&AUvN`F!>ZlB&V4fAx zJn&KvKdxFZJ`{Y5h=UIY9Cc>xJReOXsG||lr0$oSuzPCdt)?)~0(m;oYpg~sLu~+W z*WX_3i?G#aM}qYfp?9bDuOp$Ea#LUhlT30kH100{bI@kFQb(G1H8GxXj(=`nMLI#h0e{@;rbch~ADVM+hKs0aTiyBFgr#>Md z7k*CnjNRHwp&~)G!XoABrWV?n*>X*>rJ_WQpX)0#WBm*lVZQ9Nv>9}@v2ASYgiyQt zN*I;##@q*|M2(K@&jh1-&kH)dsy^qh5IIO|sld*y$rY1}pS@WyXY*(KLX~ClRxvSY zFcCCyJN3Ci*ar|Hi^1vg63fH~<-82-0eNgZOQ(3|=zZJg^tVF3r)8ziAU7KaQqQ9(_fppHb5Ygh8p_*+vTMK+kG%@G_H{nYi1E9ce8oaY7 z1dlF%N!~&@OEq>^7g(>>6Ag|_z8G8ZwG5_PBV$0lpGIW;|D%Kdn_`IW;s=4zBCYS< zK#(K6DNXp+e=qYWV-UbFHm$d`gR%Wr`+<+84p;GBH|$OfoqM;bl3ORE?)K)F7zU7(Z;|K&JlVKoNan>*b9K>rKTrHJ5kM69}(@-kM8c^d2JUDb5yCFAERtK-59E&=)f`MkC9{TP} zfUk+1V07`WtPx()?-HZTm51RA<4_83j8HQ4WY4g{&NyqP_(%7AvE0+C^eh7%g0pf? zi!LqL!Mkly8{+qPRaCY!pgnHB81u1E2? z-%qFgp993(YE9t(7Rm-R@9CjIfDKkXzeqZwFcP+cTGs|A4q%X={s=g*7tRTlv?ubV z9qlh>+M2wMl7ZV3?m=hd9q$CR>Q!@g=xXfi4LXGF#=I{9S?#+!TpQr%!xL(~#+>Jw zdU&bNE2g@!S=Yc5J3F-e;>9vkHZfPkuo9X&lbkAxp~CtmY_`bEm48dil;}1CbvvtP z%7{e(pI1BwUSw7;4wd1H-*U*TL?_F!l#-7SNDO^IdY@Rea8!=|;>*?hRSIh~6Td>g z-1hm(*(%Z_+5ziftqfp*=q|7Mu^cKg`Mu2koRGGoxVBUkQe9KJ;=vY%zvJ1MCcYeD zHdSkpXi@X1Z=^=1&mIn5L1@|92RU1@xu4CC-fW0ATr&o9?LoduMdx61({i1D0Wbr% z!gy@~IO%c)y&23%#0z|>Oece(&2s25oVMb129%*WcPDm~(0Zv|-05Er3 z@t^~WmBW`WRO@_yYkt!y9nWl8+Vr?Ud>Dwdt=u>KZ{1=UHP(>!Sqp_ZNbz5^@U@tmPC@zTksG65y{ zN{!jut*98Kofb$AV}yPe^XG(Y*CMsFF`p@mMk(!8t%c9tg>AeyPYBUqxYq4vgxJ_$ zPuXL%;V9!Z^IrIqN2s+~#b3XTklQokcX!_!8=>d z4qXN3liGIdx;ANkrPA0yQQBBny{5gNkxNwNc?VvjR2EK3xGuKuK{f5XH-k;&nJJ-G z{TDnX1y&RZX;!nL~FAXiZyoD+X zwAb+Xu+>j}X@A$`kljD$VSAzT{^nr7v|q7!zbvJP*Z@fl-hm4bn0uO07wz_H>+_p) zzVdUWeJ1CNS$z-<{MozhQb9}@O@-YKr}20|ga@x;D}I-dU^-15)7zR=pur(-)d?!kpWa}!3Z?h&9Ds8Zpn1+T{<{4tG)d8r zj1J*n7oo1jek2Oh$#(jKE|@|~#deG;qAE=C!!vN752*s+7h=QV$uO|u*MKHwc-(c% zI$M>seasJLbO!1wjEfULcNZRJHdqBl)yM5=xj+WD>^BCy&Y|t1kWsMBu2^GyNDUW; z3a`+r_g;urORB5QFCGOaXW`L)70esPuHd@yMqkYeXMc?s^CBV$oJM=f>GvEE20zdV zbOsRYZRD4VZb)%>Ah*7rG?nM*R{zByY0+pPs5<=j*8~sl3pBowu_Zk78m%x)mHN4w zu4$GVD8oaY)mkXV>iU=6(YRjF75Dt2-+R;ogKIqi{5Pb&F?LMqpc2)jtT{YT^vidl z3-cZ)U>*R=_m4Fr+he?6>>D#mV!4!7RZEi|eLPd#O2XX3qe{)Tj!@ZE@>cL@bdy@%lsK z`lStx(mu(ZGxU6b7cjTA!1XX<^POujQ7haX3}R8-t5`N6$d@ke6xjfTo8~r_-?PPa zj0@pqaT^qO`pR#z=H(a&Z$`oEx6tMeR&taX((^njhk3(QGxLY1l3Cp%6*6$|Cl{@BHKNy=%*+ z5|MgR;P_ZhXe1i{axRdjR;bY^goanm=eGac57v8a{tju{D=*A@NfLs6Djs=+&tane zHa-xDDS@Q;obkny)ONF|n&;`3-+*%$?Kc#V5WJd(p=hoL3VOeUhap`OZP5GP=@hV` zkoT7Qw3M&%2;qH3s`30bZY+1^fE?pEWmZ-jV&6>~!tf_c3iKxN&B;Ee6Q)_mGgL&6 z*r2=H)z&5~JB07P~ zWr0e+*bsMsQenM7;|hzd2KW96-_dwKln>;l5nz*THyOq`WDma3VRY4%q{*%0GhHjM zKk0jLuiu&ypn4CN)^{z@vLg#dOgrI8(1+RruZCDSIrvTWltY{WBY=}kjn)iJxKV@g z@>hCv^(OaWn$ut*>3lgl#D4N%w7XN|)($lEd%m+~m zEcM$gSoW5z%uyG81{wxzzln|kpyG_`APSD;Z*VPZn znHTgb+te*n8XCMJrc>cmd&{3vrH})#k#flOF<+p*9v(X0lecRnbrx$`)7}uL9L{s4Pl92G)on z7w87jksNT7O-t9KilB?Q=X`SwZHhtj@O>i$r_!^*pX4gnR-$q+vF?kmh5GW}Th`RL zplloN1}L9H8vW04p*2mkABf*63|z(Lw)`=0^!HarUQmM} z50HX;4wPm%ihaS8U%b>X`=PHlT`n&=)ZAct?l?ylL@ZDYvx{pRwImGJHWfB~14n4_ zP|E&N@?*0g?Cxh*N zhosm}19(ZX&TQiU7y!%lcio;bG7+6{Kr#azvP z)p1S{NlqQHJX}`VJ9{mes$ZTb{JqKO;(+ZXMlt(55~G5N*6O9LFsVRnj+TA}P^oq{ z!#o__;jn+KrY@^v&>b-Ggk`p6)+xsVa#xhb%{}0~6@rNhJ5RV_8oDyHYc17f%}uo& z0MAz06!)zQLN>#xf9{7*sy10q!oUUUuDMGGh!GASy7 z3!?p{`}#J1uDF|&C(awG;L4eMoMrU$c=(%L#syq$ACXNQj+dL_Lmc6MwKqZ3I5e{5 z8UbV*E|LoNkaaTP(DcniZptuc`tbGk>7t|V0$wCk!B5B{83uHfB2>2QVPV&bdFe8(4PM+{|ihiIlhf}cL_C?1m(CM39WUCoiMv1##db|7X zQiz4AsgX<%Q_nG05AfUfY+nxr+)900k2UJxDkul>e&)H#->JcLn=YLO<946_iVKb@ zf}THsA;c#+&;$lN-53f2hU(Cxel&~#1Qd-%+_ZqAm90N&d<-{+v@IcL(5#1)btCYd5J3J#|d` zEfSxbdT@oq^nbh_M{tm3N(P$JY+a4OW@AERRv|crw5==QMr^Va(m|zw6mM1Du6E}Q zBFbm?a_l;;{}lkyYwRyd#X zz&Zya=4s!zUi|jcaq_*yg72DS3j!pj$}8mmH)mqgi}u~&b@>k>B@M}1bPXqqC5};Q z7W>aeWSZPy*3!oR8~!~TyJtU}e#-M;;FuTAz52uD-bikkSE#7&s<+h+E2bDyi4(=F zn=J*nTGljLcu*CK2KCF-xxroVflv*n!V+BOj+B?P*asmiZ!Mx)hcI$ytr1MOf0+$O zJG6CZ>9;x%$Vw!LiP;yxTrcRi3YP+-Qo`fh+_>aLohE2ykS0L%tQ7D%8uLV1;?S|1 zuvYV*nzm~^mZSjLJ_%$_t^d>A<3PWRXJt)289--A0VUV7aOt_F7KA=dC8HOb?_+l?WL95DqC} zX`>{Jb+4{DEZI0>t6;1RF7kSmAE*vH#9O@X z%Uas^!kEN7@9{aQ4o}9beZmg%SW@X5VP_p-RD_yVdnDvSRXEG#zF|lqiRpY8uTBl> zm*}I@qs0qk;&0MsB31dFNQA76$C&1l(9hu30gzm?xTQl%gI zmB6RI8T-fS=Kaf=4O`t&>{(X(s2)+QzaeOs@!^JWzW1S&E0mI_YRyB!ETNrJT`F7N z?DyBsM)+X-c{iM|Afh9>C}-<_)!84Qlcg~F>&cCk*MSwvQCE88 z?1XTkj3SK%acBb8p{UQ{osi2v<|(!RN1DsW{fkZ!O8S2hUqd4Qm?Ni-IS~mRYA+*c z_kk1R*2~Ru(1N0VX?&6_{?}ij*R`uTQZ-rg_ZG@*EvWr<=OM6ssN~c@B0nTX1IUX? zR`SYzKy|y*eb)8)^7TeD1E)8t`deyMdW9Se{!S)UC zGlA*ubZQZDzjDJ4VWq?<)q-@*JPCpn-HRIJEx%i`-RzYpO&vrlV|SvDX*%G3%e^G# z2-}e?9~-|R#~k3Js(hVGE=|SzUS*`VmoVhlki@OkOnSMHMB-5cS?BMx;p{*KWZVTR z=mV-DT$Ci<4loWK2dN+CT5yo4M=Y+0V$sHCXYelzkOp;d@p4TCW}QK7e1Emuas$$X zRlnXalOIG5G%e2T1mmg(Csl1>r!cj$tkBfzGaz{DY?DiY*y?7Ki|=oU)XVy?rCvXe z>KgoGFq@Zz2%|qW2{uo<-kZLk*$rsh$LU=v`ai~~j|Zltl!B$;{dP#G#N=^wm7uaE zvW&F;D3j9s|DI65X5IG*yB+&ZbxMpLAk~9qbuX(IknAyT3g+ro&zt{<=Dvr33qg={ z1Z>->OiYY67~u}+M!vnSvY+&H`>`k7-!)4^fyMaB=LII)z~mVLmY3jTU?=>g!M%}~ z;M?R~7{57Q)@eMDJvTv5+cbb6(AbhypM%$&QQvRwZi8lZGW)zXuiS?^8d5$imK|r( zjxi-e55c0XdL}erkPtn{vvXC)G_D=xr(TQTv>+`DJ1wY7__s57HJ*^K6Uub<*%zjn zB4>gjgAcW7vsbuRT(8)0uCB5Je_b-z+G*Q?2)UwG|cHjLHv zT16~@1Be1c_Tk|3(l6%gMnLT|7aHm&fXdbSj0jTJx8$A1ddUbIFVAfVLVa#;2Qgv4 zS#>X5m`2*GZ3KfoX%kK!dS7qY2e?Ig;7@li8oG=#Jk~mw>BV zN@=FWVdN0?Q4kzbgXqKV^R7$=8#BO{>>Sh+w2QngPK5c(Q^V@B3W@AQ?3|5?;>D3j z?b_^-;|Xfn)LJ!XY7N+?qna-u72aF2Y!;#3a9|Gn=-x86R|q+X_7g%s#cK+aj|Gk? zBO-jyyqrh$3~@js(N=tt1{_d9rj`?b|%+|S5^745t z>JaXK)x{Q-o8ICsD~qao=6ema4V7MgQ@VYO+|q*;L^A}Lyj4#8{-%2)I2@7u1Za`( znR#EEszZ5^F6e9LR7@^DnUnX{qzZTki9Knzidvm=8PHk?ab6BsHSIVxj=q8%9ab}a ziJf!-cT1ZYce6bzp-AF20SF1_5?YOcGv|Licu5w!&HJk-o}DHfk5;hn|33a#u6BdR zWy3#TT1_m{6tEoRXTIUtC2BZdDOV$_)14v%$$4%4WCbP>{S}Hz-DRj)7YjYkz-$k5lMGne=EF~Zy zpWmHFJ}lhY>p4dhG7PDhk?Y4uK|-|~7_IGtC!D#krENbjo!alGk>6MX|s*2UhpB?^x6j^+hgKa$Zb ztM5sq);{|*Pk#gsig{Bz*)plm4CT{AEcGPW@}#&7!RD1QB6C?+;~I<9n+Pr)u2J8i2@2n|e%t9?t;QW6G1`o|jIf6Uq;VIwTzhT~KG zR!JWArW@$DW!H&6Rpu}-7OMH)716tBQpQ525c-G$NeR39FWKhifXL$9Bg(8~5plt#t!|g(Dg0Xt-e9 zINBD(y(;KFF>js=puHiVzj1WtKzL@G-0-$CWQ60YK$>w{W4ITw{{3 ztdun@Uj7nF&@UD!z;vRy+J3N|^A~S#!bi`#Bkv1!#CyD0N6CCmtH+lZHYwrwT^Ef| z4iiEwB^|+HbGp1~yyf&Uf-$vq(}|6xhsWBHfXOz`uXLOJw3scBZFfK(C@-rD3x7ha z{plJO_aSoEjH0{;r+O@9R45x^$h}m^My`*KidzlubE$?CyO3`3W7Ahh@v!d%(p9i2 zDNzX9cU8xnts;Nfpuet6Y(kYbJSQo2CYXz3SZVih4(>`o3H=SArO6fK%BP-)CYM}r zYw)AWw2<+fPp)DuP z*OxFYN8k|Ug&6S714B$7NrjbDewosyib!cbrkpNBAwuEwdLR(kt^XpAMIajv2U$Uu zsGw=4OF|K`@g*Oe*ytCofdVJAEkNW46?{^EFyo{Yfb7}~nLw)_OeAehl%@Kj8(1>V z*~2QrgAZd`rX1=V=*E!e+>CNB%q#OHNNP&H^-=6TyetlOx~f23NsR!5+F%N*wvwS| z9dgT35Lex9@VQ#q9Re)@?qp?OJx0@gm$hVYo*^Mw?XaJqUEFi`>wdF5QSFoeX5a~ z*k9&FYD=wA9>H6kK&89ECR2uOsgbyD`Rvc$lZn5qkjkWsURh%Jx!r4Uo8{K63cI5? zpuUenL9H&>8foGAuDL0}_=(<(-0yN7%kcvpGMerZe{^hY?fmj6<%zQj9k_?%G|~?4 z;BHsunv}DqIA?dFWUSI%v7Exe83&37MsH?C;K*~E7~bI1#M1L^Jh7I6TGg0FDQlv( za=d$g`pEYWP!!>bU*n=27cH1yboOWyqk?pymlSTcM zTe>koI?J-tW$k@Qj5XFm$|%15pN@;*T-O-9ncE#N;IK7qLsUiKI5zlp{W+x4^P3PoIm2NNQ z>EPbm=$6#NF+P%zgu&V`+^Kr4DPPNvKy9EXcF}EntU6Y{;;;)8^?!@*%Q(`ovOQx^ z#QMK1)JO~AH^<~&0F+{bljsJxNJl>opXT`rjDH+|WDy&Ihca?POw*xmu|a)Iiu4b* z<`DK<44-=YH_9|z{P9Gx*t7PYD+hsFISif5tUZBS{e~8Bxc&m0Q8S@yxSmib8vp%;WzL&TZCv zME@s%|E%=81k|_oolxnQKn3)LvYh}`2GP<7OF~;8e0r_5!&OrEi(P;uMcsO3uhmJ? zjY+urVvc^0#A|8Aok$Yid+%Aa(V)1MxCvEH17DHkKwwsxXzT+6xpCz3ofBePhZ63f z3Z&z}n?#XXlAY5R0cE>7r~m;m5FK0F+B?aOy8EW2sRwz_5`q{)Al9OoBnyYzaze^EO=McCC6X*^wkgvP`XoQfr_zq}m6qJUnKm?|xsg z$H&ZXnQ`bKNw)2{ZI1p2>309?%Qz#qGzs8?{ht7MVUjI!Znx4rz4x@4ZO7aA`;|V9 z2M0hn8#vtmjR0)VlffEp+-$TB@Q(kvDg&3+P}9k(9=X=;V+9!2Xp6cI#18fm{0=U+A~yVBJQYbY?LyWDJJ<$q6lz zvXrW(Raz4Odn>oK?Ou9scff4+EPMa}d@H~=q9^%)nL)kZsex+Aw6y`xqUlO$Fg2Rh z6tXl2F8mnn*3t-6zs4pS#wZh+?BH#{Gz`~9D?gJrA3 z|6KskjI+1FY~N{_9Pm!F)RL*qtY!Y&TkSYQ6(T{{u7_w||KbBi-SGLXrMq`~4gm0P zTL5GSM7R^K0l@Lui=Mm^Pfs9|5xx-}_0p=Bs^+Rqwbd5pk3?==z6H3qR!4opSABbY zS-$(;RBL@~?EnBA7=(yNsg$BmjR)4O)9lI(Pko*pB~B3+qQ)weJZtFqId*nIqQiGG z`8cusLx-tmqerD=sntG~XFP#QlPadmXcr=r{Iplv>dN*^ClkpTrcrw`8Ra{55r7f#^r=+BMwMMOy`gpJbxZB5WcX-j-0Ki^EcolIWZWkmh zSVVIx6RTDzOJr=cs`ECu1m5&T)suePD*tqCkIymS(t1B?WTJEQtjCn8_?W;r8BmK0 znqGt+KLD_jipoJqScr8jA_2hv^=;Rs3)i9ZqjQYFf{-6pBBTgKEUjH=ZAqAaD}4~f zUEB&H{)pxz5CGuDNjkQ3@`7eKZX3yws@a`?(qs1QKO!a||Fzy9ya*C+eUcQq8?sjAp%|&B=yjk{H_kn( za!t2~iEVP4k-DZEvg+=J#BIvh=BTMEk~k(yBOAM%AW2A7>e>vtn^S7PoP#8|=p|;O zZh8~fo9^AjFfF&Hm*dP(5@u*-7%{HPbT>T`NCGng!&sYKGFxkHm*b4rCNAqCW>8f{ zuB&o?vYjE@H{C8sZ9e`>eq&RkZR?OEoow5-ZQHi_&$eybW81cEn{C^jib2GOi1@yl zHmpdtT`RrzsmmtGLlKe?kR}$9?B%r592xLnLG##3JcXxNacT0dI z$+WH7Lu~Q?-ZmrnXWE(GQ z+c9d}jcwO%G!qVfCu}4+k}sp{ZFKkfsWxicmbZ%O1oeP6v|bL=>FIBm)>?M!)? znP=^9Gcz+YGc)rZp3QrxOjB-?HjTrM8DvQ>JkNcvFOg+iar>KdZEedoNs{)tpYQw4 z+yk;1$4o=!RHDVy}2~j-QD4CbKTp`+u5#chZDP7r(j@`3IY=PK@ucMa@!=sfx&;i=Y^` zks!$dYwq(8*xr^O$+lJ7wrwk=RQs5)d5c@y@edM-TV$9pM(;I;kRaiM$p^kANwOqK zvMnMpkBGj_eg6Lk@ArvxGZpGf0L(8yY}-hZMAhV<@I7tck|bG@B-s{{L}Xq5|5N*( z9j+XT+%{4&%h=Q64?qByM!Dg?8yRt=aHO~tl0*gx_}5God1~j>)$Oq(vl1@qLya%; zfx?$3TIS!P<`2EPi~Bj}3c4IgayAwVY>@+0e8Y+^uW(?bCEmcX}{O(nq)V|{Uks-j^Xjf5bj0!8rQ3zTzek;w+Kj&XPmy!Q1xbGG*Z+f~Afd35B zU(M0>{O7lN#1QGMVirch!cSLpQa$*r^3-|#Z_lCsAN%CyF^`w!*s7aPu)KawZSXer zfwNS%Ljn2hd~R=4xwRVnckt)a_OyR|qerCSRS;}&B#;@b+}q&`UvD=qZOEs?0;SlI z`o|-?hQ5E~+senIUjo6Gcq4R+9;`kaY^Srx6ErG%v`WFt<-pQp&e}BG9@KPeKgQnfaMRr{BM@_U!vh>(77u>XMb$A3U!JdwG`B z(w~@|gqn0F1;GjcP8Pf(K@-RWB?VV!DF9RGdw*>A_{Wcq0ZzP>Eo*ArFzezidvJg0 z@%)}MS5{k?mfrW?_w|+k^Yzu0XZC~6G+V`Y3d^86D*z}bfK*uHfkIkwQb7~e;BLjQD`n#!KlUW>B>+&LtFgIl7c-sB8aaSz zXwT3;lQq^Kc;UYe965du_6LZfcOOIr$W!A1m<~&uK>!=%w9z@tReSiS$-pS%zF=_UHN=2lJT zK5_t{!HsEI=PdxhBTTB#y^2#AdY{5AooBaCnlTSZf0Mmt`5 zxyIAVLnv=j04NA}C^VqtbX@T15ttgM&$A5Usg) zL)hndFBkQHK9f=ZygH}+b$Ja?xG`nmp?hu7^qjCY9H_)26HEmmh2L`V&aPM1h|&n{ zqG)|-=pKqThyqYS6t6t{Ox7Mh$Iox}^LP9Mo;a9bEDn6UeD=-%!oTSZ6ulhuhDo<~ z2C>6bcT2eXc}#w;>U2i4dhST4b4n)oBv+0+`84R95C)MzNdX|SIfyX8X`l=<3kOt&6Qc;kF2Lp(ZZEhH_irHg+ z9cu3QC_Pk4uvZ#%h!F(6XE79m1+CCQVGq>59xdtndM0D==SRKAgYL5!M;&wMl~sAFdPo<15|tjxIJd7vJ+S}2-&9}PAsOveXtiVV zJYFGp0foRVngiW(JnY!*{qKH`hRQ1(peVtj?9iM3rJuY7_{9of-Zy+5@^aMcur}H3 z#o8N>m|lC@)PDZT3lOxCYOnw(U;$77DA5p5o}8Vx$(!#n_Q^dW%J^!0OqLb3t9`oS zD)Jj${Ip~QEmr1KG#DzB7xsWFb_S*A#L&+da)y6?;oa)z!{2pZLt34~ZC8AI^wS$o zth=_p<%Z+ZHyU1l|GnG*2m$+7 zHpg!KU8iJh?p%6nckXvrQ!M;I(kL`IVe9|)y5gt~!-K&}Ap{Vlc#jqT_R-T5KR^2# z@O9S;fTO^Jz+j*+Famf9DDcm{PmHSMn0acad!{Fg?Z8qkI&J=51VR){g2KUUN8yeC;!jPH5X_(~XW!;I zPv@($q95mV|H01{Apk|ExsQ3|x%Z+SIH^XjR8T?5H$nm^0QiCghGsY!p8E9Cr_<~H z8ZhKNY#wdP54iVle{26Zar92AhS%%b4J%lfW`PiEKINJz=j=8#Dvt։Zfp*l| z3nqWQbmZXA&wf7i_1Kq}v}7TN4FtSfd%aw6a(}sZ?!0l= zja%4?0t|jU`Ezkjz#=Kk50+qiQ>|nFjZVOiq7{vFVS$2gW;=A=&$2?dUyt~oH7mQO z)#d8}_ckuM@NA_DTUvT8jnBQg(3*lqQlp@P)TjWE8WE5vVBlBFniU}?2ONka3x zI4)9R#(D0sQOc^Rn$g5X?ih~qiZ*y$#M*-8M;w%j!t8E+_S~Qsxn)Ky)u8u{zk4JYL!A09d~|9Yc4Aczii-Z`}`+BaLW)Xvr5t=^M3*uZw?(5 z{o}cFVe?vQ3fwR$3WUw7yMed-SDy&)fz#EHEcDOCpSlCewMqg?W7Fx}WMNKlWp?gY z8#Q&$RtF#(OoLDqR$cx&?)6)p-k^&&>pSFwE7uAvt^2-s^zC^UGI@1u=caQZ-_4S+ z=RJS;j~^ZV{*|s?vQ2bAKm_s=l%RNl1fLd-ruW$7*EjF+i{BoOe#Csxemve_`WTM3 zCdW1t8f7{Od?tH(8^7CoxGL1Zpp*zk?f~!adxxkRHGC|GqhLW>U2#f%N^M|IqRQYt zp11#g_VbD7WAjbJAt1O#5GCGCD-SoRoMG~V`=NBe+6w851Gnr3mgV{VV8X^#9^t{`>K%pWpaeQFp7(#L&X5)aPVf*iC!Dg95c6T zoQ*jM`kqJlrze6zAi+5HHXr@5vbUZ0!Ne}&G<_OCvEFI9eF}WnSNW3pJz||!c*LMz zqfr{C+AmC`&A#7^vsN_m1|cE>fCvmk0;@*H9D067%{%x}_mOpm6w$(b&q#gp3{;cWJ4E^{kMA%aAtSABcm{|Du$V>}AaoK!o_x$^-HDuhs(QaT}Q z&!nnLCib{!xWm6IyUDaXWwZid?H1-UKv(g~J1FO>P4#I{EH7sW{C04Vpff-3J&U3d zKK=F0jPLvZ|4-MVy}@ltyB9pCp~>ePb*F#*Zrb$o`gNK~TQm56Fm!f?UL~7+;QR(> zU!VYpYv11Hir2#j4xZ_NNbOnK!@B#sAIWssNdXMF0U{qStWMlF?&~6ZBG!U;q=J00 z)iS^77*~@zuOzxx@xUZaw#*gm!0rSB3m^mlRzv^}ttQj0ESNOYlEvvAETZdzS_~%0 z2z>dSlS@~tI*kZ~k;6USdG30FvxN#isgyMWgJiz!+l%|x!fObF98K6by4xML1mH;W zf+`eD3V;vHF8C}8c1)@p+_4Y+0gTx^#L$vRav7W-3J<#Butm!IGXR16#q2}(#g$Iq zEr~|#U(Kr-XMX&w>)fvhMk;QKrW9vVGQpxW7Y_i(w`9gTrERREDtE&qdA(iXY(lU3 z{_K=J)p8xFa2)FOA!{TfU{Ih6BrKPmX)tr%>yorIUMC=PYqPIwgUQz4hVQKMm2Te8 zI6mrHaV%H?4B}M%>;wwF0TF-}3M}XVz=VsX8Jyjf)((Qza%h&0Yj~zh5|F_KAalO{ zoa%g6BJ}WS^3b~m4mPLy|tnZMsliRCR0Tq#n za0Mu`LQtTj0Rai1gAB~qfnBX!c{OxXdoW$Gb@Md_iI@OaB)}=T>;3dSq~=5K(kEaa z@RaXI?>~e0p;yz>t8lv6UG$-zhwll`)mmGZ6lxUN01%ettowR$c%%SDYI4d89-Nex zSec0Oci~Cki!DvxQfLt*sWZVHdls&G=LGw9PrQ-1a98xJ`IcnOJo|Nm1tw>vi`VJuLZbZxa(M-Psd4T%V!QDf#!iRi<08au2000QU8gf*_H4A&K z`vuw1?AQJk*6)0HTp9qt4154KUD~}1tm#{z{}Y8$a%Pn&vkK8*?g%V2E*Q>y}sChS5j%GR#%k;AXJpZ{Q|$7chjTdk52 z@W@OqJrxSx)gi*g>YEB+Npi&8*R`SqTC?y6v@!}-1fo$`shO`iQ+L;&{>BZ!Gh4AV zo07B(d{fLujMxKY002PnfZ8a7-HsE72L*zI!hu=fR2dxDqhxh_#6dwOWETK0P!N(PfW6z>{NFFqbsIm#aF@~o zKwjX>8y$5k>DB5j`6vuX*rqkzx%;8Ypd0{7015yksw3h7w)h%HS%Ykq7bFQ~kS4zn zP*4H@02DwJDAB-52&h2fUD)Z&Aa-EzT(N&XzG=b>uK`E4R^jU23Te92bmi+>$K;;2 zS#!7X%JaQiRr+67M6ZLB`JIoAy`MV7wZrRw_3yp?-It!XdjnmzYde21oIm-j!;;fc z9d9rSL4HCuBXdh=Pn9Z|iFJUj*cs<>j;+-im^o^+(JcW0008Wi+gW&z#Jmwu#4~3C zkg{^#pADFVN!=6nlY2Oa`EjPl)nJ*L;G!a+5FbN#zHrb@nYx5!FrD2Wha zwAXd|eM$Rt^N&Xnl0v>2DPet_otHg}M{#RTXg){>rjpETb$5!*ss&ughyxJ}H?ErddZ*{?*W1k(?}tqqdpEhg=kk&)e8B~$1Ph))JS+Vjo*Vmk z?Cj*nb8Bkn^6#Z{aW{|)0Lc4t>IYt*IR0;+zuOte>OGlAIsUZ7TFV9COfOud^!!fk zl9RF#k&IB$Q9c82RJ`W`_l&%bb^^8pC>XImvH*$m!JA1lR_!l__Zb5PARqz&fYm@q ztU34j)<_`yV`$Lz`Z|7bs1XG~HAch^3VF)Nfh+(@LU(+RDcj%Y+QgFb-2TSoV}1SJ zW4_&TvD*?Un^CSw8{`f0f&)o@m4%%0K$S=;>*}S^Hg;`!5#U6o6zn+vQ25bTfZGVx5a>aI$W|aqvd<2-)8j3*8ZL4 z?M|scj$;Zy38oDR#5K$JMqGRE_1dsn)fkyr6OlYAU-=8a@&dq7qS>V~R>1_fXr%_MEgGeKXRZQ@L!qVwwMNyVrc%3D+o7`L zurz8@8aXTqjOEr?YHB6cs@gP^63-AzDa)v+vW7C#RA@~3Kv@q;Yq?wR$o=(K9^0?n zd!jcZ)?Q6ME9n_zLKcir+p?c1&4;t8UEm6hP!P?^tl@%31aaNKE=ISRILF4iV%N84 zHt&3YbjhyYUi=8S&t7eo33(k78#DtbxO=eUcgOCmtSfH{ zH<2Rg%3(9m53tWBw!J-I4>dsfmHg3hA;W|X%dA2t`??Fj&qA0i?vr9E08P)%~r&3(Ri9pI&DtXf?Ymo#LQ-I6c-N)jk0 zUKN+lMk{ajs*NuGQ>f{5Smt=8@4A&~u%H1av!$ryN3$l=tEJM~U8EJRsW~y^it)a$ zaM#{}a@MkfR5U3S zVUl)kDMJW_u$-P*JqFki2o5F|SDs>NB`k!su%b9+$6`kq(oB4N^1{u3`qNKMeE-;Y zz~!yV?^)96=l08YU*7xT`?1a|AJ13se?PYHa_2woyyx4(ohzuQ)QIy9RjrAryT#_G zHkwp+t8{mQLRjHNuo}snw2IE_ao7q3JJ*<+5Rg8kWjeTrMVFv*XgX*^#~plH5v5bsOdrF z`1Ibnmk$)e1qDB0&g6_iLur@d-I(yCJ)SP!yg`ssRZy@6VoMV(sDj1H*Y$QUO*fqQQJ*!v!EeY``NFSq0Rve`+Eek{sA zmm^{R(y`^h>ia&_AY7%PbwCSE&7umJ#*Znd2deCd#`wjT6+eFa5 zue*=^!Fggvb5Xtb#GSEbb{E0IY={;?uv@fZ>&$j=PivZUJx(dO=UTI}V&mZZpyd7E z$05LOrOv=H;0xe7perz<7tJ}?eSgk$!Q8#we=|nprr-4ITb5J|U~DA-NO4pF0I0C` z+-i{6wR{OlVvZmn*=_Ia=k7;Q>rUKGk~>Kr$tFj6qLHI?LaSi5t{E@x!fo~-Y0<6D zaL)1dKIZ%Js2_c=WrL+c^9hNqU1#HU_tWJ!eSLgB_#LnwsJWCCMmJCMQkK~WEk+-W z|15Ek!ufYP{!LTg1`G@ya#%ZZNf%B@7KM=sl|hs|`9&+Wr&Kf}+nCfGtX5tK|2Lhk zDCh=+k+f^~25N5jyFa}7wSV_FMnROSXZOpQ({o^0RFB@XT^j_k&)Lj>>hgoj0ZmGK zrvBU%ZZQz7ELbJn9nuB1f==<>IWv!X@FgVl2;#??q)C}{m1bslmaogi6pJ8|7;NZlIJ{nS5RHKV>WIaigc^Vu; zt;h1Yd3$~wE>6A>ghDEYlEAZ5?KqIv!#3&I^Tw<%zCSIK_H#CF0usPO-yTEWrp-TS zI74mZGm?Rfq@t@4}NPc>T)b_3TMrURdE`)Sr`?ZhAD zKkc!_MOae*F`w}Z*#QBM!pBtn|L0zh$Mx_B9hQyML}LIjqy*)WRp<1u1aZjZBe&E)rc{mkSSaZZH~;s->u<}-1MhE zQ*_s#|H@;R5>T{bBKzDCe3({?^lbwVlDszLRi3BR@wpz04prCAWE`5dA+kU zjeZO-11a5I*V3;&OaDsit-!i%H}=KnXSB#)(DpVk;)4I#c>CGSKv+W+6#y{*|BGl9 z*9?gu*a_&H^E#c<0{6c(K8i!5u(V<2NnSayPnEynOmE`y%jRRJ$A2N6c8Mzf04|Nb z9@`hUk|{}L8Kx@n3Ke1f(ceQyfyzy2>%%{~z2{qgd*1i``p!6|iGac?3Uq@Oq=HFPvv{_>g-JOe z*b)UmDB0;w8602vUAR3n`thRk=3anHxa`2zm5!XPU%440J+j4KB*Xv!Xh1Mgn8N&c zJOt4uCzIAw8F-8hJ}hnre(qwa<>{l-?~}RPqVhU3ID5OF3sZrw098{c00?fYJCld8 z_rV*{znY6rRIdPXH2arjvTwy|xB&-H?^AdW&zyW^GAz3tt2f{Ges{e&xWj?eoM!o| zagok!*!^D7XO`~Yt6y#DZ*{!m=hW6ojBsXfJ@J^t`aVXziKlX6J27fzV55 zpxm3!+Nq_}W{mXkKkzn`DKp{Cydg~hF} zW7oU$-6ri`GR(l&U`kl91sXNO0?i3$W^iIh#X_}EfUs1ST7zS&glv%Anz^U{2I4Q7 zvdX3=3tIAK^qtE&aT6DmXaV3A768Uv2m?@9Vo*}B5xU+W)(qWlzF;O)S9^+m!{s_t zoNYwI=Jr<2=+KJPnH>Z>3N>NHf?X{>_v_Cy1N9}URfO^~F({dsj_p)MoyQ$7s#&LF zrc-UUhZ=H2!QEzh!)NqQKXbXw6pTg$6{IFHu` z$K)U_>csRmAzysGR|o%!sj70;{18&hnzFtaSIQ8la*BvU7EZp9OHsJu;|rOEhvVk{Ee~ zB_wMRNIZe1C?wW=jj3>n!-=0yxjv@?Uv(q`2JM?+(4=}cP*tew zaik#JVXzDLOfM-WRj7UgaTs#3Q8)FkVj3ISimD(yz+VNg={i3Y$gkk z(S?%$3<}Y7t`X}3B`fH!2Xn3;TCV>g;KV@jS+yxM+0ZJw0D%w?#Oa7b%jCqJ$jSy4 zun@{gg}6<}d@t)(Prr}p-mCZP-6h`RP0euBe*W;kKVEk~^HI+`2g};DT{E5HOy!V~fes^q(4Os)m@WzKt?>$b(H;`o zLpx(OhrlrPK~UgelL>3#o>#Y2soYZ7bo2Rv3}DqpXF}kogZj!%SGAYx^#Fh^&E0$Z zAOFzG&=l6()3CJyQjkhDlmel@P#_y}NEAN}t*X0K+F4Xdch=O?FNwj<(#N0IzwCeB zQ`l=wr=J@$Gy`%f6Wt~vUPwStLdbroC;-reO;Ct(=o;*vpHFUl_>TR?-Zw>OW=gel zSO4n{TQb4wc#v=45<}l}vVMH;y9LPUdcQr`Uf>O+#?hODHy_~w5U8S4#c6WY(7>Id z5(z;aLpZ8j6rr$b{$4h>56gCiM%1FH92&~^sl~jN6MTW)ejST`0&R3%QG0jSo(XHp zw~5l|Mc>8Zlc*RNT9zqV~1y+>UDBG%Ts>cwf6kuGv{cIw@Q+C=qA^0Ax%A69B9L3ZRmU72O=^^oRd^ z|5m@i+L7C6r4()&M4A%SmBGRYj2`U%e01Z%fA~Y)fI+g>IimQEF4nj5!COHj5dcEW zSpsD_VPIr`O+jZ;3?VT1Elq=D*LaH2VKh?NhYeQ!*|X%o!zDN17fnFUwOjM}nVGY} zQ)El!meDP1K~}05iWem%DA-&0cEPGpDn4By#J34%yja+=GMrUe(Nrd5b+jWpQ#G-C z<=(9IcV=6$MfA$O8<{aSMM{FWwkA2D-Aem)Ahpq+k)E}_i_(fg6}KhTt(^PCdnVc) zJ;m(o{hPyq-Q6LD#$44i>?tmCi`AW6@mduCYp=|8gID3s+O6b`cv^BGiHLq|1_@Ru zf(Sy?NbEfIw=drr{Lg=)wD+F%+MUn&{j^~#u@PDEQ&#UggXHp^69h^lB~27`g+;{A zSP2S%RvN6SsEg|Kl8^rBXD1i$25mvgs9&ip3>jjwpan>UJvp%P+Att&po<>@!81#k zt_W~Ta};?vw7eSht6nj>pkjlrlA2rth3b-kEt51Bdx5ino_UJn{~OaaT~)kZE*X1f zr3+tyRJ$bw0<)4?5XE<-ld1+|dr6;5S$*fq(UQaMHAkCGZFg#)3siN_7B_}TG;wH| znmaY>-IkxZ&9b@S{N8GOq+5zgc!QpiYymJ4g?5a@N+P}X@-y&3cSwmLtK+T05Sk5& zbKuP%2M++okDK;g#5)tpOelDN^Lt_j0LU=dVIg+T_9gQ{z*|L?)OKqjE4 zJ}EwVompBAZY|T~Mp}|ht!7+f3_>fFj`W>NrMu?I4dXrjXXPAiE_bqR!?ms}P3aHv zWnjuiL0*3!9x?Ov+O(6;w?>})`n|yH{ZN{`hAJQx{3&6h zQ)kh08Q$^n(5Ju?003}dcW$p-1lwgzL;(yck#!hIT5yUlEQAz-f%t~vJtfY&0(&r3Fq+aNA{3VgRZ2%0n~l?WJW001R`O4dd`WOV`# z?Yr#|y*iKrfIx-tmI47lRAV7i<_o%wn{DIZu4A_$UFx3QN{65;rNEY5>w=dG4(~)M z9MBe;#0n;1@wUJG=>D);(d+E1Z1N%Pu56j7E(qqULSKwv^?aRX)m z0C=nOxDb3pHPCeBX#eH!2j2i*1ONbli8mSb4dG3!c*e;|kVPEABOiLJ35qgasfV z3NR=DN_-((+OI>ht)kPlzt#&1cPBa>OHv?EA}UmDMM(k{UdU@&o7M!(66R)Zw*4%z z$B+K2KY!@aXcaC12tWv?lM4dLF;tku6@mbak{{sCKDWyOpdkRD3{h`}^fG;U@%Ck= zX}nzZIyHB%aCQE3XZ7kk#Pz_gEhJt>RgAJ7sM*wJ7hv9H|9x9r{~udc98r!fQX#F3 zhk|S2761TMdC-!FJE*dsN}AS94I6ziZ#WqZwv1N*ho&WiWFR82D*^zK5d;|gEv!Xv za1bI8pc4XAaG#(5P51nNte0|s$F`y~KyWp#2Eo_(n$|#9$s`hrfyc0J&Y~B%0-zO<5z1f}9{3hr$VygeWfsKV+PCXBZ#&Ac-_n;n5~*RL zff4|q0=<~VIy@{zgHUo6ZDvbS$?Lx5Kl=NpK5EW^N(X9y8tqGAJ>a&-yX{>P+iF(D}fZuqdO^EwOxUfIe=06+^$2-aYe+s1%0VEcjp+_jbA1fl({ zxoY6Uz6$;T06K-qUyRfBb3I!rcv>^yJ@S(Nf2_OmO=fLRKMdz9=R+hfM`oQF0KHV~G zo)I@aj+A=f3RYBsfGw1;MOPwF1qH8(W@ZNQ*%?3PA6%B@ht!bqTwFdU#Gj`s_r-A} z5*j$ctxe*l&pSK#$9bC;~Yp31Cu8UU9H^-@SVS zSvH(^7Q!2_pb%^cZeaxw0Rd177O12<5@EO~>WCyu=O+#0?KDJEARr=vQw)_wYjMg9 z7c@b1wPW^s{_wE05jnPrG<;iMW;2v~8HuXtdR2(}Ij zrLZnOvt7U4Gd8=DH$Ur%z)AoB$f(JDA(;&W-~@DmUH;@%zx?sbcFz|P^W6#)3%dyx ztNTX!)cwjkt-Uc70CZ#F&!Sgg@=ZJOqyW}qE~7DeFeR9rm{q@>rsbJKB&I+iNDu)* zqTps$>ft=#*ak`tVzETR3lX;xh0p(E9D)=~;gs`F;saPI-1XmDUk1sY>uQ zP(U<6h#*awU`jzUCqx!B1Gk}gW;CJt+S~E{)Zj_)`L!MjtN{QJ1z%8kz@zPP`}_X; zHNrWjuS4-pN;@dt#u@~z&@^Yga#hxL3;-WvGWlyUC@6NM;22^_&x3u@kgAiSn|t-l z*z+v;xQn*$Z%>|-trZM~mVg0-0KlCE4kCe--37*C(-0uwq#%(MTZEOQ8ff z51gY27~?vBx|5H+`=ML`A!v<|f*sky3ElC%ZRR{-(LMoawN5KqsJO_;18M0BH5$jnP1;{8#PX$0u5R-2yXY~OGTB-9zfso zLsIJuk$EYX@|wa~6sC(x^^Y|6{kCgw9t1i70HjEp+CVDc(LDl&J=*>TY$4J@VHKuO zL1Hr7@P?WF&VY31(*U5In75Lx2q_@W0=FS)0l%x(Gs4|+4G8YmmxY`5JggFfF)INC zqJTz#f*x=YG4lJ%-*gqvK}od>MY6({!bP~MJct%t2!u}_HJN(QD(TD|F~ahm?lT^` zzQtX%-njWJq#SZ81WMD&L#+(#bt|tc&IjjSmvxxoHW}mrwSbRfk?Nug-a;S=irGT& zv$h8Lj@&??CXLQ&`9;S+>-NP)bOtDZ2#mzUWLAYOjpWJP#ep9m`{uG%pZFVc8NZbW z%|^M!Co^fV0Eo8s4e{g+eR0)Ku12)^;eYAtcYf=u7PO9y|95*IEifIF-oLDUB_08G z0I68ow$BifsCuia!(28zr6r#hozEIuH*|gP*}?Cp-v4Ve5ZC~KFG=APG6Et1O{+_j zg`JXv27V@52p0?%h!~J~n!IyAeO=A~;B_`WFK6$QV$j`;zlpi&bmyre)0uJ_mIr0{ zW(1VII2!I$CQOV1v^Y^F#A!%_YX?$c$c+@oavDP;RD`zl9G0~pi)JKGig ze~vD?%9IB4S=h2RO#yf`o9^Geq1TJ{e0*ASR*tKxnV6*!m_wjF!2MW#`;snT6vKDii}0J!5gYDG0D8VV<{ z4LAer006nb8enxt7Lt7)e{%AFbTAFy?)jSKDd2qoC?a%6Xn?MB+oFQ6Npyitu7M>4 zBm)2dt+46L{+KtX-U>7mH{PNB548J*s>dnqDz^ENt*T7e&FZEV86Aw8*_s+Clm>=L z`%ezT4*CVMIAn+j9qEY>8^x0(&6%&~+l)e4D=BP^P{T`|$fWCpj>JLiK5iw@%Gxkt zMsW-RgGeKhsGKFv!#B}=?rL-;*5v%rzV@{Dea~DPQvbw&w`)mOQy%Qb6t*(w(tnUzZjc6vIsoHd>_lD{30Z#(} zq(h>%N+|81c!5H4)-32q1Asx32H(P&&{5048?yUq20~lt30=)`&|KwksmzQ}C0|Fg z{WqV9ySn_TiB|P3`;%2B_Ea~;wk=kAvf2=ZVtbp@t26<0>lui@X1a{$XQh zE(n=Lu&CY=DZwHNw3@A^rGj8tjrGZK!?*gpz2zV4_WIYeW~;f{$f47e(-eI%rHh&g z_MYK$^{KD9-hZIkXI@Vye5yMe{q6^KaXN-Ci~;ZN7Q&--P*&NXw*oZmTjomgzZ;XUIve_l2y$Vi&BIpDv( z#Wf@CAwjVERyJ@BEU)F$nBM$IY6>+?Z`ZENd9JFZ@tR9sdRd%=GfO1-o>tHtK%8R; z+f7YmbYKZmI@3u|-i~kRM<|0b9bP)~zi}D~TdeB(GYjs$er~R_I_zLn?+A60q_U@um6g(<4e2#;G_zmvC#oIaha1Y{&h3t&+8>we z?nW<6#Bg5R*&FEB7_8umfU^U~-52y1$20%&JmquR$28v?O}J%}o}E+>p;QtPF$D3k zz-LmhzI%?(pUVA+dV2k$ZLff=@S9r!20I=B7@rYk&3xw3OIEP#ml|7>*PKVugyQ*i8x{DTB=F1>GZ zq}aZIjA6fMxQNw=bx}*&mS~^6mAs=Mb76me&@_3sdgDJ`7Ju$tP#dT_>;@}r!S%G# zcw7^lTgO&75YLpai6O&TW6@zl!JKWih5OheDDDnk!MEmUL*Z&U^r*+Q5Oa>E`RV6( zMb0ziF zh_*L-EUw|kXT3Ku7=l_JZ1v~GB$;oRPTV4C`{tlCU-p%Svj`z43kVNt+d~W^_~Df8 zc3Y+yGtwluYPl@$*x7cR)k50lFEQavlhShT)M-IG$?6~PTX=x;2_XG1DJYe&Pi=gr z!)N#PfKAz6dj3j_|MiTWGwSuFv92T6&ZS>(DQU1AvhFk)|HrJRuiUfSB0D5&_N8K8)V%{&#u2*|4`pc#j%R zNQ>FCMeG4%{``j0bl_9lF3F^u#I}A`_A3Qm(>i+x+y8jUOZhOH2OB2^B(A`JNs{lu-GX`UT^wr*W@ zJ^MOF>t@JstdYNJh%XduAw2~xj)SK}A2(hWxXSjdEE zCm86s&h|&7hu1Jq1f5pEmH3Z26>B&4syBVn;F{W@WK54W(-wH1bwhe;Vc(eL?>qbH z5!sQBqU6AB?q^5CG9<<4%+^zy@Mm^{O8Cad@|l>1#-w5Q@8Uo=6C5|0?G?A=-v{4k z5|i<=l!pd}PVc+Om=NN3b2Lb_#g}KF=R26>Wbst;_N-iazH{xh3u!Ks;bM9TS37%x z|4x1R{d5dCIkfZdVCU+6fH4wPmGqgWxsf{mZq-YQg8jCbbN;wZpU-b%P;mb8ivNR? zX$s~f;R*K@5KP@mLcVbU+A{4kK3%M~kKP^XWuO}_%Yo5zl4%7qR$ZO_G0mx&j(9%` zMit!u%^WF9PDbN*rSi)q`t|rX;=gW8La991>aZ$C5q9cO4>1|C+{BSw4UiT8cI%!y z71vn}**YKDswkH}f)(<;zXHHnKl%)i^iAWSaHXtX^aN030!ZCF9-by-BSG01#=f2Q z@?@P-yKRtD;1{>weqiO=U*RzR)1KS@`JyICsk9Z8>9KL&&h<}Z3Nusbj9RKm9++q9 z+zHaDqwbt~htt5yJlO&j!V4|& zGtGnl`rU)zPWs@pgXwCm^6?^n?Ymds9qv?ib24T18+Sr9FFJhue|-^8Upt9EcGQy2 zN$Ve*@aAf}FiVNR^fLu8(2T;G#%ts>8n>ZDF1e^cECg`dzEHq%DVnZ*TX^6hrO5Oe z2V{_EHOcW?Nn(3RE<7q0r6$LXf;Wha*WNwX-ui2bMIjnUj!uv#DCv)IB+)OMlIIFr zo17m;y+8G$nCh@2%M2g?ur8s#zy1$}wEb-UL_Tl^IsGB=B495ayd7yl-C>Ro#QU4<>jy+^xB5%8;hH{PJ)$flo#&f zlg>&R9G5b+iC7eku2O$_%>Da%GVJ&FB{MZM(u}O*NvB|fiVq>Hccmfels~uEo(zmQ zuYg^_O`$89g`@)Idbw(~w+s5r{O#-X2Vd2sgH-rzL9rP!DAlCT%W<;h*(c@8g0wOn zbT#63R9}R3P^B)Dp%|g4N*_i}(AB`qBEq{!1(necqbimt*70J@eR86N;I|jPi|uJo z(IENF85H1M)Y4Dg@4qaevPsfx3})s%3_<2|nyLI?KlhUKbG{R2*-1KYHBFnT zV)Zp6Ip8w;RPLFeROJOmc;y|OU;$RJJccYz$MrJ%NVDhVz~PRQi*(jA2Nul|R$W$h zmPrNDvQW|T(2iY@`pGdXEokEJHvWqHbSwCDad*|87lqiE?sYhKMXxLo2bKb6X@*dC zTDWppB_%&>CKRiN=gN=uhsp1jpjFCce;0@Q+FF4Fv_?6UWe*f#%J7#SkyORJ1y-*E zF!IO7t?&N4qD`f|QTq=H0H7IK?{fZ}PYy0GG6RF;R}CJ6siSFvh#r4_s+XcL%U3qq z)KTqa901@)XstuzENin;IUB(@C(i-K57*DML_F(cN7jAhVI^sGRP?Bt(;*PDgfaIW z_vR+N2tr!Hp;pmWaF0 z^TI(Wo`sAEzP|>^9-M_RF1^K=CW%Njh@x91UHzRu0}% zxDSLq$RV>B*s-@TVg_F-k!a_GK_Ym7O5$Tz>&>0CDChFMQ$+{q> zvLUsnjl!oiD;x#76|TB>&9ZI!?V=E)o@0n8doo(qB3a#=)n>07_jdZFCRhfzMZ4HT z#cwoPn}dI#V(i0So<;AW>t90|1_m{%L^oQg(1&j3YbCXjKDC%ER2(p{ukmdEgfR&7 z|9+Ww&zxm1XZGk$_8S~d7|Ef#%|XwKn`ftnxAf@qQPAZWTtff_8`6I*G}j91#YD{* zn+6%o<h=GrY9cP8d3VUT2}Id4B9``@Qlhl7-}JUf67O zSjw(c{=eSPgB^+rHQ~EUz24z!L9|PqVc8=Z?kA98+qe;D;5B!3hN+!qr|22i*8+s5 zmuM!Op+8dX^{(}Av^8_8=jGSC42;|gmO0pZwdE{v2x*_|wCkCb&S{sc10(&hN59Kf zx0A2sSzqcuh{sNQzF5^?jXHpRs{8c!U}b`-_2c?M{eSHeANB`5?>PJeir-w!FZ2G% zu=_oVN};QRe;SFR?)|Ep4nZhsYS(^q`NR%%bEI+Q3-rIY`^&6M+tu(bBHARYzlFu( zMOG|-mp9uDgOW7wf5Jlt2L8B!&Jq35m@B({DC34zka2R%yCesEmW(nQPGQT>Sc*0( zw1Zw_sn~QXn|Hr2F2`R%(pT>vUw%vhfmUoic3M_PKGU8_6Op($z17sxif7n}M@Ir$ zGDehKY3}tB9}WThTmTB#%qE;HQ#KzZNMVuem!>SLmQ5>ib6=R|UlYApk+-AW;~;-_ zKlB&b{5MwrNA$6HS%SK`Yst0sTMMWklXxp$M08s0%t{o8`Lm3g_ zKfcx?@J#<}jt4$$zT3yBOBCgSFHRU3vFA27&?2O9$MH}B6^H1sP2>7xNv521^X_Ov1 zcK-_{Q4%Wnt%cp=B{W@!V~)!h})g2(%uNw7P+YzF5izpP5H{KwgeL&*IV;9-`IhdVwra7jg(dIWMcgklVEXv7Q5q4_78bNVN_bf0NKeGiH9V=BKaozZ z+E6m-kO>w)$Fh8!@s#>u0Y|m7x6JpyZyJ5GW&*0_?Zr-tn_3xtkB3Lyz?89QV5ZYx zR8-x>P~?-l@@wR{fJX!U_x8q}{h(gr5GU7ZdVHwgE;Si&eTiC(UNmB5PysHJ|wld8UVKh;D0$+$N_$pELjsN~nBc>b+hj%D{ea zy35(RaPNAF>fHknt!~JCb8_V~&X92uV)zQRn6hH(=igtO{>N9UzxK}7{t0Z?jo-a* z=GiHFb)d$F=AAi*iplZ{tmyi(+33q|YVbd?)A`TCcgA*?51j%$;$h7gTJ423EXF(& z-3;{_=ZcCry}H1pZVA~2JNXb4lU10pE5wgBo>XTdDNCMzp*s}ll_u0v03eL2N?`Jq zIA%hu#W3xx$J@5~UD0MxFq~#X6pp*k<8aj{we#wZ@AE#rurP<$u6e$4lq}2Y7-U%^ zUBc5nO*%OV4}Bf+dR4^DF#_`{qYf0ePit^TF11y$SwS~gp}~3Gj4G2Nj~PY!n$a3W z^&Ioz9NMpE@usut+jRn%mNus*UQ_Ig23SF3L>q^T!2@Syo1tcxUiyc(2nb-21Hcds z`rBA3{Fx(>;?X|_1t$@M+&8bw)(ebkP~52pzfWUA71gpmKDmr#-W^@jh|x4nDOZ)?{(vsER$*X<&5hZ}^9dQI%Nf8l5h>xy7N?K4-;Wj*jum?W)7PYg)5X<5B#f@yUF}Tv~ zV&mm~K)hZsBrGaBbO@}}&@J5)rwk4t)gOjXr)ub+Hm5sb1tpWgq|j+KsU9UPWr2Tc zx;9PLr$4qEKM?!R&X|$pzB9e=zQfb^ zn|YOmw`LCG&1C6!T z`_Z85R*{9u#p_Zl2K1i#5;9{^b*i?b$HC8_x;E9!7G#RgWxIsmUFW<{t;xT{lg5-< zY^ydKkICzmb4^bhlzGq3=}XN&`NvcJC_1Fx0H}<_SgfqHc0BB8Z8ec^@sYrTv=Xdg zqJVZQfeVfbz#71|-CzW5qRcB-c9;PVz%ZnAy|ULFlZhtn>%bx5=#0x3Z+v zS4G~MMMTJ6#97MfIKtl=RXd;L2mg}#{*c!ubL7a&eptAs>*`HuzyJ5c;WxpBW*llo z*}^g`4=f5|_^-Flc2pG+vo1Nm3d&@q4@`8n@rBMVeo{|Yx2g1i5v2TRVDm~ATQJmn zNXs;Gx0^p*S;VSO4$aYz7!Mo_0z!R$JN<}R;APCx$mrjfH94b+_>YcWJz#)GFs^rdivor$$nYR)#uG1EWl zg~6{S3^B0C_1%xn<}ZOh_a`x3TiHi77i;#m-;zDXUM}C8#&CRGF3(HzIfXutrc-Onm*F64(VssNp1OSFPs%mGB6{&{> zu^yRMP!0&_7SI3ymXZlrPC)^!q9Tf(ieYRbI<8VYlAY8zjWrCV_Whk5@COYZv-&Q8 zUYLFC2lSYN4`3X!!z$1Dyfc{>#Stq_$+R=F8TF^@S%wbYyStstKIhQ$JJPv3X)!E} zw?e@RPu@I3ijUVwVL`LFeus+o=VAn*`Je{jjL2I82a7EO%PG3k(cLfa^vCrYdRPoJ zBf;qc-cAl_0Du8ARq|{qE*~Id%a>W*ku~_?<@mGLoHk1qhWgid&KIUlpP5wS`r79| z9+OdO#Bz|!wxh4>ugzU0vm8tDjfpK$*Z(j!1yt5JCRj3v!bi2p3=>OK*!O1=%~26!pW7jI$gR<+pM39KY_xDR7dYmwjWhO|^U=IpI zbaMaz1c8Q!lr%76WQFpv-sUiXf&qLs*%u{Yygq&FkH6mpU5a1zbUjU-e#sA9pmlax z1rn#GF0F+Uhu^xsTbPe9L?%d=ho4m)h_bIl52*0FlP@VF!yn?-F!l~=xg#) zw4}>9R8nmU#3nFi#)V6J+)Kz%=kWoCq{ig#oh1Lc+3`z@U>Z~;$qJz0fmD(65eEab zuoY>yI0!OFUl!?d`|{!Xi~@w@pONF8_NTz=3I6ywp((U0E^AWttQ#!6KgRy=%AIO( zgE6Twt$zAl4?f=#$I)A3Ma`QK0C-ZtY}>o0Lwomed9^1rMmRGLzj<+<)y06X|41y) z|NedXd`0uTjvn*;VBIDm8lw7LWCv5CBp5IBY=(47s_1Px%H@RTXNU>?@BSZr3Sc17 zZ9Aa~)j0n2&a6zC3`K`{IMAu;AOzz=v8Ui~7FBFFKDPo0SvjKf_1?{_eQu_NSZs0MgA7X)cB^ zwfEuYn0Si3E#?p~TM984KQSks5l^NKnCLH$IbN-(_$sh`Tt|Sy)c=0Lr}$}PwOC#% zGbt8s06|%7>1o0yF$9MA*nVILtmurQ8Pn3)pY0xn9|of!2mk<;#qv7)HakEcizpg5 zgGk4%cj~~p9{0AiV|k&`sD6a86Ix|X!T{W?-~VNC>sy>UEEGm!*>1VP7;%+KaY9#t z4}+EBQKq7}9?!dhch8b7*MrX3D$0d=uw8@NMic&At&|OI-(LzWY!Pr-LWg(INYx*7UPP)@8g>;SHjliMH9kw+aW zN(A^E?L6HC_6;nt51WS&X%Ky#n9J}w__GFc)TEQ#rkEa!)@W{*yg2GN#;97f*L*>B z_8C85TM_RkI$9qWS@T> zzmG%+RuI%pCJ2nlkxS?Xh9`X1A+s3>vg|C@d-2SbW;e=&!Y7SDcDtxRk@#`;!;6m1 zEv)DSaVQby@Z#_icE#rWk^OF~Tb|xNNe_y2D>S#ntqlLTC_h8JcZ#6f$O;Tb6h(}} z#_j(67x2j;CL_zfFU!l{b7Q50H3LN~x7y`0aTPB%^aoQ_u83#b78F8hyAhgMo#1Zr z4m62zpb){Qf(l?rbG78KF!S08d%o5wA*WTrhea8@n!~S=g*oPgW#tSL+w$5D{i}9F z`EN-o+n~Mg<&^aiNE6tD!d03#Mu&x6-nl6>v<{pO$ic7pPq?2N4VBQ^gFrz;Nlb+- zuR`fk=)jmnSYi5%HAd&yQV=>u!q5lW&%YV9fTHhF*a&<#^w%b)#g7RGFP>k~i8Ic8 z3?oLB465Y$!1>-DAXYg0R=`xaOlbp3deI{ELbN{}3lGmC2oXjHU9dVo`E&K6akE4N zrp(7vemnoW75#H6{C5*XXT5#&EJ(jT4-x)VIEG?+W%tP5i-KBc2vb5cub;JyBde|G zVJ@Y}9>v$Zx!8#2Xx5_qlhKUQzP~KDe4)JzxgHTt4he(x$5+L<#LQggQPfAKf}ZM3 z_`%)Cw#qFO(#?oIAFl2APs8&y67T|}^q?(*ym~}{a3E5nT#D~^02lk98oZjAnu`3) zs;b4rHxgYi4=N`Nl+dRq=wCZ7rjgXu4B}C(7<)}RRwqkxw$QE@1Ob$zunCnHM0PvF z)2SeHY1%yV(D=mSEu_RXm^+-l$4NWy-CC{TymUTx0j!`u-@MYm<{$URizurhwY+X( z#0-LRC|<5ekqK}MrU{!i=5>@x-e=AKprt~z1m)RJjxXf;A9FcdnR-QtHf)(Od*oiQW^!-Mu9EU>)vt47*E&Bxy+N~XH$D+ zJ*6^Q9ykW2TmWN#97O^%g4BR#g1#a}E@26*9d8xK&KYHCf-g{5ZzHX#%f(xg*1~MY z_r*Iid@|wx;#>dR+d%D0k?q9uotg|pF%7R({z|$4ayy<_{N2=-)pV>p*i$amWVk&^_gz5N2 zq?i?Y!j=cd;fkbfV%N9P-g%?V8wB{sW*mwSH@^iZT81r=H7&Hf&zZo1#x0h-|8?bm z-ManFGOf<~O+Ot)1VP38+}|HgFWFNy2+R0*EL6z8teQ)Od^T1XXA!oy@nJs$J@2NX zOFUn!C~{CO7~^EDCT{N@*9=OU`Tl$AbbC&{2uK`D8)c{lO(5vlQyP?*3~EH$>T|%L z91M6w0$t{gA$qnG{om93p!GLvxZ6b3EDkKIL^>-;|9bQAN-X9StXUvLEMHl@CtA8k zUg)|lpIf_p00A|O8{qn2=OzD`z{lIh#nj4RV$&Ad9$bb~X|g~5pj^N;y=8gjXfeFK;X4pYP0KeX2SM z^uCg8Z$b%dJi%c<5$Jcc8BnZsar;mF`kM-)^4<1{^g)K&8_&+m|1dowlS+`Opo$S6 z;Q>UpQxv%G!t^`lPCWfxNA0^hZ@#l?z;k4g3KTdL8s?T}X`=$e>fIli(1(YORd`un zB4z(1r_1cKYtNVR(nt6ZAajL*=X&hpYKRJpeI${LYH2siVdddd*dJ10(e`Mzq64>K z-G161kLF12ak1GM%D-y8`QgmJhE7l6Gt_ zb7M%K>Wi7jb&k_IM0qlC%B%R};y(VS=pb8U9a>nPlenx8Al37=N3YVS8Te%hm}7Q6 z9E+&&SU~_6Py+8SzjD*-+VN}C`!2I;aj~{$Vh?zbLI}E|#Lb2RBhF`VT%TJEXN>3T zo5K}}K40qNsA0@Z#c(Jlc9z#{)o{)9>+W|PpS1`{ekd}ui5~gBdH1XHnwiUg@g&gV zjJxyX>r-aS9Pk5U;q<@pb+3QJ)$@J%7^Zr!P&v~>OLQ{Z@9&Ps>0{hj{Nk<_uF0lS zm^3ON03Zh;hGDP(DI^7GS`w}PI6ENpHWKXij+4&Vgyp_qAPCHa2A}{6-}GQ(Vf>RL zYLT{=FFvG`)z`HY{iuDn9BnmNNDm3pZx14E&ntjfqITy!ac|T#7!d?%c!@=>coX)H z>z9_}vX2Hx+Zqj8Qb~A{xLw4mR$_e;^=dDG+AW1SIGyEh{j}1)H9=y-ppQpHoHX z137LuU9%5}qfb7@)CVw#`R$T)+Sxtrb__Ob&~3Q`H81f_B< ze6MZnEm}vbCd!n7&iR+@&X;TLK^@nkr_3%Gz>kOJVzZPKbiTxjxz8wTW<--zA4y>DB?C0H|zBD7YqFtIf$Df3y5rg)jw&CbLGLp7|y zAY+(+FR{09^z%H6)#V2wCAo0`KjWts`WMbnS=*18oGrEbED%_-0m#nP$e0edQd194 z%Kodlo(iJw^Cr_%@Var#LDwy5Hm;;S+II|i@&5`ED^<8jH^=4eRp8{=&Ai`Zy`Xbe zYm?DJ(p*^iW*bk)DHEkjLh=gV0s;*ySA+dBdA83+sPSFV@9k8QHePMtw@BaZvS=~P zlhc<|2Kg`=Fw}V?>wIPb8h@*M6PsfRDIDnuini^tNdz=hi}+>IFD-d`ITUu(D)Z1! z^ey$q|3099tkf-*Y+J@CsE_BAYyO**QRG}*oA%jCkI`;2D?w>_o35(7C%3Qj7w4z4 zYV^RPp@wNiRG0rI4qn=PoOp^O(;1Z|eahSaR^-C$=+qy>zZ9+C zxzK9kqGBEP=LNrZH}+sX#@;Mz(BzXe$E_aKms8&jhfE~9O2&$kko0zp=&m;k(Z z*d}cM?x$dr-k)5W0`AhWPl9N_&D!{~9AcAd3wlxJLhaud5bN)HId8lBk=g6E8*d23 zQM&Rg`%Zn2S*f>(S)WT4cr@ZY4_JF#Gjsk~t)83r6tztp!+kAYYR2D;&|nEerl-41 zt60B{w}KBX>cEDEoZb+l!k}8VFiww)hX)f$-Rl;rXO27d**1Ow%DcD!_M3)?CeKWh z;V<&A3xzj!qytJ55@cSq3%N?vI_^5?FD`U)iE2QE9`1%#>WYZ#f}P+mOLR{c80k1_ z2GGMAYYg>Iv@8b2Dz9({CC_v|TvR642LaY(jMxoeJX>0=DQR|-*UYKiqusXY*mvFR{$R2T9#dF&1k(mX*v(>8MV%W}LCMv3*~c6xe{Fm8 z8?a#wbO4KjIUUR8kH5;)Mb0~QudXh?CJl-dU&LRxB^w)wX?L#qTgI2Sa4);w1UtypMlPmEkjbJ~9 zVKShmn?01mTyhSZ4^{L~XJr$+$uX2^AXyyeE!&Rn>H^GhYtB6Lm)BI5iCqvoj5chn z1QkGk8_VPC>bK&ZJopVkD>*}tyi<#vQo7URF^YrC^U1|GdzytgRyLwwLQ@uc3F5xz zS8IqV!y82hYv(`G3LIn+L}1l2iwGjEs&8YAFQdSW#6t>|cBg1*y(R`xjk=BDAe=#|f+X1VYqYDrazv#9 zC>nXhK!L0x$zo`8%gN<$)mP{EN7gXa1lw4VPALm?WCGztdoiZX(uH+?J;4d%WJkqL ze|N{YUvfs%FwisfL_tF9pa# ziZLJGeTmR)!b*^Qm=o=1+Oj$)cql-CI$SQ%lL6VAISMv*xG-rD3_%cD0(ClQu>wI5 zZmZ2idDS*92S>jur`EkK$@7PVH^&H&d3TvU0IC54P@Z5eyWLBHE)ch49i?8IP??f8 z1|}Xd=Y?S;2GtkT&`9DLLwQOC^5n#-SnK%J(rHW=Y_Qy4ZO z421*vwP}5Ho#EY04EaQu-oYT=;%?jkSsGH9)7aRLC1zpK%qc*GF@X(1L{l|lt4oe2 zv%c=m&)Ki#fHDy6YlYtJ1#~g+LRskgk2T&THqx<2O;WpYye#A)rYT3O&-~#BTT!CjHDAwcM)A5kM?7_ z!C*3A1C)kV3Gg8e)WaUtk6sqSJWkWAH?D47Dpcyoz_B1?uGF)cUpI(ngYPYNW{1~t zcw4zxz2!B>Ax4M6*HC6k8gc!$GtuWuGmQ1-qFr1e#49ju5s|JRmJZ7DIy` zh#{EmQCmMEP5a#N`Dk@0B@rT&{vE-j!GlRYj0PmUWqE7aD?P2g!gcxTDVrueAKV(X z^%bq|k7^qYM#e&2_BBeI>E^0x_l)xNck{Xuu~P4ep?cONt*G986&22`@94Z7Qa{{`FaneE+c)EWV_`dSxUSU_0yp9Uyh$a^e`1p9^ zbhNBaBQSxjH<;ARX0<|RZw zrk-qm0U?|=mIMmT(U<^(*`cUF^(2xQqR`4uyc@-#dipm|8oMqm%*%WVBB43fE>|rf zW>YNY21=mk80FJ^xUWPBch9CUVvqy?qAch+b>)Fw`Wyoar9TCO5Wp$60zO@OM7g4k zP8GT7m19dZbvh>Q;NjDTw%wRiyd3}~(&-L{!h?XEeh?Ud6N6C!xB`f_KuQ^yOws5R z7m_%NS^Z~Zes)EU#&4l>15%7{fMXiQ{c+{lQqsvZPh&wk&B*hZR7TirV8c?`u1w$f_{OvTTif7k-&5 zAXobz_M+hz3qHm-?9*F?ej~sAJzltw13=S){Xqr2qM)r5Ob0Y%2Z&$?GZ8*igyv6@ ztHoFv;j)3wtHZCW`=8AkvV|O}<)tmIz|^{Uctk9kaIGa;A|ilsRzWeo&4p3#O6Aad zpueO0yW{IT87DJ$y`mr5TMSxm;GigJi<~K{Ex=qFYuEydXEam`7OBMtP+Zk_-C@9c z7!@7NJu86!dL6G%vVcWsYgbx$9o?U;-H!C^$5!`w?Jg(mw5Hh%F6x^|G`$8i40coi z1lBdkEl`97$aB5Rnh)2zz#qf?lbUC0t zCopPc%;gQ)k#d^sy7tvIL#7r1Do@4DR}~VP+^QN-pcNZQ3uPiOSsDPW4^=DgEr<_% zrztjQ%M<@DAB$DtqnvS= zQu{lbCL5`auOr3y@!K3&K`ab$dDh<|6#Ow{Wa%`aWub+r-wPAdzUf4=If+oNhP z(rGAx0fbpD2x)Wo`BT&v3g1U4Q=0ziB6W;;y8IcX{@D8ZD)GVq%_NRoDHbS;qW}XS zZnB2hQ9}Wgr9|znVaF4TBa;N~YwPB!+j092%JEgaDhvSy1;rui#Vf11AgcqyU$NS( zQyArhu7%?DqPyrM;5W#|iP?XzHt_+_#=~ncC&AKq=w;?q!D8>0e;A|N*H^g3ApAO$2P=UWVwkD(8WlA| zfvm60!u;E3r3zk!9Q*?JPXr7MEI|ldm?`O4P|j~*xVqms+wI>$wtB%&-+r|5$6bvr zOQzf}eS5*hevkjQJ=KB6ixrn#AwKx4A6>O#vE95C_)D!oQngP^py`FHyfb|pujO&T zg2&OCRFZWMMBPnIUZwNu=x{KSbt*wOi^`@8hIf{Gh=87;sqTvh{Dd)MT%rw4ffAu1!M0UQO9Jh z^kx|4_~>E1_n-7Ll2b-N2;lJ9?sE5D+=}8P96UTLjhrG-ibLQjd8C7}qi2&#shcgH zd~Y@XD;s^mD1qPnxI1Tbl-Ve6PmG40vZbiU;7L&s!WP@K*VbviyIPqcmB(29v7<)hm4S^eZebvPF=bm094!Dh~VN(a=;*IWD+S5@8> z>-yZtxbuga$eIN;8*HdLb>V^Eo9qYA!|6ZxF< zYS~?yz9~s~LiAgvZeero8raRPd)HuveI$+NTvuDb?Y~OizmCOO=%%Qhpzk0b%lC$Z z&)fPj94Mrw$$Z#J95NU*j*QHd|iwW09KrTN3|qg8+Xcd<=^O}O4hfm;{=aN57y zY?iL;&X5|f%<8frc{GYH@zc4w>(_O+JP_-tXDrA5<5@#yz8thy^V4!NBdTber*GI)$&Fudt(yAvArl&u{yiEWhwLAt}4W}0+Dm5 z@ddB=r#|HBqM?LZG6$FCx{Gorao7r`L!w~Xc?N^nNr!%nPyY446}4)juzT^^n^)t3 zpe^vv?XMd46aiOl%ZI4@H5kA`7X!^-)$x+aH{2-d_LEWax8V@3Py*-8Zp?R5vXPnw zy^&zn_MVlX(%05kBZ$R*SU6inO+Tp!Jp__0AWknqj03C~X5N9~u43Nr<2dQW2zn30Qo?`0HW9Z0re^<8=O$ z1rPaOn)_0Ju?e1115Lpe9ZB*c(OVtwNO;FvQ&GC-*M#4Vg;X0jQQf-HU+vA$J7=`6 zJI+CGv3iNn80pc#ruAn^uq_2zlGQC@JSaOREY(e~urg8riFe&xyi71-D32`j8@N*U z^~3w>>+yIjzT3QXobfJ+NLnpu=1^@$ay;n$nrdwz5b_& z--VYS{hg~V*M2^lg1FGv)v0cU>K4gkubu~@v5jiOIgNC??BA8vHHx5@gW<>4=tRVC zJ4vk-1d~IeBQ3u9vSr6%G(r+$nN)Q-G%m5El;;hxS-;?W{Rv}Y&@&zmE3AcV1UL7; zb6#Ffj%?#RU{~@nR=4}igsZAbEllZOEyYR1o|+e_PtkVKT8yqdUYGqAhVLDnQRdG? zUe~`W6y16^uT8Ft4J2Cw)YQur|X%6xe;^ zN$kxc1!Lp&l71UJtX|CrSd*o+OZ<=@(a-q z$5}ja6ROg2QFS&X?%zrIUX(@=sQU#On~6VY-o*$iTnRn1VIjO?N|37nntth1jHxF$ zu-=J>v5$}C?ihFD6*~+-IG~A8E&~%WcU^+{(Uu5~^p`C0EFjt7#iZRZ)y(-yxPS&^ zukoTD%M;XJfUrUXg<45p9SH7Ld0vjXgs)TwvO%MD)f-Pq|di<30f4JvfXJd{TIh^7TY1wf?O6+~&ALNbTW} zac}jB=4Gntew+f6Ef^US&ngrNwqI zvxzwh+ygI>UP`IMI#jY`B~()GHZH3l?Qm79&BW>k2SQ$f87U;=Eq?U{?UZ_kf2gSdQG68>CgpJ^s6MYS0Ee^<5w2$tU@Mew`|Hs z*t6QkbkG+mS#CvvX|%2u!c?M{0>jwR;VOp%F>a`%L*xAQkA$sU1wCa4pZFQli}-T9 z%j2ZQS9tc^ip9Ut94^0Mzwue6t}k0n45G24e0^=&AD^SKic_)_%PB8@;rBRa6Zm-C z&wBD%Y$vlnO!K*FMv#aUD^Vdukv)e+$?gr8t-KMNvNS8}o>D@*vgsLGl8N~bWO)~n zF)CO3WbH24j<$iVfKfCwGG9=Z*1pe00iQ4whb=&Y4uuTO7!qmmUMH5MPHB5%1yH9n z)Q~9%yeZm0m9SqryzHcDb#P&)9ioPg{h0c4Lm;Soi&NP~?K`*e(ftDd_N35Z9Zzx5 z@PLq;gUz9`HJm4(ZDek@aim%(@(+35*CL13!zQKPqDb>E4{q1q>`qM?zH5{&ci!c* z-olZe6Sy&ryi6lIYpuUWTZB z^)?s{XTJ({`3$pE4)n`xBN^oMB@un=L~%jt>X>3B;D>dwUg=wl;A;Dw|L8_L48)^F zwMPqV+`Z3-nvNU!)6>m*o(BuqmqF{?6NBPiCne+{XxrJf+e2U9V@zpoaUUl6uL2@uGxe68LS|nff1?y6^~3Yx2CL8iQV))Mn7s0IE;>tK5@W7?Yc)h zIZ=tLkg%Ye63&2VC*ot_Ge$Mm>fWEn^~`?o+FgDVh;MuRS@)*oeWm%w1(Zd|2(%kW zeyLA|SUERK@(rYBIDM8EN}NY?PD`u&5bV!i{}KP4Yd6>jyicNdq!f^=|BOGd!Q3~7 zOzvi#`$JhXy}vbrEAc*ltt~;)r1N$|&&OU`Lp!nJGodpI`QZLf zs~PX+>6iF9lfQBL!+(8A#U8et<9JlxLi)JgBf3Cncp@moOGOx^>mVw;2G`M{a?aT0 zg)_t7rpPr99atKL)}!OE%Gr`PS{CVX4QjnTWA(D`4t`0v`D?a%zFCtTonVoe_@GzF zBJ?6eE$1MvZ1tQ(t;rlgv??D#q*nu{-v|RCxLNv1yBNb+ROoLCWQ zqKY$~zu0RrHAqx{1ZVj9p{IgT5gX_4iho$;9!d=r5!; zdcIY>?s6z3nX;(M$4UabBZoh2FPI1!d}Q7oTjhsj+O-JkkcN{ghAmWDP=5phLSm5n zPe<2t{w=BKh?EFp4+N|Wwih*1cdi~Cc!@l$htQ{vf0kS~mL)krYs^vcyIv6!k%yb> zr==L6N0>F79o``=V=rcbsG`sB3KBoM`G>M&ooP#YA*G!o(}Qy&i=tM}82hN5NR1qr zM4p$O4it<>kY}z3mPJcspyMS!hbYV1VPflwTpI5uUGURFWWE!vjE#Kixj9I^>>h|7 z?Y5#lRlj-4RxuKNj4QguwG&yyni^T2(r*h`_3J!}0d+`YgB4xuc%SI0K~dnb0GBVr zHs$*!+Q#Bd551D_*E%HY?pK;M&vBfP`cg`0xGhRBsQz40A4`S&W497Ybqb(_m6bz_ zIzkbFsU@ED(_j=a@y?*Fmrp?5>f7kM)Pt8OeVq^#NuOwevCKDJ?vMRFSWS)-hxJR6 zH`OJ*ZM8?%r}LMW^mqvSRP?&8&U;f~v<1GTQI?JGeqyd$Cm-HiQd@@qUjU*5UHlYF za)b&2Kt}*lC}4$TDk}H}1OxyMcHshpuAmsQTkKVSpu}JoE_t$w3OWk5^9{5Du#z(v zUcBmc^&^{Kcg>vUe|B)AvLG6b9;V-xcsaAokGDt79JEL03w{mzT9fLDsyj* zEdp$w{=bVg{ePr9hVpj)75qR)dPEBV0dE2*0SKG{5`zk;*ad+S0Kg#0UT^@>3P6;m zXpx?c_@2>`YXAjG1+JZO*=0_i-YD|VuLm9KK&Y<0vHHY?kcvp>K$>>3Sz9Zd%(|fwU!;Qdiwv!>d}9}t)*AWM?`ucQ*;6;Al^a&K??vCR6u}& z1wyzGkYu+&@d5z{UNI;r5gGCtouUgrsHH0(|Gw&suWx2H?@RwVZ4gMjHN?Q#$l311 z-`gd=VwV#3Vv>Z(I7rg(GB_)6?*5+nfaL?6I{0tKycP#Hi-SI=M{%M?U^=OS@IVs3M2U;*X z2vUPU3Km*m;Dr`=3kO{&Pyq0P09*3yS{6}Zr(=6=X@3qsu*<{{$;{gMZD`|fS zD~ugFIO)@u41v;b(W()NXS!^&6_X57{6YkPPCZM7Ht-)1pt91B@2stXAlfuv#$<~; zxsjhh3X*DAq7@|}y9MM!xQQtZx{F+=Tg)nIG}?pqzMo%sprNli4w;4?A-7puLnb^zJ^i*RgYMPxQ=hm`!L zydVpgKt!})U@#%uE^KXAk5rGJN7j#cVE^cOXy?JXx@t@N0zGo8Di90^Q0Kr=h1z8&QpI(&f|Y?`9=B|lz+geH`;|a{PMs*8Iq2K@}#e2EpRE5r~WM} zBjJe=1#DHGl_6j#`@Zk;47j98rfP_3@lJle+Pq;GEIUea$}ZD^OP=%}@3E;n8y;hF v%P!g_51nkg@qB&1lj#pC1D8Izk?8w-O5DID4?&;+0Im=L;D7&JZUg`TaVc>) literal 0 HcmV?d00001 diff --git a/imageio/imageio-webp/src/test/resources/webp/5_webp_a.webp b/imageio/imageio-webp/src/test/resources/webp/5_webp_a.webp new file mode 100644 index 0000000000000000000000000000000000000000..c29e6758dbae825383bf38275bbf9fef11b083af GIT binary patch literal 58728 zcmV((K;XYpNk&Fs{ht8*QIaO&dw-jO1PK~M#9zn(1T!ch0r7q!xrj`RL4pj>=GOy{ zTb>F<{>0rKFaS^j*vj5`F<`p8)wA$<(dMbhkM6+g$(GdJv1Ulh-SbeJlbT5#mu4!K zJ9(?BigHf-(C)%;IVoo5EvmXW{y<{JT-?&_fGMZD`wKBsxU8y(u$lTcKNU&NOeXN@ z0_&hZ@i=1vAk&sA!e$CjJfqD3*jNh_)u9Zu zx*zaU%eqaHAmQOx(<6ZH{!{m|T}ON1ZtfnJM%ZY+ZQ1~EH?z%s8v)Q%rkR;?cztm1 zE;B&dD1DfGvP%dNSyh=S>HEH!gS~WB0gw)v2@Ag2=7Vvdsw%(CBm4dn9%D%+TGPw_Rkdz;vs-ThdIri|30|#Tc|CVJT)jjrYsv zBC9Zmu}Cubn|lORu-eSbjnB8(4=tpbOZ5-m0y_ao)%_RWX7v0YcL(q z;$quW_bPK#;YjjKpGTcj?cy6uebye&XTC5fre1be=dQ|}1}VihZ*#A~07G!4b6dN2 zC@e8;YOx=k8#Glik(6zIm`+GAmw`*BJKZ`2W*!zQ!fxA~C-XY3gca_p+ZwP5wyETt zfoysa*feFT5u(PmY@{#&wWk7w^(z39 z;@H-Laf*1qR+70h65hG9t^8@e+iqqL755waj#jax~RjGSvs5Sx&k zxBYtGwn>rP=>H-jGpnj$KwxR@4>L3U$DhwjX6ElQ+KaZxhs908A7%saDERlaLef*w@>(ZEG7z+jhW-LQAG_(#6~i7Ytp@%=q)}pTW$`Jk&k+ zba!=EC9x%)=dmnRr)@bsGuPLMkOcrp)mp4(F|Pwez(=)nKYiP_9k-FSZF8;#fK)h& zET89j>-)c<@~A#~G9ok5VOu1y)@&^W(iywieoiAo762esYq6Z_I$e4SS%>g)3&FSOI8 zp%yh*85LM$=kl6L{4WR_Ko1=K;0v!2V-y4g{2L3Cex|iGKFi87_nGo}rxYs8vkD## zc>>ULLKE~tTpAH%J8zb=ru5`3ApqdtP#C3+u~}YKWsz&+z_QAE;4BlZbc6ID$hqy0 z>H(mrxw{kDiglJx=F@}2gSIr3()c$J#`(OQ)Q!y?IwmX3;D)e~*C0zOsR4BE(8ngq z05INO6DcV|1R}#Ochz*doK6ZuA_Dj~2FCrCQcT)Oo#~8~1x2C+DcU$BH3MlLS2d9p z&rvDLXs=nlP6;#u1Rz0=mu&YsVR z>|1dnjV$IAMg)XpA`t*aih%{RSZgPfruLjzSH9sGA}RISGPd(&m0hegcY~!%o>CTs zX-O}eDo2{ZUGiZ_Pc~jYeEj*NlOXaFJU=PpvZ7rcOpVp56)S?t z6N(JSOvs7}Y%&?9A^oP~D`-+-mMC$}u&KIbVHU;w?$S;)Lkt4G$-K4kc|DuYy~~jd zy2(IGj7Y&fTLdIUMUF?;V4)wwkW%ojlCDq&%!-+XD?QASThmlpLZryI6=T-U7tLbX zI&DFlNC1a0_Cx<99kHktVi{|;fPzHNB8Un?k^!l#I58p!fF*8BV!%(dgcrl4b?JjR zQb#Nms z_KmrwO;*(Nqgh^9TwWI5h;u+H|3+a5xij-Yny%g^*?-Q&5J>! zNLf%K7Oa>?TggN7aKCATe*a2V$TUuf!{Tv%yB|dn59o!bCxu1eu8xuc zXS(3>R#to3-Yzysua3&;zx!b=UQJdIb7IRbBiQH&kYl^Oz1syrLSVu#UyNiR>iaF< zk7EPcZubHWK-xz%S$nvsd=`di23ge9Q!-COI=EKXwvT+Hh7#?|*}?QeU%(rr%m7G* ziWZsO@Nj)~-)5jgr51~EB%EI;XkCY+K;Y?wWJ`=HUmPAaX0RRmu-+#P%#!dhLtRQd zJf+^6L`2p;n=BTUX;sE_<%8ssq_A1i?*8pnlMUHPemA#Z6om3Y4xn?6I0_E*?uf4u z&R;pOxup>b9qN$5oq%#W!XwvA$j$SFT{V=7IPG?z*NKH?3KSf9nc-B=KkJqj@WY~3OQx$-v z0tI!JlbHtTuV24!#m=;OY|kd47N&gvFsaR~IxJ{JdaFDmm`6i={PL&PdWNJ7Cal=q z_3+33>JyO_C~cvv>evHfL^0(|-`>1_H=v!1b{w#|7(vb1tqKyzn_|5ijtb$KRf3G#F-70%=C;MENGPY|p@bJ@ZD5{SI7O}fTq%qy|`t{*; zvwWQ`uPRSQMKT%%td^2X{8;+^M#tGteLNP-c>!!5I`yVzmh#U(7h9lDL;(yy?DL00 zfzrB}4H+%rg7y19w*+6a*I89Ydjb{}X3B=3NM+uB{c5L&_T4?sM%Dw(Ye0Gsz9w1A zV0NOCBmc##-Ju$!ju#hh4DLQixLoN-Jbif>ub3>Wy|ch7B1S~{9}$5(ruWUtF8a!nc| z;}EjRCw5BIXW?K34L~hIiDDiZlee!hbPmEpHkVJii0lfwm7jUU0Q$ow7e!3NUXAzwI)49 zCeo<;>smSZrnq2C7QcLK z_L_pRb~P0X)5JR5-sicb*LN#arjZ$74h-n}#sJS20Ng0@Ty~69|3DNUqxjNokR&UD zr)s;bUjIXooO^E#}Ar*G6_Sc5vxZqYN7gqq!^L@tR2Q%vk{=G4dpik~ zzNs6oI*sV_#u{yf!Bm?_SkR*0DcdWc;xrqr)`M?Jc~<+P-#!iV~&kgh9O!2F}MH%k$40?6KNF8fEf}9`W(V@(NOsC^D_W z>LGF}&a}M`2p7+4KX<`Sc|;RCoY8OwT{JtO`Fskkvi69Mw=;0>SDL^Sz50mql4l5E zD1TgN)ytxxl~3X2^3o&Hj8H)!S;0E6*9Mw58$p2bvikF@x&IhLp}^Qqj>FLX_kZ?J zKE_?d%%-{d(WjTow=<;RWmG`99;+R}-Wz%kfFO52U)DN29sq8`62*-#{U53&CnqJS zBrYYDI`rv)Sb27@9xGz^&8I-m=ZtgU{&Y7fl7gYlkL1cB)n=}Vz%J9=D^YauVE0MM zBA9uum2|dN3}!k56koPI=hYL2+$7kfg<8L5oJh_e7Qi!?``-ds{Fyn{tk_Xr#gs2e z79n(A`g3?n*&iYDL%?s&9ZI+@ndlI3Dp!S%~d#yApCe_n6*Wo-dRpLPc=$lzh)o(l=6=Eh>W;V&s2|AnAHXM+y2t1Brt-^<3wv83^XgA zm>oKRc-!F&xc>exw=&Ip&YidS$b>3|vr++3Scby==f9XG66vN=fOvI1ruGzhGU_1c zxedLrkO9k}r4FULgK_qS=M{mx{G=NlL#uMCSBhOYt=bT@4DzLbW-OHhuC${#Y5#I8oo?xIGzzLk@&e#Ho36}>E?C2p9fCMj zqw$%#G(gmZ=j9qe&FcLpJmr~YnJ2n|IlR1dx9G_u@b+F5%L5(*0%kte?bSk&jAyMo$oscWf&C31*VHk+k1Unm$>9O7IrxV~1{UI+FFmUTWl@71Xv%i09 zqT&!_e1Y+6FPI-`!ezQcvlj79L5QdpQtN%DkN|8mKtYRup&|gbK&VW1SL%lkcZ+IH z4k}8`k;1~|7iS~~y(y=_w99$Zv|8!_)+SR{IE#8`6AMT(rUW!7T>vU;xDu>+b;(vk%=viJJfT+t zCjRYT{pm;N1_Am}C=~?^C$`O3yGD&&{?-njXdfHjw~l;D>!OQmrSL}^1AzRgAiK%w zvtR!HGi5TS1NHI7=P&?mLWhdEn9T~s6hTc2i&TlEqHMD*7lb+;0Be$#vM8u=H~<23 zv}hV@R5KY(0|9m)q^qlLj)y=uzc@}iTit$47y1Zgm=#_-Y4UZDZ}qC0DUuNe6<&!2 zMe%mDLweGumc7zeSZPGYXZ@uiFr)G9wAMz+&;w<;0gQa6MXN-vG5~S+U;tnl2e3aR ztWeG)*Bzt;l`NJr2drAnh}icLO%MU0u2*6mRW&*R=)N5TH(HUCC2h*c+d2cr^*S#$ znbISjS`Pt3vS~BAv5SyZR-1%OLN;eEEI{|gb41F~ zI-rrDix~(_9P^ShD_zDe>cSXxVITl*12b!YVg40buA4SN-lhY~P-OwRLEXiMvacHs zj3QE|%yP)Q`QB?QYU{Ac4`E+!yusB&XOqybC^SlLxr2ce4e?b*OU`yX->odirW1gQ z?*LF_6m~h&hQMIbro32L1Hwsb=T}3Ic3GF@-K91TVUsg@@q-{5^vAkQ@qQuzW>xpn zwos5j9Nv@NY)t}TKXokQ0}u(E5l;%5gYY@6J&6sj;kYBB4! z-{DmBQmyQ0h*63ayG;;7dRD%$oMwR>#R-&Vo3qRRYS@=>Ut$MqZH1E|CfWnXmpz#w zy{<{R$Uc0|EVP1M6c#;9Jk4aB7W=_xb5^vBhKwmPUv%p(aUj-q_@tsfjr4rMhyXJB zNbxbNp(B`Bma=zh+Xx9*<$fIj{}Yg%XRR`=NA6ecCU$!``M0n4CA_{HPYJK3kkjJQ z9t;d(bkM!%0fzN;7uP@dZ`nP0>NGM;dTN+N0#%ryq+IWNEQ-t0Vg~}svt42nC|(VK z)+Edk0n`lmNH%MlO!TGv+;|fO2pA1F4^~4y2IuAdy8;lCL|{-Z-?d2anc2E@=EJ}K z`Dz#85+ON_QCF>9tpKPns5)Q;*?Zr2LDRjF#j2EGTM@^L*{an5I3;5&XHo>#90bh4 z8|Wxd3JC>vWUPMvuRkoe(Se6=?5HtaZV1rLGICZB;8(B+XRY2$Nq;S@L#E>n;DTYt z_N{zZS4x1AA!jpP78<@(6=#hrvl;G!O}p)OFTnAn_qs1aI=5aB20bg75rRbl$d2wU zealiK(0UZviZnm7V+T+KJGOkn8=_1(eX9ZRrmsWv_MsBy8w}Y7$4GAb_R$}m?dVF8 z(TIeUFJ_rx>H*Z278KjBe=X;E-zPbYcU{k=lMv~b9S768iH)0$&Xj%40B z$KihV{c=y%(EC)l6OEcQ`o`a^t=`I+t)KJWp>%bxNaVPrLv1CHEoOD8m_#F}T9nrB z-`t2n(P>i{5z%=meDF2(b>di9Yov$Q=f;(evG2VHNQ}EGx7^?KN$qjVsF2c?i-I@% zZ|vR0Vb0tbO1*(q%A|IBgCIcVyfmd;N~y3!Wz4(x_5HN~!(=W&xc+0l@kuar*^qb; zP*x=#d%J4C4zFOtR`^0#bg?CmM{p(HBubN4RToRl<|GwmxGC$pRY{}R`LZch7o$jl zr2|d%>(3jX<`N6Ti-<@AfSbAp7^0BVYNLB2?G(25QEcA@DC$-nUo^Y_D~&Thvp>1B!p=zV0<;o(#3Hk`^VDO&NM7Bg2{>)Y5W|{O1RV3Wy)xs@e%OP zKP=OO|G05T?SuO#Ri{GC?gznD6bAw|{ zQT*a@F+2a~ztta@0lJHqmbPnvy0jbrZUunk{i7V%KmF%#MlxDk(hL?i(fP??i9yg{ zyY0gE;*iv5b;jq&z4ZtL&KHN3an=DS==7*%OkX<~`e(m-R18V-4|jqG?1=RBgOM;@ zQ&-rHXu1oZ!amX;QuWapTboX{mKBNbI>(lRZ{X_3X{53SA%+wWpfpl%xbQRV{o4 zfVOZtbbTKXj#x*!DQS|7)!KrFI%5E8?!7RK%ZcQh)uw$o%MFn(e_JQj)1qT3}PHhV`ly zdl*285UBGMFXi*n#Ry=}w96AtRF8{*xMwfc7Vxa@!xpkzEfSiBlq{|F0KcmolqxBD zfpH~5nZqjmtnuxP0g!UtGLG39jX66%FSV?UuVxnyPIXLWgIcp3LfI6V%Tz+26T=Yhen;=&aHGG?u!kOO1f2!^g_q z2g1eWIsK_8;!_r9+oP62M0VTdX&<4~0H9D3i)F156$Sj0C8U<-9`oskT7cBC-L7pB za2us4CPVl#5^VKpNq6f^Ig$(U2#yi5x-s_@R$^l?pC>l?iLwdlyK8@VP5-@ zjS)dTE=Q0QP>~p2f!$YMui}0VG&qVfO}mW*EZ1LNchwmqYN&mkk7Ks#5MceWb`IL; zuXS!cj!5(SUG*3#yLq*oOM;4!Mx7~wVYmW-WK#RsuO)18QDwH7mYG3D_7G5)c0EF2 z!cZ@l0!N`OjfP#b-5*ZoUn&Tn|EI4tFaPJP+7VWdwH~kid9nRUsC}PSITy~^gl@jv z+p~w^|KC;AHPfpbN!KbhhfU3N`KbZ8!Z*-$Z`CRW(dt{KEW&QT5r-p2;>>(Ah4cIe zpZVus^>1*M4?S`*CCfF>UB~Xl5pyuE<;TPh1%0?fTN$c%ixc+ocxDnZZw3WZ&J_af z^pH1Gp@Zg^yv zwSr4-unw!$>OVg|Pr?}Z%_ajpHa}<8IS5hZO!mnUfO`zS7H5{vUo4z&#drfIrxM4D z8<5S6&HVS`$UI!nJUhXSwL}JZ-DHO4r>Dn7k!!-AeiH!TQO7v7jUehK9qKedQCz&d ztd01Z7aGIf zc}L^0QPtsvv|QEW+*?j3tqrU1Jg*!wIEzhDVs`)K7`b zEVdCt<{<}o$Al+=@G{+Rw4vqUQuqJ=+y8~|G%_g@Q@vJMf@TbxRxcOM0GP5g`}0L| zv3P|H6&<{b0}0S&I0hU~W~N}@1pqGN_w?TTlvP`0@bfZT4Om($n)6}6Js_GXVV#h2 zs7i;%_3L^8eZvRrLc7sbv0%VBD6@qhZh9!hf+=gD4!kruUu%M?!`dqVHkGNP8xPkAN1hO)O}^MZvb6@Sn{s!<9qqcNwSuu4&9YX}}_RpVA(( zMbT8OeU_WP3*)?=p*D<)tgT)Yc)%POAsAN+ehd#aCSz0tkcSx3JUWDn!#9rVl7P2& zUwpYvO7B{0IUE}@7}$pCy?q^B=9GG%G9PGDeTrK-0J6z5gMBY!6tC-vvRa@8I(s3aZFzwmdyh!E)^Y8!nH?%ReXriYvq7j1BtxSQH z51iH)kHUc)+F}S75)Qv{g4uPcjiL6el+FrT10o=8(DvllF2?VXdieUy!;zuaAq5D-fXqn!b$Ujb zP0Vgd9-^lbcXsE8#>;0<7XxY>W-c$=7D6v3d9UYIk&ETXvO!upYor`u7d79Su26gf~)76@{1QHm_5f;N;dMjM1om!Rmgq-0@D>Q>Ec zQdo_hO03w%aIAahTp!-Px#{PG`Moa^u@t9b98UpAHJKD934^txMuBkT(m&gLkw=P? z`oS6DT*Jy*>x$eZE*`X`eaVotMLLaw<@UEvKAk$Fm<9X};ucN&W}D_QDq_P)on*lI z_5PRzwxzS;vrG-f@x2eHc|@S5-Wvv&^(zoEChy*N4GT1(qSGZr8pq-(gOj`G=b0f8 zWS;P@ai1)+u??+BzM#09{`gGJKzXLdVXdH@#T)4Vk8DlU6@778vY<9^ep}b8CLcp| z{E=m%&@t8C%x&k+JtqQ>{>B;`hAK};tQnct-)znRaaCA@Pf`?h*c;H528@dASJ$y~ zD*op4FTK4IlZeq=HDHE~8XZbr*`zmPu3ro{W|e}TBoUgyyx>cjbAYN)OpmG0Ki%y6 z8Z{G~xX6f6*4C1af{ai>4)_v-uF@G+bSa9z?b1j$3pb}ac-I_=q=eGV#<{PpQp^?o z3JfaEpkvVUWMH^kcdHly=`ZpTbXWd8nuGL&~uHm=O*S5?$L@E8FZ%kFUV z6RVw*MEUZFev{}X`K%78dY~6Sco`FN!Uf9Wv99+-=Qg9MEc$akwGo*w?k&{~*>RMI z3nH+aj2`QTy3z5Me9PoHuVmsBlR#GJwSkXMp+%={q zvo0AEdKleSw`0tl=A7xo{3y@FmW}`(SDu7NcvGo?BWX7|wmU=#7bs>1NSf!s?GEG# ziL=#;(*cG`-_R9}=(jS0CZx|?a*`FvisyzcCx6lteC{j(a(miqYpm4 ztHUgyRQulVX`okgT~wei)sQ;Jn*C;1`;$Gmjq1TTcZmV`iox7Ha!BlG)MxVr--OFd zc@9mJR5p)R5u}#!D1$b3!sT?KGkRqZQuoS1x-`Eu!YgAx5csI0(5##pa4!20Ofdl3 zt_=x`BIt4ui6caTY12YN;n+39elrt?vKN^OyJT>Hx;pTnn&e0aul>f$;!H-P$cMcS z?zGp+&=3#-MOf30rBHbzRHZ_<6}^Wtlq#^z;q&agVARXAgNav3a62L^psiM;o(X=R z3I%04HG+AjwP5Tppe!>F*)9s>+=A*x1mTEPk=4!GZ0i_QKh>K-c5HVJqtUZzj$SMQ z4p9UQovLn_-#x9g&0N*Y=9A@YVjXTU&e^~cYRV_8Wl5F;qM4$KiUgxRB8NF9qm6l_ zG?=2=^`clT%QD@(J~mlW={%cEsycI)G_;)iE6JBj+%!_mMpso;S0_(Q@i0Bl{pde2tcDdfGHTM@`?76eVU=QHi>VMQc8zUE=dz>LQI(cb^yLMXAmT?2;f+k z8r!YtZYU1ezNyCcMABdKqfd`RVU}iu0GT5JS?H8Xsw{@?df2}G&Ay;93I2|%23R4n z6J1JVC;=2z>olo?I`{Q!d+4pA@E;zDVmbOSkOgp#F#wr3@xb~%YgGLGS(6&7@opJe zqmINBb%>IW>CLa_uk-f%{eIhble5DEPAV2eCh+x1O{FkgB!Sx7s>C7AvZ|>j^zU~d zG9n}fLLs&mR6HDm?)nlR)*at)^OZpa=6v#yYUw%cit!;i8r>W^)c9E~+hJwN@k z2vp{ZZ6DL(QWTeChLX3|KqO)gfiOVv&kl;Zc(kIihgo&U9n6VVV zQE;O)(YH}}A1_vcq`WAGL@L=HYR-Tb2q4|i6tr=SzVyJgmcKxT901&@E9tzogs%DK5C#sLyPJmDKk~;*a zo?$EN;nCO9JO1g_Yn?9QfUoI^W^d6;)yuEHU-rp}zOiXv%_&~CkeDRZZUBM9$ESYmyjPyskx(I{iDB3B$W^?l zuaK1@q;j}nwi`G?3l!|+$u}RG0T|&*DUh~lgcxo@Jwd<|Koo-l*6@}a;PWZQ3{d63}?GSfJ8`SjWR>eVfbMy(+=R1E<>JD)a~tW;w}gLwVc)m6Gt7IZR3K$S#} zd;P-+G&&otTzxh=y^~2Xf|M8m zQ2L~&7o;>*d}2vs-yy&drr_ec@C$&x{=d7lJ$xOPlQi|ik}6Ks$=m>P(#iMI|3TbY z;Ehq!i6VfsoBVCHebuDVUoAfF+Uz5kiM#*2%BHI$;|v0FIw{UGhu}2BFnQZ&8J%WG zCmiOA+6B3yjP^AFfDVkH^^1^vwqD|7xE48)iSZ#H*qU#(?aal8y6+%TLj3{Bu98&g z;5&tQOD9iqrzZj&SxqzuS&;rWj!LQ`Z%cC%!8)>nSmw-8~R_@q5~%) z>s(P%*!Sx9V*gQN0E0;FWCbCnnAufkQG3CB0Ofa`&j>UE+*`S7?$voYilSq?XFDxV zj1_yqA<2Y(;wnR$V-MHhvodEP0AjuMXbyg@p543inAtsBV$PD3^T1YGsjNeA6m>oZ zCn-8(kgRnW*GEre#SMC`s1o-{aqs029|jsS(xNkpHvrQhHQEI3dPtr=LXf(U?7 z&Q}K@91p|8UqExxsR!W%EDA!x;N2N^nXr(I?HTrTjtY@QatEnE6kW0)h5P}?0J_OX z%*1Cf(A=aU^C7Og`%_;(rUDWnRA=JQ9$>FT@(hjYs?KjUTMo& zD@Fjfn`Xy^C~kE)#QC$P%$m9Yqw$_B7%FtPbYk2Yj?(-#>>`zQpLAuERdd`fkFJ&d z=0bc2+#kM`PmURu7jZioCcye=BwF8pD8%q2?D8_UqAX1~ zkFt2enZUZj0oRQ&^XPGjn2-i{{ViHD<;v|3Z7&H}^s@A3JuF_h+xPO~+d@AAZMqFy zxtG(KxhQ<62t&8BMe+3<`<_K-G?l7wH%0*@)dTlJ2#8szL+D1Lv9zf$S0+17oZk2S>#Q=(N8 zbl=2HlL?S~B+5_A*$M(I@}e!9^~736Y!@d!<5IIE}J!b{*l%jtmvWKyY4|`B-CtffoQdtYkWZHOpb#Eh0I7=R4)L zJ)}dmlB$-4CaGsl89)#_Ni6Rth|!);ADuef`deZEAbL!bn7OMck%(ZqGSWwZ4rtI= z>ZP7|K-Q;>jxwQCNafLh6LUh!W$8tOB=Wa~5@aSo{U%DkjY}dmrsLxe0+3*jZ!dM@ zH-^O^z(Cjn(DLD=X}VP+C*r^Oy;YThC^s*(Z|HZ};W- z*`l)JrrNm`g=9!uQ7n$JI>keiwcDE#Kpf0rO>%vG`s6rclmU{w^`_~1=6-BJf|&Os z=bTvGba0duqQNX}VDi;@7A>bQB|4(rv^^NaIE1*v(+0CcPW zGC*0eFj(EK%M`bl90A^F>?U`P0OCosQy{KI4da$K+u{^TL%>xT2 zl4v+n{Jp${_*zAU9mD|uqF0T_sFl_#%jb44KVl4aLXC1XpiphvVU1>0`999bm5d=?^=`2Jxa|QuAEHQEVN(Aq35or9e1pR)Z6(DP0`FPRtJ}pnr{x5+c zNHJfq;VQU%TDqZ+S#;utmexii0f??67Tb+5o-7mqa#bn;gv?;^R!?P>$gaq2T=%n? z1q4Ki_Za=la|K+>hv>{NXwC{WOKUi020f7&i&?!r_9`?x(&-RzaO=*=#WzE@vEkIMKcVGY=F((^8ZMX=A zZxtq?h*=a6;S)c50ZUl9OEj-dmh5)G$&wSL*sE`mm(uirsUQb?hAJm@*jkfUBGC7Y zP!+hjfI08i<7OykmYp$W<>l6Lu@xb;MMT2V#DVAC>WtI)AQvreYfuyd6qk0_tLB8t zq#MHkV)`>Yh|sF;7tB4mT<937yuq{QmY2~Pz3*bJTwIjAi?cXY@oZoQgQ2!KjVzPd z-8_Aw?>j(99dtukH|W1M2RZ>@fN*CAaomAtFBX&Ped)P3I2ft=;XRx2XHIMXEyT2x zDmYilLmyNQuw1D`$p|gvOA*#>zmHj+enLjMy`6HDd@xZ+Ot5*rV*9;pBobae{Jd<} zvOv__h#Bo_R1fiiDFkuld>dV5Vpvl|T)UyPi%kZ}8v{ajdy=cN!h}tFZuR_rJAE9c zunqohsTM#SXcxOYTNp#0D~OK2+d;cZISFSmSUXG_eIKi?;rYNO;x#Jb@AoIUw=-Xz zQ-sI*2|=r0mlTsOB4RkFu_?!pvKwV>3ND2~M@FU$-5})v)*|Exxw9Ck*xp}9tRJw9 zPW_yd;zkps@7j|r=|zqRq&wpL(_$hLHGlJ)Pjo`Qh`Llpskw9Teb+0Yn07~S*VWFv zg9X&yGwl<&qHq{Oje(?qk@JY#cW%(m7Q$1P}7ZO+AQXAr;Jo_bn)4FN$~Vf{^Z#3 zXb9j>+W7hNtH>tb_;u(wDx0hS3+g+`F@gW)SKS{t<~7M6r@wgM zY_(dul=zsi#4lKux-unzs_X4Wo0}>aw{!^E8Slt%re|mK+~R1)myNm9rbU;O+is1l zY`bvJKNb;B<#rL}M8f)|_z5_Sxp#@QK6k@Di=@a?WD}o$twKOkELWArJY5L) zv5zbyL!{cv_U2lBY!0Z79{8ZxnqpkAT$~r09v`z?BzMN+2nS;sIcsWs8 zt)+F==JJ3D%O?O8`y`;L4^Wace01glD-dy!Z!ccsTx6QIv+Ab>u)zj2k?WkEMgG?Y6mz04P90M!pQR>Y! zleGkZrd%x_ZV@-mb6b{rL0SxuZ#@S%0?6?4=FQtp8cE+X z>X5R<+$#>gEUoCNRTBwk@1zZTBEDD*F_o1_?1CN#kfG^ebfp@}Zr?Nq=!B!OkF10# z*2#IXNA$5w3rdiKIm}|p#$wqjgt&hGz5nyRV}v;YiJHuEqacLRXv;@xy>*31nGaI2 zC2YoARInE;P`b?~=~4TfT&mJ_$v8uhccH%vDTB|N#kPlK#B9ntMYeu&Z#RM%p*{@h zV!A^2FKqw(+yD2|l}=uNKh=oJmfiyzsqFqHo%V>*`37N7l%1aOX+anjHQm2`>*ryL zn))^|c0!m$k`h+vG_sYbeXh zt`DfD$T;~ex~2?PDT3XAmgij< z#)hkxfBH`@BzUwUDJtUQ2pbr{`l}z7m0ohmgq7GjRgV#+&54p8(l)U6NAnrg2nNi2 zu_QpyU_fn6WTW_8Pw>qL6z|-6Cu15R04Scgb6Wt!A#}mBDqz3Pc@9SsW^LFPZUsg( zyHikN=^zA@Idbs2p;M?Z>4veFUgZV~b%jWCfNl0H=Ml7&4)uBiA)S|uVxe;B{kvTn zNd?+c695e71(0A((N0v{O{okfBVyLb1WNq$1RNmYMeu4v*REL|7;A=W`mmru;e<3t zINxP)7W)h~$x7bed4=&}F!0cxDae4iBwLD%l1J@W0!Ad@Rz^C>BzvWx1XWbVa%9Am zZl+Ni@-&FVX0zhcblOZp!$m}Ek1_Bu*x0-U6 zsr-fN1Q))oOfn_~a)GI>A3C$!7y>#8>~UY->46Z9cALJu+7BVgi4(fh32x3u>bjX* zAy&v|DaxEr5|JYy5{a5G+ThzZ2wq%Lp8-#*-HbM61S-Z32vOC?GbO{7TB5M8jq~xG z646JN7&)7cqA!K7?oLjTv;OfiDWap083eNVb=&q?!F;+}q&9>0Fehh8KMW7V&7&u$ z79cd3Aj;tGIgSd-_ z@r43p2Eh;#q7U=o0$owWowl)t!<(jP15`Zz;OSYi7$$S*xiFK~L;TxsgimlZ^wDAh z%mnQB7_*6Sw-y~Dn!OQfAKz<+zqM2lR!s`QZTBx1Db6+Sau@3^suXs1S!MdsJEvJf zSDQyuwiSuYeCNb1%2th(e(ZgkViYnN4D!rJ#kwlZZBit*9B^js(-V*K=l?X0Xx%=Yuyt-OQj?_%QGI;z zi@!7jAePk+#q(5Oa=wai3Y01r%@|}X9dD$_%1XD7*5p=JMw(eAF{@>NoICd3(^HQi ztM7jI)lq5U`(OX|+RM^s!sVYUfAZz?6?&=A)dE_$qXVI8o_zR?pTDI6JzswJKlez- zR($b2H_Z^pjzWgFN|%gWD2SqL7xofNcr|k}V)usk_FNaHvzMbs1kY@s%C+P?4x(yIp96?4kz?= z!z|@mUWmPFXo1}6SO%cT8mT-h5D=j&r;)za75XN^@)+CmW)DPf^WKcAY+)(;HpbHV z<+%3tKF%C@sn)Mxv%-Nnwdc2w^===4dXc~=C@t$MeI$6WsVqis0V;_5CQp9wLCDf<=_}xOmu5vSzP9pv7PnpZm_u0wJsU;S+udE)GP{r6$4D>_ z)*yw4L^#dew_c=Q;ooHetFfq5!c<=t z7=z{P%+N#oy;-uYcB?J4I&rko=3)2c|NQQ|@QBW>9Fa2cgR!!^0g!%`9l!O(&(7B; z987Hy`uwRKRCU+yccse;WKQ6M>BOUtM4xl7GKJ~sw8xnmwgX#67cya*ME9# zzuBM@j%A5mR-4U{&Q^WxX!&Bbg2C16t7}A&8SKU=LUHORD3)d2OI6rz;GxO!{bMrH zo(H(ZNc`#Q0HriTCj?;fM=8C!nJlrTp+A_#X+{N=hyE(_G7>;lmOu^EWhufL$Ow~r z_N=fyig%Urbk#HJ@grN$P%-hgxTU(hK-g?CfLS-<67wO%$B$2|pp%ai9Zu{PEziIa3JD5s=uu)`$!D@ZS2u~LWRJsvU|4|i& zeW<+iXTN)z^zdOH_$%HPZaC{(d8Cl=tK|=s!79S8@+TrIU?uoj; zENB!$@9}_h%hy)Q2&grl7U!T5vL^RV3W( zxb63S4Ew8nhaa3kA~j56Q2X@&L(~9Fw$z9LoC$R?iiAdYadc;o$*}+!GKcM69l{(z z*l&mK=xb_=ds3jzi!-W13wOm~9z`{757e0&YyA;oJt#wFd&UUYIjol#mv%`0_)oek zU95 zY{SFs;_aiC5B~6EmuMuq7{(uhQ`}p%0 zKb)d5ZlCYRQVZb>I>&C80l$r@qnx9uct-`nb=(Iz=B%1{*oG#YtfARyR4 z2s!d<@w6-~bT_?S(TJ}&(=4*)>y`cF!f?vF+H*;$YD{M5yo%&rK@<_tS`d^KsqZTj z|M~wh(<5KL?Y8~}j)ZNypx;jF5_cV=Gc3CeZ?SDBbV~HA`&J)~x6w^12PP}FAb4(5 zLB`t;t1p*TVQobyalOpWL5K>#=bLd|d2cU2QJb@f#KE`Dxuqfm4M}qt0>Yv7AR-#S z_wn~(^X~he4%M=`4{$sgO3E4g*FoUh`4PX%9}jNM0#~T9bO@o{`G-d?ERNJPwCVwG zS~A8|i={D9QjV*l0BaDz+fMFEqnXuIz#1Yzx^GpLVI^)QS(w9Xuth3f}SbCS(2C5&;nABd&&JL0HRKkSq^zS(zd;HrqEx8WAN1SiU^N z3JL>l0)BXi(rfX@tZm2ycy%Amez%n7;q6XGW*F%sI7F3L-0{Z|02`k;L_IueSP&L; z3GAvueWgR{n71l2MU;xMF}Ww2AoR;-WS(nxE!EcQ{FY-p8m@79ry+)}34m#E=j2?1 zc9cp>0we}euq7en0x}?Ij-orwU1X%!A@>DJdwa9+oBNH9L$v%k4UR)?L;tY*?_L;}lt2C3UoY}R zKOf(UG+7626S9B0APbqT$6%!f&nV1g0K9=^{kMq!O{-jo;e`C zC|%R|41|TW1a_q|2N!)pfT_X>TZgPFXh4T%{8>|%T3XRGjKSvQ0I<|>Fj>LPbMJkZ z=MLWsfaK%(Dbk{s=9AaWJB~r2)gIWDlk1h4ea7k|)AZEWw$?uqL&UbERisSj@qY{{ zm+~bM+PSBsS_AUc{fvm8(2WfrB00V+q!R=95MrFhqY! z+WV}a$Lw#QS{{VYrxR4AA2}~b0M{SG(B}?78&^VUxQ;sKABpFbpt4rSbY|wk$nJgh zhy+_IkBI%(3E^158aDw{5D#r2=QxD^5T&>T72i`v ztTG*vYhh*{c{C_U+rNlbuq7yNzeI>#Uc5743;@1*q;&tdv-(NXB?7HKRns9>XOGFS zLccBe47jm4fDlwpF+z?LdviGLVOGx~aCs@IPH83KSX38O4yP~zhc4ZNf_}6MAWod7 zvSdaitDRaVEvIT`8qC>(XX6&P5Un%@)*mj+`q?|-ICWayjqNH({b+{0H%aX}D1fQl z35ofOr_QvW9tbS*#89)g_EaY9A2x%_^9sP7TbXN}wvl5>vuK}Q+|MOo3ff6aCy4AQVVDkx;^=6Md(%>>q0#vy^$-6%cGeh*+J^tlHWX^G0Om<)sB8%~E!z z%fqN>;P}zU*p-B#ih{cX`>B7ENPT~Q@-pWgEa?T+sG7iu5SaD6s;b%ob|X^aCBD2$ zlm8BD24J?lQ#g`8n(Nrn1A1{OTSL|U+)>Cj@mG8&KBWi;y|g3C0&WaYwAv-;X#UKB?Lu| zhi7O@`OX^4BxnxBE&RO;AUdzETHN$}RpKYdD1P{O45z6Ul;P&4Xl7EPmQHyDPTXaD zp*Z8$LL)KoVYYbtw)moV-(s=_N}P~ zf)}G&1AY354sXA^^)yPY5LvgUM!;{}^96r!*6FlUcsN+y7l_ zg;YZfstBVR8c+5J7Q@@B7bF(*PjZzc?1ntENcwu5zn5Wo5x&=NwLjitN3Ys=;BQ1O z9jPOZ|X z=f4{^!=RXZ)d_FB0LEp?IvA9u7P;;-OY>V-iDMuvMy+~COsKxna+6en-c)~Fa}Kv! zNX+iqTg|Y!H3X*UMpVK4ox|P3SM`aA*0*jQO`m_S7N=7lQTNw!1d8t5n^pVQ-(Mn4Aa=%tBkV8+ z$Qc;!$tpkSpj=c6076HWIH@OH@b%kk*>Z%mHMgFW3F(kCh5Kf<>(}LE+YD@o zVd~aI%1wZo%hT^z$oKC;XqiWN`O@bZ8xK%CRniOJKW4Z-q>&;L-;`=gSHvf4PG3Lo zc?+)vjdjd8ity+sri9J=c~f?^ECKrU0m>$X2YBV7Ph0(r{v&1PF# z#f^*s+pgbU*-sLqoTDZ&@UhiNqM@!4n!zaFhy2x*qC+*&0H4|VT2~9urDO|zQ4L>Q z52J=%tK~w&=1x;Odi?pdpX0BBz2>?BV6>pyR0N7;;e0#5(E?rS?)7(Xl?10M1@ZG| zzNtU#7-;oC+x`qMpDU8xYGjWO$!-8niYkQb!?)?m%xl|WOuHWjF)2?vxv*?0TBca1 zV>{uJHb1$SGH6~C#E&R_18p+E;t`ZKz=SKm>nOUzqiGffrwIU<(;0^Ax8EK^uW^Sl z61Vpuj~kV_JBT)`i?)*F^K?P5|Mg83Qp*s+%LpUkFlwm&v>}(tj>x#ZvoI29EslUx z(woZO|M>DPUh95r{PuPq40@<&6q`!PmFTKW!&E4sq`&(O%~R&u0jwW6y{j8F6kFsk zWg7%+j}K}F2M(_onG@MS_rHDFLU^Sw$?dkyw3f&MOEc_VHq~{-Q=177_WUcqdW|^m zs$2muoH-l5Tq9g8b*AC|&)p^jnqHi@cLPXeOK4Gyvg`WzuV44)c)T+9;>k6h6vi9L z7`mXl8={~e1aZ`n=Dp7RWl>YTaXw{TFf6ONJow*{Hgmjj-e`1oPZ5@2bo}0b`~7-M zttATDx^e)Xa6mp-Mn;$`3yld7@;BAoi7#pIhlke(SaVIY8@hh>6`LQFC^BGk`}Gk( zwsa&a0TZ(3FQ5Oo=1FQTQNYxdHAoj5V$>Ydj4HWRmHU8scu~y6IdAv7-~a4TTaKsV z!Q)B({re&A;_RyslNck-E-sQI(vSo7T@j-~sk#6Ee~!1|H=@E<$kK{u^PR?%o2oxH z5D7Z_!aEVl{ZPuJ``+Rh;wyg~Dfts;Lz=AsHtNH(Wu+6ch-)8ZNh}H!{r=7E!_eFD zD{Z;EcUG3sEe-voIM6LFZ18g@BqK@vZU!>%H!sb&L*D<~9FL~+!fpIaz3Q<#I6ugE z+oF=TklKsmynB6haJDxB5kY(Rscu9%aefKkmS^WS&il?_%>MP3gnW1R$&*o!_FJYI z1V-EGyhIP@CvQxMx02Z0Q`U#`_upK1hi7{u5Q$NKs8$mmG}@V!WvlXXQG&@?j>oj` ze?KQ6b=&QqsQ`cUGE({}gt$n$A(6Mvo>54m&aG_M~nex`=?F^-h$ z<+|LW6aif^J2+_2LWCu;*wiXeVz#OuO3nM*^3Sff>gScq9$r_Y>&DtiV=rSF9x{W@ zeLbtLA6f<)Ihm`~`P}aQ;F0=nF?PfR;m{=DxjjSxx1=&#g?EC$8w`~&u&U}n} zf4}`VGSUcD!sDV_)3 zs#?M^^xJ(~#~5@JMo)ViS%cbD9=v{6mdmMcCdzKR(2bR>A_Ss!sX1Ts7r))y50?eu zczp{IHhPgUUADjs0d_^~MWU2a-rvQzYZRj&-}4_309Snx!Z1XT5CN{S(MEX0!zCKfCSy= z*T@4Z@Gh@T9zS~)Q8xvnb=m@VXx6Z6k}7aUKp`}MiS6_5Zc{AnMCp%ZA@=={ELzfq zM8l-28zCGF3dluTZ(OJDotmy5Y@;%wF}6!Aby5rSXzjk!rbz;~JWk#lV+D{E8BEr$ zx%%Dz`q%sC47r&CL)&{IS4AauWeF?u7DUaFPNwxrP6f`BB^X7q4vckcyPnAiAyS5H znglf#30Xl52ysrk?dz}K-aU;IY%L*&wjIDE1K?pd(kNC7b0km)tc~<%o;>17g1P9~ zM{IhXRZmP}wMp!17_ zrK*EzF&bI=GkM6O>;^Y;S&ni!P!i(7Z|=T%cf0SCz+vgFPLL1Hce`#63zYC_=9V(B zc{6#0P96MAWoePtQp#tpumkedYB0r2D4-&+#IU=4_s#8oNOG+GaPgu3{qxuR$S8D^ z&7`PANg|O@YSM2bF(_>mH;|Klq!~zBTACv%aa!S)!FToD^}C}r{{|#*fBgFSx8J_* zrMf!|GQvVk7mmM?Da3g|n1^XjDQS|0Ny>=kKh0P+aK3% zZcdtP8bF}QA4sGj3&`}Swt2z^m6nqkqp7o7ii#2a;cT4A!KKLyjG4Jw$s+zj1z^KjoZK4zJ8B990Mi%k0>Z>QCyRGAm0 zK}8hU{IYG|s^h~kvr5F!rFPfsAKJDHiH|<9_?ajoveK?_zNu6;$rRe0IEo5-%Oi9+ z2Ld)Mz6TEVKJ^csZ+-sQcJ9A@8*C&bqbT|7{L02L0`p|iM2rD7*S8N*86@oYQB&J< zj;x~a|6{udR!}$~Y>WT^Fd_k+0V*s3ECD_x4243WhtLK9ku8A^05ULm-@txEcOzfV z75($}8}ftX+l6`G?ibsCIe%9FyZ*D~ANilQ?*w_@{Xh4Q%ny7oDE(9X*Y^+fANBvk z|NsB@_Y3>S`QPzg=f6S!p#0-XE`qx~=ZpYFcrKePXx|AGEb{LlYypdaWz+P~p`fBfcu&j0`JGya49 z=l-v7FX%tvzwG{Y{I&nA|IPkS{a^o2`(I^0vmf{W)Bm;q`Scb1-}`6%pU;o@UqB!9 zzyJFHf4}xf{sH^z`~TpZ{nznp_1EO*#lKJf+x`Fh-}sN*Ph0;F`G@Mi-hX00w*TAz zL-5u7*OFgH{zLv(`TtXYi+zdvkM|Gqf9L{s-^+0SbKBK_n22j)ll zuaIBF|B-)j{@eRW{rC2(>DS+X)qivEmev2r|F8c^>s^|M-6FfAD*j{iy%j?vwiI|9|uSC{e2_A$R?I+CA|% z%tP?K=~r#yt?(H0eCP=ucwAXI7_PkInCsOaOlD)ZoeSTbT_c*55XhcBv8VF14ig~; z3o}*J@^_q&A?;r59aL6>g41~p7*3nVfm9wNoi7)Q_ykSf?^r8GVUV(tXp!NZvP!nP znr*7dck1}~IVJj)hP18`QDgZTB7YvKQeN$J+u}pe^cO#aU(9gc_(mt3?K8a zQ^eh#uoWlnOU39!SjTn%8`j_pHUvW!84oQ6Y|Zukmb>h}{+@Opn&0mfQJDYalN)6bMCemuo8RPsK>%M(>kIg6ua)yBgnR>U zOd1>H7w-yti{|1Kg758%?GtGPhYt8^!#1)on(3$fWA|;{%5#xXao_dsEv56HF)M0^ zB%cFS=&}CQ&V@Dq8+d6Vvo)uAaw_dJ(d@>}X3@cO&kXAAyVCb1QF}0*&4YX{1q$ly z%p$mCC}4g9VgPaJt!srNXS~mw)b5v?Im$O^#dgL%^fg;!e6Ty8!hT$)2IDI@_>XhL z1o)yRO=}Kor+U?&LPI6VTmy?^SU2wTq2ZT*a#rSv_mxS)PFdG&Qg*6ux|HQ(3+&`1 zHgM=j0`ksvd=6xdFE?ddCy5VRzUpucJqPDIdhvGTe^Q6&HGg?Qd@Cp{{?*&u(fARo zYHo97-QF{Q*0^N~ecp#CN5uojPU1O;?mW@qAe3-5kM+Bnltf&mhq|QE4#>Rflfe;m z!IQ_eR;7_c(w>CAUbR0JO7Tl`mKw&dRd4!*I5z)HZdsTf6Jm0O(*s@#&Y1wGr!r`Q z?MxNCxQ%@h9AGOCDR}J+t-w$~hNxZZ;DTN`(Wvgd()J^Lf%Lv91m#83VjZl}_cI3@ z0azj+@-bTU&dolfSX{-V0MOg8zFXkHH`K2-jKRu#!#mYD3 z4r3I)HAG&#@^v*_V%^tI&^D#e5c}`zWiP!Q2ui-a4#a%r@4`&%$5+&nN|!5+CR59p711(CeUA1wpXb z%#%yO9rTt#yt3gXt|Q%h#R<*8x?BnElAyhU4bSDfR7N-ZN*r1GGl<3+*yoUyS9oQj z)N`eDUK|o@XCI#Qya~2VD9Q5CM*>k2>GFhp28XGKs>L=8#NRGZVpjfKd05}##}+5& zxV^u~dKk<0D=V}@Z`ICOkkHieG`iUx1H zA(9TJTNOx#z*P5pt_r*NpZ%3RwWR<{^Rc;Pf0DZ(E=$lkY7PFEMp@{3RcHLZ!3(L4 zV^NT@A$Y7SiNSH6Eh?RjQG<-rgA;q^b*8$~4(JCEHA7WRy;{4*Auh&TD?xTQ zz$0(6+INP*#nIGZPb&f@&mK**uT(tC*|-OM1!!;F%3mE2{A*5-Wdz@kxEE-f31v?d z`pu~xy_K)e&4dWxy>PT|45Gj-^3aKnGmEaD!jnIXRKzFM^DllCp5eSht!mxcuyCRb&eb!m7I+_pjJwLBIxXHhsecJs8w=aNBw&DjHrPcWtS10`0&zX8 zI>&qxGER{6Wtf$un^dfvk11}!c9Cj`<1tIlpnnGH-N8Mtk|40 zb5s`@0%T)GgtIEVKC^luBnBxITU^L+jRdo-yZQd0dkNISKX}Wmk1|bt_&V;Df>T(a zM_Nm;KjZz#3g*+9P2Lq?Z9SIq)T?ljDW^gcoWmL%+&-=l0XvpafjmT$1#1G&ut^U; z9UV$12vPr<&bnYC4KrUdiRdmU;$Nk9|9~!Sw=0TgZ8G2LlwiOc`FH}kvGW9d6h*uu zb-vjD!AFuisd|&pc)Rf#HWqRv0xevQ;h|L%nw7%$u(Gw<+kC-lGX$(f*DU`{Wgx2nb6vA9?%m2)@c2&)(clmq64 z%E;Man@>-PFPzqd|E(Xq4E#D1+^@#95_}9~bdn4pn9T7!nd-CHB@lCntV|3V*suu( zX&Z@?B(9x#oFuA)nd3b{G3mH(k~oQ!4~W(B{-8)^UOOm(1;-s}37CJpRryHS86s;4 zh7fA~`)Ag@*5IP{8IUPH6!y`Mt#}DR^pLgYKq1Roq7;}-G{my=|A_Ml2dTdqK2vZ2 zZPe6V(%driSq|M;Ci09UW+ul>RNIfJr1Mi^Y6HSuh|;_=a%OZow84ikb7>tWJ|2}q z(<}QnyRF@4=`2s0qxzu0MCOO&s~+7@nZsTHW}<-{XN;d(^M?}A$~_S^z9 z%Le_c1V}PuP0bA2IjOgZEUJWZD78w&b{?#rA53W15GcXk>JVV?oE;bBG3-?%H%t&9gHq+Q|HMV!x z*@&Op+Z zYWMDYtUWkg{ZC}PtL#LqenO#piBmift!5x}@rBj+926>MD{%0fxu|TW-+!sy;CSkz{W?=O+srj7kaUW0XoB`jDN8 zSK?of!?YoEkpLvCL!A`@6wf)aXenCssN4}rH(Nv%)OA+S33kGw`+5G1I!-Hkd>Vny z`5A|qYO(Nnr-F3VKQ!RJHe+Uyc0O8j>p(|L5mdfw`5NW42OqC_xs_}pPe5c-mD$Z0 zfDpA-2%5_P_YgI6;&-wzxl0(HsxJ204Ed4tcj75=_d|!;ew13RRZQ_VesA;*B(ozT zc^!$1Y`8FxUTnPw(?|9o&?uMyZ47bsEU$L)PL6y**V^xzsD9$N6;ML}n8XBKzg=a=rZ4Xj?#{^!j7+W-nR==FIW3)lhNrXfebbN-3Z`fpFI;>q_9e)lolXJ>T1Lz&}BF0>T$WB(TP6UFu9kyryC&KWvJI7o) z=U7Dl-imJ$nR*n4$H&@wk3MUy&gcJnuD?aERL8-MtJ3kdC9QZF33KaEi3o#*8HCK# ze-kkAQ@pT*1!03EK<`->1JBLHRCLKF-E)AnhW$hvUo~~&nDzst!bZMli)!~Mr1+C)>iL0cA> z1ME6d{y`n~W?isxwiXcdgH*Sfd~KX9*S>IH$bS^q>MUoj8P{>AaWIRrYsc`+_>_rQ zIHRI!(#O~QY^(l{q+C9%l7%(ZSP13btAn<>f&?z`K>D58rZCn6);P^~g97e47!LD4QL;RU=;H zPe?&6swRjH@uu9Ez#SOG;JfC5GG{Z#WBJB%ln9E#X%)+0cV@$Yd_&v)0;{4~7Z*`% z*ocv>{t^bCJMf3`;*04s`DAabM{4Y7N}K{yL~7UEo@P_dEs7|Q{K4I|2klB9dK~QG z*)P(=anC(dHyx(m`6Hnh!|jOO-bar-_Y$}1QeJO{vN2R##a+VK+LI@*o9TMhT(HYevvu2MkE)O0*ZWA}U?2^SlpGVsy;%hin zevggPV598OTNAEip7TuaB24Rm(X1-N6OaiI5Eoh^yB&Ui?tXNf!sWmgjw3UMw(Nc7 z)>vsVl)QX7ez+>>kl7&AkY6AYpWC)N|8CpyEzFu7*LpX3wS6&GwOGVUO+TgGAO~-Ye)&e1!^Lw$$E)iKNGm%J6?ZfN|h`Bax&U zXU;tsKL8BcwkgWKo5|5KMvg~)CdhUrdbpuXW)6o+l864ee6hW+M>(NWVG?=y2#aoluU8*o$7uu~;rjj>3C&HUQaK z{~3hUPr$vvHVS#6$!FnVa{Ll)1x%SlKX3f4SZ_;4o6x_tR4XEYgq)hY#RI)u-A~B1 z#ZSx+Qwf}c@gU}Q&3qV>SLDkk$UDe4WqKej@KY^Rde;>tSpixL%A@G(VVRezKfE-b zEQG~jE<8~Z`3OY8j2vk+t=phH`Z}wbqN9eH!WcdCG?M;55J)8)UUt2hh9G1HxXQmJ zUinnsYf@eyhdnMAT}_CFObcs>yzfkV)bOKvO=&q`t;@S_>aRV`CXFdY2*`&UmV*MeWm!$PO#qvcTuhq4#{w;w#1lB2Csh`AZSH0i=TYV$AgT;$wds80x@r7iPS4bt)K2g%erO$|-10+MAa=E?xDH_-n;WjB*qe21A(P<=5D383IV z7QGbtcJ1IOFkY+aG(wrye)O< z^!w$ISK0-4^4>iib6Ld}N*fTUCt@Bzk?6Bpg(F>htAU|4M4_!&Fx;41gqZ{Rbpw z?(uWW<%I?jF9R~&E^SCSxnu`*PqTpG7g)0a(Zd~MD-2Az@v+3go;_ zGd}kL3^ZaHClom{Xt`=f)S#*d!0gTMpA-xm%Ms};V<;c-G5a*C@(%H2PbHuvc5274 zu|9IIAtL^z_f^Fj=*PRMpBuA24;Z&OvgN9%#tG%i@rPN?6c+u~*jKo~LNJTJoWSXt z&!5wrs7h3Mt=x#Tyw%RdHO=lX(Jk665+1uB*?{48fP=5Ny6Wi60g6qjlSs>P>J}De z8F97noRh|KkUT{~vFzndh`ZUN(=94pv2b;V*vMG4XWGImnI~g@TN(Qg0u=TcNI1G= z5uiin4=-rWP=-##K-#MlrH@k8tP3=X{(m;08xH-rP|626yuD?R&p)d(f=ywQ1j*c< z`_Wpf*by=<G#qO4&nsYEH8+yn{LqxHTjM8w)Bh(`7--qel!m3 z9VAq%wb?KtH__%`k$H#!V<~h|Y{Z}YT8yc)mz2L&H;s2xmi&W1OPxxwjEyW~XxDQ< ziJGt&eArZAJ{$aA?J|fj3hx`HFFT<)HE1k7aicV}^~m0fkLh~fQ_MwUnKW>RsXJ!4 zVxUL>H3JqOOS6yq_y1M2uqofCi{)nle!TeTMcJBMz^mrL)m53R>7OhY+{p=1PegYI zYBq{Y*@AeYW;`}7Qc+XuYKQ(WfDR8?OIs!gU+vo+f46QkgHsPPf<1rm^$TlSV=5Yz z|5*{|P4FUdZ$xtPt-_%zYfku>hqt?l*0jk6(_GUVAN*LdxuU`W;f;BV_oSS@Sz?Ys zD%^{$pBGicP(#~%>JWR=d|V6i|Bkp#f{#~1sOM=s!o*rVER+(n!9ZKX)m<5M*+291 zsJAqyudc|_C&x>E=rwZGmtRR~fR(zokH32XaxrOC@Oe1qTQVq)2pxnPdS|!4YS*YSL|M2QAub=sLC9P>dXp;LnRWn|`oPI&Z!xb3-%V@0I z%_Fh^W5?9nM}&Z?l|UNOogsjY1H=aF zwtWAJ^ z+iF7t*9N~`;|EuAS)GzlyAVrRB~DsCkOw=?0glnwk&{JH)!UgUzgFxEtEe>zY6>%oY6E6O8Ke%%>%fGd2s)X`Umr+1q5kjV0Y%d*^ zM06FoDBFX=5!V~gSHD--m7SV|D_!xUlK__HSP#pn`>0B)!FY%lK$B1O2%D*HQJzBG zuWU&IPcmJ?{h`&5-!9txTL?#8U0>a&_ZUL)dF%v-2r?-Qd^2J6E2T`tDpkgd4_&rA zBB7JpRa!dI-d8nKTP>cxRY6`DVv8A04wKBQPi>h1+qth7&eFpsGPQD4(GN@JFbDiQ z;!_;c$NT??X5m3tE7gj~B&C6Vs&)dH3dL|FZ@8di_aj{m%EI(PqfK6HpA%T(ypXT zzQQ*ZpUM?rF(_X#KXU0HU0&O#u?!VFGZ#Exc=?Ow!LxXmoWAS8mx-q06qj}JY){D-?BTv0*C6IM;O5B48N$O)@vjO+ z%Rne=<5UW!zNz@$-25(_)eD-6H{5!|S{|efX;903uO7X&8S7zT+D_p737oWS0724l z6V|tH*Lput$X{zmJ01Og&P~-!Ssa<~udxN{FJvayfjDgLHt6im6s+!gJEd0gc-2Ff zOybx{_aTW+S{m>iY39j@=34oIN5a!GLv;k=^;g;SYMezX9+W$-@B=XSZ5Ta&dZ1w`T|T|VR! zKxhtqd9*|J+{=7j<_{D|(sOAM4aspfytDSeibHa{W4I5K+#IsL;V9vdNY!`F<%*CY zI1xOTAsUxo7@)0_&r-n6?!3jhxJT@LTJZM$Xb#%aS4|X_znTVX=--uC!F|K8BgKG5 z1f$PPL!YzJcQPZnrKZo`}g_Tx7Ru`ToxB} z5bp!hhc5UtNw%H|bHiq*Y(Al9kW_xEdbh=`P(up3q)U^ZD z3L-ClL=yYMhiMsT@_kGJ=e})Rd?pKd{q3$i1D6i@!7iDB?_?NbjEmY#V-DVbEJ~WGMdwQXia#Y+oObuL;943 zhi@N>Tnh>3O99KQ$vg|uhf#I{1;y!hngwGp&XM`lqG7Fq9VpC|AR;6d?kh_&IT9dXQ zdG$}}w;m}Mb1qU~GsSVY!}>fiy5iz?*r<8Etb zp)Ba?m#NW#v$e@of~SftN3Rv0bnl-s#U@;~zjWo|YVacLFc%|A)}5>A3M1q0wgR)e zt+hGjko2j0K60Xqo~jc7qK`71qZZkeK3CLl>VV8$?7TvbsK^uWe>qW&w9(_qeDz z?u0jTA=4)pq>}wMV+Pd_yk^EjPOuhsa>w}UU*&OafhCb*FntC`Jg!%Dk@bu=ZPo^p zOR(rRFs!31x0~;#Ky}eS524X*%D`~rpi6ZF?lYzS%BR9In3s*h)SbXRD0tz3XSnP+EfXO-VZP`olE`tK6UIGUz3Ghc#G zg7u^Zm*arhffUzDO5onrJFCKOSu9Q`fmy~dz(@D%$rCJ=42Pc^8bs7#jqR$M;Ik?k zg$4)Ln$4Pg10Qg{kScxzZy9ck1k#`LZb3R)#1XgOz2%{gO94^4aO>wO#Bj6h5NHTt z_IldBu{aA8h{MkAiRC#3c|f|z4M2PuemYwN=ZarDbFAn#?(RWVwF)IfnKStdjR(F& zkhB5x{X-HFZj^V2+X6u3Oqp9$v?uGT`vB+x>p9ujtm*@5B!?_vqO_QDs8e zLe}2@9V2w=;h(v(Ao$3XnY^n!r|e+^!NdZc=%H-5*d;4MZ)qw>!trZpE?SD^2o@Fu zt+E|vsprC`3GO`KLB-v;qZKtqruzZG(LI5#f;`kRsd0&z~#E_o+bsNC#~SWrIps=aJW()pCqUGtiMAkuR0>O-E~JvLoUHZZ?J6MEHJ#`iUv>*I?q#z3So*v(1}50Ivrs2WYRmTVcG6#06xFD|(W z&Ztcg$YXbp06HCsy;{tC3jdqMaUzom)W>2szM`DJfq7-2o;2a^dsKg(UF|g{~x>aZ&dgI86Qk)Ai#1{hsJZ?Bu zS>{VESaFVuoWI1V$v9_Mc_ExJip^$>RNzSWXq3U`$NAFD9_VzUva>Zdn`5}?+qh(aLTKXXSq>=wr(&ORGMw}J zx4zs=rQV0flRT+5Q!Af7go&g+%n4oS9%X`h1?v7^W%pn(v8|%UC{;IX`~XupCUqA( z(M7ODH!+GAxw+WaA9hHr_W3)Ju_P#0&R%Mj{&)E!fgkJ|$_lc@a@SyCm|sZ#1))24 zunOF51H^*ZP)>5}+M&|3hi-F(i>#gqSj1Pv%(SH1brWQz`O7Q{2kL2DmEMyiKsau+Xpv#7j08Jc*7qLKbw6+ME?`g%~2&9 zpEdUUh`!Do#vOO+bmb_^p-I^+)&?t*@we{a3jtM&PMBX&o+IFa(HRK`{_j4l$PZW- zh`Fvl@PRAGoW%^c?y=wj%?|c$6Fcr+&3brlcA?fL56dVG*%Bib zr0=LOx1bVG45@xIf~~jD%4s#Lb;FwAoZh9ll+ozcQ;QeeV)W*Xg7%RrK3*Bh-Q#ZR zlavmR?J}@5pnUl6=m1ItYy?rjo{gppwVV~p5Eho!-LQ~|L2}dbgL{uMEcQpK;&V|4*g6esGXTm6e|Et_PRC3djS}df!K7QZut3P z>L5{HN+CB%T`dT5q1HZ;=+x8AE_t?Lrb0M|pN)YP(Nh0Bibk2{{tS?Za0b8v6M6pl zd_3i>1MtUg6&8Zn{R}|NDSu;D4I?hkeS>HLPhmW~fbInT?pF8mgJLQ$Xej!jFctnG zA9>@sW)Fm_5QeW2{a|xfAx?L?DdMQGfF1BdOTx~i*L*0R+l%~BQp z>KfyI;(fKNvcv2*&cV5kVCk;tBDra2le9Alj3I2E`}hWCKhA~c8W9t zZO2RG8~T21utd0!H$;tUaR1-bM2I>age~AfT4E=ysZci_cZ>419*VS~N2cD59@~tF zPS`Nj^b1hH-ksQMhSVnKLo$XZ!L2jNDGtoo#1DE2I?|-?E$xJ7PI}&FNSzSv12EP);$hp>dyJ0E}<@#N1RN!z!cp|Jn3wV|$EUXj&g95a`AJL?; z3S7X934?ihNFKJhmrf32V%CSUI2d$_Jp1gqTZpc`MrWk`a)aMfqnOhWq(lw6OG z&HkMr$*<^fDIKk27)vkB>dqM80DKr`h79Zsc00Ji&Nc`qS7Ticcf$c{84=uydQ-xg z5y9XCZorhLf)BK$+d>IuNsNCec3Ra=TnB&aq!!H<2i61*y{mtw*wvH(GtPQb44{jx z(Md{;HoyDv)?@&cvRdS0v_X93{t*I(jLQ4{fw>% zWG$_&Vck_b(C(>+Bey(^R>2U@htiZow-C~G=TOGfh*UuFJNKp+qwZyDpi&P?fh|tr z!%7xO@qE=FIwbz&m67FRv+3K@onFdG+!g&SG;TyyhX40Tgb7{6hbGRGPw}-Lh)|8qnSov2SNy``o(cB;;ssgM2 z@V{$?)F={QKbW8J`V8RqvkNBDXY`)&9gh3&D4N3(8f4Wf{6 z-}+=3{~J2emD~A*0s0$d+)ouS@CiJC)u9LWtJP~{xSKEa_4tK>;*ZP${Ig5Lnv9;^ z@iav@&ak1IAtZ07x8)hu)frYf|SG!}PLu&pjNiKb!(T7DPx406nFReEZ6PRoRSBadwLc`6miY|uP*j?@TQ2u!Y zr94s99=NuEDNg{r3^@x&I00e_S9Mp`tJC6;*(j1Ab;%6}GZ~h2v#~>=8CSVw8h6!; z0)lrbspUasHEx3n>`F*~|8+icATy}n%Eoc+?qVaa03nzXxV?7vhX&2qzmjEPa8KRp zJrp-XiSV@F5+6|&1L#}37w61F3YWn(4o~19tNSbX;Dja}tS=RN0$CAQ>ZcM+Tnwin z{Exl}^FClK2WCXF6!Yj&xeF<%bAE!9lTq2a03+ejDqFOZxEyj=)?#J;lQfCyH&y$# zR+IPP8zR+umIZcN3;=n4pUbLj#ho$3IIMTtyK(Jb=<=y6NMKLYwtz7M?` zg8io`ORpF4UYomc4aBStHmu#k_PW8lbgBfWp@WFGT9jt+?FePlGM7ph>i@mI77a zTFTmH>AwFx58w6XY<%US1p8cvG(bKv8(R1eZqonzz(02!5g=)FeaHQsQ7n!JLc7+3 zutim588BYNaaS#olTWT6pU5m)C8&@HbXIA-IhvWx0BFiUEa-~9e9+>O5VPXwlgbrH zVwRb_@o6S}KZ(-8F!JiUT;SBEhvF z05|>ha$%r_!~5-W4hwYSQND~`?koO}4_?YZK+XpQWCSYRa{fb$5rwo?fJ?%rX$sk_ ztP}u%2mrf%@%+V=f`AY%F<^Erh+#gIv-xmF4g84z?f4uW9hgl}v~=Ye%xITt8?f0+ zevtH8(};ZfMERAN?28BJ6{Z`y(ZNc1K4Y-o@E|yWL$yujR{Vz8b0815HSt441>}K= zTlLhusLB`VAs{Vnn;nzM24QHpV8YH#+NYMHg@ZQyV{MH{!kS@TYFNGC$E#=1%~I^Z zk(*U@qP@sn3u;f&a+i}N=i*UrrkTqXn)CXbx5*3#yY9MnDkg*Zk zX;?a?3XtmP^=ELu5gk99NHu$eA12At!{$N+AbCTqx~x&A@{!g29~GhH6ksT}OO_}R zHxt1KhUYzbg?)hC_6(V>ffYkmSg@lE+3m>kYy4OSK204^D5(;j0B&wQtl-1URjOFo z`$rV!4hg05b)&$m9w}ZDp${}|Ah5^_D>vqP@ne^knmFt%Xq{hp=Y6u(K&%<6$N}CG z#PBCuWJFiabynysnAI-butcq0w6mofkdCu+nJ1TMnJ4i0IRyy2CH!8kIc79^X_iHC z8SWHDN<1>m=81A>{U>1)jRbS;{mNqbYVMem&M(eN(rSHvitIS@U3`pMum<)5y{_m^ zJWz+s8s^dD9qSwh2dt$;5|Dfuy1EY*-j920RM*)Bp-*NCVNr0Aoe$RvAbY-{gN}Sq z2s=Tcx4a82TEPpt6OVfEX^3msxUTh0bHA{Yf_VwYiNz0}(ComKM_UA2McKVmIr~ba zx2g~4yRmk6Zmxw&L^$M=?YwH2rGD@2N!%?*Brgl~Q2Wpg>@GgXCyPcFIl9sc<#UmK zRY0A&>~SlCkkzb@dINA!qzu*`&m3P4Tw?i&IyXRvmKbk6^BI>wNsk_TO{ovR!n@?Y zzc^&luak#Y|7yWkS4l$Q@83i8-r-jjbn3H zGJUuWJ53J$^jOs?-@HqRC*?Q^F!Bma+t?%KBXW&xv~3m7hbFKdZ`b@yxW_8~z^+{^ z+~1?5u;%OIm28CWd>1vbu@m&3KD~+P^qlz@srNm;Ju>8O*(zeqpAW|3nh9`^SdeyL zwBg|a;RbG+3r*(!xGSFp*9(5Rea|r6j^Olj?KQ-Ee;>5HKPnjiNcVn3lovX!1NfVo zfk8AnTtg;ct9(@S6v7rvJLKx)%{nSak3&)(5Fk2Z;>O-LA&z?SRL!)#AXZaF><+K5 zC@Qr&qs~bcP!=ark4z6G%dg&Rw&V}a%E0lgvT#WX-DZ|otB-|Ox>tpZb(4~TGZ+a| z8N@|oHiTmhq622JUe}f(I8Mn-85XMC$|qI<$`(k+#WCwGv+ES~B!UN?>R{bQ+F=qz zQ<`myw{|QRUAGL!qs(gG)_K8F_M5A^W-<}qh_7hcvjuC~woaEUO=Fb*60uF!MBE&0 zu<*o$u{DKRsL~`|U>XA9>d4(DTD-sy;(PVU5}sqA+?1EBdEZE9tZXnNO`(10h-3M% z^c2B)qIprMO~KxD>q9nc8O}yxiVO4+@43Ixn1oo>K(sxeeol1zfj;#at z5$~dQ3pk4$Qvj!8m8~Wx6So_i1mAFl{lD6>`f zlrj}QWSY!3*5{_m#25+1~QNcKqMi#mv$35^E}c zI*^)t%8&tz{CVX@52nS9lVt{Fp{x86uXspx5s2dX%@4$PJ!8SsTmr35iXx~{0E&`t z*ig>y!{>M(U`ul@jB=#|%iXKVPB}G zSPog~|D^)N`X;nYdO1w+lb+v?*RD=GHsC`q4~4B@1VY~Spi2TO#t@Hu0vlx@Lg#Hm zc)Qusnd3#8emi@&X-f&bf|WwP&m8i(G$x=*5%h6@8YX_+z*h&-10F&QY09VKF5!k) ztnN`uLw-`A!}F-}3%a~uo_l#=EPDagjMN_Y1hv-T@k;Qq(}Tiemzc%yw&h*F3x~x% z>Ji$#PznUC8J+k>a{bI{u44qN9-DC_4dA2LIw~b%&jB&nR$eOy+jylsQ<7$1yU9M# ztNGYK*iHyMx)>om2!$8CrNP>JH$l8>R)Nwy@0bV@U zL+M)+Wx3sVaWLH4SF)lg{8Lnt zsCu-;U5eB8`!F&{M{u^Jw;AhWAOABoq=t?Eo=@vc&N?j}M4)x<2Rwji(fr8b=Gt?% zB@SYG0`187Qx`b^c*IPh;ssnuS)^}Q+RgdTB)iN5#f;@5CGP*BbrC%cx!vT#CXdOt;H+PGfaBXxhQE>9duzf{kV4ws5K;lGiu6#3$ z@lH=aqog%cfx!*nim>~qD5&}{A2kcRVth?R^8;Husj{=h>3BLpilP-R#Rg3LmnOh9 zcxlGAemf$O{np~~M`sUMr;?kWH;4r41T0VwQ2j+zGaIIMspe^ z*M%7PYO{7xkNIa(!e56-n(GrQKI}U(pb%#-PR&Z`s~H1Bf>arig6p_%B1q0a=T07{ zDC&xQi67_R$1soKRW^Q)1qAmyE~;4tSOFOYq!YF0k#tfc-fszl$C<3!>UOvZq_jZF z9Qo746*My=D}qhk^`EH>lG8{ZcPlK>b~1xr%(2yWSWlaZP7UIuWE1|qn;$B7xR0X@ zM#391C)rxw9eo<7Z_M7%p(~yfHSJ_I9w%>ZQ1NI82n!oV!nm-a7cFLqW;>ga1O?y# zeL*b5Dzdl`V>4L&E(=pvqdI8AcH9e5iCv}ZD4^}(7(g&#fmYCt2ef7mAwV%CFdBa) zk}*51NU^4M!Qkdy_9JZ35ZhmnZ2N+#$=>9Qgv(c&j|pvlnTkeozw7TXbJJb}ZgL^4v*>^zW9>{T! zWNYyTa}b;lL&0nDEWgE2mmjO`}=*KejE?p*>M23sh}WIBw0hn zBxNIYqj%b&t)G>Xgb)~#$5gh9JUa)iuthK5BZ;1pcj#+&0*Dz>L#_8*6;sk!KHy1f zo#az=@>QYD8p=GjK6CRbH~!}SiK#h(QoaOwBmDkR_xXS>(zX+a^U_`XLM%4YpkZ~D zfVE&j7ka%8Tf@59`DJji>l%{6pat833kU7PFG-Meql`W-!||z5!I-$Zp0+T#uH`E- z1Nm> z@(M)td03_!e!!Yu5!aTL?z<}DNT}{nzP(ALAgNWMQmdy100T;jQet>Es%$j^r_~Te zu#J1UiUu!Cck@gFg-RmdJU`DN~ab#>M&EJ zf?GF8Klq(I@o3k0TbyUX6M{i}R>i1!Nhg(kWSRdfhMT>A@i6fK%_IV(ZTgY_=0kW9 zZ!n!ik#`B)_weYE${Qhojo>M0>n)ZTszg0T z%KFz5lerakvqPAxhMc2J{V0N=$E-!6(NHT?!fA_Q#b3S5s*`D;*6+1<*e)!X4Sm9p zU!H~?x*;7j91}NU6~Yj6rUifD79~TMLKXoP1p?P9<$d$>Jf!nl{07#tM&lb@pNsKD zLN#z=5o3RT+W9WNXe=($K9c7Wb>9hR5s-TWQ!mOP({JHP9q4Bt$@x^auFW$p;_`be z*UDCz-fJ@BK2X8#AWMcZUz)$fFQ>Ek_EAv!;S^oWN zc}&s<7UOiBViaoD@ejF^RI3(~T34~Tg1xJnqhHBC0P*bly#f*hg@icozND$Sdoz*Qq-guj1 z4(+W2;zI5|?v-8#lwM#RNJ3jKsUnYcM4&qt>R{V8V|Bhgm$Ra3%@rygZTnxhEi(^# zZ`c1fJ%+Y3SAj_pcF0BnEkg|3q-9xmSTN3Sn)5YpUg6YMMD%a!Q;p%||g zEp%?Y$gqs>c8G`IVzxdveH!A{|^|&fva}Zud6)X*Bfl0iF9RmlT%hF;UGHpIl)hj|Fi3q z2X5MzDzhqLm68rO;caHZqjI6d!9M+)G}8CTDb?8gfA zqs>sdBgyhqH9xpCfVRqc$(Gkj4dZiVr2N(I)0z_Mw2fib$K&-&?#WMUpi@BhHN50Z znNsIUGY?z;D}5(_Y{bD+T%*6q^I3J3nyDNJDmau{xMp#Bj@71nxVw6|MRj0k_Q0jg zTybhN0H<)D>Ru`gW=L3p_lYe9761+-V;))JAB=0CvEv638G94rYAA3zwvR#@RQqCf zNzgalz|~Bfb{Pi8!=P$}RdfSafaEBc%-AK@DxWy`&?FkoIoBv3qlUaB8U$rZR5JHr zW2?fdjhQ9Y*Usuooo3(;z#GHSc6Zs@MJbU}8bY6qIfa~|)#N~s;c_xbjf7%fDw@?g zlDDj+y&*@2lEFS^-8k@BS_5~1%L%v3`^Lt2(jR&{$+B>1#YU-1G%Rn_V=1Dp{$*0{ zz7y#Toxfk~d~b*(QCkFa?gC8OTZx-K+>J&5H6QTnE4plB+xbIP*N{v^pHC1F*mP;N zyW#{621qne$=ApGADq_{7_qw1SwX+iNKTjQUB??WGp?w477X9hCOCD#1J*Nz(%VaiTKabDXgix5-h`+jE;(6|)y4PC@{>;1&&s}6{0}-- zR>r6q9RbQY-8a|qa_e5>=q3R)6-a7oQ&~SWy=*PU#$F?y$iehIMGj(`sofl9%~*}( z?t`U~C~f^y{HU5OZOGar4ohh9FVN3A`Qh5U-O+z_m%1A&Hy+a6TTB8RHJt(L!@@}d ztr}ZTLwH+Aj3VOzftX>cD8@(Ddu!Jf&+b#J{GS^|ZG9?RUJq3C`iD$2{e0 zwrIgvNQq8M)w)#p5>x+?Yj`xZ?o2v}>Bd~?sWFU%OoVY1D4i%b@WQ{3_Fs_rOa$%v zff->=b9IXpZc9m~*Mu_hw(XZM@bCN*nvG>+7PQh=qXVj&)($uL-+lP(SWU4pKQBkH zO(!HU;5CoP4Mje)+c;NI<$b6o0iOdSo}cRR_LQ+dkkyWGgZlVFLx1EyG%LKIjd9UNfT@Qs8DT zKUz?=GZ2+zK+nxZg*t*ezz*$j!kGPeL2F`H{DyTpMDi>Hi*TmMzCZg}$6x{oY}i3) z_*m>;w6Y>(cA9stB&f+7Rqats16X{eL6ecBTP3GXcw8*1&SI)x{B3msx$kPew#!Bs z>fcgIs6q9bvWkJbw;&I@Kf{3HTBkFJx%19N)PlJ>*onOdP41ij&=12VkZt7o*$g;- z?ylefCB^B=6}Jo=>793a15#EaX`nh?>JMM?9MP;K=#Y#VeaC~)-b@EzyyTd6CoSqs z^`I`qeb2YTV`b08JJgF#N4=xURdpOG&Fn!vFUi)0a8pT;thq~tBzmDGGDXK*38mc4 z8RrG6oaa(>^FRzx{RgFpw|s;qWuPU-FLV&$p3Ciws_!1yDhfKux!)-~F)LuwLZ&ZO zHC8P)9m9;3)e6M&M&0e@gZibGtgWOqig#@2yDSaXns`H0n1zmNNZ#>u)hQ1p`V+=9 z19J90i7uVAaBKeE!-{w0Q24T}xrA{Kv#^rXYMY`|BTr@~He$F^1Y+in z&Ur52!W0tMri~SM(>#_{LEo3d6TWG$v%R!ok*LE*frbv%b0b#)?x^9Vi;r z3WutFEmg)&vY&JTi`xArn=hO9dI)7*(^9sscb!zw=UjRcmz)vj7C;&FN6=Yp$`SaN&u_V#m|L zgm~*p4jYNWz^FLo^7it2aVm|tT2W`UJ#^4`AlOhCM~B$Ng_@M17zC-f#3~F+U2m`* zhrZW&b@?SYKKgjkMSvdmH+jGh@e_TBH}tt5Dz1%nid@Vgu;EJntGk&*IS_pKTM7Ru z$Ho=d`G8!)g3-o%swRp0M7zDXr4t^AhmezY?V95~9hIalM2$S5Yhqx6&Q?vxq`-KS zx^#9Xx+2f7e{7qXWC)xbKZ$3Dxti*y{7%&3OdzF$gKOz1a3c^*T%r{x!cSJAKHpl9 zz=JmRXKwykwD|TdPGyb-OOzzu$1Cb6u5`L%h)-+W3iIoh18*?raj}EJZ_feUJ^ock z{sD2ETRA`YxQ|?yGT=L>I^Y9c0{YthM>gbyYgm7~&_~=n5j7A1XM6)ZXH3v-*JHfW z3Kj`q{)EG!l68j`XXeJ){(}B9jlB-LuNp_JaV^uCkBI|VwNciiGAoQuTebD^-4IAv z0;*{ByosJch(~da!hAycinEx?`VA|D@%#Y9ANvUP3=zqcmv4l+)ZxrcCbpi}q&ko7 zzwFp2S37|)WNKUfeijN>AWsyM+n@!9N~8d?0d!4Ne^79TQ|VBofaHo8oCXc%fW8^mGbApl!F+zaGx*A5 z4;e0ohy&VaE=i6ZQw;I0ED5D_k`Pvi(@AOpQ~@dcDYF~7aC;fw4%42HUZ0E$R!M*O_E5sZ1f_jP5bI@V0}5uN@VqyO*{I+lc)L1Nb0=6xC`57?#OYfd10`7Fw8zYRY*R zvKhQn@3X>4Q7N0P^5}POR?TA3Iz(o=h}YPqeRmlaZl-Mtl=_rXo2pFG-MFTx6=aTk z4ZcgC&(-0?cFW80fs`itrqRJ;tlH7HSq4^?vKa8II$8-d}jXel94aMy4Z!LpE* zt=OZFc{&byVETQ~cM~}1l9go$G7SPwWt#U{2svfibZJ0r$UvVz(zE)2ly9IZ)YnPf zva&W|{(yWcF>S4=1{kQ}Q9?>_;L!GPKrxIZR=+k5lL!Kj#Q-YftskGH64OCIbRGW# zEyNXK?QO+osc@qE#=(3}Nr~Y4&-plWnMTz&ued)BUqpYv3krHH-pDhL>=wjhdd+nB zk~kQ(zc`G=RlZ@e<_7cBP9GVo4I^6~W!cZ{^vv8N{g_LOgj$2YE)j(itJCH#qOYM} z>tL)=@vx?}_&G2mcaC5F%MH>if^3-@==pgIlVBV@eOAiFRnOSx-4we=xfljVWodgV z@7@G>4xXc;k2bc9r>Z<-9<4*#L{BK)P<%()ONeE7W_tnCvK}U6h7D&)HxHz6!^kMOGvS@ob z>81>*vJaN}u*Z)$Q$(%i2~jITxFiaLsc(M(8EO`Wfi6nHy&dmlOFPKH(aG1!XQSsy z-B40tJ4u+bmgJg$k|9Mmc6X7I4nU1|Oy5VO-!22#txS2B8t=9yezJ3G1twV8T{~wmUJpL3%c|m04~lHe=V8ZujafyDTQxoN`pNb2M7k zH(+=~6RaMkvx~QxI!dl`ci6BCz?wfqqR9jZ_MIkN~yD$YlvqM!Y=ZnH@a9wGqXbdkd;_#4VoGLc6w@WZE_rFTOBJD z5P%hqqgd~|tH=m3{=d9?!A7uc!HdcxlXEw8g3${Z4~%zU&20s1F_AT>r-GP17fwyf zv3{h(s*tMB5hGs>OnhQKBS=#(t!rQt5il*Y75qyRi z0qE`x1Sx^JuleBem`Bwxg>3ASKACsdPKQ3`^|v);+5vG`6^?0Gk)CjOBLwf*0qk}& zD-hm~U{DdiAsE*srsMy@yJ#@zbxxB8%uWq|J6iuctQU)NKduYJbk|Gcr3y+5i1ZQTO|gf78SeHF(ERQnZ){aIyj7&dmQ$M=G^75QWS0Eb0!Sv0STN z@yp9@@P9hZEulRq|3iM>q;i9ZvX>@#3bC@*bXn*s^wuw{R+Bu$f{< z40TW%`-;w=yeX`2 z6mD#+9Jh$?gl~a73(@b>x|S49m!2Yh3LkKo%jab7K4Q&U?44{+-Wg4u_=F0ly1ueh z6r4?-B_HAF9Rfs54Vz$$?G)z%4#YC_J)m@;HR33Pm_jXZ9bj1TmUDxh)-;4G4iF9} z!xww^{?8d?9*QSDPY3M3n$Ga~X_0)bZOb~AJt-yQJ-^k@6fZ)Y zBhzxKw84UMN<7za&c%#tSN|MDyZxh9=W&hNBBOZh3ejqO{zV-n5?^a#%f)Y;zW7Vn zgSP`bbZOM*DCA4Xfr+Cbl(>h>g+E{WiU7Mq0(Z^F>b5#usYG(6l)cec`9N#784|2X zL;g}F;FN|ed9}}035K37M6QMoE66`qaZe(&^?cW@pz_eJqpe$U@-^hD5vRa2tya}7 z+A3yA7@;l$m%Z&c25Zi0CCXs6vTMuyVt(RP0a`1`S!w&QP%dxrI_CqZ0{Bw0py{#-jJ5!{ zFL&iYnSq^OGf94)kwROOfRNDMt0!`picT+QBc~eMez}($pf|#f}aQQjjVQ*|PQo50)Br_+yR~a@_KjJOCMEkEcEQX&!sY zVpiX*2dTMI_^~%UR%vu~g#wYYMQes13#n5dysa=0L`xTxxGA6TckP#xZ?usF#FzCL z-0kQ+DURD=z|I97IIUpnhswLoi}wf`f=A)>IgeM3lf^H+2!kSe8P#p>xOd7!GxO%E(l1eNUq^dcX|Y zm00HBI^O4){hDz9v{mLM@%JLz`@i)j@7~)LCmZ zkpJaXY$;|2JJMGH;-S3e^4p2II&8kq+fw7xqPZRye$K9Qo&A7TA*F#wGPZ9$e2Ide zPKI@JIqb}X=_Q4#Ylk#RaIs7SJ2clA71w1HgOcDeGvM|L8t1-FLR&Q-FRUZGR*)EA*gX9 zg!XB=NnMg)Ik33;965xME6~gvIsx|yMUV1g+`cv)TPxgUPk-TRq?*H)+Gb4dj9u7` zkA1?-+CS(M5kAg^mcoj(`So8>FXTS<#hngUs}f7)+o~$2=xsoxq?+V&UFT|fSu213 ziVE)=+hogfwl9#jIO}wdp`g130r6id=cXTL1RI>l(47ZI|4twVky>(>9Y!k&qq*D& z%s!=l1a0g_^}MbXOl-|qXziQavvEMfr{Q9+Kh&v#1Q(>%ji9K}mv1rE$zGUNkI_1)mhZ*Wi37l{0T5bw5OA@`NRA&A^ z*WHe!#9r8~j1jE#l`+(V)q2AC(76vdXBT?B{~EZdj1N?2Rc%p=MtivxupvrjdX)!W za>To>-t-N4i12hF)+R;iRPBIUnY;^xM#*09ilXJB1qVsMtw51HF~bFPUtb~ejDe7) zfQXw?psp4L9sLiz;s?y+Y{6yrTF4JnGWp0 zfYFj4Qhgzgau@_>m%`8=6vI<|{dK|Gv#;B&plrZw7Mh=lHcl+WUDl3Q;^o!XoXmMS zzN^2c$-8Vz`%_okGC%_RQ;h5<$p1i8E1Rm&J-z{O7igX(Mwu_d`G15mYS zjz)uW9#-0*tk|`@45KVqpx-^XfntsI;qi`IbE%20_&dam@KS}k^sAEYDt`@k^AOHx zjkk>91rHHIJ@)PhHF5f7wy*SnA4%ammknQ+9(*TE_j5*QP{$igDpaU36srjPYElHgecUbdQpv zez6cB)LV7h5CH3ofP}40YPkgBr8mxu8$8VZqG5wW5=1VNpLS=x+MSRWv|E;RF_=E} zaG;d{v@fegw-wRpax3{XDW%gAhCmPiLM|Yy&oq)d!(Zar_E3& z)?yYDLl0K8RI1#~vT!Gsgv9us9A@`f2Rf$r7$1u6V5F}j=z;SjqV6bg2J_eDc~gBBG?|SB^Aw4MC!Dp z#N$Eb%dz$^5bsd%K!`Iza8w2kmRjc_{K=S!2g?$Fe2vY>K&1iS$r(XA!6b8G7@fCloKZhdGnYj9GlN|G!iE(Pd@p$`M zzGjpwI5Yv79ESmwe_x*M`uO=10!p3`99>DLv2BNHdxp{bVj-o2yZFL(CTn4v&lQ~! zje;@lrM;QLv59E$xCA3w-0;NV@+Na)5qN83i3XfE)Gf}bVUW;Y^>WjB)o!+U#^qbu zB}KqZj2hbIiTVuW3O^(%p9%Gkl4MK*#AtT~Sxla3W1uBEhMb@Zu(y^c64C7RfSZ?} zf4ygW9cYVB5VP($J1p%Bu@9sh! zUjze-N*9%NqT!u-@cLAEObZQsls5=iaOWb&%p7cs(n+Ifm@&QiG*jV))mCzk=U8#9 zz3>ep=B4Qe?jYPOVPi-N^n%3aYWxzRM(H%&7+3v>lE@NjXY)kfjs;zK>e2~%w|3Ky zqqA_fn&^IrTFKl^HdY9@?8(D8(gZY(c256daC4J4U!nTp6lJ?tO-{^U&E&b|OPdM; zfR znj1qqDT|Q}Qqr1b$rtROFT%&xc2|~vvT^2<`KFcUHh@dz zBmzJ(Q1hcF?LNrwa9x~OLg;4t0Bztgih}bJXP^{E+JvZ|v$##Bx1)ow)nsKrlA+zC zl_5YsY#4KxDv1SY(h4S6gxMTB1zH-9(zruDu=EO_j;t7Ez(^JjxR;0vsLx$PCMb{G)YA z;_9M-81Y~NmBM^fX=ArP>Lenb#9Vl$Q}H-=`gz%`_vw8 zLeDAX%X6M-p1%+27kSdA{nbu6 zmb9cyP6YOuOo`!A^$)qr^T`i!!RL!-Z-vPXZksduc^%Ss-IN;k$94 zmLB3n_p~0Towqe=QXm0SZG7AtrA)t)ECBjivhm$0N%B2*9G^a7XOG?}bR_9WehmBp zhn6)J0T-lnt{Rh?2xXoH71XY>&K1^XmO-%&rod_Y41Km`B1IxpeVPlkA z;&oZedPeH;VA_B$OcoRO1hU#BP}F10aKIZUSFg-Je0vWbblUa; z@^X;R9iSuJ3K)WZ zO+F*RYu*K2Z##Y|7(xRiVf)0Qq`)TUr%o*49=%8{uZgvA3G4HJIR-Ou6Zb3!3h=** znDmi-UTI3v;vtKev6<{9V+k^C$$y59Ak2m@xzb8)^7Y&9wifBJ>R>|b)FO1=>GFXo zGhN#ateQ)0nYNP)655Qrw`y(BK9D}*-T6={9KhYj#Gd8?6Z&5cx$@+la0NzYhkOP* zT+=2h`UZB^-iObPI;$fIZWL==Pn$TVZ;&9f$I+NQ*48m5y zR}uCP@im^}&_fiwY!>+Sy1S;Pz$)$fLdjV4Q7&L(xov5LJckyMw<|ZV z2WgKRne!z!+6O;(!ZtbaDj-Ci?vjd1a<`KYrOU>gO*y~1NH5j5*yHE;Gs%K6wh!V_ z(D&!@+^BmLQa-CNvGr7$uf07}sDp`HPY08mx?UWU3ukJ{gf>KTpo{-Ven# zc2Mm?xyO{jO1>5TnuFhwNK(D$?x9ilpnCwo-N);8(m+kpJFd;2x}|Dydj5vkmgan7Q!SaA}9lGDoV*G3-8Z7jE=YfinN(T z?)0`X=$mqh3=y{fbPj(_Q*`~ERY`Qvd+B}=vqs(fhDn($vV5Y~RQuHdaqrfL(g_%z zYT)C3avS4%p8{O}V4tY)P-5Q(bEPRfvAyr)k}zVd{lHP}?f3BGYb2Bfh3+Xhievr7 zv`9&V@`9pRVpToXwx5`A;770paj2HHVzV1SzY*gCJk488HMJ@_h3btlDeaA-L8ddJ z0@lTFn5HSc-Q4=r7sr`tol!@@IKQo~SFsbjP~$|#V6Qe)leMpUdq?@WMVpVhE6)(K ztM>*Vy2ubzW}g@PR<0}W0@Z(mTn&#Ctq`-L5geKsI|#*d@dP&Kw|^bCJCi4S;^Ze2 zhecLq(t064$or|6HzMjL<>$0#Do+lZYMaVdgV6UbYN=lSnbBsj^*^)M80Oe-ax*|U zJtw@7Rct!Y6%Vtk?>4uWJg>+i)w-ywRLQ_h3@#~QOn=xnVthZ7kW#i;FkFd-rjAuV zlxcQ^ihUV@5%q(jE)On-DaO{0$x9X&s^v;Xtl-$@9QRIlKtuV~)eOUbkKX6`=sl&l zgglB3qa~Ssqs)!X_wk2q7+%!uIJrlg=f|u%7f6!*XI`rfZaZ$LtH$R{Z@JH# z@e`=E3QcVc$GVvpk1zPBh28A|MY zdC+$@o*A6|gN8NHGzY0BDF2 z$NRDpY&*6C1Afw5hO)zcL_sp6+BV;_&n7*Wm9v3wyz?`46`*dNd`9HLU`4eL4pAZ3 zMMkPdwSYjyl8DgiR-1ore#$uL>i<{ut^dBjjB?8o{anR*B1Ua!cZfs2&W>67??_(b zTie1bHpgdw#|hU?yt(v4pS*}X9{2*TI3Zan=1(oxZJgrS?oLb%tj`SGa$R9ajpn|V z;S;VldUx;TiQ-=oK>0R6e|xV zCHgXZ2T+I)Fa;?>>)bvt;%M1_JKb(fI>(qg*A<<~J51C@U7xQ)m47!_-cy`Py=a@Z zv(iEP>dH}dL#m}kJB@ zh{%0FMn|4AJ0DZ(!(DU7G+*#^yIj6pZl6sro;LDAppo~LB;ts>5%M>hZpVUF^~3=) zt}*}c;uyUFa@R=rM~NMd-noD6LN0m*mg&^|8zU4aKWK^saeqTjScUIg3nQkO5LPwj z1gaLG_@V$Ptt=qlV*`b8J-)u{lBruXmcxmth`h;nz3Tc)T=e9x`F^B!il@lkCm9$czoq~O;y%fw^04@7DED0H!D*^k8^{ft=@)(F< z>)NLGyEBjAb$=)qK`c66Bx45XGe=}FoSsZDyj7kTkn@g4<)>Sb12Z02V zdzcyuh)Wk=fOBZI&ghpsFvpv*cLA^a)4WjDVphjx+1M|T3O_=A(BuKL8U2LEwCc{-|g%Wp8f4J5b>Sy=~>pjD8` z3o|XCa^Rm)pnZYVwPV?^wlDG{{#XEqH5Xa#m=5rEZi{!enBh6sp9p;< zx^KAtU4dL;Ef^*jZaDc?3985W{JPycN|j0p74b7}avnd#8=EbE|B`&@;$K7xo6T@vD91Oe+bPIXPo|U9dG*aNo?@fEjbpUYu1*Av} z!|~QNy7z|hr`7fa(^|XoCWGPu=-cM1Pv;KzdAePCf}vpJgvEW~xN(Gqb!1hAPO@f} zH50Ou zA6j@cbcEvQ0kW}?dFtVMhGpOxRjYmFR~glCB1EfqRTDDD9zYG1^*<_dfT|Gq5ktkT z)&JmZMNf*`)3r@!dDrM$U56(G_&+06A7h8ja)4I*yE=lVAlUuxw0|l_OWC11m5V<^ z+IS!&JjNFV{8UHo?t>D}bJ~=9N1Q3``282bnUC*F8S?xks%Av~OMhrzW;A4g|9=rF zRUMbx&TN2w=otgs8R~lZ^N^7@!jvWL;^TZX=v#hANIF!J4lw5_%h7;#WE+$|$~%LI z$tHU-rbYk0R>k>Z6Byhd$73vGxJFKQ=%Y#`AXkS7RS+Us)e@8aRvDhK$ehaAIOJNY zfBH%-p55gEUa4H?_Uk(GKGD<+DUq*aL}*_f^R1XVGLr;?Pri4|R-lW9vWd%J&dpg? z5I+k?$0`#yI1)Ym^xlRBMrRHs71TSVP{ed$HVZ#2H{A1Sy`T}yLuto2#6{Kp%Hz(n zY^T7I=c68i!&?JHcHgobQUFlw4VG)s+Bfs|%{y$px1r{v zn_-WAA@M00xZSsv&A!APqW7l(C@*6qsvYUsYsQRs-0egsrc#`+L{#z6HWMDO6oLBM ztPhtGnQm)c*J~hfCi1KXNR;_QP!-ifQaKQ~=1a^DZ($IRfUQ2mDdRp#DRb&dnT^KV zt@BCWiZ|(yo;oF-7KT?dk3zl?_<+@kO7ARpkMIEbOF=Q7xh9P4Ea57_vc9E=novTX z;qXh8lDCSfz1!LM=oGBOsj2{tRhTY^Dlk~`dw<{Uje#IM`ou=sZvMU^2KXE&1&bqe zSB+^|pNT)?$dktY%ti ze3mt}MoU?BnL8L>p$5uSk14AAeKgdBl;*=v9&yD0Ox*+gIn$pjQH@=1P06U)TdVeQ z&1AqB)pX3KW4)7)St5V{-E{yK-EF6q0%7Hi$D??=-I9oUFij8l?*WB zM38QPh4}IMusYJH`E8|oEOjfKn{EsSZO>59wd!)U%{dAvD=1lw46vV_HsgKq~wS0RIu zZO}3n?o5b$8xVYhduwDnUfa8jO@!!at;@w^_*BL*B69135jxh_YYp(g^H0Spzz>Ru zU06qosgwaJ1(`3jIEwU{&QHEkoY#Tu+l30I1wNyGbtdfYc_}z3r|vd8?TVliucM5N zK|bC6X#&|fY(ydG^dc2_@b!3IWu5 zan>xf%Mf&`3sJ?JbY3V|54{v4+kDHZcWW_k_HR@w&D?KK73Yad@e`jeJdZSe-KsM8 zc0J5-PW@{VJbS;xfBR)-WL)65R; zvlX!ADdW+Fq6a&w*&LrR@M$);gL_4{8RLxoSf~mGz!#aj&=%F56Vu_S%#Ws#wK%#Vtq9c0TgL!J$0>%`K;a3A<+*zi?Tz7JOYF_!7@R(g zqo*&3)c+{;0OqNB4wVQ5L^3ON(ua}(Y^iI8$N4ewJeD=V>913i1L%ZRCj}P1Ty9vu z_0@B0p+1e{CN=W@+UhxrtaOxB$fA$47(-yyk8ZigZd!;`12e-%B%k0DTiJWSD-Ug# zds{0Tx^SwCl@#u4U&S7U5*^QM0<)%7KC`OW27Z`3%r?u;*3!j|9T_QWu}{4pX!_|Q zk&jE-7Wc*eGHp_1PoWJMuW=wol86E-eBwACA{j|~q?`@N*K#hLh4I=cu;v+Nv zwaDfg9ioENMhm|yr88xS$6UqIp6%5o_*vzqcjb$RC04})Bgkg@)v3R=MH$hgAk|u? zshlpWxUNRg(@z{%1~aa}K9;Z> zGRcxh3c8>9V+dMcE8juI0@oncF>^&2{Puupsb*uK7yP?$69uA{n5R0E!eJ5-&siU@Z8IuR00Ii2}PQRA_t6!(BjKi z4BjC<928qiu{@dNjvLRUT6amwe_kRYAErbHr7DA%c?inPcfgS5mEDwHQa#4g1q!m| z;iKe@b=Ep2MsAK5EjDA{r-f73TGPHaB>PK6hc-l&=#HWF-F07u|vZ) zY;kGsUqtaus-|KjAw(~qR{g2ggrauyCh;K(bBcBvSTj`sJwnMZ5jx4hF@A2qAq%7m3d6*gHs8YLSs=7U=pgY<{H5+%?s$5YCJpZ~pQW2&`IN53nRD`2^O3gPwY;8~ zJ}P1a3vIFn2&-@eTFZ_K9ak(dV8l3*bN}>)!M;~`1t*i=WqWGtyARGrt3muvU($bW zzj{82HSI&FRNKw9Bq_jr1k`p&ta6nf$#}_)+tJdd$Pxs;hbjV=44*Fpf-e7y*m=$t z7U%9NW;gUm`Aws5mF_;t3#*|s;))2dbUgZ1Ic(f;FfwiSZ`W2n6 zH(IzY5<4^xfpwZKm;@^h#kvl+C5;q2Q3Zq$^APAWIv60$_f~yGRP(#H^{@hm;--hs zY8L-7V;DUY2mpLtK2=wi^?J(OKjPQ#?;^E%ML!U)YNcBd1gkN?KPN@?3`91RT*W`QNf&x z7!c56Q~u`6gR5@hz+$X@CMWOj{TZZ(112v3C*EeA(}4(ugBK2a3G@U50$CArb3Kfw zv)(i`m}eSBckqp!4m`ky6UW^fLjLZ7T>@VI@U;bL!WON>L{Xh=bR4(av&8h1d7Ljc z&=acTunI>*w_W&*lnQ@aAvTzb8B`-ZXo=rRb`J+t7mHr@c|wxsLTFb7{$~Tj0MeC-+)2>U`w(=z9%xW^0z|t!*51?ocrjlv4W+?=EFkq_h;_W-}pfG z5KMODxP?U#d&4;fyf?VU{j*X_kjyvd5(()T9X<84>Bsp2|G!w{s(Xh+?>(Mkm@W*l zGQl8OawH}F!r%BB3MH94qtmCjiLdwLqvhlAi1Pk8GH;J!u@4j3;`${#G5Q8I2oPw9qT zP1{w8?vsEdCF>PoP;0PJpAZaH}q6C+WL4dY;0iDiMwD(dvnl`o1`+8K>@rL*`RUIG$ z%hUXMBzgSMV;*j?3hk}PTTB;OsV`{3U)?&}sUViu;Xmk|7`4!=>-b)x!K_DhBYV@G z-b_}b@GNJ?n+e=IexC{8&H(Ci6>TjaD|*EFOrd#N79uffnx0KSfDLqBPH@!o3vBYK zOi53ofJLPYVi^hoPVjBH&5vfMn+)Briub_$aDSTNB9M2kjHaZowN>t(0pk7)&#=e! zn7H?Hh+lJ5YDydevAaE(plfLJcwGAjCfiC#r~l758{lgB5Zhv}ls@ROyzmtMFv%*~ zUoBJRLU)ZdDMO7%OXdM=Cp4^aq;`Nd!d)&m&mEMxJ%Hfj;a0ZW1H9$BubOrPsP-7^ zl+l+1={$&DyYdOfGfAu_s(#0Ha>7gd4|66Cx2?^9U4+i>7#{&T3b9TG^cu;(s?uvw!ZNJ6NTu2yOW>3f~dtjb#yV8H#5J)=qeOCfP+E}Fn z>Yv;6q{+-wer=4r2pEDZ$Q=HK-@(6E#Ls94gzrY5Yp@I>TXcYAtw3fxC$3awIKTDt zd<`t6-sj2rl4GbRllWKB{J^l3FSi) zIZKBs(RX=qAB$-oncOjJgq1ikXisU%Wgf_nE8_sGPJR==mWSnvh67hKJ7=8*vMJ|9 z{5t4!sl2yH-*w7n(!pYJ(mV0ZsAJS-GE_8x=(bnM6#=g-JSrEnmiJYeIfEl1T!XVq zGf7xpvI#b~MR5a(f%9#Cb-fd7w-4#SG0!d+x>=Kaqiw(@igVGCpsDJ?##7G)g2BarAd?wt-A!K(hDGg0G&@h^(dWAfDe29y~#=3)D?=9)t2 z-`t(2_k85aWjzE{53#Uv!EIZ8kcjjpkr-0t!5AIxxf5rFf<#+p&9t#olT~b{2Q(E2 z6x6YefpwqaHv-T0{=rYs7KmXW3V;|B#p=+5wK%5S)Vpu7aAF+`U-Y*jZuh8dfVpg# z97VwN&`hvJ17Fz^yj_q)D?Jjn!=%%GppacM1yy#N3_wnNXqfcsa~qZ54->Q(7)Y88 z))JD$Nq#Giy~WdyeCU|mGYQ;6^)7Bs*LNt3xSp_;w9N+iU*e4@=R4b!&pG2sJK{Pn zy}6c$I@t{aXkV<75Yc3;)TATIv3v^iS3KN(mD=<49CXevP7kYd{ED6o6v{$E8viWq+oCyy*$PN?oFZfPKeqeG=y zdXFmy`{D=26jPLIC>lFjhrRcZnz9dWRqgF~Db607kH%I2DSD0n$9^j^xj_QNEgQkx zX!hn?WGxRPY~4HXTK01;|L0Tx1YOJniZG?+uOR*cq zAC~S_rVncYmsuuAcoN0Uw@zK4gr|YS2|4CG6nMX8j!?Y+QCUaa>qA zXO|Ue^O47po=w%Ca4+p)0P(&faSi6hns$^2*s9U6`3donv_aBZ0*`F!2|lX6b)=rT zf@x%go`PqVaN8)H}6A<6w;y@2AQW>|ty})Z27$R~3Fw5{w@dI+I+JX09LELYL zmMa>VRB-9#K?BcU_9uetX*cH$HA_2lmv#(0)dAfN2eUkZ;u$&-6AhVwoUTkL3u|=m4AaO?@1YYgDDAGAX8tkrULqDfRhg-# z9bYJ1^A?$N5jn3Ao|aCM2>lP>lOahAv|2?6q7=L8p{SA1P&XaQe` zH6_pC&TIw|Z*lgxO>dByy3H&bsWPzPz%#<*O623C@7n`vOQ_-OvM8_6=v$}c5Z`3E zFeMY}A*_@2BQ8G~-}CGL|K`2_|22XC|IIq{R63iNG82WM000deyyIhK9J5Y=M#vRT zx{oce1DauuD%DiI(0V(=FY|Ok5lSHBO};E2VHd{nHv-JS5!;2XIjzkFv4O#E{5UnR zDG8Zf!$VIFyK7q#7~O5irZSKN!74M&{p93iAaopn`@E3~`=G_I{ZR6?Zj}hlC?3%n zY)^6(3~H{7xap zWkNcU7ynzgM?44MURYbC)u?9+9qF;zicu$SkC@oXp^MiUS)SD)QiIi~AeZca#u|Wv z5zA2tFYAF-$$wOMXPN8zE-e<-{(X&+D;EXY9vgV3+W(B+Tt&K7rJ3i9K#PtrW{QhR zv~F-I;Vg?n<>!;EK@sXT#uhUo0vDfJzJd$c`Yta=+`RiKJeBifw1B8cE~Iqw>1#O& z>kvRJ`v4Q_PqXVTp#-3VYi+ai8T_?mSTD9F(y};b4jO+<^B#4T>497Mb6!fDB*KRJ z;^FgnD2MFm><3OECd6+n+VFYrdt1DUG~&>VDVHw51GDS0DsVe?2yYU?RitQi8dihk zhFe8%|BXq9jLw}o&~J%NLyAFTJgW3%Wog*t&u<=M9vu*1e>WUFg8DCtZqe<`*WaL! z7ce#deMk(%!<$)#11M|tYva?m4!)qE0Yr{mJ?G(*z!>1dyn&@(F?~$D^1)eoun5w2 z=V{y|FNRaxsW=M-iYIDN1^=K)oUFQjQVb@`8PFy?{M*Rv6Z$?tX{jnIw1b%k+!A_B zZJ)ZjmFO|G`iX%}e@8Rr0%{I%aH;0umj#S%+mQ|RUqCy}&_5i^z86mC1QHI!->dvR zJIB9Mw*Ic#{1%cOBe`Q)zkSynVYk`})5;f^qWXckyO?*RQp3wY5V1P|{ao`&N_K>8 zvii|QF8F)?XDD*N;O4GoD3s8SWXTs4HWuS&58EKrW3kio$1-&`i@54>+oI#~uXBW) zeOaxjJ5=RI_sva=6VAMKg`Rl%!56cCe92p0%!O__fy6(eN1^e;uxaPvDGxPi6b0$NOo`o#|=+-eRtWFH5FN8Fw(HW3BdDo`Xm&SNF zpy`$?D0MG<#=lmzB@bCE#xYY%TM@=MAo#LCuO! z{=bpTI!4fWu4=|CUgY`;Z)We~k$OC*u3WUCe|`Y{H|akLx{^r8PAHP)_K> z5vJb?=*!FTPp90@!k!VUw_V^`Fc{<+9FD?d8SCNZs$i~iCEGb}qcNL800000000JY z+{`7S*$%M-tU5?$iKFV}gL8z#q&J>ysUdTP&cR;%=t~qs!dQVmBxZV%DpaZL#C+bv zeb+DlGI6E8@yU7Kf8R1GO5vIx{I9ylluA_So<{n%P#jZ@33y{W6Ujq_k>sRT8IS#{ z2|SzDMje+opk(%$Ao z2XeO62!d+R%MUIIgXCp4>PKOgCYwSI4M^(2$`~FvZjKvxVQAet=ajZqnpMg#^mmvJQ>hh+Q>@QBv!(wpyPcp zlaoX#w=lnS~e~5Z~6rmw^FEu0Wdt zF8U$6v+G*fkh7DZ`*Xxz>;6}cdAU!(>W*xGk>mKfGUV8y2cBErvov18mkcG;y1#S2 z^dJ(s9WxbPsGXCJk<(#|0*F^10qS*qyPNJd+k%h!7 zz8DLrNrYY0Rs!wZOnPNLzlw=q-e5)BlO>&pF86nhp(dDzRT2-yUsmc tak9x0Cb>&8O>1+ZwZ-Av*@Hyn6&a{o@N^W{@;Mf-e7uq?xuQOEdtm{PHGgG$c!s2rRBT{e@PN3Fl8PD z(5_jpbVW%3BwGSqGixo|e)QG{0S=oMEVQ1sH+dwf0Ge<*VFREo@K}#Z8axx_S`sLN z>srf{il6z}v}t>LYT07*K$_|mKbnU)0h40V5S+kT)GFiAfg1nA|Q+qS*dTIeEY(!BwAJb&1>J(>c8 zrX>Loy5$|lz?`Pu`;1^)IyETRC^nc4a_g@y*Xdm3v+HyN$#`^`{W+VwsiFC zYe>KW(ll*`GqS1s#kMG6kOWCPGv3tiA776|0ZGypTejv;PgUSa$xVQkzW?wEC`3sv znyr^FfbVwz)GCtsPXEUMCeLOv?LXag%J-;rJhi9T20RBI_9cpHOrh+XK2~B zt=eij@C-fY`MW-z;O-9f|B1UN1@IK0{|wx=ZA7)bJ>G$x%$c(_4$C*(ZpT07-O;>z zl2uJl>+yL#-b(w&)%fC_ziwf#{k?wLYv*Ux-0ne#(+13lk%w`LH(an|Eb_9RdJe@d~6=J)9rZiIWz{XExqfOG8;9&G?%+JJAh5<= z?h>i~b>&9CDWz<|%BnfP)*gTAmipy?Bct+0fO870ae>?5RH-Cu0CZC+3fqZ|jg$H! zebF5Mv9Q0%i zrBcr?xdf=NWedO=tSMHkm@_A(%nLkxWBT|uMJ~C7$9j3MfQ`+%*~5x!tccG~m@5?z z3*3L}?CxEP06e|!>2;1^V`H;y9N5`Ruwbs3F$195-RybG+YeqSeSQ0G=??JljiNsR zmzJGnQ((#o^CcD>bI1V)q*R!u|2%o301x2ygVgOi#gDsWM)k01yPMvA^hoJDAMp|V@KFle+ydK7 zIp6?AjEZfx7b-dW;iE@NKP*(%4*$3ez$TZt#APlQ7#LT{4TMT;g64w_n>B^qav{Ga0zUwU3h2mMr< zb+eX5Tq)&p+{lg(w=<_Lr$r$b9z$ z;3EK_+Q~1?FHIa689+yO1f|@LZU^l2@{{Q&&ySQ+5q!i);3n5OlF7_0FC74sQq6g3 z7}>*KSvL=dP6tZiqhBm;f)kuz7%8RFT(=C}JR~FbV|Cc}zx+O>l!C%)+M9)Srg>~LrVE%dl1k7a50EmApm^*rANdWpo0%B&SyW8uz2kBFQ z(9Cqt%wVwAl7v1qz;yTY0F1d;Dq;Tuc0ORHyS>c4GGT*l3&iBiK;QQAGQe63HgBDo z?qT}vbsM|{g1rTjW`^mvy_S~^kZUdRp6Q1Ey>8oA3PFQnW}v&;?j-@=m^)!qpF1i?9npT)Ck7vc-LPQ9L0dv6~7 z2DD+HeGaCes%EpdU_Jt3X7629wTpctU_Jw=*` zw`rhZW;VslB*_*topY|YEjwPDcK;r6z_xAu+&0?zyuUvUvluLM>^Nz#4PygkW@hfO zX}@ij8Oys{X8y|HrlGn{8b-%pI5#erTt{~f~nyWS;AO=JT zNFVmo;{N}OlvdLa>26rqCAMbg zdDz*V-|s*8EtT80mTk*i*Ym!(yUS-0w@CNq|AFW1{$rSA1$g1e-tQ=-$rhl`|a?TRW+|10(P>>uNOENJ_#x&=cgQ54SSVcyb=YumPM+qP}nIOg@S?tIc*9jvj&xcW!gwr$he)8{_t;CV6$@>10S=DP>SI4$(+qP}{oV&d|wr$(C zZQJJzx-y=L_(kMA+UsA^ktAES?c_T5J`yvttS^@t2cZGTM2mS8@??IRgP55aJZ6UX z&e^NwY}#ipH5LssGqXLjbOU6sKh~Ob3*#=D zWHB={7ISt_R#q|uNv9(e1xEV{YuL6Ok0f1RKE*8dbfGJ#6vwu08^5r&ZQH+W8-v24 zRY=NJVKH`62)>XU+qP;eW1aWi1y6tw2$=vV!l0#HcXxPlmP6TA;^t++AR%rwfNej( z_x}Hf9Bte7{#Cm>Ni!UF8ktFVvYW%hw#}vEIJIPR>9B3v)^5e>iESqnqqn{4S3R@; z2j7An$+l{x*A?7}h5VCo`E$6k{94<#Y?CBO=Xu@F_uFq~&dltths?|odlGvQQph1O zgB+XSE(V9n%;5|X_J8klQIc)jv~9J1F1~HsN|~u&{}R}?|G8&40stgx=m5b8)AG!< zudmv+ZQGJ0sonOls8VycExSJ%ztxiw2ZL78|NmgrpuC&epa)w!Pa^bx!r)|NkvJ{eBAAwjFP?>-%C`Lpc_+UC!Q)f8KuEwr$(i zY}>Y7D@~IH&G)^YZre6(Tido$Y9C|HeSFSk+qNCD&AtD?Iam0KT_M}o72_YVZC_W& z+E|-&j$VD;+MYJjwr$&SNHPbj(&0ks&lA+o? zt*+;6d?{i7f4H@NGm|tF2XvylmUH z^_Okiw(VE7-mRHUo=I(Q&}fFzZQG`;r_Xcs*+y*JPTlq&P01-bsoA#fz2{6wkmSZ~ zkYXWPLh$MWNa}n85rXK$38luA=F@4wX&wmAgOIYsMwMJmvbPaKIdO{Qs*-JsX=FtI}P2U*XVQQYge{>4hL-$<#sC{GaFX_T3V zn%JA{*un5pn(AF(zeYtpF?u+0*~XG(uI<>$x3*nrZg1OYwpLVEFO8=Dj*YG??TA)a zpkM?FEDan0IKY3sg%g^~kLQ7a!1I9lwD;0X9FNa}`_fc~KDC}kBGFYx#78<}5f&{V z&7l~vS}47{7yT9$ti`P}isx2HkyNGh-s?5wjP>34g?S_FV)J3v_1PY>Umg=44iaOK z{rSwcRcsh%bP7hdij}WEit*hBA{$MUhOUip;dp7VU*y><%4xTLaH9=sttW>Q3okE? zS)=V&@r}iexW8Dk_jYYF*Y;f*w|8zbn(e)5Z_(&n4lu(2`Y#rggHk2w^i0?^h-r{G z$NdQH2C<%-2cw4;Cgl*%YJsQ*lkq(V@suINl9Ff=bxxizNQLpGxJia z?-I~WOw>gEn}MV$OSA%}iBn09Yn3Q{6tu!*=^z7mWB}lKlz@r=C7>e^qykkUl8TGe zOpOv`<)RjgmvW*CQ6-j)fD%Wj$yPa80b2q90_O@$gA))@;Br7jKnR!;&=Dj{ z5g9~LifB5|B-1NnnYjWDs`xDN;aM_h*b=Nw3bH|!eJt#nd0RaE+Bmn_Lka&=z zO*)&JTsyFP-g0oy+1bJ;WIngWM7yQHuBPl;R`!WYO@p5-H@&XP=%4Y> zvqk1FOLcv)TrtNI%9F#mWHJ`sZxFON*(yu+JE(SZE`Y59sue^>0a3+?fcU69G3pc_ zb%gd&bc90tkf?#p5ZXtPf+D3;G6%8f6oz=F)e$WnTon)zByvdJiYIf36sJ;oEC=FN zJXv*cis)2GG?=PN*t&veubRSfqHl@8*1Rj8n@^@DwwAGjtH;t~Ylp`UoxLa9U0SP` zcVDwN_r5Q_c4tYBKJC^t>&I}WUONJR-9ZNke8U}*1+g@M-9>zG(I{O-5-p; z;b|i^?6CeJ^>(JD8!bAMI%2I(+TVJqS^wsCrDnDen%V;O%sxy$yOTZFx0AZlUC`|w z9yJQ)kh>sNuRK&E=q{?_j-9Zq%YFT#SRE9Pv1AU|f>nxLIVrP>2wJ@fwC9tms4^MU z(I}byh4tX>@>+Xs@4Jkv``=lgJ@meEEjQLtt);RB!%RE#-$DX}pOH8l)8>}t*|8i< z-DNpEo&}EfF7tsN$IiA+a$@nmuq6y%?U^3V50u?;9^A<+_weW-C$|dnd&`1nx$Mpu zJsThTEi5|~Cx^|wSCC<$4A;Q0%L@*bx}Oaf-xD=dG0A3mQIC4|2Ud)A!&oR#g=BL) zRs}Sm0KjEJcOmA)>Z!+yXrEcgDw0Ds2X zR(U8Fv52^7AtJ3gGRw-PlEw2MS)1yErHzCAg`H;-k1mhBVl{V5Z;qE`yLF?8+NKCT z@i|~HGy9`xUB$GyySY3uv3@vmmsR2(bK7oa))$PCs*-FM(w02b$#yv@xYZYygMh4! zkCLUm9w%>yQM!n_oyY$cDeo>zUY{U&tzq-SyGH8LGVH%Uu<=bX!$y4ZJ*gLm6)yEl znx31YNE{GgJ`Iri%EzF#Aonp`C3GV8K>qP9@{VsZ0FgkTFjqQIf>`SCx3)Ogp2FMO zWc&Ck*_O`maC=oYu3j^ab+&jSMpjL9#H)^&B1?-+_KS5b#xph?h6)bdZyzzxoCQFymIT>SWGK!8kXy_bgSQ}7k6zxxdoiiEXi~e0y>mTytVn| zVIAz__-H4mg3mYC+?h_Wqb)iTX10=otCjQ%UA(IiL8r59qA+y>7v9fCE)ufEmDAk^ zK3$U0W0Gs-s;dXQtS-&i+-}j)K&)U*QI3|xIAEFvI+qW_<8T+Uo-()6B6MIiSP=(1 zH0?M^RD(iPL@~k;-FlESCE-B^5q`8JMq;GAploz%nK&{53Q@T9k~# zhfP1ndvB7)W37&?<75Mci?NpLk({~MWN#@+dlmDKq;*8CyfY5M2WtMWE4_2?)i5@_ z+6ab=uHW9Fq&Vklps1`Xb2YID*QYl6rJ+0v0PFZT^(C{ zI1{@)jGh>2teSDp^l2HHJR`Q*)2uzQit*7VXD@U!PL#Lb#P!FbeY+FRUn&nxEVFC7 z$ExEkM8hOF-j

#^t&B^9P3)&n_{2AqLuWk!|mQVzg+4C~!dOPhbu(5RgCyEsE*X zL|+_!$@=k;FTHTuG1HE-Ua3`-Y6kyloaCQsWH=UfoJ-OlEMi0gTVeB&xNW(ZY602r zQrrzyqXYoB4zzTv z_^nh6c|3psDQ?A@5rA%FDMg9zCvhMUo#N3U);+hx0Qk6$sp=w+buV!9^pW6NJjoMF zCpb8<%GD?48p{pE3)D8dlbIZ3&BnWJkJhfaZ8x!RjH}9VlRQ4+IP;WME|X zB`<*I9dIU=1QJ}0Pr)j@0{slV1{Z=^sf?OqyuHc;lc(g`!t)_^e4yB&fgM9!d8{(jycbF;wIYJTtD`=8p{n@3;*0w93& zCng7&2Vt6vRp!m7whniG+1kBxuUkDeoEj&U?FzBWLlW&)&>XBV_PHL+cNI86`}@V* z2V!I!IX;Us*JF97n^k?TYQ3tBp$Jj{cy{K6g|<=l5;a&B#sV=YMh_DA!6j6R0SsxN z9LjO$ba3(`cnA%_u!~7GL`1NI4S?0i$=Q&T=Lt_$R83V#hl8|z4Sgj3qAzF=r^OlY zQecokZdFjv#S0d@9X;E^5f#2y zzNhCRU`nW>iML74GX`C6qv^Zrlh4~9xbMsT_ucpDz}SUTPA1dLIbQ$Lav*^gOniNd z)4MtP;LFxeI=^7!xa??}{M{jVFIF~a!nHb2?X_S$5s&S6j`xF%J6X?11i_{5m4j5p zC8*sh-7;CjTb-n~ZbXuxFh^%=7Z=(qF$1FjjU9wYY9$*zZ#MGFDAyWxF4V(~leHZi zgs#!o%ZE80cm!6|hCVo1Ch{(vM%0zP04Vce{J}@mQD2C{6XdB(95vGFSy}nNa>+85 zR$iXwE}vA)01WVT(rHkZGwdebEBCDwn458Wv1nJnV)AgYvg-bl+m<8a#hQ+T@D)_#dOB?GkwiK6d@;_W+yvjI^Pr`1T1Ax*1kdBJ+ zf|1MezRTvZd9;i594A+kQvocv5vm|9Bj%GcS;qM*F>{gyK?fR;fXsDq+k|6L*ie+V zk?`zp?a5o^Sw~p@{-UWnTRzsEN_~vl7bSu^C~aaFtB58+k#Ku|nAS|LFLZ~FJh*(% zL!TYF|0B;XFFkj9sWe=s@>rR3G_L3YEtq-wS?%4bd%H$;pLk_o$?h?=KU*{H-b56Y zFuW=1dmw6;+qXL@$K&D6Ao78ZRYP@al~UX--BFTFW3gxsmrg|WrTpzG`H3cDws>k~ z4-^!z2OCDN0&<(ff8W8~UixloKbV3zXjc7yz3f~}9`|XT;q&sR)WC`{3m{zt0N^|? z14VcdaT#e5Iftc@Lji{bbI{H9$`V^F)l2A%2w8Zugu1NicDLKIXKt$Et(~5Tj*H_P zp{&e}2-F|NjqR>ebT1N*)?&fZ@w3iTpZxSszq-E0U(^1)ocb%cugonQ z$AJvGK*?g~gyZ+_Y3GL5*DQBjVs9jw#wQXRjlr{$kZ}Zpn}tZfNInTupBgy#vB4U4 zODCo-^2pK!)*n4%!vw0tN0DWei-eg%FYZOjA}|010$kuA+8XWZT}t4rR)a3b0a$<* z44?%Je13T-p+3iba18nfz_PDr^HK;nsP*b;OuhZh}; zx(D%rO{IKnD~z``o8h#@lK#%UWpCF&1O@&{)w-ksPjj)H*^!RJ-Op`j;#bvDHPD#r z7Ic%5i3_4|d}RGn^YM!bvgtTg!1ey(`qNDx8P-rRj5d!Y)XrS2J5tXBIZT7Q8DAx@ zpj;vd5JB2dv;YkpB|EcqljB9PP`g?QL+C;V1OS|;xh0`Ev-u?e*yqSBPr-Z8%X#?A zuXRMV={!?MGbVbfHIXbI9D^IU>|gBq`vTz1YU=bd{qEclUb}_d3*6)mBU+(WqqTY|rLHKy?~9 zu68ya>F&K1j(@nY@k+{_`!!l33WycX4&FiZL4!y(s=^)cAp9)-o3h94BkW+^V^yI# z%w1MmjG-JY#UKp8^S~dZsb~BOnuOr&O`sA5kBf#ec;P*mLh%4A3 zPF5gX7uztB%Wl(}W#VIAZc$_4BiSnKmTuErXQEIAdX!L!R-phqKV_YodryX|2Oo@m zCDkmr^F(#Kd$%A0{=^Zc(?CE3E$F&i zwLEj&N%K;j;E;LA^OJn%q|ml#K2h#o4YN&1e=s)oxrp@B@og(LZrn)Gj}-s|0w4qu zK^#0o|0ekaDIeWJKaML{&-5_h`GV#(tt-Ybg)TS%h}S*6S8`CuYM8GNgZTjHuUUd~ z@IBZ9fGFsB^6htcl>0n3FKF=3au!N`k;1(uh~_c(Yh@YxSwtG`H1?A^@j8kI=fEsm z+EX^Ex${hDJ@{bknR+r59on?q@n)BXk(`KUL~y=IC`p0A7@DhD7NmJ;IkGA@k1?OMvJ z)fDYCPc`9^LT3p+XcOa?Sc4v12e`aQe~8I9fd%xyL6n8-P7Vj)-j{jvGcH+}(8t~e z$9V>B!Fyl;JeXzNa+PeVWe(z8Cn8X$ zbfNQ9=v?|luq{0iTruUwC>_dSuh60#>uyRoA#)n>`t-#o?;k(^?BdeeJHC7Q24?N0(VABaW*r1vX18M+OUzI*p(1oOOk*Kc{S5 zZACdBpKa_41#1{DP|LYuxftO3J@6ifN$$ZAGEkX~Cj_vJCCCl58h*DA$5A&;zme+< zC3EEZ4vYXik6esgr+55Rd%E#E7knO2<9BifNZ?#3TLhC0_+f);9;mnn4#5P(IW!5I z)1~T};BRdbGr2}R)l{mKiUn75$pYQ>G!?(|ho83GHr^N3g^m0BPhNP^KQTQ5%_o9q z+wFp;OJ>)O)++hD%w796z5UyN0*hYV=$}9PqchtjLBCk&enwzNkbR~5l8^Kf9fo=r z6I9)}KJnSP2ex|N=y|oD{yVI?IR~d80my6=kl+FW2qI3u$lWivL_w;1<$LGfyZ5nA z9lP6Jklf9v_?_jCcHh4Bk%Moqz5gePSO4u(OrOW~=`%De=ioiB6N1Si56Y2J{1M{q z99nro@dzyDVod#AM)tS6t+UCR$@3VDIjicppafs~!=G#-@GIZ=KoLc6r4ySc;)S(G zCyt)K=V@s^{=&`xCEDoP=Cf!$kOQZhmOsCR$aZBxJK>q1`iaqTqvWOk_oJ=RweKiGBSUW&a5pCc&oC+RhK5~OgjcKrQ+cc1y6_t)mb zL+!UHb_lG2%~$b1FxIs4YKv^K*647P%ZsOU92?eYSy2Ad!bymOV_1MHoWO9wS#TA2 z&~kv16Q4C|fm@@3j{yN|9nf#UV zZuh|v=u*x`4|0mwLXec8F%QL;2ma&rm!{(RNB#Dbykl_q zE?)6{%ltFbbaTfp>pw zl&YKRwyr_GUCy>Td7wKOyO2Sc1}U8F_x~+>$vlx0$N}I0o=;EkllQ7Ab?&t z=!xNImL`v)I(YrKIQBk66H^B0u?pAW8k7JyhF#zwNFXF6QxLs`Bme2KColZM_k2X( zSn0HvF28>G#2azqP5(at<_SN|ZymJ&Br=6~jn!O#_qiqcj;Gw$y}(D{Y=-ecR|q0J z0^J`L6ckUy+IJz|q%WO3cj%aX_N;sS^a|vU zw`eAqeLfS%gEe;^tT_{{Enb-Ll76hk zzFWQ3j1`-v2lTF$h&tVs1D^Z7Zsj+qaAEN7abayyn~_lw7VILeqiiSJso*-wH&^)j zZ>L=fZ*N0eeq{pWrm^zLD=b9R`9Zb9WuaM9+r0`9wUl8E2tgHMP{lhG4_xwqF0tl- z8xXWHNg~P2Z8Xn7-zGlj6VSI~cMX|uP`~;4(gVvLYM$$poiFoPinw4ev;cKOw=;Gk z4b*@w3Y*bj_XU|a`oWlc=!Exg7Z**$^lg5nA<-OJ-|CU+oj>fKdEs8yhn%$JjG`-^|xP=K2s01+aTT9iRu@Vt)8Md46G3n8aKQw+o&eF$gZxiT{Cz&Swh^fA7890EQcXfiRe z(81C!3Zq07fka;x8dB2^3Phod5Qq+v8V91Sk6m*YyFmfwgM9Q)JOCd+ z(g+grT)rEAmRC_W;%3rrW^2$7NG80I`nE@s$l$lTbrc#9Hls7WPsEl3_eTHNQOR#& z1*z;rA=(IP1%2i%y5|lelP6ZrTpf^)WoHV6aGl&K6W2t#yca~Mc4Ge%EoIFV6k`oN z>!V1;E!SfepN<;0%E=M{suT5ySg}rttpor{dJpfy{N@eb?*U2VIz`S7M{&@I`Q-VW z$Bo0G%u9L4+(bhtr4f}lF$W6Gfn`HN1bSf|wh+>w=dk2{2lAK5vGZDH7udc#qT?#D zOy>hhZuPa?j=&GV2UZqj&~!&3mnAq@eDjuYWQGqNkNeIQz( ze2qQPvSIst9-w+_sDAPPJsw!S_6MrlSCTc!7;b^8kVw--DD79ihAI~RDxZ8Qb=B05ykxXZGnz#`w(?@pr8O*^cuLQ$-z02qSgza=z43L{58~bPi)i!= z_~X?_KoQ!WpYFhsx-WlyTZ+bOYP;Ac+J%T}4v$=}Ks7=3&X#3utQ!qdwb7Fu&Ko_$ z{SWrVlqmL$q}tEU%#IZCk%son7>2^N60XR_1qgDH$mXdu2djkxTy4qP5f2*H@H@-Kam!R9I#kVqYj!TT^6n|^*}IHK_b=g}Rb=`=d3Nqbf?2gVTm+A|Jm(8G zOxQ-W_RNVgKTI&wfY@(xl1t{(1D1^j6SFV%aYq4-;;ey{flM_>t8VCkvp_&5B&I%g zB`RJ>6W>f&)@=Ns-D?QYzlbdRO}{5Q>h~l|S`HBGR_$N-k@CfOo|&Y%M?G#o;2BQt zH-C*X?P!Pfuis3?y`!dTuldR7lAFt_O8KQM($SN!eX$+voofK4KQ^%iW)d$yCzAu^ zEpthf7#CYRele|}U1C1k+gpEoz%o-!8#ECf2gA7;}bYg-H00U0JDqup$kcDR-Rqrh!9;P{? zRXFK@KzuNOV)-n_e9MqHq-wszXOTaqBNUbc+9 zV5c^26=8=N-#`@SI+;Hp4fV8_vYqXIzc5$ z$C`{?Oc16Z_d479xs0-XI3I~eh$;C5Muyu)o3nzAhe)iHTdX?$kj;17Ne`gHn!zh3 zwFH)pqptZ`XfTNYpDN`*k2ZjGSX_cLXZgPz_yEoT{hYap9T}L}66`6YbSiyYXx!{h z?t4znD^xtcM#1+4;>8Eh#&`H~;t_vBPnb!Mf^bG*2mU7ir?m6WC#cJW%T~i4+$|{` zhCDIx?iE&+mvp?Ku8gadz8>OTAN}#k3f=Dw=B|1I3Gl}tHa?x~6p!DV6dbQ`_u@N- z)st_pZ*IS}J@W9^H;S2n-3;iD19uG!IlfkkNZbXb1PgI>noTW0&N+s=6$Da%`Rw#W z0Uxy3OA1vHy@SlmWD;P6BeWd8GMQ+mq8O1+Dc>?32Ily^9ll3!2LY0i07?cRRFWu9 zU10|#Rs7u0QDxv(V|-!iX5pr_?_uJTGQi7z*tGNq{o~*zpM|dpiEZE-*P7?~U+8I= zcba`|RBj~)QB)uNPpY1Vf~J88>(XiKDPh$4WI~7 z!KO!jBs=OK+dtqax(ebYs(+E+_WzOpVZLs%%^v?OR6B&S4htafHL=vjW(`IFz8~I2 z+D&?${1aMzv&}1a4pw%w)9?D|k2N--126sY{gM*x5n14T$f?e^&T5`w3E$`(U|tl( z^mx(8NI(H=Yfx_~mZ$hr({Jx{=3~YS-L`BhG6BFkDdWQXB>?~jmEo$Ht1B2F00!w2 zeL*(p`lMEzNLr{YJbhkwKIEWhwFgOaC%ohqhQKlrCb__W(LYQ2J7Iq0WPe}-kEu#} z>58DBB|rrM4NxIQ0`hd5lgeLVekV-7Nk2)9E`J}+4P`7}DAoOUe=_>_ek7ces4+mc z)4j<5bL<=ZHNgBJnx)TAX&!sR)4%FZl(*;r7|;Md$NO1>9@u-N*T|*l1XPB;aQK5; zQ5nECE3nrK^rtWQ@!@`{9nrb8#0ttqT&;J9M45{uU1VR?=|(@0XJQ)ny+5MfS0gUkTX;SD^nQTd~!Ye~`@-E`!cxycx^u=qCIzeh5C! zW?=?_)0OEIp5;CM-~n0Gq9PtE^BlL5ZHKS&SC_rhvNvL0*y2Xs0WD1&7;b2VX7Cm7 z;4Qx5NZ5#2C0N5|3}0o-_lb0sPy_1aCT_q!Q$htOKoN4%1XEyY%sz7j8ld~5&BoQw zysn`}wkzlD>eAn2cj^OYc7Ij*Q8$c=IvAd~b;WwHU|B`=Nke8^{kz|8wf24qa9K0V zFvggZ`3`Q2oeq-9Df-cNT**AFw!{CRIY5-g3`@pdsJ8wkl$Fj}P48K|JS6@Gtw^Pk zYJ@lDB+W|>=tka9BJuGtNT#~vO;r<*z(KWGbAvI679$4A{wzKx?gE`570G28nXwhw2y?g* zQJ*+~9J8lPcBL_KND`4|#mPDR`+v}LwCS8-G%f3zVasTlHZnNat4O<1V|hMD-r`_= z)gQ0Gmmnw2e!J7zt(V2yh-zIp8-sX<`Ll~JeUG%BQI9R6s>)!BX3+~fr>tZD3b8eK zS&AZpi-kxEXafh+X1IZ0pc7F_+;v4|r^u3scR9hi+QoEaFky;^{&Jw=wWgk9ovskp zP&`l++{L(xQqB-%-z+p!56J`UFHE!f3QPeWRK40i6UP8SgUfRajOT-bL|UQ2i#Rix z8Cl7I07LxJFQ=dmr^^KRHqMQ{LD=C6*P)?9!5Z=NWyEX37WqG=I|>Gf0RbQZBy5Oa zf(qi8f^rkppe$M$!#|S78LgTviBr-Fw470)XZlVjN4c3>2mxtZ)B5oxoALex2oS(D zHKCvMfANeh;};-;OPd$IE+!s?7{TD!=aRy&Q(a-#P?k{NA(x_82m?rHxCi5V2WYWU zS@4rNqRa8cV#7_M%NVql6!;AZ;5^R>0+Ul#&x}aI!|N?b#{=^b?p_VKuN2jNX3+d$ zl$wR!s^loK5{*Ick&Y0n8N}Rlvh6}1wQa`l;B&U*q^;G%%{PDILmL-<@?D-!FUV}! zs5PhGDCM3NbOP<@>*Xaw$dvBhPwJM?dLCGh3R_+^|LmRa+dp?-zP#4#zGf{-i|>#5$2SAm zlM)9qP?bZ8x}2#)|3MRhl=w~(iC0RsV3daAh_VDLBHCNRok&^gRTh05chPT95aO!- zM5l&?f%0Z!iMn|BTo>hRxuW8k?`^(qCqw@tkypG!$&mRf;d@nzyI`&NDsM8K!%6?hbE zW4wov*1?nkC=Crk`wQyGxUNLA(Q6O{S#~hs8xcs|T-`Y`#;Zs>L@r0mOw3-@%)-%#<16&PKSa7{t)yi*v^kl^c|L?!}($C*>Ufv{9 zHbUI>td}?>M7AOV#eb7sqYG*N<{E!=o*j_J5W_N2E)++pzd!>B+YA6n$`aJ!%kn3A z*#@*-8v<1T0u#dFAr!#;hxrBEi<|{1K?$drlTkSBkBH+FLMNvS0vIA7!60y}x+IM0 zO&~#XL^nVKxT{t#yKf~tB~25a z{+qY%XLjwBuJrwMP<<;`Uu0c@0%Tx!F&3i$5U9(N2b(2y=kUT3%Zd0&Bmowr@+8f8 zS`9a#C$PNROJiVjaCg5vYo@BaT|TmfS)i=rt3H&nY*Y#uKqO!UCnYNI3j`7FVeG}O zUySgB4|d~k``Aw+{ozyygb)iEOZmVHjzX-a1^fBEI6rpCuY1|A8207g`@j~!1V&^c zTr9?5J%#_m({Kx0#^WBO1xU#!f5eYI!jo435@tY<8}n)c*f#%#GP=zvg=PR?=;GG# zr#hMb4{d@mITKwS(zF7V5MTghDJi4wH1AYZ5aL5=3lKN`V)5QV?ta*OR5SgU)R*U> zLy8GCclqqx(-!^L4AvtoxJSc-{!V)Q*qgyivZ9_=7-lD9KWk19r69;lZY_glNBpEn zJc3oFG@K)?qa?M(QEq7jexvyUcXviIQR8^&a4!jx3J{ziWyt{XTIyIZX_!b+awM+%Q~1+& zPCoj<+{0G>^Q=+eY_xH}+znitnDs<5W{`GO*A}lhWle`){NrIGm?$e^ArGEFXITh@ zAf9H_TIP~0u)3kajLz4QjEEH{!(<++%!1!w8?Y>k8rv@npD9+)Gt2Q(=W?UTTaC2~ zOc3Srds{5Y(8w75AO_D%LwP!SChF;rvH)U?Rs^TSeT5N%_l1XxG7-U+WRLU5cLfla`3 zAvVcd!dJ4sjDiGGTtI^F#-3lLzyJa8$z3d%B+@$>Q8)-l{{|R`Bv2oN;0rP48V$V= zJ#XOX@A@k`vzv1@)M5k2e5QM%HCQ8~+}bpKWke-a#7$tMZVFgIvIMo=XEjhS)A_+Q zoKs@;DcV^=J*APkOk7}s8)V;!(w@=i0?!0Cu$y4-TS%(*f!SqDS}ayj57 zI}e)(n5Uk~DacM$TCyUvAk$9TxsALK#hlE(SA^HZ&NNe44><)T4b?a5s3rHkyM?|F>Jm{(uraRRFBo+c|?Oqc~Ia} zn^|WeD9?cxABe&qPgehXhj=f2jsNSAw4B+2y=!u@%G5k&4l!Kx=fw?;L84tbS~Ktc+; zYtZJ3-mK1y1w0V8Z$=bJ&@+-$@pCbqx!^GJ{XNlsG0ylF5RBvaGGjLx*@l|uGG%ZG zAW`W*Zhp>m?T;XcIS!63o?%n zYFL`s*rj6sPH}P`c1b)~#E4J|Y^)&RfJUZKmd-JCfznV#07XE$zfugev$u24Is(=d zetF*F<)L&3zkt8N4h~)`_e`U}?TQ?IBUx;&UYA%RLLy3p0B8{tD_km0jJDB4W|L^}n4ig~>exMgcM~Rp`qFmjztn z;yK-nED*x}fmhDlKmLS$M{e%B4*=q_iTby$d{nw|>tgKiVGS&t9%84?-{J6V6T3vX z6{2}P7R^!FDMfmcMSBP!NK;Kfy^aH@dpw#y383IGX;e5Oc9?$v#9Z=u`9u2a9(qKh z-zkaolEn21zn0Q+4FhAgVMdAdR6tWhdr%LaJ=uzgIg~Ntj4q-QtSiw#LB|`!m8Es9 zORqq^0oKB7QoUz}I(4?0@n{wAM#u1lu<39!^U;a9OHrBVWeGo&)+P+VfV>(}q$;QN z_6vCxg+S+>CI(U9K-7t}UNtxewsCN?cNLi@Val@?uM0)s7w{Lj4*)};Q|YC;zzL-4 zwZle#rFGp1h(Icd0H^>(9A=Q*3ekpQ{o-pY#=f@yx*Yb;$jAJ+HuakN9$vMdN1Ok} zU(Q{(mgAP!7@!UisgrTx^a}X_!ZW}CqwpK#ztH`Z&FQDt{{{?)^IS0D+i~Q+3JIi> zx6RgHd)>*mM?Y~8bU_@=(b66dY)0Epu9N$-$NPeM2$?)#JF|HM0H$V(P zMXD@YSl)V zQ2+wKHDPo%SUOZxZ5+`MK$L7*y{Ds2)iy&=M`$*sA<6jUIP$#PL(>37$uBby6XPRI^)!V zDG0!sGL9E-d`Nx$)k*!tOT(u3epRF%-#v?;YqQw;Y~pY%2U-_=`{(cmq<%7iiU+v* zQ9@uK3;;1M{$l(gUj@(jfH>WDaxC?4)V$8;_oFq+v5#kCv zY_V6;^Z2Z8n^!%)eBO_r_o;K@Avs4C;WKLz48m{qK9Np!pNVX1ji$`Ft>E$!n^IVH z#7mFPaktbc;g z^LPq^00fZip9XKBC@~Izrj6%F|6+0dnik5~i@D5$QI)zSNNJ~iu5+Do_mjZbp+9iht~ zZgKMQ#^$l^QeeQEC`X8|l4B4cjyDJR?XOvY1S|%O^u-*5F}U0kA9aRzPr#4Qg-<^t z@rf&Xf9?I>pMCwc-(T;&EImid=KT7#hwb~J5O+E4PyEC0ywVrKzyc;0j~vi_gS^2* zAOHd@0HH+aG?9^rOqh1{Dr0#2Qp9h5mE$W0!}Jg_>MQE>_(1)e^_YIDjvx^N9`iJK zEHS@Hrgm`cic;;OD_ z=cWi4fHyi|5BQn^2#vfMJ*!F}O(Q8wL^qm{ZSuUu)8+`20|cDhH}m}MwuR`_lbLNh9R5t1Rwrq~Q-;Ep%@d$!Zj4(7fxn00jW0n0gFDfYLX6@QyzAu=cXvJFzBk zsCFLq<}MGea8TSIL~aZ~5jJ>!Xzx3G_m8f9{#X2~j)nLAp&&0j2amy1a0DhGfa>A0 z4F?c}C`rr!zsP!c4Ld`qM#CV>+j-uCt@)@+~8$Zm2 zU+{zzb+6<9MA!iWl-j8v3K*hMHoH9gTrW?b-WgkV(_DuqI2rNC+k8VZWK7T$PCj)U zebt+u{N>HJoS#1UH{DDv%Y*GTZbJ}&AP6DsB>6~8ktAqAR#C4ZF@aFWiQWUvgA?yC zS6M-8=`1XKrIcv1(kIJ~J1_wI2m=8HMbD5wsNKljIrXet$j8%|4wb}f?7kjeb0I~z zTYeRJhF*yOolJmBgh5!2eVzd3zyWwb1B{yy&;nwFkd$&lwYvSEvK}Y~0#MIUi!fO^ zCRR}28I9=gn9=wy(#vd&_<(R> z$(X-dQLs`C5CB9F?qmd~;017iSOUhu*DI!y6?$hZ)#Q?y^ZPAc8;@$j5g|b?ftjVRbnrR+gh@ zFLvtB@6gGM`*q7ty+ch$kB!Qy^JB&<5fKOw0RU238G@!ILxXkEmaX{g=$TUt8qHVC z0F*EUz@xxO24d<_3BTrb^S`|LmeuKle-k+Y01q78o?w$&24eUwy;x|Y7IY9PM?+9Z zkW-!Yb7S{5#?~{Gjjt_qOs5k;1!egPNYUxXPejwU=o__Ve0=%-ZowGFgQc zljRxD#<$$6A{D$ybCGaALj$!E^+9S>h=D~)K^elv3smRI=Yq}~jA zJU+zEW^_~CJw+E2i56SJ26XNKH1egzEF~@t+MG(+KQr?An@)GX{r{YN|IfzzqgVSw zDq9edOeW3Nr?uvP91lQ-0IG(L=|`s&V9m$~vX&BsiqSq;jZMI(NqU=A3J{`NY^6I_=8Fv`{3qYM_B%jC^rLTG+;(pbJ_aDTCY7GQ z9fCZmC@KOwo%Ck+bGchp1ce|52H=5@buX&=z_V3_umpk_y^z_;2i{ByA=0H{%}k5f`(79&BEuRLMdMZ1hrfSo3A zph4=6>U`Es{Yj`(dJ(x);R0)+#lUL7&WLJyt;$`TyVA*GZ6bP^ZD8{kr? zfmJ|BJpn^rvG{oC66ev|GapXm*SW1`W?KOxjs}6IEl@;&5G^!pP5sWLnX!5wy44QZ zKYUunC?5+){qadTrX%5!L;%25JJqdvc)r5sYyl+@!@R!Zu8i@VT8f?~zD!ul_E~Ns z^lM7C_B2lXV;f;=y!2Nus*Cd{Y8{-bEtCOZqR{^zHk#8mTpzVou|Z6Tim$fhaFY+w zI7(6&5zVk+S??2=P^z2Vn=kwQ>#u*o_gpNv{IVu{>*|;>yh5M$Z+|i2NNANsuRbX! zh!6l^eG})@eE8v_BC7xh~gUR`NDqcM8V z)kCJXB!~n&?ac!Qh7cSvX0`GESJHjIPR)kR4>@TpU*Hq1NjVj{1PCAiQGjQGdHRzQ zdi57CTJQXU>6!M)$dv*ZJzQMHXDOp5(R?>;=g~IoFfjp2(H05WsJC-CjFcIV!mBea z%lvfdIG-oGy!z4$Riyt2!eobF%pcTFdCNBYY||Yt5!2 zd{j~;`V9Rja+0}d91G5=h84a|-6_ zc_T?6Mwd+%&we3dcW;hh1P0I#w-O#?EW$@aa}!+JAA)gXn=Jg`5C1Uw7k7Rdy6%94 zQ(%aJAZgS7Z2tVi#+A)hW*C~>{T8R-`7di7*BcicD28GT2m>boKtLC03n-a>R0yG*~;^kSD**>5e2d&yWHhk4}O-qR%5w$O{(GGz`^aX<5HLPPb$`a%n)(C7%TK= z8VkMx2$)rp<~Y@WY?MR7pOvvIs6Yr+bO0uB96Uq*2sfZzN_qeSE}neh+l()i9X8*MtLN$!zCu_a^NN&FK;?H_FbmXKa?>eHs=RRRXZ=LaHUp>Ls z{VnhV_uRmt5xPNFm>bL-7{GL2G|zMB$Or)uESV%Y01QR}H{v<3fsmOH1;U@y+kcD= zed8}~nB$KsF5XNyf2-)$4zTt5by78XR+ioVWJ=J17EkS-uKuFW8o>ZYfY@LYF-QO+ z&=kCj^bn%~P(gn5<$ro!dhTC63S4zSzyy>AlqP6O+GwwD|Lv#q#?lh3K^1J;-Tf+N z@Ae{<9%mX!eW*7d8EeVK#-2t`&1PFr&5CAgf$T|2&a_!U)Ob&Hl*dHmwcCH~< zxwMamdj3Sl3Xl)FL?}kHF;8`Y$#kBs8d=?pxVfPOzN0XI-gQxEeg(=$(xU<+BK!Px zYjdk@4M&H;eq;2Zb0dkz3i7D|xlhElts6@sW)g3Zx>Cv!VkeE1NI(*OgL9y0sses zpRI$Vb)W?Z-U@FAM*xL+ZNDs^*muarHpwLHs?dJJ?6^dW*!z+ImPqXqVFUmfHD3Fk zG2@I06hjST-;mc|{Qp1icR&5}{tMhauPB#AxN?R5B?nmE8}WCa<2ZJFM0Z1B2Izop zz-KK@XDB;pqEG-XI8dS(sRrm8*wc(`gW|<^*LdgR-Nbzl-HzY+$Zn$Ap#FMH4L6=k zm7leYGE3~sdADCe`d1Aj0C0fj&)grnk!)-i>5sI<=wl309H8LvZCzx=OfV-*ACM?A zk!7u0fzI;z-FHG_!3Ina;5_K~_^h@T{iH4W*>|7776<@O=-N7c{u{=CO$ovQ!yp0( z0KkE^&ATwPdmHi(|E~Am{k>&Z>y!bSD}OiPukiyFUx8_g1_RYe&WO`k(?olq!-*Jj z*V@w7Xs&o`E!Mz3bP@10ARyXRq5WRdvB`8ILT(j^64;jU@UfZL6PDmcj0F8i6m-)~ zg+Zl2K&b9{|7+(LSn_b6C7B*#RB#TgFC+oD#S5v>Ad9`nmT&vQ!*Apse(s~*o4^n6 zdB%(H;IHs31PTDgU~*tX6oBM(q6o!zEf|KI25S+ux%9*H1KHEbftL?GI=u&gAUfZf zzAWYJM^r*8ag+GvxN8G;H`cAt#$wkWx+AKr(Ys%rkP?ICQ+G6y@#S>!u@C37-XEXxZw5l}OTWnq11H!1+Aij6CxH%^EkQ{V(3 zLULZ%d2izJ{U1bY3#t*RhD5iBsLe!O4!{FKVAUa@F%l49+RCdMEDxA(XF=c_a`esj zzVY4bP9V=D>&TpWU&S~b`|%;>3NmEtL%2cZOD~*#`URi*K-q@5b2v+osX^vP)QD(x zOk8=&*P8I6h^42eu5(C1PcISovE{zxGF_dDjzP zd1)c|lH37@?wE{u_Y(`QCy)_2C-EinD2!`R@5BXI9mK;Pt8QMmy01&R`+f{B8w$6V z3@kuGfDw}%+<+lN7z!yl5YR&J?J{N~=!$4v;5Qsa02)l#GslFWG@uYRnQuC0gvU(1`>Y zo?`or_rCD$+*$XT)o~JX?Y=SPD=$CPp^nr*f=pa9($%|amZ(~^q>!lvu3T(SCBw6wxdPK5 zfe?`7aJ`=3lYbzjA_bNR1GpEoN(r_!`XC2Ilb(AV@{TXQ{)L6tAJ+tf45&d- zWl@L%5b!n-VVdSeA(x+)wg7=d7XS@PLnI&|0fD56ZJH&YTAAvfd_}+bBmdt};-&|g z`O1%q+%OTw0s{hirTw8BcYP`fS{#5UJ20Ks>Q#?)laX>+ z9a_)_rC5(d5rE=3zy(}4VWC7TGNS)@(;4SjP@SREr8rsOmO^tA+c!!bsrOu!#J)Aq z4^ISqMg|J#;wRz@VYE!yiN00s8 ze9<$J+33j@j(13o@Ry(Ler_cZJp=&VF*oUJrX+nSoJO!mmh=6Hu?Wbw? zdwA2!uRE?g_eGzsy!58S>b+NVnzARey8iz755JF(T>yasrxFC}wWMCZE~#TrBaLk{ zkkw^xuGn}@R$RTU+4Ih!{p+8KcfFcD^JVnzUqRNFG4)|1fsp`!03?v`KyZT8Ocpvw z8So>-kzEev7=%iTp+)7ZZ+Khbawq&SG_Ty#F|8Ivf2Vunm}Izsrl9T;+MT3Vo$Y{DFOpXUEIg*f--HStkEJLA0?DeD%rF26BCv{6 zASF&{1z*{Nlqe7Y;ep}_pg^#A1E+z2!U1g|bVieh$qV?0lH05CJ2~@vdtZOYEFHb0 z%_Ixu_lGS};y+@xY?yG{2T*9(GFnBzQ4Q+q6iF`hdVIcao_f>wz1lcxIaH0lSF6|K zYK8}$@z|GDw9xeuEUJay!xQ=>|5p;n>XV1SAYM7U;=;> zAlcps-0eNtQePK<00KzU(L&MS4wgRoSz;-dO}_F?a={{R{3i9mUsH9*RRWvdcn<0OIazQ{lu;8M%CpT?8}Sq?4or)gnNX@q zQqc%bfJ1_^11a!Bv#0<{h%=Zg7#3UrU@=EgKu9BT#jxdt`opBdSI6m)9gJEQ(hH>o zeah%5EC(~=D)E0ure9tOsZWnN+7qDwJTaeg^f|eE`ZvGt+pj(PU4KjeC;<&ljudaD z+Pyg&(Qa|TNKccy<=ub*iVj1Fv*lto;BGuP=5MP#%5Ol+sA@Z7b z;rsUXyZ8(0TU@F^4uUojeToOZhz!w5!xTgklP+L)LWJS44=Met<3P|=(K_WP%z^|G zWHFufBt!tB&(D1~L~g+P9|2hps0NW40TzrTawL*rH$3^ONo8e8==fZ<{_;zE&EBpVj6pe?~X*q?0g-^`0i1wD>A?vQT#Ij! z*E`GiX3!dQ=nqA8vgZhdc$vr;Sh_($JvHCI=8Q5=tF!$56JL>v;|@VNG6tBGE8=| z-FLWchaYHbbXyNy5g8EKLocWzf&wua{9UXEV*&uun785!0gwSvWl{g?Z9$-EP84$a zNvs04%rkBZ_kI#id@WSG4QgHoWJXj2L;*4bT?5r1;GhVXF0QZ6{_Wj>Pj2F6YXAly zjwSrd@8?hX=Be6l<8(aXU-d8h!;Lofva0OKTbBOtVeq|Q{AB9<zrZ z7hgI6At(ScC=q(SMl(*JA0VIrP-#4#g8~6S80W`>FFfC;ZFArF$wR+i4}{a^-zdf- zKbiQP?EWN^m|&&UpGj9$YWPy*>eUk+U%9{e=O4!Sy$=44UZTJN6goHnq)B#F0|G$+ zs+((PXz;hv4n#q3xsvmejAWZG3H%s9n@t-4L_mULgz99DasmNo3JnT14N(McVCnn# zfd}QA-*me5h2Jr^9KLb_!eTT8eV1-EWitgZAX<;#{HnkCsP^igeRl2PU5_~u2LbT> zv{V355Fi?eaM@}<0(}%3HXw)q$x(p< z2xXk)$%8xow=;SoGw~cM|E8$)KpgOx@VM};vaXZcYrWKG-uge{wXYq=AJ6hD9{&o? z!BCBBA&MqCOhdbv0zgZWs#1n)#U`}^3caxfDmgb>c1tpIGeL$Yh$w_K292U-S)N0a zFH;Z=D1>0*zt~O$kG)3N_FZ+z(Ul9rf3XeN?C3N$zX@C6Tk`k`U;+4n=64uAkk zr_(effYNCSCo=cn;+G%cAAG=PM}4MOH|gaYrA>hQRr78tJT=1dV!vwoU;1N8&ggH` zox@BVmQChLgDWZGh%r&tLcCmY0Wtuf591I3X?hF||CMO}Y?|Ef4d}_@!LvOCwmT;$ zAZM4Yr`$v-z(@c9FM0bRg;%^ygw!mbKhg7rf06(E&)d$=B;5n3A{OMWQQ{=1*szw) z0h9F+2UL-vf>UKj`C<$t2vj6s0ulfaZ1q{yz2+rvN(R#NH<7>GpG*lFrG84T5+!f< zPt^7H9~!6R_Zdnqxkk_e2e5Jf2w%(cU9N7c9FF6B zr4&oSis*=yjpp^TVN)Ce`H(zx_rZn#kjc9;KmCR@;)5Z}@wmSZyKdmNM(9G06NeEF za1^#zJY4V^+7jJkpJMn&CN~2mb)EtzO{TnX;ZHUI0whHmV;l!0@mH*yLPz9P4CfYL06G8yPykc_G)$?L1oVm~Xdx&BL%>eCT~b2iz1TCeYuHpp z>(n4&1~QSls8K`=>RwUKFiN$t1BE@=&wjCH`xQ<1vk7!N$lYf` za0jCWdz*ZQINQ}e1l$Ayz6-0v8)i4aR zgC<93|0Zf{z+xmN8MB&#fU{nz!!av5y|uymyGE)H3vvM90ipDq5vGmbs3AKQ#d9<& z`|Za||M|@W5&!0@4r{ly`10>}eD&OMcLNCMd8$JIq)BGMA)!JG{pLV`e7RPZb?Eve zdm)#sj1Vdy6OphTh)~R((47NF6`*UI0t84?5Q#Gb*!2_8^Ill^*00ec-J@>1epjej zzd7hs0_==&f9%Ac--Wky1OmVl31j<;RpzhWd{!5PPlmByris=@k zrPv?84O;HH>Mg6(T%L>HDLu3 zdb=7$OK|*SiJ3Rp8p>HhGhr3AmU^5V>)n25_!s~ba9MKLt&m6HAN@YR?qR$Sqxe)sV|}fED4K&go!{zQ=P-pfB~X;!R(#kFG1?^V9c^k?^IjX6wpkm zi2w9(a_9iyfnaOws_!=`c~j8+4mW>(?W9D%w)J@9Z48d_H5$DAyMSL0@FN{GfzVKe zQVl9U9F}z%5JACigf_JD_cA9409_PwQOOQnV0jA?1|Wu1djZ`As*M2w0vwRqP5>IB z0D-ssIqduwu<`96?VN>R=81LR(SI0^?;MQAn|E=+V2>W2d#JbE`|CFx0f6TKr;~bW zfA`oI{{Dle_R~LN^+@QTA#qSNJh~6lSnToT4Ig_35f2V^pKOpg4~*bT*<6_~JF46H zvlgs?fNSvIcJiCkJO%+MKsZc%=I@NL>`PgtW42x9w$6H&+D|;&zy<k50U4`Um*D`BUR)Se0xvfpEYI79xfL z=mQ_lhC;#U6b6*G=(0LmhNG9x>9OZ$@1bZ0A2;fb$%x({ROkTUc@QK!X=ROm)1lvg zL4My=16&{A$O5+Jcu5IfQNU}y3rJv0pqRdgni5QSAg$m50LxKB0i~A7@=$6*9MUE# z(Bdv!#;U-F;4%UlCXi0UYp^CN@oYc{x(;|+M&hn>@bcG#;ZC^!H(~MsB1<2%z31=9 zlW*T0>7C@O8@JZnWAEHl=1=Sa0dRol0ytev2M#Wtc=I1T<^qv8EsDnez29Vi`VYWm z0C4Zz=Np^u^F)B9$$qSYF1^DhF-@m|9 zFaZi62q0ajusKl)AxN;aJ02!n;Gj7zu(RIbQ>ZO-KUaz;6>rVYPgNfHkoFR)ag1fFVBymWrxs#Cok>)wzRs2MaA2v%||U@;(w$*Hpkr;+5&Axgph z&sUod)fjhiIxZ4nUAKqCmrl9oP&uT-$X!mtWQ00ST(xGp9;Vzxxss2yJWPRkX#@BaFDvrzWsecQyDPYn2U-6~Cs;Uu?RHFRSwfXKf zUTr!H+JJ90R&_i-l6<H-+7DH)d;KYwctfE+XK8cLW%q(*zl0s9|3oj>T^F)aqGeM| zL4^TO1A)peQlii;x?rH7fMsaA?7^Y3vg)%hg09IW34nnGA|Q32>7L0p$j`(3 zQt!U&gjL)Br(s~j&g8|(7rH$3SdY-mPGp_q+%2CLKK%cF_T^7~@_EDl7n~6^fB^i2 zJd_! z$K%$QFQMI9aO9puE+*Rc0`xyPLK-*#U=Y%Y4elLFu-@M->tsB#8ydbC8QK+Odr-~f zb3aOlkuOw8!v%wS6t8MMso}5l_x|+qW@ab8C+II^5!Y#;rIW6hd(^{`X?}RH2VGJ_T*B7Ql)Q3{?zwNLG^q9H%pe&{2te%6(+t zf%ws%diL2*Jp4(+{ukaSqyYrb<1zU&jWs%a+CgKfMRnQ;ozst2WjeF1nfu2YW!dqc zkpKb!Y6%bS=8n_$i1709CB^C9;^0(BhCtZ?r$Gl`t4CV>^c&7&)yLvom#0eHqHC}; zN@QR$Wdd#{ES1_ zMcw4aI(1oIyaxC^OaO!e_W6vMd=qO%V?NBId;QON>(@?Ny|ATydZ7QG8T~EqF^cA4 z!=D=e7}{M`tcI=t3KIY(16GKNT?h!&Lk$D*N*0!602Bde zs1ShAXvGN$gdqU+gn)HZ$u6B2_&GtvPSA(?D^xqc8B)jx2nO@V-FcbAdB-6J zfB^(#I?)B1nMa)9impupSFb%YZryo8X)PdtkTv?7-^yd~R~Z_0da=}l-0fH8X#ZwJ z=igb(Uf3M6W6`^+p&ldzbjxnUsG`7K%Dr{`jo=MnNMRcz}_4z2kW9@X$$sHsG{y z>Ezm|@QfnI&U1>fwy{W^@JDzaqF_5c0}>IH?0EEtpAM;oq-baz$Q>zS`*51cpr z?`bVt!@bWKzxx8a((hIfj5NRkA{c@l*a<>BCUAwJT@q3TTdchZAP}GlwqalT1xmIZ zYB?!uaHRD0D0VJfBy3b4fM9n5h#{43(x@}bcOvA}N`nyG%0=qkEMCEs$uzSIhaeaM znGuZ=Y0~apz*(DVaHL?c9;Qx zhg|lv<6rMs-!JP+@upX~_5u$lP=yi?w=KLmU)&5PcHOL>g{E67_zJWDJkMV&)6kOd zZdYcy0aKQuHp!Q5Ok%O9Bo(-@jr7!#N!8sGSI#y}T<)R&Oczvz=uDAu)Lns_u@EYv zP9~Jg=5GiDMV}39^98R@?R6z&XSWcbN>u1Pn=eg2dew^nNW;vc5jY`op{y|?>U2l9 zl=sG`4?Xeb%&;eGBx|CAh5uUJevjPy$M_Ffj&B)6z4n?KP2Ll`19o5mf#kTNS(B7p_rWnIt2pfGZn5puwP5>g^N}Z;v+8w@lOgpvAyEOj4zSOD6%$-)?6By4Is1OZSW2&EYopeo%JRm5%x=vxR`iC_>< zJOor{#bK2(tYm(E#2k90r`Dc%DjWXYkhBG*{-B|HI26ht*390EC@JFmF? z?U{=&nbKi#bYj)l9e@E#4d}ZicXVRf0*vB|g;h$6yA)^ZX@S;Y_THGzV)lT~U}McfM>>BC%sl zFwzp>0DwRM>Ef)$deV-I^!`>>Yu!0@Hk@!L&VTedvDqsr`a6z0>k~!%U6+k*g8@<5= z39ZdEa``^hy7=L?dVc^J2yifTR_AX9mj35@-PpUXgMdZ8f=47NOF?wMf7u!hzD{OsOEv zn;c=xv9kw9a*CX|XDqYZPT6Lcai4QC93M39ergD%Pc|(U1(*i3Q*T{vf8P*aPk|Xq z?xp`D{5GrSYf?$nh$O4e2GE-d81`t{X2MB~ncnA$a zZ&aZr6s};sz$1TwSX3zLC!7RK&A3e#F&trmq zo*#axrj?;6AO9C$Z-wT$O}6Mu;`SF`z+Bd4=8r|%m!C*%o>4hgm&%Rie8Fg{)~&CA z%o9LB=xDUuQPJ>3+sF4>B~m!+|IRIC6o&{cpd{qAs|BmJ4Ot=>yFRVPiV(n!@f8*QX5y}P zU4nLg5d#JRqyuB=?tNi)+SM8c&+hS&i;?c9CsKMgS|$oG4Jfnk_~_QRK=lMj(&$Bv z$PJ!b#MA_5HGjGFL0XUB*@Q8%VH$@rHF)(uD2Soupo3%d>H}AOzU@yumYlUf(=(Jz zW5A+c{&9X@<^?HTK`dYe5wcf(t-$ske@(Er{Oc)5aq3pMJ>>p5r$M9&4cFppbXKdfzCEKl&oA; zz4ocUA)oj9zkK=7^}lS1f4Cr{3INX&5S4Y~IY+%4uQ(~&`>uAtqfs~UpHWCn1>pHn5XbA}fw{EhSB9;6avZYnFcjR~OtMi}bt`3t@~R_l{`b~P-ANHZw=jSQ z7Ia%tI-==mK?@=R42wzL0R&;C97}J3P@%w7eM_wh z0RfMWg9J@8;s{HUkW=NPTskwPMHGRie&xJ!afGiYDH=KX%v!4t9R7Rj1OM?C^wfvn z5{v`@L>3aIX&LM~B{#ldxy`?Ba@*;Gqs!??eiw?ykFI6(bsfHE1knHhp64q9zFu1o z>m1%LSCOh@wj%UjNz?@&lO1Gfr(Z13hK>28SEn+fpnjw|rZ|x=J^*oy^*PdE1v_%A zhDZRRG(Z6S!xqxO3LPW}L@fLc`9|JNWlf7)pIaF9#mrwWivSb5{EC@tbHVy3EIBnSd zkL{|~ixUU{`ECot{Yzz}{pX&a=9{L!lAgGhSemo47ky_Hgq7tfZrWCH9`Y04j3&8Uj1Of~~xK6q>UG17~?eyJo zP|a6ytu46oLOAzw)Gf>jrU7=(xQe<;C^tdz@E)!e2u!*U+`I&`0SF*Ui3&vq<$wb= zRo2k|f$jABlFmyS6FC&sX75(B{E4(#pQwh|>Wn2~bcj_pQLrjwAWts*ad}PI1v`0q35M*1Ba`Gp7H<)E(cJ~^*WhBA|Zn;O&iLPilceJ zbw4J#A2FeeQp_>AhfNGvIv(6J*d4{gS2np`))?D80s;y^MPhODdExNz8PfFLw~n)u z0Dx&M4ajI9enTXJ+=)^36_DA_8>f^ZyKW!_FrF8u?Y^Ttohq8MXe_KS0--L!=ET#} z#Tkg#1tii(WwwV(FgZxnP#z#S$A|bY{k0!C+18@JnF9D&%!>2HK z1ycYJ(k_|1CVhqgB`YSX){#uUjj90kwXdBp-&I&WD-vfYCHJC zTw?FBg4Gf}4>yUsDS!zDIIfC`T@V0@+-?9~$iS)$fKaj!V{uZFaum=T>x&K-2&<69zWxxY9#Jdo`2{1}%cUUi7tShrV z&3gb#9{do7K%>ZG+1<`@{^%)+3!PWett7K~_Hbx){4r<&rLTM276cH_cGET8ZI_{X z-}-_LoSo3<`B2S8HCId$abd&(crg0p+mxFk<)+KP!XtD6Ap$Uy%=O^TU1GrL7BO=q zZ5#dF@|4fadQ3O2v9i7K3B%W9QX=|8*`APCD5bQO_bcD_%=ce>`l(+aiXm9Z5n_%# zP#Xhr!r=*>QQ3k`Fa-lZi3oAQGz7p8SQ=B}W#~|FP&V#J1O6vkquhiQ5rPu{3=Ed48%P$l#0B~@9f>$?l3*f~9R z%<>&9*V7v4D;KGE*_bpf$=2R1J)KQbw5_YFnNC6^k{mcZ`%kZVw)S~{bOwwA?~=a8 zWCDIr#ypnbtMUF@zKS>Q{fcm{3t`Zbfh?Q=S_rBo0)qCouNr2R5rKKrM)U^4D7`w5 z#sZnsp1Ni4og~e3A5A;>RGlVNpE|!deC#2}*8^Z6pgY`htbg%1)we26Uax4o8Hw}< zTCiGb??u{0qEG;QK!d*!%E#oCIN$w@{T}uNAc-8zLVy6$fw=ThUiww4Ac+9j5C)Jv z$v(OjgE&ay$DGvsc00Lz_c-rpfgj(>_>>HKv4s&OR9yA!koAwX84L*)2%JM;00cmn zIs9N+5KzZ3RodWOp)g`u0|e1Ug<0tkL$TBdHhRS)aUme2r!<(5CZ#ErVU{ETq-^+1 zwoLXY2N1hQN`h~+da;8U?GRAg`JCCLB@+QLCMbvm0@COe4~C!qz7ONF??$?ipRkkQ zeMl87(a)Xx|MUk3>uY{&O;)cboR=V;fWW6AK!-@tU%B|L*mL$CI424MuY%JtvBo<% zS|JW`K!^KvQnoJDUF};~nl~XTa}-ACR?|tae)>ToYC5Mg4LqF&fsxr?208QJYBTLv z*m^fNES624E3UgGvypagdOU50HPV@OG7#f4Pzk$qlpdCj8>3JxdDuPZ~~rL^_b3CLM221h~+3`ylKhKNgB=o#A!(UUYwt+mz@wG zO+o}jGQIe*{ZCrb(JPzm4cJ1;t&Hah0cb6_rFrtxBmMvS2OW9xNmkYg3nB|5052$w zP!OsU%ad1o;MHU#EpfWKYN&B%usA4%ZfFWzKfR(XgZn*#x3Pz<>aF*45d=Vn(>kFBVzR(Ln>N9>l3CWr;OlvN1H@afCOn00w4el4PMs1mJa`& zN`Bo(d5z{A(SkKlS5P;{_n+t1FMRoK^QNDBi~D2|2*9HNjQ|Ql(EaVubPI$JQ@DqA zESK~hws#ks==_hsl5Wc&g9wIcK02sfU<`dQU#LZI7CUOmGyn)ew78;mx&FC#XV~Ap zM(#QIBWbVX+`N8pe(>lyNY?=fAns}Bxa>8Wh0p1bj+NN1N7^56VeyXQpGSI}fi4gR z;WBpl{PNofhyXl^JqrDb#~Qu_M}R-QY*|-SFSU1qORdzs9{$e`9$P$Dz|vs8iMKx> z2YCX(A}bgwN8(eN|IhDaV!Wfb*<-Aw5E(Xv=&(zYPs+oUDGyZttvQbEsrc`MV`b4{ z(Gfr)M30i{L4d;8N;Hg-tCz?*U;rQ}hLTsN#VsuW%>o1^j4ie#wLDb}1_T_6R;d$& z4THeQu2@!g>jmjLX<&O*CEy!%V|ts~VTR^HK%UW;ZFXA8=(HI_;mHvkc@%#0|M=_q zsu!24$KO50C5LCBcQOL-I{W5#`^zV``ra=-Xbycy7EKDLXe0_c-I_OPOa5q8`9{NV z%fPZFE~={Gh90Uu#Io*P*TPagc$+l)#XBzs&e4gPmDjiInVL>xpS{^3Mf678!(XI=Gk;&v5u2_I`k8>j*qB(Uay)Q zW1k6ZO|c$aCRC#9DS2G%=FK&_8KrW=IN$_9 zg|B%g08is%*WfR|1#kZiEO-cBo_Gr^-Tw@C9NXW|=4Of%2jBr`$1QW(_nhr(_TOiU zjDlu3Lb1?+qHlVLE_*4Jc~CoV=HWg((IP=lUc4cSJ55pJ{eR@1*1>IF-1yG#{O|tP z&tRKVF9t9M{H3Ga;|0DPAZ22;)J`NGg)h|44|i_;9X2Z+4|JjQcB(mk-d!I#1Yz#I zLFhdFSQCCQ%fdq?q0JsAmm~HSp>&t#wPT7ZZo(rl3A*tDzWX(MkWFUmWahO{M52q8Y7>G404SUp!QuD8|NTF3+=3^+10MNCSkin5OTFW6 zwEBbFQL`;DfHWif36G7z^3R&(oRA>_1~kLb6agIUS8ZAb3GrgFWc!qvExDF3Zq^=Y zYAqja847Dgg7V$N{zm!GjjsJ!zxbSQUVx7sSe6kdNxl2i=)(jfHUWnrtEi#6M0a*? zlruVuO0YhP@6H>`YlA25gEY50ec}@zYnh466j?AF2WKO63--cg-Ky+@B*| z@nj$iaPFgA`3#Q7RscoxuylX{BU(d>z%751W@pu|Gs80xIzT>UmIP(cjp=V$9OkP4XP|LLMxb4) zQVJix4uAPAc;+-t+-)6~vGt~lTPx^zxv7(!8B$Q$vgUDZ&mEu-nh zsrnCZ9~u9H`{3~`%ioMjJ(Y5Kj1Y(7K#xmwWLJBuTG_T#x=UPz=-6SJ6UkE2on&Y9+gQtF2o~p{s-IS?p zE{OE9D;$$8C3J3p2(SS~qczHOtFO<*{H+i9z2839(XANsdene=AOkQGf`Bv%@F)m@ zcw~m?NTU?co>RPAfmu#tJ=28T&+hBO_003X{5Ndy2!XVGFt7d!^^$;OX_H|wg$Z@` zdE6r|ExXtOvj(%n2ABe&V4LNDT8T>^*n|c`wCpk_$&il6av=7F!xdk~bO~k*p{XRlTUiW&ag9m^C07y`qo-CI< zq06tGXdQ|j`DeE!@z-yv6GLN;+62IRk#%PC+5`|Ij zYhUfhnlA4tIj%&Llki=%NmkN7-U2 zEf`26INW~g4D5LbT|VASN4n=cn-?j}Y@;VlfI=q(=r8hn(3;(GAD?k@lX==huGiKi~#EfdB}gU7`j@ z*(T=`8)G{ZlcMMXpb!Z_wCE5P8VUhG)a7O90AM8r45Io-v`Y1p zc7PKgIL66oCv%KIDgY*cBN({Vi_LXepENDY^GY7}=AsKL^r*C0Y+vs7GafnSWsl27 zmK#PEAPY%m^F7Tq2g1_B@_71AUAabW0XmRS30y6YXAKdmrDX$%(87Qrw80Pt_?OZL zYZn0K5WdF3x(+k^BzQM~IdlkoXJ4zJ{_n0g2U-(NM}!3aCbl9<^30b#8%2N~{V3 zLcuto26JT%T4e-SAfSk&R6;zi3&EB{io}901OO^D!v~Kcsa1?Z%bWgChxO%dLWH5y zqL^EfS&E2&X*l?e?jqGL|9=BQnWEWi^&$teZfP_iOvu=aQ%yxFL3c28=skGKYd#Nk zk%GJsOnE9J9vMfAL?@sr$PAShNsiUJo~F(Edp9)V&Sw}~J~(XL|HL(IQ@f$50I-jO$!a4-adrkj;q`M#5R;(ZakV0c~KNsK%xDedW z@Ho9v_nKaY~d|L_5 zwN9=}a_7;XLeY~WXIx2Q zugk7nDKyy#lLfR!Ln(z+H6l5Z0D}k>4QQ#s9Cphr)L>C8AcG1z$Oi+A-3>aUvMcLi z3I+`T0hHi`2hajup&_m7rtXC|Bm%lY4MiuVd#b|-j;VlSItsb*Z*hfZk&jLyAfCy+ z*O}z(oRq@Afq>o=aL4ONAOcME%fsx_aM6Bs$%u$m76t)`3@8W%0MZD;Wv!<+Yqx#k z>b)W?YQI4@mm7wfW?l~Ed$nWx_bX-n_g6gS2JVSRU8K+X!v5UYUvnYH|H1i#u>6N? z0Q$P;q26LH!)d{+RNkt3bF7EGo%>UQcF}hFIB!4&pnw1Xn=q5wn@p`EV{2h@iIB;-a&0}D_n ztR5ly)g~Q!iRb}98wtXCc`W_4n!!QZLYvHs#0>%)ts$9m%QXlvT7O~cJR1@KMDjMj z<6;@lAk)y3bOOleY0%OHhE6>vk8ZoDAKWc31yKfpG&4;IGC~$6N*%PumG{y6>~xDS z9#)lMplbst!17vOKpz=oWE`Dc&0bswJBO&1fmw?IWWQ-um|9IUWw;*4%NlcbZNwtCFqVyj=X-@Hhk(H zh#jpRcUa3NJXY(NvuK!6loKP!)+%D4L~v&REdMGHHTY(E}}%C zTkL^Y0kX@eBtv?^K!{biGr$Qr=Q2qmnY2KZaqxSKS5Yno1eaUCD;GJKbsPa|uYSxd z3|OybfUvZDd6=CVF4`{&!{T5RQpms~BNWYRY1b2N_tziZ*6ej)U`&Gwkn85u+q$~_ zZRBW6)^gG!VW;nuep*8>(JZ@V8U z&Ct|ufgFUvoOfZ#SJlZM0}?PG=q&+hVz{vusoe{6{j(>z@>M^0Th@B@_OpI^RxO$@ z1_=1&UafEb-}}Dn_;>wRXxAM{ED)GY%n$<5RvV$kc<6#Txglv`$=gN~x?cZ6><6Q= zC+oo!2$&8e2#F%0qxR5H7bh26au9Hki0EZmqNs~jsXm@Veq!35G77o(VL}2@0!)Z_ zinwZ&wS7`<{hr}axz+EO#&!P+=-s(X=T-g29S{jEq<9_$p^`e9dN|bkg=dm<4FdsYpe)SVby?xqV(H5#Vp_V7?NB7ok2$X5(`zk zQQxpTYr49W)s`N~(XrEO`NABAhJgg@ME6vSf^#W>%~GlwS=@;m_u@4>y{2>$99D<9nO|jiB&xV&Xf!zrLU@|Dgksq{H}*fdBkGhNtcq!@XbJF8`W8=qK;lxd+zd ztHx6jwc^EMf}H+4&)@s@p}*Vzw}IF7-ypYsNw*{tzJV=Y^u?*gWhu*4SP}~e0D?U+ z4aX4DOC%}F5e5ot&_enbRoOu4P$p?{Ol2G^a?Sd{!EelaEMLtK>#JTu zaU*DB(zF6FIPFAeEh@E8KTP=Tgx#pd%}o>t04*GbRVK7#b_ogq07Aj>;^5uRXFiWr zuMUQ|Gy($P`7`cK`ROI)`}@-`?)aPSc0cmxw^13gfc##877 z@4zqvbG6e9ohxcMLM#b+7x20)PhBOWA4WopWFUgs`{Yw)oBRGi_{>7VPo=b;jKUe?6IQd~bF4 zAL|SRP?7j-Z12MQ2*%DjR6ZbK}TWA z0$td9KIW(H6?k2M*fhLf<^`l#J{P7m`FoUJucDhxH7}~Ew^A>$AtLc+I@x)Mk`TEgo-pN1N{5Z*5ReDkc&1LOUG~2UNFD zwq^0t_``~3>!eO85r7f_!UXAw5J5{w4My38Xql8{u!MjLN@W|Wqig_^gxPYobXAn@ z0YL;fB+$Ag}H@{i&F+6-awK(5Cm$-!5`G!R&H_#0!Ud(MO@ViSm?C@$S9b* z{xRF;6SWv!yGu*MrsJXzAW(HisD~EK1Sy3xffm~G_xNys8cEoGN$A#>qXY+}!dFq{ z%=E3j&%QbS;s;-BX;-z;wghCr-2vZ95bQ9+!c0K-!wtYFj0YSgE16N#-UAGt;svcu z4-Ro}6LOUv0y2UIQ0h3)@JyxhDue4fckVO`^tmh-ZavsXATw^*6*^IwX(gXLhWntD z0fYc3ljg5~FTQr!iqV2&YsaMQ-Q$sSRExqc?Gm~mVUv^+(i+=8@P7{%%qK=1ThUuG zQXLV9fCvE$*>r-K)d(04sSTYlCpSX|$O1zM;DBRsw%FX=9Kty00RaWkf<8>c^?O)@ zio_m9V11Fs2}}sUEI>L0{g@a^0LDAIvmSZTxS>z-J`=K5kdQ160vS!Xoh9=DGT#O=@Kd z7!W`@4cIL)x+K&#)l1sF2&!g@x*>20=oHMv2h{56G!I0BYh|oCxdWB}5CxLxlfx&D z3NG9ds7qNbdDKEVC$3LMHTI%3Wuo7sKZtuW|6Fu=EL_3MSe%>+=QR*I3Vo3Pf|x=C z0flIC>fmxH!K5sU1!O?OWshqcD*Jnhw16%4LMfmkADnej^sEa4c*1-Y5&gb0# z8ln|`FVBgPUAJBlbb9oS_Mrg~oNsgzHQ2Q@!dFymcK9oZslKIu=-SOJ4V(6hq5uMx zCsz-7K#m*nm1D0>d6REgUW-eQ&}hmU z`1P}pUjPjNMM~pL)zsbq%~Fk;te|qCsHbhjE_d7=#cC2oQuti!fa3^8T?O zJ+UGko=y&xhH9}+5wRdn71=(~IjwPB`p@Lo1!o7`0~0No3JoAc02rW2bXKE%Bi0cT zawBAf1&Rl>clSjrI>|Cq)~}cg2xyt1T&~@*u;Cb@H2`JV1W?5Bc}1O;#8t;h1p{z# zMeFZYZy{A55>UY6&37U)a~?8~AV<1J6Q_|M>ix2tZ8jEnK!BN=j;3<9T*44El!8Au zp9*hkJ`)bZ=QjTk7xJ-YqP%%;j3NM@rvVYDpnGTQ>wWgZH#8FoR9e93{t@x()FV8g#875rADuq}amI)5pO6~n+NhQ4+g&i*I-a_X z%DZZ3T8gm(Wul}20POBK*b$Z4hmYbuw1g0#1pNdStYx+JAI5q0jF6YAc8aLPyzl{u zQ?RSix_NXmxaIQJAUk@nA^2h7;RLfJk&3C7Ku~}r&`Go{L4<&^FHS8kNeQOHvRH)- zLcpN=LM;kyiQF4vugHTQP+NYnh2P&=J4_e&AWh@Z+&1kC zDhgCi8(D9Mu(bmR_nuCcyyc|@76jA8T*9N(BhUbv29Qfr)fDb2^p2{TiW=utcB>%U zDEz9^8U!qoY7qm*$@Y|r%EiRYnv;6~5IV;P9CpN+G`SaLWeXRSKpP<-^`b9JK1H~G zIfLz*(y;)E9ns@}5h7c7O5V<}Kgz)jfT@mDfddc;U=tVN9uncjM2LjA+>%VhhgYu9 z-LL$hN&FSI1pyVt56^lte|*JWVGV&yNLnE=ZgW1~KstdN!vUsc@Ano)T)Ds@vcos& zMh*Ae;xPm&)^R4KN3f>sXq%QcrqRIlL7VM$R!_ej}- z-2;Qyjb5G#-&sf%BEqhoJSF=G>Hc9yU-6Hpf>|jtY9q=0AgR9 zUR;)<{4cD41-Rn_ciB&rSm=ztiAS6DD^7t>042QYZ9Ibi+{02BBaA>2(t>~^2abZI zQ_zoy0MS7t!*x%+N3Uf}KnWHPgkYU0tg;}H61)6QU0*cw8+9-0d|A;m3;+SWiPSvH z?D)#jVv|3q%k6FR-i1F-$IZe`!v%`<1T8d1bdy!**W&FD+Li7ro5Hj$0WhIB$~Yd~ z{Nsx~*S_&>;_5fQUAcea3L|wog!LvRf;u$;XqGByw}qN97Q~Ivw|DsYdLvxkJ04k0k^M-Lqv8Cep}gO%wXVgudEV*&nNejUOCl+n#N+C7Tr=dRyw%BfhxxA)GP8 z9%feJsI z7zPK>P=|Spp(u23lY;T$Dr^{|S=Jycy@d%yf$gvj`+z$D4dF7shwmc5@SS{z;~Ab6 z3joJhy+pO$`lM+EaLQBdScW+(CNR=^n~qL2!n24(Yg#Hm7lKSvVwPwmEQEq?E`9Mr zywPGf9$%$Y zKEnMDp7qctnV857xN?M$0T7L-0XjiQKnTJDLJLOOhG=QPXbFK31Ry~G0zh@n?YHl&yl0VicI_j3ll)MkojZb+1{%cuV$UGUu7BTxfq*I|kI? zbbm?m~S7o=UPwX;1N87BM1z1Sfmm_ z02-EA+`0DNxqEH+S6;P$Qt!})f+;3oi&{aUD3Ic(%p(#`4X7!5*;hG-4kit!@6?N= zc6bw|1u?ajbfmi*{hjSR(OMx-TJV8-Yc||Jas(0p5I}=RlN&Z_RE&BJ)Xg1DVXDC^ zo;qHF(8FOMK^WRgXkmMa4VVI>$3b!cgfm<)$?0(}Uf?~XxV<*ZuSQUo6k1nkRm~`D zq(G`<*DBd+!hi)!fdCK)77#=@1OTNx4II%4X=Jpw8f*>?e{~<3tt>F0ArNIKAcTZq z(K40_*{j_DQaJ{Np;m+zm}0@&x(9ga)-#qf zxah`u!){f99j(nk00ac^`FqoF=L2dlC8M2^TT$hHym2_zNIl1EWF>CECV+zL15^NT z^+K(y|JNSNj+hB&1geMQTT+AC>dx$U_uuS2Js*jV9sgL7=0YSJm%4I+y{bmdM2aMn z+HD~-0gTxu1q?)(%)#N%WwaA9ugCaoKpG38SCq0eqJ!Cy88ZtrESLs>P_FMhJM9cFbO!E&89+&4y~)O&_i`(KW9G`NXsmcgC4gvkDbIy?7pgl~>&CUNobOI0 zk*flTt!7*`mJk2|1Q85E5#!!z=-NjdxRgK0^zt1kV@nwwcV_Q8QCoI81Lpe%V|~LS zC4OOHVTK@pA*ef^f@?+W)N!qta)yT(S#gO^>;pu`2_TFBQAiw6De)2uw-(tzK$jGc zP-WydQ$w(v-!LFT+%OGI(gYN37(PfsMo^|~QGj%*^b^dUXuFyBni#=y`>PjwdwT@PvtqW<}WVDI5VgIEYoE3>9cS&{h)Eu>Q&aN*tC;3s&e~veGOc@+h>A2Yw2+`sN0Mt&I9j{9lf{VhIbBDX|KG*%+qF znbLa&8bR2Cl=K${QJ%c84g1O}l$xSt{&A{}psw{tomsvENa-o!vR1(5K82@|#!5Mc zTRC;TB6_R#M(5)~0}#-fSV+w~R|G^s0oC<(uJcNHyKSHyUxm9PR0J_YCk04>4Ivaj zKpKT3kpY<>TfAjeJo&lV(z%5+)z!gLy(p?;Uy#`@Q;zj#uD#`TveDAqth0(VI1qFQ z1*%XX^>BvIKY9JrPdxu!d2`oy0~+b;AF61ZBowO_RSx1uLLH`WkYejh8tGmfHPsbc zPQP?H^=i96vHwb-gajg}z&Dyr;~FVaaE34>T$o4w{OaR%(f%nb7_9n{Cw^|cr;Neg zTxcON1iSj2}ZQ`R}G6-~fF1mhjfg)ZZ4b zSNSbr$a`5&0CoPVr?ELNztzyqPTqJr)BqC@iH5N;Mu$!wpf8xu(fpZpN zP^%LQ1PS0E0Me~BW77s*3m-g&Iar30WJWRrt|A106v#%9@WJ?^U1H%@I0iC=Y_yTV zm3y0mGCt@5umu&Sp%Wa1VemphwhCFy+B74MtBn#0fjHstk0wdJ11LjCjsk@2nvaI1 z1p<4hGfnFLx2X63G;}qAVIM61hZtVg|qsiXBIs1P&ic@Gr5!?mjwbr8Y zYZLKy)_8o!`(0j1!Jv22iQ!C`I?#loVC-}AfSUI=cP;t;cl6{fFJ3Euh`;;ohu{$; z0LFl=5Tid)3djqwKoi|73nj08FqwyI7;SH(BgQb)Oea&rGfNPG_{S40$~1#2zUXk4 zzE`rQ_yr$V?wSV7Ta3i@$2DIedS4qheyJg)q8!Mh%&@vQjrtJXN=w6o7YD%zI9 z6yi8SN27=rt&%f{q8JVTaM-&6tkt5`i-W2XE0+(Eo~z{H z#ao(u^*=vTX%k`+NW0SNw`{$}G&37zPzS6BL~cGEu-^x+E-h zSt<8BI2*;+uw)@rLqZCG07?-c2pSMaIJ3C0$c3q}8Z04@PmRWgfldLYhCtB*0SLmv zPz_xJL+6Pv%mIP}`T@9fPr9QvP6{NBUpL(%41@?!Cf%q}(#j~M&`6M< zZpzlW$c@_`7amMhnW!Q$V@+s$8A@K&nNp1V@wUeruPt@)dd3NIF`}gwYDpn?Zg`HWvO|;{zwz3=2QCQm>ic)E zUbIfW_5@6z06f|vPRt_Czl^XqaPdmqeyppn>N;A`qYMBpcwZ*rL(3x`j0# zr*EZzFeeBE0Sp182te2=!kNuDZvwHN<2~$m@UjoHz|>5dk0S#FfB=L5p@c*c;3(B0 z`bM@coVe#$I0p43!2lb>v?RePfUA^X{=&d5>JYxrdJqR9CT$WXI|UvQlA6Q6Sh?P) zAc3^F`&xs9tFW8TUG#-5YGLg-B`$v@&o=Xi6E~mFd%XEIjs%kK9H{hFb!#AAp6htfpWI!?3)1sh=Mqzq&Ii=?8n9qjwrE# z&pV))`s1JCd*0&2o7KG85w#!-QPw4YC;u0?Rae1L7Z))_EnM?2XB)TpsLX7!K!Uqd&0soARy$N9W8v&vcM{qNA&`%2u*&HD z@!2Kd)Sw*u&y=|V+xc5u35Q^o9Rg4R8X~N7ShcWS%k>hP7>{@Ipqo5Ol*f`8Uj&2z zPyj^K5RDD&W$Pez!=$VROIW)USs2*dgILLfT@c?ebK-=Sd(4BulQlR7L}Za{qCg)fMaVD(ZJm$eDADosyWQq!8VqMjuhwb6<2vb|=SBn=8j3lY;#N=#GB z>+Quh6*YPWkA>q7vu!{iN@EjfY;{(R?GOMpr?XzQ@%Z&*e(o+aU2}Gp#sj%v1}tN3 z>Fl`fn!NG)V($+7QI!iQmCzEp<7hk(IheCk^(}rL;Imdg?6wbVr?HXxRi#ro-$eR} z!Rgj)8|vc)5i~)_3HhKnxHhq$-kQEDP=#{}k+4PH>ijey_+}yt>OP2SmM9Y>O5pD! zYA{C-i6-;-OYCht-XFD5qG@CF2p1}&PEIRr@fun3G%tmDu~NzIzV(q)<1arC_x^$< zzyMGMcywa;^bq7V6n*P|9yyCrnbl0}$4vU+AF{EhjF%2=bBte%6#hkYiyopIglR;f z4cd}2CJ;h|Nc3zt*mUBGycuG@or4e%STYmqaRfldP!AeH%uQLsAr@|joFGIGsKTJj zET{`Y)37hw2ZMJg2T$Ix1A7@V-~;#wOiQ?|ehVCmvHx35zopB>m>;lwp}iUHIKZG7 z&mfwN@z&EoN3=BWA`)7np)rdPDOGoE>Rq0X_u97Zh_Ax!t+0s33ZayuwMC?>rC}nO z$q6thc28Wn^Ygc__+!r0^FGpI>TQf~K->8L{(0Azjf2fh4HN(TLBl%6lqjhDpS>Qb-($viM=SE#F0J-61x!b&=G`;0DF^S;zCZD-gD6A zom&>KcOL!uJJ?r&QR|~W}EGRfZfjUC3+GhuuD}g1Fb3;TRZ0Bh5@#X zC^7+^;*aHPg5k$(oK!rR@Rf1Bgq>QJ&CDY_?BcPTI!0<>V#HMd0uWWo04POFY;tyS zAsmOvuqrZ;0YyOZ`2=Gpsj?1EQG+o&xDdX=$j*Xk!^)~_pAz7i)H-EBG|aeEXmBD6&`Lg`5WbTjzv%scJ5)`yaKBA!MQd|-wq zBlYXH2Rx9PBatLQ019UdL_nZ|iE8Vzt9jtH&5_-AncT-P0q0;zf=Ct{M(Zi(nLpou z`U$`JNjiW~Icl1_2@+f)0RQ9q%-erS36M6wyBwhcAV4_^z(ycwEmM^cOzGPfrsm;+x9Tsj#ynR1ecQ2>i2zjtW&$L$EPjgOTI`Zy&BC#$9L z)!PS09C-IAxQ%hR44wIaiI&Q*n!Gj~LMgZRhy6F{l29gk6>luA@W?Zcr=DL5l!!#2 zy@bUpM$tC_A#){m^>tE=>_NvsGA0JLs#&+eS)TW>-^uAPu8OGzM-c=>#RWNWa&-|3 zQMtW176KU-MAYw^PdX3cLoV2*d01ZLLIpZ+@P&CHz<>_|=?;U&Z6X~0Q?=VeFF3@? zr2?n_PnuQ%1}>8qD9fa7ZOQMa5jRoaq^+17ER;R+|Cw*hygIxN*WxI?D(;JY(!%m~ zX>{!fP4kUu5J?UwNG)4fZ3E-bJqewYaBT_(#=)E5=I&Qbiqjo`+6#rC9i%r%a$sOl zS#LbpaO=U@FPOJKE(m|rMHz$$;46_(8Emr$YNfK4CRsY7two%l+{*=nRaYsmEb)Ro zV}ITh&xAyEi%i=oqS8!SagjK8JBYTz0LFL-axqzt01Z~{ZEwC*7C9({Z7C3W!=K??el09ym-`m~n!C|S3KKLOL zI?7rtw_Qw&3AA`h03Zn=KnOwP#JUt%1560nC#iO7N%A=x=3YB5dZ~hU;TEkxK&!Ek z#<4haaxq>)Ye5Q@UE!qv23=-A6GQ4Hej$2G#|^CqF(B8ZfR6%UgzPXkXi#zE@9w#W zY}u<=xzO%e$8p76rroUHPup5^zn6&;EDjS5VT!!*ZwD`uc>FV-Xc8cI9JjNi$@1aQa zg`vCagVD(=&hD%2iyw6m^~jfGc&eI9yU2iQky8Mk2H^Ru(rx9=X)W5n;8Bpo)VT+L zz1jtP34s(zZpISPolS8zH53oJihCTu7=xzA1&9XIQWh`*0f3oERy=R+ctsgL_G;j< z*Cq6~nyehtO}63h(W4bxL)lM^gPKCmEN!3R3wIfgE$`KjDN12T4co)+um^{ON#m)R zTG?n|v(ZkqR07FSatMSFq>LbK)JU_HV8W5JWMZe58|8Fy7GYkF#0b8HVWo zI3?&Z+oma2346wjrj3Jwfrs4cxdr0%ve(eQ)%<#1~Q;KE|Pu9Z?%!NmTdpb zLCM)a?@0lR54RTI2S=-i(KgA6GOa;l8WK5(W{3_t0Lw0iT?jyftdtTA06>8Rr4)yH z!El+daapUnqRpKdt8mV!Dk+nsN-7I>km^$U?gQHh;~R|qWdU0r01}Flhl?NwJ`Vky z^m87>B=OWttUT}FG(Zu-NGK7KOHsi>$+Gl-4hRt<(z0%+b76;Vh{GmG@da0rPGeC& zRAcoLx)8FP$^WzV3aMRe`Nvc8(EJ9v4&o&nTFMdpH5g0hYF%`6z@rNm!Ywq)S{Thqy2qp(XcXjrI2ma(K@4?~4 zUBcs}hUGjEga*{%?*=>8tY9ik-dSvhp)%B>0WGMDFmmO=OfMNV zLV#lDBzfu=NQ9>h$|_R}$=;={Z=P&egR5go?9e4a`&uAC2CoKQvP*F)tLECK`;x6Q zCW?YA_&^$Nx#8->J>4R=3$c21nKEfA6XifT7?GlpM4B0i`RG;M-h&$*mh^S$-4c{dx+Cx7iX| zDO_imVC`S-zQzQ9+flb#ve;=^x`hk@0WF+leEFLH{HNlJpL)SVj{$VpvCvJPE}h;w zJbxH!<#_UOPd%#P%2QZjaV!K7%8|x^Nl+r$;%zymFcCu-ip$sl*pCPr(So{mB96hT z00bh9QdGjVp(n#H_-~(Z!3ZJ%4;+}%UXRYdNPM-Zsa&A2)DP}aA!R8O8bo#h_za|J z!KsKR112IAj9^gRjn!+xGc(DS9VOO`2u68GD4s`@?Wi*^Ad+K^no+>j5E#e_qCkNl zAPT?(Lg}sM!|#6d(EIAVZtdVKtG_=L4OfGhP2(ATpNP5T$^S6+}27 zzyyTI^4V~);eZ5Q_Axi?iW>aEEJ_22#y;qCxyzv^*b*cQP)ZBevbvnPGkWNF)IaXFMZ$rU z>c-*x;icW1Q!GyDtIFLd*@$4qL5BhT6;FvtQ>ACRuALIp_}g#i`T7DQ)Gb3 z<*HsN02%v|E0t*&+Bnq=mt!1yIrMQdziCul&CxUN(GEP3&$p4Gt!h#4lUNm7CpId?%zM!YSwX-u?148xS6nhv?I2UMbdna=_@YLP!xdnt_fHPA{0hj zKmkz%0OV-qsV2GF!-3aMbrGbQA<&VTSgT>Hg^fCHI=E3usKZsD1wa6yfC-=*G(spD z-bLp@SgNoDbCL@7;9oe3DE2{ztq?sCuy%_K1b|W+rog{h(z2G%&nDSc^E^Y9L-6lD z*8k=DdA4(o8D5+RogX-qj3uY8x!v+gXN|*Os0VDs4Dj9*PQR#0q=~ z+1bU?l1n`1TQtUFFa|XrH=sv_YN9z>RgDnxp%(&JBV5_iixP5*6A(h`)K-c|zUjBd zow;Xh+bf59BqfbZkr_rx%C`*jC;%YtR)|b!fDXBUIs-{+KGI&KU5QYszzBSiov+MS ziLpVfqgIGfc|1_E1R--mJyMEBcCZ2sf_%CJ7Rh)5nklz{cvOq;F@N>zk-<#1cbHI znLCrGi0)D`l85or8~6xC<)nW17amdKANUE5usCKN)JeAZG8fS{9{p_u^H>Y7Do_*6 zXvKjDBM(}!PLYQ(6cB0D(kB#1^9YO(5F|wpV8|*8o%K;7q?BA_wBFXQ0^DK4!h zt`w(B5GsK;kf+%?OtgyP4a5qHC5Q>s8C*w}aOS?H_%k<(1$+J;dtm8O6QO}F9u`1n zMu33*b1T8EPaTuZyh*7~xu}v@xb}*hId}mE1h>d`;?|I_V^c6gu{c092)Y=>1oL5z z{JiyW($8gxd+WKoj{p6`!)+W5l1FHhC=q2LM1V}JMdKK`Fhl!=jsq1ouf#W7z#^~+ zy@RVCqV0{$Jmbz2az&8>e8RzRc9E)h6oUjVvaT1ny8uac@_flQ+BziA*s$uoWwhJN z;g;BadivAhuZB{66@Iytfgj=f_$`jmpiIeS3v-$o#)keFi3P*}V?dn0;ExJaqZO@D zg^=<>12QkCfHaEJsKlOVabxPGhyaH|)4Mbr$6Ia5B?7?nMB!xVo6J0Ym#J@n%_?(5 zE`$u+vYS0&p}_ex056Dws~YHVis(wYK!FShH=99_3g$dfL3B_Gq#!()vsREtY zwX+O()^I)9x{5RaEfBu_$_fFmd=Tm`ln+FLrtW@-_it&V$ znl-;@%#phW`PGmV=wtA$byK}^6ksBFbz+wUTF5h)a?${@09SQr%V4)&A4f6=(PRXv zK&`eR2XgbTIBv*%&7i&eU-Icc4WE|dHV!dB0cAj>Pz6BnT!ruZIX|=KczSxN7(f7v z0Du^QQjQpz%JbZ~PjUo_f-aQEC|ssnO{97wIMG=`s9Nd~z0N){^3&AuWxI@BTNFSf zL8OswNKlNEhdJ)yt()UMu69vO;A@zexanZGh3!Ue*|}NC#7LmPhkA|&JNVUa+yjR3 zr#%1v92|WAz0~e$e@1DjORY4ZSS0=_aH8-?!5Abh0{@d zjqZ<9i79p1n64}{%V_Iw&SJ!n73GRV3tFQBCm+kvI|OPi27(Z!sgtrH*KxUe&=TDt z&f1A($|!vT!i+nSvYA#zJBu>I0*f%qvOobPtLgIKZ$5nCa2`pqpXLV;Ss2a5dt#%jD@)|Ko_-$ z0f2K39%M6sBf?C~2#_GkE)>fXU~U9DAQ0Y_rYWzmuGG00TSDC>ku9*+s7z^&Tn4}^ ztywD4Xe&dYI1oS?@PDiN!Y{P6$#vOZ!h9fDrI)TnNO;XB9qhcITfSj%RUb(U;4ZX(LNt z8*d8{Lr#>V25qe+Dp1^VBt*y$J57}(0C%k3TPWq|2{B+&BFzC9P|C?7O0$h0H2-Xc z5+#rTGI)&!7s=;Bws)nnpKj7a0E-tLe!0H)%>UW!J^P;P2p&|11&(kaCN&cns0#_E zM)CFnbld029GnstfXp&?t|}Ji7^Q&>P6{v_ar9&ht1iv!b`78ne=jccJ0rxE)wMrP zf5TC7-zOkMR_EV&p7oBxmAaIrQi@P4m0*D#%wmdJ++4sT(Ev(`MSvj6W~Srrxbsu6 z3;3do!1U;33G6`gq2^4{5E970_InC|w z<{izy1C)T!qnANI35M&A@3FT5AscbP3N433W4mYa;)8ph_to8XFCPJw=)#6P%w;4G z+(6aiiE04bTJ-GAGh~Vw69@%_(Gg0Ld)SdQ8XKGwm<(1pC_8a-2*)`m0z|7|D~e!2 zHTS7Mykb)GLp}m0;5~RjR9SP)Xqu#BV}%-2rB;fNEjefaq740BXzh1EkrD>Mj@qQn)LlBz_sQ@MTy*K+5366b~4__7mh1Jsw4k{Q- ziej8an6rKkc5>t=earDZdI^XR1UxD!Q5K**H&4k@}D`+5!QdH4E1qvvoqNh&UYyYPq4+11SMiZbc zmSk*fS5zY|rg1KYIuI%DgTKhWqbg@c_FNePN^hYv*(U6x3LYX`hr2_A06+ptK*^vS zkl+;gTQYYXykhq$k6w_yC3i=4K-UO8#fx0{Pqp_B-f7&GA4*PHi{3;Sk%9q0*iCDC z&(?i`y%45kY+`aG+cSI5I9X8QqmU3ZQr;xz$$p5Z&7!-9P5}SGyK(3HxLe;I_e1MN zhZ*V$xfF?@))5t`k+i^gfyn>>76J|c0`yfrJ;(QpeBxb6hyZXfjkE@W3S?n?MO7M0 z1D4%-0Xe#H5E*=Xdqujd*|c+iRpQYr%226*#i`ekyOud)o6Y7!DJVP)6S#cf{J5`x zBk&Tu0(;;9JOVtHZ4pHSBlt^j@PQ#l(Ln><3zmRd?BVb4a@B7{75xI<1z1mw-!Z;v ze8uR7u7glX?m+<7GY*iXxnJQk58QB1Jai992L%A_g8nzrtWnI#z+esed$RYGwugW` zQ8a{$ziA<4ASIf;)Ayi*eUqDjy~#Gt$MMJSf6w6VZ_b_wPOB7j9R1nT`JixF?hWZ2^6N04a(>0#|{)_8VU<;&k>L zcaarIq5+`JA_S^NS7!Inr%ztnhyVcZO9P0i4f3oZN`b9Lhwd?8?>5%;yBBd56iOo8 z2?(eeY#QM-ne|1J6i^FbiB)8%Nn73rfWV9*yz^xtbyZH)5Nv(sFbA~odrq#&YkON@M#tsCkwZ3NNYNV-2Vm5b%U=aU(a%ZZ-W++rQPlqV!hrJ#R1|U`RGglysAa zXQ%Xv91`!HLQMR0a&kIeotrufw?_#{@HQ#^CHgf*zHR58zvfY1@)(yK6gs(ieEGK1 z$qc=tY4-gXNLzvm-nRSG-}~!jf>nnT7L!jh*+D)@B%qa575!-DUwZaY%fSFB@M>p8 z+@jrC5EgR+N+ifW&A#vteIM*#0~1Md1U;+L0s=mZMYHrXH}Tio9-Cg|GjIZi13x_c z=9ca^9IHyE)KIlj)t~@U00o4A)|h65%+BW?CJ*uOckchlr4LGgrU6Y$Y#9!N@opGw zKBD|q6vt-S_f&S~d0Pjh+)5T%Szt9K30OctLUt3S|NmL;8ADx|Q*fJiUgqH8WK}!w?40uyJ!1HA)BfFbEDWAannjPyzsxrH#;zPzIQL$URgc znlN?&*Nj(6+{o_7?ES#)X9)LWoMeoFQm6!UBg6#?{DpVH;5Wt>s0R&*C zk@()x;xzzfFVDcOo9dlLOKnQ3xEQ!Dj)*`j?xXR*)sk^rKf)w zz(=430t(O&0tj$Gdq@m8MO4=_-*)qK6$cQ2?`btoln$59A{NMnL=*z4Xmlpra81qS zlSnz+$EjsHB#Q^o^}ob_NqgnjCh=2m{HCv{^FIdvV*|68VuAs7unnSsf(!JVWB|JW z0|)>UfT^9&Jq+8cz}Pa7i@01+iai#FgfPH)*`LhAZu;|8{!KgdY&sgwDBe)bAdDsW zk^?0O2F}n&s7EP>$lc^Vsu1lkoJE`P%SakYS_rD~Z0KUf6r+r*rJQ|CJpc}aP6I_Q z(9;f7K@!rr{Tat6lp$B)^dBZxwEbdr!I=pcPw}E_JpUS(uMyQC`Xh>E#1$SYHVs3Y z8cOLG2l zvBHTckbp>F5NDfsBsUVvoB(W~Sf^vbt*$MHgf1LQ;z>Bwf&0v9qB4q>hCcS@uXymE zfRF0pTaHE*r3jEhkpfz9snFjla|5txSb}5$B$yCcFtw9V0^}m(s;s^zWFyqKz`$^tZ`I!C5!>ky1$Ob`H23_zF+?Ihh8~>@_(5B&gFL)CGK^&H$z4caX%_Ogl5PHEJ&jS1p$=KWw?dkf~av4 z>vezHs|H>@qH)B0@zgJRez3J59-N%uzM$+5*EL(B7>fRgmgTagP^nP84wi;erf~6Z z5QHKr0cttbX=1r_+SWo8p;kwlH=;5amC74uI#^QR0voPl9+9;($p(q9Ab; z=A87qu{)nOgcCrP@GF&?s))NxM1YBHPA38+E~gnz{Lrt`n zuiu`(?8T23uK11%3}6TI50(4!A6vDT3>yo*z-jTYx=G8U7(N9j8Y9S zcT@POLbPE7+(LqK(k7B-LKi_5+6qJtWbKa6u5R*!9Uk+_F& zxChW|gQ!x2H8~S47!<)mpm7@&E+JCxFy(OC@(OqP@vgaUx5JA^WG5Uz--?!B%>Lu6 zTL%g@Y#1D)Bui|#G(I*86m;6+F4zM zZj7>@+|8ngI!GG^GPIGfg0z{miNHx{Lt7vb5ny1#fTb8LbQ6@D$bYBaf@pA0MqdaH z#pYqRAs+X^<`Eq0ew4U_5*1l^bLg(2C583Nh&tX4$)zF7#JpWO&cmKm8vUk zXhIo63KnF`(n0OEIi0fH-(3z#ZO?c7{@t5IYAs558i?*x?)zgW_bfmf-xgCWb_C|J z_wLrwl>L|pTvgFKhc1z*P9&frsL@n5YM!B~O3g_?ByetSF)Ng!ijHUq4Z0aj2Bybe z9Mxox>D@P}=LBlnB&Y*8W*o@_Qb$Dg7Ek~No2H+n8>8qW_fYgu2Wi5P0&O6yB5NXP zB61SgaLqsjg4VkYi^WnVLpwmRip5g;A)Fe#3vkYWU5ql!c6gl&k{-el9>l)xK?NlD zp}-3`#$MWufP;*yHr=vmp;%EsoqKFM-0Bev4jy=i=X}=7Mjc-5HioU;|IOIWR1MXM z0SzNQdEEa!q3cFK4^5|+qmeZ*!a#A9QdEtyTW*xuO|*=Z{xYGJvZ;Jkp%$%ZRvALb zl9^POmaDKf^E~JMB&2ho9-6hbz5|ppMFzMbpmjmUl+mBVYnhY@ONj#d{Vi;}aYjiz z7RVbgIJTm)A!l@oLQDy@&rD{rpei~kIGM_;Sp#%UZ0RSZsSZD#T5mQ~n zF{LA;i059E5)4@SvHO>9l%kK^P1#2kpdE!2xCX*1(q@uIVke;uZGuEZ&HV@$#_oD;=azN%e9BzZgY>m7{nANNj zmCP8JvT?W|=`k~2_ImH~Ex&W02fV{GKH#6uI(dcLMb)rdx}13+UsQs)h+p+R>ZQlL z{)pwxk@nToefP?m7#N}0URa~-mi2Ozb>yOd7$2^c4dtNNeYMri9Ap^PzqF7OKC97GA>{-jcqWc?1joydkX@U!|UWu;3Ld=Qicd~1eK5I(^5gJqhuuyQR zs@5v*2Q6%QtmsutU=k$U&sy+5FL6_+!zHMOb~oMPe_rHeK#_{ZS>r0i=_%Jd*-IJa zRqmi}sD^o~8f$rv_Wz|DHi}3Q19w4*Ld(r*j!5(bF$xmcD6`Y_GMpu>RfazU5oY z?0<=p3iRk6Af0l600j`RNxBH_C}j@|FGVj^fNl&Wq6>%|q)ns^L@q)*+5m}=pwGjN z{dfiQI&j2Facr zFLY)5$HJV)Rkn++A`8OZyhpw46>hg;+l7}q%o_u4y3_w10{|68NZbo|s71p|`BtS; zg$lw!X57xsTX8@?v=md|EfNp}RaondG*UW**^uKXsvuD|%2zO@G4x{;E80Z14wOh~ zDb1yFC@k3!MY0*DT+nnj22e6_4oZV+1O|(_>j?-s$$aLY?|tpbzdLH$I5Jy0Tx&A&EC`DriU@(d-`#d2 z+&Vo)i69rorXL0n00sb|xlDpSN;^W)!@^71M>R+{i4xKIL{8FX(t2VSp$%PtQmM** z&;=p1_t;oqihwBOFk?}#r&$BV&^5&O65jwzG|<6F0I?(@Z)MknK5I*DnI+^4kPZ+w z81vF*^SYa6FQnXbs7N{`x1n{wT**WJ>ps_=Hri}=Q=>z{r41($Q3OCBL{dBpI&8C$ zR9WQ(N`!pDX=s2*Fgu_X3b0$mAwM)pTe*OVP?0z1F<_C&I;}AbU<51JL{JA5QFCcg zr3y=qELK8VEln-EJ{rsMn^R4{i?mZDT52p@s^FX%Ld%hg{Zoz3-JFlN{`Be}$E{rw zQ<_nN5^r;n3CSgvq{I|2om!eXzmXCs-DTp+2+AWxR>mDlimF>CiY9aw1p7t)Hc9~} zPnG~EU=#K$Lw7UHBSgv8+2u2B^$La^ zC=1>(Oy0&loFPjM1Hk}n#M}^tTe6o%&93(-I6iR`)hJ;6r*t(S$@{mwU13*R)hlb!} zup9IQZLkypgu*L8LO6^f3ZOX3p#mIbN}x>EO zMA9Y-@JM*9N>g*^%ajWSOi+kOiL&aP*(nkCcjIk^Q$ugq4 zVHjDj9}higsJnE08cw714EM_X7hBv|tDT zDBwa;;s5*(p9sBH7F(NTP@vv^C@dJODUYYR70G3bI~X^5V7Ho6K?9^=Nwuug%T`=@ zl{>6D3_{Lma#%E)-6ri)QCSF5DyTMX9kw}2LPmK5Gy;%9K}Z&92m~`YtI0?q6xq@M zL8dL1xg2GkBWa8(NNBUn4U-xxLmI)Nw&2qN)v5{2rCJ5bDP#fw6hKA@Kq0QyQm`Jp zQh}ubqQEC&68B_kxK#D%_RLTU0+b0TP>@BfE29IC4A2aM^^Ah0lS`lsFy-#TRLb?X zxlG)>-DqIFn2H`qg?KIsYe=zofg*v?Eb0+V4iVC($YHEJFVGlcyKAJohr(-5&Grt? zAGnE6v){^Sz!sv3(sxjMu`D!uzhvL$9o6c>TSZftfE55Onf8_eZ+X5u#G%DmrAUgD z!>o5)b+@QdRM-HKGQ#Fn9yP4Gm6!66*rXIC0s!QO>Y!dFis2&qVl{G6fWSb3C`45$ zg@9x7IgYiMAO-eRQ9_&Ls&29lYq%^ZE{_hNR;2|h5?B-Hf-4h{SZMK}CzlV$-6J^* z)niep2fkZ|aNVnJqblX_uf_aMaj_ML0RoJuUX3kea%QUBrvx&Cz+i*I%}DJLjtcw< zn5vCUt(Cntr&v=YRO${W!p*SnPtNzX8Znxh$ICnKi0C)vO7j-Sa|0_MM>1ChdZb?v`N60AZQo z>^J`9RyU+vr)+Juvm#_ndc$M>tJ&=`Zm{5tlNY$59B@E+!DAbSo`W+lZeO~x zZ>Yy)#I0zCxERlu8VO_TW?k2AJ>OBbpW)}l*~NVh^Nd@#P(gq&MUhk{Unu|zFoUt- zCLb+bOt`Wt7{v6ETH09|we@_T9Byqws9Mbonh7+7HqTJc+-`B}GzJ6kKr|#hK1i6S zsujE0M6|>76HMwt7#2Ol{&RJ>3~)dgO#^a8Y+V>#c_{U9KKG{OrI(nA)}bMAm2P9S zh48L7jLyYRzh+%DtE?FzQgh`@#qj|+k%XmelCFnp8P!V6C~gbEh4`nS%3(Pc3}HaC zc!}0X0=L-_$T7YAdyxe}LqXyq!ov0q8`nL4Jzeq^-WXBx`Rse-Bs&{=8P~!T0I{fb za>7Zc0-jBE^nJHEw8SV)1zHn+p)7f4&-XU-0Ko)PP)}DWN>3Rr#28Mp%;4i3W0Yny z04=xS3&M;CUMD4<`D2p=kuGro> z#wZi_8n=mg`m-@9ih^cZ32ArwXqG(mvl*v?f%<2RtNRdnX| z9)cXJmQO-&`<)MM`>UVoWeeN|2|yG3c(LuxCRbm!5fUY)bpWM`@ss-A5-*bhe$cJ2 z_0+5x=5J$7=TalJr37Ai>Z^N2dst*t#0dw47R0EN+ZELPK$b^XFm0l~v7LKwNd&6e zUEB4SEt6D>hkyu$P-{Z*&H^cPzew;v3fzxb`2VfQb;6Pc4A(o>o0Q{D1!rouR&+dVe6Cnm2xI=A#sC!P3O zYCrrvCXZ5>(%byq6Fk!1U)e7Cmo}jUgRWjcj%r2$5*CEA3-kf%)l^Fv25}sO=M$WT z<3yA&VNr;ov@(c6v?hsydcFMnC=0;xFCrEUqiS4`^ZCNBEMOOFGkO`{{G2yoHS+;ZXd-O_dh6$cZHw5JAFF7TrP!0a8Z2aaBaKzkWKa-zwv3`7k}%A#-)Sz?q@@Q z2=pe+8EA1m`WOE8$@I`C9~rvzv!6CCpp^3A>&nwufS^y*g=6*VPWE2nuhfbyk_Ag+ zmk3EuO&{r}!1*~5iN@g{|WESOGHcrqHC-^=>J1+R+KJPhD8!OcM}891O>fW~&4@ZGcKyi?75OGCFC zlhYHuFk(-`Kq=8um7Z0{igL_I8NV~#Z|~rzf6dy7Y>S{GnqZ7GlVmnP0Em$=cd27` zhhwyy)VoJ!m3t@ROH7tfe!}h|u?yx1`Tf(OD-Fyrh)o(sKqGOIKEoVHk9v)>bZwMN zX#Rpz_(u|4jDIv_LIf;nO)ZADR|%nAc3bw`putL-u18P=7%CEhg^51e?(rK?(Oa;( z7yf7}>h1;qLzuU^Vy;=S3M&mO4*mYT#fS8e@0<9T-fdFhPfPl)4 zdyU&@j{a=qA+8jGPyhu1NB~DcS&#y8Yf@)511&-bLVyH8Ou)`s`!^jb^E?kY(KvYL z6<_>Z@fF|kcxv;+l0?P01e1WCkYbzD#mdzu4BgG!N!EKl=dyqj2&y!a?Xy@@$e}7{ z;rvqeN4Pnsq1v#q(S(LuS8tvouw>lAj{oWW2Y+hS^q3&)^EnVlZz>MUV*)#zFSbbP zAY!;$v}%27x_%*AU@~IYI?I(TU4R<**0x+3$4G&Qd5A#4gqA+`ky16dpr?pJJOPRE zrN{!}ECAE$V>j(C{V?dow@aRT+}Cp9*o{k-*tvr7MlX8a5mj1+OGJPIOdy1j_^0WC z7l0aO*?W8=xmDf2%3G(rZDMeqF`N;aO-GqIX0I~Dgab6sY*76w}V z{;}9;7GRMBzC~yVM@jK6#)SjAB%+)7n)JUhW0-(OI)R?Gta((rjaQ+ung&tqfQIMC7bXUNNW;UKd`k zMx2~*A!Gs4q6|975XwM_zJo-N6s5#fBPo=QCn!}timDjYo9krY~_J*B?>c;hF{mbwD znScKBFZ%hXp1F0gp!Ld;HrOo0vv-seXpxu{KQ3_uwlu7RU~5l^O`UUtX;K@rddmf5 z;JW>-5*lvQDWH&`&kM$+qKwn`+v=jYBg8;{hygOPg=q?aS+FnBZjt-n!OdVdRmp zd!7)BhE}=Lq+P!GXuHzrfO%kqZn4r$nKy|XUdSv43w8Jg`UrrK=CcWU59Lzo)!0eg z0|+l9I0;pX$h6yaW~b4{xPb0KC(jJ(t)-3X1%fz_zW{_0!9pzYRgDV{H*8FL8@o_= z<-f``KKgq9L4>Uhy^Ll=5)vSwYAq*R=yE6$bb&Iotx`?^x5$Y_(QgC=3OgLIiA89P za&ey+Qa#{S1Al$E&gUV80huAq)NWvD zJQIk-Cj&=!iom75r~z+ztT%&p_X#B>({(~#AtqX{!gi}^ zHZnKTEqj`6D?HX5^OTdNg#UNB@pmMTF-qa%=6Nt7AnKyC|0Fiphbqdrd+T2H@%JpSHV4A5bAJx>A9NzEd zct<8OHnWX5Beq84;Rw(T0G?c2>hudQejv`1pKkC4f40**e!Sbej&eao01R{@I|s*- z776_#YS2_tx2LhWI@N^=l)GErXjbFZ!ss90SwRAB9L~1h;o9xn>AWPFv(Z6m$ll$s z<{*O75ri_ZWz^jeL9*cE0PJs~e~u>{&j7${aM201Pwbpgw~ih-?z9&E2 z$*I=)iZOG_TxxQyIUA7~#f@wnU|G1aSOh^S0EYmn9Hjs}*4|Z43s-d7#n16AC+ zqzdP*C^)d7xNqI@z^RC(6HD4gfY53h&_jxW)Aaq+tEiSShR}6{7Z99|V+RVD5R`j_ zw)$-oG+0R+)ob32GF-!`#MC;hU$M6?LP!){xQUFu`Z2Gdhe5^s zl17~g4;D!#5QZi1(u{2$u)=r=w0noosI!2evJ;V*_=w)~$#27sjgCj$39wZ;jMsD(a-%a$SDeX; zY6V#zII!$U}(E3Ef6UB(4$ENsSAg8zmlF8s+f8 zlCw*AT%&bUyLaEOq96k2-R-3|F@4ElVQUf#qtqI)U=-N(C&^Z(JOYm(ez=LMX6WJy zYS^nZWtuYgHU6>FpPKxEC@tgJuXOO&;uzh_41;4^>>R#AeSVG22e%gPzm+|kCbY5f z9{O;Fn;{NU0-$lgCRyN21$mv_=FO$Gql^O z7SXJOv-rp2i0#;1f~rCSB4uFGaE>NI(2&3fldI5Ww8+X_Nul~S6oVmD2&pmXXYFmN z_~fiuL{rxM?{6v|4+bb`gn27*a}k9qOr3~`(PXTMF$+$EQnn>E3RzGDa#PMNOO~9< z*i46*xM2`5gHqyIqCz}Dts<>F00JDb5fp$U6ht*5@FJ?SngR$ROInZs1wnRzPa`mr z3ii^Gy>V3!7{qj>BTX&{x?Ni|Mg)`6F$w~`v4Ic(%n@~ocf>LkaG{K`ma#3{^*Q45 z;6zSZSIvmRU;U;#-)#8GcVFx6&Jh?}>aWfW)NNNZq4Gx`I0YiQBq zLNpg^A&!x5;SD4(J#Mx}Gu!`9^&b=bN4o!{(t<~IaZlaaaLqcf^SELEg^Fe!bDKIU z55t5*15E=V0znCY^8hGeln9#EV*kX{!gGt|P!blw0E`txpg7C8oBB_xMf5(LGQx8S z&Oz5f0Yc?yZMtJx2myxm@R zDWcKdvA5^OT{IL?00e>n^}}p#B6C-rr?T-+R#uUfNfa;T1I>; z&61y*D6Rky%C?G?zhGP{K|_RfT^BT<_2r*h$uyqxky?-(|59}I+24T!8VM=jZJVGS^ z0wkbRxgV}(a>OiRBT51>(r8~`s*rZnv3RAdTpwE}7I&Zp3>-k%O!@fCRcG;PX{J=9 zDGiDk+|xfv&e19tV>IYSgb+tw%o-HP3v5Fs+{1Qo0P|V&VTx`TES5Gs5c9|dz{nLb zGNJlMSC*akAFN&f$L_7e)~CAh>nuy3iW^JPK-oBb7u8bgwb*IALy0cJI}WE95tNns z>=Q52C`3pI8WQ+qas@gS6cR`PL7Nne#E9UT>~A~HsMpaFkksInA%io|KaPPyy0xKu z>RJZ@2&97`0IEiuq;BJwFc1kfqE;cJKoF2}_JBhWE+_-A>8pstfgvE6L1}SSw5df( zfp`E0pq1!hgD8a&%25Q>fyQ(Wm*GMf0SG_{$6CZh20&cao&D-t4wA3=g6ui{&oTRh zkL-(1Z|)QWYa~5_0YjkxGedxqj8~(63sfD~Ib5>dY;u!pkuV{=Nk;E5Ty(KWH7ZQ? z!q;X)1MOC~^oAW-G=Koo!m=se=>v1+`1YBwnS_Mqi2@UOgQcTYEYoWtmVizZIASeB z45iV`#+Yx%VzGp%o>C)%5<#v8gUz|5|Hz_haaYEc-C-L zua51R^iCW&jmDV6K`6krchbVq>3U9&S$Gk;mr{y(+qy9l~l_ydvRL` zFCaJ-rxKBC#DdV~@jHqp34AiS2JJ=*t;{tj6r>QeZmmH?m_VY?UgKF*JqQAlkuBcT zN_*!M<;)aO)N0<2Yxs@TU;qRs78*v*m=+5HGX#*Zbty%s6dDA=)^3}GD=Ml`0IG&E z1cU%MQ>B6+tgCidpfoscFqzsw6UWAm%w%LODzJk=o!0^a2+0?KL?JlHoiD#^x@Gm1 zBXDEuN-jD0d5M0(XUD$nkL(6dzkMtC=l9%{efa5D#pkx(6JbQ~S?ZDgdH`t9kOX}w zfV%K;i6bHaRAB6Zb&{%SJdRu6)LglAS#<{}CTB94e4 zn#C%O85n{VRvXYy88QR}VB51jU<<+pWhm@Q3oQ>23hah=NxTro{SGF1+gP!Ma?@IG6^7h(qKx6Mv=Ve7@mmhae zs`Zkpv1bV0{uJkb`bZ&)iW-n0<^2F8*a5VE1C==&`RV}!eCSHiOwqO`sclfvHPMNQ zqU_yr)v$VIa$zm1H7RdbRQK0#c=n1De{1_(rLiiNYudZbHCpAI!6_3Z0N{BLlJx@# z4J1pxjv?z$%}^-)}k-^)ON^Mt>U7_Vdh@qWdB&h9)pI+fY0 zP$^5F;~xcC5frN7?+Ges3W*eSa>wL}WTa8Xs6hbq26M{9C=*B~`xzVGqU=KuVUd!Z zZ(xj`c_a-5NjKMZGnyTS1(F&%Nj;*d5GaYMDK!UKfCL)~hYp7cxU8Z!b5|)KL5*qU z%3kuQ0kBk}L7D>F9u%1!Bb2QOYM^UEXN8)6;nOdzKYaL>NZdYwH~jCg%R5ul280&; zdH-YUb8eja^k1$^pW3`eQBe>YK!B8}g#KlD`rD{jA?FN$0Zb?W=-IBY{(L#2!O;sh zFF?zoY##5eY*M}#ADDHo?}$;H9tHNe{fZPCw7@gJVD*=px|& z@!FYBP-x}Iu&BQ_;yw~-%)GEUQKE1RFa!$3hM;r+paH@IhA;#$#xsK6wWC5d9VT%} z1Y}X)oZ9ufvyRUBAC3Sz4Rs!NiQ$F5t2bN3$&8U41t;6vF*?4NX8=THv|K{vK;r0f zoFYIFSpWj#%KrWFJD{zg10vk$GR(gShL;x?j zRX_AXh?*!0Agxwm8>+t8gjC~&gf!$ge`IB~=3CG^hmowp}% zc%j$pfWf-Gao0CioxXcXqqhyksjIoQWNottCFN>?!4f5v1LT05pb@1}LtUI=_HOl^ zMG6?Zi_qOR4y6Oduzz28qFHM?>E0ky5CKBOZXVn^WY=oY5zO3SN^2SuL+3mOD~q9Q|mV%dl)Y$$Xnv8zPTdB`(JL6FvM zZLmaUMvMlTD)ngg~3sgDaPBA$%MqA++-w3_td2ltR@7&^E?#sM)5#rVZ%XU_b!k zt=6cLDqwV)+%}k>0LPWWTWEgV3$#)GW7I5Bm4IMarS80;6~~yDh*yIw-V_x@3!{;c}CPvFHsKxO@nduCEJ@UiS`;KuK2*8_8g8 zOHLe|QK=feW=shjofYbuxKw5U%q!O_s0fY|9fvL)+Kr3+LqG!vqJa4yWQ={5`O3uE z;Xk*@`iW^wayI%!_RrFPnY|&%&G~SXH@tg+rsb4UELR5E)zg}QF4-M>(3K3)sf#vk zhCws>ZS*rXtE0lAh*|((fT60zoY)cpB0^A9fR(hY)l|Ka2OnC3&QiD76DC4(TV89- z(4UNQ3k(DSPJ}Wr3YQ_KY-PKi3P^0zq(VM&LqGIF88uN9&;SSm>bOPyKnMiV)igZq z{Fz_=eB&K;3^D-EfIh?#lvo|#KG54%9+<&7jpo}|cu!(LfG4P*BW~Oii-jFI4gdy9 z!2%rb18^?0ZRaeHt{jogYbQNF$|Mo^i~XBNulfJY)0f=B-ed>#HS5y=ctD50tD_TZ zb8oLryK@gVoh4}n9kYjo3z+eM?kuI25MMYr#gW}{Fnx4~G}s7^6)3rSvA_hf01Gw& z%Z|>ShGut(wYSUa;d`4A(}@|PK@qi_fuj$W3>oz!70o6i7cr<@^#|46l4ywV$;MTC zbdDBCiUkP(u{wJbf(b&<42yEBYMYI#4mUXuT>*utOpSq`pxBF|RUA4Y!mm(N!%)T@5U`Qx z9f^MI;#J=g0b7|#lT8}KQDXDc3V0#QKl|os$=tpGo6wF(P>HcAx54>K-xrVX*g)Hh z?W;DYx2CihGp3&V|C4H}7gV9)AT z=?Ou#>2vl|V$6aG0Fr9hpd}+jfQF(3g_DBChs_3*6(W)Z3P=RQbTx}L8YRpu6n64j z<0(<^8jk^T5RT)b8F)-J!a2aE@7$YAa3BDM2A}{Rxl}*&K{@3`Q~|^wKnOt8cs)48 z9hpSOmSCz)WN59_;{JXX91dD{pW^cAdzywZE2~-fsm$68{ zMn-3C>JPuRMAtp%e)Gh+FCLHu1v2j{;b9XfT}LVOUwbmF7)&i&c@m7{dnUKNQ!gES z4|=GZeOF@Gu+911cz6FYlDC4Rf0D=Znw+kdW3<_%v*z)vL?I547`5qkIS9cSWs2m& zbK;9{ajcI?`VpSHDLncB!ne{Jt~y_ZWY}h>0O!!V;_yA|Mom0({Cr2(i!T z|M-aMwlZH*ED=!hAbknQ0G$Dy)4?K=8j#SQ7C4nd98N?6t9rolIAvgrlHFKicT;Ci zvy%d_dznm&V=+t!2myxyy$~YGMJE*qfB=C-C_@EUCcl6|&T=`xDF#qL_SphR2oA^J zAu2UHg-3Moh)#e35kOkv##?hEuN;Sc{isjGI+9aMkWTIx_P+Da-ei2kYyR$B<*$EC z)|YK~?O$a%e)4#9d3h}R5mX9d&8<}}{uw4Xfn(i@ciqpm++>eUiFt95~Pw z1JCV&>%wCm(vF1*OxaUp&m*Mu@`yp(=(y7X?c#`W=d-Kk(K|n@hDl9+agXs=Dkeot zn4mF3F@fn6&FP3dHpmzSp#T5@0L{c{uQ^4{1v;Q_90Wj@fTSrb#%6C(cw(%Bk|jgf zAWUjaqLQ@*c`u8Y4H4N)>7KaWh0t%gP}Rms>ZPI$frJ5p&cKV+AZ0-bK#Pcas-O;1 zqzo&^#dvs0*9f?xxqv^ycTq-p5d|}On^Wp&jzn=TEbPgV$gWKT*=p?MCjt#pkxOI#gyURKv+!Jt8isHb5Z?_yh zcsZ9wU~CwzT@H43M$7oML6vq;GLJM7i!v;HPu?5>wGgZ@P8?BmS*~I{`$w9HPTfnc zxWU`!F`jv>-*JmFTtK>&9ShP9V*s85>^Ma?#OJOSZ~sp>u)GTG00e*$BD4|=gLJ*h z+;v6`J77viWrkV@GD3sAy3DBFH7kq{ny`BIF|te)L_#TXa#}QmkC=xD*$@d-R7m4m zQixTWdM3xmo-C+F1TI7XkeHN~O~!022y+4l3xFs=Q(z?_V|Ag)=pF?eC_zc;GWG}o z2^@y9yxP{P;vz~Q2NIa$5;?IB1rZ_u>akx`(MMV#Bv8Q&)PtMMbMk;d2(xZZf$N$KKlIYh9_2E!%jg76Y@Y0Te^S4fN|KrJ`PrP=TD>d zFdO-2PL_06Os?f8d*g?F`1#*4HLaq#86WZl_vOsX7{p)@o`jPD13P0BH*=!fgD(hP z5KRNEVeLJB@LOHf9uROFQC-}P4PNMnoAqvda5VYr3nXY=g6`hcfoxW(zjWS2@#?_F zgqYo)Te`XT={*<&_{A>NINcYDTlbcm=tSd?3TvmQ~*e-A%v)6enz87%?Bi*mrDfX zHqMJlS_TNffCO|ajKczDl%CImB9Ng1ERkQpHij-gPIfUpeza4@c;(b2B4EZCgkhW? zJla2w{LT1r(GNIwUP(xv>BV$w)>EMX0|1Ut#Mw?-8z`V)S(uSAH|4fiU?$2H&Lbt zQx`X*wOaJciL{6$iW;2U@pjXFH-8HN2-=zGSlF5d&)vFBQf~KZ$!cHb`u2VwYhNzz zyveGv<)?{1NYAm^;xw%sqhR8W`sA!uf7f-(AEQU!{ZBid>pL#%yLUJmq#`&Ro@4CW z=<>gj_!HOhl`-(Sdigi%U;k#u3kdg6Cd;8Bm`qLHa&4E9Fi5D^=BCy=7Ek4Odx_U> z6MC`heCQuP^z)3P_k77RCm|9ibikANf2nzpD4Tf47N|(LHzSgF8UyDXn`hBk7G@+E zAd<>tizjRLcH~q{00u!p!o0-=vtcC{MrYP;=Vq}^qYhXz#mEpriwoM|H2DeSXsmh> zrVc_V0|NyHbmFV}Z@Od217cA8X{*odAJKsf;M6krLXBherZ!0$G2IY za$|{IiHzNcF8hA#k%O0W58;Dh{pjMQvotViDNT+}h4I00wxtywYVG2UdA$~5d3*wC z$F~*1=1Z|$EAaBKp|5^%JC)5n`}~6sjJ^5EJN*Krqxuz|M`p|0=fp<;MA{Gd`+sim zf1&*HXWgbVl4=JPR3x9`U5gL^P`y$Dz(CQGed>_T+CUIsv0RiB8&H5C zU;w8fDs^cL7!iUB+GHBg4}DNZc~UD1n4au@%j}2cADTX^d22tRk_?D$0XMc_wyl%K zo_}F9-1o$#(@X z8@PM%alxy;q*&9&xsVs=mUivI*h{EAdxL*`TUlCM=i|79H7fE;p_ zKALzD$_fak!r2U~puBhXX}{YpO0TlGUe8d+^l>TUJ&Z)U|5?YG{Aj}$-~DCWC)=dE z!8wf-TTTF?!^eCZCFvDT2}&TLy(FkoZUi_O5yp7f@f}+Ud9S2hOwdGOBc*q$*@d70 z1%XceM4+nagy?lvv|+#?L4e9&OZ8C(T%>=Ah!YlRqX0|d3xEj)+f~>3jqKkA|&iAnzLNohCcG~tHSdeS42{P1DJ`z zFbT+|yAC0F^rQ%=Gr3Yd;54z*lze3-GH1C-0hoZUH{RgYC*Qo()I0v*Pk!yI7yM$> z2(o-wk9)ivB?-||vF1<_=U0mGu2N&saO3=Vg+)Nryvr2gm)uMFlg1g4ryz`Zm8mT zkVf%K1ifC0uy;u-C}01nw>`Y~oA-Wo=HvYf{lVuO&VCp8Y@{^1?xyMFpl_&8sESUp zFsmNsV6pa$CPG$cL}k8}^NFn@s|mi@#b&^069^evLL^0(vps^$9UKCRK&vW;Dnf&7 z3M0@?UxJSa1)xK(b`{_KU(zD)1S7S?vFfcLe2@sG~nI9 ziuSUD(tP%zi^z|^?)#08p8cMrPnjQHA8Pg8wcgl2u% z*!W-|wafSHHlO6Y051tPI_QJzJEwcSHu<80!F#T;{Tpix@2fBpK;RGO0O(8xEC_{I z2Sm}dF0*;)q{idR@37iR`2qWf7*&DuEKadXK;Qu4Y9^Hi#%N_q!3~I~mQ`DgJyBh>^QQo#e*C<4QmAd6d=oXIojYw^ONX1#^t>c@f3;PS_N0yz$jqLl8 z-_aZ()losre&~*Q;JJ4khh>2>2$~|)fCd;q0GQABh4QC4w%0}+&{tFXo9*A)^8l0erO z);epvZ+gnv#bU6Z*oBzTGAu&)6=x5o3ky0uM;DvVT?*RE|2-446n0GOxL5nrMSY1%`!?pbd(i3@;rz`00{c*$jRZk`qcF7PwNh|lFbr^TC@YgrPuqvTb)qvx61@ zan~0FK++%%X^0?%l{(Q-m1;n3Q9YpS#kYDDp$;gLG61W17w}Y+<_-k_2!Y(y&WC^d zp`|~JUTLc>{p=5b8mb%0!*65ohu-|kyL{xp{tm{(3VM`B4Gt5)K!DZ5b`X4WLlMZ! z+5p9>t1=iu)T(}E2IDNXQ|L{}E};h^!@zn%`29W8HAGuzeNk>>O&(pk0Q2j)ZQz>v zv|a05IdiAwMxF}=q6MWi)Y?I+eAaF72qFVT*e%p8P$~UlYq}pl1~SxH*a{>B5CQ`U zGWoGg_6P1^y57NbEg8yt!JWCIybJBDx;42M9~Jp zOawv;hy&bslpAoI;1K?+ zWKM8fWIS`GH}||_gmM^n^@>go(CLY`d0=UBbNwF;0Od8!T6MH9NychdXD;C|+#h7P zS`k@&!55catzv~338X+y$Ut-b-8BY4wLk@Y7BWGQL`~u7l{CwXcqVfaRsmb zQu}75_4O{@vMeB9Lz69Rvjrax&5>XZ+=lv40X(yX6J9Zb519ti*;Wz+&#vp%Qb!2ps* z9fRngVqwm7lh{%u)14L%<*}R-W3)I0!-jKT=PrX9&w+ypKT&0l>3@WE6H@(JcQPBCdmuMdTO{?49iHJG}HRZ_VQR zZl{5p>SJ}VcUdx|-LW{wwaP-m-J?^1Zq7muX0!mY&mT_oUo8?kz$j@E=79tm42_Lr z&3X%fLwD#V-}zH0w?3J&>Z=Y*(x+CYBF06kP~f1BY5TwTU%4CE`Nm!Th3otJBS!l@ zN#D09mSjAp2X#`aet{i`GYdJvCTF0HjhhpHxMZLHl|6mCy(rTV)Bz9%kJ!QzQ;aFEBs8!o__*yEZV+EGgb!rD z9D6WFUU}x}ZuO_3Y^_Y+=iy4(J2TuB9h&Us^(a%o1$qs}vWHriOq`M2E72WTo31c6 z7LZl8EM*8A{`+me{|6C>E+)7k*W+5CCuYwiNO-*B0K;rgv)p9BL=V1WUdmvy6+B#i-Nlu?u$47ZJi zNzp5-SQ?jeA^=PrY6_iQyW6gIFv6%U+iC0?!~qSF>97FJNx Q5pcq&Z?jc_0ggT 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 literal 0 HcmV?d00001 From cda34b704b667ea81a5ec552c6539404d508999e Mon Sep 17 00:00:00 2001 From: Simon Kammermeier Date: Tue, 6 Sep 2022 00:17:01 +0200 Subject: [PATCH 16/16] Indicate support for lossless to ImageIO --- .../plugins/webp/WebPImageReaderSpi.java | 28 +------------------ 1 file changed, 1 insertion(+), 27 deletions(-) diff --git a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java index f23ceec9..e146ed70 100644 --- a/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java +++ b/imageio/imageio-webp/src/main/java/com/twelvemonkeys/imageio/plugins/webp/WebPImageReaderSpi.java @@ -75,10 +75,8 @@ public final class WebPImageReaderSpi extends ImageReaderSpiBase { int chunk = stream.readInt(); switch (chunk) { - // TODO. Support lossless -// case WebP.CHUNK_VP8L: + case WebP.CHUNK_VP8L: case WebP.CHUNK_VP8X: - return containsSupportedChunk(stream, chunk); case WebP.CHUNK_VP8_: return true; default: @@ -91,30 +89,6 @@ public final class WebPImageReaderSpi extends ImageReaderSpiBase { } } - private static boolean containsSupportedChunk(ImageInputStream stream, int chunk) throws IOException { - // Temporary: Seek for VP8_, either first or second (after ICCP), or inside ANMF... - try { - while (chunk != WebP.CHUNK_VP8L && chunk != WebP.CHUNK_ALPH) { - long length = stream.readUnsignedInt(); - stream.seek(stream.getStreamPosition() + length); - chunk = stream.readInt(); - - // Look inside ANMF chunks... - if (chunk == WebP.CHUNK_ANMF) { - stream.seek(stream.getStreamPosition() + 4 + 16); - chunk = stream.readInt(); - } - - if (chunk == WebP.CHUNK_VP8_) { - return true; - } - } - } - catch (EOFException ignore) {} - - return false; - } - @Override public ImageReader createReaderInstance(final Object extension) { return new WebPImageReader(this);