From d1fbea3e19e4fccb665f644ede824abc064991cf Mon Sep 17 00:00:00 2001 From: Vanilagy <1696106+Vanilagy@users.noreply.github.com> Date: Tue, 27 Jan 2026 14:45:44 +0100 Subject: [PATCH] [WIP] Add majority of logic for HLS reading support --- dev/demux.html | 38 +- examples/media-player/media-player.ts | 32 + hls-sketch.ts | 21 + src/adts/adts-demuxer.ts | 4 + src/aes.ts | 294 +++ src/aggregate-demuxer.ts | 202 ++ src/flac/flac-demuxer.ts | 4 + src/index.ts | 8 + src/input-format.ts | 31 + src/input-track.ts | 7 + src/input.ts | 8 +- src/isobmff/isobmff-demuxer.ts | 4 + src/m3u8/m3u8-parser.ts | 515 ++++ src/manifest-input-format.ts | 35 + src/manifest-input-segment.ts | 112 + src/manifest-input-variant.ts | 457 ++++ src/manifest-input.ts | 189 ++ src/manifest-parser.ts | 22 + src/matroska/matroska-demuxer.ts | 4 + src/misc.ts | 81 + src/mp3/mp3-demuxer.ts | 4 + src/mp3/mp3-reader.ts | 2 + src/mpeg-ts/mpeg-ts-demuxer.ts | 4 + src/ogg/ogg-demuxer.ts | 4 + src/reader.ts | 84 +- src/source.ts | 87 + src/wave/wave-demuxer.ts | 4 + test/node/aes.test.ts | 62 + test/node/join-paths.test.ts | 46 + test/node/m3u8-input.test.ts | 119 + testfiles_temp/720p.m3u8 | 133 + testfiles_temp/entry.m3u8 | 11 + .../entry2-variant1-seg1-packets.json | 2278 +++++++++++++++++ testfiles_temp/entry2-variant1-seg1.ts | Bin 0 -> 448568 bytes testfiles_temp/entry2-variant1.m3u8 | 45 + testfiles_temp/entry2.m3u8 | 15 + testfiles_temp/entry3.m3u8 | 133 + testfiles_temp/entry4.m3u8 | 13 + testfiles_temp/entry5-2.m3u8 | 78 + testfiles_temp/entry5.m3u8 | 78 + testfiles_temp/entry6.m3u8 | 78 + testfiles_temp/entry7.m3u8 | 43 + testfiles_temp/entry8-variant1.m3u8 | 38 + testfiles_temp/entry8.m3u8 | 17 + testfiles_temp/entry9-variant1.m3u8 | 17 + testfiles_temp/entry9-variant3.m3u8 | 33 + testfiles_temp/entry9.m3u8 | 14 + todo.txt | 12 + 48 files changed, 5511 insertions(+), 9 deletions(-) create mode 100644 hls-sketch.ts create mode 100644 src/aes.ts create mode 100644 src/aggregate-demuxer.ts create mode 100644 src/m3u8/m3u8-parser.ts create mode 100644 src/manifest-input-format.ts create mode 100644 src/manifest-input-segment.ts create mode 100644 src/manifest-input-variant.ts create mode 100644 src/manifest-input.ts create mode 100644 src/manifest-parser.ts create mode 100644 test/node/aes.test.ts create mode 100644 test/node/join-paths.test.ts create mode 100644 test/node/m3u8-input.test.ts create mode 100644 testfiles_temp/720p.m3u8 create mode 100644 testfiles_temp/entry.m3u8 create mode 100644 testfiles_temp/entry2-variant1-seg1-packets.json create mode 100644 testfiles_temp/entry2-variant1-seg1.ts create mode 100644 testfiles_temp/entry2-variant1.m3u8 create mode 100644 testfiles_temp/entry2.m3u8 create mode 100644 testfiles_temp/entry3.m3u8 create mode 100644 testfiles_temp/entry4.m3u8 create mode 100644 testfiles_temp/entry5-2.m3u8 create mode 100644 testfiles_temp/entry5.m3u8 create mode 100644 testfiles_temp/entry6.m3u8 create mode 100644 testfiles_temp/entry7.m3u8 create mode 100644 testfiles_temp/entry8-variant1.m3u8 create mode 100644 testfiles_temp/entry8.m3u8 create mode 100644 testfiles_temp/entry9-variant1.m3u8 create mode 100644 testfiles_temp/entry9-variant3.m3u8 create mode 100644 testfiles_temp/entry9.m3u8 create mode 100644 todo.txt diff --git a/dev/demux.html b/dev/demux.html index 9ac4f2f..2a396f3 100644 --- a/dev/demux.html +++ b/dev/demux.html @@ -8,18 +8,48 @@ document.body.append(fileInput); fileInput.addEventListener('change', async () => { + const manifest = new Mediabunny.ManifestInput({ + entryPath: 'https://playertest.longtailvideo.com/adaptive/aes-with-tracks/master.m3u8' + ?? 'https://playertest.longtailvideo.com/adaptive/customIV/prog_index.m3u8' + ?? 'https://playertest.longtailvideo.com/adaptive/issue666/playlists/cisq0gim60007xzvi505emlxx.m3u8' + ?? 'https://test-streams.mux.dev/dai-discontinuity-deltatre/manifest.m3u8' + ?? 'https://test-streams.mux.dev/x36xhzz/url_0/193039199_mp4_h264_aac_hd_7.m3u8' + ?? 'https://test-streams.mux.dev/dai-discontinuity-deltatre/manifest.m3u8' + ?? 'https://cdn.jwplayer.com/manifests/pZxWPRg4.m3u8' + ?? 'https://test-streams.mux.dev/x36xhzz/x36xhzz.m3u8' + ?? 'https://test-streams.mux.dev/x36xhzz/url_0/193039199_mp4_h264_aac_hd_7.m3u8', + getSource: path => new Mediabunny.UrlSource(path), + manifestFormats: Mediabunny.ALL_MANIFEST_FORMATS, + mediaFormats: Mediabunny.ALL_FORMATS, + }); + + const variants = await manifest.getVariants(); + const variant = variants[2];//variants.find(x => x.path.endsWith('aac/und/stream.m3u8')); + const input = variant.toInput(); + const audioTrack = await input.getPrimaryAudioTrack(); + const sink = new Mediabunny.EncodedPacketSink(audioTrack); + + for await (const packet of sink.packets()) { + console.log(packet.timestamp, packet.duration) + } + + /* const file = fileInput.files[0]; const input = new Mediabunny.Input({ formats: Mediabunny.ALL_FORMATS, - source: new Mediabunny.BlobSource(file), + source: new Mediabunny.UrlSource('https://playertest.longtailvideo.com/adaptive/captions/130130211307_1.ts'), }); - const track = await input.getPrimaryVideoTrack(); - const sink = new Mediabunny.EncodedPacketSink(track); + const videoTrack = await input.getPrimaryVideoTrack(); + const sink = new Mediabunny.EncodedPacketSink(videoTrack); for await (const packet of sink.packets()) { - console.log(packet); + console.log("Packet", packet.timestamp) + for (const thing of window.iterateNalUnitsInAnnexB(packet.data)) { + console.log(thing, "type", window.extractNalUnitTypeForAvc(packet.data[thing.offset])) + } } + */ /* diff --git a/examples/media-player/media-player.ts b/examples/media-player/media-player.ts index 6341647..b8103bc 100644 --- a/examples/media-player/media-player.ts +++ b/examples/media-player/media-player.ts @@ -1,9 +1,11 @@ import { ALL_FORMATS, + ALL_MANIFEST_FORMATS, AudioBufferSink, BlobSource, CanvasSink, Input, + ManifestInput, UrlSource, WrappedAudioBuffer, WrappedCanvas, @@ -89,14 +91,44 @@ const initMediaPlayer = async (resource: File | string) => { errorElement.textContent = ''; warningElement.textContent = ''; + let input: Input; + if (typeof resource === 'string' && resource.endsWith('.m3u8')) { + const manifestInput = new ManifestInput({ + entryPath: resource, + getSource: path => new UrlSource(path), + manifestFormats: ALL_MANIFEST_FORMATS, + mediaFormats: ALL_FORMATS, + }); + const variant = (await manifestInput.getVariants())[0]!; + + input = variant.toInput();// await manifestInput.toInput(); + + // https://test-streams.mux.dev/test_001/stream.m3u8 + // https://test-streams.mux.dev/test_001/stream_1000k_48k_640x360_050.ts + } else { + const source = resource instanceof File + ? new BlobSource(resource) + : new UrlSource(resource); + + input = new Input({ + source, + formats: ALL_FORMATS, + }); + } + + /* // Create an Input from the resource const source = resource instanceof File ? new BlobSource(resource) : new UrlSource(resource); + */ + + /* const input = new Input({ source, formats: ALL_FORMATS, }); + */ playbackTimeAtStart = 0; totalDuration = await input.computeDuration(); diff --git a/hls-sketch.ts b/hls-sketch.ts new file mode 100644 index 0000000..34f73c5 --- /dev/null +++ b/hls-sketch.ts @@ -0,0 +1,21 @@ +const hlsInput = new ManifestInput({ + source: new UrlSource('https://example.com/playlist.m3u8'), + formats: [HLS], +}); + +const variants = await hlsInput.getVariants(); +const bestVariant = await hlsInput.getPrimaryVariant(); +const qualityVariant = await hlsInput.getVariantFor('1080p'); // In spirit + +bestVariant.tracks; // ? +bestVariant.bitrate; // ? +bestVariant.isLive(); // ? + +const input = variant.toInput(); // => Input +const segments = variant.getSegments(); // => Segments[]? + +const segment = variant.getFirstSegment(); +segment.path; // => string (for example 'segment1.ts') +segment.timestamp; // => 10 +segment.duration; // 5 +segment.toInput(); // => Input diff --git a/src/adts/adts-demuxer.ts b/src/adts/adts-demuxer.ts index 18af576..cfcd077 100644 --- a/src/adts/adts-demuxer.ts +++ b/src/adts/adts-demuxer.ts @@ -251,6 +251,10 @@ class AdtsAudioTrackBacking implements InputAudioTrackBacking { return numberOfChannels; } + getVariant() { + return null; + } + getSampleRate() { assert(this.demuxer.firstFrameHeader); diff --git a/src/aes.ts b/src/aes.ts new file mode 100644 index 0000000..7af4370 --- /dev/null +++ b/src/aes.ts @@ -0,0 +1,294 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { assert, MaybePromise } from './misc'; +import { readBytes, Reader } from './reader'; + +// Inspired in part by https://github.com/halloweeks/AES-128-CBC/blob/main/AES_128_CBC.h + +export const AES_128_BLOCK_SIZE = 16; + +const Te4 = new Uint32Array(256); +const Td0 = new Uint32Array(256); +const Td1 = new Uint32Array(256); +const Td2 = new Uint32Array(256); +const Td3 = new Uint32Array(256); +const Td4 = new Uint32Array(256); +const rcon = new Uint32Array(10); + +let tablesGenerated = false; + +// Generating the tables once is much more bundle size-efficient than shipping them in the bundle (entropy ftw) +const generateAesTables = () => { + const sbox = new Uint8Array(256); + const log = new Uint8Array(256); + const pow = new Uint8Array(256); + + // 1. Generate GF(2^8) log/exp tables + // Primitive polynomial: x^8 + x^4 + x^3 + x + 1 (0x11B) + for (let i = 0, p = 1; i < 256; i++) { + pow[i] = p; + log[p] = i; + p = p ^ (p << 1) ^ (p & 0x80 ? 0x11B : 0); + } + + // Helper: GF(2^8) multiplication + const mul = (a: number, b: number) => + (a && b) ? pow[(log[a]! + log[b]!) % 255]! : 0; + + // 2. Generate S-Box and Inverse S-Box + sbox[0] = 0x63; // Special case for 0 + // Loop for inverse (using log/exp) and Affine Transform + for (let i = 1; i < 256; i++) { + const x = pow[255 - log[i]!]!; // Multiplicative inverse + let s = x ^ (x << 1) ^ (x << 2) ^ (x << 3) ^ (x << 4); + s = (s >>> 8) ^ (s & 0xFF) ^ 0x63; // Affine transform + sbox[i] = s; + } + + // 3. Fill Tables + for (let i = 0; i < 256; i++) { + const s = sbox[i]!; // Forward S-Box value + const is = sbox.indexOf(i); // Inverse S-Box value + + // Te4: Forward S-Box packed + Te4[i] = (s << 24) | (s << 16) | (s << 8) | s; + + // Td4: Inverse S-Box packed + Td4[i] = (is << 24) | (is << 16) | (is << 8) | is; + + // Td0-Td3: Inverse MixColumns applied to Inverse S-Box + // Coefficients: 0x0E, 0x09, 0x0D, 0x0B (Order specific to Td0 structure) + const b0 = mul(is, 0x0E); + const b1 = mul(is, 0x09); + const b2 = mul(is, 0x0D); + const b3 = mul(is, 0x0B); + + const w = (b0 << 24) | (b1 << 16) | (b2 << 8) | b3; + Td0[i] = w; + Td1[i] = (w >>> 8) | (w << 24); // Rotate right 8 + Td2[i] = (w >>> 16) | (w << 16); // Rotate right 16 + Td3[i] = (w >>> 24) | (w << 8); // Rotate right 24 + } + + // 4. Generate Rcon + let r = 1; + for (let i = 0; i < 10; i++) { + rcon[i] = r << 24; + r = (r << 1) ^ (r & 0x80 ? 0x11B : 0); + } + + tablesGenerated = true; +}; + +export type Aes128CbcContextInit = { + key: Uint8Array; + iv: Uint8Array; +}; + +/** A context for doing AES-128-CBC operations. Better than the Web Crypto API since we can stream it. */ +export class Aes128CbcContext { + roundkey = new Uint32Array(44); + iv = new Uint32Array(AES_128_BLOCK_SIZE / Uint32Array.BYTES_PER_ELEMENT); + in = new Uint8Array(AES_128_BLOCK_SIZE); + out = new Uint8Array(AES_128_BLOCK_SIZE); + inView = new DataView(this.in.buffer); + outView = new DataView(this.out.buffer); + + init({ key, iv }: Aes128CbcContextInit) { + assert(key.byteLength === 16); + assert(iv.byteLength === 16); + + if (!tablesGenerated) { + generateAesTables(); + } + + const keyView = new DataView(key.buffer, key.byteOffset, key.byteLength); + const ivView = new DataView(iv.buffer, iv.byteOffset, iv.byteLength); + + this.roundkey[0] = keyView.getUint32(0, false); + this.roundkey[1] = keyView.getUint32(4, false); + this.roundkey[2] = keyView.getUint32(8, false); + this.roundkey[3] = keyView.getUint32(12, false); + + this.iv[0] = ivView.getUint32(0, false); + this.iv[1] = ivView.getUint32(4, false); + this.iv[2] = ivView.getUint32(8, false); + this.iv[3] = ivView.getUint32(12, false); + + for (let index = 4; index < 44; index += 4) { + const temp = this.roundkey[index - 1]!; + this.roundkey[index] = this.roundkey[index - 4]! + ^ (Te4[(temp >>> 16) & 0xff]! & 0xff000000) + ^ (Te4[(temp >>> 8) & 0xff]! & 0x00ff0000) + ^ (Te4[(temp >>> 0) & 0xff]! & 0x0000ff00) + ^ (Te4[(temp >>> 24) & 0xff]! & 0x000000ff) + ^ rcon[(index / 4) - 1]!; + this.roundkey[index + 1] = this.roundkey[index - 3]! ^ this.roundkey[index]!; + this.roundkey[index + 2] = this.roundkey[index - 2]! ^ this.roundkey[index + 1]!; + this.roundkey[index + 3] = this.roundkey[index - 1]! ^ this.roundkey[index + 2]!; + } + + // Invert the order of the round keys + for (let i = 0, j = 40; i < j; i += 4, j -= 4) { + for (let k = 0; k < 4; k++) { + const temp = this.roundkey[i + k]!; + this.roundkey[i + k] = this.roundkey[j + k]!; + this.roundkey[j + k] = temp; + } + } + + // Apply Inverse MixColumn transform to all round keys except first and last + for (let index = 4; index < 40; index += 4) { + for (let k = 0; k < 4; k++) { + const rk = this.roundkey[index + k]!; + this.roundkey[index + k] + = Td0[Te4[(rk >>> 24) & 0xff]! & 0xff]! + ^ Td1[Te4[(rk >>> 16) & 0xff]! & 0xff]! + ^ Td2[Te4[(rk >>> 8) & 0xff]! & 0xff]! + ^ Td3[Te4[(rk >>> 0) & 0xff]! & 0xff]!; + } + } + } + + decrypt() { + let s0 = this.inView.getUint32(0, false) ^ this.roundkey[0]!; + let s1 = this.inView.getUint32(4, false) ^ this.roundkey[1]!; + let s2 = this.inView.getUint32(8, false) ^ this.roundkey[2]!; + let s3 = this.inView.getUint32(12, false) ^ this.roundkey[3]!; + + // Store input for CBC XOR later + const temp0 = this.inView.getUint32(0, false); + const temp1 = this.inView.getUint32(4, false); + const temp2 = this.inView.getUint32(8, false); + const temp3 = this.inView.getUint32(12, false); + + let t0, t1, t2, t3; + + // Rounds 1-9 + for (let round = 1; round < 10; round++) { + const offset = round * 4; + t0 = Td0[s0 >>> 24]! + ^ Td1[(s3 >>> 16) & 0xff]! + ^ Td2[(s2 >>> 8) & 0xff]! + ^ Td3[s1 & 0xff]! + ^ this.roundkey[offset]!; + t1 = Td0[s1 >>> 24]! + ^ Td1[(s0 >>> 16) & 0xff]! + ^ Td2[(s3 >>> 8) & 0xff]! + ^ Td3[s2 & 0xff]! + ^ this.roundkey[offset + 1]!; + t2 = Td0[s2 >>> 24]! + ^ Td1[(s1 >>> 16) & 0xff]! + ^ Td2[(s0 >>> 8) & 0xff]! + ^ Td3[s3 & 0xff]! + ^ this.roundkey[offset + 2]!; + t3 = Td0[s3 >>> 24]! + ^ Td1[(s2 >>> 16) & 0xff]! + ^ Td2[(s1 >>> 8) & 0xff]! + ^ Td3[s0 & 0xff]! + ^ this.roundkey[offset + 3]!; + + s0 = t0; + s1 = t1; + s2 = t2; + s3 = t3; + } + + // Final Round (10) + const f0 = (Td4[(s0 >>> 24) & 0xff]! & 0xff000000) + ^ (Td4[(s3 >>> 16) & 0xff]! & 0x00ff0000) + ^ (Td4[(s2 >>> 8) & 0xff]! & 0x0000ff00) + ^ (Td4[(s1 >>> 0) & 0xff]! & 0x000000ff) + ^ this.roundkey[40]!; + const f1 = (Td4[(s1 >>> 24) & 0xff]! & 0xff000000) + ^ (Td4[(s0 >>> 16) & 0xff]! & 0x00ff0000) + ^ (Td4[(s3 >>> 8) & 0xff]! & 0x0000ff00) + ^ (Td4[(s2 >>> 0) & 0xff]! & 0x000000ff) + ^ this.roundkey[41]!; + const f2 = (Td4[(s2 >>> 24) & 0xff]! & 0xff000000) + ^ (Td4[(s1 >>> 16) & 0xff]! & 0x00ff0000) + ^ (Td4[(s0 >>> 8) & 0xff]! & 0x0000ff00) + ^ (Td4[(s3 >>> 0) & 0xff]! & 0x000000ff) + ^ this.roundkey[42]!; + const f3 = (Td4[(s3 >>> 24) & 0xff]! & 0xff000000) + ^ (Td4[(s2 >>> 16) & 0xff]! & 0x00ff0000) + ^ (Td4[(s1 >>> 8) & 0xff]! & 0x0000ff00) + ^ (Td4[(s0 >>> 0) & 0xff]! & 0x000000ff) + ^ this.roundkey[43]!; + + // CBC XOR and output + this.outView.setUint32(0, f0 ^ this.iv[0]!, false); + this.outView.setUint32(4, f1 ^ this.iv[1]!, false); + this.outView.setUint32(8, f2 ^ this.iv[2]!, false); + this.outView.setUint32(12, f3 ^ this.iv[3]!, false); + + // Update IV for next block + this.iv[0] = temp0; + this.iv[1] = temp1; + this.iv[2] = temp2; + this.iv[3] = temp3; + } +} + +export const createAesDecryptStream = (reader: Reader, getInit: () => MaybePromise) => { + let initted = false; + let pos = 0; + const CHUNK_SIZE = 2 ** 16; + const BLOCK_SIZE = 16; + + const aesContext = new Aes128CbcContext(); + + return new ReadableStream({ + pull: async (controller) => { + if (!initted) { + aesContext.init(await getInit()); + initted = true; + } + + const requestedLength = CHUNK_SIZE + BLOCK_SIZE; + + let nextSlice = reader.requestSliceRange(pos, 0, requestedLength); + if (nextSlice instanceof Promise) nextSlice = await nextSlice; + if (!nextSlice || nextSlice.length === 0) { + // Due to padding, this should never happen + throw new Error('Invalid ciphertext.'); + } + + const sliceLength = nextSlice.length; + if (sliceLength % 16 !== 0) { + throw new Error('Invalid ciphertext.'); + } + + const bytesToRead = sliceLength === requestedLength + ? sliceLength - BLOCK_SIZE // Don't read the last block + : sliceLength; + + const input = readBytes(nextSlice, bytesToRead); + const output = new Uint8Array(bytesToRead); + + for (let i = 0; i < bytesToRead; i += 16) { + aesContext.in.set(input.subarray(i, i + 16)); + aesContext.decrypt(); + output.set(aesContext.out, i); + } + + if (bytesToRead < sliceLength) { + controller.enqueue(output); + pos += bytesToRead; + } else { + // This is the last chunk + const paddingLength = output[bytesToRead - 1]!; + const trimmedOutput = output.subarray(0, bytesToRead - paddingLength); // PKCS#7 padding + + controller.enqueue(trimmedOutput); + controller.close(); + } + }, + }); +}; diff --git a/src/aggregate-demuxer.ts b/src/aggregate-demuxer.ts new file mode 100644 index 0000000..b46c71d --- /dev/null +++ b/src/aggregate-demuxer.ts @@ -0,0 +1,202 @@ +import { VideoCodec, AudioCodec } from './codec'; +import { Demuxer } from './demuxer'; +import { Input } from './input'; +import { + InputTrack, + InputVideoTrack, + InputAudioTrack, + InputTrackBacking, + InputVideoTrackBacking, + InputAudioTrackBacking, +} from './input-track'; +import { ManifestInputVariant } from './manifest-input-variant'; +import { PacketRetrievalOptions } from './media-sink'; +import { MetadataTags, TrackDisposition } from './metadata'; +import { arrayCount, Rotation } from './misc'; +import { EncodedPacket } from './packet'; + +/** A utility demuxer that acts as the union of multiple Inputs. */ +export class InputAggregateDemuxer extends Demuxer { + subInputs: Input[]; + tracksPromise: Promise | null = null; + + constructor(input: Input, subInputs: Input[]) { + super(input); + + this.subInputs = subInputs; + } + + async computeDuration() { + const durations = await Promise.all(this.subInputs.map(x => x.computeDuration())); + return Math.max(0, ...durations); + } + + async getMetadataTags(): Promise { + return {}; // todo? + } + + async getMimeType() { + return ''; // todo? + } + + getTracks() { + return this.tracksPromise ??= (async () => { + const subInputTracks = await Promise.all(this.subInputs.map(x => x.getTracks())); + + const tracks: InputTrack[] = []; + for (const inputTracks of subInputTracks) { + for (const track of inputTracks) { + if (track.isVideoTrack()) { + const number = arrayCount(tracks, x => x.type === 'video') + 1; + tracks.push(new InputVideoTrack( + this.input, + new InputAggregateVideoTrackBacking(track._backing, number), + )); + } else if (track.isAudioTrack()) { + const number = arrayCount(tracks, x => x.type === 'audio') + 1; + tracks.push(new InputAudioTrack( + this.input, + new InputAggregateAudioTrackBacking(track._backing, number), + )); + } + } + } + + return tracks; + })(); + } +} + +class InputAggregateTrackBacking implements InputTrackBacking { + source: InputTrackBacking; + number: number; + + constructor(source: InputTrackBacking, number: number) { + this.source = source; + this.number = number; + } + + getId() { + return this.source.getId(); + } + + getNumber() { + return this.number; + } + + getCodec() { + return this.source.getCodec(); + } + + getInternalCodecId() { + return this.source.getInternalCodecId(); + } + + getName() { + return this.source.getName(); + } + + getLanguageCode() { + return this.source.getLanguageCode(); + } + + getTimeResolution() { + return this.source.getTimeResolution(); + } + + getDisposition(): TrackDisposition { + return this.source.getDisposition(); + } + + getVariant(): ManifestInputVariant | null { + return this.source.getVariant(); + } + + getFirstTimestamp() { + return this.source.getFirstTimestamp(); + } + + computeDuration() { + return this.source.computeDuration(); + } + + getFirstPacket(options: PacketRetrievalOptions): Promise { + return this.source.getFirstPacket(options); + } + + getPacket(timestamp: number, options: PacketRetrievalOptions): Promise { + return this.source.getPacket(timestamp, options); + } + + getNextPacket(packet: EncodedPacket, options: PacketRetrievalOptions): Promise { + return this.source.getNextPacket(packet, options); + } + + getKeyPacket(timestamp: number, options: PacketRetrievalOptions): Promise { + return this.source.getKeyPacket(timestamp, options); + } + + getNextKeyPacket(packet: EncodedPacket, options: PacketRetrievalOptions): Promise { + return this.source.getNextKeyPacket(packet, options); + } +} + +class InputAggregateVideoTrackBacking extends InputAggregateTrackBacking implements InputVideoTrackBacking { + override source!: InputVideoTrackBacking; + + constructor(source: InputVideoTrackBacking, number: number) { + super(source, number); + } + + override getCodec(): VideoCodec | null { + return this.source.getCodec(); + } + + getCodedWidth() { + return this.source.getCodedWidth(); + } + + getCodedHeight() { + return this.source.getCodedHeight(); + } + + getRotation(): Rotation { + return this.source.getRotation(); + } + + getColorSpace() { + return this.source.getColorSpace(); + } + + canBeTransparent() { + return this.source.canBeTransparent(); + } + + getDecoderConfig() { + return this.source.getDecoderConfig(); + } +} + +class InputAggregateAudioTrackBacking extends InputAggregateTrackBacking implements InputAudioTrackBacking { + override source!: InputAudioTrackBacking; + + constructor(source: InputAudioTrackBacking, number: number) { + super(source, number); + } + + override getCodec(): AudioCodec | null { + return this.source.getCodec(); + } + + getNumberOfChannels() { + return this.source.getNumberOfChannels(); + } + + getSampleRate() { + return this.source.getSampleRate(); + } + + getDecoderConfig() { + return this.source.getDecoderConfig(); + } +} diff --git a/src/flac/flac-demuxer.ts b/src/flac/flac-demuxer.ts index 4547c4b..40a650a 100644 --- a/src/flac/flac-demuxer.ts +++ b/src/flac/flac-demuxer.ts @@ -575,6 +575,10 @@ class FlacAudioTrackBacking implements InputAudioTrackBacking { }; } + getVariant() { + return null; + } + async getFirstTimestamp() { return 0; } diff --git a/src/index.ts b/src/index.ts index 1ee6ded..d353898 100644 --- a/src/index.ts +++ b/src/index.ts @@ -223,5 +223,13 @@ export { AttachedFile, TrackDisposition, } from './metadata'; +export { + ManifestInput, + ManifestInputOptions, +} from './manifest-input'; +export { + M3U8, + ALL_MANIFEST_FORMATS, +} from './manifest-input-format'; // 🐡🦔 diff --git a/src/input-format.ts b/src/input-format.ts index f5c52e9..fa437d2 100644 --- a/src/input-format.ts +++ b/src/input-format.ts @@ -542,6 +542,37 @@ export class MpegTsInputFormat extends InputFormat { } } +export class VirtualInputFormat extends InputFormat { + /** @internal */ + _createDemuxerFn: (input: Input) => Demuxer; + + /** @internal */ + constructor(createDemuxer: (input: Input) => Demuxer) { + super(); + this._createDemuxerFn = createDemuxer; + } + + /** @internal */ + // eslint-disable-next-line @typescript-eslint/no-unused-vars + async _canReadInput(input: Input) { + return true; + } + + /** @internal */ + + _createDemuxer(input: Input): Demuxer { + return this._createDemuxerFn(input); + } + + get name() { + return 'Virtual input format'; + } + + get mimeType() { + return 'application/magic'; + } +} + /** * MP4 input format singleton. * @group Input formats diff --git a/src/input-track.ts b/src/input-track.ts index 607e56a..239a471 100644 --- a/src/input-track.ts +++ b/src/input-track.ts @@ -15,6 +15,7 @@ import { assert, Rotation } from './misc'; import { TrackType } from './output'; import { EncodedPacket, PacketType } from './packet'; import { TrackDisposition } from './metadata'; +import { ManifestInputVariant } from './manifest-input-variant'; /** * Contains aggregate statistics about the encoded packets of a track. @@ -39,6 +40,8 @@ export interface InputTrackBacking { getLanguageCode(): string; getTimeResolution(): number; getDisposition(): TrackDisposition; + getVariant(): ManifestInputVariant | null; + getFirstTimestamp(): Promise; computeDuration(): Promise; @@ -146,6 +149,10 @@ export abstract class InputTrack { return this._backing.getDisposition(); } + get variant() { + return this._backing.getVariant(); + } + /** * Returns the start timestamp of the first packet of this track, in seconds. While often near zero, this value * may be positive or even negative. A negative starting timestamp means the track's timing has been offset. Samples diff --git a/src/input.ts b/src/input.ts index b1ce3ca..b6ba44b 100644 --- a/src/input.ts +++ b/src/input.ts @@ -41,7 +41,7 @@ export class Input implements Disposable { /** @internal */ _format: InputFormat | null = null; /** @internal */ - _reader: Reader; + _reader!: Reader; /** @internal */ _disposed = false; @@ -65,18 +65,17 @@ export class Input implements Disposable { throw new TypeError('options.source must be a Source.'); } if (options.source._disposed) { - throw new Error('options.source must not be disposed.'); + throw new TypeError('options.source must not be disposed.'); } this._formats = options.formats; this._source = options.source; - this._reader = new Reader(options.source); } /** @internal */ _getDemuxer() { return this._demuxerPromise ??= (async () => { - this._reader.fileSize = await this._source.getSizeOrNull(); + this._reader = await Reader.fromSource(this._source); for (const format of this._formats) { const canRead = await format._canReadInput(this); @@ -86,6 +85,7 @@ export class Input implements Disposable { } } + console.log(this._source); throw new Error('Input has an unsupported or unrecognizable format.'); })(); } diff --git a/src/isobmff/isobmff-demuxer.ts b/src/isobmff/isobmff-demuxer.ts index 951b728..910446c 100644 --- a/src/isobmff/isobmff-demuxer.ts +++ b/src/isobmff/isobmff-demuxer.ts @@ -2378,6 +2378,10 @@ abstract class IsobmffTrackBacking implements InputTrackBacking { return this.internalTrack.disposition; } + getVariant() { + return null; + } + async computeDuration() { const lastPacket = await this.getPacket(Infinity, { metadataOnly: true }); return (lastPacket?.timestamp ?? 0) + (lastPacket?.duration ?? 0); diff --git a/src/m3u8/m3u8-parser.ts b/src/m3u8/m3u8-parser.ts new file mode 100644 index 0000000..68b6d95 --- /dev/null +++ b/src/m3u8/m3u8-parser.ts @@ -0,0 +1,515 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { AES_128_BLOCK_SIZE } from '../aes'; +import { ManifestInput } from '../manifest-input'; +import { ManifestParser } from '../manifest-parser'; +import { ManifestInputVariant } from '../manifest-input-variant'; +import { AsyncMutex, binarySearchLessOrEqual, joinPaths, last, toDataView } from '../misc'; +import { LineReader, Reader } from '../reader'; +import { ManifestInputSegment, ManifestInputSegmentLocation, SegmentEncryptionInfo } from '../manifest-input-segment'; +import { inferCodecFromCodecString, MediaCodec } from '../codec'; + +const IV_STRING_REGEX = /^0[xX][0-9a-fA-F]+$/; + +export class M3u8Parser extends ManifestParser { + _metadataPromise: Promise | null = null; + _variants: M3u8ManifestVariant[] = []; + _lineReader: LineReader; + + constructor(input: ManifestInput) { + super(input); + this._lineReader = new LineReader(() => input._entryReader, isM3u8Comment); + } + + _readMetadata() { + return this._metadataPromise ??= (async () => { + let line = this._lineReader.readNextLine(); + if (line instanceof Promise) line = await line; + + if (line !== '#EXTM3U') { + throw new Error('Invalid M3U8 file; expected first line to be #EXTM3U.'); + } + + let iFramesOnlyTagFound = false; + + while (true) { + let line = this._lineReader.readNextLine(); + if (line instanceof Promise) line = await line; + + if (line === null) { + break; + } + + if (line.startsWith('#EXT-X-STREAM-INF:')) { + let playlistPath = this._lineReader.readNextLine(); + if (playlistPath instanceof Promise) playlistPath = await playlistPath; + + if (playlistPath === null) { + throw new Error('Incorrect M3U8 file; a line must follow the #EXT-X-STREAM-INF tag.'); + } + + const fullPath = joinPaths(this._input._entryPath, playlistPath); + const attributes = new AttributeList(line.slice(18)); + + this._variants.push(new M3u8ManifestVariant( + this, + fullPath, + null, + attributes, + false, + )); + } else if (line.startsWith('#EXT-X-I-FRAME-STREAM-INF:')) { + const attributes = new AttributeList(line.slice(18)); + const playlistPath = attributes.get('uri'); + + if (playlistPath === null) { + throw new Error( + 'Invalid M3U8 file; #EXT-X-I-FRAME-STREAM-INF tag requires a URI attribute.', + ); + } + + const fullPath = joinPaths(this._input._entryPath, playlistPath); + + this._variants.push(new M3u8ManifestVariant( + this, + fullPath, + null, + attributes, + true, + )); + } else if (line.startsWith('#EXT-X-MEDIA:')) { + const attributes = new AttributeList(line.slice(13)); + + const groupId = attributes.get('group-id'); + if (groupId === null) { + throw new Error( + 'Invalid M3U8 file; #EXT-X-MEDIA tag requires a GROUP-ID attribute.', + ); + } + + const uri = attributes.get('uri'); + if (uri === null) { + continue; + } + + const fullPath = joinPaths(this._input._entryPath, uri); + + this._variants.push(new M3u8ManifestVariant( + this, + fullPath, + null, + attributes, + false, + )); + } else if (line === '#EXT-X-I-FRAMES-ONLY') { + iFramesOnlyTagFound = true; + } else if (line.startsWith('#EXTINF:')) { + // This is a media playlist, not a master playlist + + this._variants = [ + new M3u8ManifestVariant( + this, + this._input._entryPath, + this._lineReader.reader, + new AttributeList(''), + iFramesOnlyTagFound, + ), + ]; + + break; + } + } + })(); + } + + override async getVariants() { + await this._readMetadata(); + return this._variants; + } +} + +export class M3u8ManifestVariant extends ManifestInputVariant { + _attributes: AttributeList; + _isKeyFrameOnly: boolean; + _parser: M3u8Parser; + _lineReader: LineReader; + _segments: ManifestInputSegment[] = []; + _nextSegmentDuration: number | null = null; + _nextSegmentTitle: string | null = null; + _accumulatedTime = 0; + _headerRead = false; + _mutex = new AsyncMutex(); + _currentKey: SegmentEncryptionInfo | null = null; + _nextSequenceNumber = 0; + _currentInitSegment: ManifestInputSegment | null = null; + _lastByteRangeEnd: number | null = null; + _nextByteRange: { offset: number; length: number } | null = null; + + /** @internal */ + constructor( + parser: M3u8Parser, + path: string, + reader: Reader | null, + attributes: AttributeList, + isKeyFrameOnly: boolean, + ) { + super(parser._input, path); + + this._attributes = attributes; + this._isKeyFrameOnly = isKeyFrameOnly; + this._parser = parser; + + if (reader) { + this._lineReader = new LineReader(() => reader, isM3u8Comment); + } else { + this._lineReader = new LineReader(async () => { + const source = await this.input._getSourceUncached(this.path); + return Reader.fromSource(source); + }, isM3u8Comment); + } + } + + get metadata() { + const codecStrings = this._getCodecStrings(); + const codecs = codecStrings.map(x => inferCodecFromCodecString(x)).filter(Boolean) as MediaCodec[]; + + return { + name: this._attributes.get('name'), + bitrate: this._attributes.getAsNumber('bandwidth'), + averageBitrate: this._attributes.getAsNumber('average-bandwidth'), + codecs, + codecStrings, + resolution: this._getResolution(), + frameRate: this._attributes.getAsNumber('frame-rate'), + isKeyFrameOnly: this._isKeyFrameOnly, + }; + } + + get groupId() { + return this._attributes.get('group-id'); + } + + get associatedGroupId() { + return this._attributes.get('video') + ?? this._attributes.get('audio') + ?? this._attributes.get('subtitles') + ?? this._attributes.get('closed-captions'); + } + + _getCodecStrings() { + const value = this._attributes.get('codecs'); + if (!value) { + return []; + } + + return value.split(',').map(x => x.trim()).filter(x => x); + } + + _getResolution() { + const value = this._attributes.get('resolution'); + if (!value) { + return null; + } + + const match = value.match(/^(\d+)x(\d+)$/); + if (!match) { + return null; + } + + return { + width: Number(match[1]), + height: Number(match[2]), + }; + } + + async getFirstSegment() { + if (this._segments.length === 0) { + await this._readNextSegment(); + } + + return this._segments[0] ?? null; + } + + async getSegmentAt(relativeTimestamp: number) { + await this._readUntilSegmentAt(relativeTimestamp); + + const index = binarySearchLessOrEqual(this._segments, relativeTimestamp, x => x.relativeTimestamp); + if (index === -1) { + return null; + } + + return this._segments[index]!; + } + + async getNextSegment(segment: ManifestInputSegment) { + const index = this._segments.indexOf(segment); + if (index === -1) { + throw new Error('Segment was not created by this variant.'); + } + + if (index + 1 < this._segments.length) { + return this._segments[index + 1]!; + } + + if (this._lineReader.reachedEnd) { + return null; + } + + await this._readNextSegment(); + return this._segments[index + 1] ?? null; + } + + async getPreviousSegment(segment: ManifestInputSegment): Promise { + const index = this._segments.indexOf(segment); + if (index === -1) { + throw new Error('Segment was not created by this variant.'); + } + + if (index - 1 >= 0) { + return this._segments[index - 1]!; + } + + return null; + } + + async _readNextSegment() { + const segmentCount = this._segments.length; + const release = await this._mutex.acquire(); + + try { + if (segmentCount < this._segments.length) { + // The next segment has already been read by someone else, great + return; + } + + while (true) { + let line = this._lineReader.readNextLine(); + if (line instanceof Promise) line = await line; + + if (line === null) { + return; + } + + if (!this._headerRead) { + if (line !== '#EXTM3U') { + throw new Error('Invalid M3U8 file; expected first line to be #EXTM3U.'); + } + + this._headerRead = true; + continue; + } + + if (!line.startsWith('#')) { + if (this._nextSegmentDuration === null) { + throw new Error('Invalid M3U8 file; a segment must be preceeded by a #EXTINF tag.'); + } + + let key = this._currentKey; + if (key && !key.iv) { + // "the Media Sequence Number is to be used as the IV when decrypting a Media Segment, by + // putting its big-endian binary representation into a 16-octet (128-bit) buffer and padding + // (on the left) with zeros" + + const iv = new Uint8Array(AES_128_BLOCK_SIZE); + const view = toDataView(iv); + view.setUint32(8, Math.floor(this._nextSequenceNumber / (2 ** 32))); + view.setUint32(12, this._nextSequenceNumber); + + key = { ...key, iv }; + } + + const fullPath = joinPaths(this.path, line); + const location: ManifestInputSegmentLocation = { + path: fullPath, + offset: this._nextByteRange?.offset ?? 0, + length: this._nextByteRange?.length ?? null, + }; + + const segment = new ManifestInputSegment( + this, + location, + this._accumulatedTime, + this._nextSegmentDuration, + this._nextSegmentTitle, + key, + this._currentInitSegment, + ); + this._segments.push(segment); + this._accumulatedTime += this._nextSegmentDuration; + this._nextSequenceNumber++; + this._currentInitSegment ??= segment; + + this._nextSegmentDuration = null; + this._nextSegmentTitle = null; + + this._lastByteRangeEnd = this._nextByteRange + ? this._nextByteRange.offset + this._nextByteRange.length + : null; + this._nextByteRange = null; + + return; + } + + if (line.startsWith('#EXTINF:')) { + const extinfContent = line.slice(8); + const commaIndex = extinfContent.indexOf(','); + const durationStr = commaIndex === -1 ? extinfContent : extinfContent.slice(0, commaIndex); + const duration = Number(durationStr); + if (!Number.isFinite(duration) || duration < 0) { + throw new Error(`Invalid #EXTINF tag duration '${durationStr}'.`); + } + const title = commaIndex === -1 ? null : extinfContent.slice(commaIndex + 1).trim() || null; + + this._nextSegmentDuration = duration; + this._nextSegmentTitle = title; + } else if (line.startsWith('#EXT-X-KEY:')) { + const attributes = new AttributeList(line.slice(11)); + const method = attributes.get('method'); + + if (method === 'NONE') { + this._currentKey = null; + } else if (method === 'AES-128') { + const uri = attributes.get('uri'); + if (!uri) { + throw new Error('Invalid #EXT-X-KEY: AES-128 requires a URI attribute.'); + } + + let iv: Uint8Array | null = null; + const ivString = attributes.get('iv'); + if (ivString) { + if (!IV_STRING_REGEX.test(ivString)) { + throw new Error(`Unsupported IV format '${ivString}'.`); + } + + let hex = ivString.slice(2); + hex = hex.padStart(AES_128_BLOCK_SIZE * 2, '0'); + + iv = new Uint8Array(AES_128_BLOCK_SIZE); + for (let i = 0; i < AES_128_BLOCK_SIZE; i++) { + const startIndex = -AES_128_BLOCK_SIZE * 2 + i; + iv[i] = parseInt(hex.slice(startIndex, startIndex + 2), 16); + } + } + + this._currentKey = { + method: 'AES-128', + keyUri: joinPaths(this.path, uri), + iv, + keyFormat: attributes.get('keyformat') ?? 'identity', + }; + } else { + throw new Error(`Unsupported encryption method '${method}'.`); + } + } else if (line.startsWith('#EXT-X-MEDIA-SEQUENCE:')) { + const value = line.slice(22); + const number = Number(value); + + if (!Number.isInteger(number) || number < 0) { + throw new Error(`Invalid EXT-X-MEDIA-SEQUENCE value '${value}'.`); + } + + this._nextSequenceNumber = number; + } else if (line.startsWith('#EXT-X-BYTERANGE:')) { + const content = line.slice(17); + const atIndex = content.indexOf('@'); + + const length = Number(atIndex === -1 ? content : content.slice(0, atIndex)); + if (!Number.isInteger(length) || length < 0) { + throw new Error(`Invalid #EXT-X-BYTERANGE length '${content}'.`); + } + + let offset: number; + if (atIndex !== -1) { + offset = Number(content.slice(atIndex + 1)); + if (!Number.isInteger(offset) || offset < 0) { + throw new Error(`Invalid #EXT-X-BYTERANGE offset '${content}'.`); + } + } else { + if (this._lastByteRangeEnd === null) { + throw new Error( + 'Invalid M3U8 file; #EXT-X-BYTERANGE without offset requires a previous byte range.', + ); + } + offset = this._lastByteRangeEnd; + } + + this._nextByteRange = { offset, length }; + } else if (line.startsWith('#EXT-X-DISCONTINUITY')) { + this._currentInitSegment = null; + } + } + } finally { + release(); + } + } + + async _readUntilSegmentAt(relativeTimestamp: number) { + while (!this._lineReader.reachedEnd) { + const lastSegment = last(this._segments); + if (lastSegment && lastSegment.relativeTimestamp > relativeTimestamp) { + break; + } + + await this._readNextSegment(); + } + } +} + +const isM3u8Comment = (line: string) => line.startsWith('#') && !line.startsWith('#EXT'); + +class AttributeList { + _attributes: Record = {}; + + constructor(str: string) { + let key = ''; + let value = ''; + let inValue = false; + let inQuotes = false; + + for (let i = 0; i < str.length; i++) { + const char = str[i]!; + + if (char === '"') { + inQuotes = !inQuotes; + } else if (char === '=' && !inValue && !inQuotes) { + inValue = true; + } else if (char === ',' && !inQuotes) { + if (key) { + this._attributes[key.toLowerCase()] = value; + } + + key = ''; + value = ''; + inValue = false; + } else if (inValue) { + value += char; + } else { + key += char; + } + } + + if (key) { + this._attributes[key.toLowerCase()] = value; + } + } + + get(name: string) { + return this._attributes[name.toLowerCase()] ?? null; + } + + getAsNumber(name: string) { + const value = this.get(name); + if (value === null) { + return null; + } + + const num = Number(value); + return Number.isFinite(num) ? num : null; + } +} diff --git a/src/manifest-input-format.ts b/src/manifest-input-format.ts new file mode 100644 index 0000000..da0e316 --- /dev/null +++ b/src/manifest-input-format.ts @@ -0,0 +1,35 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { M3u8Parser } from './m3u8/m3u8-parser'; +import { ManifestInput } from './manifest-input'; +import { ManifestParser } from './manifest-parser'; +import { readAscii } from './reader'; + +export abstract class ManifestInputFormat { + abstract _canReadManifestInput(input: ManifestInput): Promise; + abstract _createParser(input: ManifestInput): ManifestParser; +} + +export class M3u8ManifestInputFormat extends ManifestInputFormat { + async _canReadManifestInput(input: ManifestInput) { + let slice = input._entryReader.requestSlice(0, 7); + if (slice instanceof Promise) slice = await slice; + if (!slice) return false; + + return readAscii(slice, 7) === '#EXTM3U'; + } + + _createParser(input: ManifestInput) { + return new M3u8Parser(input); + } +} + +export const M3U8 = /* #__PURE__ */ new M3u8ManifestInputFormat(); + +export const ALL_MANIFEST_FORMATS = [M3U8]; diff --git a/src/manifest-input-segment.ts b/src/manifest-input-segment.ts new file mode 100644 index 0000000..9a3b632 --- /dev/null +++ b/src/manifest-input-segment.ts @@ -0,0 +1,112 @@ +import { AES_128_BLOCK_SIZE, createAesDecryptStream } from './aes'; +import { Input } from './input'; +import { ManifestInputVariant } from './manifest-input-variant'; +import { assert } from './misc'; +import { fs } from './node'; +import { readBytes, Reader } from './reader'; +import { ReadableStreamSource, Source } from './source'; + +export type SegmentEncryptionInfo = { + method: 'AES-128'; + keyUri: string; + iv: Uint8Array | null; + keyFormat: string; +}; + +export type ManifestInputSegmentLocation = { + path: string; + offset: number; + length: number | null; +}; + +export class ManifestInputSegment { + readonly variant: ManifestInputVariant; + readonly location: ManifestInputSegmentLocation; + readonly relativeTimestamp: number; + readonly duration: number; + readonly title: string | null; + readonly encryption: SegmentEncryptionInfo | null; + readonly initSegment: ManifestInputSegment | null; + + constructor( + variant: ManifestInputVariant, + location: ManifestInputSegmentLocation, + relativeTimestamp: number, + duration: number, + title: string | null, + encryption: SegmentEncryptionInfo | null, + initSegment: ManifestInputSegment | null, + ) { + this.variant = variant; + this.location = location; + this.relativeTimestamp = relativeTimestamp; + this.duration = duration; + this.title = title; + this.encryption = encryption; + this.initSegment = initSegment; + } + + async toInput() { + let source: Source; + + const needsSlice = this.location.offset > 0 || this.location.length !== null; + + if (!this.encryption) { + source = await this.variant.input._getSourceCached(this.location.path); + if (needsSlice) { + source = source.slice(this.location.offset, this.location.length ?? undefined); + } + } else { + assert(this.encryption.iv); + + let ciphertextSource = await this.variant.input._getSourceCached(this.location.path); + if (needsSlice) { + // Slice before decrypting + ciphertextSource = ciphertextSource.slice(this.location.offset, this.location.length ?? undefined); + } + + const ciphertextReader = await Reader.fromSource(ciphertextSource); + + const stream = createAesDecryptStream(ciphertextReader, async () => { + const keyReader = await this.variant.input._getEncryptionKeyReader(this.encryption!.keyUri); + const keySlice = await keyReader.requestSlice(0, AES_128_BLOCK_SIZE); + if (!keySlice) { + throw new Error('Invalid AES-128 key; expected at least 16 bytes of data.'); + } + const key = readBytes(keySlice, AES_128_BLOCK_SIZE); + + return { key, iv: this.encryption!.iv! }; + }); + + /* + const chunks: Uint8Array[] = []; + const streamReader = stream.getReader(); + while (true) { + const { done, value } = await streamReader.read(); + if (done) { + break; + } + + chunks.push(value); + } + + const totalLength = chunks.reduce((sum, chunk) => sum + chunk.length, 0); + const decryptedData = new Uint8Array(totalLength); + let offset = 0; + for (const chunk of chunks) { + decryptedData.set(chunk, offset); + offset += chunk.length; + } + + await fs.writeFile('tempfile.ts', decryptedData); + */ + + source = new ReadableStreamSource(stream); + } + + return new Input({ + source, + formats: this.variant.input._mediaFormats, + }); + } +} diff --git a/src/manifest-input-variant.ts b/src/manifest-input-variant.ts new file mode 100644 index 0000000..d2820b8 --- /dev/null +++ b/src/manifest-input-variant.ts @@ -0,0 +1,457 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { AudioCodec, MediaCodec, VideoCodec } from './codec'; +import { Demuxer } from './demuxer'; +import { Input } from './input'; +import { VirtualInputFormat } from './input-format'; +import { + InputAudioTrack, + InputAudioTrackBacking, + InputTrack, + InputTrackBacking, + InputVideoTrack, + InputVideoTrackBacking, +} from './input-track'; +import { ManifestInput } from './manifest-input'; +import { ManifestInputSegment } from './manifest-input-segment'; +import { PacketRetrievalOptions } from './media-sink'; +import { MetadataTags, TrackDisposition } from './metadata'; +import { arrayArgmin, arrayCount, assert, Rotation } from './misc'; +import { EncodedPacket } from './packet'; +import { NullSource } from './source'; + +export type ManifestInputVariantMetadata = { + name: string | null; + bitrate: number | null; // doc block: this refers to the _peak_ bitrate + averageBitrate: number | null; + codecs: MediaCodec[]; + codecStrings: string[]; + resolution: { width: number; height: number } | null; + frameRate: number | null; + isKeyFrameOnly: boolean; +}; + +export abstract class ManifestInputVariant { + readonly input: ManifestInput; + readonly path: string; + + /** @internal */ + constructor(input: ManifestInput, path: string) { + this.input = input; + this.path = path; + } + + abstract get metadata(): ManifestInputVariantMetadata; + abstract get groupId(): string | null; + abstract get associatedGroupId(): string | null; + + abstract getFirstSegment(): Promise; + abstract getSegmentAt(timestamp: number): Promise; + abstract getNextSegment(segment: ManifestInputSegment): Promise; + abstract getPreviousSegment(segment: ManifestInputSegment): Promise; + + async* segments(startTimestamp?: number) { + let currentSegment: ManifestInputSegment | null; + + if (startTimestamp !== undefined) { + currentSegment = await this.getSegmentAt(startTimestamp); + } else { + currentSegment = await this.getFirstSegment(); + } + + while (currentSegment !== null) { + yield currentSegment; + currentSegment = await this.getNextSegment(currentSegment); + } + } + + toInput() { + return new Input({ + source: new NullSource(), + formats: [new VirtualInputFormat(input => new ManifestInputVariantDemuxer(input, this))], + }); + } +} + +class ManifestInputVariantDemuxer extends Demuxer { + variant: ManifestInputVariant; + tracksPromise: Promise | null = null; + firstSegment: ManifestInputSegment | null = null; + + nextInputCacheAge = 0; + inputCache: { + segment: ManifestInputSegment; + inputPromise: Promise; // We store the promise so it's immediately available in the cache + age: number; + }[] = []; + + initSegmentFirstTimestamps = new WeakMap(); + + constructor(input: Input, variant: ManifestInputVariant) { + super(input); + + this.variant = variant; + } + + async computeDuration(): Promise { + const tracks = await this.getTracks(); + const trackDurations = await Promise.all(tracks.map(x => x.computeDuration())); + return Math.max(0, ...trackDurations); + } + + async getMetadataTags(): Promise { + return {}; // todo? + } + + async getMimeType(): Promise { + return ''; // todo? + } + + async getTracks(): Promise { + return this.tracksPromise ??= (async () => { + this.firstSegment = await this.variant.getFirstSegment(); + if (!this.firstSegment) { + return []; + } + + const input = await this.retrieveInputForSegment(this.firstSegment); + const inputTracks = await input.getTracks(); + + const tracks: InputTrack[] = []; + for (const track of inputTracks) { + if (track.type === 'video') { + const number = arrayCount(tracks, x => x.type === 'video') + 1; + + tracks.push(new InputVideoTrack( + this.input, + new ManifestInputVariantInputVideoTrackBacking(track, this, number), + )); + } else if (track.type === 'audio') { + const number = arrayCount(tracks, x => x.type === 'audio') + 1; + + tracks.push(new InputAudioTrack( + this.input, + new ManifestInputVariantInputAudioTrackBacking(track, this, number), + )); + } + } + + return tracks; + })(); + } + + retrieveInputForSegment(segment: ManifestInputSegment) { + const cacheEntry = this.inputCache.find(x => x.segment === segment); + if (cacheEntry) { + cacheEntry.age = this.nextInputCacheAge++; + return cacheEntry.inputPromise; + } + + const promise = segment.toInput(); + this.inputCache.push({ + segment, + inputPromise: promise, + age: this.nextInputCacheAge++, + }); + + const MAX_INPUT_CACHE_SIZE = 4; + if (this.inputCache.length > MAX_INPUT_CACHE_SIZE) { + const minAgeIndex = arrayArgmin(this.inputCache, x => x.age); + this.inputCache.splice(minAgeIndex, 1); + } + + return promise; + } + + async getMediaOffset(segment: ManifestInputSegment, input: Input) { + const initSegment = segment.initSegment ?? segment; + + let initSegmentFirstTimestamp: number; + if (this.initSegmentFirstTimestamps.has(initSegment)) { + initSegmentFirstTimestamp = this.initSegmentFirstTimestamps.get(initSegment)!; + } else { + const initInput = await this.retrieveInputForSegment(initSegment); + initSegmentFirstTimestamp = await initInput.getFirstTimestamp(); + this.initSegmentFirstTimestamps.set(initSegment, initSegmentFirstTimestamp); + } + + let mediaOffset = 0; + mediaOffset -= initSegmentFirstTimestamp; // Make the timestamps relative to the init segment first timestamp + mediaOffset += initSegment.relativeTimestamp; // And then offset them by init segment's relative timestamp + + if (segment !== initSegment) { + const segmentFirstTimestamp = await input.getFirstTimestamp(); + if (segmentFirstTimestamp === initSegmentFirstTimestamp) { + // Normally, we expect segments (belonging to the same init segment / discontinuity) to have the same + // timestamp "base", meaning timestamps tick up across segments and don't reset. However, some + // containers don't have absolute timestamps and always start at 0 (like ADTS or MP3) or those that do + // always start at the same timestamp, we still want to produce sensible results. So, we detect that by + // checking if the internal timestamp hasn't risen faster than the segment durations would dictate. And + // if so, we offset. + const timeSinceInitSegment = segment.relativeTimestamp - initSegment.relativeTimestamp; + mediaOffset += timeSinceInitSegment; + } + } + + return mediaOffset; + } +} + +type PacketInfo = { + segment: ManifestInputSegment; + track: InputTrack; + sourcePacket: EncodedPacket; +}; + +class ManifestInputVariantInputTrackBacking implements InputTrackBacking { + firstInputTrack: InputTrack; + demuxer: ManifestInputVariantDemuxer; + packetInfos = new WeakMap(); + number: number; + + constructor(firstInputTrack: InputTrack, demuxer: ManifestInputVariantDemuxer, number: number) { + this.firstInputTrack = firstInputTrack; + this.demuxer = demuxer; + this.number = number; + } + + getId(): number { + return this.firstInputTrack._backing.getId(); + } + + getNumber(): number { + return this.number; + } + + getCodec(): MediaCodec | null { + return this.firstInputTrack._backing.getCodec(); + } + + getInternalCodecId(): string | number | Uint8Array | null { + return this.firstInputTrack._backing.getInternalCodecId(); + } + + getDisposition(): TrackDisposition { + return this.firstInputTrack._backing.getDisposition(); + } + + getLanguageCode(): string { + return this.firstInputTrack._backing.getLanguageCode(); + } + + getName(): string | null { + return this.firstInputTrack._backing.getName(); + } + + getTimeResolution(): number { + return this.firstInputTrack._backing.getTimeResolution(); + } + + getVariant(): ManifestInputVariant | null { + return this.demuxer.variant; + } + + async getFirstTimestamp(): Promise { + const firstPacket = await this.getFirstPacket({ metadataOnly: true }); + return firstPacket?.timestamp ?? 0; + } + + async computeDuration(): Promise { + const lastPacket = await this.getPacket(Infinity, { metadataOnly: true }); + return (lastPacket?.timestamp ?? 0) + (lastPacket?.duration ?? 0); + } + + async createAdjustedPacket(packet: EncodedPacket, segment: ManifestInputSegment, track: InputTrack) { + const mediaOffset = await this.demuxer.getMediaOffset(segment, track.input); + + const modified = packet.clone({ + timestamp: packet.timestamp + mediaOffset, + // The 1e8 assumes a max of 100 MB per second, highly unlikely to be hit, so this should guarantee + // monotonically increasing sequence numbers across segments. + sequenceNumber: Math.floor(1e8 * segment.relativeTimestamp) + packet.sequenceNumber, + }); + + this.packetInfos.set(modified, { + segment, + track, + sourcePacket: packet, + }); + + return modified; + } + + async getFirstPacket(options: PacketRetrievalOptions): Promise { + assert(this.demuxer.firstSegment); + + const packet = await this.firstInputTrack._backing.getFirstPacket(options); + if (!packet) { + return null; + } + + return this.createAdjustedPacket(packet, this.demuxer.firstSegment, this.firstInputTrack); + } + + getNextPacket(packet: EncodedPacket, options: PacketRetrievalOptions): Promise { + return this._getNextInternal(packet, options, false); + } + + getNextKeyPacket(packet: EncodedPacket, options: PacketRetrievalOptions): Promise { + return this._getNextInternal(packet, options, true); + } + + async _getNextInternal( + packet: EncodedPacket, + options: PacketRetrievalOptions, + keyframesOnly: boolean, + ): Promise { + const info = this.packetInfos.get(packet); + if (!info) { + throw new Error('Packet was not created from this track.'); + } + + // console.log(info.segment.path); + + const nextPacket = keyframesOnly + ? await info.track._backing.getNextKeyPacket(info.sourcePacket, options) + : await info.track._backing.getNextPacket(info.sourcePacket, options); + if (nextPacket) { + return this.createAdjustedPacket(nextPacket, info.segment, info.track); + } + + let currentSegment: ManifestInputSegment | null = info.segment; + while (true) { + const nextSegment = await this.demuxer.variant.getNextSegment(currentSegment); + if (!nextSegment) { + return null; + } + + const nextInput = await this.demuxer.retrieveInputForSegment(nextSegment); + const nextTracks = await nextInput.getTracks(); + const nextTrack = nextTracks.find(t => t.type === info.track.type && t.number === info.track.number); + + if (!nextTrack) { + currentSegment = nextSegment; + continue; + } + + const firstPacket = await nextTrack._backing.getFirstPacket(options); + if (!firstPacket) { + return null; + } + + return this.createAdjustedPacket(firstPacket, nextSegment, nextTrack); + } + } + + getPacket(timestamp: number, options: PacketRetrievalOptions): Promise { + return this._getPacketInternal(timestamp, options, false); + } + + getKeyPacket(timestamp: number, options: PacketRetrievalOptions): Promise { + return this._getPacketInternal(timestamp, options, true); + } + + async _getPacketInternal( + timestamp: number, + options: PacketRetrievalOptions, + keyframesOnly: boolean, + ): Promise { + let currentSegment = await this.demuxer.variant.getSegmentAt(timestamp); + if (!currentSegment) { + return null; + } + + while (currentSegment) { + const input = await this.demuxer.retrieveInputForSegment(currentSegment); + const tracks = await input.getTracks(); + const track = tracks.find(t => ( + t.type === this.firstInputTrack.type && t.number === this.firstInputTrack.number + )); + + if (!track) { + // Search the previous segment + currentSegment = await this.demuxer.variant.getPreviousSegment(currentSegment); + continue; + } + + const mediaOffset = await this.demuxer.getMediaOffset(currentSegment, input); + + const offsetTimestamp = timestamp - mediaOffset; + const packet = keyframesOnly + ? await track._backing.getKeyPacket(offsetTimestamp, options) + : await track._backing.getPacket(offsetTimestamp, options); + + if (!packet) { + // Search the previous segment + currentSegment = await this.demuxer.variant.getPreviousSegment(currentSegment); + continue; + } + + return this.createAdjustedPacket(packet, currentSegment, track); + } + + return null; + } +} + +class ManifestInputVariantInputVideoTrackBacking + extends ManifestInputVariantInputTrackBacking + implements InputVideoTrackBacking { + override firstInputTrack!: InputVideoTrack; + + override getCodec(): VideoCodec | null { + return this.firstInputTrack._backing.getCodec(); + } + + getCodedWidth(): number { + return this.firstInputTrack._backing.getCodedWidth(); + } + + getCodedHeight(): number { + return this.firstInputTrack._backing.getCodedHeight(); + } + + getRotation(): Rotation { + return this.firstInputTrack._backing.getRotation(); + } + + getColorSpace(): Promise { + return this.firstInputTrack._backing.getColorSpace(); + } + + canBeTransparent(): Promise { + return this.firstInputTrack._backing.canBeTransparent(); + } + + getDecoderConfig(): Promise { + return this.firstInputTrack._backing.getDecoderConfig(); + } +} + +class ManifestInputVariantInputAudioTrackBacking + extends ManifestInputVariantInputTrackBacking + implements InputAudioTrackBacking { + override firstInputTrack!: InputAudioTrack; + + override getCodec(): AudioCodec | null { + return this.firstInputTrack._backing.getCodec(); + } + + getNumberOfChannels(): number { + return this.firstInputTrack._backing.getNumberOfChannels(); + } + + getSampleRate(): number { + return this.firstInputTrack._backing.getSampleRate(); + } + + getDecoderConfig(): Promise { + return this.firstInputTrack._backing.getDecoderConfig(); + } +} diff --git a/src/manifest-input.ts b/src/manifest-input.ts new file mode 100644 index 0000000..23b1dab --- /dev/null +++ b/src/manifest-input.ts @@ -0,0 +1,189 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { Input } from './input'; +import { InputFormat, VirtualInputFormat } from './input-format'; +import { ManifestInputFormat } from './manifest-input-format'; +import { ManifestParser } from './manifest-parser'; +import { arrayArgmin, assert, MaybePromise, polyfillSymbolDispose } from './misc'; +import { Reader } from './reader'; +import { NullSource, Source } from './source'; +import { ManifestInputVariant } from './manifest-input-variant'; +import { InputAggregateDemuxer } from './aggregate-demuxer'; + +polyfillSymbolDispose(); + +export type ManifestInputOptions = { + entryPath: string; + getSource: (path: string) => MaybePromise; + manifestFormats: ManifestInputFormat[]; + mediaFormats: InputFormat[]; +}; + +export class ManifestInput implements Disposable { + _entryPath: string; + _getSourceUncached: (path: string) => MaybePromise; + _manifestFormats: ManifestInputFormat[]; + _mediaFormats: InputFormat[]; + _parserPromise: Promise | null = null; + _format: ManifestInputFormat | null = null; + _entryReader!: Reader; + _disposed = false; + _encryptionKeyReaders = new Map>(); + _nextSourceCacheAge = 0; + _sourceCache: { + path: string; + sourcePromise: Promise; + age: number; + }[] = []; + + get disposed() { + return this._disposed; + } + + constructor(options: ManifestInputOptions) { + if (!options || typeof options !== 'object') { + throw new TypeError('options must be an object.'); + } + if (typeof options.entryPath !== 'string') { + throw new TypeError('options.entryPath must be a string.'); + } + if (typeof options.getSource !== 'function') { + throw new TypeError('options.getSource must be a function.'); + } + if ( + !Array.isArray(options.manifestFormats) + || options.manifestFormats.some(x => !(x instanceof ManifestInputFormat)) + ) { + throw new TypeError('options.manifestFormats must be an array of ManifestInputFormat.'); + } + if ( + !Array.isArray(options.mediaFormats) + || options.mediaFormats.some(x => !(x instanceof InputFormat)) + ) { + throw new TypeError('options.mediaFormats must be an array of InputFormat.'); + } + + this._entryPath = options.entryPath; + this._manifestFormats = options.manifestFormats; + this._mediaFormats = options.mediaFormats; + + this._getSourceUncached = async (path) => { + const source = await options.getSource(path); + if (!(source instanceof Source)) { + throw new TypeError('The getSource function must return a Source.'); + } + if (source._disposed) { + throw new TypeError('The Source returned by getSource must not be disposed.'); + } + + return source; + }; + } + + _getParser() { + return this._parserPromise ??= (async () => { + const entrySource = await this._getSourceUncached(this._entryPath); + this._entryReader = await Reader.fromSource(entrySource); + + for (const format of this._manifestFormats) { + const canRead = await format._canReadManifestInput(this); + if (canRead) { + this._format = format; + return format._createParser(this); + } + } + + throw new Error('Manifest input has an unsupported or unrecognizable format.'); + })(); + } + + async getFormat() { + await this._getParser(); + assert(this._format!); + return this._format; + } + + async getVariants(): Promise { + const parser = await this._getParser(); + const variants = await parser.getVariants(); + + const sorted = [...variants] + .sort((a, b) => { + // Variants with unknown bitrate come last + return (b.metadata.bitrate ?? b.metadata.averageBitrate ?? -Infinity) + - (a.metadata.bitrate ?? a.metadata.averageBitrate ?? -Infinity); + }); + + return sorted; + } + + async getPrimaryVariant() { + const variants = await this.getVariants(); + return variants[0] ?? null; + } + + async toInput() { + // Create one "mega input" that contains all tracks from all variants + const variants = await this.getVariants(); + const subInputs = variants.map(v => v.toInput()); + + return new Input({ + source: new NullSource(), + formats: [new VirtualInputFormat(input => new InputAggregateDemuxer(input, subInputs))], + }); + } + + _getSourceCached(path: string) { + const cachedEntry = this._sourceCache.find(x => x.path === path); + if (cachedEntry) { + cachedEntry.age++; + return cachedEntry.sourcePromise; + } + + const sourcePromise = Promise.resolve(this._getSourceUncached(path)); + this._sourceCache.push({ + path, + sourcePromise, + age: this._nextSourceCacheAge++, + }); + + const MAX_SOURCE_CACHE_SIZE = 4; + if (this._sourceCache.length > MAX_SOURCE_CACHE_SIZE) { + const minAgeIndex = arrayArgmin(this._sourceCache, x => x.age); + this._sourceCache.splice(minAgeIndex, 1); + } + + return sourcePromise; + } + + _getEncryptionKeyReader(path: string) { + let cachedEntry = this._encryptionKeyReaders.get(path); + if (cachedEntry) { + return cachedEntry; + } + + cachedEntry = Promise.resolve(this._getSourceUncached(path)) + .then(keySource => Reader.fromSource(keySource)); + this._encryptionKeyReaders.set(path, cachedEntry); + + return cachedEntry; + } + + dispose() { + if (this._disposed) { + return; + } + + this._disposed = true; + } + + [Symbol.dispose]() { + this.dispose(); + } +} diff --git a/src/manifest-parser.ts b/src/manifest-parser.ts new file mode 100644 index 0000000..c72f148 --- /dev/null +++ b/src/manifest-parser.ts @@ -0,0 +1,22 @@ +/*! + * Copyright (c) 2026-present, Vanilagy and contributors + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +import { ManifestInput } from './manifest-input'; +import { ManifestInputVariant } from './manifest-input-variant'; + +export class ManifestParser { + _input: ManifestInput; + + constructor(input: ManifestInput) { + this._input = input; + } + + getVariants(): Promise { + throw new Error('Not implemented.'); + } +} diff --git a/src/matroska/matroska-demuxer.ts b/src/matroska/matroska-demuxer.ts index f9d8a39..749f0db 100644 --- a/src/matroska/matroska-demuxer.ts +++ b/src/matroska/matroska-demuxer.ts @@ -1906,6 +1906,10 @@ abstract class MatroskaTrackBacking implements InputTrackBacking { return firstPacket?.timestamp ?? 0; } + getVariant() { + return null; + } + getTimeResolution() { return this.internalTrack.segment.timestampFactor; } diff --git a/src/misc.ts b/src/misc.ts index eaefa9d..4dc150a 100644 --- a/src/misc.ts +++ b/src/misc.ts @@ -850,3 +850,84 @@ export const polyfillSymbolDispose = () => { export const isNumber = (x: unknown) => { return typeof x === 'number' && !Number.isNaN(x); }; + +export const joinPaths = (basePath: string, relativePath: string) => { + // If relativePath is a full URL with protocol, return it as-is + if (relativePath.includes('://')) { + return relativePath; + } + + let result: string; + + if (relativePath.startsWith('/')) { + const protocolIndex = basePath.indexOf('://'); + if (protocolIndex === -1) { + result = relativePath; + } else { + const pathStart = basePath.indexOf('/', protocolIndex + 3); + if (pathStart === -1) { + result = basePath + relativePath; + } else { + result = basePath.slice(0, pathStart) + relativePath; + } + } + } else { + const lastSlash = basePath.lastIndexOf('/'); + if (lastSlash === -1) { + result = relativePath; + } else { + result = basePath.slice(0, lastSlash + 1) + relativePath; + } + } + + // Normalize ./ and ../ + + let prefix = ''; + const protocolIndex = result.indexOf('://'); + if (protocolIndex !== -1) { + const pathStart = result.indexOf('/', protocolIndex + 3); + if (pathStart !== -1) { + prefix = result.slice(0, pathStart); + result = result.slice(pathStart); + } + } + + const segments = result.split('/'); + const normalized: string[] = []; + for (const segment of segments) { + if (segment === '..') { + normalized.pop(); + } else if (segment !== '.') { + normalized.push(segment); + } + } + + return prefix + normalized.join('/'); +}; + +export const arrayCount = (array: T[], predicate: (item: T) => boolean) => { + let count = 0; + + for (let i = 0; i < array.length; i++) { + if (predicate(array[i]!)) { + count++; + } + } + + return count; +}; + +export const arrayArgmin = (array: T[], getValue: (item: T) => number): number => { + let minIndex = -1; + let minValue = Infinity; + + for (let i = 0; i < array.length; i++) { + const value = getValue(array[i]!); + if (value < minValue) { + minValue = value; + minIndex = i; + } + } + + return minIndex; +}; diff --git a/src/mp3/mp3-demuxer.ts b/src/mp3/mp3-demuxer.ts index 12ada99..cb9dd74 100644 --- a/src/mp3/mp3-demuxer.ts +++ b/src/mp3/mp3-demuxer.ts @@ -267,6 +267,10 @@ class Mp3AudioTrackBacking implements InputAudioTrackBacking { }; } + getVariant() { + return null; + } + async getDecoderConfig(): Promise { assert(this.demuxer.firstFrameHeader); diff --git a/src/mp3/mp3-reader.ts b/src/mp3/mp3-reader.ts index 8b323e2..0226fdf 100644 --- a/src/mp3/mp3-reader.ts +++ b/src/mp3/mp3-reader.ts @@ -15,6 +15,8 @@ export const readNextMp3FrameHeader = async (reader: Reader, startPos: number, u } | null> => { let currentPos = startPos; + // todo optimize this shit wtf is this + while (until === null || currentPos < until) { let slice = reader.requestSlice(currentPos, FRAME_HEADER_SIZE); if (slice instanceof Promise) slice = await slice; diff --git a/src/mpeg-ts/mpeg-ts-demuxer.ts b/src/mpeg-ts/mpeg-ts-demuxer.ts index 82fee7b..63bbd50 100644 --- a/src/mpeg-ts/mpeg-ts-demuxer.ts +++ b/src/mpeg-ts/mpeg-ts-demuxer.ts @@ -842,6 +842,10 @@ export abstract class MpegTsTrackBacking implements InputTrackBacking { return TIMESCALE; } + getVariant() { + return null; + } + async computeDuration(): Promise { const lastPacket = await this.getPacket(Infinity, { metadataOnly: true }); return (lastPacket?.timestamp ?? 0) + (lastPacket?.duration ?? 0); diff --git a/src/ogg/ogg-demuxer.ts b/src/ogg/ogg-demuxer.ts index fa364d4..de2606d 100644 --- a/src/ogg/ogg-demuxer.ts +++ b/src/ogg/ogg-demuxer.ts @@ -458,6 +458,10 @@ class OggAudioTrackBacking implements InputAudioTrackBacking { return null; } + getVariant() { + return null; + } + async getDecoderConfig(): Promise { assert(this.bitstream.codecInfo.codec); diff --git a/src/reader.ts b/src/reader.ts index 4472fa7..824770d 100644 --- a/src/reader.ts +++ b/src/reader.ts @@ -13,7 +13,14 @@ import { Source } from './source'; export class Reader { fileSize!: number | null; - constructor(public source: Source) {} + private constructor(public source: Source) {} + + static async fromSource(source: Source) { + const reader = new this(source); + reader.fileSize = await source.getSizeOrNull(); + + return reader; + } requestSlice(start: number, length: number): MaybePromise { if (this.source._disposed) { @@ -329,3 +336,78 @@ export const readAscii = (slice: FileSlice, length: number) => { return str; }; + +export class LineReader { + getReader: () => MaybePromise; + isComment?: (line: string) => boolean; + reader: Reader | null = null; + textDecoder = new TextDecoder(); + readPos = 0; + reachedEnd = false; + lineBuffer = ''; + + constructor(getReader: () => MaybePromise, isComment?: (line: string) => boolean) { + this.getReader = getReader; + this.isComment = isComment; + } + + readNextLine(): MaybePromise { + if (this.reachedEnd) { + return null; + } + + const line = this.extractLineFromBuffer(); + if (line !== null) { + return line; + } + + return (async () => { + if (!this.reader) { + let reader = this.getReader(); + if (reader instanceof Promise) reader = await reader; + + this.reader = reader; + } + + while (true) { + let slice = this.reader.requestSliceRange(this.readPos, 0, 1024); + if (slice instanceof Promise) slice = await slice; + + if (!slice || slice.length === 0) { + this.reachedEnd = true; + return null; + } + + const bytes = readBytes(slice, slice.length); + this.readPos += bytes.length; + + this.lineBuffer += this.textDecoder.decode(bytes, { stream: true }); + + const line = this.extractLineFromBuffer(); + if (line !== null) { + return line; + } + } + })(); + } + + extractLineFromBuffer() { + assert(!this.reachedEnd); + + while (true) { + const newlineIndex = this.lineBuffer.indexOf('\n'); + if (newlineIndex === -1) { + return null; + } + + const line = this.lineBuffer.slice(0, newlineIndex).trim(); + this.lineBuffer = this.lineBuffer.slice(newlineIndex + 1); + + if (this.isComment?.(line)) { + continue; + } + + return line; + } + } +} diff --git a/src/source.ts b/src/source.ts index f7aa0df..07de065 100644 --- a/src/source.ts +++ b/src/source.ts @@ -10,6 +10,7 @@ import type { FileHandle } from 'node:fs/promises'; import { assert, binarySearchLessOrEqual, + clamp, closedIntervalsOverlap, isNumber, isWebKit, @@ -85,6 +86,17 @@ export abstract class Source { return result; } + slice(offset: number, length?: number) { + if (!Number.isInteger(offset) || offset < 0) { + throw new TypeError('offset must be a non-negative integer.'); + } + if (length !== undefined && (!Number.isInteger(length) || length < 0)) { + throw new TypeError('length, when provided, must be a non-negative integer.'); + } + + return new RangedSource(this, offset, length); + } + /** Called each time data is retrieved from the source. Will be called with the retrieved range (end exclusive). */ onread: ((start: number, end: number) => unknown) | null = null; } @@ -1697,3 +1709,78 @@ class ReadOrchestrator { this.disposed = true; } } + +/** + * A dummy source from which no data can be read. Can be used in conjunction with input formats that get their data + * from another source. + */ +export class NullSource extends Source { + override _retrieveSize(): MaybePromise { + return null; + } + + // eslint-disable-next-line @typescript-eslint/no-unused-vars + override _read(start: number, end: number): MaybePromise { + return null; + } + + override _dispose(): void { + // Do nothing + } +} + +export class RangedSource extends Source { + /** @internal */ + _baseSource: Source; + /** @internal */ + _offset: number; + /** @internal */ + _length: number | null; + + constructor(baseSource: Source, offset: number, length?: number) { + super(); + + this._baseSource = baseSource; + this._offset = offset; + this._length = length ?? null; + } + + override async _retrieveSize(): Promise { + const baseSize = await this._baseSource.getSizeOrNull(); // Call getSizeOrNull for memoization + if (baseSize === null) { + return null; + } + + return clamp(baseSize - this._offset, 0, this._length ?? Infinity); + } + + override _read(start: number, end: number): MaybePromise { + if (this._length !== null && end > this._length) { + return null; + } + + const result = this._baseSource._read(this._offset + start, this._offset + end); + + if (result instanceof Promise) { + return result.then((result) => { + if (!result) { + return null; + } + + result.offset -= this._offset; + return result; + }); + } else { + if (!result) { + return null; + } + + result.offset -= this._offset; + return result; + } + } + + override _dispose(): void { + this._baseSource._dispose(); + } +} diff --git a/src/wave/wave-demuxer.ts b/src/wave/wave-demuxer.ts index 8623963..a88ddb0 100644 --- a/src/wave/wave-demuxer.ts +++ b/src/wave/wave-demuxer.ts @@ -407,6 +407,10 @@ class WaveAudioTrackBacking implements InputAudioTrackBacking { return null; } + getVariant() { + return null; + } + getLanguageCode() { return UNDETERMINED_LANGUAGE; } diff --git a/test/node/aes.test.ts b/test/node/aes.test.ts new file mode 100644 index 0000000..5afbd08 --- /dev/null +++ b/test/node/aes.test.ts @@ -0,0 +1,62 @@ +import { expect, test } from 'vitest'; +import { Reader } from '../../src/reader.js'; +import { BufferSource } from '../../src/source.js'; +import { createAesDecryptStream } from '../../src/aes.js'; + +// getRandomValues is length-limited, so let's just do this +export const fillRandom = (buffer: T) => { + for (let i = 0; i < buffer.length; i++) { + buffer[i] = Math.floor(Math.random() * 256); + } + + return buffer; +}; + +test('createAesDecryptStream', async () => { + // Test for all paddings + for (let i = 0; i < 16; i++) { + const plaintextLength = Math.floor(Math.random() * 2 ** 18) + i; + + const plaintext = fillRandom(new Uint8Array(plaintextLength)); + const key = fillRandom(new Uint8Array(16)); + const iv = fillRandom(new Uint8Array(16)); + + const cryptoKey = await crypto.subtle.importKey('raw', key, { name: 'AES-CBC' }, false, ['encrypt']); + const ciphertext = new Uint8Array(await crypto.subtle.encrypt({ name: 'AES-CBC', iv }, cryptoKey, plaintext)); + + const source = new BufferSource(ciphertext); + const reader = await Reader.fromSource(source); + + const stream = createAesDecryptStream(reader, () => ({ key, iv })); + const streamReader = stream.getReader(); + + const chunks: Uint8Array[] = []; + while (true) { + const { done, value } = await streamReader.read(); + if (done) { + break; + } + + chunks.push(value); + } + + // Concatenate chunks + const totalLength = chunks.reduce((sum, chunk) => sum + chunk.length, 0); + const decrypted = new Uint8Array(totalLength); + + let offset = 0; + for (const chunk of chunks) { + decrypted.set(chunk, offset); + offset += chunk.length; + } + + expect(decrypted.length).toBe(plaintext.length); + + // .toEqual is slow, so we do this instead + for (let j = 0; j < plaintext.length; j++) { + if (decrypted[j] !== plaintext[j]) { + throw new Error(`Mismatch at byte ${j} for padding ${16 - (i % 16)}`); + } + } + } +}); diff --git a/test/node/join-paths.test.ts b/test/node/join-paths.test.ts new file mode 100644 index 0000000..946d121 --- /dev/null +++ b/test/node/join-paths.test.ts @@ -0,0 +1,46 @@ +import { expect, test } from 'vitest'; +import { joinPaths } from '../../src/misc.js'; + +test('joinPaths handles all path combinations correctly', () => { + // Simple relative paths + expect(joinPaths('path/to/entry.m3u8', 'other.m3u8')).toBe('path/to/other.m3u8'); + expect(joinPaths('entry.m3u8', 'other.m3u8')).toBe('other.m3u8'); + expect(joinPaths('/path/to/entry.m3u8', 'other.m3u8')).toBe('/path/to/other.m3u8'); + + // Absolute relative paths (starting with /) + expect(joinPaths('path/to/entry.m3u8', '/other.m3u8')).toBe('/other.m3u8'); + expect(joinPaths('/path/to/entry.m3u8', '/other.m3u8')).toBe('/other.m3u8'); + + // With protocols + expect(joinPaths('https://example.com/path/to/entry.m3u8', 'other.m3u8')) + .toBe('https://example.com/path/to/other.m3u8'); + expect(joinPaths('https://example.com/path/to/entry.m3u8', '/other.m3u8')) + .toBe('https://example.com/other.m3u8'); + expect(joinPaths('file:///path/to/entry.m3u8', 'other.m3u8')).toBe('file:///path/to/other.m3u8'); + expect(joinPaths('file:///path/to/entry.m3u8', '/other.m3u8')).toBe('file:///other.m3u8'); + + // With ./ + expect(joinPaths('path/to/entry.m3u8', './other.m3u8')).toBe('path/to/other.m3u8'); + expect(joinPaths('https://example.com/path/to/entry.m3u8', './other.m3u8')) + .toBe('https://example.com/path/to/other.m3u8'); + + // With ../ + expect(joinPaths('path/to/entry.m3u8', '../other.m3u8')).toBe('path/other.m3u8'); + expect(joinPaths('path/to/deep/entry.m3u8', '../../other.m3u8')).toBe('path/other.m3u8'); + expect(joinPaths('https://example.com/path/to/entry.m3u8', '../other.m3u8')) + .toBe('https://example.com/path/other.m3u8'); + expect(joinPaths('https://example.com/a/b/c/entry.m3u8', '../../other.m3u8')) + .toBe('https://example.com/a/other.m3u8'); + + // Mixed ./ and ../ + expect(joinPaths('path/to/entry.m3u8', './../other.m3u8')).toBe('path/other.m3u8'); + expect(joinPaths('path/to/entry.m3u8', '../foo/../other.m3u8')).toBe('path/other.m3u8'); + + // Second argument is a full URL with protocol + expect(joinPaths('path/to/entry.m3u8', 'https://example.com/other.m3u8')) + .toBe('https://example.com/other.m3u8'); + expect(joinPaths('https://example.com/path/to/entry.m3u8', 'https://other.com/other.m3u8')) + .toBe('https://other.com/other.m3u8'); + expect(joinPaths('file:///path/to/entry.m3u8', 'https://example.com/other.m3u8')) + .toBe('https://example.com/other.m3u8'); +}); diff --git a/test/node/m3u8-input.test.ts b/test/node/m3u8-input.test.ts new file mode 100644 index 0000000..03333c3 --- /dev/null +++ b/test/node/m3u8-input.test.ts @@ -0,0 +1,119 @@ +import { test } from 'vitest'; +import { ManifestInput } from '../../src/manifest-input.js'; +import { UrlSource } from '../../src/source.js'; +import { ALL_MANIFEST_FORMATS } from '../../src/manifest-input-format.js'; +import { ALL_FORMATS, MPEG_TS } from '../../src/input-format.js'; +import { EncodedPacketSink } from '../../src/media-sink.js'; +import { assert } from '../../src/misc.js'; +import { Input } from '../../src/input.js'; + +test('yo', { timeout: 60_000 }, async () => { + /* + const yo = new Input({ + source: new UrlSource('https://test-streams.mux.dev/x36xhzz/url_0/url_462/193039199_mp4_h264_aac_hd_7.ts'), + formats: ALL_FORMATS, + }); + + const videoTrack = await yo.getPrimaryVideoTrack(); + const sink1 = new EncodedPacketSink(videoTrack!); + + console.log(sink1.getFirstPacket()); + + for await (const packet of sink1.packets()) { + console.log(performance.now(), packet.timestamp); + } + + console.log('Don'); + + return; + + */ + const manifest = new ManifestInput({ + entryPath: 'https://playertest.longtailvideo.com/adaptive/aes-with-tracks/master.m3u8' + ?? 'https://playertest.longtailvideo.com/adaptive/customIV/prog_index.m3u8' + ?? 'https://playertest.longtailvideo.com/adaptive/issue666/playlists/cisq0gim60007xzvi505emlxx.m3u8' + ?? 'https://test-streams.mux.dev/dai-discontinuity-deltatre/manifest.m3u8' + ?? 'https://test-streams.mux.dev/x36xhzz/url_0/193039199_mp4_h264_aac_hd_7.m3u8' + ?? 'https://test-streams.mux.dev/dai-discontinuity-deltatre/manifest.m3u8' + ?? 'https://cdn.jwplayer.com/manifests/pZxWPRg4.m3u8' + ?? 'https://test-streams.mux.dev/x36xhzz/x36xhzz.m3u8' + ?? 'https://test-streams.mux.dev/x36xhzz/url_0/193039199_mp4_h264_aac_hd_7.m3u8', + getSource: path => new UrlSource(path), + manifestFormats: ALL_MANIFEST_FORMATS, + mediaFormats: [MPEG_TS], + }); + + const variants = await manifest.getVariants(); + const variant = variants[1]!; + const segment = await variant.getFirstSegment(); + const thing = await segment!.toInput(); + console.log(await thing.getTracks()); + /* + + const primaryVariant = (await manifest.getPrimaryVariant())!; + const segment = (await primaryVariant.getFirstSegment())!; + const thing = await segment.toInput(); + console.log(await thing.getTracks()); + */ + + return; + + for await (const segment of primaryVariant.segments()) { + console.log(segment.relativeTimestamp, segment.initSegment?.relativeTimestamp); + } + + return; + + const input = await manifest.toInput(); + const track = await input.getPrimaryVideoTrack(); + const sink = new EncodedPacketSink(track!); + + for await (const packet of sink.packets()) { + console.log(packet.timestamp); + } + + return; + + // const primaryVariant = (await manifest.getPrimaryVariant())!; + + for await (const segment of primaryVariant.segments()) { + console.log(segment.location); + } + + /* + for await (const segment of primaryVariant.segments()) { + const input = await segment.toInput(); + console.log(segment.path, segment.discontinuity, await input.getFirstTimestamp()); + continue; + + if (segment.path.endsWith('u-6400-m-720x408-1628-a-96-1-1.ts')) { + const input = await segment.toInput(); + const track = (await input.getPrimaryVideoTrack())!; + const timestamp = await track.getFirstTimestamp(); + console.log(timestamp, await track.getDecoderConfig()); + + break; + } + } + */ + + /* + const segment = await primaryVariant.getFirstSegment(); + + // console.log(segment); + + const input = primaryVariant.toInput(); + // console.log(input); + + // const tracks = await input.getTracks(); + const track = await input.getPrimaryVideoTrack(); + + const sink = new EncodedPacketSink(track!); + let currentPacket = await sink.getFirstPacket(); + + while (currentPacket) { + console.log(currentPacket.timestamp); + currentPacket = await sink.getNextPacket(currentPacket); + } + */ +}); diff --git a/testfiles_temp/720p.m3u8 b/testfiles_temp/720p.m3u8 new file mode 100644 index 0000000..d3c1b37 --- /dev/null +++ b/testfiles_temp/720p.m3u8 @@ -0,0 +1,133 @@ +#EXTM3U +#EXT-X-VERSION:3 +#EXT-X-PLAYLIST-TYPE:VOD +#EXT-X-TARGETDURATION:11 +#EXTINF:10.000, +url_462/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_463/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_464/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_465/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_466/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_467/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_468/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:9.950, +url_469/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.050, +url_470/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_471/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_472/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_473/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_474/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_475/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_476/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_477/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_478/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_479/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_480/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_481/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_482/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_483/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_484/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_485/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_486/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_487/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_488/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_489/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_490/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:9.950, +url_491/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.050, +url_492/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_493/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_494/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_495/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_496/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_497/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_498/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_499/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_500/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_501/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_502/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_503/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_504/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:9.950, +url_505/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.050, +url_506/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_507/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_508/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_509/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_510/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_511/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_512/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_513/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_514/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_515/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_516/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_517/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_518/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_519/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_520/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_521/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_522/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_523/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:10.000, +url_524/193039199_mp4_h264_aac_hd_7.ts +#EXTINF:4.584, +url_525/193039199_mp4_h264_aac_hd_7.ts +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry.m3u8 b/testfiles_temp/entry.m3u8 new file mode 100644 index 0000000..98b3ca5 --- /dev/null +++ b/testfiles_temp/entry.m3u8 @@ -0,0 +1,11 @@ +#EXTM3U +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2149280,CODECS="mp4a.40.2,avc1.64001f",RESOLUTION=1280x720,NAME="720" +url_0/193039199_mp4_h264_aac_hd_7.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=246440,CODECS="mp4a.40.5,avc1.42000d",RESOLUTION=320x184,NAME="240" +url_2/193039199_mp4_h264_aac_ld_7.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=460560,CODECS="mp4a.40.5,avc1.420016",RESOLUTION=512x288,NAME="380" +url_4/193039199_mp4_h264_aac_7.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=836280,CODECS="mp4a.40.2,avc1.64001f",RESOLUTION=848x480,NAME="480" +url_6/193039199_mp4_h264_aac_hq_7.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=6221600,CODECS="mp4a.40.2,avc1.640028",RESOLUTION=1920x1080,NAME="1080" +url_8/193039199_mp4_h264_aac_fhd_7.m3u8 diff --git a/testfiles_temp/entry2-variant1-seg1-packets.json b/testfiles_temp/entry2-variant1-seg1-packets.json new file mode 100644 index 0000000..fd0d079 --- /dev/null +++ b/testfiles_temp/entry2-variant1-seg1-packets.json @@ -0,0 +1,2278 @@ +{ + "packets": [ + { + "codec_type": "video", + "stream_index": 1, + "pts": 900000, + "pts_time": "10.000000", + "dts": 900000, + "dts_time": "10.000000", + "duration": 3000, + "duration_time": "0.033333", + "size": "34082", + "pos": "1128", + "flags": "K__", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 912000, + "pts_time": "10.133333", + "dts": 903000, + "dts_time": "10.033333", + "duration": 3000, + "duration_time": "0.033333", + "size": "9097", + "pos": "36848", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 906000, + "pts_time": "10.066667", + "dts": 906000, + "dts_time": "10.066667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1860", + "pos": "46624", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 903000, + "pts_time": "10.033333", + "dts": 909000, + "dts_time": "10.100000", + "duration": 3000, + "duration_time": "0.033333", + "size": "536", + "pos": "49632", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 909000, + "pts_time": "10.100000", + "dts": 912000, + "dts_time": "10.133333", + "duration": 3000, + "duration_time": "0.033333", + "size": "653", + "pos": "50760", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 924000, + "pts_time": "10.266667", + "dts": 915000, + "dts_time": "10.166667", + "duration": 3000, + "duration_time": "0.033333", + "size": "9177", + "pos": "52452", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 918000, + "pts_time": "10.200000", + "dts": 918000, + "dts_time": "10.200000", + "duration": 3000, + "duration_time": "0.033333", + "size": "2279", + "pos": "62416", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 915000, + "pts_time": "10.166667", + "dts": 921000, + "dts_time": "10.233333", + "duration": 3000, + "duration_time": "0.033333", + "size": "632", + "pos": "65424", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 921000, + "pts_time": "10.233333", + "dts": 924000, + "dts_time": "10.266667", + "duration": 3000, + "duration_time": "0.033333", + "size": "708", + "pos": "66552", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 936000, + "pts_time": "10.400000", + "dts": 927000, + "dts_time": "10.300000", + "duration": 3000, + "duration_time": "0.033333", + "size": "9790", + "pos": "67680", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 930000, + "pts_time": "10.333333", + "dts": 930000, + "dts_time": "10.333333", + "duration": 3000, + "duration_time": "0.033333", + "size": "2355", + "pos": "78584", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 927000, + "pts_time": "10.300000", + "dts": 933000, + "dts_time": "10.366667", + "duration": 3000, + "duration_time": "0.033333", + "size": "788", + "pos": "81404", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 933000, + "pts_time": "10.366667", + "dts": 936000, + "dts_time": "10.400000", + "duration": 3000, + "duration_time": "0.033333", + "size": "958", + "pos": "83096", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 948000, + "pts_time": "10.533333", + "dts": 939000, + "dts_time": "10.433333", + "duration": 3000, + "duration_time": "0.033333", + "size": "9425", + "pos": "84412", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 942000, + "pts_time": "10.466667", + "dts": 942000, + "dts_time": "10.466667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1907", + "pos": "94940", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 939000, + "pts_time": "10.433333", + "dts": 945000, + "dts_time": "10.500000", + "duration": 3000, + "duration_time": "0.033333", + "size": "763", + "pos": "97384", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 945000, + "pts_time": "10.500000", + "dts": 948000, + "dts_time": "10.533333", + "duration": 3000, + "duration_time": "0.033333", + "size": "673", + "pos": "98512", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 960000, + "pts_time": "10.666667", + "dts": 951000, + "dts_time": "10.566667", + "duration": 3000, + "duration_time": "0.033333", + "size": "7981", + "pos": "100016", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 954000, + "pts_time": "10.600000", + "dts": 954000, + "dts_time": "10.600000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1776", + "pos": "108664", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 951000, + "pts_time": "10.566667", + "dts": 957000, + "dts_time": "10.633333", + "duration": 3000, + "duration_time": "0.033333", + "size": "617", + "pos": "111108", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 957000, + "pts_time": "10.633333", + "dts": 960000, + "dts_time": "10.666667", + "duration": 3000, + "duration_time": "0.033333", + "size": "635", + "pos": "112236", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 972000, + "pts_time": "10.800000", + "dts": 963000, + "dts_time": "10.700000", + "duration": 3000, + "duration_time": "0.033333", + "size": "7111", + "pos": "113740", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 966000, + "pts_time": "10.733333", + "dts": 966000, + "dts_time": "10.733333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1444", + "pos": "121448", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 963000, + "pts_time": "10.700000", + "dts": 969000, + "dts_time": "10.766667", + "duration": 3000, + "duration_time": "0.033333", + "size": "580", + "pos": "123704", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 969000, + "pts_time": "10.766667", + "dts": 972000, + "dts_time": "10.800000", + "duration": 3000, + "duration_time": "0.033333", + "size": "455", + "pos": "124832", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 984000, + "pts_time": "10.933333", + "dts": 975000, + "dts_time": "10.833333", + "duration": 3000, + "duration_time": "0.033333", + "size": "6780", + "pos": "125772", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 978000, + "pts_time": "10.866667", + "dts": 978000, + "dts_time": "10.866667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1323", + "pos": "133292", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 975000, + "pts_time": "10.833333", + "dts": 981000, + "dts_time": "10.900000", + "duration": 3000, + "duration_time": "0.033333", + "size": "437", + "pos": "135172", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 981000, + "pts_time": "10.900000", + "dts": 984000, + "dts_time": "10.933333", + "duration": 3000, + "duration_time": "0.033333", + "size": "525", + "pos": "136300", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 996000, + "pts_time": "11.066667", + "dts": 987000, + "dts_time": "10.966667", + "duration": 3000, + "duration_time": "0.033333", + "size": "8236", + "pos": "137428", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 990000, + "pts_time": "11.000000", + "dts": 990000, + "dts_time": "11.000000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1848", + "pos": "146640", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 987000, + "pts_time": "10.966667", + "dts": 993000, + "dts_time": "11.033333", + "duration": 3000, + "duration_time": "0.033333", + "size": "620", + "pos": "149084", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 993000, + "pts_time": "11.033333", + "dts": 996000, + "dts_time": "11.066667", + "duration": 3000, + "duration_time": "0.033333", + "size": "548", + "pos": "150212", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1008000, + "pts_time": "11.200000", + "dts": 999000, + "dts_time": "11.100000", + "duration": 3000, + "duration_time": "0.033333", + "size": "8127", + "pos": "151528", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1002000, + "pts_time": "11.133333", + "dts": 1002000, + "dts_time": "11.133333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1368", + "pos": "160364", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 999000, + "pts_time": "11.100000", + "dts": 1005000, + "dts_time": "11.166667", + "duration": 3000, + "duration_time": "0.033333", + "size": "465", + "pos": "162620", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1005000, + "pts_time": "11.166667", + "dts": 1008000, + "dts_time": "11.200000", + "duration": 3000, + "duration_time": "0.033333", + "size": "386", + "pos": "163560", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1020000, + "pts_time": "11.333333", + "dts": 1011000, + "dts_time": "11.233333", + "duration": 3000, + "duration_time": "0.033333", + "size": "8151", + "pos": "164876", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1014000, + "pts_time": "11.266667", + "dts": 1014000, + "dts_time": "11.266667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1535", + "pos": "173524", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1011000, + "pts_time": "11.233333", + "dts": 1017000, + "dts_time": "11.300000", + "duration": 3000, + "duration_time": "0.033333", + "size": "453", + "pos": "175592", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1017000, + "pts_time": "11.300000", + "dts": 1020000, + "dts_time": "11.333333", + "duration": 3000, + "duration_time": "0.033333", + "size": "621", + "pos": "176908", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1032000, + "pts_time": "11.466667", + "dts": 1023000, + "dts_time": "11.366667", + "duration": 3000, + "duration_time": "0.033333", + "size": "9826", + "pos": "178036", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1026000, + "pts_time": "11.400000", + "dts": 1026000, + "dts_time": "11.400000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1937", + "pos": "188940", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1023000, + "pts_time": "11.366667", + "dts": 1029000, + "dts_time": "11.433333", + "duration": 3000, + "duration_time": "0.033333", + "size": "638", + "pos": "191384", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1029000, + "pts_time": "11.433333", + "dts": 1032000, + "dts_time": "11.466667", + "duration": 3000, + "duration_time": "0.033333", + "size": "582", + "pos": "192888", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1044000, + "pts_time": "11.600000", + "dts": 1035000, + "dts_time": "11.500000", + "duration": 3000, + "duration_time": "0.033333", + "size": "7923", + "pos": "193828", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1038000, + "pts_time": "11.533333", + "dts": 1038000, + "dts_time": "11.533333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1431", + "pos": "202852", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1035000, + "pts_time": "11.500000", + "dts": 1041000, + "dts_time": "11.566667", + "duration": 3000, + "duration_time": "0.033333", + "size": "522", + "pos": "204732", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1041000, + "pts_time": "11.566667", + "dts": 1044000, + "dts_time": "11.600000", + "duration": 3000, + "duration_time": "0.033333", + "size": "364", + "pos": "205672", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1056000, + "pts_time": "11.733333", + "dts": 1047000, + "dts_time": "11.633333", + "duration": 3000, + "duration_time": "0.033333", + "size": "7166", + "pos": "206988", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1050000, + "pts_time": "11.666667", + "dts": 1050000, + "dts_time": "11.666667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1565", + "pos": "214884", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1047000, + "pts_time": "11.633333", + "dts": 1053000, + "dts_time": "11.700000", + "duration": 3000, + "duration_time": "0.033333", + "size": "482", + "pos": "217140", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1053000, + "pts_time": "11.700000", + "dts": 1056000, + "dts_time": "11.733333", + "duration": 3000, + "duration_time": "0.033333", + "size": "518", + "pos": "218080", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1068000, + "pts_time": "11.866667", + "dts": 1059000, + "dts_time": "11.766667", + "duration": 3000, + "duration_time": "0.033333", + "size": "8373", + "pos": "219396", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1062000, + "pts_time": "11.800000", + "dts": 1062000, + "dts_time": "11.800000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1828", + "pos": "228420", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1059000, + "pts_time": "11.766667", + "dts": 1065000, + "dts_time": "11.833333", + "duration": 3000, + "duration_time": "0.033333", + "size": "615", + "pos": "230864", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1065000, + "pts_time": "11.833333", + "dts": 1068000, + "dts_time": "11.866667", + "duration": 3000, + "duration_time": "0.033333", + "size": "639", + "pos": "232368", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1080000, + "pts_time": "12.000000", + "dts": 1071000, + "dts_time": "11.900000", + "duration": 3000, + "duration_time": "0.033333", + "size": "9399", + "pos": "233496", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1074000, + "pts_time": "11.933333", + "dts": 1074000, + "dts_time": "11.933333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1692", + "pos": "243836", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1071000, + "pts_time": "11.900000", + "dts": 1077000, + "dts_time": "11.966667", + "duration": 3000, + "duration_time": "0.033333", + "size": "558", + "pos": "246092", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1077000, + "pts_time": "11.966667", + "dts": 1080000, + "dts_time": "12.000000", + "duration": 3000, + "duration_time": "0.033333", + "size": "538", + "pos": "247596", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1092000, + "pts_time": "12.133333", + "dts": 1083000, + "dts_time": "12.033333", + "duration": 3000, + "duration_time": "0.033333", + "size": "9278", + "pos": "248724", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1086000, + "pts_time": "12.066667", + "dts": 1086000, + "dts_time": "12.066667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1625", + "pos": "259064", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1083000, + "pts_time": "12.033333", + "dts": 1089000, + "dts_time": "12.100000", + "duration": 3000, + "duration_time": "0.033333", + "size": "518", + "pos": "260944", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1089000, + "pts_time": "12.100000", + "dts": 1092000, + "dts_time": "12.133333", + "duration": 3000, + "duration_time": "0.033333", + "size": "557", + "pos": "261884", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1104000, + "pts_time": "12.266667", + "dts": 1095000, + "dts_time": "12.166667", + "duration": 3000, + "duration_time": "0.033333", + "size": "8101", + "pos": "263388", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1098000, + "pts_time": "12.200000", + "dts": 1098000, + "dts_time": "12.200000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1464", + "pos": "272224", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1095000, + "pts_time": "12.166667", + "dts": 1101000, + "dts_time": "12.233333", + "duration": 3000, + "duration_time": "0.033333", + "size": "426", + "pos": "274668", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1101000, + "pts_time": "12.233333", + "dts": 1104000, + "dts_time": "12.266667", + "duration": 3000, + "duration_time": "0.033333", + "size": "417", + "pos": "275608", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1116000, + "pts_time": "12.400000", + "dts": 1107000, + "dts_time": "12.300000", + "duration": 3000, + "duration_time": "0.033333", + "size": "7971", + "pos": "276924", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1110000, + "pts_time": "12.333333", + "dts": 1110000, + "dts_time": "12.333333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1443", + "pos": "285384", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1107000, + "pts_time": "12.300000", + "dts": 1113000, + "dts_time": "12.366667", + "duration": 3000, + "duration_time": "0.033333", + "size": "476", + "pos": "287264", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1113000, + "pts_time": "12.366667", + "dts": 1116000, + "dts_time": "12.400000", + "duration": 3000, + "duration_time": "0.033333", + "size": "423", + "pos": "288580", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1128000, + "pts_time": "12.533333", + "dts": 1119000, + "dts_time": "12.433333", + "duration": 3000, + "duration_time": "0.033333", + "size": "7882", + "pos": "289520", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1122000, + "pts_time": "12.466667", + "dts": 1122000, + "dts_time": "12.466667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1236", + "pos": "298356", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1119000, + "pts_time": "12.433333", + "dts": 1125000, + "dts_time": "12.500000", + "duration": 3000, + "duration_time": "0.033333", + "size": "445", + "pos": "300048", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1125000, + "pts_time": "12.500000", + "dts": 1128000, + "dts_time": "12.533333", + "duration": 3000, + "duration_time": "0.033333", + "size": "428", + "pos": "301176", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1140000, + "pts_time": "12.666667", + "dts": 1131000, + "dts_time": "12.566667", + "duration": 3000, + "duration_time": "0.033333", + "size": "8139", + "pos": "302116", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1134000, + "pts_time": "12.600000", + "dts": 1134000, + "dts_time": "12.600000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1227", + "pos": "310952", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1131000, + "pts_time": "12.566667", + "dts": 1137000, + "dts_time": "12.633333", + "duration": 3000, + "duration_time": "0.033333", + "size": "440", + "pos": "313020", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1137000, + "pts_time": "12.633333", + "dts": 1140000, + "dts_time": "12.666667", + "duration": 3000, + "duration_time": "0.033333", + "size": "467", + "pos": "313960", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1152000, + "pts_time": "12.800000", + "dts": 1143000, + "dts_time": "12.700000", + "duration": 3000, + "duration_time": "0.033333", + "size": "8607", + "pos": "315276", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1146000, + "pts_time": "12.733333", + "dts": 1146000, + "dts_time": "12.733333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1283", + "pos": "324300", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1143000, + "pts_time": "12.700000", + "dts": 1149000, + "dts_time": "12.766667", + "duration": 3000, + "duration_time": "0.033333", + "size": "462", + "pos": "326556", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1149000, + "pts_time": "12.766667", + "dts": 1152000, + "dts_time": "12.800000", + "duration": 3000, + "duration_time": "0.033333", + "size": "450", + "pos": "327496", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1164000, + "pts_time": "12.933333", + "dts": 1155000, + "dts_time": "12.833333", + "duration": 3000, + "duration_time": "0.033333", + "size": "8385", + "pos": "328812", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1158000, + "pts_time": "12.866667", + "dts": 1158000, + "dts_time": "12.866667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1292", + "pos": "337836", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1155000, + "pts_time": "12.833333", + "dts": 1161000, + "dts_time": "12.900000", + "duration": 3000, + "duration_time": "0.033333", + "size": "429", + "pos": "339716", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1161000, + "pts_time": "12.900000", + "dts": 1164000, + "dts_time": "12.933333", + "duration": 3000, + "duration_time": "0.033333", + "size": "381", + "pos": "341032", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1167000, + "pts_time": "12.966667", + "dts": 1167000, + "dts_time": "12.966667", + "duration": 3000, + "duration_time": "0.033333", + "size": "3383", + "pos": "341784", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1170000, + "pts_time": "13.000000", + "dts": 1170000, + "dts_time": "13.000000", + "duration": 3000, + "duration_time": "0.033333", + "size": "4102", + "pos": "346108", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1182000, + "pts_time": "13.133333", + "dts": 1173000, + "dts_time": "13.033333", + "duration": 3000, + "duration_time": "0.033333", + "size": "7081", + "pos": "350808", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1176000, + "pts_time": "13.066667", + "dts": 1176000, + "dts_time": "13.066667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1068", + "pos": "358892", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1173000, + "pts_time": "13.033333", + "dts": 1179000, + "dts_time": "13.100000", + "duration": 3000, + "duration_time": "0.033333", + "size": "377", + "pos": "360396", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1179000, + "pts_time": "13.100000", + "dts": 1182000, + "dts_time": "13.133333", + "duration": 3000, + "duration_time": "0.033333", + "size": "340", + "pos": "361336", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1194000, + "pts_time": "13.266667", + "dts": 1185000, + "dts_time": "13.166667", + "duration": 3000, + "duration_time": "0.033333", + "size": "8008", + "pos": "362276", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1188000, + "pts_time": "13.200000", + "dts": 1188000, + "dts_time": "13.200000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1307", + "pos": "370924", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1185000, + "pts_time": "13.166667", + "dts": 1191000, + "dts_time": "13.233333", + "duration": 3000, + "duration_time": "0.033333", + "size": "401", + "pos": "373180", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1191000, + "pts_time": "13.233333", + "dts": 1194000, + "dts_time": "13.266667", + "duration": 3000, + "duration_time": "0.033333", + "size": "473", + "pos": "374120", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1206000, + "pts_time": "13.400000", + "dts": 1197000, + "dts_time": "13.300000", + "duration": 3000, + "duration_time": "0.033333", + "size": "9976", + "pos": "375436", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1200000, + "pts_time": "13.333333", + "dts": 1200000, + "dts_time": "13.333333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1684", + "pos": "386152", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1197000, + "pts_time": "13.300000", + "dts": 1203000, + "dts_time": "13.366667", + "duration": 3000, + "duration_time": "0.033333", + "size": "580", + "pos": "388220", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1203000, + "pts_time": "13.366667", + "dts": 1206000, + "dts_time": "13.400000", + "duration": 3000, + "duration_time": "0.033333", + "size": "606", + "pos": "389724", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1218000, + "pts_time": "13.533333", + "dts": 1209000, + "dts_time": "13.433333", + "duration": 3000, + "duration_time": "0.033333", + "size": "9788", + "pos": "390852", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1212000, + "pts_time": "13.466667", + "dts": 1212000, + "dts_time": "13.466667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1811", + "pos": "401756", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1209000, + "pts_time": "13.433333", + "dts": 1215000, + "dts_time": "13.500000", + "duration": 3000, + "duration_time": "0.033333", + "size": "623", + "pos": "404012", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1215000, + "pts_time": "13.500000", + "dts": 1218000, + "dts_time": "13.533333", + "duration": 3000, + "duration_time": "0.033333", + "size": "564", + "pos": "405516", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1230000, + "pts_time": "13.666667", + "dts": 1221000, + "dts_time": "13.566667", + "duration": 3000, + "duration_time": "0.033333", + "size": "8952", + "pos": "406644", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1224000, + "pts_time": "13.600000", + "dts": 1224000, + "dts_time": "13.600000", + "duration": 3000, + "duration_time": "0.033333", + "size": "1471", + "pos": "416420", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1221000, + "pts_time": "13.566667", + "dts": 1227000, + "dts_time": "13.633333", + "duration": 3000, + "duration_time": "0.033333", + "size": "530", + "pos": "418488", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1227000, + "pts_time": "13.633333", + "dts": 1230000, + "dts_time": "13.666667", + "duration": 3000, + "duration_time": "0.033333", + "size": "527", + "pos": "419616", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1242000, + "pts_time": "13.800000", + "dts": 1233000, + "dts_time": "13.700000", + "duration": 3000, + "duration_time": "0.033333", + "size": "6746", + "pos": "421120", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1236000, + "pts_time": "13.733333", + "dts": 1236000, + "dts_time": "13.733333", + "duration": 3000, + "duration_time": "0.033333", + "size": "1279", + "pos": "428452", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1233000, + "pts_time": "13.700000", + "dts": 1239000, + "dts_time": "13.766667", + "duration": 3000, + "duration_time": "0.033333", + "size": "517", + "pos": "430708", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1239000, + "pts_time": "13.766667", + "dts": 1242000, + "dts_time": "13.800000", + "duration": 3000, + "duration_time": "0.033333", + "size": "462", + "pos": "431460", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1254000, + "pts_time": "13.933333", + "dts": 1245000, + "dts_time": "13.833333", + "duration": 3000, + "duration_time": "0.033333", + "size": "7036", + "pos": "432776", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1248000, + "pts_time": "13.866667", + "dts": 1248000, + "dts_time": "13.866667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1293", + "pos": "440484", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1245000, + "pts_time": "13.833333", + "dts": 1251000, + "dts_time": "13.900000", + "duration": 3000, + "duration_time": "0.033333", + "size": "476", + "pos": "442364", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1251000, + "pts_time": "13.900000", + "dts": 1254000, + "dts_time": "13.933333", + "duration": 3000, + "duration_time": "0.033333", + "size": "471", + "pos": "443680", + "flags": "___", + "side_data_list": [ + { + "side_data_type": "MPEGTS Stream ID", + "id": 224 + } + ] + }, + { + "codec_type": "video", + "stream_index": 1, + "pts": 1257000, + "pts_time": "13.966667", + "dts": 1257000, + "dts_time": "13.966667", + "duration": 3000, + "duration_time": "0.033333", + "size": "1472", + "pos": "444620", + "flags": "___" + } + ] +} diff --git a/testfiles_temp/entry2-variant1-seg1.ts b/testfiles_temp/entry2-variant1-seg1.ts new file mode 100644 index 0000000000000000000000000000000000000000..6fd439184b1fc280d6b104cb1b21431557408f32 GIT binary patch literal 448568 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%0Dhk{9&1hr^0?A{|WR6><#lf5#(t zc5#RFrxbkfiXc2`&Oz|3Cn2LDEEdR-2Dd9hiMMj$h=vQy!$Hv_^b?IzY|oGOcS&kw z-koD!_uKaZnc2fEN=3f7_C_dL+9`zxk=JlrhfD7Ia- z^bW@a!$vawN02RVBT!asC=;{T6pZWWx2C6JA1C~KLn2*NXn;d2z{E&mJ z_&xgpb#LK8Ak?{s8uccB7|#;m>i=hQq_YCRj(;HRs3riJjt$4K!NNxx;I&?x=LfXO z#4{sxMiuUh6HZFZ>K|@Tf-@YA-~!`_nHWQQk&OKPwc3+xJxT4|h@s4qP^OH*M-Kbr zSkYVx?w7HO&04Myk~ z9}T>cwf@~V@pJrl#u;7Xw&tra5)_#`0gkG559w^X1YGvFjl=b_GJXWG5N`89t8%KC z;u_rjMAhD3JE$x@sga8Nc{$)iL=i-08L|gVqA)GY`a+EQSGopNqXLP~+F=wdv)7g1dDi=w}T) z+0SkWmHmxrlE!FJ91@IPZ-Zi5>5MY-SkVI?XQ(p0v^LX~wxbsnQ`@e54UBidxa~k| zLnLw?d_-|dX~cZZ1tj4Z)HvPY=hyB@>^nu8T%{b76!`j1GW|0j}?ziOi6iHIcgo2<7C zfk0q@8%>qpcEcF1RU4qH;)YT%#%9b|jpXFpmULBx+FUy?g{0_>bvLcRr%5zHK+^+*R`TQtI0;3wgK5|sRpHU z<*p*`V;SG#l^1*NGBCA^GFccjy&wQPn(%$)I4wKC5@XaJi_5T*VpOAR{3p8azUvzJ z4&8*Kd%LsTHM&uSPS|NqLuMe5fXKu+F)@}f=?*CuuOJu{5D1NRsekxOt^aDr*-8s5 z(?S7%8FoZ5PR@BnP74#LWN`5U{6wVkdJ1kDqR~4EUWZ2nGEu3sF5@dx+3iIo^;IBkMw=YJU*TMDB=-B zHUM_?PW!Y8GhM^JQAQvMIwFMHLv3;o8EQG)#E)m0!g}|2a_53;gFm zkrX>Fh8h@V9NYm01O(?qDjRrYue6X^#&~iQ*4g41Vr;AUv+An!tBhaIPc%ucz2axF z$B;1m;2HBGSqfV6f1~Z4f;)@4cHh{xZQFLzv2Av&j&0kvZ95&?Mkndm*7^5)>b&QC zSEp*%-q-8qSF_d{bF4X^=NX~$gc#W_6X|S!&P()McZwrTfsl~aUn?^*>oIdIyCJ}r z9*sLaP2Xe(Sa2?fHmej$T=jIqfxi)2Bgu0XGvf0L;@z16dz0Y5z3GVbf9y@%ECYbO z>B8~9dy{acrF6NlWri$N-H^k=+PK)@+X#KbGqs_QWkfK*dhi*@_fYT@bZ%XhYVCVfoj|ja*<@xtz?{ zvIPNu-jobqWK)lRLBd@Rn$VroLI=it#wnjjU%%R0g7d8X^d|k%0!880Sb^l5WBI3# zM4Cvzh|?UJ>W@+Nt7ES#fcIqKKWgsebp5gDuD)iR9QqA;7#hbz)-2tyM(Hf%;>4WR zQC{)g=6IU#{cS8H)Sp@1L%&YS4wk+D8mrd( z;}KO1-Z3Iws@?&WSgm2vUdrj#f;b7^F{W0j-7J6|8J-2DKgh2l02L$0GFY}WQibJ0 zx#v}>Y}$FY3pp2Ou9b0SwO1_*j$9!7lk1N_m0yJtQad3I&nr2GI+`wa$9vOUo5@zV z$oJ(?5G(chh)?_ntAQ)G?tL#?%u8jX2jld2*SRJ&Bw^4sFe_MUM+odiO5*$?=6MPxUS2sS)*9(fBr zzcA+kEaaHEVE{Xdp+{;mOP%ii`weQjEWf$_uYCxA%s|-8kyVgap%5c7<&}ttx!EbY zC(kuVmpbg>Q0i}CUH&OquG8-m65$%&{F@FH0el|1#e+CDj}4r&mc^fFOQzm3tanUJ z)P4S%miOSGzoy>#EN26c3m;oT9y%Vm><~WdkvdA|uh}uy zXDN@xAlR+!Sg^C@ic#nF(c%go54h@o+hm`vKIcptV1Hrcsa__J#i3?UMogFc zhW1AD_m2ZqD$<^4^w@J07q(x=zQ3w2(0QYy3HKV}!7VaQ*L|Pf;H{QEUi+XS3jQcg zJ&caz+w4-BRwigE4CgJ53Q_aFdBbRKf}lCmNb2b`KS<;ba&YU3XO);QbBb9xvQ|a3 z<*qZt-gsy@eupkD*YiX=^IOo~yM;IEiX*>xs?*_g5~_)4kcu!|Vx}?;kHbVP7;?>^ zYto`u!M}?g5b*kTr*Y~DmT1asrxf~J>R>HRvT#zud=(YjI+hz^?NQix17is=ow9#M zlzJ$v4zO>5;S;Dgm1O@}0)+vxG~316l%R$4Fo8`qPkMEBu4RUXKSS$eTCRqYr^x+x zcYr>R-Vkt_{6sl<(!hV3(jd%}su4-3bKghM^(|nBTUsrC2`{NxJH3Pnx_i;4lpel! zG8~;u5Tl*NFnrnzZ}&>#cWI!>7JzZjY`kVmxW@O_*7|%hexB9bXZDoX!9{Bk4VjK^ zNyY*v$nSf0MFY#mXIUU&m+SACzFvQr8sUd^3!5In<{?STed^i@|3ug6=g7jldI%PK zZLX1FjYV`bb#=H`m zw>oD>JAu!}aN%`(T`sSFeh7{0(m<$%*4k=JlgP?>-zX9t>P#w5 zEVIXwE7R37z8jRYo=4%a`sX(E+P6BEi{rjm*PQflaEZ4}lWdrcLg1{nhbJ} zbW&l1PJk)nDf{YjjnC7Pi*3_$P2_1VB6>|;6}S^1al+Fit8pEHd?gl^_JXyG_ET`U zcm+ksJatQ4oTHy)4@JIgVJmszm`zVgB&F$w6{)95o+%bD#JX*AVgPom1{NjfIhXOh zF%0MOkEiW%y6~6L4-*LsZluH3>)h=ll0`z(?8EY8iNX+grA-FbH1+D~A#BEo>hm&O z)=&7jsuORDXuT-*xZ$(rpg-^F-K`P$Rx2WutYOinsH+j0v3uu; zNXo-Ncknz58yxH%6wnG#KK9h7TR69oFKbMuP8A8-8^J^h5$od?s#^?8lqKP_V9tJd zc8r5E!YopET%FMM7MMS*&V)bk0PNU`dgMNqx!P;h2pp(tV6i4i3@FrOkx{0*vHfR+ zWG1BO^UYart@-0BIJp>%Z1?P%M9YvvIkM!~65aiaufkU}44V>qnQ)MNROpiz)eQL8 z#`3-RBFuW3N`)VPt(gr3M{_WU{&p8+Y5LH}35eN*b=(z>WXa^_N=oigX}L@kG4j&K zWQETvL(k}7dKN7?NazT1@`2hD(13s|TTca>^wbI*-oFO86ED#1fcCNT;d+e~qmusf zOyJ0dPpjtX&$4)_wWh@Gb9&B?JM6?(fQui>ig~q0N#)jIpAeRv5=;%Y7hzJuTtn_ zXQ}nKxo-B@egZfLCdPH&o7hVX%{LJSj_6k*Kt$v;Cdl) zFO$E`lp=}pj92~yu;ZCPw*fbx@z>EXoe6OT~L~;jeck$|G|>&@{ukZXa~0C!QE*|JE$C#M zc-Y0mB>H!IiCgu4!lPqYSM~yXQAHlz;S4Q50~F+Blvhq}0=$g^)MEOtP)TIdeF>Qk zrG|Czxsp&PG>%-|WL#B;v*oL^E$I!2j7WJepl)cVz?0hLtSG%@ViOAoK3nY*jhoyN`tLBF77v_zpR&S87}P|D90NJ zD%cdju4#q9qRqfPX^X?LLunnlLSA&4((iz@)emGNV@l$dq9cyjc^PJCV!1j-D|jwPF!LI zJgdVgPBE+YdV~k5uUG2&y}Fa(YpdNfH@ITe@1DbIE1Q|*6l`Y&}daHm~+2&`)QOrC(7@^JvryH;{ z7r{(Mfk>GKC8>NF9ckx6gRUwgRMgC@?K5+{%=dT|&8-`?-(MF^`-%YESY8B6AM{Rh zzRmX;?{Og02uKFNx+8qh_%rR3#xa33QK0 z992pT<`J2B>U4@d7#wiAjKwT}?~Pg2*<3${rYHy&mJQwB<~ebVr~h|%fYMSR0MQ8{ z+@{Vk|JBy|&Sb%9UsU7S`R9Pr5j?0d$LOkj(y&r;Bs#ha)FY?Y2}%&!(M*24hK445JBlzT z&^rU*16a#}xTdLY#o+WBK3#Q$a4h&!Qp!rac9GcN{f-EB+$(WxpEf+=jV~xi>h1po zzm}?=6`H9}@R3rrSW$LN3MdJ+GsUR2Sv-y)7f_wJ(8s|Fc|Nk7J7z1Yd)^;?E4scYlRaCfaawVb0kDI7n4 zumZ57F}t2qco@k`={N(Qx3RXyN{k;tAAkO6gVu;SU&A=idt_`o4I@Rxt6tO)y#*uA zix42P-Y$H@=FoRy#CfTn1vOl?P&9u9G#y_y*+$2LnnHUBxAuL!->R zt9RmBY-(T!o+OlG3|)M&06Y4S3EGd*)G|_LW7@3QgFMY9}Z!b zh-z*^Q97qtgKM!2?>dbkfCsio(yUr|z$fWvZ9<^fDBUD(Hom`Jyz$pa(?@)j^C5s z5n8uT*J5NRF^d?X#38V>dJD^8NhD1S37cTpVCbtyXX^^qH_IyWx>}cr!Ay1BuOqnt zva&1WwK`&_4F>rJ$ny-~7_Yxza0&W0H_JyHPYX zt~h8n5+?ZXE=Y{Au8i`XE|nhvjf{5mSNB&vWUn`?Q1@Dcx&7^EEKLEC`~vvCBH9=# zhzHB?|Hv#uaNo^K8&34t40FPS`<6}xnGXhF$>Wh~Syg4a9w=MO9)dPF=E$5Azpv*S zn$#VGpU=Ay_Tfy|tv^8q4&OcY{bG2t-skk_4ReYh+Os?Y-t~7y+uN$Fkns3OIB$YI zSmi*!W}mx_<_ZeWfV3Ty_?0%~$O2%;YQL!k#a%lKmcnoY0}NhP8$#BCX^~m|b&DNO zw`Y+;@!7IUS@9|svlKAd7r7t#8y)?J!v@pVkZ#D5$R;-<###=M!gl&ptj;1RB@q;S zuX}5iXz}IU))C8!WKb|LOIBTj{AClV@L7U2l@LZrkh5;3Lye~D!9<|qOj@Y4jc?xA zeE`0yQN!x7w`U!`!M^OzM|Y`-nc^gQ3wIvMNQ%WKzOBlvX4mk09SF-B7Z~Q|za*?8 zA^>*m!r$NMKR6`wH5{67?P8`udbYz2?V9XD(zQD3nB!mgFSaqMW==Thc>cU_)Xj-|%|N2d zcCu3#)z{k3FNmA^`H^~Kqt|%S*O96w$CIHA+K{Ii&Qv4SIl{b%#)h170_Oo+N2bneL`5zU_2lK5y?MLt^U`cK+CPb4MV5!a*a3A; zpIMu_>Feq1HU-}7&KdaY>lAY*F=d(PdLRcC$8NU*lf~>$pBXM`8Kl2m;nX|)w*DBT z1mAh2g;QIbh|b9cu;X%c?P1L>oq+3=_jEO)elaUnUR>tB^0jLbEhbSeTbxClsUNzo z@p&z-yYo7z-(L0{iRhp{W$9TThrkLubWlyyhyVdMslfVIZ%C#?+l3LD;iO?}3Mje- z66SJ#jaRa7AFImczStRj9!xY=GtO;n8}V#STsulwt%`I8#=-HAw;3@gBxF7srh- zq|qiC57eMpt_zDAKSXpQU`tbEC=SRQRjdxm4CFSbxmD)(v$%0+?2uv*!`==n^~3wt z_G_N#FzSSF+N}$>)oR_9P^QT5*PZ{QNWuL{_fuwyfN$`j!iV?V&n)PW{Q38u8JL|r zv&ycoFS2XotCWzqCqAG}ukF=+FwZq`d{TEH2wmv-WyC0Z5e@$Z)iRJXQg(1UJ+)7X zP@iVMBo_NuN^SOU1J{;SDZ^dvAIJc9d?!ebz40E6-qEObo3v*(7(apvIubIUdm!_D z68R4l-0Hmm2iR40r_Gd(3LcG?$_x~E9AuM-(d0=Z=TgN$JqwX;fvqD!SZk~MwFn9d zm7rIf#7+w<`g3^jhNZrh?y|nvh%gM0eDXi(k|2_6Yx(!#r_Dz{NFa2e1>Cyy^PBTJC@&5BCj|SwRRSl{nXEOb;(_7wN$As`}^oODPm1s znFUo`O^fL-9nt&qz~?hzm2@UY4`2@rLEXrwcL%4i};)&Eh-i9zV}_q?h>T7P3x8>xCsY=8LGaDYZHPXjxv z(!S&r<m9B|^0VS&;*rPju(m z<@qT<(5=Qb`r}=A>(T6I`>Z1y9D8s*dlq=37M-EepMu2^5W~CnwTARiF#kA# zaHcRzu)}_LiZ(x3O>*TIrYw1!ZwLT83PX>?Hi1Hde9awshs^dL37+TlFw}T3_hXdt z^2LOV`Fo7NOBgu9X|0x z0U8uy)X657>$l#xY6TQoBbO?3{cvVbh^vLV7hHIMf%F3VUiL1HFy?Xx@J2;Cz9g+{ zRLGc|C{6F!WXbW@SxQnudil5N1!bjaP$Z>I!-F*qSZ=(siFpG!##l5#e)zJ+=KyHz z#)3#te-P}ucEvkl?9eh&+=nK^!Eyz6%0Uxni`{+O)^9i|ggpfY@t5RPg9~ogUu2Lh zVdND3;CJnamAglzgJu|*HTXg~q}jGj#guNLA$s(b|N2NYraD)#UW|Oq6&Nl=dDypC z=~_B|=bw}m-fK&(;Uvv0ezvWsw`pIQzcd-grKXClPesk*oi?oY_f0EKUS1yLO*C>y zFnZBRCxrbk$JAqSRMi0{KpBnGvmm`Xl^){iEwy-+T06n~3p`u_3@xf_Dgosw*fgKW zMNuFdIYiFvE2$AYM9LBQaX%Le8B`)dFHS zZQaCJ?>Om_;exnD>!kw`#FoFJ{z3+NxuJy!QoxI;P&?xz@i*&fWr zeMp~)>grx`jC$p9BoqB-k7JWj9U4(sV&xUK*u4ymAi%z3V9_aalO*BCTr+hZk{grc z_o(J8k<;udRTaIEB6~n5emY~)5cF8-^C`~yQnV_qu(uVi6 zj#cbUUPU=e8lRe-dMf3FcD%mIep*c@4YuVV7~2E{Sy%J6U+q ztfR%h>s@HaPFqmzgz+)p)Tk#C#Ox083+bXiP>m!>@X>nFs#vtEcnT$`O*NOe`qfwN zS_Q!}61W;c?}sHCtk-m_n|SEAv3VjAU*#9#IOM`~jSfE4`4v;0jph3ft4H5jVf@T; z`=N`S09&iG;SP$|<3z`=g>cJT2Hur@bhtLFD__alRzJNB=Vod_G$n-a0f+}xX>I&^ zS4;pqmeWpKjmA=4)@>7qXJ(;N+L{IhJ)_5P52U?vQ4GktRDm+-m*JLD)!o@}RuXt8 zK#s#P)E}hY^h*3dfsFLX%WRKZbO{)U-LndARC$YPug4XPTGY@}$YD5(ir3$j5paR{ zjs=-8Dn{JgcbhKQcUGBS1U2pnDy&|{^Ayi9fmVrAUgUS#^rb-n;cAjx_?v^fyQ0A! zj&jm=VwckF0~z?5<6SsLIwP}rmr-Req2-gd!&z7L-@gZTzguqf@lqhHmVbQYL1Dx~ z$-y9yXPqd(Vycr%uO_=U@EdlCt(3zR(^)}$725HtW_@&s_*b((POkT!egbcKHhuwD z>VrITB9f6r6zoZ(A-r1lK4;Q;D>qI;5Rv#Oa9_|-lS9tMiQ)Q=&1Wwu*D)+thCeeHj{=-UbJscGwZ z2?8u`bRymmHm+*_Dz72`rETH&wy{wi|C}L?9wGNutYy&~PmGW=i0WKp%OEB$7 zn|3VjRD8M`L7;_E5~NR%87?MoK-)O%&-HhdifBqEl;+PNW#uS7qeF%LkfB9|?H_@S zjFKU87TLTq?Jw>3xZ5vIOXEvTk9o5g7xbk32UKs7zx zbTVlfTk*}67zag6!s`@zaEq;u%%=j_@iIYGtdUgeZeK2va5iJ_5v7|Favf1vT*lP? z)=+{YPWMTyY1|R>G4tx2q{q^Gr{}(j>_W_BJo#Es?kMMWf#qRzLiJ?Ck!rpYMlzwQUpe7wyz<9yJpPzCgCh4oKE)ZB~(s?^HZ~j6kn6Oxv~9-%SJz% zAaAOw?XSsQRY!3R>KQt40*S7&#;o3_I=JouhZUavz9{&N64#!7UCTR*pCbjj5PdO< za1_OPkTAV6x^iR*D&pYghN%rtC^W1Kk@L2O1qyel%cz4Y#$wqEsL5zRtKt>JI+twO zK-LM+sDA(=4i_4DfO>x9SE1hB(Au0~5OL{bpjuMM zUC!=H>a&vsWGC>h6S94dxXVJtewb!<|1k!I^Vxxbh{Tu7A)T8}`7ml4Sk%=vOX?UA3P zXFm7CD?J`0#_f0ajb95~IFBB6`4$dFkD|&^`HjcBpq=ud%y%n%zke z9NXu3amnLDZ2z984!SZOIXTd0V46;;>A>lKeHo_88}w%Nt~Zhraylm@7JsLzh0t2x z{BFv|RtS3G6NwT<^4K-d)|*;C`^)(zI)d#-Kk&u7p_80i!qK5v?oX!7VSL+$EZi1? zG4RKayE+ufQnDIkNy2Zu7dxzTbY;2mN z7Jp5PVk5OObDAhc5@a;?o9NTDvof+pzowAhly}?!$9r633poc$1d%8>$!tyLLXhXJ znw93e*2wqC3o2}%dt~TyRRT=X`93ELtYI7n48bNI;#;gV^30y5H_Qr$xIQD{o*Zbr z^7G0jZnj!7IdJmm-2(2{%VuJ<2?~Inx#@pVANl{InEpTdn0BlhkWWB@5eH_fu;Utg z`OAWis%>mM^Yn8I=2$mZHLpG9s_8NM`RFhyfep)Z=X-{MkP`^_D|MKnNQ|t-{4yvT z2nq-&hY$8J9N$Se#r(&1&BS=c3b{1M`goxw{?7HH4yHi3X7ZnfH?Lp4mtW|Tn_6%2 zNiV#Tm&N*FWbp@2R@0RU{q*9b7}7Ty(1izUnyOh^3TfTyC`iFb;_mq7`zkQSWDyf` zf9mkJXhv3%v(~hEA@?;sf1c1`0`AI4F!9px2tMGZmHc6uBIZn%35GA*@^p6j7}0bn zh({yxs&bU>I+Xmd&g&iisXl4{Z?PMBd?;DIlqE7vL4q1~v~fQaIM7)xqrfHi?8Nn2 z9a5=>T&X~D&?JbU9YNCVDf6WWY;v7&0SuV#bnVWJ|r1xc1*^sW);n3r2zw z1&az^*zn9}U7MY8PbJSlC-Tju&}cjy$gaiyyaV{P+Bya2D11D#qD;We1<#fbgaCfU^4gs|62Dpj}h8KlI$AaBr$e-q0{>SD>8lcw9C zej3wUJ1w&CRL}Qx#<9@+Be&S)j!0bPn6O!+=5iBZmcL!PdyW%U_#s`KN8ztKJ}0L z88`m=M(-8H5_teuz}bHGv)^~c4&hX}1MYf%E2XHdf1A;$W;28HS1vW;Ek!qK8EP5L z(U(=N*Pyw+3|Xw{ET zrVZXIrw(SthVLX?b4QfNvFP#!_p(X*plCyW@L!8<<-*Uz2jGf4%Jy)h?CWdJ)` zPW(Y@m0~aF=~yBZhrCVA2R;y4V@59 z#XuKfqXc;KEh_$B+_yJNrA++`c?*toCCM?8YKO#hcs59Z+hPt6i)UR^6T%s9vXNH> zV<#GPpLMzTt0>s_*3K8&ghXZ|ieisE^vb)}+NJAi@A&!Nx$b@jp>Gj+^CL!3t=g>7 z^j{E5`(?zP8uN2`l(?nn$+&LuzcjTft-~hh0qp1^tF0oUXT#zm>RHy?mH{t^-| z8G=tPDi@j)Qe;-riiUJq{5gz4M!h2=q2@&(qX|k@zv4|@=4)qTx3$^gMI~W!ijekA zkqNv(yj}l!Z!zl08i}6baW?KUU2G^z$~Hd2zhbq4*wY1e1y@E{G+bxq&OCQ;;CDy~ z!Rs5A=ioVq?Q#r|5uba|>LZV>pWPpIAl9H7q$d%W^wluo=2Y4hI9^9=Ri=IvL#?8t zqkwfP>p3uPVZZ16<57KA~LiJ-Sor_Zs` zYc`I{Lu|L(k`sgT*SS0_;}gO1-e5@=K5h+yHKPmlIGA1*Y|<~REMN}uyq`MHDN)HR zyC1hE{Pr^-u7KzWGwgLfgF1niNT)F(CMI;6`!ff-ct)#f<#}8{*pfeggseF0io8M> zX|ie$D~hC2m3M*z6ZJG4=mucN+P}4~!8fzQF{38$7H1-igZ4@HXG)P%aBcBQU*1&2(W6A0PL+HObj*NN zE-R8S?E?Ui2))o2vlIn~eHOkdGh*I+to-{aPGZ~M?M^!NwMDT-g2uh= zf`~Os`{CErz2-o;6OvR{D2|6z-YQW1FGq{Sbb75PJ102)3uU0cWEWDre6=wb8bMPS z>>;T?$kkkusxY8a1F)m4+&xt#PtF>GMu(lbUuh3nBXLhoZK^G<}(ZW;OD_i@sFQ z#mK&Djqdg+7-m~A|0#(HB_8X<3<<4?&M?5lP;1oW!ltGg) z3D#kpAM5i;UE#C0S@YEC)xBA*2!a5U4wWr*5l<{!I-2AeC$iy#ewoD)PNfIouY^Kk zM?W<*^-BE9!^VYgWwkIe0t-dJqtRT1uM!V2pSo zve02K(2XhmP^>Rnp(47MvkRtwDYE3P~5m6-Zmlpum{)EHC$sR0sdA^2RR~D`d9n zyw#@_=|B>pg4tP4{pv7dk^H%Wn!U5y!tXPQvRk_DVes>V@r{jk4fvZP*dyVCOd## zK>Pn(53I3$%P!~6xLD+g*^k#B2K(0 z({S&WH)BSI!Y`8eeAJl`d>NIuYD*}5!dux(E21{B_f+PTGIj*2t^EV{@{OX zG6cf(M}Sn_yw{WIgA}C%tAjU;4*~uVwSRnzuUUkP_TrJ|`5kXcYTu}l%~K#h8&DHC z2uviw%@|HoT1P@lepT0Ab`KHm)~0%#vC;)#$L_omHK!J-?|vD77xmTNCFoG)`q%8z z{Kw)1UlA{^m=I6a;81O*R)sA@1O$??*!`vgDfD)iy8U4z^OT!#z>3EXcTec=Wl)u{sf|pyGHA#3Om8TUZaiz}np<8dia|R}BiX@RC!F(H!@V3G@LsVOX4- z8W0a)$LTK~_eq#=?Yw||NX!TFEhB+CW>M7ANm0F3?}sV|0{LaelG7$Hq-%{x5aF!- z$wanb4AgUL4YEH$zev0m>~L6^+(Yvc%f+`19+}y+uI+Z@>z`yS0uNkArATV!0MK=2 zpp40(TvEi!;+}PLaSzbelb>gwVlkwov-HQI`Q|0qh^cCjR_(%5n^&U^7!3kdii1`D z?M8}6^_K26cWG>~^2@+1T#d`L>P`m2`?s#tgaF6P|KnA;+5B(+{vW^gg(ET$H?Gou zn|R>d5*I)8up?$<>p#~dPglkDy8!`-^}tRKoJ5e$rd_)6_<4&WCTEk9aSF!C&TVAJEQHz17&q_WZ z7j_-P?0N(w?F>Z?N6}0Q0$dAaH=A@WZ68E6foA20hmL;WIok6!?pmYpS;l~G6^SHL zZ-b^DW61d%Zt7^Kpj$0AsP@mG$m-57Ca0sJDZHy7^CM4+_Q?j@a?1L8w4NiI6D~c# zQNq$<1?V=%oL2_jcY8T7vy!Xy^_4&j+>}!vC^=&ppyW0#Q+4rV=~wIg5Gsi$&`0w>rVQ&N$dlR4;@C zltjU6kSC2b^%i>8`+hQP7DGE1W>ouon{i8&oM}4GGulO2%1RVnKM4K=Vt|1o)%ED> zlz^x)Y`-{iR5DpIq*m!MB9_4Ay{M|}z24NQM2OVbjXmr8J_3I1Az&O&jE>Fi@Zyh_ zUjgY@y9BVa$o}uFkwL{=#WQ)Jxl&OR{m2Nf%#iN&mJsTE?3Ih!upJY9>zXl(S8wLR zwh)3nln&xd!|vu@PI3;iURfv<_0$}|%jS#S<9u1AMEv$?%D2A+(hvv_!YsOn@JM$$9~XEFW6f^;G#y+AWRO ziZW4sB8*3n2h`TBZtdoa)tX}IT5w-QJ)$av6?JDXb0 zxAdR^7&crz`-vHayavhc)z_lC!SWXa&{~3sao4N9kz!R}2Zd(N6@NLm2Ok~9CkO|f zfo~S_q{Uh^zuFc}e?xUHQ&s${E*;IUMDbL2f8e{+Q8H+#K?hOpjQHAqFmM#WJs$~P zorczL4*DS@s4MKx>!QAeRmyZ$_4-MRNj_?n%)jwvO|GzspiZO_@>dntLVsgAy}=fU zo3UrXmvHF7A{6==@yYodk8g;SxSqTb8%Wo#s0MtF^>U3R=w_HPvEDw(B%rhmoRI@X zW|wkQ8XF`)II`Q;J?VXW3KEyXz16{dZ3A)b>B>44}jS>I}=k|EJEB{q#d& zNcG|jmPlXOw%%+kK@7WbB)NI#dCUIWbK0~kN~+UH#&`*{g8>rB0jJJLLGYt^BeS>g z&o3$&eu@R_g3W%)l5=8VdR(X?1fp%hKQsOPik}(X#(vJ~q(v9jumivR%tDeMRUF(; zsi(5R^Xuv|^2PXU*KnF7VzQ6>JoKUl(&k0B`sjw(cqT?YLEf@k_& z^aZeonKIaK0=hg&2e5KF6>*!R{O(tn@C~k?`0y5gUr!g21zmP0Ai%H;<7p7_?9JZH zghumZGz($qlZdh=ey4|E|MNGYQ@hzkMAA~&K$(aw&Axs$Fu8P~f%$bx#EWKpqw1*Nfm#>p_MN@U15Q)?!?IRnm|A94fa|o2oI&-m= zuUUEWK_^t&P*Ys9NvbuFdmFOKAasg15$r_^Hy{1k{zzJh?jJ5+@t}8{M-O{+(X5?5 z+nWnJmYl z0)1`piyfz&Pik#;-8an{jwLUKz5pKqg){Ms3R~*eHI3@d7b&d_u(R-TpAq`fs3rqS zVt1$V66T^Il*FFO589t)Y&1Us^@>Zf=IE!qH%DRkQ;}xZXn3g}|DG@I9j(QANv4#F zs^IpuI_slhcGLG|_QFM=9m}Xfj0X&qhCR?#tlQXItWAn z-z>rZ*nWXmg@mIcrqllT?wE_fJv!lRzxGTK@U7zau={j18l)yYX`iG)1gmw6dK+q{ zX;YI{lNYrjI<86sHLLu5*M8hlU&W1aqBc(n$T?GF`3T4@5UV93dW2k>3jkr%bBJ6O zCew{acFMzo0@?FSV=$6~H%Hv+k7GI2+`yIzHss|phf;91j2t0iibV=lvoD+iLTmsL z8k;nYnODmKM0){&E*TgVP+pl2uu80y(&#As_@S+J5mg446pLLa(vMUxJQ&O%l$Fu9 zz#$Ugl;>ayU?%`qj)$$DV_gJ+om`r3ZWG zW-{;v{+FBbQCu$)hfySd@C1(E00y^TN2D%_NnpJ>?UJ^rX%}o|Hg!v=7jhZ!zGFR3 zI?A$oz1Xb$g^s=sVWFW-$IzE~q&mw;dQ64dX-!}lml3QiCL;5X>3EV4na#cstbA*!=lu|kuWlmwp@3;Aq+e*)t3xpNw2}6+dsaq^ARenuUTP0PoCe7!4 zCE1pvwn-kwm0mr?Y5Pe_1{2U0 zO_yFboDQ?Rrs*n~-yT6+2-y*G>QoC%zv&;{0f{SeaJyivr2Gvt7(YG>WOPzw6c|0F z2H$clug7ZND#7E7K>R6f-Y;2K`=Gjaat+o>zDc*?>a3zp*4ZU?@*)q$Kgn!JdlMlw zYQuKtXGD9n(kT6T8-+gx0ql5Bor#VYLwN2#>Q<2siH8lb=~_ke|7I6%XzV{74Pb8y zQp^fDcS&w>&1-k&u^hrm${YQNgHou2P!LCGnD`>(8szlHM95*YT3sQw6hL#ZmbSlA zk)~G!cUN|$BHQ`dwAVZfcqd z+9)70Ta8yM6`xzZpFQ>AvjSOcZ@*(!{$lv7iFTBb)pL4Xvyl}pwJM|Kx0h}lJ!nCO z=mYSiyE_!?lzIhZ?jG7qFJ+WH2hoM(3y7z6RJ$!`dqT~daPdF^WZs1x9fVw<@GJJ!K2DLg>$fKK; zQi6`VhhXOYtb2S4eP{WB1r`O*D7?2>ASBIL4DgyKvf#P(tu>g7DsfgHoQGX%)Ga#O z1BhapHv#N~o^}eWAl#WH5COV3So~i+_Ji$!)xf=NTMm@|erRbytYF_Qg19@)Ad_K6 zUYx0j7D0vwYv`pp%SMY`>q`td#=6L+RgX*kE$}rfmv+%I1Uh6GZ1B`C_2RA3p7mVD z89T9Be#hvT*^K+rDkSn;l`UxfXfev0b3Liz`T1uOkuu3Yc%V{qDqOHz!cvwntNFGf1mK!B=dJh<>Uk`^h_U-2QQWhF5=F z*ddNF#o@lu7aKVrZLNxc`-?NfXkw6uV7_`>ZV}1zNsG=6F=d-20p&oA_rZY15pl3I z<|0YXfc4lwG)W8}NINWJPO+>3x1A|syn+Ft*KX35uc02)?&tfZ15?7;6WssB+&jit z7PjlUW!tuG+qP|+UAAr8Mwe~d=u(%fy4Yo&+21-@JL}&*$w~J9KWB1fWaJqyZcKCe z0ax9*uwm8IsEm@?4qB`_0^tMLk8fWkYwsu{v?*3}gmF=7kW&f(AS zF=LfR`}~qtZD9LXEgN~=XO4VyI|{HGP0FJkl`)CeroT*JOt|6dvw8i10Z+*!I4^%gq1&nz=cW%x60ZP8?)=s_J7x zq4y~DiZKY9=|lX;JI+N9ZzGUrM=PT3{Oy#iph;hNpcX!_O78~!CG#DrQ=hb<-WO#I z#rG$Bst{OMpvkC!#ALodx~Pnf8xLUX7fv5L63hbDUJ%w!};H=xdC-JR>5S}Ag2 z@_;4=&P$2W8E~dYjCSp?=Y}QhV+Q&}C_b_OEFz)SvCO!4$^aeX=_t1sFhudiwCN0a zl1KCOM>+j^w#^@OSTCY2=OE4IGZ+&@0Z)5YAI4AcGXoSS*h{9>w&wn*1|z#KE7BI~ zz2VQ#not>{)H69=lP(Dba>v+9i6E%szBsd0#62cl?**CJ*%DAZ#qTw zFeK74HJ<&-PT?wR zJ?|RAPQ#McwIu%|$eUdO@aaVQyXQ93h}N@=CQv5gfXcgMR}BKZtOL_Zn};d`Yb$A3 z0%QbaXBCRRk*WR4D4fbnU+7Uvd%L=y$P~y79D5s@h&-E@yd7P#p{I@Kr+_+p1kWk@ zVmLKg$58k8WtCl`y_xuk;%l0uVrFPn!7RoJDzUTy=0aO{t(Z2xk!pP-K8;X!Yzpo@ z6{RMGt@}>cHQ7Hy_* zOyruwNgls)Nve`g9v0soLLq8Qqs{yG##YAuxjKYeHL)*j2ZhwU}~W>iSKHoj##h(^KHnh=koT zfE{ya4dwtVxCYkX7e28j2rTWxFt?+_6W3tUA5AX0RcL1TpX)tBZ^2X=gk4A18D^Ql zi;%m8h-aEo8TQfE*Zsx2c5Z>6aYujAO`;WQ5PMzrZ?W()y0U7g5>)$b$nv^-!M!2? zwY@6uVnNQlVCPS`i$cTJtEUq;AbNO%jbGTgV^{(JcC4=rkG`yz%{-(ER#j9gDtTPx zHG9^I@CM>$VQ6F=xgzu#7_RQpS`Wq2_SxN~JB%}*#~r5-$ad|u9#8Z*Yy}MEP~>rp z@bXh+^2Y_YM~KZaF)-GGhV$VpXUQRt2A}6z@8wU=GccN{~ym zDy^=wpzr-{i{rEAA`bpAlZ?i@fNu6*XtBwEGf-r^;WV+qZh9jV0 z1}%u-;d`ipK}w+srUi@4=A|>KIc2zQ=;_HeHrgngxHMBHn@<|#5)#Kj3^^64&e#gN zFJnx8)0>Dp>fe2np!w&d!{^T35lBp|E~>BxY&%tA=& z)qC}QL{;#qswY?6S`?SYoFv7t!DWSf)KuY-c&OYBv2LO-ulGI>{qmtEQz(TmZoqq7nG!(&t;~?LUBn()TbV=eU^guw z9i=eSHthwi@SexIM^@N%fb6pZJa=4~_=ju`-Fffs3c_vjACX;ad82SP0K zn&n@7au9c|c}=-bnIgY~v`VYwXGQ5^SH-nYx?B$?TVL7?*ieHgDPAaA*r2S1eHMFkg?`XSnP1x&~0nKmA9i zhqoM@wL%<7H-(}{`~J1ZNHoIBQJoHC8gUwANaxP8IXi2+#Zn0k_aYFoH8}!gRmpUT zQp4w+!+*xfyi58HjY989mlGX$XiwEcj+}wB;uZIAalGOL_tA=nUMt z5fJ;SMSDitC?K0?soY~=W6jr>aU0njUqFZ!N}@;|kG9@gQhI@WE}2`*8@(t{)yx6RxB>N}&Z{=j^!a{X5gcr}*@3=}rV=$PTyBs4e@c>hT$B zNc-13Lkel@4DV=KTikic@(w)1$M<0x^2^vX7$(Wo!JlQUbI8sW)z8+|6mT3wonRrwW^3(gAZ|pR^Dhs$np^cjgbUS-=C37moZ?hK>15Q$_$t+`*n63mX?@i zACsKNb~2|$_yOz$e|dNn=~-%gBG`=H5n=+NB44AKXnXxg90c~C5iVkmr7IA>=hw3( zCCxZNutC7wTu7xh_WD-x1c8vFEkZ!#lj6S?=PnQpGl$AAjnPWcDC?zpmdyT^!vqFB zxYHT`!Y(Luf8qPnNW&XtZ=P!FD*|p;h&PZT;)3WLROzsF_h!ZeJctwS-^Hx|bHa+~ zSNay9q?Nat(<#%tj+;UxwC$^R zRt8W=?M$z^!e8HFMjfziF8!ny1q)rB<*`^{hT}}UtwV4$E>!~#EusxPVVjYpFNQgV zG6{SRA3WUeDhf`f1mb~E_^fh<(T|j#J1mX0^C06zk&Jaz6&#E);p8!)DPa|xCeJpI z8zfuI^6QsC6yl5zDxYCBq*40(0Lb7*040X<0L&dN5^V5s=)!!F^RUA0iDCWYMlSr= zMGEFrk|Ixj=~Gxqb+%T;iuX@k06P-H$F9du&yxIJT@rOa-qdR=Z;ua z2tBNJ7V<77gWOQanfB7BZ@@e;_**b25iK1xQ_WkT}+uKHdpb>Q>-MMH4dZJo2d>#3>hERLk7nCPj^D7K>>JNZ+f&I3dL^ zdi$Ur81OSE3g{Q&voQ|cAnW4&D2GD*A0BMT$#XP zUBlzB+XjTDL3Mg6M|T=2E>0A4BGm+WC2~g`&ORFwebX+K8Xp{_W0U?2iKnw>g^!_%HBwFZy0^|ouG=Y8QHq@HkYEj$$ zz#*5-ySVHpFYpLZ1TrKy{-DtlEQ zD`WT=l={3GNzQQBDfZU315LuuVwk}S0tfr~Vo-g6!U-y1faU9|67+)Lqg>8+;$0OB za?XaOSB;)qYBnHQ1A@~4>=3rIn2Iuq2wA|*{2U7rI7sXp@Mu)~FDnYo+z0F`xd=sF z@1regAe^Jw1*WW#ER#G^n+)z+9HKn4PFi60(nd z&Qbm!;m(Eog{XxzKUZIEP-q9bxm`Z-$3(>%S;VE$A0&H0vGHj#80qNwg*7`b;-F!M z#qcEMLMul%sP{f^)e)8xE2G4`6TL^)6W8k;Pf{pDanSgZDTyEj%|xtx+PZyXCQY|z zzsQ#vGmygPqRlUWtA;AbCJb%z%T-COkLhzF>ot zVcz9H{1%Un_phDhu@S~CXo~*%v6!pUXxIoOKAdhGplQi%^joe`iF4Bhu`PyGTf;TDl`+yi1E9dcNxZm`M2H9bNys=^H+eIy;(6nRzLB;Uo`i4zO zhiA9A%L>)h{d`wP5l!n$#TKgeB`csfRN}BZbaWOabr;y_uwQ&WOb?Q*o?}-D*urj! z2~53rg2m2b6TiEepGv#n#0&;oFv(}pE~^IXu_~k}WD1g8l)lqQ;q3Y6)!kFH`Froo z8EHwl9|!Y1+?eL9#W$z6m#;l=>@aRj73Pb;(#?M~hH-ne*1kCMtzD0IwD|7UiWVnx z-eEyhO4QkMF?4vOeI8OXDi_V&s&Dv}og^!|i796jNPlZUZ?}C4)N?*P7c=vXO-k?Q zXZ~*5X(`6#uDY8pka$6gAM^WbA?TwrCf}Sx=YS4-$g6Fi?%YuIyG_^0j8&Hi_^NQ@ z$cW|wjmh-ZzlQozE919U+CkOMqDM3|1sd0?Pj2)gsnqM{D+>~|b<0y<_PR!ON+GAB`uqSDJ9-ER4KmQHJI$u9@+@5u2A@MNAo=i?%qx0TK0 zN`vL(cF&D=PlStZU{TME#4T~8Jg!KXA<>l!$V`Dg1!=+Wiwjq106VtPas@b$SNwpr zFZY2wx&H13$nn_B@kGn{51ix7KX(ETDtk<{Z;O| zEt57eJMb|X;)p0wjGD#mJ3^~I1Yim=l$7J{t5FqLOOo7}5vw7@>>f}ISaTBRxE9|p z0v7_;Ch(9MEpZy1#0g;*S$Hp_UMj1}Q3gu(;_Uv_Ec0#{uEps*C3=>LUqTtW+2I_| zWu|tu<=pQY{B-fyJS_GxcT`~jb{w-sQDb#UMcmuzFvpn>R^^J$cTqB5;L%9~oo6*d zf4T#ZEQhReqEX3K474eys~=U@oHrL;FST(lPZm6lv=r@?i2Sci$QajL$tmj62afUU zN2JLwxMN7{ArPgZGoPEe9`p;sOA>&bk_*goMInqot^L>6k{xk&kp_sxektaTXp>di z`c`;9c8HDftNft#bCrKp#B7C~B0MwJt(eNF>Zetu>!2+}dCx@+T^gnaDyT> zUgEy-qKlc6v~N!e6mOeZV(*$zQl9aUu0y$x$vS>-(4C0>w%L4YOwZld98H%{Wba%BoN9>o~AI#7w4l7E3aWcg?BjVoGnFH z)d3)9@zP<5AU7z~n3QAF^zcJCAqk>PZbXy-9AwzKpGqkT6p4nscej}fwbsAU{@sF? zivRHfvS`bZdfa(}5I>r%9&?4clHL9=KP52*GwFEUgJn>|C+9@Aq;6juZs%$+FKwH_ z$BQ{|L~PVl@YZ+m9Q`l_I`K_u%s+!+E_3twD&RA|66oTpExn2ez)moAKap|<++uxr zDP+iT)h>9OZ2d~HhsrPXFSLvb@m`P&Uo!0pW!j4;v01QH~;(O~|B*A?8sXspP? zcb6}sO+PMd+55@lYg#PHl7el(No=u5neJv*y&dfICjI zAM$BhW3?`r5nsW}RcNC0SecY{-B{dP=Qkdgb!7YR3cfqSLK*@Y5)TQ^arP3@J$#TQ zz28)&f6^g$AVj$4MzsU?kbw^Y?1UGqJ;8$n7QaADEJI~=FfdwxE+J89&`;?$!Db6{6Z&B}CiGHFFd?dy$JLy7 zcVx!ZmM4EVGc+X$Qx(4&YmD)ckh4C&Tua66S~@l``zD|b3lzk%$7oIrs#Ca~W7E&? zI!^0Yxv3ham-Lk-#i45ZCOMusM!QO#8To476PB?K;w40Eh)OUoYY-!Z%cFqQFw_Fr zk@7|)yMvvs@~q=Gmbqkj8dCUHqnVMUlp}Y)5v$-oSsI?d7Kg!honM&t+2o_nH&RZg z9!?y!BSIMe{LPP+)jOPI&D-eu=C&{JS8hV-v9fmdYompy#Q`bA;1@1q6~nx&=1Q-y zt;VzMoZ_|2fuL#mv00FmP+sUVJWsj)HunuI^<$@p@kU~s=**j=jFSIYeWuEk3p5(3 zgjq_EU;drs%IK}d<$kTVi<5x}8IXSD7aUiI{Q+P{K7h%wA#*PJOJSb865poS3GvE{ z^{!;SmTX}(JN05ZUA=cfgnyZHck7j4-Le*{i+GS-Wv(nb4!=P@)r!Y1%^7gU$wEh3 z?AEv>>jqX8MS*Y9TbA8m_j(^gS*xk4+OnS!Sg@r>wOf>i)rYPgII`A)&}&dqkZf;v zZMcG1l09i+MLl^4mi-Vq<8K`e4pL|i)5Lu99ULR8eyZ}~XkSyB>frKwf1eN92k5+* zRHNU_k6)ew48V@!F)ke*9P`<~YLh_1Fd6K1NmR<-s^K|%^8o9DT@m32(oGM_3QIxj z%+g-qZa4O+OwBRwNAEHk$Xybm{t(yO6>%h!<2h`^ zG?x$XfY5&5n(@2bWlMp%4$xPmfmWqS3oizrKKo0){f^Th6^golIVh;$bCG2R4*{su zIjzKEQuKgYWkw<;Qwo8R$Eg}&j`hFJ8?J?;?{VZq+J+D0l_9GB&O#0IkS{(^QjIv8 zqH-clLY5Z6qWgUtPpzPX)R^buEjyaZjG4=HF+l`47`^p20{!U=qv;w=eMpP_Uc3%J zavik~PkeS#4?~LQNN73(Jr?vW3F%#b9nzqlQw@*ng zDAeTlRvwq260rCCTZS%tEK*N~srrdN>|nPCy6py%i$a_82qV-<2{b}tZ$PM!H>S|< zW&c#GfGM!*=cdOnq2GIfh7EIy<;JK@Ldan51&elw5H{u!B3aQ3B{O1%aDuF^{Fmj8 zK3=9YF@)%WQ6q&Q=teHzDb<89bj;lLjVV=|vh!n82{&;z4cc*hGJqBF`1NM?3Kc9g z;N@NjOPZSDIfMZY?J|l_tqLSyatBd-dKK+bN4Xy?J_(sUVfmqf*sI(%6 zLFw|YS#(BY<79()aC-byDa|rd*n)VhgO5A{x{?VcVHNMBCsI>PECVy-R178$quoYu zLV=@hF|wZiXUqBEx&dSQrPaN+wY(SWLd*OX9I5_8T^J~aM%Q|xgs`i*^|2bai7PCB02G!s z?_d#yN^HL}cjqS~gwodV`Fgjf5ppDCDgmU%9qqjM^wOl(5sj6m3}K1A6?#}T3uPzw z=vxN770a}jk!aKMpS=0GY6?!Voa1gW0x(!=8V6zQX7!49>a6%$Sg%^iZfZUbRy?(Y z3j%hYYPIx#S_n+uu^#`~>EBTsWV9o1+$MqIUV`cT%Z9&f=6$xiQ^5S1_pX{Nt9TiK zSd^!2|A06qCgIp)t782ynO45%F6$MJs#1*+sIN!-8*sn!NI(|6crLvUzc6w{{scFr zA4~qkoP=JG@KOq2PTtue>D!T?WN^jj&I;xjX171UaDE47+9`9P6knp@y2m>e5zP6)s;!z%F9PPRp&wz*+cvGfD&*w@QchcEF_riYiRn93ws3{LH^m3B zhwPdS3gtnqEdbbj^ttky#_8m!0mM6tP|@UeD;pKXvKY48gz+8s2j`-39Hpv`ic5?F z9Zep6f72RGxB5{kj+nAJQ1<0aEtB_H@~`wnesG3>7>=<91I`8TS{#og*E=Qf9cLN>1r|IBDYB zHqf2noP<*+oOYmPvv0IoO)ob))Jx3h{H^OCkJ(@wT;l059%)Ix6$d7UDUa4{Y`Gf5 zVk7@s=Kh}z@eL+4oaffJ<$3i2bOj%czhTS;LqWxu!N7LZF?epF@9K*?ZO2n<cMo9z68qo_WHT%#u~0xhV$ zFt40$9bwwuZI4|lr9hX2Mv8xPENZSYc6@}5G~{;-_S$7CN*$^Ph-~)+Q=`+uYpMnW z|HMul9~FC>&c@uRJd4u3kuI}Oi^E;;{>Y8K=OL2lJsD>LDo{CAd$yHgxdNEkLGbB3rW=unu?%8`=W zsJS|=&rv>RTm-@j+~U^sCZEB@2I3!gdLBw@_3b#Br6$cmg=e*t+a;>Fd83Irm;;Bk z0)emhr9fb8Bc_?=1o>0VBbVSXfH3ooyzT(uGKjtE z4!6}I!?>~JT*>7vjM~%rO1T(74g{J|?^Oh-9|+Eeme%{X#J88O>r|C@DSThwB~eXB zoLR{$Xtp<%$Lh|l0A?f!)BjyvniQ+e8X#Q1k}5T$=c;^CN@N6a4YaYp?% z-r0>k&B|zxT7?JxSC0^^#(#Q*xOG?mV+JYsC(1kH~_W)`v1_|n!x9C0% zZdI5+QyW^fr^7;29VvHuTID$kYLq(x6Oj~m332!pM)R$AHyNe`Uao@esHi=B#}VOU zJOt|In!#rsVYvLztLm_y^6^v!&qeRUuzXsPhVU@+YAZ(a&=HVJk!@Dm^)vF2%l;8e zto+Vx+`FNjq6<^WuEHIE>?f+nrd6_-dRqC&H)An0&{79+=d^UU$5ETc;+0`jK}UI%D~G2$K?^xSI^#!afXWX zoRadQrZpwCK;+*$9n3*phHcxHy;%i;K> z|D=zU!p`ZM$O;4KQuzV;cSsP&|JJ4c$0u)G^uHvj`BUQP^xrk8>LPvRJ>jHq#p#+} zHz{ie<4Fzy4BPiXvVyIiKjc}`V5+#?Ft@$?SV5ws#D;zxyqiN8-`$fkk)ExV9Cz86 z+=vOcy_|kBIrE1d-y02+Wef({U1(DMUX%=x)KlRUnAXqR$*-&)T1H>Tp*;G7K_hD9 zQpS&{+2f)hHnk+ehvnB#s^d_w7=;hfTVJyk4VW_oywP4qCsWGgAGru|>67D0Zq7YX zbF3=jO@!=D@j(a;&yQKB>ydvLsJVmpg2N%FNI^5lQJ;S4=%O!w{ge_DbEQo*Tk6)u z9!%d=y7f3TJ`MBtWNiO0mm5brPRK+pECH_-Zo(ftUWV@vQw4F%R7#*?w%qVB^ z&K|7Y&gRF!1oLW+ydC>QGfcj=tMHI_j}mqb@wgh$&2qP3x#L%%%z_Aw_np9{FFV9V zzZa_3zsW;Rdwx*z(tM<+*%^}gCGGX$k!CfMj2Kdz*wCY)`&rLaN-4-WCF#WCj)fH6 z)b`>8wJMMPj21P2`DEa9sS&lRY~Em2Ptba0z+uMg=aubC7+~8Q?R=yly$HD8P}Al< zTBmo8)mCo}%fyod8!Bvlm1VpGup@gR@JT*#STq7_qobjoqlifk@&nm1Lf+GO@<;tZ zr7L6~ot99zUo)@X4kyO7bnbQ&vk?T6?VEK=3$!^Eg0I~Uio#klU+-)FlNf$2e|)_5 z(7R+xru=odN86HajhRG<4GswcmtLG08?68X{bUmaK9-FsQEv=+r{wdZQHpIgItS2wo<%c& z9cB3mRStF}47Ui#jdSSO(oT?N;pN-Af; zuVyNjIfCzD15=~rx|wD<)4&!ii!E3@0SH*rFZT8!1< zW4~DMFPj^3a2LofAW8c|DP-?$Q(1(?7eeLWq5{rwC-tBeMVPN;wSOrz#gZ19otwKx z+AHnaxPzDFt^?T766pI_LH&2Ix8MDZ*_wdE%u&`WBTX5D6^n0{N*Kk>=W}j> zUiyV!;x+}j(Q##nmNTptPv_nx2?!m=^XwC*t!a^rZ6g$&gYCqi0oc)0LEYj#bYn5lSVjg}|%UIX!evH)kBT}Q>E7m)hr?7GhEx^^uV3C?XKk)Sqp#{b-T z?1=IQQ)RjQbb>k(LIbk6JC6T_82=9Xu-~zaTx_*mQDwiOxhkQ(ov~ zBh?q-7M!bRl9|dh?$`xH8-4XtWPN|<`pYumGy5%?<&jpKG1LoC&o_~uRnuT%5miUD z^fNOO8~*t~w1y)4?NRniVfupTb|R_u550m30)PJFV*BuocDN-0d27OC%MHaw%*8*g z8>U&+tL8Rz4jyu|G5#4&(Q?#14u9lZH{yYQBcl zlT#~SesbV6JydwjIRiPFnXrnFL)_b ztEZ8k4Pn|=KA}SSp5D?(5O#Phqw_k>R%k#%C zTm_zIq2m}Wbi19zq_#@V@V7Z9ueIkhZtDHGEt4 zdR0}lTaBi<>Re@Ti?NkuKD&#v@rjpU$R;MsWEZkGoo}>S^!R+Geef&oW*&35UoUPd z93v61TPdvj3Mp;w>G$Tlm4pYiDmGxL5qzpS#o@PrCvPL6OrxILE7b6=Y zQ;xJ$dJ1FHMjsH1iwer;|FkaR^b{0QseIiEHO58TqEghjF8;HT#!gkvymq{Q-t^I zW|u0!`;Looa^5n**{S3knM6T%3fu6CaCeyJ$i#VR#(d2iN_fqWn?*VB%fS~N2Q?_< zAU$YQ=drct58rk_^-Ot0=w}6YE%X9gKtv!@|7Df+4V8bF`^*O+c7nt;>p1zVI|W}R zpKmIgg@uW$X0z+>#2t}^+rEqf%FL~oT@wc3l2RCExr_-oUH_#%%at4XVxr;^lHXbjYG4h zq$he$J2l%>q^5~dpvpkrD^fjjEcUygC%M3Pn-;KTr&B%kdS*FU-KjM_$dIL+tX(5` zHv?NKXu8JHACkIwwRS1n;6|Metli=RAWpbJFxPzjyeFa6v0(@O{ybWJxNqrZ7YY!Q zVX%0=n4Izev`FHY5rcB3LUyxBrmGY@s&fFoWDM=N%Ri)_+!CP;-{<^}5~ zj~4O<6;Sq;L!(kvS>}LfZON3zg5bTb;!-Z8ol$%pL9^qQwxoXQ+IFqSmvY!~Q7JAD zC~eqF6ynvMEyO${YYUd9;;Igc4+06xlQ~mg#tRLG2D>K^yo&fMP?xJia@{;zIeGIc zUCK;SR4oFvhB@Dm!c7XbbkG{iWltsCZPJ|5*7?BinMkoF?wZ;11ul}WRCEBlfYtw; zk^lQAEdO7BxsJ2MHfAX+acDr6OZ#WtCVdy!Ok+YU&~Vs?aHLb(Df5M{?nSKShreEj z4~}Q+u!CZBihrZ@;&3u`Bt%%bR>Q~bzyWkxJoL3_k3Svou;ERdV3mBj_96%~6X#_1goiyXv~DtWMjnbk$9oay-BQ`FBJP}J9Ym* zks~yO|2bvKMhhX0oUB9IN}brj0vSMpTC6BIYxZ5)a}jYBm|19#n8)g_3qM5V=dd}` zAS;Y}qK>@HqMR{KmWLs@_J&fGm0V@zW-j%|LZLNUrxDAJ z&6Z111)HNUswk(=T(11I)M@A%mO(^+0y{aOY0`284Hj;EVzQbVETZlnZYKG<_1y)0 zoBnn7LLyN9&u^0#GT_^k2v{os0Yd}6&A`C46O zg*)m@j9IyXAHimf_G^r3QVW1NgY@KX&y!dsn4o}Fa2ET1_KJ?0zaH9{a|fpw(j#a) z6DGXcG=3HglSeJr?*2rtx?@zv#hq6a6Z;lg_$dpcw)@^K@&!{kAW;{`5jcP6hy|@< zd7+walSApbu+<|dFHd?OR2&a%zh+yI_5v9@8G-w|B#Z#<>nAyx)8x{Equ!>s^_ba! z2Gxszw&XOE1Mc5v3mG?V3hvqZZi@#@jflEssSC}&8Ug$0=x+(S^z-1|;Z3lsU`GIU zWTEDd&G_$uQT;D%`Bz|KVr2s56a{*>{z*DoF8pF@fykTojk%MP&cCO(q2)J~4i=pX z^!;7XzAEA7DS}G@r6fTE&}eA8uuMtK&@aWPiSM|qz3LxU`3?&aa#7Th#Hg^>LJKN= zW&%I~?v})&F|h*b#5SRVr{Mv-seJX9g}v~O?Cq}b9WMSW!BaM(gs^gRT@~!K`64G8ge1Y1t&v}Q{eQI1*&2neQ0 zDEzc>!5@>+wyx{t!NNN|h08cU?O>8dV+f|*tj-MM1 z!9AJ>WKd}<=CZeU*HhDLaiM8zpfJdjYu;E)h)YF$D9`{(a&#-y3VvXptqPok4po^w z&4Gt$t1YhDnGA&0yVt{rZ2aNJZgbifn@dG6LrQAL%zt9IC?2G5YyGvRJMnbjs*q?=~0SsFK;gUqGD|9+rG1yM#Bd6ufTg-eUi;!DBqz zVr#j*RT$oPQj(EkPqw`_e8C|eTE8FH+VgYO`(^6*_sABRP4JA|Byf7%)L0AhKe?U7 znY2cZzw0hBLbkDg6K!W@dKc1FL#fCN&ApsY!*ESk|%O9`uQ*DyaDYkBe z7HTB(OluoWogmsF^B#|MqOcVbg$H#NCCTV64@V;ZZO+!a1p4SvGQOm2O_2^R(e5_%; z+>SZx67eLoWAj~L^S_^fLbZavdG5l+C7G{v_)@(OlVQ@?pR^=D<`VkBOEl1MlfFLR zuzpwme{ zgaylq!Rn@juIxq?uU(o+Et<`XJBpve8jP4 zu7@$p*s8Z+nS&7tPO9rxY=53`$v&Bv$_x+QYX|+Pan%MWv%|0^x@^Z}+wd&FdQ@Z~ z@s)#t=&n&Y$)1K0Ioxs(=dbtk7l>6DZP;qsj%v!-F{9ZIh?9%gvig?z#(DULoxT%$ zhM%?6=_DEZl2wR|^xYlFXvF~RIKj`4;dhxM1m0E4mQDg1yfPk>vIbv^s`V2QxATlK z=G&n6FTSDv{;4&EG~I#RP8>ydP{`*5&~3r|7js` zyF9!lZYDh5A6worZPRl^!4(D7!Sx*BYRr(47|v7ozNe}Kw7*Uf*d z#MwQFyH>PX3%i@)R(eGy57#aZ*whpRx1?)SG)eQza%D8Fxaf-A`}~o?8zFgRV1$YF z<*|SUu1Q@Qymqbwvc=U63I02ZWIex$C14(ankrcMwEKC$RUdwEmSL1^o#f`>Ls?k-g*8)d3Sh_M)@LFp1sV3dTw1E+jjXTo9Qz~I zrJ)IR3H?SEBZ+nof(<5He7h|-czT!g6@!)|sI)RktxZ?b^tyQ(ybj_iSACUQ8f5U@ z1sn_Z=fO+gXm{IMrimi!3Vt!A{SSUSYxxTt4o3$B+&FZDdhfgaO1?>>u%@PNv7P&w zC;xg2Ci?kYzv4LZrvcrnMC9OxMcy$ySfnvrf!+;3fAd$z(mVaW$sct$TsGBz{SKiu z8*0j2sO|aR`;LD_&5CTv?=gj(qRnc2Pgvi22LrlMnDOQngv5aNTBBbYtHkR}Q#rQJ zoysMsLpZkSF1ELNB)U9}1rPrcw%-|lZQq=6vMlSUuYOllGFa~JYs)08I$f3N!FaY3Mn715TPEh(Z2c-A-}PuDA!HH^Uof(BHqf zVxz3`O_KL|5Vpe9Rx@4s+UT(F1a4LU+vw4KOrRDuptU*e9&;4HPQbGf=gmh@j;T`k z>R4jF8)ly^39(%|W3{;nM09hv`eRZU22Yp*)xi47)$xzjM~U-7H}%U=fyao)Kv>A< zvCwEJu?42rxy=pz(HLbSWu?y93VR!lmu_POc(G@9&W=N(dP1^?dwZ{lIy%AD&X01i z_sl$ZPb89opkN+Xj=*V!i?!=mM1e-e_bE8(h4za9yjtrIa}1qUP@)|`jD>K?fsI9l z61*P{7RjGUGE<93c_#s`4Fv!@A+!r6YC63R;uw^tE#3z1gXM1xo%}wKCtr3m5n}NR zB~2Kjkn%HKdJdoWnHlKDuiL5^427FpAra6mA|rIIq>Ds4Y~gDR1?$9pq2<5$eTIqJ z?;GAjnQ)^o!rF%HC+R(>!zf!fW=C}B?q$^&md!{YS;c5P@y;0X>{tl6W_oklJ&24k z3XH#RL-ukZi5V6}V!tLc)na!^YE=bWs)Q-puKUY&jBh!XHmyUf=NUmIT3pAj>HzFW zrmXJnm`T`EYm(kQ29navN$Ypo&CA4ZEXZq%;6ABQnA&M8C$isLiIBUqPqSeBEnNin zJbi|LN(RJbazavX7alUGM$>}uH`zpEU$J^#^yyxaEV+OS@crR2bR=vUeb(&9>#`1; zdO@q}G@N4?D|w}HT6lSFJ^9FIATiq?Ft;z&iOGHj`@qzsf{bBEH_Zi6V2$&ckKOr- z>Yy*CoUt`P$Q7}?d6!Bfk5=znm!poJX*)5m0N9b~F2cyX3c(TYv_#ya{AUBLVEs)L z?55|3fG;7^b#++ck}A~l$yh#Sk>Zj`yp(hmWNAtEZ}a(PXc6hVbEjS)jXhCpqgD!P zp!*JU4`{I8yBm3Wep9E)NHJN)A;2xvv!OglLi2aR-uYsD6FXHi5qSV8zsz>u=RRU9>F*l*N%exR-5m1MOjwL{QSD7H%KKy5qQOhpQ`q9 zNGi=$EKCxoO z+;h!$j4`u7F7*LH=!8h4F}}zf{h3V_qPC7TM<92Zp+2Bx3-Cc_Yap%3Vi%!ebcxk? zWPOK+&@hKbvg~tf4;&tOe-u<=R*A9Qm1SEib&)GeG<3kvXW}nv+TR6NBe8!LUC-8g z#-9z-{?+o_iH)~fz8yJ-xn>OM!hl2fHJI|&#V*;4P`qk(j!vN{SQ{1rsx z5b8hwGR?iHydQx&=kq* zqszKgs~<)123l$-ojg}o0gvofKK4ctDLZq^T?+1;N3-<#AdTu+=jliIpvWEMi;63( zNj(A9;}zGsJcd#B!0Hvzxz+-2Wn1#P>4fpjYyyw`pMzh=nFC6D`<@HfVN-!EVfL@r zi#WGp{Om`PLXW_&(JH#(398D)%hi^^sR65vN*;Z)aY+5&M!!=}$)2TRg>7tci`09j zA?pMRXX(e$ymfRMf&-D-Acz8iY(%j*3Xi#c#x$F4aSY2KgtKTOugz-<8ZR;` zmo9&Wjs2c%m@f?ys2O6q4{hG!NU;gYs#DRv=kEG3*M9TE;EC|>^B<9XwMn240cfH7 z>!hW3EDfV=1U`zlJnmaY>(`0vWN4FNF_0B*(8uT}JJ*GCSs1dxUAnXW)4QS^=EB(S z=i@B^J1Uw%=Jw`eB{z5~9~CGW-Rh_-{YBl{Td@`_foL4Kn>SPF#WkD9i2$!jOX=ia zIX{i95FDCl~v`Updk9?hPL)oqB^&AHN zxs^_L7R@2Zwqr>)x@y_e%FHVm;m%T-#0{t;yFOZctM2`!5(KoX2!`{nmvcwg!=I#F z3p<|n;Ac395OH*ANzK{muY$`{Ea%R#yfE0c&lVbdD3}OUfrAQ33=8 zGAFFywough!eq)Q5#zb2kD(*({&w2usy;C7JvKV z5RossqLZe23AR-MEq}(ux;nvTPr&I~RPZ1SKmM+AAhVZ`c?N&IGvkt8AkH)n?h~EV z*~>c({yBWM-#zf~%M@$6SkuQVze>cPaYFn}FHk!l9K z99QaPJaazfPc1O^kZ*{a!;~_M3NJX&Hk0twS9?83%HB%gNjY&-4{?GNW_VYV3!FL; zF+Pef1sd0C&!YLY#46H9UC4$)UQ2rSIC#{WWgma&eZiRx!-ndkg2S+tS;;tS`)wBs* z90r`A{!!lybpK__8hgLVWq9F3gMKyyfE}}(8Ruk={UWM~$ae?4{0J#6BxbaHoR4xR z&V874ekjKE!4O+|`-L?dR{m#okuqYRU%UgVYUSR=)kQ^iIx`>Oj~PGfk80*R(3K_Ph#|ZXpMm&B?V337 zNFxf1u0zKv4Cu5L+2uAuC(!0t))hxkH~MmmxU;1Y(DkS(DuLN0f-@6l?M(xAjFSZh z#Jej1JC^5VVHeD|orA4s1q!qHFU+IMdH5@|N9GsKdIgrv?qHMxvx)6AZtA!4l2}*1 zqaZdQO<`<_S<)V!?$PmZhqwD90TLS7;sRzmBIKo^`c=3hAx!x&N6w42Iv{nR zwypzWRZ+xtYAYmTXk_&M%S={chd#b#QV>U+o-#`wIhu}#w>?kT#!NA$?;!f=@x}xN zr7LYOiy+lZ(WOUYVPhGfXwlT0Fx)jkTbE=iVoDq5cEV8xK zV=TMN!J9vh=0zkY9&bN1wA%i69V*Isy~j(dZZdv=3m%nMg#nqopt#3T6WG5eRJgYYKj>vUnDd`=Wdw_!eP2ihSNP z(-uv+sBWFI9ehm1OfJISm$|9Bzav1FPG2=KEup#+FzMZQAJ2{R{)c2ymI0T}R`0P3 zW?MlVWqH?dcv2JggZc`|i)&>_qBl_7SVJ3G%meEkjlE<=ZWRTI5z;RX<3=e?h9E=B z>a!EWY`)S;1hqC zA}M(^h@D!@+IoRu@PhGAIU@R{ob=G)$@9C&(Ur^?dPZ?FcaZ$nQuBBL5mqt6zWzr( z)vY9Wr4<$8Ggs5WW!I#h5*!?cG%$YkxireR+K_hrjVQcHQ$o>!7Vz7XBV({0@s>Q@ zk7(_R)9^Wk&S4)VF=f_>mfRUin)#`206X5m9&y-s<5PlUmGMH!8=oa;Tcj=9YrK@D z@Rq%S+HX%yH)}AGdh6TH)K9qUPg4FS@cm{m zUP@?2X;Z`(bWWe|c@o(nE3}Bnb5rB^mGdTP&Xvwae_c{nx+I#XNU}@UQI?UrA#CTN zGFH0UF9_75$GAQ`=2~=Id6)b(}Wd2 zQJ`A+$Mo62wmP6^)apYpjxkSg73-sYFEu`O8-s{JCZ-K&#KSke^vD`Z`4 z)TgoyApeTcQb16uH{YK1gMQAe&d?3r!ntqaY0DSSLLY5B+fv!U7IDRxTzELvUcC{! z7JZ%vC%ar$at5~77fGNiV~GW!jE%n%kxlLXnHD-%%x={-sxu?J+pJZ^c zXb=$8U0oDyGDuw#3K`H#LNS50aWBTFqjO>WiZ2TV=d&+p_FNh&Tn(2k zB``7m(V{kpn;#slbSaVTNKp)X1dFzYmK^?|oj|)wU%~cOU1DO+Smk{?T|ywZAp6>! z`SWoO%2yY!ou<_(wpW^MRy59VpFYm2O!OmLz^_ro;|pej#gc8rNrt86-<$wxjXiil zH|0u&DX!jQr0{M#SK?O1MPZ&CklxumtQPp2+)i)+=d2ZK=E3Wmr(i2D+F->vVZ2XX;OpDcLOQ4!Dx1(@3a%mg(KA zO{Hqf7ghht9V=crBy^TCC?X9PIWW|8HsoPuV?E(>h=bM-f}!M5)KEfs&q-c67v44SqTA(OD10qvUpDj7l|DR(LXpS^ zFHC=LGPMjTFAFuuiSRrjbxW&Xo(yR2M80rGjL;R8AWqh1{uc)NO(ir0fjLf*kd184 ztvn-^G3c7#(Pw`wRLG~;48j{0#7V_c4_NZqLb;~+b@q-i6X70n1ZV4>3NDoR0`GOL zo;pea>?rUB35TY^ePA$8^Y}v6x7NQEOsR;<6W57FQ%SlBrCIe3KKVVCp$^tA6Mok4 zBz8A69tnoJItBQDYi3bVLX`Vl2=ibApVe%AxEdpM@D^XlCK5$1$S4QHF$Hyb`5*#8 zFm2K@(>#LkD9$xtsRq{L(eZF!b`I|kUrg60nVk_2M+Zq7n`9Gld}ArjyNch!wcTI? z+b~hP$1iU&zit(C54|G5jrJ$%XD{Lqb8BOn2CtvKBK-5&phle5%z!KO zV#NFq-ccMU9P9K@b!1xPFg@_yJG*As!a_~#LT_q46O9xW7=7CA676~^L-fRgt4qWR z&ykmr#=BMvJeXG8nH?_e@AWUXnEuN3lucP1_cNS(!tI8)BP$#ky2NCiA@X;$t4nu|YL%+W}ryszMMlw!0!~&5f#@X5`hM0(qM)8MHcEp#f7=Cn2uoTGrcc=4{ zYnZ!CjWIFyujAHk{ZaWZhr>W4@F0m$dKSiC&#%B_WxKFTLb}atT1i%QWDa&aCd^C0 z*+Fb;y{s;7DQ%9!zx!v>8~z?OI}^!wt8iND5vvr)^cN!x1z&z85!pD!tm?QJ-W9zmUqzYRhD?nse84rs47Slx&qkIc}wsv z@eS+qR%%p#OH#z8Gz4YF1_YWOB2HKLFPn2k?Q}0NWVCff-lB zuQ2H85*~l#+4d%h*F)`x>N;SHVGUwcfLpx$w3Gdl8Py-vgZ6qbsXUkVVk6eIZD`6# zHiXVY{tG3bUpub8*7tRd*r+A_C>hkqZELs3Leq4zM*khewD^OinrUq$^>?)MR2K|X z>Tx7={i|;p5fo)YDsk<7-lminHU-e01b`g_g!dvRw&qXjYSme>N{FiR!y`uuTg_L@ z0M5JIZu-ZuxRBe;hooGlMjSWB^z|B&A6lTr!Cs@S6Lz4amK&A~IH$eu?C;1dc~~~( zkW25ezOFfrQA-?N@4cw-&FH=crgv?2C3Ifjos%*GLxkpPw?(LFB$tm~98y=eEsP`P z$5vn!F$z>oyZZjVK=LFyfBk@?R(`Sk;s{UYa`Lrc`n=KHrKK>%K6xhfQVQC>{zw5a*@Jn$JdROm^mHh z#Fx(aSeu!iZJbx@6c{7#PNx)$4~PyI31K$QqN7hzvE+9;;#N#vkNeYRD>XaY#r+zz z&p&(!-Pa2lIWTS+X#OaR;^7#JyFWDkEskq_4`V?#wKXk=*cP2QFfkGtp9@ki-9Wyv zD0M}HY)zg`t*xJ+?WDuKpn9s%_&c$9e1`V{+{ER@yoMk)0{@dWAf0cdm(_t3Svx&s zRa?;{bf$EU5qK5a^yHr&7<*!m!N$suRauHj&mct#1%vA+%BtA|S|;+$8U@r!6{&hf zGeN9X1yZZXWFeuWFxpaL-iM6pIYvySOX*K>IbkecT0F9cA*tHV14jvxztX?bm>yL{ zI{3-;XKVePcjWzYJ0a=tD`cw1%*=91UR@9MptpbTEoVF+5t8r2It(@^H3~p)^}eJxfzw4o}j)4Nit?S$$((0a>=#o!>^wV{a1sN zqBGrMJo%;Dz^jj~;6Rb5E*fGzEHvQ@`<`P~vkc2n(c54RlHH?@31YrPn+z8Wy49!^3xn5D8`l zVkdN7G?r0nMm)t0j0#{$|7F`%sapQ2Lj_a$Z`T*I)-bhxd?3ccyxErDvu#>NF2=4H z<)rJR-aa4W?~dALu1~d-u9{~CV8%;~D-yLb=yH-IfkT%(WcQa{>B01n!<8nXwR#~h zPQuM1f?NS!moAcB2wSAb#(hyd`DSJdx)?nM#X^b^N*`!||>5tqRX{ zU=N}p|8#nI;fkT=hEw2))9E7UQb~7YIJSF&FW)={`gPZ>8(dk3RBuj1-OeKT`?*9b zAcd~MG3N0UD6`LNL!g_yL2jtosecP`2f}-!7|XQOu~|9Re*Mhov>^)reRXGwjx9}3 z??ZVNN{0a|jQ%^AAmR>ET$d2n^;XU}ty%e5&@@w%cxh?Ul}2h$-KyskQ793hzA%Gp04*Gzqlb!)%wr7Py<*59&O7c1QmL(}LF`s^+p>ZuehsNQ?+ ztPWcwRj&qLv!dYRiP$cYr=Vci942A!6N)saq&rH7fqW7Xo}=+2tj7mff1pYl-r^0WX6pl_`sri~;>1e^ zsA)$F`(=n>Shwk?Bd?I<`s*(J2I43?Gej$qL|4SNI1S+m1Km?-@7P}m_RRk@t0T|Y@5PXstI9H$x>*|Cm#FoIhuU9qVT|S z6~f!)@js&VeY%+8F2vatr>4m@&ei_(LQsHSm2+&3qY55d1L0&;QAS@x!tVfWPOue6 zKHCw}TpI>3IPcJ=$sMuSb~0Nib%feMo-rz>+aQ_{UgjN1-{O3=64VDh9oN*$)UBsoWgaJ=}}N zpRgU#5&_-p?;NzD`A`yL<=*1cB`xX!FKPvb?^BU`iJo-sihbC<5sIwQtZm(7#a+)3 zE@WQ^e7tnlxLV)Kp&{|ZXMK1?el#+4#=0>`nxb8c$owYgDxDaoJ1!cJv-G$a=|78l zNq~ILugpLo|RSKHO;xiY>}dt0h+%f)Deqxr$CSrTgrVSJ*!v;a-b9w3U@*uex^tyo0n-BchawELZX04wUQ>v+ zmhQIAYoP?%?B%4hIMK)7t@$~0|N2tyUEaPVE8dKfGz9WUSLl{`C&Kaj+XG4?Dzyv9 z7Pqpaj`9E>?<7ovWCq*{iXM`~??+6BJdqo-61pm3m&VuGzr0kG{0_1K+sEB0{OCC$T(6@LsD~w;vT2$ZY1r~DR@R%D8fp^Tm zc)GZ?e`<_E@uR+I8hq*t0oYNGovni3ehysO0)ryMf~FM=En%t-f?N+`b5^d$^O~Kf z;3DIyCj&`yP@fshv?+#;rdIjRcM+O)Kf#^89*G|`QY(|oj?P1iwbTgUNO)y_@;E~( zo0cU-hmWKMb5#zVMyKRqOF4$JmjJnk5qjmS>*k%0rcj@R)$+uJClFrsRgHt>DVFuA zfqIsS>h{m$x;c5v3VKQO)=R4d?n%PD29dbbQo9MYeL3D3%2V4st>MlbB5-^I*wL7w zT0ahQrv5M?cz(~x)_6C#aZ{mR!F7}cDO`x}lLPUpOD^6p^$&kcZ0aoa)q=hnNI2AT zRn%J?*_4(*+&yT&W^n5hy%xM0o4D@ouvuAd*S*Mx1a01BfJ|FYOP$Y40rVCdVKBGv zthr$;g${rs^;v}izY zEgUpJOz&ycKGBS4D@g9G5g&tvlw*-eEe2pmN4IrdmjWNR8$%_;I?Bn0ls`5S;zkLQ zDvd=HO7C!vTGlnoAxJNMb3KRH93P`7cWNfxF2$B-Ge!X(9`&hZAPukfm1k{dlVRD3 zh@yvI`3*de@|6LBRFWbqVT`tZ$KAK=3u^1fI6vTv(y#L&4|+1gFPg(k1UEI9lJr#O zbz=~crDJ(T!JIf+_0F_*k!55hD5Zc$K!wOT+7^G#%LT5qhi# zWA6;Z0AS~E{{Kru{@*m`bzRCnD|uJjj^C)Ox=Od!Tuq0eVK|~9t>;9~P31nDyvRTI zhw;)nj|+EAf3@!JnY{Gq=%)#aRO!WP8XG$z1$Fok0<>;e|Mb3aiLv9<@hX$53Qj;Y zK+vUNHjlAYcQ%JnwlC|`R#Dolw{}(m>?9%$^0uz9CQR`~q*uh0@sNb0CWBCr&;nE( zOs&kl`8ksAUf;3uAsiVClHqt6@Yp;8;8Oj`W!4c;3hHZoW+{e!cU%qQgiy;6K9uzK(06;Ily$x zs56}ufWYeokLLioR3dEG^dS-z(-p~mOMsq|ao>!1pbcJTcNFp}HR+rR54D+6MVv=F zGrgH5m&#A$Hr&mjP<;)#)VFlo9f~l_hJvQ}*hhkS9Tg3*?Qmr6NEK6}0CX`;t%&&= zer5al%i&3x-h{>TQ#rE=hS4K zOWD07cU(oRVFjdcxK4HRwUKfj2u5+K5PzqN2budc9s(TxlV`B|?-0RCVl^01A$L>{ z(gEtkpDU|bI&SKXpY-E)4ZN~EsXBGSqk@QuliH-`r%^Z!}@xtd;{HVGU zC#OqeOz2O=8!{IrxB7vf*B2hS->|62xH&0Q$+JnKB~YT!jJd4k9D!y5oXv}50DUCq zKYb+T?tkec|KsuRGyLDu$UOLe9{+^cGe@6>cd@!__d6_Qr|j}GUk@AZfgcW20kh2+ zu9oB`F-&T4`E2c+gkR8PC3{FE`;<$@Fulq5VNSqIm(;wB_WJj#ezOkg*s_y`^` zL@)E??oLk$zt@Fe+oxaQ1RHRNZe`I32xXNoMwoGd&~-sI^E5$}>&CSyWk7Zrj>-Hq z675m{S+h3wOQ>i;t8CC6NOcH@xLJQACZ*a3BA{a-&@TS7^(%xSb11;=-}hDQpLJ06 z_2bNvBXkV&eOX)mG~cw36v7KHZ&LkcZ8LO_Ro~xhp123r9x#z{VvI^+O4kXeMoMP9bVG_{ zR5foiXDf1ReiriF5YQVP(YC*g;Bw9N0CpT4gfzUjL*Qs2nt1F3lI-Jktyc)@rnEGs zTg$lyhwVvYno$ddET>Xw3@ul|L2d{BY|AQoM-a;FLP}yEIh++)C}OzTn`K`pHgZ;Y zJ2>U>(C0_H-egu2XYeNH6s|@HG+Y+msq2v=qGXfkpQ-|Rb#i(~CBvw3QGYsuU-~+P z+AS*(Y&Pp+^JmU8LeAcXV&!unf3njqj)?=&<2R~EIAyJ*mcrMLNoUA*5UX<&pnpLvTmR1!hxb$5;$rGMp$5mUah`dF zpn>+1jk+r<2xr{i$#f+Vw$YVhPv}qWT?2FuHiaSP7uo23AvTt5!Ixa`H(m~xjyuVDSsI$Ys*Tz=#LZ6Fsyw}DO6W51-f-YgRHoXGKj z7!b}$#M5n+G+r!6hc4;;=efozG?f_&TQJ>I=g3)Nhb5HRfU)um^u}#0yg(($z2&{)8-Xe z?gG{4O2_4n4_lzTO+T^S*H~#~PIvXiTaT~s5aTm;n_Cjh?XFp0GbuQ1N*hc__$VdU z+rKCQCPf+WO^qmyGaCuD27QccBsm$ZPJKrZ=cktmMUS)iLDmX`F3}qK=R2Tv@9P?| zOFE`$RYmS3o3W8_%~CyL6n~LLB5_G0n+wuynr9>WmFX){L-Z?q*X5wC1_0~`Pnb)K z-}}y4^I|ntxN(ZJDI5hZ)t~YDLyjS*T%C)iSATjrq~eg zp=``758RlFW2Zx!=hMvC*xmlILX|{3+T^lvV=5&nT|j}vh!>^~JO;<}i8ESF15t;M zeaay`d|Ypae}CzZAM&L&)+UEH__aZ60N4>_kp%xfl`vBw`K5}VZEW9zX{EFux-%Q@!c-@p&-x1o$W{*ZK)VvIlL89bo;=j!^WC4 zSaM43MJIh?ZT>C)DLw~9R3e7pIFrraBpGty7APgOPL3m<^mSoh_vegL{t{8WQC7u$ z?gfj|@lavU1g$h1+N5;I*OuAWBEWMMr}B$RHE({VzK~PRA)dBI3tec0?S}WB!KnPb zIH?)X6A&UHhGdPg9}6G5pguhFn+x#d=iukPn>wS!gw1wxk*S;f;*>Vl%8Dp%kLylN ztf_CP%k9n7*1wC=#(#S^9XisjxPi3@TfUB%AoivjY2N+end%3g-2+~u-29`q56aEZ zkDI=UZ~EetAtM_oERimJ)l&@B<`5YOmRF3@){RoESgWwJcwHeC{N8)9`C#8rNGElF zyB>&o(M-8^oA@%-0tR9Pdywjeldmy&3B9;@_Hp?PTQ`phz|O4q|F#DnC+27IV2m#v zGJvbR_>Q-qhNy03<#|why~(#wkkF+lqB-#(Y5W8mp%{x;STQzL(f!-{4FVPf`RiwE zn}i{fZZM-{QNyha4|fyIu4NDmM)Vf?4Zhg|;N3)o7mbN3^OIt9_&I*7;m8?UsZmHX z#-;2}%K-nt>L5IC{z;>RadXI%QS&z+5^_La_UJ=!OLLJf0-(Jb0UhY-Nb5W?P&R-8 z>Ipi9+Rgegv9mmFmy@ki#b%Sn1*?QIZlA9-To~(;h?Ma6y(huiBevvMO~)}@J*K~g zl4p4sv>ufZybd#?F#5^r&Peo7aFX+^xn<)0kzLRvL(L0u`b)P$l-4%^V_Nl=s`k@0 z&u3;vA~p{95P%(jyg;a>br3`-7v{}=W8U>xw~zVx9OrsiNmMICS< zRA|vmeNI_l<&}1p<=n6EpPdWMuIr>WQh~oO;PcP%83JLKemP2rTI>i67jQhn;=QrL z)zRIdER-_sB+AQ{hKd}@M*cpXpuStQ$j0M1l0NL^KTgsM*9Y`sEdP2j{I37%#s1?p zFS`eLRaO@Mt0DW5N9*Drq_R1mGf?J5rO%|v$)z=2X+-<9;bJdvi1m5Y7o=@(GOx#d zM7$%0)$aO)*o&Q;Y<$*_a5)2nG5UxZJmy?iDI|v;V7VJ3uST6L2%I~0%;^I3qk>Ps zoJ>MiaLWb-7k$q9)1)&hfN;bteF@XsGw{Re%|>mzMfwh~n%9rdpDF+!&Xga10y>*n zQ6U>}-%+0sCv~1j1e-Sa=1XikXAikZv3Z9}*{9J_ak>lXVMN9#2-p-2(LmSCWaqH_ z62xZEF|{6_LPB7THv)|+>n$rH4j`vw6oH%U!ith3V6IeJP~8v11ES|UX=fnRq%K1B zUFakQm~mrpWGWxZkB@-hJJyM5R1AT^N*c!!KtjTEB{EyG?fLcQ2UK~i5z#4I?>r(R zyov9@fG@u8G}rfWB{qVLU`0KuX)8~DMOti1S7MUwqTB)4(d=Y3*cU2w6zFVQujU?~ zB%QPlaJTIWCXIvv;k*P`bVhb*``a*~(y~Q4s>*q9w=E^a4o|q(KFx#4E$mQ2+@x6# z^dn`x9mX4ZlS3Gd+c5*K;G86z+3da$o{+W^pY#z>!$9!TE@7g}Bg=(vgH$W3IAV!7 z_d`L5FPI1V(w8}!8u)?18wDXYNErwRHuK=+yPqK?yB2T2nsbx~)nbo0 zA=~LcnkNqUCuJd;4FK%uP2sK<)n%qRzs*Rz<+XXfER^471(eh})h+QpYJhp<=|;3; zk9z65CyQuI|2oYV3zI8dF`hmzE&D-j!v;suZ}Wl)Oy-EDYGs-7(T~SSCBA50mT`O1 zn|u$fcLx*qkJ0lD55P0@O`I{qjFL2kzeVva^X*7N$b&K-*Lx2ZW*(4Tev%A58$K18^2!uF~r zUJm`6QM5L{e|a1Xg#TCe!dzR`BvR9>>w|b5e9LIV{-7>#SBMf|AP|8Gu|TgW*IB$D zGc0cUiiU2a8^{%TYHTK&9ab)zY-o~$D}kv3$Tih_M7NBGC+k|arpQwSirQgL9Hup` zY0cpJ{BCv%l2CTHFw~@vgDu%gl@;o%x|(pJA7v=Zo~&^eR@bNu0V z{&wD!ZSbe^8~och{GT@;Y1;o;XI2&fb>>F!zttIffNwaUoyo`C7+?Q@?EU`ir#7n% z(Gz4U6SfxlTPMDbhV6w*_UilVpqG+8{lp$&drqs0S@`cw%Mi$Dj=y0F2HLVoGcHNzKQKEcLKZ@LvZ}exnu>&4iiJL2GeBcG^b% zeAq+lm% z{@+{-`%6K1xvLc;v`NSD*D1n{{qYmjiVcf&j6_531RSmGfG?iSo_@grjq}9hQ}lPj#DG6oXA*UHJr7)(C%LUdRm}Od~ai8dzz-lxFsp9E#q0hVRTub}Grzho_=V z69=K`@W_BlzY7ToB;wfVNEn~~c`axrLij7%&7i3u|L4ZTT6+U9Z{!P0RTqrEu0pLw zo|Yr8d1~?qT}Ie?vq`2Tv}zrWd;sHIaV36vk^ zk#M)D_}YmCD7^~0$TyKDuz!(Ts$|tVx@{r{6ubK z%&s;s6XT+@KDHg1v}M+ebP9hc6xarov7!Oo=+BO6qrw=^Z-uVOV?zh zG>gUNQ@?vOcDxiq;}!wPF}n(K4Ckipj`8(hQ;J)noh5}BWmI|rEa1>6Ya!$bB-Je4 zfeSr+q@^R&MgpM!86Wwd@f9j7v?LSsTEsv~27nzobsJDlV8p=1w`thnb#mm{%|3)N z^Ss{G?x4ks<7FXXf|P>7+!Kd>;8e@usFS`&&%c;Zrv zEh|di9d>WHFQQGRs(FcPm&xI!;4M*He|a4$FT?U#cjfrHY^_b#cpNpCP`M;`+82{b zS|+Ncl=TllFXPO(xAgFzs)zxWsu}o)G>8_nLXj%d|H=*A%eOWS04gJK)uC*#rk9w^ zanj_v(OtFyu%lccv=OtF<%!o@x-d~+^}gb6@x2{tk=KzTq_}tV{?5;YmhRg%r^zNX zL?=1a%0e9j(#o=P%iP@)crQO3L|iqm{aAH1hcaYE0g-ae;EJbdXv5T{0B?@P7IMi3 z2ddmY$v~sFCCEd`@FMO!+P?}>`3q&3;{fy@>+*lXIFoS+=HSKG8ahwnNzhekSIAwp8blWH@nGbEj*s275GkByN4_5DA&oz%|%M}6m(`GE+; z4c72q^&OBx^uIjMcm7F++K29i=&a7&Yo|pltZO;akT5_`HYiq}Uoci{j?PTmA$Z@UG>vQkon zf(R0AC4uapP3;9SgSBvWXaht8*C}Lv>&aZ#5J8u~-b-a;-XaJeyj4(Y9)LQ7#|3$K zmIL~;+R#?$8dB0(B}Z}y2Nc}owCNRB@YmR6D!RRm({yM0&vtp10$=};}nNvBDKyDdArA$H2D;Z8vqvqonF2)k{xq^W@xt~MN{ z_%c3-Uf@L{gIauX7t`qLD!7|?toQyu+BhVW3FFB1=N#oF8klec6yI<>F{Go8|tkc&BFPGh*fT z$GO^VK57kEPRvkZlAEjr2rAM?kIvzEUzMajpBoaq+SjN|jzmWClY@jFD*N7xfT6kK zZVPBrrio!W1(?5`Y`h151s}ar<*ZY3;^TS@=giuzArITB@JysPsi>7Qats zJtr{I3nb*ETdu5z_d3Od9XfTL5Re%m;rAkUJ+ssG-$ql#SlV)`EgjbYNc}B}gFXXa zynwVnXq4=)B=3QH{23aUg0xMj?L!C!?%cMQmUk zXM|*JT6LZWq_gA667*z?%*!e1DGnC%@!Jfu6%8m8vrXjEKi$k*TmAuMyQW+1Tq6FQr^tB$XAs3BetT_FT&0{5Z=)vY~*%O zW-kyj0B;7uz#Hcmas1CmiS#%=%L>?`jjGK+waqc4VP`d4j`Xhg{1!GiB<=tb{uHmB zWOy{gDsT`!n!i;@_gk?Y`z6tvLV`d#UkVnqSRRu89dqah^Ki-a0k5>&+`iT5x(2A% zfl+Cw+1+%^no1V~AyOCX!x$lQ%7;XhA5_ZgbRcJKE0N+ z;ohygrPKCLD$Lq;j}llQWz%Ta1ihm#=R|U^+U}&Y6vQ4ZJCJ_a^Zu&UIi&?3>>7a(Te;Du<%xy zLk2htSFx4`A=r-0E&ABi*>U_`p+Bs5}t&)3)bp86P5pO?hY_fafm zS3X_*NMMqhftG3%is#>E=*9q5R*LqV?q2T}ODP}Uf}qjlJH04YFKl`B8pH4nORZ72 z`;#qSdXD+j5Jo(R*Cv^YnW|fwAVZD{_N{%5P>mN=K)E3H7gF`Zhl9G5m5VX_RA+rG zy2{XZU-qNXVe@9KSFO<`9XZ7hJBCKR>qJ>sx=DuQ_2iqa#k|{6oY)&wMk1QIoAYpm zUlYxF0CrR}(7pSK3k^wG?q_c>c1{wV2cnx$kWyiANE1?`+e!?cXeE8j<|LG@OY_e~lH@=+M5A!T7{9Y@v3rgmx)c$_&!5xq zxPhE1KHv*u#QmwJ6HeaZ3RrkCtX7YYD>*nIWn-h)K)}7xB#nD8GPOOw4chC(iVHo) z#2X)7Qwx|LqcWDlk7crOW9%e^vd>0!yU(kbP9szggd?Z`>}a~0^hMY{90> zl4{k(rG4&`f~F&Li(wWK9Yc3YM<%Ci*wKQ#v^V|vtt8ialwuu4$g&$&=_UhtS$;%U zt31gwb|oIu9HMnEI2dV$6~Y-J$+cte=HfZ0EK(~XiJQqfGd0yrgV5%s27kA8nhl54 zO7~gD8+}Em5wR>s$NbZfqgR^gGreaNDB6li>HjiV#cG0b)4Dm-{2lQcdL7(-llE0_ z3~l%n1iM&r_f)E(-@pPQ7%D$$B5T$;-6>b!wZoo2HnqEDPNn}9`XU%QG}wJ=uu+@y zn@^VlZpq~WBYCYq3cbJ-X#BAVHQ)qX9gb~`Z(;7weZmsq@hh%^?X>7&Z6wq(&Cp;> zdh>V`EKq`kG;PXv9B=2LFT$|he05!~@2@62YD-Wo9x({TbnU=$k4rUC-+y`n3|dEf z0vr2)Pd}vFzMf{v$n%wlD^D_BxKLgpxKbQwcKrzNpeF_u-bl+^nHR#U=gqf;`F3y; zN{3NFNOq!wNeOF8qaRS|68>Dc&vrEry0&kzYxQ~`=H9&>*_$tq`C58=kDa-0_}JQL zpCr-5ww4%S_Y`7LU+23Kk8i{? zLyF=pqQyw>k4i-cS#;nMMO% zDIrib33q)Q0@_Y}q!1ffc7NdEZ9ugqsbWa=RPTzqI7crI5W*bSwH@{TO5azV7LO}} zr;ti*kMcn|I{2nMWjA>WdGp*&eKpv;mKS<7MyFTums$JFUfBT6Xy6;QfMizpFU$f4 zxNPT$xgWo`@$E(gS?XVd-u+OtSDKb%3EKcKo<C_Z<}f8(*G8S|R$c!KQY`EgNW|AJ zKnVLTRmTqM9CKifa$CSCt127oR~faPd*g(PQ_wl(8hIb2H)3)L`^zJ2U+5;p5`p?0xcDaXwHmRo+#Q|vZ4~5xJ+GNes58dAd5 zF0sq{2oOxwl2}~)OO5k?{8y~&V1+B*`{S6Jvk)x+c4XP_mi=~AD*?syUk?af&&$pRHLb&UJy&02>DaZ*% zze|deZF#Ogue}#4t<38vs#fhb;Wro--&cR5wG7Tg|E2SiGWqPqb`;=POn+}DOM#%E zU=vX$^!c(KS|9smxR7}OV8`L`?e&h_LM`E8{tSwlpy(D0I92f&J#+-@?~F%(0qt(5 zalOG?C9X?6S9#1_R5ddcGMNeIM7OkO_!Q zW}jp_8R2qij*k>mT?~Xmlrc^jU9?}2T^ar{-|T{XB@F@*0Bh8Gxc&x*9*mhB#8NHD zt90V40^+h6vRJ1TKf4((0hCv7nIq!x6!i!PlQdnCCD=8hZ$C1Ao51Sm>h{mSiu+KK zC)JWr`>QMVFLIk}?z8H71}P&dRRI zY^%KsB82=ipY!rdchFa6ZaI)~ROakt!k%K)9uq9JvC_6iB2sqyOby&@1*fu{FALe# z#rg&YIGq+p-T>?y=H)2f&~SB?v2|_H@jsm&Ui;34-T0)!uq5#iTx&K0t1yeLgi$Sg z-d?#xz5;%HCF$Qy27EMELX_$^;QhYM9Weoqbp|W0o)L0W$BXru-76e~=mk2gK@Iw^ z&a@4|;hCQLw&rwJqq{kWEbyxHPi)=pvkaY7@89t^;ib|8Rp&R5%(W7ohH*z~^-)~m z3SB58hxlCFT@}?WeqfQG=MQ$Al!Z6M*k(PrJC5faujPUy0xOa?Zw2L1TRGuWsHmWBtel=;|Om2vEO?7KW?n7Qv~-2lS(mY@|Yd{@zF+9Gg03 zf^r7T+@eey3mi3Qvfs4=U`HhXcEI+!I{9qE^1rL9&V@)-nX@>#fdT2K-RZl@DTtrk zDx}U=>kGGlUHphMHRm-nF7I>8^BPN&Sgr$A@(AG>47W+Hbh*{9^J{msxHvuI<~r+0 zs+iwKu`*UQQa2j77qf$7EW!WLwE-C7K{MNHE$Pk!>4sLk)`~?#?BbfCD^y)Z*Pzv8 z0CM7!895CxB7h1`ysIy1YS5K^>kO|3GqD0yAbjZbpG{XNR~~3 zBRPzQGBm!YbSa6TU%b_3+MrPqj!w7bLCK-O(GcR*&7Lxy#%jMm8H|$U?`fpr--HTK z!{e_@mgi-Cu3=;r{y5A_!V=~-J!w0xgdLvw(!op=R_oY5P1|BpHEM?o#Pqy`oh03F zlb@!pGIZzt57yo(%CfNC(hS?SZ9BuZZDeHFwrwNBwrw*rY}+<_=U?5YyT<6MaW3jM z_C-7wd(ZW*@0)YJMbc01w{E3L%}!oM;8B1^wgS2mTu*t`at9dJ9z4O*pL9A4DlI9F za! zs^4Li!eQOLw`Ik16UYi}d#LBAPCy&LLcO`a!?P;Sgg3c^f`ZyPe7QVpc_AG0 zBSG#v9Yih5k}0r>wvKMMWBeHH;VB7&?%I{d#`lCgkw2c_@DfMeZ{BlLgLfiF5j&F~ zSL(P6Nv5mORPHJj^d8Q>2a?7$4~fR^y|( zcnz}sif7k*g|<6`%a22MBQEjEP)x$yKWsK)KTrgrV7MBhc&5#RE+8bE97&{^gr6to7(I%J02QvpSByh2xHKH_@nopM@~a>}=_n ze=2T=Eq1Lf=Jzp%`g3HmV(J)jIW+30MtTXXfU|#Ts`J6Obbg%LWtKPAjNEnWH$V@< zyvgFMO~gK5|5}HsY9dDz{UA5Tv|tcU%CPblDB?MdFK%gR=zXM|2aOQNh};Pf{R^WG zb?){QIMQmO+-PE>P6~%ctfU{rperv6cQl#cXcFaEl)h0Bfrv8>4I~HL*4L*F$ph(E z31G+6e^sj3F_iL? zPM&jl4&O_9*YN{m#f>9v7s;7?en^Zg)(!91pcAo|V-rML93`ps0W;Gh7jV%|Hhsy! z@W+N%W}vLd02&m^z9UK0=XG-$dhAT%H8ro=tw{3(uw${zAAih&n8Ei(d3Pfv%Q#jIb*!b?vyddEp<=*cYClak9;Hb1V(cigUt}u#QQZN95dAEP0l2R-Z$_gipkl z2Yu3>&P1Ejy|_3DVY{6YXZdp;E6UcV)FkH!lCkYEZ%ys>BBo;!?E{1~EaVtWt?@I3627ZnKh+wVIG#f61O^S+1WzxZ*DQ{9t3X#i) z3wXl&lzlGx)T)bOZ{rEGUEayX^6yU-Sx@}n{veM{m>N07zEQ7G1cPGRudQ+2W0%pX z7^b|c$OE;6=6-JWAu%yyLqkcDykHN-UwSlu|1PqipYAL^n^wK`vH$Diz?t!SZkwXR zy9FF5J`-4%MdjA{W}<<&e#`tNpm?^8WSmiq7?)`hqp?wI!}9i|q$3 z`xqEqM@g4WE4%#Vdsv|jEoL?bPFG#@b1mu!#ipg(y-$j%?4>;S5-y?F&CbK=(!f(0 z<;}PJ76)A_Qz{Tv8eygD46fE5A}HE%Kf@OtHGW~NAe@x~k5$k-RKPsdFVmscBdR)Q zarUnx-D_Mcr0@frO2zYx*CijS`#+t*ZS*e@KZ3;g^l*fg+_#QVp%zkYuTvRSq|T^= z1kv@2hv3_#JR>^q=ryyTgXbcjw71*y$th61p`Vo-{hp^C`2npVxgS5nDurEEeCc*9 zOvHvUdiUJe=*x3DSLAyI{3k5thwshz+j<9vNB3Sku|oF#@7J~oqVaPS%N1G}VW*ak z%8FJZFa0wh+Z#0M0z6v^5+qX(_5}G|3;s*2d%al?AU($1vR#XZme+(QCqBJi#0WzU1JyTJ(ztP{Ucc9 z5!I_x)F-u9E1+qWpn&#%_a=76ApnEL9!~!B3^AiOh{B#{m)Y^4c|(37v39thh5rS& zC|8Z1kybgE`_p}LEeSDMwJd((1*_p&@xafkO_;v|z>Z%`;x-ih(BoMzS=@NgX7##c za`%CN*?czIeNW~TJv1&TxM3g#iv^uL$&cF}Bo1?M_vF6P49W&s|9--o~V!n&I(oP!;`7U_=FSkiKn5KgKHPQG(juFFND9FEDj z!I*S^7GblmevVgSvlUD2=TI=_TDR+XSC8_kqaFExh zHQ296-BY|=ZxQMU>(cujH4l{KI&rECSQtCWJKO?FpaJloeYHc7?+6a#FNc0?UcV5= zl#V}ZJg|k@lKsTDTHy}q&~IpYFzPVxj6H`A6}N_y!l9lyoJLY>9uo-7I@eSxln8UG z@|7d5r98(P_ZkO!Yg--BIE6tOej31uyY**diqu05#}j*9XIPjD2BZSm38xRL1Q5*? z$q>pt(#o4Htv{T;eZM2;Si%TFaB4v7B-|ei^DT*BeAs5X(jv1beSXFy z0G;iVmQ4+mzsP?ZBrhiY;A+d;GL)XYZ3%XO`jJevn|V;u*j(`_53m2LPQgU$SJOS1 z?eBLlIF73mOz}dLcJ8dd;@qFB5^o{7cZhk#%WD^WsF$@le`mW_6+rJJakV?e-%zC{ zZF4=9EX~s;g}P073)gvIq;~u213>`nNWnyGh5QK&#ApSlkZeTI&TzEf!*9#>AK5 zozZnnWaHb=#6}E~rr91VB&GDISQO4=WP3+WB`5<828G>$wlWJP*|aY`04*4Sq@PM0 zAsj*iyD}G`lXr*dP=ldYup`T)PId%@cd}hpRwv;HNV&wXMWU-RPmj4hkli)7TR>{_y>Sgzb3yqeyz9ume zjWCzO)YhoD(Pd$Pf>d=9lT#1V`aVis%9Mlp1C%r@64;)lspMc#RT>4 z)XqVqqx0n=<)Wh4K)O%XG!i)qyWvOiy6sEJy%Q$_@QV?nqy*3nx(RFixSZ&E4Wbw_ z<(XL$I6r4Bpxv?>VTxB+xob^3J#b0qF1lhAX)#q7VaBav5EzZ^&PSvD za*kZUgJV{`zxAMX=s{Ouft_Sdb?{X2<^4*0>2ntkf`%8v2Ka%;5LBUTdFH%7pD$I8b(W-pP=O9e+!Kr}#%Y(B1vq1Yx<1s@ zTBv`1(BBlek2oRBN%S4nYzMikpAA?W<>B(0L39elV#ha)9bnrXru*S8HdWlObWP!#!Hn(}%E@RS=5x4o>Q8BVk;QJdx z2^RH}Vzw(n^~PZNCrk89spmcwt#9p60xj_!kD))mrsBHUU*0jWA;VXQ(!FSecci%@ z6d_RR7`1HP=+{o^1n6{7sE*I7(wIopJ}Bl_r_2%HQqi}ZpH{pBW-WkRMB z@3Q}$17oms<76Y_-S#Ai79H-PzlY^QnG#u6Px~zENDcyRMz`KCOWP`@R7MF}OMs+M z7BK4<9~oy25OIO#&p7OmGGnhGTn1Nlum7!OL0rj!X zM~TRzOW$B1VMauYydiKUuFR;6uL~GD4sy zHc?6=#QD(ek<+y5|CUieDa&*}`vbfX=rkFx{8*5V+z^zi3e|Q6)X_fV*Ke@+g*|tP zzi~`Xj?eNc3wjv`4Pdo%4=H^gejoejJ($c$bLH2Qd#OOG+?97}%>-!I(^$u`rD z1NO<2V0;*W!J{`M;2o~^UG_iy{tWntH2MLT-!R5SG^T^R0vc6ZpsgTLDV z0i@kVITYwdv^6B|Hz^-hY4O8RDZSMaZoN@rfXOV`O{*o6?<(qfQ}hW@;bX0fGjIf% zO#H`*x+i+k%OI=ylDKWbqBL-S1q#9Mb*X+)RsBCcJ!Xaf@^SpjX7S<^|GyTFT;+e+ zER-6pc2JQ;6*D~bi8aAoCVLxj4WCAX(A1Ee_`GS0&oh?i&985U05iR~ZO>YrhiT2< z%0$SJLnVj)d$ng&&t-vhr!t!ju{Ty32#>%(WzqLiAc!^2so%Pp-$l+ry9QGHB~;Xd zAzTA3=PxV5es?T>^F=Hd?1i+Cs|XdvMQW22+11p9?9jPkKV%BC(x9{f-*=ofH;D$f z2saoQ81szo6|Kf&lT00rlmJStEB1i2>yziI>xCe3UGXl zhd?d}vgU)bx^dDi&4NWxKRS5lNx^^mj*E&`Iyv8xeim1U)(xMGoITS{FI2=}K7p#` zeJrD%@cd&cB4gD!-~L7?D2pI+eV~gOHAF^;>6ar$07JMT7Pn(Nv%!J-(E>N<4p{j( z%Q&opn;4z1ni%9F0iD!#LgRgNqcP1J9!|$R6|g86ee&W7mD=KnS$LxA|zUW&jKXTkr!vK z%0%)FE-2v>?rs`IE5rz_38ahlb6F3(v`GTy{)^fGH!2$~f(_Tpd=7~3MbZ^`drLUh z(eo>1X`A1E*;Wm2Bc@@S7C&yH<2NmTwok$0BRq$w2#DTyEyk!=fG4uKRTTd9QRb@u zY5$g8i%AEBizjPQpYhn`gA2Zix%T102#aj_iY z5cJ8o;_J70R;t<;8lgxQDu6#W(=&aGEv52f*x{LHjCu)p;1I;Zl;IDX4Xm|;Nb%qx zJ;d?uekpdi$Dw=#*VMudW#yd0TwgL6B!vE&Ls#zQ6b>G9@ zqj>@iwxBa=+4gbcvy|1pAPf_uc?2GnV)#{1M4MulGs4u8YtuBR*f6U2U;hl@rlbJ- z(Cl*04db-9{RgKQ-)t&cm9So}giEuH!#Lk@DT@Clx;E1`%hJHCfd11Ul zT!Lum3J@H)TTq(wT!KMY?)+xXr-vJZfEA{q=T;dhHk#};%oMv|!z4@O3)1@}t=)uj zB8~h2cH}=o3DdyHr=j)i-mdj%r^A8}1gkM38R83_q4?K5tf*zJL6*b2&>YXS`H@+2 z1ayPdV&sq5?W*F39+BIoh$J|3^^)DtU-=SS$XKP3Tr4*FI-Xug2R&+`Jm1K9k_I!# zUgp|oz#Ik#E&QvO7f1n1k1&EI&0cDYTLP2yKf8pD~AAf7V7`@Ji~Ylgn=e$>^)3# zdBd~DtMFR*WR>@uO;FE6-77WE?{{+MU!M-kektJqXd175ps+2)1Vc_G81C0(3`G0^ zs>Y12>}4m|X00XoUw1P!yNMI^#XLT=K-P0XvaI!azIl^>F?fG`%zUA>aEBOy_`-9> zf3n&h+apa?c439;KwgU}?7%r-2Iq&6+&di;71mrGG?7{faDe*-c;OLKiX7S@?;y@${u4*RgsFF z6%z%$V3Vv%?>hHkr*%MspoNVJ!+0_`DJ3>qNp9SPID@fJf%}K@8P4Z!4pP-budqf! zZ8F~^yfp`!XvR5dQ#Z1PBR!xJEW1wuK31LS6wL~C=ieDN8Ujo!m+4QKmmnUXZC>p- zWv*$Hp391C7a|=>b|jNHxfH^jmM$f+XBIyagQDi(59AM#b$y3z+>2kp)>#bBD1_w+ z^}dPaX`v=g*OF)ngo|ejdzB9+k_`TTDn!lDnP#DRxx7r|!WBuua=2`r*-f9cBQ@o# z!B5XjQn*iOJ$=LEe^aZ2y4-R8S>S)tv^vU34rNK}M^*aymWHLSl0|N{S_8$*sV#0t zi$xV*ly768y5aE0BoDxj?xU`%G$FD2vw3?pPgpWCNLAaengXa9;&4;#4abrY(_$t! zj@riiLb}G?1*tZ7C;%OB%fuB|k+wACRnTi)VYaxjON83NwTJ#7oIsOIf~YI>l9m`V zScTOQXTJ-09n9!7&P{b*xbKW2xB)Sm;W!~k9oo6j)mgs4$@U|_5TWT_n~Xr}o-4D) zIbz#mHLALOkWJH*P0o7tOj&Q=7iG~R7K{At>3N9-CAp2|xEaHG=sbY)FDK8T^WWCU z|J@tj|Nm!ozTVs)Gg;riWbNjgDHjro6`NPk!U@m4n2T-kUg7B-;<*XViADA^xTKrl zBGPr0i~W-E&NM!h@Z!GvJ2&SX400AF7mN9U6mw0VT6@I;@s0})A4_D*A8G%+^Wgx> zD9|$z2HBIqY`|H2BDW@B2Y|YO;#}lhsdcYn@w1A2pr>@DNozl)pQ%UUi#Hlo2Y(4U zT2`0GD#4sR1kh5S`;KVK)8nu+NYN9Rb?UE)9{gtBO&-x;OC3tF zlVO5pNc6G1j__Xs-xGq?baV=G3v!E;7oIxH8W6}T5E&LjC7WO!1%V)j3t|6Z=i@q? z0!wxpXt7NsjI>Lo>>nK-0F?6Brg+&N2?Ur4NN`~hV${_aO{lMqCi&FQjQeA4^mJpF zDK2r#-W96ZnEJT7LMZPZsqDJ#iKN3W9S;3n?m3rG&*`0_rnU_#)_AZ&arXR)lf)J- zjfm{{_$P&K%}!jxA<-GrZ%3Ul&9=KL3Tm7)ji|ruM99?epa_Wj{(`;9r<$?YFpge% zzT=MLY%-XMRBb&pN}F0MHp(;Qx=#I9X~)yA7b!X#kd6rFVRRg()DO*CZSe<9Puo zO-g}88KtYnXOR6Rks-C1nqwF8w;c$EATx2BK@&$i^+{lUB4T81$YRPd7Ru${Oplh@ zLEdq-&Cppj5#SvNagDA0u-O!U>jco+CnOPu&;nR`!G9lJbjE*SK@YHs$P% zD{=jI<4IGstStK8YYqP2ObAR7`I>$k(`PUV3uqSG8P6+%QSubJy{kA!M{h6yJN6%C z+9v~q+eZlvU-(_fNgrTa@w#b2P%nNq1W@MDo|6QVuai?PvmiRTeI+JN&bcV+Ye+J4 zy_r7-#dgl}>C4K=r0WSP<9O42BLo<#7otarS_vY)EC~LPBkf8CO5qZ=T~_w8CFw%N z4W-Lm3YL})T?0;ggq2fs#?K?)S)dZaKz3k`yIRy!)tMAZ8r;G=aKq9rZc)&XXxYi>!gk#A={=`8qe+v z_$E5`xC@k6eq80;)61MXLBj)?+L?YpClW5%h)A8F?J@?-Q0$ue%G6jO`q-{V7!_7a zPx~kBe!f>AywV`10w{=$(Up`dV}Xsqy=>*Qo{-w&2>#`->@;+JfZr+}SxN;t#SfZN zLA=BE0W1Yz9Fw-ehtYVMprfdSS<3_a_P7!3wA@h`+}r#8uhfxV*IkeAg%Zh@UOee* z14NLC#i-7Yncjg9kV{VI`zs6HQYBIbf<-1sA3d z+#jT*lIHq)^5FY~t>b}~5C6|3S5pCd$a^>a0|?D8@IApcL!=owVSh=q1$M1f5W)8* z`>rpCg~vIhe8>B5by7UwO*V!QKt-)O!7c0$)4Jk?38>UHTyfmAIx?6lv}T9ib1 z89U*ti)ZYW*Y;H{?O06{b~W=jmhx^us!8+Z1|X8e3{#pCB}tjyp#Nhnya7O$lfmgj zL&>7FqISifCUmHPV29~&ro-;v8HHx9@1bFM)x|Np&27S_(@!7PC@2s<5qVJ1Y= zYYyA#hl6d?mfS_YKQH}I|4rxMHA%nyH7}5xjjE_%(|6V5%iMz-+Bow%B!m#Ouli|+ z!Hv~%HHZGgX9N-@FC4OBfb&^6CuKj{zibv>T{Fiqdev|pa}S1uNYOL36#5_oqhJ)u=D`E=xd{RGqex@w z``8!5&?WmmtbO7lzadVP#O73*#>rP>uvKKM-ENbvxDArl_E9dIUtMxh6OEi30{_eQ zuyr~~iWBtpglD0~DhJtyQ+lt{TCc? zZLyRh1+oux5|lGYvC9!2=&q^bln5b3bhQO#BfZ9P4z5uUZalyIN=wzhY!?1}&tiux z^Ti+W3(|smZ@rJ^GVR8?()Qe+{lmtN1I~paP9$hAkp^@*=~-SP65YWZrThVXx7uKW zkzFLKiI6x-3w}D>Hb7xyFwDTrgB5KYC%D^NuIkI_BhK{i%xS37EhRgbKPW)uT!7pE z6!_E}{J~x!q4N}r@6zRuq-xC+>|Zj6A3r0v^ToY^lkwy6Fn=t=#~;!SLz{~8XP$m8 z!5xfS+f^WGT_Aw0W^?z1XobOOyD9kRF(mN)CZ0mOAbljoldDQBz|6u0Cz6a@sZBL{ zIa++%Zx>I(P%`MlzaptrB$Z?*#wzUlajL#8HN*HLj1F!@NGOe=fsI{}F;o$P>GL~o zNP4=7u-n?B^YXG`hEu(+c9^rAIz(Yp4Xp+U$ymJ-__?a`E8yo0Sh)K~pciVq0!vXBFM zo|1Z8P6x4sZ1JYi`emp??RxnfS=UL3uN4w55+tcavvFSE1wAi{>9d%f67-#4Z_>;0 zk5SUBLwJlDc1Y=~?fBuq4U3Wq*3sM5g8a_zf{pl~$?kicm;`Iul0@5PK;-n z0rJdFZ4@<9mbyX^^4$%LV!n+UV34Z!H5&N7b|G0tPcpRIfXztl;-gzTmLXlG*N;=2 z(%~1~?bQv~5Ec8O#sGF?sgX^s=dTs2uiDg3!ywe(lXPb#iA6|+I;EscC!F*%UvLY4 z@{(MBcJi6V3?-H@@x#|4MFMW)eeIQ!$L_s|2~wJi26-=4y~w0qAn@O& z{4VYda@YMq>%;0`M3B3`(B7p>0u5_sTr%zITW!GC`hJIRZ2ksT<>cijg*sNOzY#FBd1rzcc8Jwkx;= zKc3e+QsTmyOaob6r^+i%K=Ara>q49099xeh$824^$BT3_=fu(4%Y^ts(FrY9EW9MY z&kxjZQG`B`5;LgTO+Qh~kenT+5j&*93@sO<%76wOn2kkx!(lP2@GtZ$x!1U0eEDob zMsgKPU_08J%8HMvKm_V1Cdhf$6nAk0*ik0~-mW79?!@kiLV!0s$%Hpen7B$3^!fd&i^o3!vx6VL_}F8R0mkZs7O3>4nf#$|b+LLqqE#pH0OxK5)A{Sc%ME&Ed%MQ1hdjbr=g z?`fRQBjW7iyKsqbMYuP>n8=Ol0T`RF&fk3bP5P%&Wqh;N=#yb zvHPJ36IMhCRd59EwU7+aN#New zsp>kBic%|5Xky0T$>AD2+-QK7T{MgS2p1d-##gIuKT@1eC6&&m>!7jh0@yK;&IJQN zRZ*L`N}Gb){qiG<=VC|$z*FZ-JUVJ(Qm&jgslmg=c*?i5VEi{$H|F6!nC+SIMvEqE zSxZzsLwco!IE4+#F2buGE%q9I!G##)g#(j7zUwU`#0~5n+eW->ax_+hq|!uXLYt@7 zF?8><;EI$Xxv``QQ*!|UQjy6-2S3nc-q_X=^Z3z1h-)CH@Y5M9UwnBRhz z{S#n{yk0#)&$VNkuAGmMgQX-Ko?LpGZoP*6glg zcd#JN9Yd&1Na2*Oj)G2|r?Z2Tu!!WYTEsLnVm1r|H|hjoVEY&0^yoOdImP{R}lY9M$w1JKt4VFg)Tt62MsmoX+b~+Bq9> z7b7+sY~S61kBs{PhWBp{d)##;meJa=Z(xM`TV-6tS;}n@`@%|ezm2OEd3#~>Uc0fS z=ym|?*oCMG9bnP-SfwXNx_zu!Il+<;C4X`;PIp;I{RQRPKbU^N)Rdd7CAgy!3mU;% zUe63xSx#!EOxhQcGvDCwm$q3lxQDoMNY7Nl7*y1**ARn%rjQ|&q_?_Km(6yj)$hH{ zN_*Go`?@2kOdq;CEbp~tu@E`+y-hAuk?)O)8wE>8Hi0n8JmAq+J>IREW*KqZfh0a$ z1TaZ^4V4s*L1&shH~74?ZW`P7jLU)=40~&otHN9wFuUHScM!(DG3hgwrUkF)vc7dsn@34U5-@pnWY-B{c#8N7mt;;;)Xdu+S&yp>}UG?(? zV_%N((B2a9=Pacd06T75$<6tEF3W)Bl?r$SR>w-LKn}f2bLzp^l2Op39%!R0?$IVu zR9rI+8xsvJrFU+CRA$di9U`FQ_kGPkSqm;OiOhr^t=A(od6Dn=(*08b!tP89J93{Bh&CSeMRXt}#Z(p!Ml9 zN!hcFOLuZJTF+_AE;OO~@oI*EZJzCOBmQlnED?6wd**-h5GzmKwJ&ABo0;}OhrakG z$qS67gBX6!>?cv(hW)CBtL7Zbcx(Z%;|ESIXJ$+1vpJ?}<_%m2kDMpH2?=<^o?r%C z1pD+Bd~~HSWizzSWNYg}H1oQS{Hz1HFQ<(_V0g{Y-51kfiSCa;`eiuQZTS+_wLjS^ zppSq|i?@Od7Yo-?~mA(I;K zA6er^BedfQIaaE6cNY`gDsgB-G<@80ETHb#mcGQm9cBVeu&M3pM=N6f+dNfAxYCau zvBisa#o}8>^uj7kkw{=HbJ0`h>`K*U<;xGINDs=yM5-H?$~%Vaz}Ky?SC>)OeR4pT zs7Jom;g#IYYmt zMirL2R#VSQj~uy;_~Q_RCbJwpdu6EbD$0Op>M*NWSh81xIZRDHX1^!F+juJaA@P_# zxrMxl&kt;xsDtDyxh>?aJ>Wi(`IyVH)-XTf*U#5#fzPx#;RZpqH7C9((=7kEaOb2@ zNkFW~=IVg<6x@9}#^S^cNd(h=@PTvH*iuyPk|-mJu+vzM=$S^04swp#Y}ITQGDQ}D zNag2FV)b8f{+F_U&nBcfY{h3(hLN1MUC0X_YGr*h3SyIs8Q5!{x&!EU~BrUBV~nil-knW0V`L#4S|^7qMo(dq`>C!rh4t2UePbsHK{q^kLed0!du&p8xwbD zsc4U8<*LTI4vDC!IL;U>?E>XM*h&+=I8-mD?d@a=L zyF`!AB3-iUW4$QgTi2Y|L08y7>oFZbZNI71Q`TCDWU+V`yRETaAzlT$jwBx6a zWB}}_hczKodh#CDeWlxP!5QZd_v#y1nUkU=cRg{q8hwr;qr2ClxLo4m*_vDVx|_WT zoHOdGS3(RSq8Qg1w)nC#P&D#pJ++*lnbmn57Cv^q;d+Wz@&RNcG=rzL$11{{tgOBd z(bHhz@)bOfC}}q5lq&mY?5p$j#s%|@w9>`(2rMRHPOw1?Zy6W;(7+DBTN%jrFNP#7 z`!0moTU3Eg34?b$E@n}}t&|2ewV2VZ5Lc@vx{?ag0CqGKtfHYQDC^At(GK1~54;jA z;aQZ`M{09Bsc;IH480cYz~V%wd0dS0TJz?~rBbav%6Z@gL?t3Mh0%bo>%kMzf&_I< z(c1Y|ggH{_`avbTKj;DS0lEDL4*>zlBmLM#dPOU_PAPU~t4f`v9jVL+uIvylZF>Zt zT?vmggz2`mQ;H`7jaaJ4cl4)@sx$fAs&MW|e^AC5Ixol|^E9ar#B`Pi?qVmpQ=GXv zX>i+N@hrCDNPIQ`?C4G2^WJ5SRjZ4CEBv#|-l7z=QS|I~A-^i#`XO)(M!+ge{y>8= znfLmq9I(46$driR7FbqEJh(UNtAZh;G0twD5Xr=K!<6WX8g)sS=3CqYVrXE#4@VPb z7n(!BEA_z~Os!TCzsdAbPS0u>7nUC=7P#mZ9~he)jJb8e%?}RV&mz+jWB*{%C6IUX zuRwLI7yC#}zNHxKinO1cD^*)06!}JuZ(FEa`Sq^?Y!@OY{Jw0s<^S>?7`GB9+kZAq@&e&qg1ucS+0b4?V69`bju%%yDeDWFQfW*=^jLVKpJj1(isTBWr4 zL2Biq8_;DS2?L+~t1z61%xjaF>m9(3$qA&d>)-QRZj>?xnJQE$g9YYuCw;DoluEcmoHWr zU_`ORsiDSb&u1(4+DH{MeoYd_uVHGG8(!{KOxMgKW# zU;sPT&fB!^_OPIp(zU=X@xxkVULPx{+FY7dZfQw^qQ|2;<@7M^^2nAoF)a$a>#~1D z5Dj>O3&(c=-K^-OKJzrwnm4boM7)Cx>1;}TeA;f(sDl)W#7*ld%p7$f&H^gT*VW&e zLI%UZ0MFjH!K)Hi*B^A6RBPW#J~k$r`wQyAPRJz|NhuynXri95B=@9P0Tr_lxVM;A zGL6HYeHj~H7Hf3RmXEf@Hbh1k6jg@him4V=Wm26@@Etw z>ir)?3S8Q&xT(W%G%bqCc`E34N<8-OujH3PIPX|U62wC2jI(gzs1PlNQeJsV!$IYh0U>VaZl2fW`3e>%UW+8X{9!fOB0RB>Pe{p6sGIK8?8LZzH%SjV80|N4Y z6on(GUcfju(YCT!%O$z!MG6-RA{cXIxL)O@$EX@%;Y2Sn^M_1jH>gazsJDp=|Gt+> zrLz6>3mud+>eWOrej_<#$=U-&rK|Z)mMcRM3FyPlW71MJ+@;hi!0QIE<4)`4)u!Z% zV+#&S#RLH@(UGWfZn<^ZcqkF}as|l?huGuNXY~#y&4ToS-@)l3g}8K4YW4(cqwgx! zKhGS;f7-@;A-TTJW-Q0p+4YwAG?U~k%4-K_PP45v&Mp+O!EAI(i;Yp*+3Vi}_v8z5 z_xe^n){+ot){56~NXLD|L7s&pzXeGJTZ_Z^oN-ZAO;XkGv(?CpXLI@Fk&}}Tvp!q# z<|rdiTPXg{MY-ALQ}RwAhoVmR<^{0hL0oWNqdkGyaTM8n%u`Z&dE!5k%<*M!IlvuZsPnF58c8P^`Lk0kRS5yIVs1D9ELsJO0PU zsCRhcSCX}{mr^b#=P6jODD8Olxz}mm8tSB)^g@H}Q$Jqy5t8S2znav5_|S( z;GT~de=GrMMk=7j0n`*I`#R=+P(+{|5tUjdmL$Qo$;Zz`+4#n*;3J4`8Js=srFRPG zDX7$twBQbU*eFwbZi1XH#zx_1VDOUhX!VV~%lbKXFT{uLi*ln@bW*MOZ*XNEkCsK> zwpr@}1vAYfsFa?2_i1ecN!zC-jeIy4w9)|z;813#M?`C4ZK^2Z1BOkI@ZQ;Rjw6sS zld%R;D|ifD5t9iV1*ve?@WH0|pXO7vy8Hy`Xi2W0!vJ;ybAtz2<}#am@x)#5?Rhy#_NsFzs01C|=MUX@0OV3V8&R9L6^3y4WC!qca2} z+d!^*37hN{*q=X1=evB;ZTj8xKe(G~AQea6H_FL2=e`(}mNY}l+!{w5k8Zll3!H(w z+s7&0nkB6hhQ_;3rh{>3*8qJHr4aRwfz7#)i77x5qpf~W2V6-f-g4pFppA!8GX|7b zTrqFTf4fykOa)CP0@w-vXnej0oEj2&7;8~Uq`tojNw4kivkib?nfUOnDX zWNd~D@6+y$`fb3Ik{POEBEGS71%qoFYk1K-Gh*4$G>SH385017hu;ugPycG=6*6Xe zu|zI3P{OTuKRJE{T>%>}&7y_DGGsg*s#yJ2ZIb@IS+t)}Cufo+8^z=&cySuC7sJS! zzy;wz>Z5ZENkl6$MT1W<=XEGW5J~N9HIO>=uMUi7dvbzyjmmqvsX5ah|D!TQ|E1Jx49Aq5{}=s! z8IerOiY+dC@#d>=^nNO&&0*qe!tB<^OWRHUHMwDCwh~X`6-t$ja-V3-dg~aiGr@V) zIDpK6%r%wLf+=(#X+~@pUOWe$LMY$pi6EUr41y(4H zP=3a3U6vEmcbPHL=PDNy_%8g(7XY|lMT**ACupmx;gUB<&rS8Eb|0)P0oM^dBcc=*+D)aS7_Xt@FCQ&u>6Xd>0nJfw>VD9{k3u3)S`FsvNktZ-Q67$cPDXocS#%)NgNV)NZj4s-QC^Y-JL$~ z`&WI{wN?+hdsTN$7%;llK0D;uaYsZS1h#CcO{F$&FmsUd+4oA*K__C*?%=zkG zP9FrlVWM%hU$sKipIAV4=7RrQ=l*}Ksrvu#zn(#*KP!m)NKO}tRy?&?@J{i7wPBWj zYQvIU|EUfC+wbAA^FPYMSxI8(bX`1nc;`-Mhnk{gOD6!&N7dutpPh7^O8|Kcjxw6& zaVx`xmZ(dBqqBPU;PoZ5f-##k{G<0}x})6&_!40oC!R8PdY6-|+&A|*0U{te21n|az}${Fx(L0>^-w;G5aOY^m1dp3(Ib#q8a~O zFJ-RVVbxgIE0orMb_=4CumgI`Vd&F*vpJ&8m|fE8|F}?iSP7^Qt+6ar4Qb;_HzzZO ziY@Zc@|Ib8DbX-2msW@^FufJUwh0rN+mngp+C*^(fl5WBLY5i3;3r7f6ijhoaZYB7lGmWJg=Ix{AA! zSypvVWz73oId5Jv*kMQu8#zo~O^Vi({FRg{Z9d6aoPHNQMGek}TgbLDx|VT zNh&>uLeyf*&(tzxLrn5!BAn(u_x+Jzv*aIrR*uYc+G+E{P5yKKu1uM!j0j}oUmZ)n z&)*d1#c0Mrepqy>I4Iilqo_#`8iNvK&h0_j*isQfGjeng>A0%GI&u*4%=`YhD!DwV zm0gUu>YfEN-WxiqSb9S9jDCa-rUiDQtDR=iP1kkOH96;$7QPgZkbNGVmTEub!&ZA# zOa7C;V-S$j4@1`phfpimlUr84M?ZF5G}pt3GlSa4V4i)#aWZ0P>1gzYCtgPK$gm$j z_X@hPiG)xb4A$z>yBqRK;pw7{9V{&H^898IT#G2x{_9s*L}PS$#tH3K&VN8@6M>tT zeq#18^j6{P`JJ^pG3aLwL+shfx82yjz|=#mRI(0it{T-Jtmv)sugnKcMRRTgcen(_ zj|U__5r|m=7wy$t2uY1oyk19QDbr0FX?m~>1u&VmMFBu|Owt~WbM$IlV}}v+8=9xi z(3MGD$FG&Y;$?2&v$z{oc=WrlIhzLG zK%a$?8#!GJKQjo}l?Ae6!P*B>w(26gE~FY$divVM$P$T}RS`#Uu-PLc@7ZcK%V1x= zx~M+yfciYQbmckmF~eO$A+Q{t zsk4Z(iJ|MH(`}U2NtRvarc9sxoL!pVW9oE?N`0MeSldNI;VS$S(WQ}i-XGe5(`D&U zz_Bo9;3_qo1%tjvb0wB8N}>KrS->O5L-<%&OtL7&7I{#ar!1hR8M{OjLK zZ6okB1@brloc#1YHp@W`VvyJnn(mVY`x57pgkZD&_%@#j-{(CHgVD{#DIM7mg6Ox7 z`z58=R8X%5=_$C<9!FHuZHlR9dy}hs?hyhm5Gs6I)jON?;n{9F`y=YzOcb_kVsyu- ziR7*mPuw0et(Tk|(r_*7bW2VL020b845dhOO&L-IUzl^sJ-_;a*n{{ww{1^bn>+8M zdqSTac$wCzMkAQ(8p%d+s_%9!cMhCG&H^F`0DyGE`u{tJoX4->UrCq1zdEF_m;qt* zQSHRy%h~}2x?}*{4)#>{?z{10e9dz9pIwM{i@YuLbz<*}?MzhX4Tq-ZM`&z?j8AdX zV(r17HqE}XL;l|s-oH(~0p_7b{#1`(#$hBhPmXad7-H$fCrdZcBClevn}4`jKNwl^ zIRpbjK$8)|V;nFI5>2wOqhRPz2U(Y@>AI;Vd@Qy zuXY>YQ&1!2zc0CAQi?X%4FEt7;AX)moc~m8Zyqgcb$1vo%TIQPAcZ+1w#8vxb&Zr| zn<7;U-7`K5+bp2k06+{w|G|_6og>OYeEv?UBsXuJhE1+AMtN}Cl zfE=!GQ*4EGLjwbGie}hG=emV<+!I++A%Sy)<1$g?_B|9*XBUWuL?iY@O5G97z{Jl}qo>1PM4Z!rPJ@a~Pw^`?k;)v&f zU|t*W2eP9l9tLh_Wfx*$Z`@1roN4CgRvy@zJMpRr8VY?slxM2p`;_!sn05YbciX=< zV_h>UEJZ0Mqp<5dc|(=F)rera?}i!2ksyF7CndM+$$(efZdtkJB&IRy?TSU}a#?ZM zt*t#LMjRtwuZ@(Jlje7cMlIyfvYjBN+w@<}u7v+wPxz>q0je;S0O`?kV*q$Ifaxzj zb9zU^$TL<)lkaGXX3F^^&f54Rc5a`e@^hZO>yq{uFrVT6C!di^`%gaeZ_k9W15oQ0 zr}&?w1|+M&SzWqUV#@l(5+^YrrCSJF6H6Y@p-YMs=>dCJd7+6U7}p2z%Q=>7ux7cy8Ve=b%2h3)1aXGHWh_SqH>M+rVDisB=h1jEPR}pMDR#?nt_2aE%$nE8n$z2RR{PUiiy` zlwK|U=?w1Q@fR9JKfF6xbGiGcJ}+-;r}gFc30+KBCe>#W^Q{UmXO@j>9d@ytChP}H zEwI~dnGphI6JJ`-_C`|0#M|NbTC-DZJ|{RRSy4g-YHLK79E2b%$g)pqITgQ9-ej#! zGfHvL52)BUW{5ShS<7vTgUM=nP?8zuH>J^+mZZ;zsZ7SAW>`Jcc+UHc62TJagU}`0 zH+|{^kH;tf(L(U~{_oD;br&Z;^WJ4kP^R(zV7am~bP0#*{?+t0@o|36iot3Gs}aBC zjkd5ef>^=;Y`yv}O1%j2x}yTWS4l7oHDw_wrI|jUuxVq1_UHxCnLDML@*+?K;bWmx z_SXvE@^N%j3U$%^6R|LJyI%KW;qkKvl>)|Ws07!93P3}{R(aiE4U*VE&Xmmr%H#6j z&u+Hp!vt?xx4Q6u?WyKwSpQB`p>aGSvKv4u@Pjya>omDqYNst@DRrXqffp-C|a|Y0NO)Ly35)AfpxT|Ea1C zWXF__MBr}HD*bsgACo80UKKV6uDl%2hN5P_9zNwYgLUTnbL4c|)giufl$=0^E_aS? z>`3~)@YS-{0B+fVxp<%u$gufe_pnxm6|rM z#otNfms>{>8N#vif+Ot6ZM&0XSBRXcrEV-$8vx5SeF|EMHP6#|l{M z#wNjVk?CIJ4xz}G{jy(ddOD*b&oFrW{vEt))D#0q_tY0>TIErODDhGe z;)24YQzPB&xh0P1WIvl3&J20`nSpnP1iMJ>?9jTu8(djzsG!u;muyKdCwN}^zqZ>^ zW&InlsUxINQF`kFT*PUx0I)p<<%XkQBWg1sC;SbA23G3{`#XY0h5U0_QDHobiMv){ z0%6+H6-`n0{q+yUNx69_wfW^StKoZdr4_bbd{4oV49Iiu0;29O_3cILyn(jL z{Ew|_DgRHl$_M2KwACKw|JbTfTKj+W@8%hiWeQ40>%7pEIMg!H1M_xzIy^-`XMqwO zNvB!#;Tx`9RsmiAOV63ZfDYh>T2|dJ)xXt6PzD=2Z2|;I5qz7Y+#4JS38y`WR4tK+ z#!iwUZ$Bv-{Mad1GDxS7r8j3g;6&?TQS+=jeIcu&y%hWzZ^p929moWSD^)|2e6<2>)ZIvB<#nUN%{oV3jI2ghZ(kfI@TOLqm zJDMb#&k6C}7uH zlcC*jEx+dBWO?tInvf7mc~jh*O0{Pk4W$O#{V7tOzybD6J_C9pAMWj-4Lz?WI{4CD z8Pe)+aR)$_@VyY3Ce(VKCDvr-eHqessFHT(#k$%2HEZHo<(ndbxMdrPNL#h!0k%ob zBAj{*nRtc!;Y@hI(}VS49_*{n1Suqu7I^dq;fTYeO&1mEam%Wg6Pl6V7e| zWXQ~37f#H-`_o*6P78Ff%z;4S1RDl`5#vW)8N8D|w{%hmX*Xxr@?zi)TAGqzh(h7CbgiEK#``?q2aNhDQ&`j_#nY zxxC)~g8&5p`?rl@eCe5~Z?{G2z1q#V`?q9Oibl9zp@I01mfrr4rHMx{VWD|b9gfqS zeNE=rme-MuxUx!3Kdt#=MFHXFwF3?k*681$z4yT=c^vn0K2++OuLSo{CKSjD9orgu zjFT?pij4?=dWZz;#1GuE^AS3k;<145PN8Kwy;n3Wr5CzaA7CM->TRfCY&c>IaCv9@ z2=bTUnXJtfl zm)&Suz(qYbZYXPaAj_9(X%*)HRPvFa@NynbY2H5KVB?1s=4lMt@=E1eOwR1LWBU~A z$wtvJ%mr0TwQ-5;ox~^3AV8(%j^|p370&BkTKk?b$6$qCInb)d;x5+ zf)>Alf;r&(Os>>jIf+S1wW(kP=J&5^-@*8}l4;Ir?8()FF)6QQJpMp=fdkJ{L@QKo zTnAp+q+@ReeJUtb1$>ysSCQ{n=4hx~IIWIO>IWeGvaU$CJ;kXj?H~t-+lSS>2{%Z} z;MI)lRYzu+AOe_araMo zc*}rTYl@Q?=Hk|hJCsP7Ff!WI7=$u}w_WO`KLxt9SpwMOS_e#vvq@w5c@d-XbD>RpC1eRj=n40WxiRq&^igpMtg$s6COH}zjvnz z!1e24j*!*_5%x!{R)8gS43Hh07`9rnE{4Usww4a;>mAp;tb( zQ8a_nlSO#;r~qdNQD3Jf0k8bX{#BzEOX2fi2~~s7g^v54hH45_KXBrxu>RaXJ`%Wy z2?ZhVLR#AEYc*sXDqrTXq^=f{iD@k)pd|c8AE^>b05e0c@@A6%HPUP(d@+${uFPES zIMk@elP8EEcffb@!vQ&DYh<-ymGS#8YUsK*0CjKk0?|IUWbtrtLh3esxD6J?b08Q^ z$_JX|ILaMyCg$0ZD4-PMvdbe8f*X@W!DBNo`)7x%x8BrC$?@5^o)FiA##Ys-2J15B zi0_Dq%Hn?8^sv4fu(`LGB(~Dz3kO< zV07A2C=*UnoV(Ca?JfaDx%4Nw_%QwqM)Xl9jUT9}oejbIXjdDKIX_;}1|MnIAmTS= zAuD$%1bK<6l6X&|lXrNbM8LN&Rd%{R%RLYQ`;n{9{^@F|LOhe`yoO!Ndb98o*Ec*$ z(}y>EjsYS178%G1=TwWt(gss$YC&YF3)L3czqGwZG2U>As*l9+7-M_d9_Sj~B zvI29e=DmRIc;Nf;1bS(dp^ki`{(|4?n~$?;Dvl_X?w4uVy~c)Mpc@QS8)3WYJh=n^ zgxD(EW;4kOv_rsEqP}iG4sO*z1O#-u@YXkWy{mNpkj)}GG6=zQ{aoBEGj0SV>ASI zx+4gkq5$_7x96R5{a5iUD0cYd%yhO6@lH&RvDyIFEiDrh_@61$ zEQVe<%J3>obZO1i+!|zbnG^om(Gj3OuD9Ut=t4adBKA)v5A)J^fJq?(-?N~jC(m0y z&fJFcrKH#^gkqQXLskYz^PKJ8{T3LT;1Pk6V=U{z*bNP%hjw_dkyT=f}(d2VX%9Q=6H32eKnAJ@8>Lde+gd%Gp9ga1##n-+ICu zu;k$vCr5!z5p_XcNrI{ws&oLlD->@$!^XDYll#Ig-s=lJhj&W37-s*%(e***J7l5R z4-a@XIg~$uW+!&tAEu-{D6L`5_-dm$GTccpPW1ZGf5R|dZ$$zYrE?*JlD)aA;P%@a zbJYJ8mHA8o$c|hsLVYDI2t*!@N`r zqzF0R2`2Q(27f&MUax0cWK?0aco5@hF$*?=_p-;nksm`H86@U_a7W`!)Zdk0E$7eB zk%xf;NOY$C^(fAy_RawTMN!5$m}qK0OIH?;Ma5zY5Pcu^Q@cDMI|>FJNBt~^C%CS4 z6-A$~NF#FSbK(z&9`>LN+xOox6O5{Z7 z*B?pee~`|;?)Tl5IewghwVxdsMu_3VtV*@REhwcc$_{n}&>34Vb=Yv+H4qWduz)f& z=+K3Ko@J2nP;ZW&^wnSdRau!$DmG4gs>dV2!=0S{vO7ejJ`8b6WwI<@PAYE)%S18C zFe81S!Ef#Se)9XwjZRdx_nQ%r9W^Cgrl_tq8LuLk^pW3Z{Qv>MeBQ+t_AO{C@&r7k z`tJIvnhECnvX32G2EI4X`tCTy70kgl6OKWJ%0{)7q=rBr6W@oispp zG}cs|=uMtj7Or{+rIo(qVl5L*xE9$2dAMH0dU&kg_4>2|UD#>JuJi9Uqq3P(%H=BY zU0!>1kF)O;iupAwQ}!}c;&2Z_4fB6A-_ZCxHkvRbts`#U_C6a&afbL8hmXm;o9b2 zD_|9+=~yx8ro=KHTO}T1`K2N_ptSHnS)ysPw* zCx!_99*R)wehftni12O<#QoKz_$b4dO~U3TJtlc^(cJh!Wu(S3G$aY$_RO8Ri-z20|@ms(j^2E|K3`I6W!LF zt&pVQU`ob9v*$xhi6fO%04c7E*%JD)T*ugSXQ9|SM~dfbgOS1R7291=yhS&>zg%n- zDdVXjAk+PCERY=|O5LF8gSydarZ|3n%4ejH&Ff>e{w*&aF2h(IT0xTR5EZu~adS=J z5Y;3;;0D{p-jbiU58hvODFSBOe@`^eYYS;PM;)r{lm#LPg+g@-m1@pj`R9WJfuC|S z4RIwxt-(c+QX*9uIAT)n8+dxwnrKN~g%5%Vr;$fIKjajqru- zfyXrHBEmzQZ(mr|Cn4!Gn#OxZZf^207Z!0)U})6vlVx011i$@DzqepwT9}TFMo+Du zm&EiCH1kY|ipYtT1X@*}(S?Tq*|F${={8@9RG0oroK8f}(f-z%0kqYScFJRvU(^5t zd>B85%Cqt1`E=zB%^1X;8H=^H0RAq$tgd>vN-tv!e?e`X^pMhNIz(+lk+y7russk_GAk2Tb>P*eX@p=U>MD>O zo5M7=;AGHymdqYUNt(KO8EqEXw5=+V@q7OHA`_QNfD+@?DLjB6GA8Ee5$MzcNOlB81~m9D%H)*4tSBQrf{rb|6tf6ofTG2S`)-l4#O z5HqH;(<}_nhkc`sxEpp2-h*qk_xCzOn}9lD4#^-_Aa~vo9^;J? zz3)ZYa*ka^a-^H#?}$-AkvX9@4s;KNheV(`;lS7o2ag>)~Vs%j}7_1q?+` z-?Z-*v*hfbx(BYLo_zW~DER6?5r)8 zqYg7?$4aC`pOJ?MJl2sTA&;d}h-415#LUafVTDt_cNvVIquaCs+420Bw}!-~wT1Hm z%6N#5_nFTHtvN(Pq+FlynznD=ky05oJ708+F~PNaBxK6=!9IX?s)8vP6=llIyeRPL zNm~W4r7RBLPiqW1rLiZXr^jD|_WCE+NQLp%7&o{#~ID6!^`6HU82qGe|vt zS`)%g-eBq;PMw%WF}W)c{$PgbNu`<5eNcVzu-nR*A4iDWUIG@^6VGNYD~b)5GDf#b z)M&uLepJ-EI_&K)c4j9gr365Be1>UbRGMmia5;^cP}Q=x%sHR@;UqN4^%d)tgckFv zcLp4?Ww=LE)POZf<5pNC z!}IHsnuK=@@5r%%x>tt_p2z34-S0LSI(+!$vc*xmyBWkao```y)aX$08i^2ws_w?# znCGXn?$@;twuYI z?{Th5=Gz&8mswmpSb{Hz@xt9@j?Q&7$Rkq~80|e2w%JkCk{!GaN2#>ZiXlf#_NirF zTliTRBADWR2$obFq&jojj;lw;`_F{1ul3H!#F&1@!L`N=fxqC4s=&4!LDB8AkBQXF%Qwql6x5aepF>akc6{4$u%woTiFqumnN+wmNPghXXZUGZ*sPQOM!a`W4p(|0$x`SEYR*kf)&4O!d;- zm!Wv#OYYh3(XHPt3aqc&pW0%7sEx|)Ex9i!%CERYLujIm0JHXz36F{5_)lXz_NscX z$kkitD#6fZ%K=-y^*ai4{hvrpty1UQ=+9_!_VCwP|A<|#jBeKqmt%jCpasX{!+-R^ zsC>U2rjGfcPQM~1!})pFbXaX-0F0JRgO4Umzej0uYK9XuRwac!4JAjsJc3D-Km;!i zQOhlQCSHuA#HA+bc~_V)jt z6evYirbd2K%Fe3GJ?kp=RtrHEBr>fzf5`^b@ zo!4U$BrHw^&Oy08`?7x-uxW}`nKN4Vcp;S-6NVi>^25-$?`+Yc2&2Iu-810Nw&--6 z$*}_n19*aQPsL}|Q>yMd{Q5|8wQC^_7K6@sw9%RF)jSzUquWsa;4-T>b0q)%BmN#< z?!zi7CLz`6OABOY2gKU9Am8pZBKb-&c?>foAS58#gQdOutF0MAxxBUr)|_bp;?w`O zw_I8|y6f~SjkPhO(NFWA7wfes1nxG}l@&@Q)AlGM-58zO-GjgAE)*!r6*V;*(y7VG zw^?oLHKj?SrQ;T8B5%P{#GfDxve~1>B2=thK75E~NDVSG3}b4$9mQ#m+y{R^G)|C zu0(HK(Y&r3W0zhB(rrf8NVtaafP>R^83Fuv))3veSN*Ufrq zcM&RD4fBN5G>9GhOGWHT%25J0G}1eYP0UAc%9oILRXoqY`s(+8>Z=Bf|EaJ3t07;``5&d#tkr)tGKOFncaFM%?Fqx^01}-0TRU6q`$;x7mmq*&v4!2*tQj_g-98x1Q9fq4}!5N|!In@|n5 zHN4p+R=d`=uBo9c?L(>jnBs_+{N5!g8y^aj6a|aglhJNXmMyR+x|PF#&Z+r5(H$& z4jN)G1tFGv`awT1k~DycC6&2MEv27)pWXkhw$kAHC*xQd@^92S0p$J1R!p6J;U}x& zs$1k+&xr1y3+eteWbI*VWk%Q-0{SRulCN#RmN7HY6$OB{7UfLOi=t7X7h=153*agas7BA`6oDeaZW_}LRQ}BH%RiA&24Qk79 zW&fDG_MW`rK!ax`bUniBBGVVi@BkY{%Wg1y7myvt(WiZ4U*1ml>1Q1Ole4qPAE9B1 z(WMd*Z_00n=PGZ%&)s#-Gb)GXrUgO14)??LOez)1|A4;JLJAayun>ClAvZOS$Y;BP z^gH{zU4mIx6hR_0T7lTh?WjiE&;-t0ahUlF4Pv|(es7znGtsd1x7-alF|48{#c#+> zun~68ZLURs%nk4OzG|PYhC3TuWrD@_h24u%wOAK;O?qx6RAuD*eVJ9G=^h|)D^TOJ#$D8@dv;^DPl^f#ZMm8jZ zseYZhy=xJ@HQw>_kl1rGAD^(Vyt1;#UCp@9JAj9TKbl`l?4ETNeLf&MSml?15h6z) zzWm;2t3&-SzhAiunN6gaBwx{OUJv=L&<{sDT1!<8t4$LeF)H9?awu$dxD_m5A=f%e zYf*=Iu79}77|K+=KO_2hg2S4e{R4c%lPSZS<8!u`WSXeNso4R**_Xt4?UIyOY08hV z2k`jSk%G@(yZ=Ziiaa2IDne|$!qvS_3V;WmR!goEL4LL3@k>bD#t z;ZM>>YfKF3n=K(tG$Dg5K{jPSp>q97aIZwrcSH#&Q!_lHEzut@iW_tqg}(HcdC;cE zzU4NC4Izrwz#E(-b*R1}qlV28NqL@mX-n}koTwF1RMH|a!x$~^x`9F~#8xIw@gmfS z5JJrq8+Wj}c`M;+I2`x5qbt#m0@?Yz|Ci{N{$FEO{DEa!VLFEMy~`42Z97REtox}zYPHzAzIX5rceNbgZJVS)No5!S}HDV&S=M$LrONkpV~tm z{v?vIYsX;w-#kR%-;l}jO%o{*i>kLS23!yVto8A~wxi!UWA6OFtDr1FhN7`7evKlGOF5^HLrSCc{dbL_8SH=J z>c3j%9%i6!=^FVz!4)Ly#o0&TrS=)WPov|Wndie4^K!dbEBqZ*GbCMIMB5EIqC#;V8mJ>;k{VtyBAL1Nfzug{B! zTR>;ImLkPo<;`2M0HNbGw24bUL0Y0;LpaB`$^Wz9xc|KV`!giOG}&-QbA%lgI>gVh#G@ih_SwAGfsh!6J_<)DaCy7YRb zY|Oe<2uISHiMgAb`8%hYpl-!5IZ=Ch(XYIbCzPhlR9#rOPlBQQsEg!~D@ggi1veL= z)VCMNsW{!AeY4iD$sDktfjSftgt{ADYn}p~%0ysmriId;iT`|iF#UhEH)}>+m*JFk z5XFt3hF-gzY64sp!jk%;VCfTx)i$-UnQ96M8_2sKq@#uV_r6Y81PRNuXXhPs30 z@L;%coRg*`cdRBv@gl_ESRzK8j79^blxBz=bk&KivmoBtumg~q_y4$0E$^Qs4`Nh! zUs3BzlpH~877-95e3usZ>sTyEcp~F(kseY%-X36uy9@v+2ZX94E4G#GBMnh|w-~Lm z;Io~(z4HdV%`hXhAYwFQTQ$g$(X&a#!3IjK$WVqJaD9uP2~*^kjiqgHj6+$rD6%Mn z^X`V}W~to|48oR-xi;#R0DiBMAO(oOc#I6X>08W+9}7KPh32ax^XTPgx=53HR? zEVNvtG*_J8NZ0O_Hnn96Oo@w>NSlPylUd}QHaKnyXyM>gJ2Ez+Dzp ztW@Kq3tXeyj2AV`x0cI9R#glwBBB7kJ{MC?_%0&i)(0Os(1WHB{A%05z`30y$d{s5 znhtt*sXzDVb@fI0nOfmut{=*2wLcSuxvVXf^|&`B7d1g1@%-t0MTfgb*Q|h=PKddT ziHfYF7wG+grNMfmSjHv$YVx>rjL9;G#iw?6mKD0;eFcgvREY zpgbMW3iTAPGcwOK`4pGF`v%wgo5ajPy_u_>cv;SQmX?^rR`7@_m#HJFlFPx~n)Dbc>dg_RsC# zCu>C4#Nrqm_v!4RpOM9ye^~4B7Vc`ZKzPV-zBj8?rLY2R73D2))F1N9$w1;-f}z@@ zgdW~9yM55L!#b??T4DO`0!ObPkxADvdf^n5hVhMrCD{hAblV3CH2++nmotQJ$2Q@l zpYH8`&3XCwZ%(g#Q>yJ#KU>f3(NCT&B5^|Z0+#Fzl=M@0E;O1e%OUQ zr3pfS##2pO>3QT7Hyw~2RR`(EkY*p8G+oi9^Q2Mz_n#~mE-lrL+CT912AA=*+H}V( zv&zjwSOZT~9WlcUVuE*<{OMGxJ8o4IIpBLn*BqSq(@k#;HRX*xJsNc2l~dAE^61vw znC2Z;y{SQyn>AKC^NYXQF*#;P;T#@y$5x-blweH2!Ez###YdRoG|c-PUY`wtS>_>2 z{D|{F*V0f^0orjY)X(eOZt=XU7i%bYx5chZkVNo0$+Zn-MvnCoOrC>VpazA6rQ&~Y zKJ))D5t1mTz3zY_Kktw}$>l)vElH2`hcxcKfO~hh5G)z5&lJn~uTHfEGm8cbe?D!Rm%aJMJakj2S zn1@`}APu%)qzw&rcs3=}9g)X+EHX59?7wtL@kR5UWd>?s z77OJYa*Z^M)!%eZbdkZ-xDP`Rf9^8lLxK$uhxXVr16TybIh@69cDL-@kJJSL_Wzz{ z)<36-9u_x9SI-bp|&r}HLX9#Zo<7b4@w*Q+Bd+S4>{GjX` z=|n!rh?=5D`ntBjOY)bM#{&*$cX<1;_lwYBl?y%Dkrv8~FE*8#J?S_Roixh8nGq-% z0+a0_#Em#I{FcO@(xW0PhHrIDGOQuOUT20uvKeNl#C&A)Jb9FgNfMXhsZ({A+`P-Q z%TYmT1lLVJC^Ua*<$myHUc@=-RUZ^o2wgo{wa;&QwRbirgSAr>Fi4baODq&S33}oI~Ca+bO24IV` zBW4`>{C=TJJCvolbwGV9oILZ+Z_j&Ik7_;q}$wkqZC-2WYBC?3Uy zxjq&2s*@!6_m66<_2^jvTQ{*PK#k%=e`QVE1M+(0&dTNQo}~T-*`f%W@838_IFWE~ zr}8t@n(Clr!uJ%V!nwrJ9k;rQVf|*0uYHGlfuY5T)&l$ zW?H1gwA_Swlh8KsTWSy%_5u4SiLvB&lS38>{nFdOSm~@Y*+rk@!#BxjTz^7XpL|Eq zsLQYTke6HSAPWrpNa}bJ|DI)nV}oJMe$(5`W-;~HfKPOIhxexh4FX?#oI>xEHWrIP z*HKTdGygtlV|4F06t<%R214u&MxevF<%Di4&)8)@ER5M4HR3L}NZN?2LNRVjqNL{Zkyc*~c2efZg5qPw4GIRx zj(y#sq`p~bTH4!3~#F_d~gchQOCC(QA- zra^hJo}hn^IQrwx^J}IHg6i8mZy)V=kfzPki63~(Muz8Yd40=5I;+*=duF^%&%5D9 zYZhy5p2>5IMd~`j`3H3p$`#zqiOF@O(dN$?{TdZlxB)aVawBtfSn06spcG=fUp6hN zOq9880P01DlV!a6BK{JYSG4IRij zn8^vEHet7_a`8h<(JA{nf&mqHd^=pLG^||g9}YpvCv{d-FQTQ#rM-+bqCYwX6${V*rG8D;2pPZeVtx_ z5$kF0g}Y_gZn0{>>+t-t-w1@6d-mvpXe}Pvnm`yz>#)SE3fVe0V4@d-G}>J+-wG-y}&&_rXj!O3d zHnrwk0aki?_{vsd`xR=53JV*OiN{ZW5DSxa3PU^S53~4hvd`vYC2Zsy;56~c2N2#d zOpu&W8XauONEjR7CA0{Ezu|6FtJln2G?MPtNd;T4Y0KY~1Agi^1KIKZ58B=_y3+95 z_Ka=YNyWBp+qRvGZJQO_s@PV=s@S%j-u1tIPWQdvdW=5b_lMuu``PPV?|SB(%On0q zF2wS1tWHpVcLp+7CE-F8hpi@1fMskGugA1E$vSa)F&3;}LjSSrp!OV&jx`uAXiek& z3hSsBGwVeu3hYv1#qM@3$V{7Cd=ySjy~9AN@60&@oqQ$sN8 zDQcU{6XA-*j!dzGxQ}d|o}TF0gwt5#e5j_G7F5CXWLnr^fAW-VPJ_PImZ(EsdH zn_=O_X#PK7=MNMmo2V-?fomf61DFL(!CncV#pG%hRS7XUwBXiBQF0 zu+b_dS<38O1C-5POQkU!+QJz>YIMd|>ZR&xPx>qbn~K}R@{AGrGbmszyAl_ZH$kZ? zj;yUWNTlFndJ#cW5gYaT`g=k8m*l#=BYbOH7I4bcIb!)EZYJX)LUnu%al#bSk%G0e z*r&{S06Rh2b+iXtqKYY{b*I_1HiKfHb8uGr=k6jKg*-%U&y&J_DkU63O!XWESEe^j zcaCFTON7Yzd4Xu@!#Bc95BT#=Z90oM)~rp` z<#{WzfE$WAsUxW53*gSOxxjJ!=!HAFFbEARPD!2SotVfzu6-7VhQKzf=uc(?Is_Fb zs-+kUx0%i}%knP6kV?x55r45~5+}tABJJ@mA z0s+5w++wpD$%~pJZR@+RzGBieUX{r%)W6`nNEz=X+b?e`?|e>H%Z(;SY+o$ zazYx&kHUSvI=n4#@>ymsY1l2_ypH@~3ePQJE@y@Hx|e(<6^-)FchSptLuo6Ou1zl4 zqhvM4XBk?V>ZSSZ1bHg4khhU8c|L^%gAAdesy#7(9$%Flp?6N3aDu_J+5Vgcm(H!` zda0Z7kXPgxqZ{w(;5!1aBl%wiZsT1)gx61o6N7POKVLkI0(1L}5ipB#d_VW0((q8- zJ825p&fsfg)8w8$#MAai$oCPTAWc;|Y4bduR1$ALWe(KwOzcxE`*x`ZP{|?B8YeUI zKL3Rd?8fK}Kp`)Bw*-YV2tmJx@f&>NF~BNdt|)7kQM(9e!Z|3Zr?-BS)qF;E^3@cp zsVkftlbmu$6CCx2q3zB1`fRKia2WX_bn_BQRNY5vI(Lfk{J|&Gq|E#w{O`GnZ0f37 z1Q9qm+^)v{yiBAZ-%M^i;&moVl^?$5uT1k25+kJWfqH=}A)baR?;~fArY0A>Gq%+V z-hI2?(B!(nV6Qi(%d}hmds#X5@m}R1NX6Tr7*E|Sr__W`796LdT(EB+9!*V8{tQLx zBw@(gKld$T)$Mwo%)?oHcecpPeFG|6R%DN3x&DzDy3m$q{|8xF?Y>dny)_Fn$Y{_+ z-hId@GVh=yduJW6h&`NJLH!K!;v8m1A%GnvE9e2w%Qy0VCS0|ozY+K=pw?A#ZXqnx zLbV#d;|dCu9B-Mb)d)_hy~taX?7PNp7;AuaX6F4bkoThu%@1C9;VKVqz+Nmz5nt`OVFYv3pQc zt@sdpu$Cf*IR|4OhK8>1IFt|?>0&HZu3+8Td5HlAWR`v_Y1-tHu>wL*>1T$>E@TCS z88M`PGi=o1thME@hrBbb8%{wbORTJW`n0-A(wN-q%>>w4?;`d$fp<@Ig&xre2ox`H zHyj0z2*?#P`x7Bs{-TNgr5Lv60L(#;y}mJJ3T$nv50w%TIQQ4Aan-G>oFBxBqJhMG zz8wj=>DxZl;ck&-XN-6`Igqs|@s)mg85=?gA;AKkr zYqKf9kanm;{@a%Y8sV`H6ow<`lM{`^srK(a<6Mw6iB47kb~J_#I-WEwH`?*mNUbQ=WcZr) z5DA@1Fmt3}mPKk}dfv8X{|A+`r^Y+MmfR%TyQBo*XOTs&mzvXHGkee+5MwR}()_F9 zM@|RZ&&hfvMP_3XgMWH4^x3vGn2*29MHz)SH?43&l5{D5C?GW|A!jj;fYrq>NG#X4 zhBcq?hX!NqAC8>s6X1+YwCI*}eLp|L$dbwk90u0*qW-p*`scI3sJ1_v zEhhU6WIx}H9w6@A8TTg%c*@%;>Gk;)l%OLjg^DNi;U0NPhYs zy`Q_+6HN(QXwe*#NR_Fz$AP}{4s41Rf!wjR;g{+@fs-~x+ri<4wL$G2#H$AJw%;|w zavxV?pSHgm)RE3-@vsmrfkVd-zFZ90zcYggSVDMfYgta{jdWvT!9Q5BU$mTv)abwc z1jjAoWY}Wu>@09|r-*I;A)1zQBz!-1Vm{ezB0kg#SISX(uG#YqeHL5&dE8&L=I8E{ zA<&U?G@4p3g7~H^S|slJAis8Mqo~x)v3AZ~*$ZVg+IuzF1sq3M2w5cVTa0UB7E$C9xPVtNEHHDOP)Le^qcBXGJITGp!Rhb)GQmV`t!e>zkQJln3xD zh@brHL!-?Gvx_;kUmVP=_AgaTVHNu#u9qfMDd^6@#7z8C(6_!~udTVC8rL#WHMz{b z2ajV-@?MLngDtNL-zk`~W$-0CFpWp?oiG&)4abgMV{zpGc5G+t?W`~~H^o~O+emns zncefO0nP;(1sUrt&@LVxvY{oXh#;Hl)B%CKT3KXLaFzXR@5_VRHtP^C`9W&J>+onw zLXOqEHTf3_ew_kI6mHP!&@+ksG0ZQ`BHSW*_dV%aUrQ2Mp`7~`RHhcTq3QAD<3{A0 z4(;%c&@F>?vAW)l#^uvb)fL`KPkOM^N}vVr!)z(_s!N*;#;{RH&nVmPN67f|AwoNx z(6I~}138K4{vm1{crpMx4rkA$@~pukZoCpK$NDm$Qb+vWhQFq8<~9;t3Rfx}I$&9D{9HO+^&L7JSCha! zzJr!TUBxE|%W+9G#%|9kc7{4)0b)Qx+#m+$;;uTmdHD38f3%=2^9R@vJ$tttSb68q z2^|A4Hq@MJ)sk-pSl4mnv{^9|)FnoyoOy%>Svl(Z(k>tZ%t;WzXa$*9odE2(@I?({ z*ShG?!<_T(MK;wf4T(o)BUM=aNyZ3Wn7_!4QF8)S9;Alb7C z_hKD6kX_%6fE(63sUy9SQwiU*dV7O2-$E_4S)ArO9OQIs5gq`BmB%h@JuJr>Rw5uK zNKv5RABp&>xM(jfIpvk=3It9wp>Pz;63ztd-MC`Oo35AUW~ShOrY|?8Kci^@wLSN1 zRp>{QM}|nd?nD7gwtbwd-ez;lR^Po_UIlhhKM-G|k?-y$*SjSz9%>0HrZ$AzPQ@4+ z&IXkC(Z8u_Z1)zg+%_*UyaV!6q1hC(ntG{MaFGI&aTs|p6gGT zR1Pl=5gJK4g~R7y2P?p)gp^&rlcDHFEgttlZ!)BttI@6ib^-%WEIl?LWg(POO}#>G z;c@jbD;3|MuMxYDK9tPVg&IqKtJt2ly?AnmA|!{qVk}zp<%Om`v8nkW$k7rWxL^%v z)YN*l3DzA%*7u^X@j974+_!x7Tr^k@4uIWUpnjA38S1qy%h&<3-J+I1;NyCwV!}JuVEQ?*77uWWq@^=u$>eix7Hv=_qh}Blo~(+>trDz^ z`IUCHJS0yJDxVN;tw^odngSrz5JWHC)QE1n9wK46GlP#v?XeWYHZG(B8z3a(g$K1EDa>3<2jKUhCNWQ@w}q)@=>_Pk*i)-lW|N z+8kvT&hSZH%f1PS+pv9@ASu77Lhr(&1|#vdno$zHeq2s{C>BOwJc)vrtLe&7^Av2(u8Uy6cd9zo+B`8M9Z1@P*HLht;t_4cOpE=!^&n>~AiZG$z| zyq};$7<$t&746?UZ_q_HD%?k*tI1yxOTp>j)ph9<>);)`_R!xDa0uYfQm`HXd&?{e zECSc^3_oz*=hlh8!we8GFyzBYKRWmwt>gIV_NacV+h_w4Xu$ROYoEPF$zCu3Z*3(l zj-5^6vYlA!Y~QdeVQFY!wLl6}xX}EkgC~F;d4)-mOHr!;wmazi_9$)#)K^@WSt7Er z6uuk@S@$y%+;?;U)9@TbOx0+nJAfpo3%_yK917m}%L~RDMf#W8V?2;tYvW6o`W!)# zXDu1n_E%0?n9orMO7P`P$O*0ELQYB@GsWX$W&*_L{w5RK*B83VExwx#jufVE-2@W^ zvK_8BY(a{!k%Vbf-9+(22DYDk;=sNXE0tL7W81^#BTS)79J_*)FiDf$oGD^ZnyL(s z2rhQL34k31Dlyo>SkEF4me^+jB~GNpWo5+N_j9Xk#CdKnp}mKE=;j6M;Wutvf)->> z`3|N7Oc76FMT76t+X!sk0%jXELnKEwz{v~_F~lfRIOOxn15AIbCKJ=v4fL{5 zLiNxJdC<*&GSC=b2eS2p4-iZ4=*!`2aqA$14JnFr|6x`dN%WJ2ah#R^2;|Fz>dljv2FGtaLaQttHnpN z(a}1_0eR|euaQu1>Gr^hZ#rO!#quR%tx8M6eTWL&R1K7YWrO~c7bhb#KunG zQYytcv$j&2!-o1*z??T{|5r*ISP@KtGC-iCfQUOLXl$j2lbl;Rv$bN8Q5{(@YWj{% z06th7_(y{4$I7l-FWi*M<*FKG>B1uzqHXQt0|#J7kB3cl zmUyTf!w6f4D00jv(7xbCHY(>4J6VKKi*XvK+>d&npG3t$qbkZT;MhA?YgeZAvXhA1 zkDE@{~ z!QKL1@unlbB93a{4mx;e{4ek^hYso?$W=(8%=Y;ttfzVX=fNqfBe9 z&l|?InbDknK-6e$%-gI$XZf@b3TlEEZW$ry!fNe!?~miua}rxe9BB{`Z`H*OKh|;# z6`3)9T`r6YSh%v=Gw)3k{8jeJ9=P$%rCoctbLf^dA{%;+^DB)PhjIPFRT5|kCr^aZ zcHH!Tdq6So1i?R@h5asyRm`D82!nTpU3w}95Rcr`Dbw*{)ac#I6k*CewlE5xjXju_ z8KWXw*=k);Vkq?b)?Zx<)=8v9CH|zzzp!N;E z$ETr9{-QEdrTlPP^KZk)d)`GIq%Pm>wido^<|9$ubqkpWuw(fx4)OA@-67$HmdAV~ zO?*;Q6iwN2iAW$|;uZ=h1W=K_I!RYa$U%DyIAH9y=s)klJg>pnZVgXSuV@d)lJ8h7 zGDe!(Nwn?GCF{}sKFjlL?oTfUs4_~rH@xzpv>r$mpw}lfke_B_M#k}3s$-w$EZ@F&S^ELg*stu+Y`O}o@Ljsl5 zx3iMWokC+gPgRjxCY%t!j*UBDM|?}zQrGF&^(h6DK|BFlLuvOu@_xy9lql1>6NPT< z*p=+B*<`1SD=i|zJ?vtPO=8#p>}H-#d|)Sbo?41rI4gNgT(pM49OG$%6AHp@naNw> zE;u$H2EFw_^wBnA9hKJXBf!2wFdjV=7+?8gsZzC|1{0m_Xkq20KkPR>mEv9GA5*s_ zCJ7VDQ!6c-%-cy`4jhyWA6Z(Tz)SjtrV|%eLcSjN6wCC1^lj7K-%7?f;Fth*9PN|h zdf56k9+;_##NFd~#t&8ARJA3-yad85L}UYab|i| z)Y;<bljhVR5|1Go$Fr$aeKcR%%nNyb@yeq*ya|oE2B)o!3%j0nFOzZ zv?io%L8HkO=cq4vT?EyxwwIJk(lwc1)&cCezIbWr6L*XvX!8_?=^;FbMg2t~-avQ` zn2;4S=u&WVd3R9;okjf$7;plfhXo+Zl5q-?o$zj1@obCM_4#^7;`6<6hv7+(Q)=;G zf`M$LwYGqrVn3RR1_$Y0ZBdM8DWHT&%H#tRze7j7aEG@0kH0nNBct#f&SB^_M@ieltRg$N#85z3oO4UTnrv7#r+~-X@*^N9FuxuXj(_^ z!rZ$5c|h^L7*|eaV4bH|xq__t$@5s->Nrm5eB$*l3t=W2^?#r1&Uudea6A2Etp$Qf zzqwDU;z5vpDm|@LnRGP?H7?OjL@yK?rmESD3&Z&Iy~_2EH+MO>jRcok1oCp!#FAVm zJcI}9$}=7@omDo3gVooneM0xBPN{R>A7W{H5pg=-Jdfu46mU_Tx1X$u^%Ps)WZ8U z>d$A;UK3&I-0rPh*}$+yShm{~IFF+?r)(+kvRdjjT~{ygzUf|{ste%{yL7_rfvYHv zd$t+cH60{{f6jqdva;b=D8Es-VahVm4?Twhf-1-?_Gic=oqM!fQ@9kX;i858qjpV` z2e2rpBUb<~M*#kpvhB~gwtH8ezc1?MejLu^6FgICdAO6fK=hQ?- zD?@ba93;b+Y%H|uspwy35ka+PFhwdIv5Hd7x<5<29lG3yNPmbeU?LWc{JlW+ETl0K z`GX2q(*xqd2`)+j2=PXE%?Fv9g^u=hk6R1RBGEa}q0`QkCH;Pg%iK19aD^GA;1N5*Whz-08c z^eygbPmeZ%Y)COZnj@Z6V*pU=_ z5R|%^v^~{g(}-M$&JU|1_gS6mRbxBRj`spi+IN^iPK9c2r_R=R1e7d5TE9`9N)tQ= zFsoB~7of>bS+hXQ%5NJ*rIriMtQuhXuMB3dnbimeNk`I4`rnsqNcaf0HIMOX8a|s7 zNm|V*lA;h>509#yV&+lYJX^T6e8?cc}iJOF>(+6+fw@%djytK1`-01HE5WSBrA#jGl+es|mW#!W z>-E>mWr%z9$%}dEeCS#cT$Mr0M;a#kL87$wC|k#XMpQT36ss4lcTKtgpyNOf2mtaC zN4e!sPr2H9rXSW1TVd?Xd2*}*&yHGQ>>`e_dixW!6-YN-sZk{VNJ2NSYVpAYthLxg z5-6Mn1U=Qlo;F=fEpTJREq=IG?f@pkgYn?J4#YrFCo0`_!~7b~LhYsc!s}vX$qhop zKdvVVM7optMxQSpGj1AabM(~UgU7wtrX-Ct90Kk77z6W73JPvQDhTu{M-3HW$pi(L z@@EMUyGvOQJ|KktI8K+za-7Gz*g=E<8|1sgCeeN|)799^hNt%T!l3k3ZP zMK?D8dSqJ_)3LBfp0tKX?{c(eMeqv#?2nKpGEI=Jo~r76{83p@M~qRov+{WJpNL@U z{}@$1lM)7L@`XteZRAAI$suY#ArJlO)=Wd&EB97LT$JJ z?3iZr^&Mhx|-7;}H~vwH?a)D|)#5a9Df5FH0- zpv10Ad61{G57I!FVfFP=*5BlA2GNhhABCh*;Ml$V>{@a+ zk~vsG7b`w(;^7W@jWM}sMI(>@PF6h;MHOFrHxfbWe$8E{Z|P=dJQL6SgL$csF!J+A zG_?cWPh8OR4 z04R;KW)XZlt6u?2lx!>7^dQ7dL%3z%#RWdv34sJR+|&NKo(m#bOp1t1iSgAhk1F*3 z#qSm(p7O~EvPk2hj2^Ec6<;=SBoiv438yqtv?cJm9OfJhLS>5Y4`tZQ`B0*7VQQ0Y zdT(jNnpVr8fzmka`0OSLQTqXo*nYs7Ax1Ij5f=ng2-E6BUWZ3wo)ogam{!G~(zqAu z=7Xi4S8yvi64>;rT&Zeg0e(A-kk;PAMyFBhT0*VFYt?T`57#+P+i|B7}9AccGDJuJp-lP%osfST6BvCY8u}c zIrc9<5|u?niF=3c6atHKEiN#h?ysaB=1E3jOq#pdpKK9{G`lH{ z+7>IT3g@Z5(*=ZxQ0hBn{JfR0;m$%hKxkOtT&Wm*~U^I zHPD2H37@go&)!b?ax276TC%v3Hu}Bur6eEM*Z9P`b}s;SG#FWgN#aj4SEkO;<8{|R zLC!xU^`@?=`#R>~oiuJ+_nmls(I_6&^PN||U~Hdsf1aRds97G6PZ`(AaXGv#MlKlr z#DqMbEd811)qzl`%=o#ndgtJH3>V!d&W65MFZFF1NMXAOUr06Us)i7)bgop3YOi{7 z21Wz|liqAB$}E}Zt^;642OUMA6}vH2)YD@#>`vkVlQAVtn}9!BqT=}`?Wwo?C7UPg z-Q@`Kem`Y4RIL}eCgvTOA9pb&j?HbDNUuqsW90V-g9B3@#So9)LN#NgfM(tXWjj@7 zB`=b9h9H+A&o_HYNJp8Rcs)*x0V)xnca-0;;#(_Uebf&Ld#PdI`Jxb(S+`Tfh5!N= zq67HFbNB}kG|4^a`(vmM?1W?EI=BI6T zj50i631Cy=NnaHX$u2t(B*nSSnZ`PPoca7q|D3h%8>8Mt;IhDcq(HRKTQTzMR2!qg zc9EOa-_V61{cI6hTpbAzrW=lNG$-__lw#l*X6xS=bwuIKSMu-2+sYP z3EXx~-d!$ApH^_ypi+5S_}N)k6T_=+=~R9QV)*y^ld8vhCN99ys6d$C--p`6uiI&4Nuh2Oti!;(Rn za)1EZPGYRDr<@2|i&ar#FuIE3WGH>V_L*=O{DP&`G%Z?^xfjNtkCSuk~ z>iQ&@P~-D6KeUOBb_C+?CZI2FF zv%+BlEoO$sAYerVWSsoIaZ>22)D1_MDzqu`$s%KxaMbIUs%6HO@pCJcYxt;NS8^jJ z4$_<;w9sfxM8ph!H8M~X<)_4=7L*j_wz@BS=zb|{_A>s{TwzmF*qWoH)=pj@LgQ@P zP0(KN_09z|{lSS(`70&~QLJ{+9`M=GqM6S|5vHu$nIm9u3vZ0d9}p@moRnZINYq^7 zX3s&@p6b)?qJ`K~TR1gvQcEy!99%*}RfktInb5~T-$8MB;s$xu$_#~LO!I#HY3&!z z?Z^QWcY1JhFjyzH!POyrTSbxB-vZL3Z97U^j))>C?qe@hF#tX--9Ea}IF^v~1toh- zEr|w8imC4Gh}^Dj$fp8e$9c;5dWC+q?$~k`n=4Ax_9aG%8uE`bh5a-t{JtBy?X>RmHdPiFsO9Ry#LvSaqz%Yu@ z>0pRH`>h4pfT%pCS-pL=UHIo1+NS~IKEmo&%GJ=+uj_?Jh;2ecHO=lv#QS(Loe{w3 z8`@qE_GgJJKaI&BeGBfm6C+n{2~UXbvo6>&H`N66GuSbNh?=ICCet}| zCQD8rSlUhVgG{zRV30@zr5Q+zb=`I)ji*ouLUi!%QR{$bj&$}Sgb-c+^tA|@e1la< z?G+l#G{i2KitcN`A8{uJ%1RHT#9RRuT z)Bo9tXlxj8|J%ti?4=B6>i3Twr|?F&A?Mau+>*h%A7S-+oEyyAY94Zafgw7ysd`eX zj@_2WNnO_lZ~By9y%u(}EqBCLt>h=k|MIT?>t0jv=^{dD0Fl-z=v`5iU_iiT$E^f` zR+rzCHZvXF>*BYwZgG~q!DUln~mj|WRvJn~6f(eUNlR-&H zW!zj`TU62vLi1KXC=`*FHJ29a4XsDiXx_}PoHBhi62yJ0*2K#?dLx+BtpL3k?>`;3 zulIlVV*h+)00}lghb=ev-whdXE+4>G7IzN`2(+Q3f&x2Zx7aL{v=EMiJ`wR)?;ZFS zBc~cBmNiyRNAI2N#5iyTvWS1@uPJ*9ko<0D(PeIDO9Sob|6>WO63L@eZ*0kn@E1h&V*XW`3Ps4B}Fjq4GV0h zX1q`l{wc+g9gjTVyyJt~9~M+2K@#kt^yJzENB))V@6-J+{jYtu|PLMqP+f3>p zdhz7dVeiNnVcSS107eR#60;+ftjH;2YpyX7=^FT2Yv4nT z9hw;#)+Hf`Wj9wd%U}Y}w6Kd3YH26(dwqy4!F+K4{#Q)JUYi@8wJEH{d>zX>DLY); zk`Iz>Hol&)5^}r|z3jhwIskf}CT=Y{^*iw!h zG`k_T_l_tmkPf=RSLMr}B!?C6OKG`FCdiC&T45b$5cHGIaG;O}Wu zW9}0(34{K7DWcPNsd;{-kCV4o59C|Y03)0b6n9s;BnZR+1%!oUEj%li_{%EO$!RI4 zEPuRM(&$)&A1=yo!#0vq2i#aCbpMtkMvvU14%o2pEf$3NZAaQdGY1s|cEsp(+C|nh zL9du^It@ux@l^`P+Jp+4@k+Hxq9g(_)Qz-&`42HCSTDl-`rWr%BJJkbOv%acB`mqu zEr1>GR{=b2eC`D=>Bvt{{ygz-hpYd*rBVIoE$y--K}HA}9Fn_W%~m-8tk6)<{XFKE5(g z@A`T_=u+9ZTefoQEXaY(v}qlD#9tpy^rnAQD15Mh6hs(TM=g!obpETh8$MIqh0PS| zTbVdfE;%UEOk5wS^4AY`E%{sMo>-iVB#lysaX_76{8wj!HU9THBR2=AGiE~nuR0@O z?T^ARl^}jnqILjCX9`2-5dl*wyg60RS_pZIiOKsl^ham^yDG4}d{&Vp z0&c8jClwK#`Q|%FOM3Iw9u-u~^M|m`%B9$J7SmG+1T+ezTk?ySDB!#!$1hH^ekM-a zyj%!0$QgXZzQ|Z@yjfg_G(g*ll`FR%d z<3Y~YUEdR~(^%kWvdL;fxa*3#?@3ZoVpXjZc;UE1>VyWz=xIm$qD;=8QHm1EMf<>* zLrOxtKlilvzSY_=Z!dQt@D@v-4#18AO-tTv#wJ-p3fF!dc!-B}!&n@5ZC|}!twW}X zMUr5|9d`p${p1MPj4-$V-NefStiKeHOF1yZ?O4pZsMFVR=UvGkIGzvk4jSd2P&Z$& zM}7d!yDjp)rOweEh$ks$HEsw+>L$`nbpy)Ed(mt8EI|P2kvSiEf9i^A@pGXD>#9Oqgw+P$s?)2qKk0DF}EV%mfx@^>{k4ylCS}D|||T|0@1GT=MK2L5H_*z_*+b zawsJUQ=$!oitiL7U^azU*|SvXwY+Wg7wvgdfw%hZWsE&kqhC!cxua6AFBKKq_9SS= z^GoS6=iqfmcr)V=1M}&Om;j}e(2dPGrn7Cnf-a9-Z)Y^_cVT%`^0BFdI>~(mhCVvG zrxMvNA#n^am}suN(p_VOtRVQz+FOd#bW!oejp9K ze@wIgE9~WyDGcyjB_U8u21^yw;6e~20tVu~vU$O4&ApYk&2+1K;PfUv%vwq5pBC0i zZ`71-H;si?4P%4Z`IwtC+{k4PhR%Huxl(yg3Lq_TD7UhD&8q=QhQr!u{Wyh?t_}6%)}0q?LL!*T_L&K#lZi`0pAiltuPmp13#tiwjmu$u7B) zAN-l~$XWyJA|GNai;B9(W;n9T!bp!FzOyriV)_JrRzkb;!EK?czrWQy<>D;qU%)~8 zTyoImDi9-;1>0h5fGnN#GM4QSM(|yXGJrA#8guh ze^-{J4PR7iJseQMhY38~j|A_xid$(H|2*$CF0Fe%e+)ePVSWGX5r8(I400`c-ff=p zVt_V20qX0|n|OKvPQ#$g8ToNUy)dwy00O7g;6q%erjrj3CFzD$mINm1M>)ycm4lNc z+%GYWi=Zg?sFsC|G;rp2{#MX2*wN9jS^t1v9F5pnJ7Bg`Ob1YW_DVUT!F-SIdisQC^X`O&biHfQiK0U>G*xymA6YC?|Qgq ztw^-aHk5y$pGioqcTKZ>#l9~<`kqzNz<&8jKSq-FGg;rb`NC9@G3KMs`V_kQsx z1f}MmFWCIn<%Yyta8d}4My#mOwo-IbtVx8^Ap=XaZnTLG|R)*?{GQ()XY+zOpY=y6|V zlWA39W}9gqcPU3-H>ye5M+5wKFXB=A?VwLbp;*Q>qMYpbfvm)+HVHk5{EmL%HYD}f zIKgqIFsrCa=;Llo(sf*`VKmtYYB-Kypsmng*k@^6*wmGx%0d|f%fQN$54E;iocd&e zXyWvR4HxcVcY`yom^@-!BKd#%H$oPNC$p-ZCFLaI!#T(7r2AXD zmKD?)H;_a0YDRQh!WHVJM1RODhjS$Nm;?asULC!2QhE-stmkd{*v1FZ^%Hyoi^bIH$xxcb*s;pL1yI0oP zJ4BgN56>>{83OhTU&=;u4Vg)Kbg_wwQ8;9H0hWH+B@xNTq-1BWqN^E6GI($>GCya3 zZBa$1&aS;|GC#LNbsgJC!=&x6g5L%U!JAW-GRnwOcuErc2(1R2OzDxPQcg#Lxmy*+ z4{0B*X#48Frml@dD*7S8eTcN#L~m^Zond|~+C z!ur?_pfFi_x&)B+LHkrcL#%&23}N<&;tKWzbxe1lvPX_!w(IQaLNMNqkl5gX(7S4ac@*NI8f#>mx1- zNB{2ma0!w6s{oR@D^M2|w}@de#-P|N1{UYD`MOvYjDRDKt$y)Y zj^y!|zBlNtH4T3bl7&!mkb&;3sa~OnU`}cr1y0ERf)c=vH*ZftsqmfqA^w8pzp(AA zfnvdy?vPjj%!o*`e0UE!^E&WOxcd_kY{3$Z1eUf$|4F8HhYlP*&Mmyl!G)gjT*2NT zb#Qo!Y$Cxi>)H}Xih{tT|Mbp(x|6GD&+DLb`33mnl%T_*Q6oLMnOiGvCAb#(ZwC8c zJ9I2h9Vr|Y3N3~T zHhi5>3v!IKYRhix2^ANDz5|0BGlBP^%Ueq|fD5sZ}ly^iaXPM5Am)L&P zIYoaTHtodpr#wF5Y7_N=Ux?d^)QE>~4Dqq*pVA(Tr|sqMAVj;0^jl#*w-63Hr5t;H z^4t>d+TB@B^0U2cWVOw$vvlwOt=eeIwiW}7^`^i-X~1Y{A=s|O@*3uCXIy)PCzeL9 z)M?^Vzc_o?W4No#^H&i?l7Q?auZ>JQyyFXD?>KPQ*Gsz$_?96-#3lyL0PKJjBNNNE zf}IRMU$$BOyZwP1kkCTnefl1Do|RT{g6Qd11c<7D?HHtL@`GKSzRew0dMB4IYL*Dns9d{OyOR54zTSx z1g|ns0;Ngk&o6|)6upXYcuO<*3W7-luoJ?2f%vtMzgFckpxkY!E9MSwR`KFOdS$Tt)8pR-Lf)?IA7Clp~IQZT#Ph5{d6>OIrI`P-T z2U(+O7MerF!DmiD?pMT^x3Kgau7Sm8_JBYF%36q*UYCiZc;avuLl#>Kxj>|8b_Tn{ zVHXd89m)2*F>B$NLwkFSF*vPrv5r#Qj6+6aZvTCs3l|rM{g{@96{YW6n2i2yS)tIm zxNroW`frvP!Pelw!Df4=QJZs* z(4xIE@?Ws&79awWeb`VyB7btsEmq=j8wXRK73V8p-E9Eu$Tgnvy`-<%@tl7^*(!_e zf+%+M+tE4}nT(mH*Z4k3D`as?vDYL#=>}RIJTj#9!T-qZ4eOM{3f5uL%UjDRSSY8U z)6URDp~|{%n^LAMc+zV~nd9D`e9{5?ZUOo8ily+cayU&1ic{;4Q-?OS; z4E=S7&TgLd(qdSx3&^|^S|$}@-kg{hx^G0v&{5FT z_J{A7j=_DTN;)5?@-P`zBAKN3kwpO(yx9JEcs zACgCRE8dK}pb2go%%4VJ$xB%(+PYgAYKBV?I&05yD zl=M!?K6-L2!+Ee9_fH`~%vKoMX$BLibenS)MzvBhMdT>V6d?`2d(?)+>B0oCZhxdVK7sF`Tcml13(5!Mm99v68#K z4YxLvXr@<*;;p~J&9F#Hup_l&<`c2&jT+@ptWw~-SvzZrL9?Lvn&k3 zu1m!8hFN!)5gjA%r5B3SzN(BuoXNG~ z^}aYCQf@ioV+XiasQ>$?%LyrwEI8clpI!_txT;vdPRO`T;+>RVvw>L-MZmkF2|tao z@fUaX+g2A^h$q$I3ywtl5k>j${^i!J;?Z57zrh=PDCeM+q|=a%1V{Gu0&S6l%0Tj2 z?v!?c4ZstJ`UZweDfVK{kH53AKFvTVmNAF-PY+=Z{iZ3(*!X1+0h0!7P)fA7Qqc~Q>X;Us7ow;()uq0W^fESCF;TEdZo z$HmSjm2%!Y?qyoQdZM7haXBp~Ix9yvz94j*-H}%B|CD9$r$g=Y`zY;;7!{W_9g1d% zQ!z^@I8>z^6Ubt%&|C+YvUKXVPX?2_e4uD}82K~FdnFNqeHUX<=*j>)M+HXz2fijOAE;4Y_(H3<`j)xO zZHVHU=P!q+Dwi0B!~!G$JLbLc8poaz6Hv+PGZw2|wm3=4JyfHZF38UJkXwi0a5D|} zBG#_cTG-8VS306^XnQ8D#f0wmZ0d*{Eu}8Bs}*&opJznENxN8 zs*o21Qn`6eSB#fLZ1Ig@LmAc?Xz8&&?Igo)fx&!J0r<0LZ2?qArQH3t1(uyHuEE=6 z4bXV0M)X)ThN37Zkt}o-ARs;spCMy9)7H9tY46|pQgeMnU}ky9dk{@%kXP}kcS)oD z70BuE<(I!F@{1}$l#MIGGQEvi8)6aY?jEGH%T}ZS{+VAh*n(31K4%^*!hh+ot8T-y z|5Ujvg}kFTs@Yv7ADRzJtczWKzLDEX@hBbU*XFw=6w=ep7C@DZ^Ici%4hg z`y*2a(2Eh{ys_j*@S8E3?(|5Tw#6m)q-P0 z)4Spz-@f83^Cw9QoCGG;>Pt|FK>|;%9oadYHVKc(-l4BeZR+*2c>a>VEP!||yNHL- z6^B#f9WLTRMBFeZ)r^N^iz3qM36(V&s4wS3CLn8wKQ)wYzs*1l*i`Bh85%!nnc59S zUpK^OOy;SN5h3#SXZUS6iIN~LE;s%&^DYJkXlMzf2?*+x7$8Nl=SL)}CBvh7?cgfz zYW$P4_RhK7en%hL{e*^HFj0Dja=Y@8uxFCI5Vx6NipMH&jyqSp4g;(JF+DFy=?+>> zw)CnVIoC!lW#xh5ifTUrV8^=<^yl}E`+nAWk2>FGcvhutjWvhRT(t%d(ZGqduo>dJ zsj56J(3_urhNEW~$E3T=C=u2D_>`A~&N{8Z%|`lT$ZxlLN(Z)JH(wF@}iGqr);@GKF_IYf+E`PpI;m&o@*K6{u*6Hf&v~=U;qwY~#=wpW>WKwL7rnyXVy5PsO+Wd*?ZxdQ5`#j3iR&WxC`!Im zB}~v!);>+<-iYC@S4%w|@?yNHBRQ)rqK44Ob8DJR<#cdFnPs~}edlXw-L zw5i}!9C-_tiw!#i4NuO_W`;D&>2tVj%RGyO^CIPjaJR7U45+{?=-KPY>Rz3!9JOj6 zVnNh%Tka}|%&x)PhJ*@sV5#09T`F7)7a^O5eP|eKY_DMB0CvP!U$6cA z)~!`iL@MZ(9{pnr&&5DH|E>@?x5eihMF*KZZgt0t&12cSDQeV7cQEX4@~RL~3`49{ z4Z;9xVUbqq|-JvQlmj@Dn!H753XOG8gC_AzkhuSOa&S6ID726#aX(JUawbs!t%>V+M z-mW-xS74G#SMxGJiOxWa7A7ar-(mh`=O9ICv2IYt`BvcB+ZZ4bqAEkL*nXoZAlEOL zC~WvDitw#rTvPtdCgWDHtd<`aDkFOvz{sn04tOnDPG9Dy*p8TqXDIMiJ9hd;<7dRw z1uv0)WHy~J_dXoPW6xdA&?we(A5x~UO3Mb#jtSO}>y2;xk$|qGkq_kZl{JAo$ z^UOb7YKQg7rhKqN)6bRJhxX1ouLzS-MJx7x$I~Pd?np6YLa6r0r;_A#vqtv3L*;;$ zZ}hK5BBz%WWI0(c=?tOcX50W=oZS z+#Ad)VSP7^m^?AleK+YM1~*teRF-rR&rl1&)V;X0JF7*UTMWJF9a57i8n`4};_}q2 zf8bYU`1>Pwxt-f*`__$Ay4Suod@Cvo3|rz<#+v98uTNk8F_G0R55;oBxW9Yw@76km)8cI{g)Em@e+K|N%4S8G;6iM5VXi#K@SvLa zYooHRVmy3Unx*}qZEFSbg`hR$IG>~u%wt$%IM-q&PdP+e8y38N5JBuW>`78dCTbEjl{zn@ z1NTLLAp*8(x(f`WD}Wsp`yHX&2ZD+y&-NtO=Mxha&952t0hOOdF8GJECODE=ILKCA z`mAva0;t$f##w!gIHGS=Wgg*6_Zy-UEP~>WaNni)o0e;=MwM#;3m$vX1UIM<7=EQpejzV=fTJAHryaq=J)k=<_pk@uIZt_m`D zE`;!Mvvy~=L4^n^<29n#qy9ZkTV}aQl z6;?bcOWlXoj1*`1@L?4=vOsQL2$vaZi;_A#heg-=edBH(#nY22{!=%NRMUz<4x}pn zbZj_KzDPwUx&*cl{s(51b7;zzsPl6;cJ{lkys ztPv1GS&V_rvzDg79Nm=O*+}8cT~n<9c63itqpF^ySgR@6raErt>e ztUh}_Q<(x3aJQ!4u199NQv@{zxxI7Ryi?D1gPpHC7A;7&w$li5e?p!pF%I)b6Kt<| ztuX@FF?g7~H<@Mq68Lp=(MWzt+1i#1q8Yw(>2q3>opFRXlbX5?;r{{3jR-dXnW-f1 z*p;^K)*=2Efh|87|Gjaz#`b)lcooFEMf@BLA0!e>{2r54S@93s9V_b-+zI}3L&d!J zin2p!=g$vVKnD&~p@`wF?DhRwVzkRLITu$_4v&N%)<4dnyYGAzmv2p-mpb@~yVCYU zreBP)A}LTleJf!?JwX*0d?G5bdQV=8j?oJl@r%kFTHGXjN^1h9k?k$zL6%E~SChwtCL&aU0}hUX zOjWc>;zgN38%X<7Nw_&mT+;GsEjsO=+-lLGA|@%U&1AXIOk>7*Z|x#RJ40Gb+x*9{ z14U1vN918?T52P?{Axxs{(#@x-dT{gD}9kiOYQj{3pVM0VkHh*ZYtk!_%UIBxUMwQ zhE)Pn-8GvoZQo&h|9d;Y3R~`F=)(`mO}pHU*6_=1=tdeY@>Ks@tR!*vkoq%Lr7@&n z?w;!Qd`{A9q^Y$fwm9qpD7KI2vg`?3l-!7E+T1vk+1Be%r&Yq{F-K-`$@B!nm60mz zA_iw>lsMmJ)k;ZVtPzlAS!MTnLGTf-b+y{oHgSzKm4`8rVH?j=UcjcbI z?HVwTSpn1;9!q*?c2UFCH={rB2C`7Pau~F9$`so`vtH~vd(U%Vk$_jge?EEaAEhaf z1S~|g>O1BYpauH#++57xxbAVX#$;P4sW?K{7A8A**mMOa3#=zjsrHTsEARnu%%K6+ z3|aLWgWqcr#N)$k|Y=to8|S2`kqU6Ab8t)0;l6U?!<@D(KQc-K(iI1X#)eSJ+4 zhj8kJaY_Dxvx@H`b?u|^pq!+Cbq&RYLZ~0Me*1tEN@7xvwGxjHQ2cLf_|n>BA=dO+ z(8vDsn&Wc7*EzXKm#S40F!Gyu=N$~gEO}xQQZw_X(+gJ@_oe119k!hkj3R(|@f3vU zsFU^~RJ)Q+(CKZDFu%_Z8M46p?M}d$)8Z}O5j^AMMm}BZsHf-wpEO_h7rhVSLK4_l zX(OkP$hdvnr$blc)5|=xC8YS)S zz0BVm;|skcPxtS242T}jfLzujNWS0DT7-x4#`7_Mw3deU{@dhw{4>L4|5~R&xKvCm z{Pu$a%D7u#(Lgks%xOo_rGJ%kWorL)dxz3v!WAovE^BWrCk0eWE15eX;q}O$&!#vq z#})sR=0imVwMse+GY|kfKKbL{h=kiY>uvkz!t~1Fj+!T7O15jhMMpvEncKS;0&?>h z6E9=zl_@!aG=8=;&huAsB6>=82rjJ=Ypd5qrHCXT5wA#IHjM<9Wn8vI|6M>nxq2#V zuBO5tjvtjcRG8~ab&spfg<;lN3+>munrCX_`R)+HH*O<*BS=!@Yd)NnwDx^p9V|FE z$nQrW)zPyN)6$IS7tz==v7cbZkG||P=!{=FzOZh1Rl!h#5r6nv1%h=|P5|r#$NV29 zWv6u#y&&&Lm_Z|CP3@kjW)V)IBK;rJf+s0ILf4&GmJzMTFSAJ5XGYD4)Ld!Z&j^+G6<`}2u&#wu&{(vSx z+Kuvc;|cpCj(7Pyt$m-F$jD^g_c3oI0oWOR{(sfaP}0VWSVJ=Boke27p3O@Zgk~1u zR@a1R7Y0{MSVIdlp)tEC)!1+rMpEan;;OQrY}pq0K#0X|O4I>#9Ejmjv(+``jmE=5 znsqd`jQK1J6@P-(fsOA!z^T}C@5YcPr_S#LV zjnmN_r-y%T5}`HcgTpMh011f14fQLxF}1_Laugb9F#^G@T1uuWUAfrwKGSn>_`u** z?B-p{<^pBL^_jUcOnpm-(<^2SDOq6Cq(b_grv&{#D#FN zE1k-Id|m13d6@~LDs$XHn0rG6uD7@;tbz(DmGtR1c7 z{Ka0H7-acXU?lQL6}w zBn>@5OE{&rZ7_K!wfAjm+TrR$uFGJqhSeUMMKT57$7hK%vJ<}(+7_Zk zdyfjq4wOY4L7pSTBf8-Y!YY?8$&_ofF_YNJ-sO)upb|l&>2b_g$`r3Y!MVS3E#k`S z1}U~i?K$L5iry&=pE*sfXAOq)vZ66v92YeTtQJ|TlcB&0ypnGOx zhlBqVE)^ITMl?L>xr%(sLT#JcTryfTWyCLeX2!j{eP(`4P$&vxY*jP%3aY4L=oWSB z(3_YZdPh#YM5x4(0zre3R|W^LqsE-u6`Y5=el-VCi~m-;k#AHD`_;6#7&UZ$jZ!VV zC`3t5Vh?QR5?yY@&tDxdHBOnn%W`i%k|NQz+BlRNSUa#)A7;?Jk7){DnGqbm&o5-p zfY5n7db|^Ubb?nV6*l2c;TSU6ddtzEVbVyYBq`+x=L<|yd8iY z%?!WJA-AHfrsZWkQ%b0_@vSg^v#Xn`&-5e!s*SPuNQFH?Sv!l)4D>2dY_prR-FZz~ zOV>^D7oZo*i%VU{=Rv4x798H=C(yGxh<;c`7RVUuYo+80yI^js=tskI@BGbgD9N4{ zzXQ(5Ca1sR`qma%DdQRpGGJwWRZVxdoQ+cO?rIBzVTTIs1mClOc z*`uxH&3-@<=($}SiS`D`xA#DYA?%fXqLQQipL^57rY!}K5pd?iACj~g-kbaIw3nK? z7sjKT%7CgzB3{*tTPa5Cpk1i2zxmVceVPcI%s!@qS4nbLoeWLTi|~uBF^KH7RbMnR zu-}u5L%O>|rh=vE!-5b@B;R0}!?8*?_e3r=o)IT0f^k_Zf`D;vlV&jnStKv;6U^I| z?`|^qzRxNl5$?_(tSW`_y>s2Qi5>j5{O`{RGVsm&f%{0N_=5G+&N)66L$vkN%#t3g zkUl_ogHYmtb;qa#zB0;a7uU@#T~1*hJ@u27K|p{W7#P9JsQ28qU4!`1;C-|WHfmOU z5T;rxN#}sEsFGPMe~)lR$3WBDmq?otH{!3KI6L!lyiEo1v^nsHyxX{@|a2Q{Gih~{G3Y5f4ibkqOQW1ux8o6BPK`(hX^grS%{x&9wq$o561*j6lLNkbnF&HVgpzmws@iN^6fxib5mVCHwx27yg0dO`UL*q|O ze$w?LWm8md;J^vjrv!q>PHa*MCTFXs8ZG~_3fd)}oB|cH9&N*NY5}pIS<+v~;7g@siu^;+X6T8z8yn8H{gsWlF-hH`kt*& zTll~?Ax{=8@0K9!fJX^D4Z0L$x|~X$1+cUD{lC8M|C>T!B0Vr^eRB9T+T!y2Xxauw zbtmb|p}phcN|Bh*8T6Xx-?|jy{#J37d=IZ=k!o(flUp^uIH3RLOtAj2` zOsRbBh166TFaV3j$5aX(sJqAcKxu~Ld-~f-fT=rb8ZOuPGeOJV%w;ml%%cRZpi*eq zYYZ&*438{90<$op(Xk?m2M9zFh-xOHtTE(9GvI*m z@`+7ruET?QfcB(3!9Jr_HoL$k9i>AVMrbR7GrURBO(6ue2LtI3R)7ZOvykTg{0XKS zmi)(7JBxIRwDYu5b3(3nbJmiu)1nHy#UE;{llu$Y>s;xHZ`D_kEAD~d{Oq3|6cJEb z#Y004>iw?Qy@2twd`OmU^Z$|CQvF-YB)Ia32+AK?rCQQeeX9n5eunFx?;z>ozxtW~ z_?x`z0h-#%`2T8ZfO8C;eUWp;rlyH$PRV#Q9JIj-|CA*t5hQ~Uy}HX6^~{eFA|yGB z79soeOUoNwSHl)Aw%e_>I7szIN-xnGs6y;NM$g#A(p69ql{WcD5+hMnXj0gu{^K*$Cs7p^YTtzj~L7&wdJDU$Go`GM&jWIEL=iO zX9;Fv?>s<~44@xn15K603PwL)UJ1e~?zhwgLjV316Gd(jRxt@wT?j%Q8fkP{ z>#k6Re^+ig(}ZR=;)o#o99zam0Z;y1p~Cl??|u)ef6tt82e9+-{2%O99btP}=Ydw* z>HYXXJu%riZj!w`Vb7VoW4L|#waZQsId30w_NE$d3$awTssl(sUzi<)*taF zW2u%^{}V0{GCr9U=f(;5&rcphnnQm3-GaVnUSFrmOE}wDLGoV`hMwLAe9z^T@DsfT z)uvR3Dg%tUAG1$@dlNDG4`4x+a;lAUtG|EeQiJ?6Th>L)N8v|Nbm4_Yi#TL)e|Kca zBxIywlaG9biboyO!9JuKG_Sf7PS)ZwHLO~6niGQYP5@B~@@Uc`%?`Qgw*IaXyt~%* z6acA+Us#QLr2R{$Nfz|XE&JFS9K^Rr&s2BZ4m)zy2I@LI=|%0J$Q8#6y+q5DZKikf4=RAcX9iw1a9_0$|6eOe}5h zD>drjPd0yX2CFtr)%o*tp6+LaonX3Lx;}gw(OGR(6GqjRl8BPxhEM97yux~>T5!$l zRgL3Ua$^B?*Yj~}E1knmV(qrN4Z8|D*sORZOH)&ToJ5Fo7xc9?zvo0scb@aJMhGcc z#nRhA#ySQCnw8>zZYHz>|MnnS0=A@Lg5m(0a4l=GnoVFj~I#D`>oWC45iKVHO)(f@U?R>lMN>LBp{ZLb;wW=}~R5^K%0 ze$A&lww=<({jE$rv_@Qi#!s~Jd>IkdVJRk0Gs%b8A^TY)zoP3;rB{Aj--jd#KQ)pF zn_K5BKC3>CxOM&ueFmaiB%$Ctl;U(=UJ%uL%xPv!3Kk@m^FZBB@CS@-8o}&D4#ftf zpK=Is-%~g6LdhU-r|;OS41`t|O*Q>^z$A<*B9<4zJNhy!EUEe`3W z7rkjiDOWOkD$u*Cmms@JZr0*cwn1w;k>nR*)re)NA>#v#XUMQ!%xC=u-x78HPEAIc zr6SLu<7gc=@?-2F%bh_1zfG)BVMCM32r=u!z@f>|xQ7afitT6m<&hv0Tt{?&Zw_tT zB2CKobyRdZuTq>lKY*P-;{RZ;{%@Y3|4%=6e68-F*j!>el|_ex{$=$X#keMQDlB7ir2rV1!3Obn_vazFqZskROqS|Sj1FVc=65cz3P=GN1|#16LI z8cs?&^M?;w!sMW{>eF9;iZ9IP=^z>+^7K(24447AZvc%cj?j{j+v?WU2Fe0{@)ic=vBR4^P?I6fnmu2qA(ZtC{O|kB}7n z4uBoY6ilMJg1MRH_g$s#Q+SwxGHZJ^ZDP#x_S`NSLJjgO%o;ZS7W}G#$K-Xo9GR=# zZMHPt@n;_Gkb#B#&Nt7G(-RJi#vQ#rhp0NqampBk_W3$>3m+OCKZEA9`zBYaUh$uD z&P_xAJhg~4ihWRifPyO0!YNP{`<;XH`$R0K zLJp6v58Wdsee0epq^3O&!Gm=MwqFl_uSbyoxT2R;x`;o?TQ|Au7EvjKJFX+U{3IO$ zi5sV#@(+L=N996_<*o6xTASCT&`9i4dqAN0{iY`*@7gSMNe0X{FAF6(Uu|KIdSq$E zwk7f;o6CvhJeJ?nzwckuM!EB!BA0=zqm|6IPF-nZ3aCvivNFG?2zsY^GK_nN&iW+U zgcH}3XDvgThogt{f*2_oDM0q5)(2jDJwGa#=X&e#!e^*h{@Qc=qMAkpoyY&>2c$q` zB+*l7U@wmN5b`POEF2&9vwH$obX7%s@png&z(A+U`Y@nI3jFJ5@(TZ#8Yw{752%sr z4*yjng)+?lhezn)As#th1(l--7#Sd~wn(+G^`mq6D*2lN-&SYstur!l{Uk5?B8$f! zn6(#wKC`-8rwZS5T1--D@gr8F86@i5sSDd&=_59+C0!BUVw>m`0q0>xldedQUI`et z8~gQm5wcRvV@(p-l39)%+=<@|F5kzRw9uW(3yk?J#fx{qvV(;5qK5UK<_eJt?wDfM z%uI3L3C3rU$4-hp{+2yH{H(o(nN3m!@j7MR?fwL)h)gL=zk273S;{&JHctjP-=e;L zT&HrV$#5Ud+d}bro>5}9z=p?Z?-Zoc2_tLpyyN-<*eaoZ4|Vlr3gRETenB%ebHmRdCY2%8CV;T-yPMSypL*!biQ!Nh^*_LYBe$?1& z2UfrELN(T{?Fa?2#oq`>`K%d>G??PU{->!{MiBNH1}EzDOB=KNXL=<_<8pyS@~}3$ zyR#%fI`Gts#qGBC&f!hpHlcUJ*V(5RspGbKtHcZ=j&f7`u1@pnsuQuWhq!bfSkqJX z`agXnvJBAC7z;Ca#TnAj`05SO*)O-jiv>~Nv*UTO!fn(r;+%Nlx_uQh$Zg)N@*^Yj zcZBAmCez00+;9fQ3zeddrPE)S;wf>(Ffq09O>bF|Ry~PfZ;Ej|E*C_E9XoVNlf3Mhbu@@<_Y6q~RjBg6SU?L%fS>$)wN1+y< z8RN1OF49Z)g|E9H-~Q(IPB@=85eiQ^3BSkaJomWh&(l4%!|A%+-PS+#l*Q^ zg6~|vJI7kFoStX|r*letJ!Ts6Ex;bHZ|ufe&(2aVU14y` zKuKh7T`p^aNm>NV2Vh4vU6n?e*48w(=k}!a&H*O$ZO^>?#F$>rz|_E&aw@OE*8iqx zm=5N&&~Du()W$OSaj+3iA?c_AjNv-InsZIFzZ@dVS*TY^eWIFw_Rztmdc2J1m(4*% zVp(gZ1W9ZvZ$Eifm3_V~F?K6D){B##%a?3zFW>CcopUy+H?}$(vUUy>Nyi5vjqUKJt#)HUNhccUr(a$)ml zfw=Sm&RSwb%Nz~@DxD2Sw1BmeAISgSo6!AuRVnsDHB$X>BYMg$rH9B5_VdL+0`TM* zi{wmVRz^1zO4B9D4#zEGzUUwAY=vt?mWL|zCFwP8B zsT4I=GN#6@F#oUKxk*Fg#^_WLcCw!#(QVy(v^lb)_smz-h>&fcM06df#nxRtF20L9nPV!oLwp2ZhT* z9>b3a0)Z$*b0_^4hE2~+Sxz`ZfsPN;;(xpj2d5ldo37b)tOZa?Ima1S_L1sRt7O3_ znV0{v8)}WHN1{#xpLVl$ZkS{#5Cm(l@QC$Q6S&O>VHPtDxgXQ*;!E!C4>o|MdBueo zVP3r!B-K)@9oU7p^+~dDGwCZ)n;brWt;IClepI9_g95N)w(nNNtLu}j)7~r2J>Fbx zH=Ytty80fb-e9BO0&B;HDPm476b>&X2EhTAs@IXy6TDZCu*%MD+DR8`-e*A2Vfmvmu5OwmE zR_FdXfV{yracv6fPK2DLf+q^qeI2cQV^CWZ_4~}w8E-tyJ>v7&uw8)sYw%9GP1mtQ zB~;#~c%4c0;4`-D0Kkr=I!CKK!9ULh%Gm-W|CN*L zk+6`K5~Aihz1hVX>Hr=&!JU~XU;b)+cssjV*)KTGQh7dLB7QBA_H-b;kenBaz)+52 zkxaA@5b(9Xl@{bU)Le``Ezo?`x49}nwcDZLe(4Jt%J0vH;Zg`A7?Jklt;Xw>7|U2A?y`$ z>ryvbl6Y5l&)u7k<9D!)L00-be@Nyk2#<+a?9m8Le$-+Z6NuZGzsF>H0n^owRH4_d z8jhxT-yQ1q%|B&QgQVg|)vM%U$Bm(mh+38dh7gPqfj6wXyEgC=DA2AWt8|Qh5hee1 z41I^aulVzncuGV7W=zq&rJH_GN1s;&V8;QWhA3WTfbjgV&4L)MVR3ar&tAiPLfbz9PF?9(@%Y$iG|reDXLlsQzm}P?8#j(NO{qH%D6y0 zlGJOLdyS4AKh#0?rP&q_3D~(d8EDMGby`(iWm1a9_Sf1PbfZ_RDw!y#o|GxOv#j_k z63XB5$UU%uH2AxdZID}%uleRzY4lffLIr4u`iTbLzGGQY{W>pfeoRA$sRY%sS1~R1 zJe_Uli9m=noN6aOyp4_=Z@nda=HKW*YS@%FKcVqhrgmy~}P^`uur1!U;!gb{r5I%PCO z=n@^PAB8+aQ7RT#T<9^=iWfEs;l_G*!ut0Uwt(CxIQsb8Z^RJM5V7g zHIhj=PMd%C(Xb6y{^tS3uh^~3clW@2`ppp4G>7nVs6@5){fTx~J^e5_uF*RdHH_9l z0InCzipTgFTIq=L?19hO(Z(UayEq{j(pQc|$(12Y5}RT4+r7pi*r_O2Rp-=y z?3;(cv>byOxT$LMwV+^rt1ee~_ID+l6|Vjj1+;^~G+XPYC0*5+OgQ@n`Vcd6{yI0Z z@Q@|2_BTQ5MyeBxaS&dE6^m>1A=xwaYgLt-?GXBVVWGcL!c9Y>dOUsFzkY@wn^{Iw zit#E|WX=8pyP+lEMwq}2e9cTVVM{q&P{7tf;6>9_2(ESS9^_h{^ELj%JrXo|rSqGs z!0(O`3v?ddH1RLS-rPmG@1`K?d}+oZX@*G1LMM_O%igQc6}~N&D0lkL%MqJ-E4@F^ zeCZ4~p}9~bonK1>sJTCbA;fUiG>5n4kjyVzH%g!)2-{~2+6-oz<}JX2dj~M+clH>= zcbE|7jHm{lDWN{U>Y?Fa4yJ#{iR+3x0@xAr4uJW5^%To&e%0W>%=PrACE6Ova1m(y zosaMM!eF8pt&G4&J!SR+mwGzTnuEND>_?lXBFpKc(N8R`xrAxEjTek3QrWti=Xfxe zuTb|ogRC~dY#yadHLb{Lcc{ZB{xH$l^(}c?V9RM_tu*K>UrajAjiIl@Jk)7?{UzwY zi+Yl?kHJl27`;HwKl@BzbnZr?Us9mEh=M6T_ExnJB(3poQrVY&k`140^b;mY_rmlA z_r~qt%m5^rQZR_RrDaPnw?mFNxGt778IGGM)MX$IJp6jQM>kH1(kGsDMeui@^|-?U zTxXby(_cpi?CrUK43X1u;Ubs)UW(8IRs0V!Z<8!idx{0 zH7mNc)Cn8S9fwEk``4gKdb1EdIqwOh4)nokXx5uO3nIso*yVV^eJcw7(M1bx>^E5u z5^@Vo;z2e6`)c;X+f67Efy>doo_MFYOZ$Z#X#ODjI&a>d%=1VZpxc%H8)oY<{9fT} zu6>K|%eSKgxze#SD89soZnz?s@iWeQH6hO72R+#%N#LjiZ`#pr8=_-C9l66DFoczM z>*{Z~txS$-Hk9NyT!jF36l%HwsY8v!Ia;MFAo_h#(=wpqzd4w$=`= zjftm8N>_VrG>t-FA{-{f#Nfh{>$3H&LR7D^kcd3lxbv) z{A66Dujf$^*o|@6AE1W`_F5Ise+|w=9jZd0&(rH7NbFH(j!zE<2j~*E`~mE!1yDwW zt!jFp2m(42j z?+CO7kEbSAQ>R)lJB#1O{Wl@>hh zUXkjM2U)7pghNa$6YR%Mr!y0n^uABMfMeiz`rL1_e8*1tuw4fS$h}eAO})~~XT@83 zF=%m93Fs>ZCL({*_Rekr(l!FVAPHOLxo4W6mH0B(#a4V7vK>dl_hRrS8prmhsFw-Y zg9HrfBJv#brWYeA2m#9;u*Z06sm5cuqp=2O)gXjr-}u>N9>dzY)*4UrSFD@+N1Mkk za8WRwK!nN}X(_34l?H$vbM(ScH5~D=G9I3)@gzyb;@0JK(W8bc;1T(mAWn=aMQSgd zsTkhTvC|qCn8R$`BHKil@~@;#kNI2>l2L532AJA3o&@c|K6+dl^a2YC)}=|BGk)9e z77l#Ps2S^V#x1%$>>Lr|J_^d&&Fe)vGF;Ykx;C4EdqDbX{+%{7Ek)y78q8D*Romf- zvk1u#H*vnKZ-iWI3(0sj8$#F)U`zZf`|qtzpK9~^^AUm3z}eq=o;|Qf|2+O!pKFS} ztNtFu1@pco*ujuquXg4V(yYJ}$Q4GMY~6$+hk_y+bLNYV$l*hWYboRx_`Ve`K>pHXkCjIcuP&FVb$MSjC5Ql_hcM|y+>41 z9^i`q!MdNPn}ZG5=Bm`a6OZE)>6{FQf>zo*wq);lO ze_CSN43UC;VfI-Z1hLuu7%?4D1>iiBef7{3}fLFNdB$pdu2L5~#B?ZM-Z2CRj~U~-zQ z&NTh|p8!Y0Iu}TCJc#~f-Q$AjJyiC7$Lryb``=?+T+rZ}jO5WUY{(9I5k8=ThzCk5 z<_y}XdhJ-=prF&fbyv6mQL($mxkxokP;7eecq zWaTAleqg0YjYbgqlH1k&S}~G$pV(E<-5F=S=;^b8abWM{-X6E%%)*13H|T%#^fd+6XockVKf|>0=LIeGOC9)raM6 zz&Xxxt@%^HS(Lb^h7W0_^3t5ruAo9yOd0otYbT0eh<5`bTcbsgV%VCs^OEDKap*c$ z-PZbKT=PRDs1Ba0_zQ3VcDx93CrbsV?GVU%X#Zqq&cT9>{Mp&JgwF<>c)1384Z}b! z@M2RhwIsI{ykVfo@cN&qOtI3jg4YS>1VEzl>Rop5%LZQ;pyxADi{dR+8S=+ChKNQa zB-W6S*~Xx6^|ARveV|K)_4vjh+d*wWH&Y`7SyvTo5+;aOfmi~i??=k_M#&*&5zs4h zwKj!+l(A6*;ItfV2vM%Vy$e6Wmd zDa8V9zeVE1(w@Gr3B1jVnCkjwCx6J2%n+(RLi-6+$TuRTx+H`Cl&HTNQ6|>xF7o!$ zDYRB?c~M2IBfUb86l5oPOeJFY1VoT+Cxx$TMxlw zrRAkTANB$ulan0w{w-O{aA|ya$xSHk{0Wy(Mz0D1jfU7thgM|^qA8z$WQeIvkDv-AZlWk!T z0k6S3dI1B|An-*keI2K{JE?5F;bDw$yJI{$R-+v3g+)iZhJN^a?v#v`jiKArUWxIT zd8)ShwptXDrF~Yc_f36^BO96|*W<;~uAG!OGY(i!-8xgWq=yZ2eMyO*UPLN^Q9`Rf~=pf8aA6S;)i88bM|xe3>At> zII^tEvz@x*5SM+DD0LjS@=qB(lY^1CJb|e;LHZDb~BtG;k$ZnxX zKimf@{vrkTyN%o5`zXuTdV^g+d?1gWO_x#^ARI@o=N3?l*KdN1vyO&;v_jP}A|g%c+o^ z`+SurKuFjMn6D}zDR8xx5J?iIVk5rtLD(9Ka zv|vLfVFQyL!npod4roegd8$ZU1WJmsZ0hfp+hZJxk(nU$F+;)_*rw~Cln!e4rU`$x ze;lv+*5kzGXRHwzj3?xM)#awy2^6zHNAJA>UrUTK^26gGGEyWHrRf^I$w?Bnx1#n9 zwK1h&K&(V=pBmkZTHT)r9ebHmKw;F$X{9@aq@%R^cFV4ZZKQjd7v{vv3Io_tmdiB# z(H$1RUVY14L_QRhV=I<|7Nhrr5D)1EodqBcK8!%<8buDirM>{3S^Un1X5tXp*_x3< z++i%!YpXnd{roZrP6gLcrv{hD9k=tc<($dDoA(PMoqk4-=%&0tu{J_R-c%fT(cPsP z4O&u6C=o>}6_5+!?Bd1KFU?v3=GL0mUp{%U zWeTa7F$n1-u1PwVr5#G}E!GI5(*edS0CrR@uZ|E?Oq9w8ccK~Vs#iIZ2}5ndpmEbr z7^*|z;a3FBkfb%>fJuil9Ii1>vsaSX)1JS2VmV9LRXm&u=3JcH#%LoOa^IO}af{~s z>_uVGm6%Bd;!6TRjKd|%@1InEXo7LG4rj@W$KpZx@6^C=HX?@#1gxe|%4ieDCRd{( z9Jya+53+HES7@KZ=)E*IiLQ#S5*^Jy617j$=VE7GnJ`4H4H<+8?mJ``r1Ldp5(=1r zjC6kk*wKdf<)8=Me}*DC#_S3a%*5UEnjwjFR|Y|_%sbTZmeJ=i`g}06AhxD#qN92X zh-dA#%0WMtsEsPLeG}a12{%XSN^UTR<5vskY|!kaj5K z)-0|5rnBaFya*77(;PA@pPWWM|HXW%-P>`o0*dqP7`V7Lq7*5@W|?2PJo@=0VpsjL zQXBh`HTcC!kyz@(U_r}KSO@pFpWd+b2i(YW-_xfckSx9(Dp@oEXXp4 z4Y^>$WR35Xt=-A`elCa-R#we*J|$#Z*@X?|3$qDz%SH0g+q1g+G#7z7z8Y++$fTGYr2(4^k%#DeDPQo%Wv z&Ew%pf;~lBo!9V{q5rKr#@Jl5(?huxuq)o%G~Yz74dI00#mOt-eM%5_vFc|y-BQn%EPhX zgX~2132W<>oNB_p>1zJZPhAX|>!KZ}Fny8tyQJ>-DOY_A>+BVqn=AGV4gU6L`dc}p z4)vL$$D>IfJsUB=WTbA`%bwXdhZYZ;(0%GXutxU~6&ya^X!UwM`@^=%Z~!~zGDuqz zd8cJlYwLILgcj35RSXv7r7;b3(erPm6WL%%Mgf%aJbUJ3eaKic7+37km81tj#@R8K zg}uL%9T6K?KBP;m|dX0(oAi2b| zf?}^ZKV8poTYd>`01q${F9v4U@QY;s^Tc8CIjs7=6mz!aP7?d>jx8z&L;1}oy|@xX zHTQXv5JEZ=;rz;OVH6u!08)pcUMW#fsShFerl37pXk<^H%+HWKr3ZQLe@$=|Dd4%y|4HoX&BGzahHSEtJkSz zkt2W!V8>P)=~aSK4H!FO>Fh*hTuQD?cmX*}8p7Lu9h&{Qs1U7Di~`(}_}fu?6lSHa zv-`K?Oxwo^D%_10YOWGJzj}663;iIkRRyo5? zIh5hqSAJabc^!FbpJ;y&j`XR#-7?~% zY-m#dCQvl8G59hL`D{G$del^bxACl)5n>z z`59fz$mHLS_zm2!CDqHp#c8|tZV1qE;2v|$?2epcS&q|$-^xm&vUh?J)wsi;cPy|# zmdfL6IHe0;2d2xI6q05HNZ$hamgLKTrK+(oUgH3i5)h*pxxF0P1< zbgwpeGk z`DoqqHZ+pp^h#kyaW(e--tIYBK(H7Cdu{(|Ljx}GSKX>3|x<-`kD?7x$1`f&I} zcmIdht;F}gbR7Tj+1%~@PYFj(h!`5(cffvp@GJnSAXZb2@Rt2xo=DCwOHrG`Ra>f^0VwL}kws#7z1nAd2W81cE+qP|+9d+DE$F^WbSojsYXZ;^BXV9nsa%XPBz;aOKN7i_E`QwB*M$`x|r613Aa*t0gE!&r9@ zu{qrK6NZZEMO5eG5p?2*7+F_hE+!oHLXvYP&%e|Qiu->DyVXGU0PdGtQhlG|)-KYa z|CAq{&)_jDM!#V~=L^qqkk>TmhG@jsx>(zFMd!*`@G^5oS7c_1H{KkTAGjdyxP~B) zj`=J34-WnvS{MJ|cgQIK+Bm1spb41Q94-VM>C$ZIRePuf{oVj0ob573J~RaeuoFza zDML&>Jz1)wT!#w6REZ*VC*Jc@>P+2w;l^nNoX7o9J^6zF$obC&C1;SmMPLe-aq$aIe5Cod4w1FZY z7P=8#3DFV4;)*}6c@Ew&y!+NZTP#p$va!Kp1Z9(4f;JOXV2{7l2}#|6^kLMJEB2T8 zlHpH)NlW|Fl4*<*6_PE}PCf0dRCL#)jr|&coiNUB?(fp0{(38~q?)V*0GRShExewu5tG z_rjh6UJtMbT=>ZL(q*)vRjZL?n2eUVewRtb%y6bE%C=in3}SCgan{N=HE1SWWvioc z-#;)nslS?TWuCsu5m={urB1z#qV4TK^dmFSNp6-u0!%d1R{-qDkK5+U)ies}ZSNo< zVY{5=>*D3LuDDN_?(Ih!q{M1G$JfulUD!?a3tm99C#uoNm<&UkBC@|AkZG$tlNvth z6M7YwI(8MnXl7ELIiq44wMf!=Eeup_zgJg?`4&ve^Q$RIUksX9q25Ih43X0#`w!DI z6Xn&^Pi>l!;B=cJn!m6i785+R4=!=|4eeyLg{-&^)wR~UL5J8acK5b%=qCb#%fSYw zU4cj8W(=}P4PkR-4LFt&0qiL8ePaCRE&a+u&=Jc${qLs2nZFo7aW&#{LtiEY4XssT ztSEMBWFOh1EbY4Ke>S|>5x3vhIV=y+Kb&ZufGmy#^`4i#2y69Gy;~Cs$bp@9%lExsrnd z1)&G=*e-PReb2Sq&ju7Lkt<{$O_ij~f~#kbTEC;4Hf&0m!)~}%;I1d|E_5mY*ipka zmboX6;rLR9pzCFgH$(@6L8nxUw~LJh4>>^DKcP{Uu|ujU73O(?;=e(Tm|D~Wo-==} z=ylQlE^X($Od6Z_(PqmcLx$M>dd>M{<1CxKu0E#prx=049xZe8ZU z-;H}XEbz|><~1Rr>>$4?#GJ@D$vbkbDL?R^124%ILqXzqoqbZ_E&9f6?SwT5Y9@Fo zGBw>6|C8aKe>5s9xiGD{HilW{<{ncTIIa$0XEXUfzpv6Sx#mx{wUmq14A5?5ktMD}&NQ>0&Vm5*A);Ggn}3f`2dO?-OQRyj zRaU0O&BO(a#fRM6Ny?3G#pznn0uxrzArD{Bq8xns0L#h~q~toY-O>76bR2zgHJXEC zSSp3~<*VirT>)zf#VsBt4fw2u)_&Etz73%5{kg)?H3DTlH5V}Jfwp!E z;W^AwX%>n?#WoaBg%nifIld2MiWa=`v=-DKk~FiCt5)z3!zc|Afxml&@#<_upW_2z zNN)bz^)Wd_Y&#{60S8Uga|Rz0_gyFXpr`*rCoD+RhcGGUktPjdj*Z|CTh*sv%$XJ_ zFWmtv^j{w;^*k%0uEmH+!-0Gw0o<}dI7 zkKgjsl$+)TZlhEvgKsuR~_J;y}B(lKL4?zSd8ZK#G%>eL0eW)oCw|WGiLwPM)y?(15Q&T4eFR1?v3r6bR&U=BHkrC+ zX)JAEZv?yka?|yR+YPgSN~ABmitM*>t^eLu*%+$3N{VU{G+Qr6xkX;!@(U#Zo-JF~ z;Pz4>A(xv4I&F44Uw^NQ1h8{T{%`uN7INE?N?cj3p z6g$}1U#AoNG3|&kb1y)o1ckD3QF6ysLr3Qm?`=6h@?Mtl4Ip<#i-f z@jN2->B|!%G#$D#=ve5fRn5M>WC-`o{FvNJruAo10bk36z~Bh=%nSws5)z#=X+TPg zm|Sk`W-6uD3ju-!0iuH zBd`C8_mF3>vmOzwHep-g6lKJ{GnmqOyvcA$i1#`2Q$1#g)|WLY=`fSp%Ze4y`xP25 z2@O4~PFxVmvhb#M*=t~b@uY~HJlLetBP}KyezM>xWV_kgDES(QpVKM<^q&?kn*WI7 z$?2n%h0?-HoOM*wc!8h*U17gJr1)u;ms!r}Ii`;NIoD~#7s=J#0PM(CE;pG|BMf3Xcu{=Gm zy2uhoA*o~)^1l{WjAAYO)hpov*imR|ZJTJbFB^W)u6bXz_eZra8F7q{E~bDM_waCA zU{+(?jl`xBuJQ}m>T+r(MExzYoD`_ML-}wi>2{NEIWl*j&F;e9h!~}R&MGYSGgt5W za;+Qtb79<+GVI!7e|jb8*cbr(AF(`j?tjGcF-gB@h?cF@+vd;F17MY4^VAW#3CoK2 zbWJ}$Qk;E48Jf$|1uG(>0S?HVQ43)cVZ5#stc zBO5sX$BYDwN5G6E>i_@D$Wj}BG-c8>mZ%n?+%#1gYHX*|KTd9km*TQqE8eevNegxN zCi1d0xKPN`ytg)S2Pj%d_eohFwy##dvF6Cq6vc>+M3~XspzDVqfxX)ih=rGP77eXE zfsu?1m72|Cfzz?>jh?H}D^Zn*IEcm+X8%ISD&AUPF?Ax6Z6XcE^@aU~wEK7t;99W+ zVv|6-L4Epnj>LZU=1))%+a=8ixn?Zr9&SQYbGsjjdUEb9s$MQme1qM1Gx_4{q}8F;ci}7jzu@hXJiFA)##dyneESOoP5|I(343T zAHT0L-$*cn?CreP>#wFeyU&#NI8^IB;s_U3sGlVuyOmf@uK{}(c1VNF7fvFL@BYY% zlQMx{tS~1<_+A16@>yVjr$u9c?y}Z*RwomBQDY(Q8VwJYVsQyz$H~FZh|EjU)y`rq z+OX$7LkJD_i~UVyzz%XtllKaLJ5B$?3XlVdis}Kxb)%0c3JlbHpW+GVN2dM@iSSW8 z&{LIJG_ZJkS<43*v&xRs6~QnwX*K3s;#GNf;$d zv4GOSMy)^wla1szSeEDKV0NI4jR3z@RN+7LGE+rqh0TMY`zY?6J?iujJjl;ehUw{s zFU0tfO7}i6Sss`QNhKY>4x=k{U@?03(%7jG8^Pf%_lL%LHur&W1S@m?G)u(JC?Jto z5us}6Z!1H0`l4BZ36a<-@JMHG@9x<-5B!GFPzmD#Y6J!XYpa)%iR$^4LUFnC>Q`do zA+>ZmG)q@@TD(coK-(x1p8!>hk(8G4)2CynaoUO3>Wi%&l%y2 zs{hAl^XBL<*eorko0`|vl7F^(jxrZDNc!C1f=UP+KPDh7~e-(n`-*`^j|&!erb5_53O{3_k!vA z*B(SMnVMzmr-Q@;;fa7_1EYz-#t*)xgh+#a(6*}L*Q7PnpEvl&A>j?F2^J2J9dX;+ zsKIl6L;f%QBe%+@PT>fHSQyxrHKIkdspDU({umUj2H49wZjijhScma*KYIFBJbYDH zfVuJydmTWWEe#_HIoM^?lPc^{^q{UAQwHOyIW1+m*supIw~t~`8+2bNI6I)*fYmdH;Acc+nM^dLTm95kN&H)=#=*7M z;pi0k161bZjK{I3V2}O+I15TB9;)IwLz-u`Yk2wmE|ffkP{^;`t?uFc6ybopEm%a34ub z_;^8;5|+cBO>#usZs8I`Iw_@8)$}d^gDfg@JxdR=m!DpOE8$oULw<2?>QLULR&9n5 zC`HThK>|VEdE-)+o3=EZOk{hUJH(vDI>~Nu9rg}pNcu~3qmNGj^oL)^2xEEF!&1g5 ztehPfam!RJ-ce_Kom>XN3q~7SLFCx_Bcm(3wGhsrB9b!xju3J$qs#kdB;A zSR&Sshb%ew!$aSlIt?e=y_&H#8A)du0|}kQ9soPi3o)MzaN>-r%YZ+Td_Ch=(AGn0 zUhh63W$R%Ie~yTT20+a4C#Z-Sb&=rL2GXTRjzNlZ7!5XDI7_0?L_ zD>)822YcqlTskK|%ig@y6PVey<35ZX!Zuqc_L zp%HvC+w?|#06Q`!o|3ZNid1@$=J%Ia%HR3<%e9OdtwdbM;gOp(NEP7cZ_c}HayYLf z2wsH^^G~FdH1l(*byKbX73{j zAg&#?HYBsYDjq&Pt)>$fqD6p5<-D6hN#<%CrJ3nR&|)gRH};cUZ=pSyfP;ioYn|G_ z+hr{_^xMip&pzufk+y)rDqT84k`+9*G&y@$S_KE$%qgbjhqyHsb z_7{ieWLe_DZG|O02A}LaCtI%z;?Hb*t@oghgTk<$`97r}uF$e}J=o)DJT|~&o>_5( ziVS}9I-t-QFd~a%mi4?qK})(+8W!XEn!j*Hz3X?)=Z{`fd&ni3jf3U@bYK{5Ql`_n zuTYKm^5@Xj=zL+Ih}nLxpYt8Sj@oD7*MjbHkpJmdQ$moH$wlRhQDh?;0@{bsP$}V6~0KTSR;^lUd;d%rB|=^XWf1_cumM1vae!T zV;qOq2VYQ6{(Rb(ZICT zLl_O5pDW*o@Et4R%unqnhrJ<+qv(G7=FPf)dj{|HnI?KbDAdAxv~)JaGy!Yq?4O1l zjn?Yk65rz9y<2+JKg+%CHDT?AWDfzKZ4QWUyZ*-(040<32> zRfSrsFOI@8IlgD!2%3iqHiW}6D}W?jr(NdNah0g1_9xx9>N`7vWgmhXcpR=PD7W>IR4f9>3_b0NgZj6QATSzUWNsejbd(#M^H zCxgqVz`+(w5WtS1Lfdk%{knFP6qpNk_K84-!QtOTS1!!DU*#`1y&GWO73XhOFh~|T4{x=6utMaTZ>^5Y6d4LuOQpg4=LSFDF$S)wkN6yg+#hYx zAK?b2K78V9(Cto)koy%L79iOK=2qY|{@Lt`j^4_JFb8eUkVzb;yBf5QV|}csoU%U5 zK(aK~6r=M_at!G|8NC}Lb?g4+kYg1Opt?N#PV7q;c&q!Z>mM3H*!xDsw;j3_Y{G7% zP2v#mzk;-CFjMd}_y-Q!&H0*8q0$+X>P!ane)dOfYj_8$;9fRy&Pyk7A|NO;c39|z z-{e#1BCk<|y(8~l*nixvtnIRT#h5I%epf8dN6{SB#;lDVtQ~^|N6bPe>?pDqK@a!D zgNkK_GM#pE9s6SG_m?T!bgw!mcl9B*3tizxA*vn)w*6vmj)%;ukeDFij_qynEAu9R z9h+C7%sOpmq5yO5V;vII+(*TjzmI8aO%TsmD=HNl3cV82D=&h=zbqLGc^RTCzv-eL z3-g8cvF)XxvCZj5Hy0;*1er{KRjDZegW@_>we(!ubUwK&_l4fCbX!jc_v( zf#Fg^u}pf{B}KYVc};5xkFNA@id*jF)O%;qtKQncJ7(assd9J*qSQqN##zBN==7HJ zCim7^Cfd)Nj^Z%yMlykkPpZv6!G;=WFq~I+A`}2SPFdmaAz3qYIJdAAz+6-j)z&r|bt;qnjsiyUjTa%t`yod-1=n!Sscgb68a=s5JIK`Cd z$=YNc8fZSg?be7DsQa(Q+*t!F{uswUAt2;VNIQEOvBbYdv=|%cv4jFFlS#Nmg=$$G z-_$mdH>n%(cBnbdNzM2cZ=^b4h#Rt->EZ!w|^ z*X}3t(I^hEZ~!~*H1xLYB^8T(OOC<>wu?Zi?~#Az`J+-)Hd6C%==7r`Di%mcL7aQP zVz^<{7JcZ*?&!XN4^O^}rE@ey@@fTt5XSmR?6D@v!~4P(lu0!eAe+u>5X5lVq67K_ zEsFLh|AQS`0tjc?RZNn-8+JTG@v@xX2h?TT)y2I{>tEx$hYxFH&Nkmgj)`33&+~*PFQG6JF8l?q5 zbbnfbVXgT(j zs*^PGY}?iLWQO_;H0)y7ki(`QWsG`~imDe)5rT5dD3_qCL41gROK~tWdb|8yQ$ok% zSk-Ee>GI7)Z%)o9MxgRr*IIao0y9e?P&3dv`G2%4_chgaZ^*i{G*i-%{XQc2D)Oz z#F&R$;MU`sGIVC-+JLN|YTKwPW|dxI&BY4KrBXpj{2NDDE~p>RZMwVm8^+~Aj+2c8 zz)n!U!{sY~3-u9hqZYND5c5{Uo)zn7JMmY7==2l&OqYZG=Bu5cA#r&ut78Vx{H9Zt z)lMJ4Qt6d}f;`|dXGo|{$)gS51B&8M@r}4s%zb?J%r(gJXIK0o#(mS!+B=d>Y=e{o z6)Ttr)co6WtKMD&E2*2pdG}HoYY|%XZ7R{*o>9>IlJW7zmO4FeWRVWZ)l%)t#-vxF z1eejk`^t!OE=0*;Xww#PDuOKkg@T!tZRwnU3P*3Uc#u+ zA15B9fDLN0{cc&(Di1u;w7w74a+T?v#8`LwMUIuqJX4W_BiIMBdH#!$JFbor-f5qL zMOovzK&cabA>;+cbI3W|5<*E`23Md=x(dFQ1&5YZZr9h!o}i{Pv{J12%s0tur1CCRG?kl{j%JlQUo%47G~ z@H4)GbwW=oQ5n`1#L8@Pcpq$h-kJ)RV21x^N1+=Xc{l`3EwZ!22xJUPNAMDRV~Es` z6J$u*t8^K^HUmdvD>)+cs2rC}VNnIXx^AUoN=32Fb!=-@pkCwP_-A23+pM92=N(f5 zgaA65Oyff{U*#-6a_!7qoBD$pZ-o^$PIj;aA#j68Gm1MCus^YApsu+vf#0DJS#e&|F$rYndEX z%l$)jL(Ac{b6qK;WFX#0xuNGQ>t zgs2nkz%4&+vWZ3k^=dj?KF@N%>i_VN@mjOPKbT1qSI*H?meV-}XMZom;J}3e@k2x< zPc1?i4#`7t!&gCGTjYbWl?u$v=4?%@efNr6{hmb!u%n41g{%fAWG4-o=tGtr=cwPe8e+SC!!c4;L<^K{S`niG!A46giG2p_6v(aaU$1nBQJ@MBW(nFUFUmx1 zUbqLxGenwEnY-Gke&d$8-S-YI`VEB7(VmL_FgUMw+}W{iMDVWcFY4Xe-kGCeot*R~ zJY)e<@{swW;YAK$M~CjvGTBS9aIr6GCmpU&madL|(Q__g9jdiNww~g^XJ$7u5`~5; zcK$REK8A4EVj7G^s{B1RA^42D0y*;NV8j%^Zqy>~Xyaqw;FxBG8zPl)j=&)*jx%g2 zmH4`6DkI4(ePMr9OFjLA0z-t*m+%}ocO-H~+)xD(Ga)};hTWbat^*CX>wMu2s|zR& z^6owd-!4Gb;@Q|(f8eeN`N&dwHE9O%1xx(c>rDX);@BpV6Y{lj(+t3lL3%yG4NH1N zCi=T_W+XVj2*&_qH;)&g3hCPG(FPtS9`_`S2*eepPHzu1n)-XSrHUx}J*94aLtPFP zQ7nz;au{=UmZsli_II?)Aw6Yj;b>W}RHPWa6dy9CzLpioz{*j zpM5>dKj|mfDXTj;*7ZDr+bamyxLK^fbg3V9g``&SdL5UEFy#JdJC(V_x~HH&r*Ol= zZ>0(W(%_{OYTN2-_WqVGfK@LnY?32%x)r}KyKs9&=9MOYsl&}0qeq#rf(q-hPUK{} z9-i)3#F=yR6ZVNw>22R!`SR>4FU6d!#W!SHd&fHh*s&AD>>lhImQdyA@=PyG)YWGK zef!fZ7!WczNE^Cw znEUJ^%4s~nRx@|#1P)KF$lJQcXVQrUm;7sKQB>pMOeh*h`-wWNjF7gY7P;k+T- z;@;C(Hxzq!62YY2K;sR#ymF#~f=W~^nFMnuz55J2pQ@2q)n*}3B+4W0Z!^pDv>oq)Q!Xm|o+ z=Ag;S*rxS9UETU)vw-*s-s)0Q4XFQxK1406PJgtPBgf%o{>5>x@$j6HL!t zkD%_QD!>tIjM`{uhBu{Ga2Umn`v9z+~#7W70GsR>NaWB1~(I-MN8miYqLt|p( zZ_SY@K1X#VF-zoKmlGt#2n!dNa|SAo9rkaosA~?WFB_nAK49M>`11y=>tm=mSh2QrP(ZbYGcP z>31;=9)V)`iQg_to^xOSR{jSLbn|!TfjTMjubBHA7KAG=M@4ecu~kXSKeBqW>)NS$1IKM&gu3Z0c zXtd-g1odg&p`3~wGFD~8X!e4#qkp+S$O7fd5^aH5h00G&oovj449D;_4`jKnDL4=B zHFRDw7TKi7F~VTJ5Q;BXpc(^^LmtBIct04Qk*=;I7`oq6yZbJ+8~WQy!&Smu8rO|3 znC>q8R&^2Jpi)(Q&X~?%g{!C`TM4>7amgO-_QmEZGGDWe-_eo zR$)8e+|JONsOv($zwGehQ4IlCL$>$0e16F;Od`PpKu!zJBQ_-fH2#o#sYV6d`W>^QxeJWKvEStn7F4iLEUXv+U(& zIBof~Quj_vWDJ8js2|`DD*{Fw`K2AA@jZh8i%N1vW|FfIy!Y_ z@MISNMR=6VqHToCEesK~c6=TS!2Z>*qBrvtL1kYHIq375 zQ*$TC(Fl3un$CI_z>bEnF`y-2dgMTms2thM0sBh0t?dyX!fj`VK@Ry>| z{vgD52{~-n>;iP}`5F~6yzS8geP`^phs(GvGosDn*s=TD8q~<(NHhlcHOgP0YX_lQ z2W&JCDU&ltD| zQxN)2pd%2eSMPeU*x{4w_K3-_`td1{=zA0OHgS9q#t` zX)suhWt&B~7x9Gqiu*l_JQ5`5&ldeH^79FiZ?}@)Jb&WNTKp046gN?T0V6ZjQdgza z`P{3|i*=G~tI!dh|MB(mx&-J zm9B=@#;;t(jsyq&991)cY7!u}jH=%G(;gK;d`yf`pO~pK>Bd$|E`>svLFwsXrZN^S zFj8SiWON3~jQVWxu|a<~EHUUPe37%8N;*~*$aRS$9soNQgzJWJy&{fepuKZ~U=FI4 zZksx$Ev2uhbf`xHQkIXjKD~U0!#wGES{e!z!l7K#wUa>}P)@-rBlgc=+N$nwsEjv} zpMMQ>ZnEmy;0OC|S^y8reF1cFWRe@Sevhk6ubQjaw?9h2Qx)@_~wMvse5ThN_T;M2bN(+wa-{ zzBc;xn3KfM%L|?T0AR;{pHD!fgP)sl97=m=%fPN`bQkWqiTN0R#=?n@7oAo=;>)g$ zT_gG=p?M1#QY|YW|AIwz#AO449O+1(iW;Do){~jJMYrErR=TTTZpR_3iOR1=9air9 zivKlhb0LBAc`-(tVs73Vg)_0>olp>n;OurQYD)Gkai3ho!3b+{>sABdM5tC(%(pf@ zzy(8;?4`JA^j>FR);6|RW2_oJ4pU%AteJwut&UVgTn>kcVj^kQUk1rp=(U<;j~;=@I!Lezm6ag&Q#%iHUfSM(~eO6F9A_ zxi!IwI$WtB``&z#+D%B^Q}rB0nc*$BL~%nY7ocSA%+e7ZrSq#~X4e$D+gc0y#g=YCE7L-@}#feTy@wSuI~p(>xS6$@P`Bdy&#ycE?S>>_|( z&QPrA$uer%=~N(TPOuj7cOw3Q9e5l4zNPfjO=ZpePGbG6&(j>0&aL>1uCN{iPcon4 z^DAeiN2P-`9Ojf4xajhk)9&4vi7xQN-`-jT`B{$LF%#2ECpIQ*_jV>7yTuNYAj-2R zUcPFYtsHpYTgHlnRK0;nX3P??tIJl8n**79Ox_^1+yn=REZaHO!PbI|L)wCa?);{4 z$q&Ge*C}0yAOzm=sf%ZJt%;z$eU|>)^+%Pqsa?AdiFphmNR>JzkxybCP}dNxjbq=nb$C4>L?&-tZA_@=fAyRJ2@oV&^;&eD!Be5Shz zn!_eGh<3Mm0>lLU_GpCtM$=Y8=xKYZb{$65YiEej z_<1TakSfgj-_+y=#r32Pe2xBWcB~iuG4#IdCp+{D8U`8p>(~LB78xZSj&kiGpih34 zAf_52gpqy_StSmY-JS5eOO0N2Ksu*)5OH4~g1)}{_k$k9jx1b5F2~il>J7AlvP_G~ zQ1#$hd?jrb%IwdfpV}NhClH@+UxgzT@5m*jGC3+)G>yDR8}1#s0|wZ?fR)>i(9A&x zgUB6am2H#zuw)wer2TR1|lGRY^c)52knoLduv zS>a2vl@#(Qjg^E(4&^iA1PjhT-Q+^l#$A{okT(A7mY6_2Zyk-HxfJGgloN0WaTfBt4y5Vf|)3%_7X6wE~?*{>1D)e z9Xua$>7=9b{j?BkQ9wS=c7_k!Zi7B$;L~(8M*EyK-;*p7*P^I4c-~_KuoI5%o2ydM z7uki8$f}&wB|Cmff*j>ovuoV+r^C4Ps5R~@3vn}p9kj3_eIkj<=i9c}^ukB_CPnmc zJ61Ow^lRR!d>e%E%JAyCbMD!5D83nfzCis=y09ku&fG7x;CR-aCPyADN?-6e3VX{Z z^-ZtIfL{`dlEb&?wQ2Y%_=NwfN-zU2CzrLjvfh}Ko8)66J+ox7D8hf9q#Q?ae0*0B zWrXg%frzMla3Px*@?n_K&2#|n<>{a28L6=T{CQ%861h+D8vQT*N|GIjBdeE!4(&Rb zf4k)x>1dKy_ly^O83utw-%qt!2x|*)-%kx>`5?n$i#YLiXZX1JcZw2lAGC-L-Fu;) zEv!A6j-$;U#i47W`^MRFGDAO&IuiRKY9sW(hh`o_@t;<5FFGpgX6 zi0~!8iY3A)6d||6>vS)jHl}@zV?QmNGO}#ccqUb6e(1PuJErdZ;iU<83IoC}A*QAf z%lMa<%B=FgU#FKD+|PYL(}0Yjngb2?ZIBQhvI3QLF<%JH>QEiaV|0my)jRLRiHvUz zOcZl)WnIczXr`sOK)zs{Bw;JlDf!7zv^MalZT}K^Co0d^S?X#VcZ|+TtcMsXx0V7!kdehURwcXCwY^KY3YNp z_0@0|iN!y4(|`J*GjEzOsAqDlxp8qyly|I71+1w1rPzQ5*_yzHO@tL%rX#n^oFy@3 zW}7D%m-pR7Ksv zXIcnjicRuc>W5_%2KdkknwlH60Wr#2Y3F1p`1g6heS>IM?s{3mBcq1>(RYCmv{WY} zVtST$`IDGz7pc{jC^S#s^e-+yC#8OecJu!bBY?xP+=O!aPd`oXKlL_vM8cR#QdIW_ zcBhgD5J~`85P%&sp*DTw^`lcE)!kWfiulnje;}*7SIafVr*s2$3onUWhC9 zgk}Iwr(7>-6ml)BjENC>vHZ~xY}IW9tCASewWiCIiFo3m?7JeclrpW6=#REAUohS? zL>V+cI};Eg3Aiz-dy%VKq5B#TaCLy)x1I*|C?;pv&aFGo6*l8bzni5Um}BB^=s9I%sfjcuRYVEF9={#%#&pH;7z|Nlx-b0+@zhWQ~a>xxy=R`amLdt)?xbq}W1J8!cJ4H8jpfL=pV`LH4AjA8YeTh1*3T{QAJv@5%gYdgj{Eu7u zGd*#1BruwE$t)^d`;9dx6=+lM3OI|e*`6LjYtv$cieg zMvcDj&1?f0DP`>H`c$gFM$+>6MK06fj29+1EaH%Y-WM=1!{|`4tPIt6+?ghbCXhKf zO{|>EY|fKuC-0Uv-)prpQoLJN1DFC!l2O>I$OBdc+wTE=F?6g&{H;tp9}nqr9ky}{ zSvuB$^PQc0S*(A4J~Wl$NBVS;=cjpW#DY8|jQpu1l$)KMHl+jv<1VUueW!bWxZrs- z`y&^8)HLS9MZND>()DC2>6P7?@%5U`=1?Z^Tk9q+UP&`_NS%b`%aU2c!FzU3V*?N@ zFCNvQJ!Q@Vg@+#eBi_H_4egaqZocVM0c0{6mYX=V(dpHir`W2-w6|E{pqY}7*&8)E zhCzD<`~+)DG~W9vz<-~!>lu<*M_t--TXF5ctKvf#gLZB4B3F1WR&N08=x0ClD#kLb zI%PmHQ3FtH5HBKG>ri$d@-^F%DJk3r6EUVq{j+R-;4QUzq;=MdY)m(o8t=`94_r_) z@Jj=`PS?bvDsz`9UO8Tzq}}X za4CUljC_CFX1sz0Q|w3A%E#uy((?cjQf=|oh*AWj={@B%A#WSy#GOP4vo;ts;4F0Y z#WRLb;O01Vlc&nnoWKrl5)mnpS_}#?`=gH z(8WWHDS*A#M%p0&f=bL56*D}<*Xm-qG4UGfz~cD__tMiEGXWU&X(ml#*8jTA$%Rm9rZ(n2glir7Wj6`by1mM##6(snqUpFr_&QQo`U^b;LyU#g2xXl0v!tF)olicg_Zv{R&{9| z?Ag*c%zOspwQJ|F2lsL^?d~c!J`6l$h*Gtb-n*NJ48V@%07G$GMsGxlVZRfPB2-zM ztkA*K?SffTcrDm=a$z7=%osz)DnV zr0gu`8!2XiwDRPQ{r+7)yn1AzM4Jx}hYfOC1=5wSPUeP`$Cc_h{=uk%en^(M$1@nj z%d73(yKE7-eB@=9H85ezmFxr9J0QXP@tR9pJ}jk(wwbP@LOmRbmr*^de8fBtcm4)^ zbj+YRwHVJ$G4R3y*s%eXpS{FPH*&?1){02;RT2;|V=NxuON7;MY3sQa6Kf|wluXOb z4bxYK=11GDCCzYT7(y0!mc&uTHJfQBRX1KGbK)j!@I(SaK6tB>(NuD0$CcYJfs+>~ zO}%i5p8iTsh>tPQpmE6!$s5R?^X=aq2hL{wvUqvv ziT`rEsV{|=X90SzcgIp`xUP4AU3pfcgk6(A&bS!j0`5yZ{0A$OjT82Di>s77?<;n$ z=8`Onrsu{@n&?ODz9orro?8J(^jNgrkO%J|#2-_051$t7qH@H=E|5AU$LDF+*HP@m z8*!c%_oik0H%*9NkEX(bU+DBC5{O`3O_R8y=LGSw`~;}A#jqYaYTtLHXI1{^R0TXj z3=B7O^=Yito~nDDzU%={3S9e}_T2z>-1~L>b$5SUO3ZX|Hiqd*ailRG#jvP*T;^fh z=Y}5I@2o`#ErYq@>OVJRrRY+u>H++P8-xa*=WWnyjr<=n#+>?%e**lSgsugRB=Noml$N7(GKRqD4Cuv!!f%bQF0cnpZKv@Ssm}%ujloD5qC~O zmbJ^9FWa_lb=h{8ZFJeTZFZr{wr$&Hmu<6ac7NwTXXeDr#YD_R%;nx!zgY2RzPWNe zPv&&X2)9v!6N`&%$S589Mt#jUt*gPOP1phMH5)b9nkd7Xthkgyv~ybNM61a0lw03IPT&PloP!|F>l?~ylq|mGy8H3& zsn4)oq{8q5xW7ILgN#_X??tBpy*Mw)M$!|DUacG(32Vp2DaKRqjX&9Df)&d({DXY_ zU{2$@vsOFD4hrWZ$n$w)|ToS0n0L= z;!Xj8^GMJ+EojAv~wO|*5sp`4mEdH+{GXp1$ADp{1AB%%QG6Njrba(+l|{691D?uXI3oA$NnnRRJNTfE;cb#IkKjy`bNA>o_yDEJPuQsdMn1TiOU5cg>T2~2IQQdetDxmR5%=81qDlU%eZcQLlNRa>`%&D zie5cSwo0rO$;9O(Eki*C@T#d^M>E7Mm=V$C0->skLVykNB1i}mCAutNB<9i*X4uv#+eiQBMUB?)?{tR8)aYSyA}L8h;4M=G1t>uvuHsKK@(~w;E!_IoQ@-+d z(=@S;;r+B!?4*5yq?V(GteFCESZ{aR%HCw(TyM^J=^_i2`v+j(FCIt;)B{d_Gbl|rkDy%O#Zl4tae>~opwYh}j3(G?1G zG4$_y`b!DkqJ0d^FscNBI%I)%YIJoLi*N!eYFKA-w6*jHUR09N*L>TiOSvD3S?9xi z$B99^=>!!@MPVtSIYJLv%|Euo(PRv88i-@e1(b@StxvVpwEEBMWGiB^Pq5KYr(6N~ zo%wHmA1nFK{BDK}$nU-Z|5JWHxAa3LyF9@xAtHENTgQ@7Q;forzF`jUJUK+a_le!_ zLAi_LHAFGAT8Eyv3?uNrI9pbWT%iz_#yNdj0T2aY@nb~3O^*dy zE*jUWa{uSz)BLMKP!G>@h+@M}g=My#pBqCrv!9gzjIZI|RWRSS!w{ zI|OGuFAA!ps-%}h`5k6_$|Cmt^jvKGrf+c9=Rf@?CQs6fm=VPl);a=~WY3W}T($u- z2{(Xrq3oMWFJrJ;(OYH$>`hfloYx3p0tMh+^NvzxCB5Dr6r`jR{Hq~HeYC$%J4MtR zm%_`oy=$f9=%YJ#2uB7>Sx;G#fr1Z%RVhOJ3|eQ|jdN+52NGd*g~ICCP*S}EY9)Cf z!`XRj?}FcWM9a1QDoSYT&8MsCZ(ot{c?%W^BcKjcwKfaMS26lRb8(%%5#SCQeebW& z^rJyckc$Cn2wvw&2KR2cPW3QlO9~NX?&X0C_*G$gGK&^H21DVS#cgNeZh%Uj=B%**8HDjzWtcwkZy%V=_y0|P|4&Qv|M{=qNNg4B8hfx!Ym+Bv%XfCV zp+J?~s^Xf59rv~5Zn5MaWI~X9;Ns{g$iM*iPecvg6d3pK)uDEP--Cp(ka{(&(->Jt zMhLdQHf}%5GRPc=UnIWBp}o;5V|+as#2*N@xcbKX9epACGP5}yiW4v32J$-})>C-a!_0f-k6%TUiFQ4)3GKHj<_gt9K6HJUzl5vM zi@^tpw7_ZYqcP1fIt%J|euf%I#z^8I`CoqvupwH;VoRy36Ne@TUB2=728N%@nf93> zR#e%0hiO{fpX=xzSfrThZK>OZq{W`h1RRyTzJv6^!G?^qSexcM)?cF&vnRZ2Kr zUay9GnJ1xMa!QbM%~U3P?XTUZT?EO_6OK4N4l^?{q|do7^6Y+ z!W(H6BB)o3g@|)Y?I94A zKJ($7sw3dtgBX)ljVuLNH8L_sr4`l}L{}VyCLOgK+5E=|8Md-hNwsl~NE;g?cHqnI z+nh;Md(Ki)hX-PFc(q2NPSLqdn_*3I7j#oP8^u1>jxo&I`b{*gH+JofB29vNIahTcXteH2&MB0^L5$8E zS>ADyd1~@WHIh^&OIc{_sO`sCW%q@2nlMu08ilPWj(%aH^@;TX*s;nOr8b7kuF~%E zIuKNIp@`V&=NHMv78CF{-_Q%JF|6f(QjAsN=X=I{P1~`kNf~RxNos~R)w)zPFR!MR zZ(B8{2$4q~{D6OOzD)~tWABQ7eDIQB>lj1`sy?2?33Q27AZXADd^~uGV#&BkX~>op z9Opig^C;tGwF$V9o9-~hHSW)nX_8>`^s-$xWB=0`>=+MVxLC(Q>{H$#Ibo3rNRx0{e{)SN4*7`%$ zO_;_-aNeP@K)24>(@$ny5DVvt>ZTN(64z#9^wH45h0pQ$%t>q~JOfZcQq+{RERz8t7MggDF|?!nR}d85}WG&;QRCq7_aXm-IN_D_41XwdY+YRX5Z z3M3uHINOh!?)5)^+wMwZ#4-3CLz7525A=GZ40bBup%A8#&UbI`oJRCYC9Yb^FiUaA z3waFCe}%`uT_)eqUIn!>&wm?!k|Xw2aY&s;`Kw#PP4URnA$kd7g$Z-Xe;!xj^xN~; zW5$;HB{{2kaA3JPNkXylJrc={%U5{ub~M#!^#NV>g&BhvgBnCn&j#}kJvy=BlJR1p zP-7r9s;Go;rC2SFP9aS3Ts5K2V=0LA4%p zS{?WsH-&X!_Bq00?3K+w-D}?9^g;)mBHuF`AoA>C338Xon@(%9+=m+H=VS>ik6q{K z(p7TJKq*H-LICV|p(Srkc*@khf-uGoT?j1O7&Kb3P+l^2*k|@3GOB0n=<-{g+gzma zRoAHbb_)XqshRWLNVIaVwL#{o8I%w-4*3;>Y31KsEWg1=@r6xt&9Fn&iz!i$CpdBu z2s^S>y{HCtR4)&5ByA+8lnzOGmnr^{AIGgVP^sS{egRQj6vLS!qtZfYnZC&Kd$Eo+ zV#c}?9IS@>eMI{<_^0^wJaZMtF}zRiqj9)sq%gT_g+0eAPCSPT9Ken*(A|R#Y^-AK zof?0e?t980!PN^o{3xs-a_b8^L%CibU-)L^XMzfTlPV9HJ5-jof=IfX53>Tze2uI+ zWKDiSiaI4-w0++LA~n_?%P+k=^J(D0GjoUZ?7B}h;Yq#_RYTC_PXX%3YEpT9yPPL2Q_DdO7Lk9G&FIC75;z#6paKnJyn@E%?+I;_)q+IiLUc$ z*`RM5&}JF&iD}A1tG`Qn%;714lvupOSUoaF+Y0UF*R7ik$HFT}Z~LZO()F*C+1$JU z?1cMyi(XUJ`0Q@jlt0q8EVugn7mUi){ub7+0r~B6%!hhhTUO z5hYfwHGL9IP2~*yK2JBZaA)W9haeI=j>5ztyIbn0^V2 zo<2Rp(aVk#GnU9l5zs`*U3DzX@PisHuG@1|q)&We z;5YUi2hFz?I{*HkOgly0hQEb6mK^a>e%zEOH$dSW#R)%znKChXB=T-_C4+l(G{LaV zMm7W!He-4Y=zd{=&->?a3pr`TS%qR6t>LL#&S=`yd=)5%=XGA7NK_1F4*jBL?a zW(y7wXN4EivPl0pq@$+N=wW&@R_??3u5wgMdQe^o_Qih8|L#q2q2R_nmAL_qC<JqgCh5HZBh1p+DJhvo{A(W2EdN`$;3ZOt{>|nE*A~XNCMZ%VYfCMm|NY2R8RV$ z0g1@PlXRW779&yft+S-^aEs1n4!=4l$L5vUoj(A#*XqNuU0b!9U%>OuiZ!4!bqOA% zd@&aH^_1sF^Lo7)tCNg>7FmNP6+sb3jWzcvt-q4hGfm=4ot8ZmCfh{;I}X9K7HmAJ z4h<&B$ffY2c`Z>GzDYz0ot5Vf&!RR@?WMezN&Z`Op+xK4rXxkNqjB7vq)f7@nqpNp zfE}&Q9M2hlbu^RHD)RUj8zO={kphBb4XcM+NNnFCCt>!YGMy)+J65V#ALk%ka3ga= z*NtsKlEM@n6M8s;mFmosUq1mA_mwZ|G6=5t)*w@DWKmbI6PLj~%yR|Ca)KO=f98uL zLW=txI8LwEN+Eyy0NzcI!ME!rL?wHz<3|wFYm%AyLy9cn*pMAG;L_ancVaWkHzvkH z0`ng3-J+1w{B5$9o}dO|YaH2d=y(uH&Vo)Oq1?Y-b997BQ5yJynN;0t@e=gGl{h2x zPWp!yA(=r4R?}`I1_fL-d^%@jtJ-=*sf2(vUBQE_w|$WWTBjP`{YckLlk;l*Y^Z@; zat0qojnV_vls&fdBwJ=F^=HGT3pWf_zo;HIDzqHitjAODMO}7<+zr1R&Tqr)?ggEp z)9N4h^${vf+frkQANk_oeYL2+(9{KSaapbx!9#AWLpNn@V6Uax=T z7$O!E8&x_pRKo!57(w7Lk7nCEb$i*&0dk#Zsmaa4jZedDINEpilM@Zwu|wwc`I{m7DU7aeruVP z%uvRqKYsgvtCWgvo~X?5YK4lWOH!gLEXrL~rUZ_x`wdo_J7d${i7=m_u0%%aie3e; z#3I3r^{C`swl4?6D)~l6{1Kp6d0)gXmwksN`j`@&Y$K&i=)6ixq6A>aY;Wi#qtZi^ zRQBMQuBI5!erp5q=qO$+Fn1+rhfUUOE`rnXhwNUodTEZeE-zm?KA;@`NgZ?&@tRWu zT^lNyfHHPZDwj1v`B?thxxA)2r5J}|%kfj7+YK2n$^+<^`5zm&JIp;~0}#j+9Qvj{ z(sKWP1I-ixSEF;qn4m_QIA#z>66OQX-vX;klEDA#eNt@VMefJ8(lg=Xy`^xP5 zt0BjhBH2AQ`|LxlmsDtN7Rq6N$hs%_^1YmzNtQp~69UrP7w}{C%{6wwZ7gI9qmViF z{A6T)Tt8^UR7=5+PC1)*1Xd!}>?U=Fy0~-4m(y&pX;EZ@usMM9*4}Nmjy2AldWS4W zL+DY;q<`5EmvZlr4E^b*>7N>cAW@Bw@3&0vT#(b~XKG@48A=Y+$ZI{A9}8LT0-1X= zhqMW|zy*Q|)6g73_kQ&w&te~_{R8TTg;MuS40+xez>f2lZ}k|FhMNU#@5RjaxX;sM z=Es!~^(4}EYG-R4h9Ck8J4Zsqw_BNfoE_heISs+><^dDo*w8O>WbK-6cWJJGz8U%R zH3IY%+40?<32mf00+}1JIFEl!g6^jN_o~^BsK?BFFL&zthqdvAPLbdarg*H3b*Zu| z!S7nxG{sR$J%8vfHtCc(`edxxq6_5Ll2R9||bv}Gd*wNw;Su(qjE?@u7v^vo@FRC&=q z5s<-2c&N=I18Y+<9K#qT5PVmfi$uVnPxQuTfgV60cHkNKCCSe!vetsM%A+Y#HL zIu;Y7!SCpa+Hp^FDaG_fpe`kBHY-6qr6|hfCn$o^d&W_kYp2rY$IK_y66v)z#>7zy zN|9HnP$a^pCmr~D;T&H!8aTuwNFo8)@w?!%^^vqSo%>pTJcx{-kC5O$F0;&;rw0FK`O})cr&spKX)};bDjy%6!13`bZK_ zi@Kq{-`*3E{{|uyn|(vl+35SHsN%%37fZe_k8Yj23jRf;D<%W6BeI}|#CBHqwyAVh z4GLUrNFxJ;gt-Kppm;&|Q8v(rrV%a@9#4gmoyoNNo91*gtPL)!vJh0Tnhj&Y1-(SF z92bC{fPRmxH_1&RBz8G&xK1!bdLl!WVnp>`^7+k&l(Ew}IU4zk>(0W}J-uU+E#;mqPp-!M^NOfKvwlY~rrdk zb_`vGPN8czL*E^LhZxag?GT9~rP@|dabN@KvHZ7UG9CzyoksM9l2>TnQsAaks|5~) zgn`@)^@}`AbqmGZ_j~KHy2MFyu~CXT*g#5Ca2?%dZvZ=?)i7^<-2umY5H0s|(Zm46 zZ`E9$ed2M@^t+Pfn}sumqlswk9urG~QD?jh`jJZuMDRAAH&56LOX_aSF0=ku>#|7_ z&SGOj$;+SBkJ?t##Y`oh`4KsW)Kx#P^(9%NRGN!G<}b!~pUP8I1#Fn^XJ~Vg(IQ}_ zXr*<)`?*48CDU;R#s=Wi9H|W8tWX*c#JUW61OHs?zP{+;q9ZRS-coVy5kWvtk;|+t ze@C+SLLlemp2&!x0k9*zEJ`W!+)NL)92wUpI0=cyG{F`_%ptPAQW5OoPCk{2u~vGq zw=r|hgrFV_PcFcp$UuF6f#S!u$!HWtib_q5#o*v zHSMg8=^MFZ5Ezv!K~rmLn<2g(BeXWm-`YLQ%JWS~I`u1ewndiE69xEq776Tz_ZG6B<&u6DDVc%k=JFjQ92P#Do6gF)M4 z^@sg&*`%*Nr%_w$u<4ZMO$y_D0HM^kMQ1vnvO^Wq_qPGrKQ*4&x0V;7r=3(@wNiz- zP>|jTBBM6J7jN4t54jGSb`)WQW0DM_=Tgx-UIN-ON+Kw1&EX#z-X%m8 zMvsanF#WhCR8G*i6EnZ%=x$M|5H@3}^cASctw2Ihzt*goQ5~^6nx2p zlQJ~dsxC|_T}7b1iV<(Fco8P(vvg7|# z@B?T4sWq}Nmr67`ffPG64O~LUjh-C5qrEOt9djw7*&xgQQt{1h#xcYbidp9E2IINB3j3clejzbLkPRohgDD+AdJ~;S( z(S%@l1QfJ^aWEiUV$gU?x^lq(@l$S0^DTqn>fsOcN8#Pco)3L|x=e1#)~7)veq^9W zN5BTNdAvIEnb0<)5(t=EXaZ|g5@nof=@Y_Ltnn`{r2?>{El%YwZCewob2PNDw#18z zRIO(UJf?8)i(zdi4%kNnkztsAW|Kiy@2JW+qZy`<5fQq(x-Psd8=4PF~tlS>Fmx`%l11sGu8#J*^iG{y4 zca93Z9$8)ru1c03QA}LYt9%TvZ3e!zMllZj0n~;`INM=kA8g$w@&oYLWgY#$FC|UDp z{AEJiL8+OPoB$75;KvW(iYCKy*b46!lPzLfJ7)fa%@VoXSk+HkShcNLnX9@C-O32G z_0>5BYi(?hKulmj)rO!p0Aofzi>V- zU+D3R4#&aXsQD?W_B81O1{vEFq>4+=#(IDek$A*vp-EmPe#C2?3{=9=N};E z*!(6R06W$RD0tLtYrYLV`BrO9cqgLv!dit%jiaMljhh|mO4DNtQN)|Mw_@6F^^rsR z)jdl8s_3~)D++Y$gcq5gQl5-&Mbt?!oog>QIuF7z<)kyihUh8hzj5E*nQLLm!7pfE zvrWygy?fKh=AgNyKx$}eB30`bI=X7E(a6gzZ=Xj{vk{?%2NF*vXP=wTWbfJ80?kSt z)96uC_=Y4A-U0o8c;`&w@BSH9(hk5*Grf0Bq!DUJ#_FZ*H^2*%` zfkF}2J6gx#iYx9}6e(P12eVV0I4OW-yHT#T-e9Q*iXPrETf3hod&nj2+4nKpMSfC{KIBF z+%OvJb4z-lWc&+DZ>;ecjWP!JZdMK<$KztYwMors$D&^6Wmp}tl+3DjSg4r<+Rn#3 zYp>fV74MJdeu_O9(%Rh(NfH<*_v{fZ9NLWn5K~jbEfxbodnD0|X35Ies>a}ri_p)9 z<;&Q3THPsTGx{xOX`ezjL5AUaHbg4h92!TPK7%9la=>h&GqJ&5xtGv%7C8VruBjQ5 zt!o;OY*Rv&dNE3ahW%RCb+sG=I`@~(M>(`?i$!-%f#&QO4|$j~MiZwE*LgdS?De;E z198N85GJOhy`%@8=%jJ^4F*Cir&yWu?s%ko+aD6M%$=-V8tWHmiC6-jHuE|tyA!UG&LH2n*yKT_-qkYr1jGGVi2 z>b!JtZ)Ox!orKgWnaWRta7M0Lwr;dE?f`Z?k)ZzTi9W^PSo#UihDK2DmT%PGf&pLm z1zxyHLl6Qp++bZ$j;gr0B_T{r!OsyLMK^?< z+l3Kt>>%{+s|N-zwt(i?SH{Gm)t1=vU(m80jAIP^hed*~K3~1!h{GUNv-MeECd#Cg z;QH_)I#^=~Iszw{E+yWD)b-hH(FYdx&o>^J`P$<%l0GTbIf(V}AbpEmD4|TQI5UUQ0i6$VzRwS77+W75=UQBjZm%5t6 z)HJ(AdB|>qkq+zkk&jsHcQsmfMe+9RTGd8+kB_Q&6NXU&*a@f%Sb~Wav>F)vQx-TE zZxDyS`{ZJf#k`Z92BP~;W@bl>qH+>dFiBleFvz@01vaHfrsXkg7sqrxk@CAg;wIw5#F!NRFSXvthfHN3x;kX^%Q@s_!uZ}6U*EjqbywyR5NvLjf1F+1x^Jv;N!#@=c7lr7d#P9CI%r3cx{2Lp??ZA>rt z@yKcUQoIFy#AmqkWJRy*^G$>d%-%O4d_Gtk$EURL)ItYgQC0Y0qbr)^U!(GHO2uxw z3ckM!o@oiAPp2=Tv}2{F%p8sh*C1%`Z`rX1srJc&7K%7WiJ&MOw;n zj6U@hLD%yg7C|3)qw`22BB;t0)Sg`c?8yF9ASXbR9SuY8FU#QaYLgum3pCk#7h;_4 zZ%QJV-mHS@JHV+dGuLwWm5mBN47bBT+Lj>*1@g1Aq@;U@{S^&tmwHkc673Z49e?g} z*8TQ&EmV49d}aUgkQuCuJXQ+4<>9Utqf}+49R;0lM#X4HbMiv2VtUdTeSHnsaA1bA z*dhaF5(qkz?0gj<%m@0H?}_m5BL%0A458`t*pST+y#eSl=&_3zT#nSFVc}2gx@!RJ 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�@&O=b9oQ;t4 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 AQUCw| literal 0 HcmV?d00001 diff --git a/testfiles_temp/entry2-variant1.m3u8 b/testfiles_temp/entry2-variant1.m3u8 new file mode 100644 index 0000000..55386d8 --- /dev/null +++ b/testfiles_temp/entry2-variant1.m3u8 @@ -0,0 +1,45 @@ +#EXTM3U +#EXT-X-VERSION:4 +## Created with Unified Streaming Platform (version=1.15.1-31309) +#EXT-X-PLAYLIST-TYPE:VOD +#EXT-X-MEDIA-SEQUENCE:1 +#EXT-X-INDEPENDENT-SEGMENTS +#EXT-X-TARGETDURATION:4 +#USP-X-TIMESTAMP-MAP:MPEGTS=900000,LOCAL=1970-01-01T00:00:00Z +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-1.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-2.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-3.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-4.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-5.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-6.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-7.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-8.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-9.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-10.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-11.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-12.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-13.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-14.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-15.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-16.ts +#EXTINF:4, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-17.ts +#EXTINF:2.8333, no desc +manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568-18.ts +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry2.m3u8 b/testfiles_temp/entry2.m3u8 new file mode 100644 index 0000000..4ddadd8 --- /dev/null +++ b/testfiles_temp/entry2.m3u8 @@ -0,0 +1,15 @@ +#EXTM3U +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=960000,RESOLUTION=640x360,CODECS="mp4a.40.2,avc1.4d401e",FRAME-RATE=30.0,CLOSED-CAPTIONS=NONE +https://videos-cloudfront-usp.jwpsrv.com/697447fb_17168bf482c87a9ca77629506aef91ae741b18d2/sites/MDzvJl71/media/pZxWPRg4/versions/pZxWPRg4/manifest.ism/manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=841568.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=5220000,RESOLUTION=1920x1080,CODECS="mp4a.40.2,avc1.640028",FRAME-RATE=30.0,CLOSED-CAPTIONS=NONE +https://videos-cloudfront-usp.jwpsrv.com/697447fb_17168bf482c87a9ca77629506aef91ae741b18d2/sites/MDzvJl71/media/pZxWPRg4/versions/pZxWPRg4/manifest.ism/manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=5099752.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2580000,RESOLUTION=1280x720,CODECS="mp4a.40.2,avc1.4d401f",FRAME-RATE=30.0,CLOSED-CAPTIONS=NONE +https://videos-cloudfront-usp.jwpsrv.com/697447fb_17168bf482c87a9ca77629506aef91ae741b18d2/sites/MDzvJl71/media/pZxWPRg4/versions/pZxWPRg4/manifest.ism/manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=2462768.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1650000,RESOLUTION=960x540,CODECS="mp4a.40.2,avc1.4d401f",FRAME-RATE=30.0,CLOSED-CAPTIONS=NONE +https://videos-cloudfront-usp.jwpsrv.com/697447fb_17168bf482c87a9ca77629506aef91ae741b18d2/sites/MDzvJl71/media/pZxWPRg4/versions/pZxWPRg4/manifest.ism/manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=1537008.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=760000,RESOLUTION=480x270,CODECS="mp4a.40.2,avc1.42c015",FRAME-RATE=30.0,CLOSED-CAPTIONS=NONE +https://videos-cloudfront-usp.jwpsrv.com/697447fb_17168bf482c87a9ca77629506aef91ae741b18d2/sites/MDzvJl71/media/pZxWPRg4/versions/pZxWPRg4/manifest.ism/manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=639296.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=530000,RESOLUTION=320x180,CODECS="mp4a.40.2,avc1.42c00d",FRAME-RATE=30.0,CLOSED-CAPTIONS=NONE +https://videos-cloudfront-usp.jwpsrv.com/697447fb_17168bf482c87a9ca77629506aef91ae741b18d2/sites/MDzvJl71/media/pZxWPRg4/versions/pZxWPRg4/manifest.ism/manifest-audio_0_q7BAv3mA_WbaG9LKN=112000-video_0_q7BAv3mA_Uql258jy=413600.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=120000,CODECS="mp4a.40.2" +https://videos-cloudfront-usp.jwpsrv.com/697447fb_17168bf482c87a9ca77629506aef91ae741b18d2/sites/MDzvJl71/media/pZxWPRg4/versions/pZxWPRg4/manifest.ism/manifest-audio_0_q7BAv3mA_WbaG9LKN=112000.m3u8 diff --git a/testfiles_temp/entry3.m3u8 b/testfiles_temp/entry3.m3u8 new file mode 100644 index 0000000..27cb7ec --- /dev/null +++ b/testfiles_temp/entry3.m3u8 @@ -0,0 +1,133 @@ +#EXTM3U +#EXT-X-VERSION:3 +#EXT-X-PLAYLIST-TYPE:VOD +#EXT-X-TARGETDURATION:11 +#EXTINF:10.000, +url_846/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_847/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_848/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_849/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_850/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_851/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_852/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:9.967, +url_853/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.033, +url_854/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_855/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_856/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_857/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_858/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_859/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_860/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_861/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_862/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_863/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_864/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_865/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_866/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_867/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_868/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_869/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_870/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_871/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_872/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_873/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_874/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:9.967, +url_875/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.033, +url_876/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_877/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_878/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_879/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_880/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_881/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_882/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_883/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_884/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_885/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_886/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_887/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_888/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:9.967, +url_889/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.033, +url_890/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_891/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_892/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_893/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_894/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_895/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_896/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_897/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_898/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_899/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_900/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_901/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_902/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_903/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_904/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_905/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_906/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_907/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:10.000, +url_908/193039199_mp4_h264_aac_hq_7.ts +#EXTINF:4.600, +url_909/193039199_mp4_h264_aac_hq_7.ts +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry4.m3u8 b/testfiles_temp/entry4.m3u8 new file mode 100644 index 0000000..5e13561 --- /dev/null +++ b/testfiles_temp/entry4.m3u8 @@ -0,0 +1,13 @@ +#EXTM3U +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=187738,RESOLUTION=416x234 +stream_110k_48k_416x234.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=274228,RESOLUTION=416x234 +stream_200k_48k_416x234.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=466428,RESOLUTION=416x234 +stream_400k_48k_416x234.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=658628,RESOLUTION=640x360 +stream_600k_48k_640x360.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=850828,RESOLUTION=640x360 +stream_800k_48k_640x360.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1043028,RESOLUTION=640x360 +stream_1000k_48k_640x360.m3u8 diff --git a/testfiles_temp/entry5-2.m3u8 b/testfiles_temp/entry5-2.m3u8 new file mode 100644 index 0000000..79e1a52 --- /dev/null +++ b/testfiles_temp/entry5-2.m3u8 @@ -0,0 +1,78 @@ +#EXTM3U +#EXT-X-YOSPACE-ANALYTICS-URL:"https://csm-e-cebteurxaws416-2hjvnjz85og7.tls1.yospace.com/csm/analytics;jsessionid=E97CB20FD3BCE93F89ADDB12E8C82895.csm-e-cebteurxaws416-2hjvnjz85og7.tls1.yospace.com" +#EXT-X-TARGETDURATION:10 +#EXT-X-VERSION:3 +#EXT-X-PLAYLIST-TYPE:EVENT +#EXT-X-KEY:METHOD=AES-128,URI="key1.json?f=1041&s=0&p=1822767&m=1506045858",IV=0x000000000000000000000000001BD02F +#EXTINF:10, +1041_6_1822767.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key2.json?f=1041&s=0&p=1822768&m=1506045858",IV=0x000000000000000000000000001BD030 +#EXTINF:10, +1041_6_1822768.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key3.json?f=1041&s=0&p=1822769&m=1506045858",IV=0x000000000000000000000000001BD031 +#EXTINF:10, +1041_6_1822769.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key4.json?f=1041&s=0&p=1822770&m=1506045858",IV=0x000000000000000000000000001BD032 +#EXTINF:6.28, +1041_6_1822770.ts?m=1506045858 +#EXT-X-DISCONTINUITY +#EXT-X-KEY:METHOD=NONE +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-2.ts +#EXTINF:7.2, +u-6400-m-720x408-1628-a-96-1-3.ts +#EXTINF:2.8, +u-6400-m-720x408-1628-a-96-1-4.ts +#EXT-X-DISCONTINUITY +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-1-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-2-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-3-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-4-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-5.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-6.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-7.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-8.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-9.ts +#EXTINF:7.56, +u-6400-m-720x408-1628-a-96-1-10.ts +#EXTINF:2.44, +u-6400-m-720x408-1628-a-96-1-11.ts +#EXT-X-DISCONTINUITY +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-1-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-3-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-4-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-5-1.ts +#EXT-X-DISCONTINUITY +#EXT-X-KEY:METHOD=AES-128,URI="key5.json?f=1041&s=0&p=1822791&m=1506045858",IV=0x000000000000000000000000001BD047 +#EXTINF:9.72, +1041_6_1822791.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key6.json?f=1041&s=0&p=1822792&m=1506045858",IV=0x000000000000000000000000001BD048 +#EXTINF:10, +1041_6_1822792.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key7.json?f=1041&s=0&p=1822793&m=1506045858",IV=0x000000000000000000000000001BD049 +#EXTINF:10, +1041_6_1822793.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key8.json?f=1041&s=0&p=1822794&m=1506045858",IV=0x000000000000000000000000001BD04A +#EXTINF:10, +1041_6_1822794.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key9.json?f=1041&s=0&p=1822795&m=1506045858",IV=0x000000000000000000000000001BD04B +#EXTINF:10, +1041_6_1822795.ts?m=1506045858 +#EXT-X-ENDLIST \ No newline at end of file diff --git a/testfiles_temp/entry5.m3u8 b/testfiles_temp/entry5.m3u8 new file mode 100644 index 0000000..79e1a52 --- /dev/null +++ b/testfiles_temp/entry5.m3u8 @@ -0,0 +1,78 @@ +#EXTM3U +#EXT-X-YOSPACE-ANALYTICS-URL:"https://csm-e-cebteurxaws416-2hjvnjz85og7.tls1.yospace.com/csm/analytics;jsessionid=E97CB20FD3BCE93F89ADDB12E8C82895.csm-e-cebteurxaws416-2hjvnjz85og7.tls1.yospace.com" +#EXT-X-TARGETDURATION:10 +#EXT-X-VERSION:3 +#EXT-X-PLAYLIST-TYPE:EVENT +#EXT-X-KEY:METHOD=AES-128,URI="key1.json?f=1041&s=0&p=1822767&m=1506045858",IV=0x000000000000000000000000001BD02F +#EXTINF:10, +1041_6_1822767.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key2.json?f=1041&s=0&p=1822768&m=1506045858",IV=0x000000000000000000000000001BD030 +#EXTINF:10, +1041_6_1822768.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key3.json?f=1041&s=0&p=1822769&m=1506045858",IV=0x000000000000000000000000001BD031 +#EXTINF:10, +1041_6_1822769.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key4.json?f=1041&s=0&p=1822770&m=1506045858",IV=0x000000000000000000000000001BD032 +#EXTINF:6.28, +1041_6_1822770.ts?m=1506045858 +#EXT-X-DISCONTINUITY +#EXT-X-KEY:METHOD=NONE +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-2.ts +#EXTINF:7.2, +u-6400-m-720x408-1628-a-96-1-3.ts +#EXTINF:2.8, +u-6400-m-720x408-1628-a-96-1-4.ts +#EXT-X-DISCONTINUITY +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-1-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-2-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-3-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-4-1.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-5.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-6.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-7.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-8.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-9.ts +#EXTINF:7.56, +u-6400-m-720x408-1628-a-96-1-10.ts +#EXTINF:2.44, +u-6400-m-720x408-1628-a-96-1-11.ts +#EXT-X-DISCONTINUITY +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-1-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-3-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-4-2.ts +#EXTINF:10, +u-6400-m-720x408-1628-a-96-1-5-1.ts +#EXT-X-DISCONTINUITY +#EXT-X-KEY:METHOD=AES-128,URI="key5.json?f=1041&s=0&p=1822791&m=1506045858",IV=0x000000000000000000000000001BD047 +#EXTINF:9.72, +1041_6_1822791.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key6.json?f=1041&s=0&p=1822792&m=1506045858",IV=0x000000000000000000000000001BD048 +#EXTINF:10, +1041_6_1822792.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key7.json?f=1041&s=0&p=1822793&m=1506045858",IV=0x000000000000000000000000001BD049 +#EXTINF:10, +1041_6_1822793.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key8.json?f=1041&s=0&p=1822794&m=1506045858",IV=0x000000000000000000000000001BD04A +#EXTINF:10, +1041_6_1822794.ts?m=1506045858 +#EXT-X-KEY:METHOD=AES-128,URI="key9.json?f=1041&s=0&p=1822795&m=1506045858",IV=0x000000000000000000000000001BD04B +#EXTINF:10, +1041_6_1822795.ts?m=1506045858 +#EXT-X-ENDLIST \ No newline at end of file diff --git a/testfiles_temp/entry6.m3u8 b/testfiles_temp/entry6.m3u8 new file mode 100644 index 0000000..b802f56 --- /dev/null +++ b/testfiles_temp/entry6.m3u8 @@ -0,0 +1,78 @@ +#EXTM3U +#EXT-X-VERSION:4 +#EXT-X-ALLOW-CACHE:YES +#EXT-X-TARGETDURATION:4 +#EXT-X-MEDIA-SEQUENCE:0 +#EXTINF:2.000000, +#EXT-X-BYTERANGE:501584@0 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:3.560000, +#EXT-X-BYTERANGE:1005424@501584 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.360000, +#EXT-X-BYTERANGE:567196@1507008 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:423752@2074204 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:434844@2497956 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:0.480000, +#EXT-X-BYTERANGE:128404@2932800 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:435408@3061204 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:488988@3496612 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:1.960000, +#EXT-X-BYTERANGE:482784@3985600 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:350620@4468384 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:328812@4819004 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.920000, +#EXT-X-BYTERANGE:677364@5147816 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:466804@5825180 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:532980@6291984 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:524144@6824964 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:517564@7349108 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.520000, +#EXT-X-BYTERANGE:647472@7866672 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:579228@8514144 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:0.600000, +#EXT-X-BYTERANGE:177284@9093372 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.760000, +#EXT-X-BYTERANGE:560052@9270656 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:395176@9830708 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:479024@10225884 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:2.000000, +#EXT-X-BYTERANGE:481468@10704908 +cisq0gim60007xzvi505emlxx.ts +#EXTINF:0.080000, +#EXT-X-BYTERANGE:93812@11186376 +cisq0gim60007xzvi505emlxx.ts +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry7.m3u8 b/testfiles_temp/entry7.m3u8 new file mode 100644 index 0000000..84b79fb --- /dev/null +++ b/testfiles_temp/entry7.m3u8 @@ -0,0 +1,43 @@ +#EXTM3U +#EXT-X-MEDIA-SEQUENCE:1 +#EXT-X-TARGETDURATION:10 +#EXT-X-ALLOW-CACHE:YES +#EXTINF:10, +130130211307_1.ts +#EXTINF:10, +130130211307_2.ts +#EXTINF:10, +130130211307_3.ts +#EXTINF:10, +130130211307_4.ts +#EXTINF:10, +130130211307_5.ts +#EXTINF:10, +130130211307_6.ts +#EXTINF:10, +130130211307_7.ts +#EXTINF:10, +130130211307_8.ts +#EXTINF:10, +130130211307_9.ts +#EXTINF:10, +130130211307_10.ts +#EXTINF:10, +130130211307_11.ts +#EXTINF:10, +130130211307_12.ts +#EXTINF:10, +130130211307_13.ts +#EXTINF:10, +130130211307_14.ts +#EXTINF:10, +130130211307_15.ts +#EXTINF:10, +130130211307_16.ts +#EXTINF:10, +130130211307_17.ts +#EXTINF:10, +130130211307_18.ts +#EXTINF:10, +130130211307_19.ts +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry8-variant1.m3u8 b/testfiles_temp/entry8-variant1.m3u8 new file mode 100644 index 0000000..1b544b6 --- /dev/null +++ b/testfiles_temp/entry8-variant1.m3u8 @@ -0,0 +1,38 @@ +#EXTM3U +#EXT-X-VERSION:1 +## Created with Unified Streaming Platform(version=1.6.7) +#EXT-X-MEDIA-SEQUENCE:1 +#EXT-X-ALLOW-CACHE:NO +#EXT-X-TARGETDURATION:11 +#EXT-X-KEY:METHOD=AES-128,URI="oceans.key" +#EXTINF:11, no desc +oceans_aes-audio=65000-video=236000-1.ts +#EXTINF:7, no desc +oceans_aes-audio=65000-video=236000-2.ts +#EXTINF:7, no desc +oceans_aes-audio=65000-video=236000-3.ts +#EXTINF:8, no desc +oceans_aes-audio=65000-video=236000-4.ts +#EXTINF:10, no desc +oceans_aes-audio=65000-video=236000-5.ts +#EXTINF:6, no desc +oceans_aes-audio=65000-video=236000-6.ts +#EXTINF:9, no desc +oceans_aes-audio=65000-video=236000-7.ts +#EXTINF:7, no desc +oceans_aes-audio=65000-video=236000-8.ts +#EXTINF:9, no desc +oceans_aes-audio=65000-video=236000-9.ts +#EXTINF:8, no desc +oceans_aes-audio=65000-video=236000-10.ts +#EXTINF:8, no desc +oceans_aes-audio=65000-video=236000-11.ts +#EXTINF:8, no desc +oceans_aes-audio=65000-video=236000-12.ts +#EXTINF:6, no desc +oceans_aes-audio=65000-video=236000-13.ts +#EXTINF:9, no desc +oceans_aes-audio=65000-video=236000-14.ts +#EXTINF:5, no desc +oceans_aes-audio=65000-video=236000-15.ts +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry8.m3u8 b/testfiles_temp/entry8.m3u8 new file mode 100644 index 0000000..e7f9da3 --- /dev/null +++ b/testfiles_temp/entry8.m3u8 @@ -0,0 +1,17 @@ +#EXTM3U +#EXT-X-VERSION:1 +## Created with Unified Streaming Platform(version=1.6.7) +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=319060,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=304x128 +oceans_aes-audio=65000-video=236000.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=461100,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=384x160 +oceans_aes-audio=65000-video=370000.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=674160,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=544x224 +oceans_aes-audio=65000-video=571000.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=999580,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=736x304 +oceans_aes-audio=65000-video=878000.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1489300,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=960x400 +oceans_aes-audio=65000-video=1340000.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2233420,CODECS="mp4a.40.2,avc1.66.31",RESOLUTION=1264x528 +oceans_aes-audio=65000-video=2042000.m3u8 +#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=68900,CODECS="mp4a.40.2" +oceans_aes-audio=65000.m3u8 diff --git a/testfiles_temp/entry9-variant1.m3u8 b/testfiles_temp/entry9-variant1.m3u8 new file mode 100644 index 0000000..6790a06 --- /dev/null +++ b/testfiles_temp/entry9-variant1.m3u8 @@ -0,0 +1,17 @@ +#EXTM3U +#EXT-X-VERSION:4 +#EXT-X-PLAYLIST-TYPE:VOD +#EXT-X-TARGETDURATION:6 +#EXT-X-MEDIA-SEQUENCE:0 +#EXT-X-KEY:METHOD=AES-128,URI="key.bin" +#EXTINF:6.016000, +segment-0.aac +#EXTINF:6.016000, +segment-1.aac +#EXTINF:6.016000, +segment-2.aac +#EXTINF:6.016000, +segment-3.aac +#EXTINF:5.482667, +segment-4.aac +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry9-variant3.m3u8 b/testfiles_temp/entry9-variant3.m3u8 new file mode 100644 index 0000000..a9f2a86 --- /dev/null +++ b/testfiles_temp/entry9-variant3.m3u8 @@ -0,0 +1,33 @@ +#EXTM3U +#EXT-X-VERSION:4 +#EXT-X-PLAYLIST-TYPE:VOD +#EXT-X-I-FRAMES-ONLY +#EXT-X-INDEPENDENT-SEGMENTS +#EXT-X-TARGETDURATION:8 +#EXT-X-MEDIA-SEQUENCE:0 +#EXT-X-KEY:METHOD=AES-128,URI="key.bin" +#EXTINF:8.400000, +#EXT-X-BYTERANGE:107724@376 +segment-0.ts +#EXTINF:4.560000, +#EXT-X-BYTERANGE:38540@376 +segment-1.ts +#EXTINF:3.120000, +#EXT-X-BYTERANGE:46060@176720 +segment-1.ts +#EXTINF:5.640000, +#EXT-X-BYTERANGE:125208@376 +segment-2.ts +#EXTINF:1.880000, +#EXT-X-BYTERANGE:89676@902964 +segment-2.ts +#EXTINF:2.160000, +#EXT-X-BYTERANGE:125396@376 +segment-3.ts +#EXTINF:2.080000, +#EXT-X-BYTERANGE:52076@232744 +segment-3.ts +#EXTINF:1.680000, +#EXT-X-BYTERANGE:117688@627920 +segment-3.ts +#EXT-X-ENDLIST diff --git a/testfiles_temp/entry9.m3u8 b/testfiles_temp/entry9.m3u8 new file mode 100644 index 0000000..3333a05 --- /dev/null +++ b/testfiles_temp/entry9.m3u8 @@ -0,0 +1,14 @@ +#EXTM3U +# Created with Bento4 mp4-hls.py version 1.2.0r637 + +#EXT-X-VERSION:4 + +# Audio +#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio_aac",NAME="Unknown",LANGUAGE="und",AUTOSELECT=YES,DEFAULT=YES,URI="audio/aac/und/stream.m3u8" + +# Media Playlists +#EXT-X-STREAM-INF:AVERAGE-BANDWIDTH=1468268,BANDWIDTH=2051101,CODECS="avc1.4D401F,mp4a.40.2",RESOLUTION=1280x720,AUDIO="audio_aac" +media-1/stream.m3u8 + +# I-Frame Playlists +#EXT-X-I-FRAME-STREAM-INF:AVERAGE-BANDWIDTH=190343,BANDWIDTH=560419,CODECS="avc1.4D401F",RESOLUTION=1280x720,URI="media-1/iframes.m3u8" diff --git a/todo.txt b/todo.txt new file mode 100644 index 0000000..c80b36c --- /dev/null +++ b/todo.txt @@ -0,0 +1,12 @@ +- "manifest" -> "playlist"? +- Retaining Input instances for segments without clogging up memory indefinitely + +idea: discontinuities with extra decoder config on the packet. +Also, why not just have the packet metadata on the packet? I think that would make things easier overall. +Also: for robustness, do a different track matching algorithm for hls playback. so not use pid but make it simpler like + if theres only 1 video track then its obvious yknow. Need to see if this is actually needed in the case of ext-x-discontinuity + +- EXT-X-MEDIA +- getSegments() API? Any point in partially reading the playlist file? Idk + +dont forget ext x media + stream inf both situation \ No newline at end of file