From 986095a4a33859d6059b265f16954996dfdbcec3 Mon Sep 17 00:00:00 2001 From: hoangtc Date: Mon, 9 Apr 2018 08:06:01 -0700 Subject: [PATCH] Support FLAC files with ID3 headers. Support parsing ID3 tags at the beginning of FLAC files, even though FLAC spec does not require this. GitHub: #4055. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=192127929 --- RELEASENOTES.md | 2 + extensions/flac/build.gradle | 1 + .../src/androidTest/assets/bear_with_id3.flac | Bin 0 -> 219715 bytes .../assets/bear_with_id3.flac.0.dump | 162 ++++++++++++++++++ .../assets/bear_with_id3.flac.1.dump | 122 +++++++++++++ .../assets/bear_with_id3.flac.2.dump | 78 +++++++++ .../assets/bear_with_id3.flac.3.dump | 38 ++++ .../ext/flac/FlacExtractorTest.java | 14 +- .../exoplayer2/ext/flac/FlacExtractor.java | 132 ++++++++++++-- .../exoplayer2/extractor/Id3Peeker.java | 87 ++++++++++ .../extractor/mp3/Mp3Extractor.java | 78 ++++----- .../exoplayer2/metadata/id3/Id3Decoder.java | 10 ++ .../exoplayer2/extractor/Id3PeekerTest.java | 111 ++++++++++++ .../metadata/id3/Id3DecoderTest.java | 96 +++++++++-- 14 files changed, 843 insertions(+), 88 deletions(-) create mode 100644 extensions/flac/src/androidTest/assets/bear_with_id3.flac create mode 100644 extensions/flac/src/androidTest/assets/bear_with_id3.flac.0.dump create mode 100644 extensions/flac/src/androidTest/assets/bear_with_id3.flac.1.dump create mode 100644 extensions/flac/src/androidTest/assets/bear_with_id3.flac.2.dump create mode 100644 extensions/flac/src/androidTest/assets/bear_with_id3.flac.3.dump create mode 100644 library/core/src/main/java/com/google/android/exoplayer2/extractor/Id3Peeker.java create mode 100644 library/core/src/test/java/com/google/android/exoplayer2/extractor/Id3PeekerTest.java diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 7a178449eb..a8929bc156 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -30,6 +30,8 @@ * Allow setting tags for all media sources in their factories. The tag of the current window can be retrieved with `ExoPlayer.getCurrentTag`. * Audio: + * FLAC: Sniff FLAC files correctly if they have ID3 headers + ([#4055](https://github.com/google/ExoPlayer/issues/4055)). * Factor out `AudioTrack` position tracking from `DefaultAudioSink`. * Fix an issue where the playback position would pause just after playback begins, and poll the audio timestamp less frequently once it starts diff --git a/extensions/flac/build.gradle b/extensions/flac/build.gradle index f617064ce5..9bf8d39435 100644 --- a/extensions/flac/build.gradle +++ b/extensions/flac/build.gradle @@ -31,6 +31,7 @@ android { } dependencies { + implementation 'com.android.support:support-annotations:' + supportLibraryVersion implementation project(modulePrefix + 'library-core') androidTestImplementation project(modulePrefix + 'testutils') } diff --git a/extensions/flac/src/androidTest/assets/bear_with_id3.flac b/extensions/flac/src/androidTest/assets/bear_with_id3.flac new file mode 100644 index 0000000000000000000000000000000000000000..fc945f14adb32906bc70c0de1e39567158ead2ff GIT binary patch literal 219715 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
  • !5&QsB&p68+<;s1cpSx?GB^uoCb3L1gJ zNM%qcDqkKeAkrM%1WdbIXnQt9jIP#E`oc@+xdkIA>h!rdCU&Q1}*0)>OZ z3H+VHK`tnSqMV)F8aOZtRp!fvNZIx&ju#DZduy>C1#?GHs8lK?iUEOAV@r@!Iru5U z-@~q$jiBaR1$cW)RFphcnv8ZcP{HcBM+7tNEr_uV4nv_(FboX>L&+IVP86_s#l?jX zUo(nYTt&f9iw`%tJ0mIiHn)bujYy39%iF17EzK_m?#0w!5xw3MX(biP|0S0 zniDK9SZSByU*ZmSKve$K2C!~XXa`@N+MQxOYyjU9c#S)T;oAgvP*IEZ7zT>ro^QoD zN01R1uo0uGs5obg0{qvG1w|N{5<;OtP}CBX0KT&b>wtrUWF;4 z6tl5%y+79(n%szWK&JQ?BGZU8=(rWK-~Vl{@g4u}joY|0sMPLSEcUtxWc$j|{D-O1 zV@KHgF=_iT(LT%n*U|aBBn-x3oS=(P;14V|Pt*C*LP4hvy4qN3)?tW{c3LZj?BbtL zbnvZ&O`Wpv;+O}+4$c08@X$d)Ex|)q`#bvDd;VVEFVFk(JkQ6rU!5>p8~&Wv%lxdn z^fuDW3tgEf6`U=rOJB{#O|{kSq!gXYVA57hk4}<_bc*0Vr&!Z4-X(et`OMKsn9ROS zB2KaFRW;-dP*l$cgEG3wSA>a{Q=e95fJI2))r`UmyfB`aZxowE=`^B)lC0ia!c-q| zvXHOjYq(DIyrk}NICa&UyW9rme^;8O>u${?eIb~xn{bOZXC$k+a8Np~9$DP~J8`yU zTwAfTs2|p}$wV#?RE|L*-^LYmvK^;xciPbc&}gA&5dIotkY;W{Pg*}4DHSl}jsYIh z+&2b{;e%-BV$t-2vcy1L7|+Z|2{ED}t-+Ba#gWHwS=BuB9=4;RSbW5dFZu&CbKk($ zLUyDDq!`y0M6QAD0e&LU0wghYw+eY}s3{bS?Lz=epYni*>Fhli2k%x~xhxC^C6H_h F@(;o_TM7UG literal 0 HcmV?d00001 diff --git a/extensions/flac/src/androidTest/assets/bear_with_id3.flac.0.dump b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.0.dump new file mode 100644 index 0000000000..d8903fcade --- /dev/null +++ b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.0.dump @@ -0,0 +1,162 @@ +seekMap: + isSeekable = true + duration = 2741000 + getPosition(0) = [[timeUs=0, position=55284]] +numberOfTracks = 1 +track 0: + format: + bitrate = 768000 + id = null + containerMimeType = null + sampleMimeType = audio/raw + maxInputSize = 16384 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = 2 + sampleRate = 48000 + pcmEncoding = 2 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 0 + language = null + drmInitData = - + initializationData: + total output bytes = 526272 + sample count = 33 + sample 0: + time = 0 + flags = 1 + data = length 16384, hash 61D2C5C2 + sample 1: + time = 85333 + flags = 1 + data = length 16384, hash E6D7F214 + sample 2: + time = 170666 + flags = 1 + data = length 16384, hash 59BF0D5D + sample 3: + time = 256000 + flags = 1 + data = length 16384, hash 3625F468 + sample 4: + time = 341333 + flags = 1 + data = length 16384, hash F66A323 + sample 5: + time = 426666 + flags = 1 + data = length 16384, hash CDBAE629 + sample 6: + time = 512000 + flags = 1 + data = length 16384, hash 536F3A91 + sample 7: + time = 597333 + flags = 1 + data = length 16384, hash D4F35C9C + sample 8: + time = 682666 + flags = 1 + data = length 16384, hash EE04CEBF + sample 9: + time = 768000 + flags = 1 + data = length 16384, hash 647E2A67 + sample 10: + time = 853333 + flags = 1 + data = length 16384, hash 31583F2C + sample 11: + time = 938666 + flags = 1 + data = length 16384, hash E433A93D + sample 12: + time = 1024000 + flags = 1 + data = length 16384, hash 5E1C7051 + sample 13: + time = 1109333 + flags = 1 + data = length 16384, hash 43E6E358 + sample 14: + time = 1194666 + flags = 1 + data = length 16384, hash 5DC1B256 + sample 15: + time = 1280000 + flags = 1 + data = length 16384, hash 3D9D95CF + sample 16: + time = 1365333 + flags = 1 + data = length 16384, hash 2A5BD2C0 + sample 17: + time = 1450666 + flags = 1 + data = length 16384, hash 93E25061 + sample 18: + time = 1536000 + flags = 1 + data = length 16384, hash B81793D8 + sample 19: + time = 1621333 + flags = 1 + data = length 16384, hash 1A3BD49F + sample 20: + time = 1706666 + flags = 1 + data = length 16384, hash FB672FF1 + sample 21: + time = 1792000 + flags = 1 + data = length 16384, hash 48AB8B45 + sample 22: + time = 1877333 + flags = 1 + data = length 16384, hash 13C9640A + sample 23: + time = 1962666 + flags = 1 + data = length 16384, hash 499E4A0B + sample 24: + time = 2048000 + flags = 1 + data = length 16384, hash F9A783E6 + sample 25: + time = 2133333 + flags = 1 + data = length 16384, hash D2B77598 + sample 26: + time = 2218666 + flags = 1 + data = length 16384, hash CE5B826C + sample 27: + time = 2304000 + flags = 1 + data = length 16384, hash E99EE956 + sample 28: + time = 2389333 + flags = 1 + data = length 16384, hash F2DB1486 + sample 29: + time = 2474666 + flags = 1 + data = length 16384, hash 1636EAB + sample 30: + time = 2560000 + flags = 1 + data = length 16384, hash 23457C08 + sample 31: + time = 2645333 + flags = 1 + data = length 16384, hash 30EB8381 + sample 32: + time = 2730666 + flags = 1 + data = length 1984, hash 59CFDE1B +tracksEnded = true diff --git a/extensions/flac/src/androidTest/assets/bear_with_id3.flac.1.dump b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.1.dump new file mode 100644 index 0000000000..100fdd1eaf --- /dev/null +++ b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.1.dump @@ -0,0 +1,122 @@ +seekMap: + isSeekable = true + duration = 2741000 + getPosition(0) = [[timeUs=0, position=55284]] +numberOfTracks = 1 +track 0: + format: + bitrate = 768000 + id = null + containerMimeType = null + sampleMimeType = audio/raw + maxInputSize = 16384 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = 2 + sampleRate = 48000 + pcmEncoding = 2 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 0 + language = null + drmInitData = - + initializationData: + total output bytes = 362432 + sample count = 23 + sample 0: + time = 853333 + flags = 1 + data = length 16384, hash 31583F2C + sample 1: + time = 938666 + flags = 1 + data = length 16384, hash E433A93D + sample 2: + time = 1024000 + flags = 1 + data = length 16384, hash 5E1C7051 + sample 3: + time = 1109333 + flags = 1 + data = length 16384, hash 43E6E358 + sample 4: + time = 1194666 + flags = 1 + data = length 16384, hash 5DC1B256 + sample 5: + time = 1280000 + flags = 1 + data = length 16384, hash 3D9D95CF + sample 6: + time = 1365333 + flags = 1 + data = length 16384, hash 2A5BD2C0 + sample 7: + time = 1450666 + flags = 1 + data = length 16384, hash 93E25061 + sample 8: + time = 1536000 + flags = 1 + data = length 16384, hash B81793D8 + sample 9: + time = 1621333 + flags = 1 + data = length 16384, hash 1A3BD49F + sample 10: + time = 1706666 + flags = 1 + data = length 16384, hash FB672FF1 + sample 11: + time = 1792000 + flags = 1 + data = length 16384, hash 48AB8B45 + sample 12: + time = 1877333 + flags = 1 + data = length 16384, hash 13C9640A + sample 13: + time = 1962666 + flags = 1 + data = length 16384, hash 499E4A0B + sample 14: + time = 2048000 + flags = 1 + data = length 16384, hash F9A783E6 + sample 15: + time = 2133333 + flags = 1 + data = length 16384, hash D2B77598 + sample 16: + time = 2218666 + flags = 1 + data = length 16384, hash CE5B826C + sample 17: + time = 2304000 + flags = 1 + data = length 16384, hash E99EE956 + sample 18: + time = 2389333 + flags = 1 + data = length 16384, hash F2DB1486 + sample 19: + time = 2474666 + flags = 1 + data = length 16384, hash 1636EAB + sample 20: + time = 2560000 + flags = 1 + data = length 16384, hash 23457C08 + sample 21: + time = 2645333 + flags = 1 + data = length 16384, hash 30EB8381 + sample 22: + time = 2730666 + flags = 1 + data = length 1984, hash 59CFDE1B +tracksEnded = true diff --git a/extensions/flac/src/androidTest/assets/bear_with_id3.flac.2.dump b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.2.dump new file mode 100644 index 0000000000..6c3cd731b3 --- /dev/null +++ b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.2.dump @@ -0,0 +1,78 @@ +seekMap: + isSeekable = true + duration = 2741000 + getPosition(0) = [[timeUs=0, position=55284]] +numberOfTracks = 1 +track 0: + format: + bitrate = 768000 + id = null + containerMimeType = null + sampleMimeType = audio/raw + maxInputSize = 16384 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = 2 + sampleRate = 48000 + pcmEncoding = 2 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 0 + language = null + drmInitData = - + initializationData: + total output bytes = 182208 + sample count = 12 + sample 0: + time = 1792000 + flags = 1 + data = length 16384, hash 48AB8B45 + sample 1: + time = 1877333 + flags = 1 + data = length 16384, hash 13C9640A + sample 2: + time = 1962666 + flags = 1 + data = length 16384, hash 499E4A0B + sample 3: + time = 2048000 + flags = 1 + data = length 16384, hash F9A783E6 + sample 4: + time = 2133333 + flags = 1 + data = length 16384, hash D2B77598 + sample 5: + time = 2218666 + flags = 1 + data = length 16384, hash CE5B826C + sample 6: + time = 2304000 + flags = 1 + data = length 16384, hash E99EE956 + sample 7: + time = 2389333 + flags = 1 + data = length 16384, hash F2DB1486 + sample 8: + time = 2474666 + flags = 1 + data = length 16384, hash 1636EAB + sample 9: + time = 2560000 + flags = 1 + data = length 16384, hash 23457C08 + sample 10: + time = 2645333 + flags = 1 + data = length 16384, hash 30EB8381 + sample 11: + time = 2730666 + flags = 1 + data = length 1984, hash 59CFDE1B +tracksEnded = true diff --git a/extensions/flac/src/androidTest/assets/bear_with_id3.flac.3.dump b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.3.dump new file mode 100644 index 0000000000..decf9c6af3 --- /dev/null +++ b/extensions/flac/src/androidTest/assets/bear_with_id3.flac.3.dump @@ -0,0 +1,38 @@ +seekMap: + isSeekable = true + duration = 2741000 + getPosition(0) = [[timeUs=0, position=55284]] +numberOfTracks = 1 +track 0: + format: + bitrate = 768000 + id = null + containerMimeType = null + sampleMimeType = audio/raw + maxInputSize = 16384 + width = -1 + height = -1 + frameRate = -1.0 + rotationDegrees = 0 + pixelWidthHeightRatio = 1.0 + channelCount = 2 + sampleRate = 48000 + pcmEncoding = 2 + encoderDelay = 0 + encoderPadding = 0 + subsampleOffsetUs = 9223372036854775807 + selectionFlags = 0 + language = null + drmInitData = - + initializationData: + total output bytes = 18368 + sample count = 2 + sample 0: + time = 2645333 + flags = 1 + data = length 16384, hash 30EB8381 + sample 1: + time = 2730666 + flags = 1 + data = length 1984, hash 59CFDE1B +tracksEnded = true diff --git a/extensions/flac/src/androidTest/java/com/google/android/exoplayer2/ext/flac/FlacExtractorTest.java b/extensions/flac/src/androidTest/java/com/google/android/exoplayer2/ext/flac/FlacExtractorTest.java index c5f1f5c146..fc9bdac2ea 100644 --- a/extensions/flac/src/androidTest/java/com/google/android/exoplayer2/ext/flac/FlacExtractorTest.java +++ b/extensions/flac/src/androidTest/java/com/google/android/exoplayer2/ext/flac/FlacExtractorTest.java @@ -33,7 +33,7 @@ public class FlacExtractorTest extends InstrumentationTestCase { } } - public void testSample() throws Exception { + public void testExtractFlacSample() throws Exception { ExtractorAsserts.assertBehavior( new ExtractorFactory() { @Override @@ -44,4 +44,16 @@ public class FlacExtractorTest extends InstrumentationTestCase { "bear.flac", getInstrumentation().getContext()); } + + public void testExtractFlacSampleWithId3Header() throws Exception { + ExtractorAsserts.assertBehavior( + new ExtractorFactory() { + @Override + public Extractor create() { + return new FlacExtractor(); + } + }, + "bear_with_id3.flac", + getInstrumentation().getContext()); + } } diff --git a/extensions/flac/src/main/java/com/google/android/exoplayer2/ext/flac/FlacExtractor.java b/extensions/flac/src/main/java/com/google/android/exoplayer2/ext/flac/FlacExtractor.java index 6859b44877..729a406315 100644 --- a/extensions/flac/src/main/java/com/google/android/exoplayer2/ext/flac/FlacExtractor.java +++ b/extensions/flac/src/main/java/com/google/android/exoplayer2/ext/flac/FlacExtractor.java @@ -17,20 +17,27 @@ package com.google.android.exoplayer2.ext.flac; import static com.google.android.exoplayer2.util.Util.getPcmEncoding; +import android.support.annotation.IntDef; +import android.support.annotation.Nullable; import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.Format; import com.google.android.exoplayer2.extractor.Extractor; import com.google.android.exoplayer2.extractor.ExtractorInput; import com.google.android.exoplayer2.extractor.ExtractorOutput; import com.google.android.exoplayer2.extractor.ExtractorsFactory; +import com.google.android.exoplayer2.extractor.Id3Peeker; import com.google.android.exoplayer2.extractor.PositionHolder; import com.google.android.exoplayer2.extractor.SeekMap; import com.google.android.exoplayer2.extractor.SeekPoint; import com.google.android.exoplayer2.extractor.TrackOutput; +import com.google.android.exoplayer2.metadata.Metadata; +import com.google.android.exoplayer2.metadata.id3.Id3Decoder; import com.google.android.exoplayer2.util.FlacStreamInfo; import com.google.android.exoplayer2.util.MimeTypes; import com.google.android.exoplayer2.util.ParsableByteArray; import java.io.IOException; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; import java.nio.ByteBuffer; import java.util.Arrays; @@ -51,22 +58,57 @@ public final class FlacExtractor implements Extractor { }; + /** Flags controlling the behavior of the extractor. */ + @Retention(RetentionPolicy.SOURCE) + @IntDef( + flag = true, + value = {FLAG_DISABLE_ID3_METADATA} + ) + public @interface Flags {} + + /** + * Flag to disable parsing of ID3 metadata. Can be set to save memory if ID3 metadata is not + * required. + */ + public static final int FLAG_DISABLE_ID3_METADATA = 1; + /** * FLAC signature: first 4 is the signature word, second 4 is the sizeof STREAMINFO. 0x22 is the * mandatory STREAMINFO. */ private static final byte[] FLAC_SIGNATURE = {'f', 'L', 'a', 'C', 0, 0, 0, 0x22}; - private ExtractorOutput extractorOutput; - private TrackOutput trackOutput; + private final Id3Peeker id3Peeker; + private final @Flags int flags; private FlacDecoderJni decoderJni; - private boolean metadataParsed; + private ExtractorOutput extractorOutput; + private TrackOutput trackOutput; private ParsableByteArray outputBuffer; private ByteBuffer outputByteBuffer; + private Metadata id3Metadata; + private long id3SectionSize; + + private boolean metadataParsed; + + /** Constructs an instance with flags = 0. */ + public FlacExtractor() { + this(0); + } + + /** + * Constructs an instance. + * + * @param flags Flags that control the extractor's behavior. + */ + public FlacExtractor(int flags) { + this.flags = flags; + id3Peeker = new Id3Peeker(); + } + @Override public void init(ExtractorOutput output) { extractorOutput = output; @@ -81,14 +123,27 @@ public final class FlacExtractor implements Extractor { @Override public boolean sniff(ExtractorInput input) throws IOException, InterruptedException { - byte[] header = new byte[FLAC_SIGNATURE.length]; - input.peekFully(header, 0, FLAC_SIGNATURE.length); - return Arrays.equals(header, FLAC_SIGNATURE); + if (input.getPosition() == 0) { + id3Metadata = peekId3Data(input); + id3SectionSize = input.getPeekPosition(); + } + boolean isFlacFormat = peekFlacSignature(input); + if (isFlacFormat) { + // If this is FLAC format, we should skip the whole ID3 section. + skipFullyId3Section(input); + } + return isFlacFormat; } @Override public int read(final ExtractorInput input, PositionHolder seekPosition) throws IOException, InterruptedException { + if (input.getPosition() == 0) { + id3Metadata = peekId3Data(input); + id3SectionSize = input.getPeekPosition(); + } + skipFullyId3Section(input); + decoderJni.setData(input); if (!metadataParsed) { @@ -100,7 +155,7 @@ public final class FlacExtractor implements Extractor { } } catch (IOException e) { decoderJni.reset(0); - input.setRetryPosition(0, e); + input.setRetryPosition(id3SectionSize, e); throw e; // never executes } metadataParsed = true; @@ -108,22 +163,25 @@ public final class FlacExtractor implements Extractor { boolean isSeekable = decoderJni.getSeekPosition(0) != -1; extractorOutput.seekMap( isSeekable - ? new FlacSeekMap(streamInfo.durationUs(), decoderJni) + ? new FlacSeekMap(streamInfo.durationUs(), decoderJni, id3SectionSize) : new SeekMap.Unseekable(streamInfo.durationUs(), 0)); Format mediaFormat = Format.createAudioSampleFormat( - null, + /* id= */ null, MimeTypes.AUDIO_RAW, - null, + /* codecs= */ null, streamInfo.bitRate(), streamInfo.maxDecodedFrameSize(), streamInfo.channels, streamInfo.sampleRate, getPcmEncoding(streamInfo.bitsPerSample), - null, - null, - 0, - null); + /* encoderDelay= */ 0, + /* encoderPadding= */ 0, + /* initializationData= */ null, + /* drmInitData= */ null, + /* selectionFlags= */ 0, + /* language= */ null, + (flags & FLAG_DISABLE_ID3_METADATA) != 0 ? null : id3Metadata); trackOutput.format(mediaFormat); outputBuffer = new ParsableByteArray(streamInfo.maxDecodedFrameSize()); @@ -138,7 +196,7 @@ public final class FlacExtractor implements Extractor { } catch (IOException e) { if (lastDecodePosition >= 0) { decoderJni.reset(lastDecodePosition); - input.setRetryPosition(lastDecodePosition, e); + input.setRetryPosition(id3SectionSize + lastDecodePosition, e); } throw e; } @@ -154,11 +212,12 @@ public final class FlacExtractor implements Extractor { @Override public void seek(long position, long timeUs) { - if (position == 0) { + if (position <= id3SectionSize) { metadataParsed = false; } + long flacStreamPosition = Math.max(0, position - id3SectionSize); if (decoderJni != null) { - decoderJni.reset(position); + decoderJni.reset(flacStreamPosition); } } @@ -170,14 +229,48 @@ public final class FlacExtractor implements Extractor { } } + /** + * Peeks ID3 tag data (if present) at the beginning of the input. + * + * @return The first ID3 tag decoded into a {@link Metadata} object. May be null if ID3 tag is not + * present in the input. + */ + @Nullable + private Metadata peekId3Data(ExtractorInput input) throws IOException, InterruptedException { + input.resetPeekPosition(); + boolean disableId3Frames = (flags & FLAG_DISABLE_ID3_METADATA) != 0; + Id3Decoder.FramePredicate id3FramePredicate = + disableId3Frames ? Id3Decoder.NO_FRAMES_PREDICATE : null; + return id3Peeker.peekId3Data(input, id3FramePredicate); + } + + /** + * Peeks from the beginning of the input to see if {@link #FLAC_SIGNATURE} is present. + * + * @return Whether the input begins with {@link #FLAC_SIGNATURE}. + */ + private boolean peekFlacSignature(ExtractorInput input) throws IOException, InterruptedException { + byte[] header = new byte[FLAC_SIGNATURE.length]; + input.peekFully(header, 0, FLAC_SIGNATURE.length); + return Arrays.equals(header, FLAC_SIGNATURE); + } + + /** Skips input until we have passed the whole Id3 section. */ + private void skipFullyId3Section(ExtractorInput input) throws IOException, InterruptedException { + int bytesToSkip = Math.max(0, (int) (id3SectionSize - input.getPosition())); + input.skipFully(bytesToSkip); + } + private static final class FlacSeekMap implements SeekMap { private final long durationUs; private final FlacDecoderJni decoderJni; + private final long id3SectionSize; - public FlacSeekMap(long durationUs, FlacDecoderJni decoderJni) { + public FlacSeekMap(long durationUs, FlacDecoderJni decoderJni, long id3SectionSize) { this.durationUs = durationUs; this.decoderJni = decoderJni; + this.id3SectionSize = id3SectionSize; } @Override @@ -188,7 +281,8 @@ public final class FlacExtractor implements Extractor { @Override public SeekPoints getSeekPoints(long timeUs) { // TODO: Access the seek table via JNI to return two seek points when appropriate. - return new SeekPoints(new SeekPoint(timeUs, decoderJni.getSeekPosition(timeUs))); + return new SeekPoints( + new SeekPoint(timeUs, id3SectionSize + decoderJni.getSeekPosition(timeUs))); } @Override diff --git a/library/core/src/main/java/com/google/android/exoplayer2/extractor/Id3Peeker.java b/library/core/src/main/java/com/google/android/exoplayer2/extractor/Id3Peeker.java new file mode 100644 index 0000000000..8dbcfafaf2 --- /dev/null +++ b/library/core/src/main/java/com/google/android/exoplayer2/extractor/Id3Peeker.java @@ -0,0 +1,87 @@ +/* + * Copyright (C) 2018 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.android.exoplayer2.extractor; + +import android.support.annotation.Nullable; +import com.google.android.exoplayer2.metadata.Metadata; +import com.google.android.exoplayer2.metadata.id3.Id3Decoder; +import com.google.android.exoplayer2.util.ParsableByteArray; +import java.io.EOFException; +import java.io.IOException; + +/** + * Peeks data from the beginning of an {@link ExtractorInput} to determine if there is any ID3 tag. + */ +public final class Id3Peeker { + + private final ParsableByteArray scratch; + + public Id3Peeker() { + scratch = new ParsableByteArray(Id3Decoder.ID3_HEADER_LENGTH); + } + + /** + * Peeks ID3 data from the input and parses the first ID3 tag. + * + * @param input The {@link ExtractorInput} from which data should be peeked. + * @param id3FramePredicate Determines which ID3 frames are decoded. May be null to decode all + * frames. + * @return The first ID3 tag decoded into a {@link Metadata} object. May be null if ID3 tag is not + * present in the input. + * @throws IOException If an error occurred peeking from the input. + * @throws InterruptedException If the thread was interrupted. + */ + @Nullable + public Metadata peekId3Data( + ExtractorInput input, @Nullable Id3Decoder.FramePredicate id3FramePredicate) + throws IOException, InterruptedException { + int peekedId3Bytes = 0; + Metadata metadata = null; + while (true) { + try { + input.peekFully(scratch.data, 0, Id3Decoder.ID3_HEADER_LENGTH); + } catch (EOFException e) { + // If input has less than ID3_HEADER_LENGTH, ignore the rest. + break; + } + scratch.setPosition(0); + if (scratch.readUnsignedInt24() != Id3Decoder.ID3_TAG) { + // Not an ID3 tag. + break; + } + scratch.skipBytes(3); // Skip major version, minor version and flags. + int framesLength = scratch.readSynchSafeInt(); + int tagLength = Id3Decoder.ID3_HEADER_LENGTH + framesLength; + + if (metadata == null) { + byte[] id3Data = new byte[tagLength]; + System.arraycopy(scratch.data, 0, id3Data, 0, Id3Decoder.ID3_HEADER_LENGTH); + input.peekFully(id3Data, Id3Decoder.ID3_HEADER_LENGTH, framesLength); + + metadata = new Id3Decoder(id3FramePredicate).decode(id3Data, tagLength); + } else { + input.advancePeekPosition(framesLength); + } + + peekedId3Bytes += tagLength; + } + + input.resetPeekPosition(); + input.advancePeekPosition(peekedId3Bytes); + return metadata; + } +} diff --git a/library/core/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java b/library/core/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java index 5c56dc460a..bd786191a0 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.java @@ -24,6 +24,7 @@ import com.google.android.exoplayer2.extractor.ExtractorInput; import com.google.android.exoplayer2.extractor.ExtractorOutput; import com.google.android.exoplayer2.extractor.ExtractorsFactory; import com.google.android.exoplayer2.extractor.GaplessInfoHolder; +import com.google.android.exoplayer2.extractor.Id3Peeker; import com.google.android.exoplayer2.extractor.MpegAudioHeader; import com.google.android.exoplayer2.extractor.PositionHolder; import com.google.android.exoplayer2.extractor.SeekMap; @@ -99,6 +100,7 @@ public final class Mp3Extractor implements Extractor { private final ParsableByteArray scratch; private final MpegAudioHeader synchronizedHeader; private final GaplessInfoHolder gaplessInfoHolder; + private final Id3Peeker id3Peeker; // Extractor outputs. private ExtractorOutput extractorOutput; @@ -135,6 +137,7 @@ public final class Mp3Extractor implements Extractor { synchronizedHeader = new MpegAudioHeader(); gaplessInfoHolder = new GaplessInfoHolder(); basisTimeUs = C.TIME_UNSET; + id3Peeker = new Id3Peeker(); } // Extractor implementation. @@ -181,11 +184,23 @@ public final class Mp3Extractor implements Extractor { seeker = getConstantBitrateSeeker(input); } extractorOutput.seekMap(seeker); - trackOutput.format(Format.createAudioSampleFormat(null, synchronizedHeader.mimeType, null, - Format.NO_VALUE, MpegAudioHeader.MAX_FRAME_SIZE_BYTES, synchronizedHeader.channels, - synchronizedHeader.sampleRate, Format.NO_VALUE, gaplessInfoHolder.encoderDelay, - gaplessInfoHolder.encoderPadding, null, null, 0, null, - (flags & FLAG_DISABLE_ID3_METADATA) != 0 ? null : metadata)); + trackOutput.format( + Format.createAudioSampleFormat( + /* id= */ null, + synchronizedHeader.mimeType, + /* codecs= */ null, + /* bitrate= */ Format.NO_VALUE, + MpegAudioHeader.MAX_FRAME_SIZE_BYTES, + synchronizedHeader.channels, + synchronizedHeader.sampleRate, + /* pcmEncoding= */ Format.NO_VALUE, + gaplessInfoHolder.encoderDelay, + gaplessInfoHolder.encoderPadding, + /* initializationData= */ null, + /* drmInitData= */ null, + /* selectionFlags= */ 0, + /* language= */ null, + (flags & FLAG_DISABLE_ID3_METADATA) != 0 ? null : metadata)); } return readSample(input); } @@ -242,7 +257,15 @@ public final class Mp3Extractor implements Extractor { int searchLimitBytes = sniffing ? MAX_SNIFF_BYTES : MAX_SYNC_BYTES; input.resetPeekPosition(); if (input.getPosition() == 0) { - peekId3Data(input); + // We need to parse enough ID3 metadata to retrieve any gapless playback information even + // if ID3 metadata parsing is disabled. + boolean onlyDecodeGaplessInfoFrames = (flags & FLAG_DISABLE_ID3_METADATA) != 0; + Id3Decoder.FramePredicate id3FramePredicate = + onlyDecodeGaplessInfoFrames ? GaplessInfoHolder.GAPLESS_INFO_ID3_FRAME_PREDICATE : null; + metadata = id3Peeker.peekId3Data(input, id3FramePredicate); + if (metadata != null) { + gaplessInfoHolder.setFromMetadata(metadata); + } peekedId3Bytes = (int) input.getPeekPosition(); if (!sniffing) { input.skipFully(peekedId3Bytes); @@ -296,49 +319,6 @@ public final class Mp3Extractor implements Extractor { return true; } - /** - * Peeks ID3 data from the input, including gapless playback information. - * - * @param input The {@link ExtractorInput} from which data should be peeked. - * @throws IOException If an error occurred peeking from the input. - * @throws InterruptedException If the thread was interrupted. - */ - private void peekId3Data(ExtractorInput input) throws IOException, InterruptedException { - int peekedId3Bytes = 0; - while (true) { - input.peekFully(scratch.data, 0, Id3Decoder.ID3_HEADER_LENGTH); - scratch.setPosition(0); - if (scratch.readUnsignedInt24() != Id3Decoder.ID3_TAG) { - // Not an ID3 tag. - break; - } - scratch.skipBytes(3); // Skip major version, minor version and flags. - int framesLength = scratch.readSynchSafeInt(); - int tagLength = Id3Decoder.ID3_HEADER_LENGTH + framesLength; - - if (metadata == null) { - byte[] id3Data = new byte[tagLength]; - System.arraycopy(scratch.data, 0, id3Data, 0, Id3Decoder.ID3_HEADER_LENGTH); - input.peekFully(id3Data, Id3Decoder.ID3_HEADER_LENGTH, framesLength); - // We need to parse enough ID3 metadata to retrieve any gapless playback information even - // if ID3 metadata parsing is disabled. - Id3Decoder.FramePredicate id3FramePredicate = (flags & FLAG_DISABLE_ID3_METADATA) != 0 - ? GaplessInfoHolder.GAPLESS_INFO_ID3_FRAME_PREDICATE : null; - metadata = new Id3Decoder(id3FramePredicate).decode(id3Data, tagLength); - if (metadata != null) { - gaplessInfoHolder.setFromMetadata(metadata); - } - } else { - input.advancePeekPosition(framesLength); - } - - peekedId3Bytes += tagLength; - } - - input.resetPeekPosition(); - input.advancePeekPosition(peekedId3Bytes); - } - /** * Consumes the next frame from the {@code input} if it contains VBRI or Xing seeking metadata, * returning a {@link Seeker} if the metadata was present and valid, or {@code null} otherwise. diff --git a/library/core/src/main/java/com/google/android/exoplayer2/metadata/id3/Id3Decoder.java b/library/core/src/main/java/com/google/android/exoplayer2/metadata/id3/Id3Decoder.java index a3b88953ad..ad24bac6c4 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/metadata/id3/Id3Decoder.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/metadata/id3/Id3Decoder.java @@ -53,6 +53,16 @@ public final class Id3Decoder implements MetadataDecoder { } + /** A predicate that indicates no frames should be decoded. */ + public static final FramePredicate NO_FRAMES_PREDICATE = + new FramePredicate() { + + @Override + public boolean evaluate(int majorVersion, int id0, int id1, int id2, int id3) { + return false; + } + }; + private static final String TAG = "Id3Decoder"; /** diff --git a/library/core/src/test/java/com/google/android/exoplayer2/extractor/Id3PeekerTest.java b/library/core/src/test/java/com/google/android/exoplayer2/extractor/Id3PeekerTest.java new file mode 100644 index 0000000000..a397f70886 --- /dev/null +++ b/library/core/src/test/java/com/google/android/exoplayer2/extractor/Id3PeekerTest.java @@ -0,0 +1,111 @@ +/* + * Copyright (C) 2018 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.google.android.exoplayer2.extractor; + +import static com.google.common.truth.Truth.assertThat; + +import com.google.android.exoplayer2.metadata.Metadata; +import com.google.android.exoplayer2.metadata.id3.ApicFrame; +import com.google.android.exoplayer2.metadata.id3.CommentFrame; +import com.google.android.exoplayer2.metadata.id3.Id3Decoder; +import com.google.android.exoplayer2.metadata.id3.Id3DecoderTest; +import com.google.android.exoplayer2.testutil.FakeExtractorInput; +import java.io.IOException; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.robolectric.RobolectricTestRunner; + +/** Unit test for {@link Id3Peeker}. */ +@RunWith(RobolectricTestRunner.class) +public final class Id3PeekerTest { + + @Test + public void testPeekId3Data_returnNull_ifId3TagNotPresentAtBeginningOfInput() + throws IOException, InterruptedException { + Id3Peeker id3Peeker = new Id3Peeker(); + FakeExtractorInput input = + new FakeExtractorInput.Builder() + .setData(new byte[] {1, 'I', 'D', '3', 2, 3, 4, 5, 6, 7, 8, 9, 10}) + .build(); + + Metadata metadata = id3Peeker.peekId3Data(input, /* id3FramePredicate= */ null); + assertThat(metadata).isNull(); + } + + @Test + public void testPeekId3Data_returnId3Tag_ifId3TagPresent() + throws IOException, InterruptedException { + Id3Peeker id3Peeker = new Id3Peeker(); + + byte[] rawId3 = + Id3DecoderTest.buildSingleFrameTag( + "APIC", + new byte[] { + 3, 105, 109, 97, 103, 101, 47, 106, 112, 101, 103, 0, 16, 72, 101, 108, 108, 111, 32, + 87, 111, 114, 108, 100, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 + }); + FakeExtractorInput input = new FakeExtractorInput.Builder().setData(rawId3).build(); + + Metadata metadata = id3Peeker.peekId3Data(input, /* id3FramePredicate= */ null); + assertThat(metadata.length()).isEqualTo(1); + + ApicFrame apicFrame = (ApicFrame) metadata.get(0); + assertThat(apicFrame.mimeType).isEqualTo("image/jpeg"); + assertThat(apicFrame.pictureType).isEqualTo(16); + assertThat(apicFrame.description).isEqualTo("Hello World"); + assertThat(apicFrame.pictureData).hasLength(10); + assertThat(apicFrame.pictureData).isEqualTo(new byte[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}); + } + + @Test + public void testPeekId3Data_returnId3TagAccordingToGivenPredicate_ifId3TagPresent() + throws IOException, InterruptedException { + Id3Peeker id3Peeker = new Id3Peeker(); + + byte[] rawId3 = + Id3DecoderTest.buildMultiFramesTag( + new Id3DecoderTest.FrameSpec( + "COMM", + new byte[] { + 3, 101, 110, 103, 100, 101, 115, 99, 114, 105, 112, 116, 105, 111, 110, 0, 116, + 101, 120, 116, 0 + }), + new Id3DecoderTest.FrameSpec( + "APIC", + new byte[] { + 3, 105, 109, 97, 103, 101, 47, 106, 112, 101, 103, 0, 16, 72, 101, 108, 108, 111, + 32, 87, 111, 114, 108, 100, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 + })); + FakeExtractorInput input = new FakeExtractorInput.Builder().setData(rawId3).build(); + + Metadata metadata = + id3Peeker.peekId3Data( + input, + new Id3Decoder.FramePredicate() { + @Override + public boolean evaluate(int majorVersion, int id0, int id1, int id2, int id3) { + return id0 == 'C' && id1 == 'O' && id2 == 'M' && id3 == 'M'; + } + }); + assertThat(metadata.length()).isEqualTo(1); + + CommentFrame commentFrame = (CommentFrame) metadata.get(0); + assertThat(commentFrame.language).isEqualTo("eng"); + assertThat(commentFrame.description).isEqualTo("description"); + assertThat(commentFrame.text).isEqualTo("text"); + } +} diff --git a/library/core/src/test/java/com/google/android/exoplayer2/metadata/id3/Id3DecoderTest.java b/library/core/src/test/java/com/google/android/exoplayer2/metadata/id3/Id3DecoderTest.java index 4e7ae0eec0..0b992f0981 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/metadata/id3/Id3DecoderTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/metadata/id3/Id3DecoderTest.java @@ -22,6 +22,7 @@ import com.google.android.exoplayer2.metadata.Metadata; import com.google.android.exoplayer2.metadata.MetadataDecoderException; import com.google.android.exoplayer2.util.Assertions; import java.nio.charset.Charset; +import java.util.Arrays; import org.junit.Test; import org.junit.runner.RunWith; import org.robolectric.RobolectricTestRunner; @@ -32,7 +33,7 @@ import org.robolectric.RobolectricTestRunner; @RunWith(RobolectricTestRunner.class) public final class Id3DecoderTest { - private static final byte[] TAG_HEADER = new byte[] {73, 68, 51, 4, 0, 0, 0, 0, 0, 0}; + private static final byte[] TAG_HEADER = new byte[] {'I', 'D', '3', 4, 0, 0, 0, 0, 0, 0}; private static final int FRAME_HEADER_LENGTH = 10; private static final int ID3_TEXT_ENCODING_UTF_8 = 3; @@ -202,33 +203,90 @@ public final class Id3DecoderTest { assertThat(commentFrame.text).isEmpty(); } - private static byte[] buildSingleFrameTag(String frameId, byte[] frameData) { - byte[] frameIdBytes = frameId.getBytes(Charset.forName(C.UTF8_NAME)); - Assertions.checkState(frameIdBytes.length == 4); + @Test + public void testDecodeMultiFrames() throws MetadataDecoderException { + byte[] rawId3 = + buildMultiFramesTag( + new FrameSpec( + "COMM", + new byte[] { + 3, 101, 110, 103, 100, 101, 115, 99, 114, 105, 112, 116, 105, 111, 110, 0, 116, + 101, 120, 116, 0 + }), + new FrameSpec( + "APIC", + new byte[] { + 3, 105, 109, 97, 103, 101, 47, 106, 112, 101, 103, 0, 16, 72, 101, 108, 108, 111, + 32, 87, 111, 114, 108, 100, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 + })); + Id3Decoder decoder = new Id3Decoder(); + Metadata metadata = decoder.decode(rawId3, rawId3.length); + assertThat(metadata.length()).isEqualTo(2); + CommentFrame commentFrame = (CommentFrame) metadata.get(0); + ApicFrame apicFrame = (ApicFrame) metadata.get(1); - byte[] tagData = new byte[TAG_HEADER.length + FRAME_HEADER_LENGTH + frameData.length]; - System.arraycopy(TAG_HEADER, 0, tagData, 0, TAG_HEADER.length); + assertThat(commentFrame.language).isEqualTo("eng"); + assertThat(commentFrame.description).isEqualTo("description"); + assertThat(commentFrame.text).isEqualTo("text"); + + assertThat(apicFrame.mimeType).isEqualTo("image/jpeg"); + assertThat(apicFrame.pictureType).isEqualTo(16); + assertThat(apicFrame.description).isEqualTo("Hello World"); + assertThat(apicFrame.pictureData).hasLength(10); + assertThat(apicFrame.pictureData).isEqualTo(new byte[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}); + } + + public static byte[] buildSingleFrameTag(String frameId, byte[] frameData) { + return buildMultiFramesTag(new FrameSpec(frameId, frameData)); + } + + public static byte[] buildMultiFramesTag(FrameSpec... frames) { + int totalLength = TAG_HEADER.length; + for (FrameSpec frame : frames) { + byte[] frameData = frame.frameData; + totalLength += FRAME_HEADER_LENGTH + frameData.length; + } + byte[] tagData = Arrays.copyOf(TAG_HEADER, totalLength); // Fill in the size part of the tag header. int offset = TAG_HEADER.length - 4; - int tagSize = frameData.length + FRAME_HEADER_LENGTH; + int tagSize = totalLength - TAG_HEADER.length; tagData[offset++] = (byte) ((tagSize >> 21) & 0x7F); tagData[offset++] = (byte) ((tagSize >> 14) & 0x7F); tagData[offset++] = (byte) ((tagSize >> 7) & 0x7F); tagData[offset++] = (byte) (tagSize & 0x7F); - // Fill in the frame header. - tagData[offset++] = frameIdBytes[0]; - tagData[offset++] = frameIdBytes[1]; - tagData[offset++] = frameIdBytes[2]; - tagData[offset++] = frameIdBytes[3]; - tagData[offset++] = (byte) ((frameData.length >> 24) & 0xFF); - tagData[offset++] = (byte) ((frameData.length >> 16) & 0xFF); - tagData[offset++] = (byte) ((frameData.length >> 8) & 0xFF); - tagData[offset++] = (byte) (frameData.length & 0xFF); - offset += 2; // Frame flags set to 0 - // Fill in the frame data. - System.arraycopy(frameData, 0, tagData, offset, frameData.length); + for (FrameSpec frame : frames) { + byte[] frameData = frame.frameData; + String frameId = frame.frameId; + byte[] frameIdBytes = frameId.getBytes(Charset.forName(C.UTF8_NAME)); + Assertions.checkState(frameIdBytes.length == 4); + + // Fill in the frame header. + tagData[offset++] = frameIdBytes[0]; + tagData[offset++] = frameIdBytes[1]; + tagData[offset++] = frameIdBytes[2]; + tagData[offset++] = frameIdBytes[3]; + tagData[offset++] = (byte) ((frameData.length >> 24) & 0xFF); + tagData[offset++] = (byte) ((frameData.length >> 16) & 0xFF); + tagData[offset++] = (byte) ((frameData.length >> 8) & 0xFF); + tagData[offset++] = (byte) (frameData.length & 0xFF); + offset += 2; // Frame flags set to 0 + + // Fill in the frame data. + System.arraycopy(frameData, 0, tagData, offset, frameData.length); + offset += frameData.length; + } return tagData; } + /** Specify an ID3 frame. */ + public static final class FrameSpec { + public final String frameId; + public final byte[] frameData; + + public FrameSpec(String frameId, byte[] frameData) { + this.frameId = frameId; + this.frameData = frameData; + } + } }
  • Bi666c$l`=&J_ciz!N zo-G9j42JA^`KF}Bt5ok!z3TenJla9w4S5}FGVbemEQ%kyq;}7s0}+)t zV0ZLsU~EuB(&X;lPd7)(^YP-xS`($rJg=c!1GY`BN!7bj8ES23Qfk#!HllkPU49&`x?I?dBVCc4If4?p0iBA%=jt~EtyPx-= z_FH(RR^s!Yr+@PB9S3y&p!-^5QFhFum4@}aW-6`4MeL%7b^g^)TZMOX3QJ(lIfA!` zMTy^=oydrt@t;Js#*~e(Ul>>F%+MQQnk#CiO~%yRK}~4OUFF7w_*%zFQYl!aS~9B@py0-Rbc?yKj%q zl#v&xW@NKqq0je7Qv4=_)bKj5&Z~2$trK=5gD;$#PZu$4B8R+P+b2$#GZ%9mQ`VpK zFPsSX`!ajau{k9<3_}x0DO)T2b8VNuJN8}vi0^n-@1nQSYvp$`d2MkR0~UF1`KWLQ zB>aw)pwQ{Pubuk;;DNtPLk%=j3jqmb3$%5%Ao24J!H)M%GO=JexuaMJ+y&-Kxmn?C z0j7hj&}tVZ)xtpc57-OU3R__yrz*65HT@2nLCKVAk^x;R5P(S z8UzmHYcNd&wsHW#m1O@SwN8I7x8;PQnSX1sTfI5pBOOv*2!kjRd9uC@$_n<8v=izH zp)y%ES#+2SIP(5(9ROZ|DGgYR#gZzCm0*w>lpR@?9POx3Y-O-Nhpbgf_&c5KPz-~) zsAH`Va9f;}U=k4u%!9x*$mM`3XtM2J9EeJ1xN$ zkZYuKeX~@Pi9~gxRyIUK!?yl`q7s)2Qa4qwfJ1?TRby?i20vN^zCOriL7*jB+=2vS z^jcX?Jd*V;7%%`18m7S*3b8JsZ?co0>A0nsrS&Bch(F<4Oew#9%U`HsKAa4^zE z11K-~`iqbRf}$k@NZN=!L9JjU8InoE4#ELrs>?#CT8w6Cf~g!qGNVl$UI}KJGr?!6 zbo#{9v;cXfxE&O1*sv@CJw>I1mUb-+qX7Usb%0<22PH6Mf&w{6M^wSg3MgNX6E)Oq z+2G|R;Bi<`pogjeIu5ulwS%!t4RGj`yv?DRs=iB+S%COTRq~0?1`YaF5MYB#fjv%v z!YN=Gn`Q=ZS@NI~XX&5|C?>nmnP?hNQaVB4g-2DCwTCNfUO zgAk~-jaDEb0R*6UFjhYR!f~LP!vj~St}Twrgp(?@SODUr(_m<9a|a#`RR<&3{#J0n zb>Tphbr25nQjqJqxL_>61*HxO$3Q56Wr9E!*<1?b1VCUZo}WbY9bfHR|iY!^)z!&JzykZdbL#S6q5)M`pS z?D@38W(yn#OaqyJsYfEZcfd^BQOgR!pAWty3;{!fpFCOH5xJ^WgvT*`bYU#8G^GwM zjAdX91lPO0hB_1tl7AouECl;KzJ=Kc7^*VJTtLel*iY$r478r*0?Txvh_kRDFY`GF zdg;N$USIYA5#*GT>E6XKd~gWx5inIT>Odq=3?ryZh*Ryv368;PI1rXm;IMR`Xz==E zd3XR!*1wPr($7gdK91$zK+%%3ylrTeiK3Cg%TvQWkFs1S;Tm|zAT4t%5pn38XcTQQI@hNyx%dZ7mh zVS(z=mKD^>D5O)w#0iza7713{x!6i}kd*}&SFH|#VPFItJrjsn0iOy3j~{^j5ToHj zr=Zj=IAlOGt2pRVeE;EaGWxc|8V63EzvOP!W81G z7v*MiIg7h?4fh$8wza5rr5=9p$Jq3pb>$O2_55SzT2DUa=j$4&>Ugf$0Ech^0dp-# zG0?W?jdQKa&rg;k;nC*aT47a+`-AX|rs!H~<~a(}Ms2i2qi$6*xYPyPGOO><2Z@_~ z|G@M0O=?$7u@OmjC|{z(eWk2vvcCJ_r(~3c^7@!T3qku33Ho!)xAW1%`)SF??A{&t zcklqE!~TOu4&scX*w72g!|i_t(6-_M|Ft#Foll}Dd8nu>SiV2@nC?+Sy`9M#CdU^| z^bgfyl7xdXMFOWb>Wbbw*Uz75%M9K0&RwJ_b1XQa?1lp}!ad#m{UvhLCd~=Y;*s`L zcaj2294S0vL1G(4-#sB1)h>SJ{_Ouc`tC(T?p;)~o_LU9WB=l{s_3z5@rfZWe^OIt zi#3W!`0Z?Jk)9H0?3Y~eZ;8>i$4E%|0d2&KFqfpTJEUdA_7nJ-IRgdk4!uIJ_*2_ zHrew3ql6zP1aNt13JQ(Vdr><_X>ybYRo+Mwg_l`aM#aTT(sy)=Dop144R9CO@b}-_ z)(&^%#M?-Z4xDK=y?Q9rPDIab+P-$;i}8W8#y_@f_;1O$2PzP^iWn#4g`Ozn$ack# zR1{0bD!jkmQ%iv_C%;VG2oPZ<;($A_=gLu0G&4-J$!*9yigkh3HF6y6unXtuM-%=FpQP@3|I8?mlK0SHo^ZPF+ zuh=j@oInk#-o83~7;&QUXXXpZ`3a8$r$s_i2!-`iPV@65o9)yhi_9hE%%n?+A;EYv z-qd@H*WRnl!^R^mFv&dG|RW`PY#^_~Nw(ZNx zc|FbRUW3cm>{W7=I4#87)-KH3n|Tm=>*Umq@r5%YQiWuZnbhM9h+6=}r~h8KgIuFL zmv3zR(+N4+y{7cVd^@|)822ZFoz}Vj{1f5X-{Z{Y<9b|pEFlFMuY#y4cGH5 z_f@pRa7o}VgSch)qwXz{M?7-dV` zaeOdd>U?i>H9Az$=hXYpHJmK0IvS2wOtKYz%q`GRwwt`vh(Rw3;m_(E5nFq_c>pN1 z8Oe8%F^6OkzpnW#>4)as9l9YVq2ALpZ=P{t_IKH2kTwi8WqH;`eY#6eBhGBN!j<2J zpAQsugJ=rM!td-EeG11rf;zj4v1OI{$4Bj)5(V*pNMO#>KVwQaJWIVd83t3 z-FUezO){Wk`K7z?3ux^RqM)+)QJ3daea9yRhL>AktSIpehTV*xwfvTNbmjX^19jop zW2au6Ij2OgzR86+=O^D6lIrb~na;Spec;;0KC{H3s~&x0swV$@v#owKw`Q-4nFKm_B3aPJ`R{JPqo?Fo9TX#4Yp}*@9-&$vtHSL2q z|J!B!za-1o4{w{>*ErT@9z@7R)nzpO5j*^9_uJJ8QB8=xMW5I2t|xnS6G!yYRQsc6 zJ^3o0KRQM8G-2^K6)CCW$?V0e0)FxiFXc^wxl;zH>rft{#D7u3(V6)Xz3bt8FRFC8 zQkO}TF|({NgQ!EFHB~6OYJ1v&vIx;n7#_)$TWo|)$IC*Cl+~;WjmC43yczvxf?`+n zJ*A73?3mBZt7^VY$zC&ZptDn4l#PP-*U#ka7ZIyd)_e20&0%QW^0A0}$;JPD=t}rX zxiuVG?owLxGDSFm z$Mev3%Z!wigEOaQe%w8DxL4389LaC9xu{I9p9UGbXvegpU^f4@AM{GM_;2dHtd}QF z%Se?7T|7Xo4v}jo)%xrfP(;NwQ)h>mFLi&AGhmp*Gfi5T`w^t%6>F2TG2 zw#u5XcS4U|lE#VGhXjZEprzi0UCmYGb#gUQYzt9>ZtUi34 zHL4ayJVe_VC=y$6%VOden@EU==ar`) zeOKn#eOAprj)3ym7~`87eH{K-s@hT@Ny#p`Tf|pU#VhP#RlD_xI*rE{?}yxIz4$)# z=#$}5sKwKZE(?|LA?P28!048}7pivdX}Zg2bKV_Dm#SDL3p(og{I+TpGoM~bmpSu_ z!Tq_j(8V}9%tabRRb=v*pA`vp5?#pX=3Ep=7pbc&z5ufc{priQwyEqZSh<+|_G?3e zU`<|jVuyo{qZ(`K;p4M~9B;A!9&;i(edeyPCgRM^Rgoh(V|cY*L8Eu|=4~E{m%qLs zxPG3@`Ms$T5vU-0ss5$bX6BSMu%V-r=1u`o44w88&v!Runkji%(6tsi=R5xIN8*Y5{QHxl zl`gex?HtP6`5u9F&T0R|`5Zl_muz%cF#Yw3e1@K3(y94Y<7)~kk09tKU2JI_#MS;b zEv{RD76A(szMp1$I=h23@CQ;iy1Y>O(2WHt510GNJJ08zW3QbuYn6UHhu_8RQ&0PM z@5vw0Bl$t@*ySSiy|`j#IU&7~lkjFr*P}u8mcOxp;2)UPgFSvsl#44;y7bNm(Hfx^ zv4983p^78FpvW%!^SRYI-DCXN4wl8Lrx^bLA|f1BA zn?08`_4KFHAWXU${qR80(~L3RI+yK)ue_YaHEw%qwSsu9UA{%h4Ji$N`yVKQ2oeu`MNe?m#mB9=dyDf54ak1vf zk{1u1c1T?^6=99Bzxa2|+`bjaD!I&-%th*PPn>4hq^V#96j|$8kgwhEZ~gC|Gp{Sf zsxwXvmnM%Z4!Fz8b)`{p*d;~2WCfu!JmyTn)k8hne9`qs4`=KrZ6~ZyN#5QYfj~1S z#PF#~uIrI!B4tOa*DNxH^{&NbeB z`Un1B0UZ|J=m*+QNoD>Q_6~pT(twFt9@==uU3&dgH`+w&+zS~6?}fso=5vS*COx>?x@Inw9V14L81GRKqMMGKTBr7&EL*T1kS{!6UivqwUR&gCg_|AcHlp zItolYAa3g(8{1}|v!ajpWVeC;S`_Ae@Z;Z6)qc3FHqup?m*0W3Yq7m`X@~VH&cMA8C^sNV2}5H!CeNmm?~iVX+$iqMW~Hz+w2)0Z=nPS7TsQKThEqpAsADznk+T znG%kwFuX29dS>?YNwNUy+kuLRpZ`8NP}<%kYwJkw(9Ap_{f;#twtRtdDPd`kDj-79 z2&plz-uuN?EJ}tVXAU%THHywH01=T_o4Oi=GVpu zQ_gag7Y`0>*atYU!jIcD{4Z9?DlOvM_4S^H)gqPNw6%bGz7r@vB2QK^{nmR%%f8*> zFrTOszm-Cm{M#Pk<+p!qAY1;a&Q$J4@xQ!~n0glzx;1;*=ir8rqC!B3duH#i!{V5c zCyvIl&oxF)Yi)FtmD>CckT7dg{&ui0rr-8Qm-KxvG-l&PieUAbfA-C-r0-jjWLFMm zV$|Unb%=nElv?fI)B@aYDsdi5^Z9%H-3JEjOEB8k-wFg2UNAtqSP;$p!8&rJ9ekV% zW-*F!)w=6b$ zh1&-565q%yTqO}iQ}{>#D-Hx}r9we~goJ^S1_oVS%?jilFpM}UA9Px=1i<=$kj1Si zs3?S{W(7vES&>;b-sbZE+n*)mYb8wm+u{UJop9wi=%#|aF|&67c>H{cC`U;b7zmL5 z-s}^ZA@th6YcKt&!j;QQNL!o#z&EBr#L_w1x`iHgjs&J9;2uLTz$KT7fU`3(FkF58 z1Npo&JuS!&c>e7v5Z$XiLI38w(+t7lu=tqqD0 zO!g(vpe(i48aqDk4n;Ah#qxlp@_sN<(_aX7rk(g79{>XeF3#fMt{;{O2u#L+wjscN zTA6^OB4;`hQJ~>RQ3H!5e|2Zb@j-_oyd#!bU!R4+k_P}x1i-c;R0sx@@81Gf1DIS# z9a!o}28j%g1vis2jRis)Iv((ZPU1DiFbVP6mP^6f$d(W;nllg_0xWM! zhVtoIkjDo>!xcn3AZ~);tPl`9KAOq^wQv__1a?ZDh{fY@_Tc0~E)N0=BiMilq2U3s z=nGSpP#OnWv3QTJ2f&nyHNaBML7QGKI2!4X4}wz`t0+!@X&}ThQCLEzYVwk_FpcgE zdeq6|ATUb>9!Lat8!C_i}| zR6(=oWT3JGK_!!^Dj}A_O`hVXlc{vTq%MWvYT7J`YJhU%X5t-z+Ya!YtPm`dln=ro zJQhpE*}6DmR6#Emq6*G5u!{oxb-;xQP8TH5)N#;&w1j|&4n<_bV5m%Ra&t);)HaI& zBByu2SpliY<7>_nWToH_=0^k{>$>pw1WUrwIRj|58Y_e<4#e6Xz!6!k0Xp;&;<&=X zVnu*Jw&(&iC5cJPOz9oKsG`sylj~rEBgx9NtYxxP+LRcTzRL_I(UJ+r`XIrU44u%N z3cACsEkr6E?-=agTnbkg@f{!nzaq$5L01_JX>hnO27!vRQsM%CCa8Fi7P4)Dd=v;s z!BWU$S$^iLY#!g`=2BZwtOm4WCW^$QSOVZx4cJPNsu+vEV<3Wb7f`DGn3Ydrf`|=9 z2eL>s9$QO*QEf@dS{-&^SBMScn~+YIk)h!~vdU#KYh_=G*5zoM{q5b$k|=Ytd)$W7%lXl@g(4J2iNrxO|o@xN0<{%kUcY9&;$&O|5`h!TO-)F+BaQ?sqF z>1eg3166=xC^5ioVQ2< zU74?EdCF0;rq+^JITj6!K;X@)P??|36azaxmIJ=QSnv*rBlLhLHfSofwYI)it)`F_ ztV^e>!vFz27Ud|d3aZ5|(!wdrV^M#z-F!(f#R9Ae!M;TAn_@I7(-LH;QwTM4;e()j zYzW@X`%@9Z0(}-U9mM>SGBpu#%Czg|_!mTgP-i{unCkx?h80Yx#9y~b z44H~%JmnLXR%bet2eMzuQhI%Q-!v+PgeWt5oJ6Na+?Ujd*w=B|#?e znbqh3#`qoW!ZT{f1ZS8LTYpIMq$~4BLVET;_c!iOsWrCv5d_)Sf`i_#Kd-uUGoI(3 z`sbR~FBOtICfWQF8Y-yEE~UEstNa$px&lX*l=vNj%BvR7&gBm_hgHAzAgxPhGht^i z?D?cEXY?!6V&0V0WGvPtI^=D@_gjf4RA+j8wuVQ70_HUBu&?g7JXLqM-Gn?_f@nR` ze-XAGBP@+`yd*iXUAu`2{#oCjTU6TXoAxI>VzLc-`3{7pP~9qImD6&Wx}SJX&4|*Ho$Fzvro;9P6{9?m+NtfNP?;a{b^f^8Crvx3y-+x>_ zUpC;6UMkVX9HZZy8$lWKOqF?N&Mo20q&4}bHuiS79OBp_yAD2sX zZBkqJNl4{&^Uf48PYIFiaK689Z1mQEqserrd(d*F^a`x4=P21x%L1aHVoF~8pIEO^h&z%boa+Nl#Gus$F%g+|36g7YPuiT!_ok&0U>1z3^Q=H|6 zwQ~_BTvNfS-O_O$dV{H*S;yQQ{C7*DXx4y^(|+SW-Sw=?$ZnXAp0UDie{|HPcs6eO zO+HK5@?#_o)nmk6HHyofa`}1poVMMZDKpc^-pSN-{7`cMlKU;NTEyXtWNGKFZhdI? zZd}v+DLd$lX_)eVTmLjxZ8rv*nf@VM=dzK{Znd70VmLhcg}lvASb)Wc4_8fFgwjF|_s1xh zhlMqtD{6TpMD@XnhCG;NMjd8H`8~}=DK(c{J+=4e8^!+_QS(%;+_&kM!1p!D&{stD zH}*VYt+YsDaokt*^aGoXYTg4<0j_E75odzh(mNKlbNU+XM0{Bd6Eyw0{~9ugeJ=Rz zB5f$ds4d}-v9j8PAgArW;%Xw+y?&vv-AGXhleJLw`h%ALS@-^pko+fdY;Ijg9ZLAN z!b9>A1T_0Y6LZe6_J$-H+8D9a07>Gt-hA)EX<;EgHs42d;^jZ!jO%)Cih%afSncM( zo7q?e5gXceFHJdN{c+B~eAEj|72y{%ef;T?TJDEjUw9bUuXf{GeUI0@DpLK;KYD`x z{?Ob4>uiv-tRT#zI)?R8<(9sT>j!a<%u0>gH~-UXo+&RHgupzDF=I~&&v-&OM#Yyx zcpMv{VGqpj=*Zpj&5!DtXVmJQzmR6uz)IQtH)OiBPW=#BJ*9$o;FgIInszxRN-1p7 zsaMG7r_RFd(dtAIp@hXhcJ3=BeKo>A6~CSD{!zhPaV-n&Tr+6v49}0Ty0XkuaMyB7 z+UY7Wmj=_&r?Oo*i^BO$E!P)CTSie4-FCRx+b%7JWpC`aFIo^@rvztUmtL=>DN$5h zD{q&$98(cG^2e{qT4gGv_V44gO(9}ptj{tO0G=9XPj-wjjj4S$7Wi6R9mpwiq4_W+dkxA=+Dm!?EYjj-(y8f ztc{@#FWCx4vii82QU19Q(O@Z+KB1o{?P=oO*UR-1@ejW69~XCbH{$Ugo;1G%Z*FfQ z_EfT{d+(eSO@n#x#u}PcM^|D-- z#2?*pCZ0?g`8TLo{=xY4 zz;A_4G357$B6{g9;WvbH+1tPTE5xY}8h%J-_UIq{JX4x&n0r=`|J9#%W8>#1JlJ!X zC^;Qcl;6h3y{k2JQstiyt9%JoxmB;NRQ( zHklB(l_B~C-bu+Fj&MRs&LFQ4l3@X;MK3Ki)W?R>&dMhO3gt{TQ6^F|UCF$zjYdzzraom+zWFf=Qe z^C17)+jDv6ba%&fU=I)K^Vq5>6sp9$v-tWbJ=26TLqm-IE{Cq@pY374F%o~X(dC)V zS9vc$8~^5_ai@a)o!SRd9VHCgtkXNXuC(vm@J>0h74-OT^P`AcvVzHWlt_oruPYXI z$<#M}5uLM}?VA>uQ|^}#*U0*gzc=Bt{V(+=hC)sotFK8NS1(JVS%l+wXI|8+XjUk3 zlx<(jM=mOe9=$B@!ZiwaY`BHO8ce7}B z{@3fHUmBPTiCeq}J-3Db$-e4zd_Mwe-J-}7)e$myR8-xvXxS~a;HU%so7l03a<>YF zmhAKHcRrc>rtnE7Vpy=S=<=1{S%DttUG~jSr=8c-Of;tN9S{D)bHl`7v~F0-qDs{A zo?HM-FaD@#3kuGg9E(=&JZ*TnmKUuja$yB5!ixis3P zlCDuxZ4uXgb?8wY8`BHMP;&GjrPPsqLx0lH!OyrCQ?DXNpA5;)r^X1YJS;7y_;pod z#4cYZ7GHk%q+CPM6)aP+{Fq#@fHF11|n(Dh$#;AGfiSP@>=a%fjPYQ+#>gzUa0s z8=fgCNT0M+C*IUW@PTrLhjxE&Lvq)##q=xZO?cbpvLRJc{ja|qyZk6@7=es}o|`R3eBR$zACga{F(RZ|f@XcS3iiV`wP zR}koZICv@PFyC|#gXBb(w*6El;?GD7FmKtY{WgPhyld!%@Z=OG+-PwKx%*N|o<60f z=V+;N8+JY_GpI4l`_|Nw1fP$E>i90csqEOB^f8wW<+LUXxK`Hu{=UI03sV|t;R){H z_3H2AR)=%1lyyRU1WqleSj6uC?D#fGZ6bpp=heXFw|UzsGucS0)9~nyl|AX^Pm^jZ zs4r3HQ26KPqKQ{R{AQyBD1&droEJZpJ-)BJT1@GzxLhVWAxq)@Mp!zMiX|C=Pv~oW zZQk8iodeQ{bzMHKPqlNqZ7fU^&mQ-kUszG@3(03aIo*(wN-DWG>SR68mKoBB(kLt4 zDN8DE3otd+4G|ce)-d{>o>b`t5&nJJdHlC~6~tnsnlo3DI`X9Nf72S1!BlsjXwCTv z*0G0<<$S0ue8t0}L)MM|S! zXW+4{ydT*N&x`T5Z-`qbuMZMi6jR?4`;r?>&hp6Pww^XdsUTwWZL;Gn2GrKtymQ1o zJ$)SacRg`^J1B!yrFTw`5{hfz+_sgLzbbN5`bP4=k$A4?>9S7aiEfc8R>eP_8u(bg>a#P%WEY`(+T9{z(h9=&E5#|M zgL5(`5Ss1~wVZJU%|+z^Nb(ze7j-E3enHrhnzmXsd0wC*Wr%rN^Y27_S(UegN4Tx z=$ohXZNwUnq*wXYyJ~+^JdXb6K+4#b$cWCJlk$t$aKEK?=Rs<$n7!nhtkPvI`lh6b zi>KC$N{+$a@|wVlJh^Lo>d_kiaHvcSHWP~l`Z6%M3Upk{fG`6|k)xxonhWp|`4@JE zfGDoe97=CfVL>SZy<80BFEWOJf_rs4aS(Tq2i5sFXgWm@#CxVGJ=1tJ_(v*e!NFh| z0J{Oa2@?X!Z6N6Yb17UdhsYUpjOK8dK#mpc&&2_lO4WDSx5mmb3CU6eG)+DzUkaz7 z^T8g1N-NbCggvPMsi~>4WdKJOl~D_5p$s2eWib*BB3=oUb42uCSP-l}sB{2K1xo|e znm?EW1+8NRN!8?SNfxLij!Cvz*0!<-|K6MT_7{O3Z9M=T0qMw8huhk^KokH@1X9N- zI=e+0;B*vmrn+!aP$yuq=$UFvXgyt%4=mkUa&d(Z6vgN$|3XcGm=S4oa32nC-ib8+ z6b>DXy2z)1CZ;6@f<^#-5cCYSC0SUIW7felLBwf=03#W;ntTH&-yl1%AA<+Or4$I% z5)3XY3L@YT3y`$Hz(FNf=)!EA@_pM3zG*gP0X)(O@p%)BIbcAmUWO6e;p9`%VGAQ{B-8Ed3VOx8kuL%Hr5@ ziW+DX0-nzhV4nmSOdae8>k&bg+MGpK7RQ0lR!6yI0YtHPGz(yI!6A(0VBb|Zd$J~r zl!+tzM4`Yz!4<)jc_h8~mUJuqJ8UWH76ag86tsY^5afKRf`iUP;0bI2iNbiLf9qeB z9+4)din9YmoLHuJu`mtv3)49m6qyJbj3hFcFR0Y2*3g6zYH@$-zIZHHywSiYO z0~nq_Jmk^J#^YclhEIGa(zcDs0wE!j0qWcmVCNgm^ZFN_1?MlP7WB}gnKVFBEsukN z8W2S)^{lF*X&UNi6bYPz0AUL%rf2}w-8eu@ZM|UW14OL{VB(`l9S7h!FyhVeMS>PC zr*cpO0;;8vEg|Skr7=kWSGIzs4KOyrWwW&v;mZ7#VDAS>t^wE`Qx&Em?!>c9{5u7t z)Dr}jE`*Z+w+ei4AmgJpr-C6AU>$_vJn&c=AS(Nd&>#rrW|DoEkZvrM8a5XV)@yox% z2Bn@Et4vVo2idTrE)&Z|)3M`IM8{wv2JDx6z(^@vMYvi$1#m(j45O)afEW)A0%r@Y z2L!izkCvb;Fy&${*aN%)QGan?936~#Guq%V;KSo+W#wn~f@c+YHG(D|mjXK7_5VM3 z1fW4%3fz{?LgGW=*hxDm%Mr}M_$vx#YG7+UY-^Z+TLm*InK(rWemV|#{W#3OI!Yu# z0|0(74OJo(u!mqz9mLVgOf(A=+1YKDOo})KB1Wf^Xrir5G$1QMO&X+?K8B`Ay7HNH zCI;o-rqasb)T+a%V8RF-y$}n3_9}38Mgi?{msZok>Ftc}}OG5cQp z*5kj(Jdqil>GVi{F0buu1pDMn+j#PmWaTO8@u@J%DUbfgzmwWGjE;rt==oo2FO1;M z=I^s#(95y0TrYZ6As_k76RxkctJ<<^7eYcj2oCS^uXem2tKbJ0S86-x)HKj>!$eyc z^84Iil1xWr&)Gx!KYiye&n~3-*IMEfuH*$oWL={ZPvnyh)rRep&%9DhjEzN;)poRl zExYK&PY;_4_rx6C3VN!VHg31m+nN=}Z@6;QK%t>Jfx|0s*_WP*kFtTBZtdX04YgpE zvm;-9zSg^4v997MK1NKJMXU69n-a|-V#UW#%k?)XS}UR(`~%Acy|P1^&|*#@;#>#Orht$uPRaUQcIU9(s~`1RfRi-}li+5;u@(&#@@|!#`C!%5_F9Tl7zG z$J?#PGTJqEuVzBTK2P1StuvsasUkv^`O(v6$cmi~>kp5zR#J7(H9K_bx;#SkJq*s_ zA2Co-H-CdwgTMW;0^RZW&&FBc>(YNUI;!wv@fcIH$eZu`^lVj>^+&*nhPLo4;YcD% zVAy{+@EPTBN&0kcka=;RqV$r|J`Dx!$&ByH9Lvpi*kSs}l8o4)vGe{btLqwnicC$z zgV-mdUvnCtZmu1_D=)szCGvWW%BPiBo2g{K_PAI-yI;{S1J&4?@7^M)Xt6m(Hgw5+ ze9$bF`Jva6Hv8R6{GpLZJo(^QQ>LTWT5rwTJWmXcZ}%~O`ifTC-SwX)dG82kn#ot~ zRB!2=kAKy;{LDE>ZK(0rC9FqKXe;k2qf=pK3f2Oy0XRORo@5fFcslmaf5k>~=t1t- z89kY%eSTInh>`ltD~3>p<*-n-zeaz2T%5MKw9}2|6qkdaB7ZtxA|oS-@V+JwX1w*= zY@)Zay707C%R01?{v}=ay&c?c|DHRculvIx(Ia#yb2GrNqq+ znXfbS@!R+VR`!!~uHhV2SF5noudwGYZ+yI;AAzq-FS}qocwa&uBAB`PH8$&2PRQ%< z%u2GD{e^RH|A*BR>=#d;V9G6fZg{$)s*WXx%dEreJIxNAxnuAFB|L(++?G0d)o45Y zhCR$PJ~S>>;T4_bZOFmhtvihGT8gk!sIm49>c$XL8u=v`=X~ zV=HG6>z)+joYCJwkr`h5FD4xjYZMUj=#Nl%+`6eC3~?x0slK+p;1HGlzYPA>X5R*U z<__cx&b$11U~I#Btx;MDp z;m$L+mBfuV?gtjG-|E9F&g!loF1SDBCMvY{%Vah9{o`ec)ZA6;`yw2vywGs9W2Wi7 z4__PH;rl~8xoa4PnELQGOS-wFYT}rzK}#B`B#%#rl)Pj0%vNnQui0ra+u-bpz?UCC zx_42k3br&$VNm5WXP)aD4bs{$XpDWLI&>tHg7MHKA9fTAGrtvpGiSR^sx~3`M*7oj zJmST_(+>T+PhC}b>NETH*|HcPU&WU#0`B4(DKT)qgZoUDBI~ceiSD;dG)oNq{^-i+ zN&WmWzk5FNN4kw0e^-?rHH*7}IXFe*Bn-Yr`D3!yPCOpd+x#xV3c!C%k>6B+_1L8k zES#U?;m2g;ZZ4kC8GboeYv=>(8U$ejdTPmYcyinq2_a`_2T3LdG^MNm(~3^if(XDsT5;xl-k{t{ijRp0e1 zu~W`)b549$zRXtN+9OX*)oz&S<|8WYSOq0_%npSiW>)`Y%*VQ0)e4RMnApwAq# z`@(*BrJu`dW)S{N)3IIm19!HQc-eaVBFgn>&b|5}D$(2U+#OM=q+Fz|nRZyRS^AbT{rz`A_+C^(IkFX2;XBYF* z+r7txy3hyT=~z3&j^0onxsNwVx}feD@w8sQMP3yJsfP+k`Pd(((%4m#!dkl_3+5S6|pbx1`9;>%(jb$e?iSyv%YOZ&E#mTOr(^I*M`7k z*5OBy?w`H{#7NN9#`JQ-k%7Uv%VPDfU5$cOf`<|W&nEPiX?s5Z-W)yo)}4&1&0Cnq z?J3GRv}FzKZ?f&8@bTq%J=F;!&m!jp0+d(TgwLLX32r$x2^Ygqcb6^fU`nl9J@b#a zP~=|pEj1S52feYQizYJw?|n##l`kKumeGoV8fknEfKJCFU6$H?eH5pyZct z5fZUI_Lda?+zYY=S3Hw+b@-FF8gR46-j_2(Aa40B|Es4a6f7w)@V0fh*`I4Xk{!CO zqzH@JQw}PM8%ePDUvGZywOSn-_1~t3AlEB2!Lr}AN7^=Z!%~NUbFFY=wOO?4)tHZ7 z{RSM}Vq$xi^GwTYzeic~~sFZ74 z{h&mH=@`u7`K06FblU97c5Q!^TbkdFUthGI$+D~7lQ&Z;hSb}ka9##V>Fp89Pv2^d zh+4Psf|xxD`~6J#LkYLB%ejM}Ps~b1w5@f@7Y9^Xzm>^6mzVN5u`Xmh!pGflvDAZegXbvbSEq2uJr4-tf1 z_tThw`rK|`?;lPDc8M$m%0su*uARr~W6Ei*QQIb?TOHx|ocKGI0)y=Jq{V8P&ku-{ zdP$2URJ#Wee!5=JQJXFQk$63?SpJ{px4RQD<6C^9@#F%>fyGr0ohB>k(Q}1fG&iYq zm1($yy4>EP_=m1KchXQ_3-%0(I7=52`i>e5o5S5r#k{AtvC5n7_Q28PdDD`2T^}=R z%KK=zcuz}&%QSi9s0@#PNtfS>#af5vLaoKAa}Ra@kE3&sXX^jscwbR&6^2nNw~bv~ z=2A&FjBMsMvuu>C%`FKMim|yQWlZK))`-%DwsPr$D0Fq}uF_rC-`nrs>ie~G z_Sqf}uk(Dpp6?$27 zYzY=7;mnk~2PiFW&>GdTEw$o6{6eNMVp270f< zfdV6O0PBTCmWZIe%mn{)vfUi?v}WQKKu0L*fr|J2;#knv_EdRD~r<06RU4{b6j4FYoR_VmO>A z2M;2v&u$Rg=uk-s{!bI88b=9nCDeYXP68r1i&d5cT6tMpMS0OE6weMjGqny@lRy9~ zcLmknAe{ik>hoeMK!M&M*T6IUV84zK50Zsdl#;CeE{>Q5%2^&C$f&NY9xosT1z0-V z6^%4`Yg8bgT?B-nT^|SKg*DRwq|Ob61(7gJ(q(qoi6*4|-HK5|Dh;~T&`X7eV%pX= zu+>5cXKEV)fn^AkBnwshyTpY^9FgsT%6mnA|i&}vxV~urDd#D0EcoEk40Oage9_$9Xso9p$z+3^Fdb1s0 zeWB0`nvz>LD%-Y%Nc+I#Wr zv;%L%mXMHqRAm=O-VFmWcp3%5?AqcP4S&DPDtkU`~$ z>ss*=G#scNt}tI2-j3-ggBA}Y4@1JYnB*Q+T4loJutdPY0eXi4vx+}CD+D5BKAurw#6D_V3>*-6Z+#z9v3N;lf-LyKG)$6l^n@j^S4meh}*rA%H6ANdRH$B$+ToE8^;C}W%(<-~gRv4II>}OS0 z7lV05fX3ob_+m>p6HSB{&&xlW2Js<$(ezVA3Su|ETaZ=IxEDBANK32hib+wxY{GkH zn~@5fXqPScpNU&rWFhD@R!@3<8e0?}&G5G^!N6Ap*rZjr*0mICr+&;pfhmXQE`eP> z6D|p+7#UP)e-A0Gzo1rC;bMqIknzPtDYxB$fv1W3!N~$#FbQJBZl0BS4V6MI$b`L5 zNMAu&3@Zc(lquB8`)EK?*39aFM3vG`S#?o$lLYo0J9^v;U>^{kdPpcp-mJsL3`^~2 zOTjTNCfCWDi0lyNY{?srOTIR+y^Rh4B-@FFLP#z_@dF+G#=YL~grhjx1~Cg!6CiW% zL2)p%^M?K$F{seV1=Yo59s|DVtY-`1Ve!!&Fk6~|By$VFnNwnI1pp>YP(pN@$K%Pn zv%uZc-_06>h~7UQi0O{8zNpy^SQsp{LL<_;sDLE%Vf~O9h^0wE0s|WaLB(jb_Sq*O zfMGr_o0tt74G&ZPrT&Zk$NSg$@8!R?e>t+s^mwC-o~h@iQjXw)iL-#`10PhN&b?k?bZ~_y7sQQN*X86*lGvu3d5`v&D9a_T-ILV?I<2C_hL%bFsi6p>5kVWo^8% zg0M~C@NMgb(KlviC?|ZW&G-9oyKd=+1RiG2Gt9Gf8Mpjlf7iA8lSc2sV(hVot(vJF z@%BF|yMpDB&Tn>ZL;T%*^1{c->zqA4gRB>5gS(TW)oo7*%CVdIK`tF*`ND$WcHa`u zd)_)w0)B#g|0x7TbtN8{%g7=X{;>HWk08e{8B0xVJsw;b=rr$7S<}pq_5j0-3%);6 zCk`OYBX;kSt~pp&yHIw7?G<1t_1hfd_oZ*F|3P3bk^ap`Y`W$6G2U{c7t)pL$=a%( zYY#9kD1D&kSA5&-{ZJzjsrhp(fy#})FJJ0nU%b4|7-tfABA%dw4}5->-BGB2ru|#8 zuKVJ%7maB&6BpReD2(s+K{RNJo1JIsH(-JR1(o6K}?Ixi^slTdH=G`(1Vg;i$y z+;x5XArn~KZ5F-is!G1S6xSJ~@sVnSyJBaeQI^#GQo_wA{(0-DWO?|UQ?5vV{Fb`4 z;8I8}-hLNhyn}jZo)y8v#fO#|lIwpJVqGAH_Nb z^Oo*=AD$hn@-TlAce&C@W>HzOAby~g9-Y;F;n@=^#(8N|UdZJk-?rVioWFMGJCz*0 zh(8-uNxr$__=Cj%nEIy&;&T2J)@}S3;P6CW z`LWr7Lm7&dn}XHv7|lf9)qT_L`#PB5z4T_ubn}H}of~%SbEtWA?^ePi*VAb)#vlC7MbC9C>#qA87cbBcL;EmPG%X+6Kg04m`(7ABDB;7~v?DM~) zDwN$9TE7ltAZ`s8cUD-s?ZA;sDlKOZ1auJR6(E<@RGnN{ ze9psfPyYRZ2R^r4CwLk^B{S1ut~-Qws(Qvg$$uPF2N2DTYX3PUYpN=rR_2w_Venp~?_^cm(bV1qW zN|d)ZWz9L+{(Jtvex49ccQ!K$EkqagpO|te>tAKMe1N)-f;*;MroN0Z_5~$%B0#!?O|=S!)AqoTNQ(Wm8VQnOKa+wCvwCVzL)Ue*K5jjsKMLKC7CqvRR?JRQDO*-Q{Lw{87z)<2s9~>-uWG zvnmHIU;CX~yz$U)zNY^4WgWefhr4zk7Bu#4tJX8&V!sSxuPOWfU6$9=n0V|K&&vdR z_tOq!$G}KZvD2q_g!17KYs|KWs-%mb652%U7fnkOuV!qVSGo&%7lm^BkUE(?dNQ0f zX~VX=KQMehaGaZb_$_P6r&Eg$I)-+I_Vm&Nk3TM0k1I}ppFGJk9o_V7u+m*8;ZFJx zHDI;*`Mn$dHX$xH5qC~$O^V#VplN?=8pd~*#Rk)zM5L$@z6xhY&a?PiY|759?=cBm zDqcS?wrd%7Zg=Xgbyg^^u2pl*}WwVSq&?|fRl{fq3usZEOHc8ZCo_+9K+PDFT_ zy{A`Zh~On#t+@HO*V@>ok{%&!k0?`Zp@1D-5hI%ain z*nQEG$Cr*zg>a*DP?Cv`MWG>EJi8|?nnzj(TD9^sjb4zsUInQzBrUYQMiaf_KmTMJ z`G_=n)bZirs6_#O^}}@iGjEPb-rO#BzOu!)qhQZwN7ILHI!+fl{@zqZXMM)!1iXl& zV#BtKbiDE*?hKWvvWHy^*JWPaHtA+|srw?g!bj|WKVh46aw2hu@bsiCj{VDX(iHv3 zdF7r1`|>PKB}PqNcdI{<)}ZVb@L+*=zgohEzk_S`cgb>6^bValv}0;vZ@45l{+)8q zwc^uC-qTGQGWSSxYlvb;?4=j zzw)KlaceVPeAzZ$PTl>jn((M=rs-jGDF4_q{>DA3L7MocV03Q$(UZ?b8ijd<+Y=Vy z84Xs{sxvFFtyqWYHdo2oBz<1rHk+wmHZ5OIqb7HAZvXHKe6d$F+1It=w+^ECP4^A@fyO54$!wM)rT&#q8KS!p9P!O?t&UrNmH?cbj( z6tzy28=4nc_?=Fh_x$v$9Xt9`yX}(F!s0w}-VM zHh5lDMf=rhRld0i=l#msBh3?OoU+{y*2HXx37#S-vWg9?%}xN+P|wN9~0| z_&*mMBTOa!?dv z&f0Q^XxsWO>=|u`nQ4Yn+7+ytGG&UpG8u_?m)!V1^(Wgoni2P;ZBJoUf;g}N*Lz@< zXX)D_I(6iDDT=oBxaxfypXWpE=T8ykV{3w!TssxfnVd2nxI(%Q+qla`YMq*S&HoVL zgIm&sO6+6L(1$?-^}8Cjsmc`=r<=?cGd`${h@46V_kaI%lT_W+qa~K7nKsY(Hn@uZ zs*LDKuczPeIJ&!e#nGvlo$<2wv7^+s%Giq!(=Jp-oLi)R|MWUr&x=V}M)$*F>zvZwN54nH&L4e`Hmb>Wsr<@$RoXO$FwSb&c|B*@eoNI>qcG(3 z;R%Pz&FN{A$wF_pIa!nCo*PMpZ?EJ+INCL_$?5ppke0Zh*KSc-nP$4GN(-+FY$kr# zs@dxvX2zkkE|~7CEK6%xZ}4_bW8osT+k+9A#Kwo`*6zfUC9Bouc}~5atDispH4N}Q^AYA zp)jgNKNcXOOy_>NT&Uf9CWWxsGUt(+NwCf&grDFxX5z5{H_&ge$db`PpMfdCu zWXaaELiG>oFt!|HT8~z|Q2t(yx%SSRwc%E+$=!MCSy>kjuMSyme6ptG_RY1)re~j? z%p3P<%)P(-L(m1(_qp1f+l?mu7AvE$w^!VCd@U$Q+>uZJt@h?1c|$hnhGA0F)w-Z;lY=gWZkHZwKf*?5kzPI~yF2VSknX%c?C||j z$IE#nJ>%L6zBHZaov>s z;8Wl1quh0Sh7&!-;m(YneEU{PwpU<{_Y+b-RT^FRu5x!@c}cxe zV2gIu@hVJ{+d8bLr|NFXFY)TJs?}P=_vY8GnOG+OQs+LX8yOT_M6b}92wtAT(}zeCkDuqi)H|3f00)zS!&S^pc}q1Cz=8>2@NIKY{`T#`$UlPxe z#M_oau%qCB?p7i3hxvV)nI0B~!{|6z&w^b(Kv`rIr~~7fK`tqK-PA<_*zO_|IVf^L zjaXpWgsP#`1nNU7(Mmwm^3tDgP?%TO(Y53hnN(;^7U)4V^MGfK1}>}1wi!Xr5~Q)t zOZgCdl{u$BaTJFG5gx3liJ`RF%@wglqtQWiO;}nDtj~e! z1c*a%As!4NK!8P|W}PEk(R5Ibeje9O3Kjx{sev^X4+%$gw(4^bp3?IX#2zY$XE&;4 z^|L-6RksE20H}NA&_m_Ja6bb>r3i$)$}kvtBXKxlj2(p@0zXJ>#SufXw3`fJSz15P zP_xsF`KUs$>b6LM$BJyyrwHi1lh=LTO%Ye=Rwi1F-F#_&UhN~u+Lm-9_ z(kSBDDL{GWY)2QS;JSOzbgiwW=vw5gN*B?wY76jM2y#fB3{TGL$StB8mA|ZQuxr;dZRvLUoH&fu=1v7^sX3AsoFiKFJ%mc~gdf|nzLkPASJK!t( z44_a88Jc#vrrPz4Sq791d=o#?1E-&_hehLMW*8XfqvfNxeA{g3AUByt+4@-F!9h}D zrp)1xA>FO^fFVbODZ88BF91@FEDWjaGiW8lF{CnKXOO{BKv6y27QC#c;)3ct?yOW8 z4hM;AV3mH}gY4yA*%e)d^RhDUg?UA`w5D4qoK0);QVrCcavLM~pNO^3sxS8s)8 zGND#aDFAhA;Or1wT!yY(;n#$P(5KE`iL91+C(?bUBi4cv=BEuk|hZO?h z3R!zlD+g3Ncq#a~v$CwOGf4t5Dm z3KMx=<_atxe7tF+AV1Eg15|0I4kG~i1x@MXVKz5a$LxeG0T}0h%q~rniFyg`1~oZN-3oI|o|>8lrYX&n7FhwH0J)5TwKC zsfaDcK(s03M?y6p&0{e9_rlsi_xVyLm{lsfU{-K82^=+$$-MC%fW!7sA?KIC^^U?F zq{2D2fi^azq2-!Z8W7{gwX|f@gJcwtf&gy_Miwl&Tb$K{7c!u0ZpCEGdeg9)Kz&fm0nnD^aFYH!Bmg)5fG6%PKT{ zT4pB;vXQBpIAw!;{Q`MWn@JX{A3|`*MZJkdFze{62JcrsCX$lbaXte>3e)6r#o+1z zY81#zN+paVzz`->o@pX@wY0`~4hD_n+iq0tvV%&xr}x#_q;PSP=Rc)?sDG4y;s4Ic z&dMH0nj11y)x)_v=Z1Xp&%cp=DgQ3LlW4~dIg@a&eA3IeRKMrXWtY3xsh)ipsTStzaxZBhQgv`!o$}wx z#)&K=(z;9QFdwC6ZaU*LPJVA5iRf2+Z~l>-4{j%{=hU{}MH+xwchYJ^HmQ z*w}1$+9||iwNULFPYoaC3SKV$Jw}Y37n&b;rpOexd}*!)dV66@K)(OETF!}o^LFM% z(~$;Ox1I>cEbKEoyr%L|dPY=ZG&a2J(fX=voh8?!t=CU8&|?AzOZ4d)hQE6G@z`x| zH$2s?l$=XnG0_?5vR`&hLD1gr*}34F`A!W(3{#e4j_Gwe_8rI6AUS$Ruy+*&_Z_ix z*=%rWsKQ{s_^D`BeR_wf^uKJSKM~STvD-{{G|poWPK#4q3(XQ(BGl z#mj1>BN)5j?GER@)H{^!y_iHE#ynAu_EGPq`{=rb2)CDG!txdk>L-plbgO+HX%BEL z)XCkvcQhz2`udY`z2EwpXNYNBR%wMGCB?K8i9B^cx@LH7Om3Ta_<(Y&OWT}QXnEzw-<5{T@d*)$al1oe{(iZ3-C}(VeFZOJV&T;OWTXAavgFv4 zyc9&dMY-J>LAV9Qv}~KH{ZgC-Kd`t?zY~l6{;TZe6P&Kf&`F_yw(5U1 z|NgX-jP>{NS42;)apb)2q^Lf9N4DWy;s*MT&g)vW{4_Frr>DGlbsx%lvBVT-=_j~x zFFe*%5GKEne2DJ`d;b)2i}rthxHB%Kk2lS*Sdj5zWBNXIPg?g0_7e;L9a$p}NqV{A7Y}<& zl5}1F`CU1~TlF_^@9Op?zZ9v{O4>tfTqAx<7Hj#gnHQl5R0@n;iMF`XzR!+-sd4_? zMbkEU_rEMN%Oem!-?M8soOIQy{JP=k;`F!k=)2qKa@CfW)q_e$5Bx>_{O|b_b__9W z^^%7snGBy6k2ShRi}kiH%@ev>JpbA6ap=8Pp2M&}rG4FmBvyH0>h+3_>CP`E^IzW> zO~20BWL%eC)cEc6-yb z#3tm|=Ra>|ZK*L`x#fflF*08xxnkbxT=FPRXGmb@>|Zjt+~T&~M_UW)kJ}4(o}g%` znOIn?woz3!3zOGfK}T5K3@IvFU03h2^=(34uj{*00YlM8#z#-_8;`gWwQnc1xsbBL zafYS|Ut=5A9AEacxS+=KsglcQh0U#*uNDuCG?0dR*?*m%)t^#(yCs+YMG`+_R)6RD zkMs|}Gj%qcVMhIa-;8`T5^%C=lGzu&m^Y-kti*jN$oKcZt?+Z{B+YqkIBrt28jDeT&h6M?kK3qq+H8(d_p{y`lU=y)q2VrvwG8^+HSJa_KW1< z_S~G>PZEB)y&B1uUm5Fs#WZOBlGL;}ZJSvGWSFaG=e$YR&RoA_Wl2}($Tg{9|LW4t zprPK)tI8VDx3?l??MHJd9_=9u)gHd8?>k9!Ss3fK`rpqOkFvrWVch-h2G?`eSl#?j z`Ezj?DY(Kepj=&Wc5>eKg5ztls`;-;N0ncu+dsWu*ZvD`27)2}@XK0O|A zyG%5!@Jo_x>T;4TcAN0*ud;i{_OrJ0_ADeY%*K=veg-(yZQ~f`<&;$y-#^eZd7XN* z%LAYmBjx$~sU}wKYYt(n+vgrsnS6GwZ(mo1Sx&8$@RG5`VcR>oE0^Eh8p{hQ4iD<=kdNcZYmKy>%sw&cJFE zmUGHNV!y5O{Yf0Ne7};P&#_?2@$gfjDWN<3xmN zf6Nq#(6F)7zhPbU{*NVo`3T$UW9*?dm_{$RRYo2Ot_V|PX4518=_Q2soa})Dle)1N zIK1EHPiDXO{Y;y$uO?NQsi1$o9&aAI<*aC~X=VoT@wq$I9jTl}I+J}~I;G}?>~s(5 zuMM|m&c#e^x+Wb7(0gNi=y8l}m}!4(m7CLOd`Cp(@SZVc5$Dm(i-%?i#Ppj#Lv>Dt zYg@HG32IyG)y2E9;?FqpP-Pf@;?1Fg^PLm$AnA?Y;K|fiLlYZELvHvZ^VT7XF48x8 zf1E#$ipPnRt5-S{)IYcxZ{~N2?AKX(i+`ug&Y^@C~c#5*lmBHIxk_p<<4h|(AN!W9W?L7e)s?Jx-7E5;-I;vUTu7q z;F&`IwqJIf(rzuvl^oBK%B11u?j@I(E`55-#q@ceyvqDepJausaa`oo>luNPdi96L zJ!5{qT(SOWVWII6Vwd$gv%=dUw{S|U{SKxp`ECjt`=lJ6mSgK<{YQWAaLe1ph&prC z;ho;gn`E2JLM|PthxNt3Pu&XmudKFn^kdO3`*S&4Ugc~X{qr^hn?lm^-D7_D7N=o} zp+#bUhLL`~fw7MHmX_i$IxbIB@;qVaeDlhOp}`od9oQR6yUM+Ks$0Y7r|2wPp2ysX zQb?Y?_YE2N?3Wi3TYnt5;T*|HXoKYh#gi0d&*f= zuNR*=zwg#tb&*=F(cxoQCtZ{J>mTbcV>jjbAJx-{y1CY|-OEAe)t=xtb)S_}#D*4K z#NBz`E#5Aya#!_v#6|k6-pGl~eyfHZ74yH;x4f?=(mb{=J(>P)`&x@r2Q^CXSJqgYT2Mv_<>&W`liaW$_udkdOCM|s(I_b1!=vi1 zFPDDb8y<4{+E(Y*fC2i;jHBIYMvQ%C=AlT!i)%TU>TR}&y}cIUh79}3_qd=NK7}#Y zJ=-U|gyg`$T~(By>3(P4<-Two$0RIExT022qIc|%y~T&Cxwn7(vm@?1czsZBMcxxc z^A(Gb%IyaOaDhhyQ3kbzn0u+}VXT5@DNYnzj#qxXQAvM%;``97TP@qe%LBqiGwK^Z z=ZrgrycKqFZlBRzd2wn%k#pedr4L_!Tc`YG=x@nzA#T?eg?GPEB5|3&N!9VS^5~0{1URPsr!?nGrH}3IpG~ZH zd^Oi4jq?xF@2UeF@^9?M1%_hM3FUNAU9Eec1&$Q@>VW*XgLpcrcbV9Wb}%Uebds0 zuX*WAR(gOg&n5?j4Lt9hO%H$AqCj^)X%x)gjkGLWYmAw>@m2Tyfy0aX*`|37Bvn<1 zj)7-?F9g|9o7985{JCe_9TcOjq zSLZeP)3|`zu~m(-N2_!`{(#Ba+;iUz<43A^JHJm}T&!>!51%nITi9qp=FJVgmC^S* z&HwBCMa7qPe0BEHyleJS_R8^%Ui^v_^P-)jsd(eEI}dKB<)nmf&j@pTw&_1Zog{~* z>D6=Q%zJ2lUBeU_#2Ub3d8>BxQ>lz7Oq4s2Od?T#6fB=HMcoSco2|uukTdWADZ+TA z&QsBZq=E>TAP>X?gm|wkK^}-U$ysEvKv*f^WWgF;SX@yH9nBSTvxGDcEW(rksbi`^ z9*lo63z*bdo~V=pMNL*?WC3c|ffd(g%M7sfV`MU9RYe z!dHsUXJb|6QsAeuz{Oicp`qzCN;Tw?B!C5>7Ywu?LLZW{qB=^IwYGrQVOtjhCm>su zZQLH^r7b|H_QDie{}`Bw0glS{Mp)yE{c7E3Q9w71ELi^2hiEgXR2zohz>OTBq)7*w zPi$GtAXh3lAWcBk2tlXoO@%*}_rV<$b@O>%+Pw6741vlOsEOgSys#i1Aw%N96+u4c zg-F|4s%qN;iXMrdcTAYtue7v*C&A!lpl`KDn2 zWD2Yh);Od-5UC$b=Pmx-eAGKyz=oCg*QCr89V@pwQ; zmdxf_GO@Xo1NhuvAXIoYcqATK!4XP=N|<%hj~QvKNuhMqP!*7{K1~}9FHEGgTL=)O zfQLh7abbGXP@8Y-gKvU&wS)qf#D~hN98z`2nuTNrfeA?#2aXE#<+b6&BN13HRIQqr z*D-C!uatK4S zw^p#`r)3+UG*9JxOB=IN3^$`%1|x`iR@C#QXe-MWfE`K1?g9y!N`W*UEY<0(F+yZ^ zNM#qdvWHfE38wYr{SrbH2V!m*K@fsJ8TL|T^<+q@0SF$%>1VdbN&A`nLOrpF10X6= z&kFP{`uu@euef_nA7IFFZl(h=lhpVqzf$;U@)hlxX#hjkP?+FTG4J8gJcwbMSO##b zfnHR!5Miy~(i&wa<&eb%HIPBODgPf-X7-SU0JM^Y{$%*CEt|ks+)^zA;1aaOC?b5a z_38e0B2bG9!TC&sXE9=kJGnqb3qw5g(>vG{u_BW$H3Xz$e9&XHhgvu~kL1Gc2 ztf;ggnP{wu3?HF_Iz~J#gp!wHP@N4f7q~ImArxt!Bb5!$Dw^OuMO)AIrWrvcWG^a< zRe7>@Hildh?>T4QztMl!|6TicK_+(eUVd+7YNmR`__s>h1@-n()Ay$<+2N;qj~>a9 zFWlI=8XF$jnfYQsyYot^CDAuL(XQozC6eEIcfh07|L|*C>`9T)VM@SH`ru^^EyU5jZx1t@Wr~Yf(dpSFwZOYd4L0JqM(Vq7TxQtaU)bD$yOkxW$ zlJaTP?t7&@79O^aJ@>NQmyma8#rIY0^(-4dx;Eg^?KfKcp(P)&iyVI2lYV!#|Jdt& z3w)wBN0wIBDG=Abr(?@lS9_lpyfBtd&$)gO@p!9+b_2SpYu?Iyqqmg8tM9)R=tYKp zW(BfLUZyQtf5n4e>_t~{2`xUmQg4i^V!pJ2=u1cr-(39pC1&PH7YU16xC*;Kx%$)F z33Ytl)~X(o%yeD7Oq(;au_wtk(ql++?yPdUX3f~>vQ~lPfSs#5E&E0w)^q2vOw#w! znehc7Tg=YxuCc3iLwwH--|}I4+oT3N`Au-50q%hvCir#7{xCZQv+PpW=Bh9^9bK8- zWnI+CJn8ALS8;|t6<*#ylZRRb0sE>H%@{x zr2n)=$G?=ZNp3HPb)%~J^{;293S%em{OmSfZ!H?LbJ^1Ogo(^T_(cDG;j|JR9kB2XzD<&zhFWn_?b3_i zBl%IG_TPpw8QChXFQV>HtG7I$VMe-~lQWCzaL+ftpl9ml@rJ6+4U^oxu}=4Hbc89n zF0n*h-C5aJ|6PsrEeFO+u95g{#4w(2%I4;oN@qTRHSm*=0_?W&G zk;ZL%MtloUZ$kX99J?v!tsB0RHH5X_~B*t7OsaR>53gw$!~dxuk)91F0s;=PlrDm zQ@w^TwA=SsabIMu?9pVcby^(GFd{}}Y<2^MQ@ASxaXx>MMQan@YD9f3Zb z+-?KYO!E)cYix!(uM}+{Z`ZUge1An(eQo2Pf!D&+6b(CPM`P>PlEv6xFAF>HxLB#S37=tJF>V7t2m+U_C{eMN>>RTJs+&$sPtoRw@$dk(G++5#z-^D zapFUrj&f+w5fd}f%9VCrmaL_;@CV}T-cqfRLNDbHjf)S(u$>fXH|4Uw_3}s0Em}W? z*2hNsm0sSQ1>WRXVyu={_lXrHiH1kAMv+U>w<|_^7N>2!H!!8VZ-dJNHQgM>naE7T zn0q=g$Iu+|vRy5%e2smWgSH#OaoOpuE^~VpnLlCnANAND-E9%I@Yc}^ho^NxX@cmX z>W}x1>*#gc`hKDDR|Xv@?K6GnDu4gT>e=7G{;wlT--fJrZEB2Cl3U&zvPQYguTx+4 znQ4bo{rvU%fZaB~iwwH@FC!#lad=%@gpYB)Ol!rPx&A(z!ed?i{%t%@Fs#rF6>i96 zQSa|HedX!85^Zxcw6pN*Pov~UDcz^f?N?#Pt&*EDmM@xui%n=rE{#g|<_cZmnJusH z+`W9EA#kl|s??NRYnYpmoWk@DwZFB+Guty^MUJ=m#oX9X?5eZ+{-2(0YTHAiz0t9> zoFH8~8op}6r+nYVg<0b5^%}YP_8VW^yBXR1eg)Nk-+w2%)cp){?;GZ4PH&(F|J$@{ z%Z=92C8okZ>n*6o1r)XDl-3H`ghq#EkDX1<*OlF)Kl^dYWqGy0AUudlUOy}nmQ;$8q%}&W<0xjuvm^jKO@EQF^^@k=7 zSz#}!;oOg;)gnul=*NaOJbu#nrb%yWPpRr6n|rUG>-PQ~F>X5eW?zE%+dCuOUwN6& zbvio^g?(MKFcMQqztv(0|qx@0at%gyET(AH~hxrnP& zKdFr@>@%5r|6z05XI$3HyIs5buKsM8^61a#yfFaNDB3+1`v?F&NM z$fJd^7qYvl6>1fXH4jyB1CNx2YhsDl&Hc@j=rNv8zSTEv3d98mH5okLq@$cGri9k9 zGbftPRAx=9ucdly2~P25>cll1x4ZEA4|<~U>iWdN$*7lJ32#b#0?Xv5R{41zUTs+7 zoffn~Hng#D26gF1T12n;_cy?}wQDxQl zIKI|Q>@j(CQN6>`h9Iiv&D$!aDiJ|2%hOM*Uf{Rs{DriE!uIXj>N}TP(&QBw@t<0` z{O_2__Lpg$Jo&ab4+5R2ab(8|-i=SkCCeP%{0noGI3wqKQR~lSC+${JS-C}V^ zD@5f#nsLUQB$KtzXCfjz&)#$lur^$=V3$1P&AWgqs#V&dK3qz#hyV3|e&Ld))X5d5 z7$^7Wh#a+MzhmyM51oUj!|Iv0L)WoA3Tz@W#D@fg9f`-S?CckSD zkJl6K{f_ces!4bI82g(~o2w^YNS^30jc%UyU4PLYCz;UA*jaOBB#W`M0(Fu5N19Pp z@+3z6wdu5TbAad9G0_eEc|F!d32k9fwYQVY{(;vYzBpPo_*?H+CF{y-Ul_&u$vq3w z!{a0$-zP}L`CfRGy~$hUN8Y;vQ zrsS{9z9)w+?$`gLcIk=E5H;iM^r7#+SCA;17x`En#E1Cho38UC`P}kRtGVDDf|dLy zcvzqwU+2B|_%6lkpyEac`K|iUyP>@|9&A|_LdG`H7e4s)ZEXEK!pDb&)=PpU+P4qo z#O=Lf+;%3CbyR7=a8>ot_5AGfgpjXiHT5dCCWaB-AGqE$%?qEZq9?T++IXa{{WcwU?X9n{hg67-8(f- zRZ?PmkIHH`hnI`qWe448P2aLg>(xPOpv|H6xl@K(!2+4x2PF4)oB11lc>Z5ss{=Vd zIPXi9rOAPD>c*j4yy?m3evov-ixL|Tta#gvcg`XIh%-qs&*n`TGSrK*bQLfAiIXcW zoDn4}eb-;3Ku<^eTkN(G-Ks& zeQnj=0~NjHw+CF$&Xf`=j-7Xo*#Q(V)mJhFg) z`{P%3@1YgLZpbn38#?Gii`Uyx3tbN#>oZ0T`pNCs?Gx*sPXAJU=5lFIK_=oXPkUp{ zqG*@HNuqy|k$cNjIL&tk$JXWf$v;fm1nD}iS*^Qfr$Ry9CvmZ_SbnaZe&O!4N!G90 zT~EA5J$bicFb{PMTA$yuUr;ywokzbsnZmoJ+;MaBX`S(At<|qiuUJptI2~Q_-}BV= z8-q0t2Os{PO7uJ-AiK^q@6$P0lzH_rnr?j6+plULxsty(1=H>JTOe9&C0Wk@6|A}q zvE$0UWlwOJzE{3ASC;p`nq2OCTPNoOYsF~|_ibiWhfBO`zP_b@H5q9e{T?3+GC9<@ zwY;01XWy@O`LU~CijNvg@3ZVA5n~>gR_=l8EQspl(^rdz)keN!S6loX+xDpVZ@$VU z6(wADG0Zpp$wcq4d86k1+s0D=aYd7!mvr^3k7(NZi^?iL&wUz4l;U-{0S_@!#k zic#vW+hUY!_-@~ot-Cknef*k_!hL3tt_~!V5y5z6w|Mo2~Uo~?rr`I&X@|kI*C~BqrPl}{Z zTetl(R`etp#S+zNL>oQt=Vo=2DP(Qp$hfan=F`sg)H|@r*9r{*$>`AGk zv!A8v{4S5@k55?+sQy?nM|Td|K;7-5Qd|VdZv*>rLG$UW2EHBZ(mgl4T4(gMY|h1A znbX3J?MGJYT2K<|G;hA0pAyHNGe>1R-&VPps*raUHCfh)UNQXH@{WWa*j&>W@@s0q zj0!Vl-q?`3x>m4)$~Fg5`>D`@Hnj^X$&!z1YIoQ@Ko{f#qs8kWFlbe161N~={m>7X&hIrs+-Mhe0Qi`Jk z)M^3$o2>`~Z%Ai?4#W(FrAfe2k;WPukZ?ffpr#2djyD3~UQhO-F`}aU?K}Yaq2wdE z<#rT+!|W(kXl_Bf0~%`ETQf8|;P-g&E`KcH@=}3Kgut@^B&gk)UF<#rgKmw10(6?Z zm<;gR`RouXO(=x1x{-3qwdx7Uz9!aU!<_q*i1JD(fg4^1DHjtF_fvwWCoJk;SaH^2tThU0K)bOi*05JWhuaM`VIJ_M zO&A;w2UZQCz#7gNRTNnSi4};7ImB*SEndQ!1lAJ#!U||C_sdGCFqFsR7F5fMK)wSa zV`iWlKP-w36P1RHXt6>#YoS1i#RU=&+hoACb<5d}APe?FLFrznpfR#YR!{)rg$%!J zu+Ml|>C?OcK{U{ocgwp74h#yy8lc<)F^Xu*NLdWL8a1e{4ro%S>O(@8kMP1aLORQ& zq}k@BjVZePq1o<@0IoG1cKyf@$9kl7d!==8yg(mJNRZ90AwqAS!ES=TrhI3N~dMZ9Y3215=8y?dPG#!=mZ4v>p(lSzC{4&x0bcH4v(* z{Vce62umUJVN+y62Faf#Rg4kPW@>^=x%7N?K58~FhFBi97)f?{ASR-U-6gZrrS5fg z9%!f}7f3*H&E`#5#T+8+M*$G|o&y&KhH^6vFFmT9CF+8A!vN+de5?_W#CNeFBJCl|q(zcIrjlBK%pAH*9K;5bFp)tBG5A#mlmZasqi@aIxv*DP^qM<{(>vYd~wwQm; zdKg#qyJjjwp`z4xpzy=_hNJXjNA3*-8)eEHjvl%1aPaF+;-}}kvC6LDMRh&9R-JW@ zB+5Jn6Ssdk6zO+ZH`%U|cF{P_d#m7ht_*o^*F4kDzescEa4jB>W$rogy~t15OH=;) z@}cd+y&zFBb=D zI!f>C8F6)Wyj9I_>=A39ukT_=rptUqTlnb_mTjX>)RZMAGlAPjH{~9o2G|!FzZ^Q; z@xQd*?59|8?9?Oy1g2Rw{4Y z8Tq=SWYeYUBk%K2Lly6S92cgV$IV-ECs`w{`UBoXru&1RL&N`oiyDn#SX` z;a?)G%s)9;Y2Vv71}EED*6~f%sQHYyamkTei$haA2lcNCg}q#=j{T&pawEyJP0!e! zyWJ>bWA`9_+ak2CAe_B*XG6;64*KQO6U5Ks_DyH&US4A@@}-iELh9bRs%2y^NA7i) z;Y_hFj6`L&`ljzi-QHWSkHQ36y2#Yle62g_WU8_17q6GIME9A_P9srvf$U?q!yV%2 z&x{3+DyvP_oLrN=+|f_3M5v#3nd6T;5<79pb9Ga=X;zyW@+;-q~m;s>dtMezhzH#W+*Wo;doS#J0h`=*+#-o!Ob; zS5*RPO)@)g{Mn`2U3E-;V$ncW;JsDnKly5$JbUHMg>dyRW1M##f~YkYE{eC@K-cyl z7kOx5jjk|pe+Y|;ZS}9wa8K9Vt}G8z#p5=XeWmBQ+`b~Ymwk2=mAFRXZ-n=_={o<0 zVEOia2jBgPss1ry!OvC%l-0hOe-Zh@y90Cdu;2;KP%V#E=j}k zxr>RHSGw+ti#fRc+WVP!;=(6^H|Nz*CLJ5^H%6%bX6Y0QGIyG+D)PszBj}~4t8Bl_ z*vveesIl%s=^+PDHtuczfBv7R zr%CX>y!(95`J9=Q$`c)lsPaKZoKOwBkyn#|ray7kG1TQ?!r|JV!6zu+!r-Pow=pF zoVPXN!JJ;Dhb!SgZ2!wPibDBvwOpK{Z`~3zt+x&?M-0m5&O+GIA07K+0-|bU^`Ww( z-z7O-{?if2{_U62b`4e%%mbTTB_|fzFLcht`(xRA@bCa`3XEx{;_%&aB zY?}6`TfzA0E(&DO()eO7H$4%YZ^BC&o~$mQdWH2k)EzRPcD*SbdC#+PlFRM}2d zl6TCB3t#{Adxy{^mDF#Z{#T4{{q-YLTu!0fr@2q>VrXjR? z_QA5f^Ng<5HI_$StM09OY^r-5n_aXj_FU;B+_8q!KGrpSzs<~lUFN+DO*(^nKSHT~ z)Vj!f$LzqK$7=`q(o5rxZrvTTXzO*@e}#*+&9LPwR2yljdo@80KZRHH)0KZkRJ`k9 zQkGLYddr^oOhD}KOX)8z3z_1wL$d7SM(m~Yw{Co!T$yn-F+p2%RxvjR8weTYXPub! zz&zmM^?2R$yQ_vCMyVzb@*kJWc4PjWi<&)3SzU3AN|-t)$@NF-^nSAY_GPHN#sKcM zOv4D~GdEi?WevpeX{oMdUCvjcRZaI>-gGwnZZM1z>)R&0asZEt&urwa=Di!*04=9h zPI%cO8ps|G%hsQ?V4du%MjdKg26q}XOFS%j$f$k3t#9*jgr+F{!gbzj=Y$b+&MB;Zk9G?dN*%(NRi}SWKHsY3j)xs7NjB_yK7JepSGJsHJniMa#5nok zcAx0`%8|m+1?(lJMUDARPMnnUSLGoqdfIt!-65%`3e}`{n8=PxiXH2x5!Xzfot?a5 z!D~Dpy(dWl`OAkE6@Kn$-sZyhNMsIfcKxzUA*HqM;orP>GrPPU8+&+Hdfq3Ky33z( z+M^S<&Dwt4b{kda@aL`he)x-T8ml1g)Asyz?2&x}A>#6b6;8V_-A_lN&b~!4+grbP zt|_iWFZ*MQvI9m`XE|0-E1Wl<*)fCm9Vwe9%}`h$(l?!cbFA*}DDfUUE7hTTz1Dc! zgwEeWYN6QvsEEC|2Zh2y({>U1e=D0v2&15U`H|iQ8`;ApqOhN#>+F&eQ$te4`Nc=FA0LjY zfBs=FX6vytJ9b^TpuZ4(yC?f_qHgPl?itsw>4V<*%P8iJs3Y#;We0=Z1_OvFimmhv zG^XfM*6m*pS$~AtL3z7;)c<00>fS9qM2%@UkzW=aXSneG#E45m&yp(>j>o&t-i>hG zc7JwP=e?spVni8re?JV3+*K#P{U9!G)^8?s-P4(qxHALJ-@f3nW$0x^@xU3q4&m$T zuDf`-Eb7W4f%}BBkw>1*WHS?QNc9Z^F9$elT*-{+Srsy8|K#13rH}S9#8G_iv9RI- zKft@JzuLw=cp~h>?tAIZVvk>w{cgR+uUYW5ZEjlurV@ind*u+^#MpbEw)j?oh% zCltfKqvAc5_%cE#;JmTl@?&04t-QVVKNHtJh%B= z$VsGsD~hL(7yGL(Hcy1yBN2wFmKigO#J#eGUH{lp&WvoxN@1McC#?*H{?*pj#yj=P zp#`=569M@?C!OgV?^9@V$snzY3af2WK4rdTZL;Z+29p^xg0$Y3Zkb!U#KMq5fM) zcccMJwnD=$6xOYQbU7~$k{EAZi~UA@aZG&cyPf^|$FKLU_+HawJlk^EGun-2h)|}^ z+V;TxIs>0zS^t*;QucZ6b9{MR)wvPq=Q*`ag^CJy(dJ_=ZNiN4b7J@K?BC8Rz3afy zovN1~`BL~$vHDD>!;)K;wo{X{!@F$w>Zv@ z)~}jn0k^T+scJ#M)#S*T-BUNdU%GxRDY@lN!uns!tT%6O z-Ps<8ElQvDr3m7VxItB2hE&GWOjn!pQsXDxqKSr9e_H>1G#In{(Y=tt?KcMqHH;q_ z9Vgb+@~+u^E3k9ie?!pwb&4ZyrFZ+nDJqMCacs8&@~1+!^zr`Fqo~|?lW*SFZ4T9X z+p*%iOSA8-Zk{8))7qdwU3bw2M3rrtVGK4ozw(AQY}Oy0fLU7`eAG^MIbm8wLF&WJ zmri1LaOO{(;PT#|8?3*!!T;YG(DaD26R1xAc#M9f{_@{FX=Gc5Pw}{M{4?lr{6G>^ zsgT=@0iKSQv}mq=$VkL#nTnDSPG%9X=kbhuoWTf+C0JZ;hoqLp1(8?)N`%W)MvY^K zB!tHU6%L@>gTx%e=VbtMOt1P3F#AANKn9V6j*7uf5XCfNm8y7gAC@W>in~En6$-pm zY9ppYBC!D>iVVk6`**=WG!+>9*z8hAkU9lKMt#p!(4L?*_ke6J&eKCF(|h>=3!N5} zBh-Sf1RR_OIDyfO-~xt1gRwC=xy`^IDX1WU#B;5@6VyEK0pvrh22LS^GL=E_hJe@y z1?f*8(7}QSSUG(AYL($6APp;ju+6L zjMP**+%gk5^FY&w!e{`!yjB~HGC(#oW|qTYeL^BYtO>>GzykmuKDtOz_kazTBuMS|&MCz{1+kq$N@I}R3{0I`DahD7Z#Si8x(YMiPE)B}q{kkXzG6|i$+ zLH`CH$HWl?XSg6Y+QkETPm$UrDZ}FeK)|(|%nsyofz?vU0^P4;ZPDe#3K0+@&9`** ziE$nX7Re($ttig%R#6bb1avrnYb(VQSS&a&SQepC5=KaD5s)_r(!FXywKdQ&NWkyd z7#a;qXmWv*wTla+l^P=<&OXG^izMx>Pb`H1uN}rl17DfAF`eWIr=*2Oe; zXBz=*6Noc-v55mVdnrOmqZz=@@k-!&HA*~=!)c{hEbwZki$Tn_rKtvx3=2>xS)jEg z5T_y7Kx~u%$cw;+Ywa5D*RkK0k?8R24$z z>h&EAFKuEpR2DJ^$EPzv2)Y-<$}twe@l^G}nL?(B+l8@Oi{O^5^bD2;&IFK8uUdw( z-A5>avv6EcKdwu}v9Nq-6}gK5;Fv}dc5JgU;`s`LMZ(C`nLDYrstJG`?U*8{h12A> zKxsGFfrTIn&E^RSJz{Yt-Q8yKlG{>mmE%C^uO4LDnM}P3*f4=28y}Asn{{-2zKfy` z&H%hWvr!G!oLAczst0oiu!!k6CR52E)-po~yQf_o~As+3S5$D6(B?A2`9*Qa-Vtq3(OG}G@ zUo}w3Z4yp?9G1Bmp%AsdYlrkag3@hA{fyI2TjLlL{i42qR-Qc(5YrDT+Zq=EIp z1Buj8+z<)k;$8_5V@jBBI~y=xgY3QJUY_=VFj>zo0WILx9)3LVp#xQ&d?yi&=>%WA zhT5GCPUA$REV+mQFqLL~YE8@-da=dK1-(NISsk3(sUeo*NZd{?fW89Wz+i`xW<-UI zxq~f|ov-m@>f+R8QRBkK1&o_KZpyfzrs{Jr{ROW-GM(^Z(x)?T9=Z8fezUuT{Sx4T z`xnmZSR6Dvbj|*Lu`_0P>hr0p4CDi@AIBcdh&PSGaA34rieUyr@8c5jtbU- zcbc#v;8X>a(NPw%s6XG)&3tnTG=`B?|9Jny$-;Z$L1EcT?4g|NmBf){63Qv^)eX(- zXC?)+4xBoEF#3+#_ePt0B}X3_=n8X?wyTocs1Pg z;`{@V@9*`KdsWtjMrg#cYqz%QuiI~rbUzus`Mqy*;nh~|m4q;-x`Tf1rFUBc#tpmm zBR?_1^63e8PdQKjc*2zKpB-9u_A)AFOXa`-)!xy9*B9@M>1}mJr+ja6NRYWN{Wnc{ zhg7_?=y3)UN>8lX!0Z@GU1zp>6ly6Zen%zj#EY|;fmx5OSXsfwRf-$B=M@(cp|y<@ zGB$*Nea*Td|C@EBnmc#zX(L6w0q9;^a1RR}F^fZ9iO5h1+jHl08IS zbF~7G;OCewMswR?&o&pt&aQpW4An7Gre@-_vs(D%u4rI z`Qh9T^x`cfwTdx6Rot&RLtYPgTQ$78-0jQlgcr+s+2_-yt#?rtySp7(e?)>;W12Z< zhqiLIlr*lSGsq6vBJZK>D~9?)`aaRAV|H&}&ddwDv3=`WXvFzf|0G&XOCtkT8`JVn z+k39?^oMRa9^Z$oL~VGuk2T-+?62<^`xiZkm@`i7ER3&m*$5emi`wUz@Phn$TlB)y z|F$Qb{S^8)R;16qS5iknUib!A-}b-zh-p8=-4x=6@LaH<(S_-n)4xwfjQciu-nQuX z1lxS;lYgURS+0>)X;iEa6PbSYbNQ zS%Tx>sI;)E?lV<%`52S7)u-UvoPD+<%Hv6u6E0LSREFbgGAlKd)Zr(n6R*RQOMYwj z9l-^x&ba4!HUDPs%XH^mC$>hddy%z(uV68Ayb7ndCFO1ES!W8~nR|1}mW{sFEVLeW zsp#2E-014ytY01^;lZ{A@;%H;+04H1qnjk}J05za6r4KclH6@}>D@6o%EwLR=ADn+ zk9GXCx77|FUHHBxdI>#M{wZ%|&8fmHyk~KpqcWflp=*8YZskR;oUl}Q08;fl zS30HhSjW?HAS_^3;YeOr9-6Tg^BuvSNTr+ z&NHUc9lt#3s|f9k3b{QqH~XQ>==pK{iM1XCUR385w_qd%shXZV}x>{U~)tYyHWxr6)eLR5;Zf4Zpr6au;m$(iiWzV%eP8a~}2RcQM`(xJj5J zQjE4a+4$`9Q!)6B=6ukppMT~#JVD64(AD4EX6Pup(tfT!Tfdtf9`N7(Dat8t8=h{6 zc2}n?S>^WaEX^r*NJc>8KYNFD7}g$ki=}o_X1*4_Js;X}FLSY(2)Vnwea0*wTXsp@ zyrn_=tMX|tmXhQ9yD!(UCtMdL=HKNUaB{qjo|QKrw#AZx-w=;C&Ac+d`gqwB1L4M6 zN9CExSr84Re9|hu@ax3a8>pT6wa(|fH|v`J$lqdm(h8e&pL6#nXZ1k-2g-T}uS`xp zk`xj0^6b(b(7>>dGtY+aYvq37^TV=d*zI*Az+8?`oy%&dyYq1IwBR9Tc;|$NMNVsO zt*jN7c9hfe^5$C=(^sPy`M`qknS1YJ*OEYd6sx*-DB;tFeazI2B@w>5#Lf>cEJ~)sSGc)-?1!PkKVS0+FpBu8mGWEMH&VYW)WXais)iesvU2Z)lHWTjlXp* z$1id7B4n~@!Df-+M_)zNshej5>?zBhj3(HF+Rv$Zw1$lDV6YmcPd(AXYHrq9inyzjfS0gaRUUe$Sl2xr*61c?Na4b!*>UGG={3E*y=F#uo z@7R3xi(zBgya4QH*R>AUI(_y*@Jsg(7e*Hx3Gox>MDCiEro1ACSB1ED3cjr>&b}9P zr|F5YUjBMnxX&KfaZN}f-I}~hHbQiILWD--or^Sly(92_{8hfA;lX@Eh}T(M&b}O7 z${)M9+w;HOw=WA=$axrCu(NX(r@Lhr#bK2X>Gf;xjK}kKFOmO#dim~!@WYJJLgs{q z8DHnb2Ss&0YRS2G9y%k0nSC;HKzV&R`Cfc}FKV5ClsP3GivPWQ2k9`H9P;R-yG*nA9GBkgyhhZB2&wnrU_eqjZzec$BWy?+m?@=o&_t@z@k# znK&fASf5ieKKYIS}5D+5TQE|(wLt7 zA3a|v+;4}NHicK91J-R)kF$1TXpTz=fmoEfwr*+@&j zA#+r7+;0^sJ8~qm*jxK%8723cdGSJFaohSG4S{CL>%~(-J1@;nE5S>*53NXSEuXS5 zee=J*?LXH{_Lw?x>B*MX#E(d(Vdj8qa0SHC-Vd#HY~26%bwu&c%cm++DxKC(_XIzb zmycKWo%2|JeP&$RpfH#QN747#mmGxc331`5{g>a~F=TZHS;~uY#5BB^XW(K4u_Pe7e z#+FsNE0V$>u<1vs=e4Dgo~3@`y+|jVd1|%yMN0B0oAtpyaP)Rb?0+v$`{~bgeA{I8 z8Tq)3Skm?s{m`0`9W$bIP8s!jatPU^pd77H@-R{8^qbS)Uh8%ZdeUz_6Ps9f@VImO zw6jM)_tpP1@u{|I{j2gy;*^yWhA@%3@*rL}B-<(j@CM%2mOIr9PUdd3#gV#)m&XMcQw! zuepNIb6V)WSL&B8XBu&h3c;nk@uVd#3zt1`K76nE^Sqw3Z!sM!Y1Q*_hGnyz_IlK6 z1JAr}3G+)v?^O17o!Uqb*zOPCKkL|Z&XFnfy)SNjMXovf_~6+vW9D_Vz4h|3|zA(@Z+1d5$pFGza(K{}@m~pltkjLkEACTP^ zB)}0~tLVGfb}Ea01lrcJv-qJZ^u>#%YZf%3s@;Y>n_Chm1#!;qshw=xhxpeERiC6^ zD4J`xhEaZcxY5&(QTEAvTK2hoCF{+;W65dH?$kb-hVJV=$A7;pr+p=ALH(|DhvP6D zYDSRn2En0uC!Ef=EZCs9qm3)~`x1+JfJ9)p`=MP8&)>#O3_^Gx z|K{u(dvjju?j=tb5k^{>suFuf=XJOTv6_gf5obGYCb?u6`Id4zjZ3{hv&3 ztyZM!lXMY)e@krx5U@mEsU2u~=GB0QQFgT>pn@?#TvI&Q7q8VOf(T}hRt>5EssLFn z4lo3fN*=MCfyEbsXs=5k9?ys;wlqWYz1=PrL|L-O;&Ten8ba>F3o76qo}LhWCkR=p z?trFNhJ*z)E25U=p82L)=FYg1V0`8Yox*CMA>?_{T_xG3y;L z)3pGbm57tARRHCweFCr{flwuIFp~SQ8m*C53yh1PCz&fGr8e8dT~uo)R|H<5C`<{* z0X52guuDk@KmgBW2e2wJl}tgCmINo#;VdQ-4ND256NqhSnjSn<_tsRX&1P{esEg>% z?vz_}bSfw>fdg?N1VpiG=rXkk2P{tYwLBA7%>(aU1A4T9YYV*6*9r=!qd^sI23MF% zk8=dnLzCc)e^ZUwV5q4FwHzo(2CrP01rn_(-b7tAUL2AJBC|#!yQZ0;)Q(Xl3%jTw zP75SaFE;RL#sHlZDjO6Jgc?gdN&!C8Xsm-XYehmP2yL$E2DG&STBNl%7sC(AuSq9Z+;C?dkbTw=)$nzRCAleF$ zgkmEQ#j3m#d0atFIaj050LiTs4wjN6YAC8Vr!(0mPj?gU|H36uY6yV88Lu|21i~qk zBdEZ^ZSirSP#K88fR{+%gZiJ8Ff@`ZXfkp^c~3eQ zrFa9KFcfW{3KSo>w6Cy3FYfG+0a2+4WTiol8-jfJl+GM z0G$5cdHk-o%W@gZ2|?YPlF-BE_KD17q#Z?g+_<_ke@SlH&HTL}2~X2tXX( z6v9=3P7pRIV-_LvL+MdA5Zf)Kb}7|b7DA22Dpaa?X$NR!Nl#A)5~SqLGcF{zL0#YhzBy_K;)C8_z23=nLzjkRzV;ub}>0V(EJeM z*vKL?5|k;WgEJh>2!IaVp&((5b{Ozd0>iG64-P;Qpj{4DdE>c4GENKru@var`Kh9K zwEeAJcB#7BP7%oy&^^a$=RpfMlQ{-D0MzlTnz=EA6Kn#WM?INM zrv^hUAsI@n5}X^;D$t+Sfc2Zi;3eWr#6&)h3dR*STBp`v9tJ}fCQlf9?ADmHI4y%c z?#%e9<5R|O7{6lt!f~TbhN(L$g4X5z9?E-P__Y2-TU6__)Mn=kxzf;redCu#%O^$r@S{;4yV3zxYzsT>8Mr`dxOjPyU zpiEjEUWA@W3i6AJx~QOD-uHabFR7DOo*ka52(i-|8kbnMwA6LDZ@&7j;BUHHOv|YQ z++%s(XC?*woU~CQRS6c-r4%~dEIPE)pG+~&&uAIw$}@}!@}qOG@ly1S3oXN zes@CYKkq$MLfhU~d~;uXg*z&=dr$7%N0vj~n{l#pZXPi=)30^}kMEYP3;Fxxjz2Lb zS?z}dd-mVp+NbP%3SZc`2bA1_pFPDsQ1vL+ml6K z_x^XibXD-CH4Wz{!y`NHA66Xq+npZ1IMML*=RNE5Z%;B?s=DttjN~3#*_hUO=VHmF zr2ZY3vJ0lW!xFn+%M(w|R16z;r4snz7a7YXsfqjpe?bpC#(V{e|V`Fy*kGFbTb)w2cFZ%|ba z@`J?7*$cATXU_1g$sa+RU4lMcb}SOUJ9+CV@3xpjbE0k<;W! zKr&a&lDO^c_|8}K9Zo9y{cGLm4AjHa+u=b4Yj8i$<61Pl*+Gx<0;Y9Thr-~a12B}w z4gTFQ_ItxO!;wXOMTynl7B&A9<7v;l^!Io3Q_T0)w@nf41Ck(3AH&cbHX4Xbsp*U{4Na*=BuE~d>ik!JGKPMuwG*Y03S zdS1b9+``nC0Sn%@i^voIx!BQH(n-KOX7tmNu97x1b?4_Zk2JB||KSTTq)XB`eEOP3;7E;uu7 zLYT1S=AU?{LWl8HK1hr4kBHFM)aZ{c3ukjEb#PU?Jmy@)mOSyzTZURMVpyWqC7>lc1C_ykDE@4f1oxS~@z4nANe=qRPkwM2* zZr>2tS5ByeSX-NyfBb$e*isYoTmQOitE{rA{v`fzY}%4RzC!IY?LLz3epffA-?j|_ ziM{%-z2v%=gZxd%yp4^Uwy>x5b^Jkj`hEJggi{QNe3QqVEShWG^?CDFw6Y=VOQ1_v zzk!er-{P(V~HpKkDVmWe9|T-5>2ee#`R}r~GFn zD~>h0=Ta5WH0rMxGSuiT>4K35DK{%P3|77o8a8j6(()|#X4wStgu`X-)yqkJP#)!T zzFou%{rE|Rp?^X9Hhfrf>Sf19)k^x6$?M9rrGq%QM?Ts8T+|(X%pprAA2N(v5MztG zTl%2VJkEFSQV8J)62^Is8$B%6L|w?8(86FI3XWkl<~7yC8)?H!p5b^9htQKcsf-VFN~*N<$@+JpZu z{6pP%-vjYpQR`y2;&0_G?M$3GN~S4#@czFaTiyy%$Qy!k^` z$~vXdL9h_^t(4aYiyllv>F4&;^6~S9+H%$_bUGzV8vb>6?*rBWXgKf4`3on9A0!_B zk2rbG_NG@43r@dlqJmiY$gu0HrZO(Q5bArZQ3r;%uVpcC@rR}rH;v_+RIY6!;#K_c zcO@+HozG#E99d7aByovzm#1yn#H5im!J}_bs_jotr(4{+oT@envtz2H_u>n9zh~_E z<|@q#F8y|T^^Mn#O`Rp3dyGeK$$otd?|BpL-oXCQ6J>3qHzq-xOEi6;} zv9_h&SyjSSbnUmARcZX1HL6PNTso&h8Z$NY9sWFjmh5ZgYRtWO$YZQvQJ*HL%hG2! zn(?4XdW87^Iw+a6XQI@>>a4{v?oQpbgC2b9*1G`a$Ct}*U%vIWDyNj=o^rbE)AI)*p6oyOrVDi=4gP$Pw{S24Zr? z%L7n+4r9Jyvt?@;_i^3uqb2N~_&Yz#v$7`|Y1g34E-k^T*|dbdKjl=(@Yl~!%7=*c zXIa~-A1o{zluT53Z!uq9KX-ALDlko1SW~!^HL@|zxV7Tx&`8pHY~t#S;ey0fjUQ0q zJ@d=Js;TRSp5SuXvG-lCujmM>+qUR~ALD^A@>@~5&*H12g<5i2`K}|8s70fie3zEJ zNc@9@wDJL{-75ZuOJa&-hWa!sNko(IX_Feh9vQUf9zfUk#2)mEKji2lIhCg7b12awZ2TNWE9vO|DQ0~&W z9K(tmRiDnw2J>szDvD9h`%9}K$EG!PO|>RxgolOWHw=A>U#Xb$Hhs4|F<4dVct+f} zUNm^w)e*7cGB;|=UrQhLX!rRGe8c@U#DRfbmtohh`=*7tj$iQJvgNNm$a;o@JUk+h z8Kg>)kl=Gz?%~U_j|iF<7N4&x`0Fmr60?>z_U=Lld8o1RnO$W5LWmnnWhiEN4h6aQ zz}eycn8gopyxXpGe(csgIYu41L=WUpcmEO5F0Qz4g}FQ1<)t`xQ0}`ry1K;t{=IYD zh2MwAE&AO*&iVJRapRjmnThLujh__u`u!D!bS~PVi=h#-JTa+FIKbA*_a?EZ;*yIe%PJEyTHAF(xYBocS zb`rCJD^OA!;0T`X>|6q9pfa?@tZ&R>Ioga0C8)Px7p7!`9$;NGEw;czW<-F-Rjm-T zO2GOTTs*+FctMLJb{45R#93^={BSo*MyJ)rGXe{ln^k8{E(i$ZX{0?u95Duyf<~z| z(heG;J{n8$(rQ70F)bxjWetvjCr8q3sg2&mCSa0Fjdtu*$OhjpXcq>Kg@=^oqFt&)|g7gNs!%Y%3f#4~#+DaX-7C3hE;YylCB52l%+>#^YryK{uaP{Dk8mLc= zWSpo6r{qWgSWOy262GqiS?UZH!cdN9ItFX?=D|jGyi|gNN9`KF3aVlQt{U1|r2yN| zBxVDWJ61!H)HLA~!IAdj6mJG69S##W1Itl8TVzYMWC*EO<)pO$t0n^! zP{1)w0B1*c?g;b%A<2%Abf~n8Bmj-kMN}IVgj?eQ_A(vh5>wbGjyl9?(Av81q51I%nG5`C|rTu8O03*nSpzCs$@WLC3< z;vPXFAB~8HjBQI$-yt{y>{eP4N1`7H1%1b$4HoTet50$aNd-EZbD>Jrh4(iHCmM7( z71}<8#Rxt?EU=qG0?tE8l^5E>1Eghf2%uzH%Xw^JiZ@gWjDcGAvAF6I%)>-YK)@1o zPKBW~8g5{msyBQ%#xTejVA{$a4%Og_4d>6@vY^Ztw0NCBcjt>l}3pf+r)VTWi)*47Np|{&Xny3+k+GH(#)L9dPtI zK#+TRrTP{cUqYawe2w!S%Dw~KmSZ>Oo{F$XUOXJ(7+kzJOJI%AQGBsS$Nxe0O}<|> zHLEDkt1$Q3-~`8`6W!0D#$9~8Ah(tPJN+qB7bo*-U+`D3q9|hF412n-GO;$;3%PCO z^*!3e2Eq-iy-WGENVi~LO7g%mw+s0TyQKVBVa%?%PT6k3%%yAHeK8lMu^0RgR|gxV zR^K(n*A_%LlD(2IE{{R4ngHKBj0oO4cTU8W#oRUS{^bWOYijAIOSylcT(-+^u-V(!Qhf=iKekzR|7olH%Ro7Em`ti;TMH4MQWS4EaejU-5ZmXb1y$ zKx<6rGEAQ2=U?k%B$#`J53%I^5tLh?f+P`JsK9{Ty(kdNJ|MD^*_v8?5pJxT`ws9N zgZd$^S|JBa0zsRf2Ob_(#OFn|hX+9hHU$!@CfN5diJ&|=*I-GP00(4lf>UsUvzQLm z;4|Q!5Ky08&qhN4;Zr51BN}v(_7W2Ts#F>3L01t5boa0TBb6Z={E*9*C%2RfH@Mks zfXbj{-CE%m|#qy39WOkm)%1%P@cAsO7tr$xJ4RKO>hQqT^13v(+{LtGTV5{;$7o*O9#d}tBNl!Q~>+9HyCk% ztA#2UsRYXVILQm3HtMFU7ySM$8rnG?V;N=hLCH8+4iUKajUjFoh2qQtJm__5<_f(z zVu^&<(o{}trhqMC%GRedKsuk1-NnTLb2q?DiU%!eP5N%&(?w%VplH2|rt!dwyTJvm zJ3}KAXOVmE0EmYgSX;piN!`ihga3zT0KP7Zgda0?!ePlE`3>e?rOvDX&{N+5lwe{s zlgWo;jg(Lv$am8WnlW4gR)gnwnIwXi+B$H`1;TVGri-OjnDE&ma7omvb!M^N2<9v_ z4GQ2YLNd#_-JyUFYECt$)->sR8(Qe@$&nEgoR#qsfU*q5apS3Dcwcc=`b=i`Ogu?E zI0m>4Wd|xL>A~e}(4!;T$?{<~$iHHU{|5D%u55!4B1m%EB+^GgN?`$y6%8ZalPmfMpiU9y*VTP(l zt5N}`rjVQ3R1W3`4HaMp!{XH^n)~o*EO4`0JE@(PtPplNCtYT>0D!2)s~WDT1@O%b z6&QorG)gRhRcHW~Rm%emU=TkLlmlXDISWo;f=#JavcOD78yH9;pK4EeoJOF@q=`5U(lMcRFh6KPL0R9&zVybIF-BGAs!W4n|m_$R2 z2IJAO1Veo@xCYz6mI(qAO|`BXUZ~aZ5ps*h(ITe9^Fu)i7FVleC>2V+C>l-xn+WhI zdQ_byS%9w_O)LfMTowbM8!Ch$WTO#mDQkzs&_O~3f}xqL7Uw4=C}J$VHlbThLfs3q6wjHN(5Pe zG&&37ij~H-+PDVRRLF6JDkK=MevY1>Yp2K1QKyHRgJSrZhWEPEW zMFI}YyHdi@Ou)$nG#W~3V>;DlEX7Me{3O+E7J?}bxZMX68XPXrF$I8d!C=aW69RA! zjfE`)&>vL@Clm~w5L7_E0gYW_M?MeSrgAl4*kkAj;egv)E@0%Ohh#96Dz(0gK?Cl1 zx(5jy&*eC9AV|~LB4r>PM^H-pJi&N}tHH@TnH?c?J8vQyOQPw;IMD6}9PHvdps>uq z=GB+Nxkj+7YQP=zF+#1l(Ip5nHa68ICbIeQ2(?+&$pkY$kkIFhR9*yEl0YzmA3(LFGnpD8 zm>l!W+-|Z^0*br>z*#ch+S8%$5wlIHV9yGGSR`05ZXg}|)D=Z7U4@eDAVD<{^p)C$v6d_Z)k z2;M0k0;e6%-|v3gPBd^|j!$z9ejavt!H+rnZ_eI5V?|?C+m`SzxsN6;i)aa*;hVN* z^4i(^@`~r|nK)%xWY~)R*V{fmyu5p$_{Wy11-=_HdqaJ0_{{fNzBlZ}CAa@>hhEzy zu+H)w^4cA_a9Q+~HFM5X%ny71Ec$x!C-Ss?zYkrns!m<)I^_-cW&78rRlBZ+KJfW# zs?YXcWS_a-)92hQU|Yj?;kxU)&9fr3!Fh(6uFKp;eF~5dktNl)4_l_~{fN6wo;%lP z>&h<$$lEUtTerTT7wxO?o}YI6DNn+bssyD;P>VB zi&=}#TwX{=n!a>g-I+IN(kvgOG|PL{fr{p=nO{r_ zgEh2#)q(OkS>X%il0ovf+e_9TD=n2iBfO5`%=iQl8?9V^{Qc zb!c@5=t)cB8D+=2&TZN(88LL-m3N1hXWV6I&15tAbxi`|z zJ|U`exI;1El62fWvJqDrXdddSKSOTxq2uaIAz_j3;t$@rdszJAqC4hM$uTsc4D8L# zsl&%b!=2)c8lk_g$w(0clLu8-lc+bsVK#%_%vFNy3YP@_&>m{^r@LFcKwhJsSJNaa zRIAmX@{R=VV#J{M5)Y0BBStS4nDBT!jRXeT;GpAkK|sqxNz-7R{Tpfi25peNSWu5+ zvf%E(1p@0NFu^5_C**Rt9C2!+glZA1EFnZREV%;j56l~SwlE4@5OgLCJJ8Y6UleE` zJob(VwMqt_R4_U;(#5l|B)Eyoq+0qT9fIlDLX|Yt_u>H(7D0m9E*1ci7C4n^!6l5t zf_vBp)APM>fPSU#X5z4L1USTjb;8Z+d-0Sfc#bwGF_wP7L{0*^sssa{~ipUq^obyw}#X6QV z3?qYa5FQY!oR1kR; zSO$umO@pRHRr%v!d0twK8V{kyHWG<68O)!S4_*q%59Ya3OZ=5Esy$S9$+6BYahMpdN5vKdeek>JksFG-1NjN)K8loX=B3gO{!k&X-& z7z6^PGm@(3P{C(Kv9WnBu=X^qhf`iCG{1vlb3)Kc$k6;-bSU^dD9TzzgJPJ@s3