@basmilius/apple-audio-source 0.7.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-Bwx8J3ba.mjs +1 -0
- package/dist/codec-parser-C_xB6wjM.mjs +3 -0
- package/dist/codec-parser-C_xB6wjM.mjs.map +1 -0
- package/dist/flac-HeRh6IRl.mjs +0 -0
- package/dist/flac-HeRh6IRl.mjs.map +1 -0
- package/dist/index.d.mts +88 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -0
- package/dist/mpg123-decoder-Dq9WfDuS.mjs +0 -0
- package/dist/mpg123-decoder-Dq9WfDuS.mjs.map +1 -0
- package/dist/node-wav-BofhZIPC.mjs +2 -0
- package/dist/node-wav-BofhZIPC.mjs.map +1 -0
- package/dist/ogg-vorbis-Di1d0ou7.mjs +0 -0
- package/dist/ogg-vorbis-Di1d0ou7.mjs.map +1 -0
- package/dist/qoa-format-CAiNgsjx.mjs +2 -0
- package/dist/qoa-format-CAiNgsjx.mjs.map +1 -0
- package/dist/utilities-DBsvONcX.mjs +4 -0
- package/dist/utilities-DBsvONcX.mjs.map +1 -0
- package/package.json +11 -10
- package/dist/const.d.ts +0 -4
- package/dist/decoder/audioDecode.d.ts +0 -8
- package/dist/decoder/codec.d.ts +0 -3
- package/dist/decoder/decode.d.ts +0 -1
- package/dist/decoder/index.d.ts +0 -3
- package/dist/decoder/pcm.d.ts +0 -8
- package/dist/ffmpeg.d.ts +0 -10
- package/dist/index.d.ts +0 -7
- package/dist/index.js +0 -5274
- package/dist/mp3.d.ts +0 -12
- package/dist/ogg.d.ts +0 -12
- package/dist/pcm.d.ts +0 -10
- package/dist/sineWave.d.ts +0 -10
- package/dist/url.d.ts +0 -11
- package/dist/wav.d.ts +0 -12
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ogg-vorbis-Di1d0ou7.mjs","names":["CodecParser"],"sources":["../../../node_modules/.bun/@wasm-audio-decoders+ogg-vorbis@0.1.20/node_modules/@wasm-audio-decoders/ogg-vorbis/src/EmscriptenWasm.js","../../../node_modules/.bun/@wasm-audio-decoders+ogg-vorbis@0.1.20/node_modules/@wasm-audio-decoders/ogg-vorbis/src/OggVorbisDecoder.js","../../../node_modules/.bun/@wasm-audio-decoders+ogg-vorbis@0.1.20/node_modules/@wasm-audio-decoders/ogg-vorbis/src/OggVorbisDecoderWebWorker.js","../../../node_modules/.bun/@wasm-audio-decoders+ogg-vorbis@0.1.20/node_modules/@wasm-audio-decoders/ogg-vorbis/index.js"],"sourcesContent":["/* **************************************************\n * This file is auto-generated during the build process.\n * Any edits to this file will be overwritten.\n ****************************************************/\n\nexport default function EmscriptenWASM(WASMAudioDecoderCommon) {\n// include: shell_minimal.js\nvar Module = Module;\n\n// Override this function in a --pre-js file to get a signal for when\n// compilation is ready. In that callback, call the function run() to start\n// the program.\nfunction ready() {}\n\n// --pre-jses are emitted after the Module integration code, so that they can\n// refer to Module (if they choose; they can also define Module)\n// include: src/ogg-vorbis/src/emscripten-pre.js\nModule = {};\n\n// end include: src/ogg-vorbis/src/emscripten-pre.js\n// end include: shell_minimal.js\n// include: preamble_minimal.js\n/** @param {string|number=} what */ function abort(what) {\n throw what;\n}\n\nvar HEAP8, HEAP16, HEAP32, HEAPU8, HEAPU16, HEAPU32, HEAPF32, HEAPF64, HEAP64, HEAPU64, wasmMemory;\n\n// include: runtime_shared.js\n// include: runtime_stack_check.js\n// end include: runtime_stack_check.js\n// include: runtime_exceptions.js\n// end include: runtime_exceptions.js\n// include: runtime_debug.js\n// end include: runtime_debug.js\n// include: memoryprofiler.js\n// end include: memoryprofiler.js\nfunction updateMemoryViews() {\n var b = wasmMemory.buffer;\n HEAP8 = new Int8Array(b);\n HEAP16 = new Int16Array(b);\n HEAPU8 = new Uint8Array(b);\n HEAPU16 = new Uint16Array(b);\n HEAP32 = new Int32Array(b);\n HEAPU32 = new Uint32Array(b);\n HEAPF32 = new Float32Array(b);\n HEAPF64 = new Float64Array(b);\n HEAP64 = new BigInt64Array(b);\n HEAPU64 = new BigUint64Array(b);\n}\n\n// end include: runtime_shared.js\n// end include: preamble_minimal.js\n// Begin JS library code\n/** @noinline */ var base64Decode = b64 => {\n var b1, b2, i = 0, j = 0, bLength = b64.length;\n var output = new Uint8Array((bLength * 3 >> 2) - (b64[bLength - 2] == \"=\") - (b64[bLength - 1] == \"=\"));\n for (;i < bLength; i += 4, j += 3) {\n b1 = base64ReverseLookup[b64.charCodeAt(i + 1)];\n b2 = base64ReverseLookup[b64.charCodeAt(i + 2)];\n output[j] = base64ReverseLookup[b64.charCodeAt(i)] << 2 | b1 >> 4;\n output[j + 1] = b1 << 4 | b2 >> 2;\n output[j + 2] = b2 << 6 | base64ReverseLookup[b64.charCodeAt(i + 3)];\n }\n return output;\n};\n\nvar __abort_js = () => abort(\"\");\n\nvar __emscripten_runtime_keepalive_clear = () => {};\n\nvar timers = {};\n\nvar callUserCallback = func => func();\n\nvar _emscripten_get_now = () => performance.now();\n\nvar __setitimer_js = (which, timeout_ms) => {\n // First, clear any existing timer.\n if (timers[which]) {\n clearTimeout(timers[which].id);\n delete timers[which];\n }\n // A timeout of zero simply cancels the current timeout so we have nothing\n // more to do.\n if (!timeout_ms) return 0;\n var id = setTimeout(() => {\n delete timers[which];\n callUserCallback(() => __emscripten_timeout(which, _emscripten_get_now()));\n }, timeout_ms);\n timers[which] = {\n id,\n timeout_ms\n };\n return 0;\n};\n\nvar _emscripten_math_atan = Math.atan;\n\nvar _emscripten_math_cos = Math.cos;\n\nvar _emscripten_math_exp = Math.exp;\n\nvar _emscripten_math_log = Math.log;\n\nvar _emscripten_math_pow = Math.pow;\n\nvar _emscripten_math_sin = Math.sin;\n\nvar _emscripten_resize_heap = requestedSize => {\n var oldSize = HEAPU8.length;\n // With CAN_ADDRESS_2GB or MEMORY64, pointers are already unsigned.\n requestedSize >>>= 0;\n return false;\n};\n\nvar _proc_exit = code => {\n throw `exit(${code})`;\n};\n\n// Precreate a reverse lookup table from chars\n// \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\" back to\n// bytes to make decoding fast.\nfor (var base64ReverseLookup = new Uint8Array(123), i = 25; i >= 0; --i) {\n base64ReverseLookup[48 + i] = 52 + i;\n // '0-9'\n base64ReverseLookup[65 + i] = i;\n // 'A-Z'\n base64ReverseLookup[97 + i] = 26 + i;\n}\n\nbase64ReverseLookup[43] = 62;\n\n// '+'\nbase64ReverseLookup[47] = 63;\n\nvar wasmImports = {\n /** @export */ \"e\": __abort_js,\n /** @export */ \"d\": __emscripten_runtime_keepalive_clear,\n /** @export */ \"f\": __setitimer_js,\n /** @export */ \"b\": _emscripten_math_atan,\n /** @export */ \"a\": _emscripten_math_cos,\n /** @export */ \"i\": _emscripten_math_exp,\n /** @export */ \"h\": _emscripten_math_log,\n /** @export */ \"g\": _emscripten_math_pow,\n /** @export */ \"c\": _emscripten_math_sin,\n /** @export */ \"k\": _emscripten_resize_heap,\n /** @export */ \"j\": _proc_exit\n};\n\nfunction assignWasmExports(wasmExports) {\n _create_decoder = wasmExports[\"n\"];\n _malloc = wasmExports[\"o\"];\n _send_setup = wasmExports[\"p\"];\n _init_dsp = wasmExports[\"q\"];\n _decode_packets = wasmExports[\"r\"];\n _destroy_decoder = wasmExports[\"s\"];\n _free = wasmExports[\"t\"];\n __emscripten_timeout = wasmExports[\"v\"];\n}\n\nvar _create_decoder, _malloc, _send_setup, _init_dsp, _decode_packets, _destroy_decoder, _free, __emscripten_timeout;\n\n// include: postamble_minimal.js\n// === Auto-generated postamble setup entry stuff ===\nfunction initRuntime(wasmExports) {\n // No ATINITS hooks\n wasmExports[\"m\"]();\n}\n\n// Initialize wasm (asynchronous)\nif (!EmscriptenWASM.wasm) Object.defineProperty(EmscriptenWASM, \"wasm\", {get: () => String.raw`dynEncode012091253f87dì%nä= 4&\u0000\u001f¿nÝØäÂL\u000eÚªã9ÚØ[äº\\\f ¼¡³R=}L\u0012]Èÿ2 ÿù¶J1jj¡é,zäV|\u0019i¸Qk¹= \n¨¨\u0015%\u001cýv²\u0005\u0019±»oúâLa:ê\u001f±ÊäÌÓ.÷Øý×>àW>z¯°8¯ñ\\Ñós\u000b9\\§\u0007ôÊ@Ü (tÃø4° ¢7fqÓg²J\u0014è6\bx[zç®&4=} p.(°tÍÞã¾>÷CõË\u0012\"*k?¿~\f7~H\u00102ÛÜâ.ÏQä;\u00136{ÜãF\u000fÑá'DD\u0018¤±°HQ\u000e>MínÎÏÎöʵÑÓ
ÞÌP¼P¨Þ\u0013*\u0000X²E=M¦qíxMÃ\f±=MÌë4/<\u001b\u001fgNO/¢\t¢>\u0014a~Ï®ììììì0ìa笡ç\u0007ëOÓÇM\tQ9tùµyuéµµ\u001aÞÏ/±Óõò}E{òÓ\u0001J¹Û|·\fôfÒ c\u0016¬Wêaûÿ\u0005lʽp¹|)ÖEL¦\t}\u001a\u0002ypÕS\u0003ϹI]¢ºã\u001dæ°ÿo¶7ÛRq¾ÔÅEߨ]\u0015æ\u0003ËwÚ{ó\u0007çVwó\u001e1¾EØpàe\"Æùû¡Áª\u0001\u0016\u0019\f\u001a Ààð´LõÎxEÓ¢N¦
9ëùi&\u001a\tÒ§Ø!ÇFçS=MbäO?ß·\u001f縪7ùa}5\u0011ð\u0006ûÕtsUþ£KïgN¾\u0013)ø§\\V0uSIö:ÌU4ж¯´Õn9Ô\u0005\u0017èE£\u0016ZƼ{\u0002hµmÙ¾6Æ\u001dÑ+xñ´«þ¸=Mߤ·å®«\u0012ïÆGFÝ\u001c\u0014ì|H?ä\u0000E\"þ!9\u001f«Æïpæ'][¯ù·£W\u001e÷O§&#a\u001ex$qf=}ø ô b\u0019\u0017Ï\u0018×W÷L\u0019\u000f\u0019ôoÝWQ\u001eÕÓ)u\f÷½èV|¥Gà¨Ö¸\u001f@ê|\u000bÇK\u001e\u00115ò\tA·Â9CS2¸¼¿,\u0013ä\u001aÝ\fÑÝy!\u0014ÑR\u0007%ÆÝÎ0Âv§ \u0007qTcó±\u0010\u001chØÉã=}Z=}Ælüën¯ð\u0006(-°ÜwVÏï.th\u0016¥íS~SÏ\u0017»ZZÔZ\u0000\n3BÌÛ\u001c\u0004¬<éæO)ÎyÚ¯O*®uìÛ$öI¥Ý9ô\u0017ø³\\¤ò\u0002\u001f³Ù¹ÇP¸J×y@Ô\u000fyO\u0010\u0011Ç\u0007\u000fm\u0004ô½ü\u0017¾|S?2àú¤F?½ûoo3\u0017\u0011ô;<àáûÜ8ì²7ïë¨RäY¹\u000e|\u0016ÓºÌ\u0004F,Ð-¸*\\P!FJÒ8= o6HwLrú\u0004º\u001d¶\bÐÛ\\Ù\u000f\u0019¬o¢9\u0019Iq\u0018Ý.\bôf¶Î\u001dÈ{Ī×N|Mfs
¤\u000bÉÝàâ§*\u001c+ã§ô¯î¬7ç×§ä)!Z¨É,\u0006Äp~ý·wsSGóäsE\u0004\\ýïé§Ö:\u0017Ò'\bC\u0019\u0018ç(_X$\\¦½eÒ\u00128$\u000e\u0000XF|e\u0012í\u001fÙÓ¡¤Û<ØÞÛ¸9\u0001¿ðÃÎ#b\u001c~×\u0002 \u00044éîÿÏq\u000b\n\u0000ód|\u00070wU\b&®è·vh6\u001b¨{ÚçÚ1\u00038Ó(ÓY\\\b0¦\u0014= ç\u001eèí\u001fß)Ø=}\f[xü-v?N(Kkg\u00000}â\u0015Ú´ð¬ÕQNÍ¢\u0010u\u0007s\u0018ѳ=}.\tëg\u000e
û\u000f= Í\fMB\u0001p'²\u0007\u0018¨\u0007 x4è\u0003\u0014@9t\u001f§eݵ¾âð½ z?Z¹FH'̯¿<K,üµ<{\t¶Jãýv\u0016åàÆ\u001ce\u0004ù0Ð\"F¥ÃÒÞþÔÉvC\u0019zl}ðN£\tÍ\u001e^P%²¸FX»WÎê\u0005\u001dô¶
äÉJ^g\u000e×S\u0018Ãã.Ät*'ªG«ÒB<ÜÓ
¿ºp\\\u0006àuV\u0010¯£\u001f\u0015ÅݽáÞ ùß=}ÎÚ^\u000f\u001aÿí>¥!\u0000¨ â=M·?\u001a\u000b\u001b*/¤\"å)â\u000e·ÿ\u001fîÿ\u001fî*(%*2[½\"\u0013üríÔ4l½»a}¯CwpC\u000eÓèìGc-ã6®=M32k\u0004?Êg
!So-x>³G+ã@ò, ÁïáåN0þÙè.~È÷¡vTr¶Ã[üB±º\u0018»ávëw¹\u0012{p\u001bÜ\u0006º\u0005û\"Aæ\u0004\u0006±9Æ^¹³òï\u0003RIAy\u001e5GÂwÉf\u00154@Tù|qý7ðªwB\u0002L|Ôqv!ª°|]KiÐJVQ5\u000f¸åõ§\u0004å\"\u001fH¼0e¬<óBî\u001b\u0002ÚSÏ\u0007UìHPÙA+çÉ'\u0005se\u0011ÌNf°@ÈM,ð½\u0006egÖ¬x©û½2~\u0004«\u001eÒ1\u0015;Ö«
¯°4&9\u00190èE»Ó׺çʧ\u0013J<Æ\u001b¿&~Nu¼ãÙµ¢.UÇä(qQ\u001fô^ö·%!É\nw¬= Î\u000eôª«\u0006
Ùת
JIS;õa rx×£.6\u0004¤°>5²Åà,õ°\u0012°h6ûUp©²v#}%é= R¢hõ@ëQiJÙ\\Ûp»©[vsiÙLE \u000eUG*sGÄ%V¸\u0016§;º_]cØp#¡:\u0002oZ{ãS\u001f5I¥]ÓaÎ\u001bg+n×ýÿTxy]²ö°k¦kêju¼xÐTá©#h>Ù]u\\EA+§
í¤u¦üØlQPdëNòzyÞ¼XÐ]\bÝøÝg¸BI¿BÕð_Ël¶Cuyºr|<¾¨Támo5\u0018êÿú>Æ[ã±G¨²)ü&áòüåBFou!\u001fÍí.jÖìß½\u001a8¥YëìáÈÁi)qÀ:ÎüÐÖ¤Gͳô>°ú¯øâ?R£k~&ÑãÞ~A¢;Ð'\fàÆU\u001aÀ\u0001»L×)-!ÿkýí\u0014Ù\n§Û\\{¤\u0018ólW^næzk?G~?_5uÝñ7-ß«6YPðGßÚù\\Êê -\u0015ûp¥èÓtM\u0000×hKȯÒBAê\"ïx×HÍ0Ôc\u001cè+\bè\u001bçÛÅf (§¢õ®%K£7éÞQ'MxãxÐúÑ
\u00102!\u000f8_6̶Ì6Ìrûù\u0001\u001dS¥Z\u0015\u001d\u0005\u001dó\u0001AIüå\u001d6\u000f¿jÿ_°(\u001cÿä9©C\u001e\bCÄ!bq5Öô×x{ÍbÆÚmÒ@\u0003«µ××~ÒD;*\u0010ü ùe\u0001ÀÞ·xv¾;¤\u00147\u0015¾[W\\ýüb\u0011@'\u0010qãµÙâÉE¾}}tq-g=}Ü\u0013s¢5Ó=}$ħ£Ó\u001f~SFÎgÑ\u0012nN>1§/¥¸G5àM8#Ò\u0017;2¢/K%xVÓ(X\u000bH>µ¬ü;_j~Æw\u001b<¾ô*»ô= fA\u0018ËbM¼iÀI\fIp'c*:oY¡V\u0011Ö3ûIdû®4ÚûýÆð}û\u000eN¥\u000eû\u0017I\u0014\n\u0017¥ÎÛK*]Ø=M>t\b\u001d×ý\u001b³MwEè®\"Û4]]ÓgØ×EÈ.pN°¡\f»¤ç/I.ÿ+6\u001d\u000br@«Âz@§Bz@¯Â\u0019\bIê-tíÜ«°·Gf\u001c\u001föjÏ\u0004Õì:gÕ\u0013UÖ=}÷¦|§EõÌ$a*¸s\u0016¬´\u001e«£¯\u0001JÞàãË\u001bt$ GSÚ³Ë1¯©&|±c!\\å\u0010\u0005vçϷѸ\u0012ã\u0016ßñ]á¸?ùää%\u00196´= #e¬Â;IÚ¡\u0002õckCÀò*\\ï0À\u0012\u0015¿<>ªÈåJA'ï\u0004´¾M\u001dE.@OüÐ0e\u0016\u0001x÷#2ÒùúµÇ½>o{«ó= \u001cÔï;ǽ¶óÐ\u0002\u0010/\u0004ÔÍ\u0005ܤ±¢Ê
w>\u0011ÃâС\u0003¯®Üa£¹6Vý \u000bváÂhôàÍ8D!Æ!ÆI;¢áÜ!oÑÙ
OÏKôò\u0002=}w\u0000<0rT= 5\bJ_±3×Ì;ô\u0012\u001eYÐ<aÞê¹¾7ßz\\˼\u000eÛÛ@>Â{å%K¯\u0001º'Ê\u0005mÚòÁ\u0015jRÒ×úw\b\u0002@'\u000b(\t=}QU«ÐÁÑ,/?\u0019úY\u0014Ey\u0018ºQì¬ {ÇLÕæõNáð#f>_ò#Îv]\u0000\u001a/øÏ¾TUà\u001e/øÀA\u0000Ô'\fw]Ã]Ww]Ã]\u0000\u001a\u001cX÷Þn\u001bð·T\u0002bAåÉ\t\u0016r¨4\u0002?t²>1Ç[áüx \f$-ÒÂMÄ\u001f
§\u001e·µ\u001ewsú>üÂ&³÷.dgA¦h²*G×\b\töcG×µF5\u0012¸Êqª$ñ?¦vÿ<ã;ÿsÒiÇXòku\u0003®vUòõcu\u0003æÊ¦á«\u0004þ¸Í\nÑÊuã\u0000E\"þ!\u001f6Ø Êæ}}onË:W½¶\u001a\u000e«ÊFuÃÝUS-1\u0002ÀÕHòzµö?ov»®¦\u0012\nCyÈçaÆ\npÛ¢&\u0014{µ¨«±1EXÆÂ\u0017u\u0001\u0007.7\u0001\u0001÷²ÛJÊÂy[å²µ»\u001dbL?·×øèìCp:\u0014æÕé§·rUè\u0007és\u0013\u0004Ü[o²ÛòDòDÞ]ªä#çN;Ïð\u000e)â´\u0000*z\u001b8\f0Ú\u0013èóª1çE¯´Rì,D4H(øË)\u0014g\u0007p=Mý«û»=Mþt8º-Hx\u001eH}Æ3Rt\u001c?ïɤC\n§ßìéõmõ,;æðk=M6ЦuS\u0007Ý^è´®Ù6=}æ\u0019óO\u0007«>\nyÒîÐ7a'ûLUöø>ò\u0012\u000f \u0000-6Y(¬ÀM\u001f\u001a\u0015Z¾ZH\u001cpu°c«à±[\u0014t\u0011*Ç*jwÇÍ$Áíqx©SwÑËR¥é®[XJÓ8=}üµn\u0003t9ÚÏ3z½¼¢[Q2Þ\u001b¸/=MP\u0018§Y\u0002\u000e&y\b=}ÚÛw\u0017ëý¡àߥۧÃ\u000eþòýÁÝÈìûê(±¹\u00184'ïÌ:Ûùk\u001f=}eªãä\t\u0011ÒCKA¤Æy×nvȧmÿ;=M]\u0010\u0013¿ÕÕ\u001cj\u0007Ôª\tsF>úÔ©áÄ:cÀÆ<$|ê'!×Sb\u0015¢V¿oÇåGð\u0010¢UÊ\u0016\tu¤ZJýæÔÿÿ\u0016\t2çì¯h£f¾Q\u0019Zã\u001dÁ\u000b\t®\tìÇ'ÎÅ[¸¨{?¢ÉhS5oU½c¢ÈÂÜ»JZmUí\u001a\\áùµV6Bè\u001bte
~Ã\u0011w÷0Õà®\u0018ísÆk\u0012,{ý¦\fûiK+x\u0011\u0007vÅå
ºñ\t\u0004a[Sé»Û\tNõòý¬ßà¨= 7på^ÿÃW\u001a,¿\u0017*\u0013M½áR±Ì³FcË<\u0007üiÏ2|ö\u0016^\u0012vKÏHò¹uYbk¿mZ¡O^ÿç\u001c©~ïj°È\b7\b\t\u001cl©¨ç_ó¼'½ßªåÏn\u000b\\ O,wòi,\u0017Ū-\u0016\u0003¿?ð}òÁá\u0010=MÍ®ÿ²EÍñÂ}¨³\u001aô-ýƳúù56MÃ6\u001aÓJz=}p³û\u0013ê\u001b9õ\u0012àå«TM×Ve>G~Ù»Vü²öHByf<õ©\u000b+QWF+.ßAGÔ¦ÏèÚ½\u00153\u0013âÏ\u0011YÀ¿T\u0018¢¸6ÌéÉÐ\u001c*\u000f¸ÖªÏrÍ\u0007ëá=}6/U´Ã×Z\u0019þðóW.½ÞQ¼¾ÆqÅ\f½o\u000eâäB-ÓUJ¬má8øªK.y±>.Q¡a0Þ#!,¥B\u0012Þ¼S?Ìr^¿_Ö.¹\bó{=}/äÈAt\u0007}Æè̼4¡\u001bÔîgl]ÌUEý{}|DÏä:°-Ñÿ\u0016°=}\u001aàØ\u0000éÕ}Êñøðº~¹¯4Yqm\u0011¹]\u0006\u0015!ºÿ=Mõ« :\u000eN\u0001l\"SÇ\u0002ps¸Gåȧá+\u000f'M¿ÓîÁ.î¤=}mÅ8)\u001f¶rrHá\"ÈøÂìËøÍí4ô7\u00012bbߺq\u0001¿2ô=}A5.\u001eYV¬ÑÚã«Þ[F\n)ºh\u0006XûÇÓ>È\u0013?p¤ðoUÊ\u0006Ó(\u0013³FpÊi¡Ð}SÚ~E \u0012!|ðí,Ç9½Ãë¸Üì!¤\u0004ÓÃX%D\u0005Bãu&dÔËôg¥\u0011á¾\u0002l¿AÉ\u0004\u0016)\u001cÁ±ÑßÈßý¹ód;|¤\u0011Z»#ñ\u0006\u0015\u0007scµ|¡
ÝOO\u0011e^\u0005ãÂxÝ\bÍ]¯\u001còbÏ£÷ð4½ïÖ³;û/ºsñ\u0014Æð\u0013FØIn²q\u001d¢©*× \u0007kdO+÷å\u0005ÒiÉݱîBr]\u0010LÜ|8~7vts÷\u00049l|aë»\u0003EânÓ´GGò$ÍR,<e0i¿ª\n±¾
àsÓZJ¨\u0003\u0018?\u0003&%Æ~-ǵ\u000fªö±;ól\"=MLgÿt#\nü2 \u0011<Àn¬É\u001fäÍôÿ®É1SÄà= \u0016ôñZ¥-@z;¯üà¹ìJ\u001bÍ\u001b=}\fÊSe\u0000BÞ¯\u0019´~¢\u0002s\fmÿ-\u001c¨CozÀ/;\u0019\u0013Çël&uñZ\u0017ÖPV«¤¼´À\u001cïYÒ~\u001e=}Drâg\u0012\u000eC\t§ý\u000bçr\u0016\u001a\u0005Æ7âÃ$\u0005ÿ¤Ý~ÞÝo@°³\u001b\u000fÙ\u0005s\u000e;\u0003ozûÀ~R§ú\"¶ü/\u001dôcæ<°^Ôã/éo\u0015w\u001f×ër¦_UgûÀøäâkHÈ{\b&ÏMëqÀYÈLÁÊG\u000ebÙé:·\u001c\u0010q]\u001fä\\PÔëÒ¤a\u0003£1è]á
^Y\u0012[Sw¶å²¹gÒ0ód\b^ÈT\u001f.WÄÜ[\u0012Õ\u0004\u000b\u001fÙ*Hi®\u0004z¹µu}ýuý}#ú=}\u0004ÇÌRSûçMø=}¹¹>\u001b±ÿì¨áØ[R?ÿ^¦ñê\u0014\u0018¾xZRS^PSSSç\u001f1ù}ÝZá4fffdf\u001c¨\fÕËw&eÜ$hä'{»\u000fMoöyg8¹ê\u0018¶@ìÛª0\u0002-ó¯:¹ e{%<ÎÖ\u0001}Þ¤vª6¡Àõ÷Gh\u00058= \u0005FºKVñ.ºHÅ)<Ñ= xs¥BE;;áF¡\u000f·!¡-ÀYÔå^Ö'l̯\u0006ßûç¥k\u001bøÞ?[ë>\" -9±/Ê\u0017\u0003ÛGÇ\t6OY4VÕ\u000f»º[öBÿ:B¡WÍ&\u0011½ÇÎç\u000b»Î= \u00030yæ§§5à\u001cÁFiAͲ®Ê\u001e\u0013\\¿<\u0005\u000eî!xÞ³E =M¬U/þssæ¶µ·OÌ0§G\u001b\u0019ûúñ\u0019ò\u0019¯{^\u0014/~\u001dä׫ÊB\u000b= ;4¤þû^\u0004Öï\u001c÷L÷ï_ñíx<õ;\u0014ó5ËÇ~¾V+\u0002\u0017ä
l¼Ñ°\u0006\u0019«\u001dÔí¾)Âf\u0017żo¼Ö\u001eùW\u0002a1køìFvûëûR\u0015Qø]q\u0000| ï0g
ºúîy\u000f\b[\"FÐþ7\u001e^ÒRµ\u000fÚèæ\u0013øÔyÚ\u0017\n«ãi Þ@
U¾¸»* è#ò-ì¶\u0004HÛé¢ùL;}·O7
7ÅsLæ\u0001þý\u001b8¿Óùñ£}.= \t<¾=M£ðQ\u001aKTà^O|¸üggH\u0000«0³i£im¼_\u00162ÿö\u001fúÕ¨L\u0003aO+&]L¤\u001fÞ+,k Þ¶Ñ~T¤ÂH\u0010ì Êè\u0004è\u0016ÕÀíÒ³MÜô~\u000eJ<¤0Yð¢´\u0014.\"»âèÄxqe%oÝyå\u0002æâ¹25U\u001cÐ/\u0007Þe.×´Øì_\u001cæ¯_zRÏíÑ\u0010@ÿôL\u0013c¥Íðy\u0001@YΦ}µZ:ÑÂgZÒÒ(©¢9\fß\tY«¦:vÙëÎZJâÀVsOt\u001e\u0007UÖ Ò¬¹\u00111ûÚG´\u0015O\u0007ÃóG\u0004©)niÇí\nÔ}½3:.k]ý²ÂB=M~\t\u000fùÚYp95½\u0014q\u0005ý\u000fãë ÐÞ/¡(ä'§\u0001úºE/ê«Ì9ý%Ú!<ÏJP&|[,gzű¡\\o0\u0001\bÔhûóþ¶[KêÍ\u0010ð= TjÃV\u0006ñ¸D¼Ð_Ò\nî\u001d£¥0Ø_1dPðt ýtZ¾r\fù\u0001 à\u001cJf^;Ô2éÐ=}è\u0004\u001d¤B~D\u0006ñ7ûÓÁ9³ýbA6ZØ´èÃg½ñ\u0018óø\u0010.:~ï \u0010]bªZì¿Ö²2QÄßo¥-¼Öá5uu/u³\fòD;g\u0015jÀ\u001c\u001fê\u000f\u0015ÃÇ|eÁ9¬u$*ÐÁ'ÓDelÀëäì¥Ò¤Z\u0011í6\u000fOÂ@âF0-J÷¤=}_\u0010Õ߬Òl\u001aÚM\u0004½Çôó~ð76DEÖ'ds\u0005´ÙïÝßøaÊb\u0005Ñ «^Í\u0007}&àØå?¾ÍF\\\u00072HD5òèÁÆ\u0016dËdÈ·6ÙPÑ\u0007|¬Ôq\u0006\u0015*Ê>0¸Cì(ÛXYV
²ý\fIpÑí\u0005M\u0004\tkÖů}Í\u000fóôc7ÅbrñÐeQXæ©\u0000Æ\u0004¯ü_Û»\u001a\u0011\u0012ÂÝ\u001aMþ©.ckg\u0019 fq ôo@qRL°ÅYÎÈ»d'<±+\b±\u0002î,Z-GG»\u0005ø$âG\u0006vÇû\tµA~Y\u001d\u001aF5\"§)ðfßÐé¸oJRRÅ¿ôXÝaú.QMw1 1þøiSo¾®È\u001f²¸hÌ/Î })f\u0001\u001bBr.G1\u001c£º×cÎ𥰹&WÈüAno#g Ãà\u0002L\u0006i²¥8ó=}dä¥$\u0004\u001bÅ(³0h¢0OjfÀr¡6\b*#àæ\"ãûQ?ñ±«²Xóä*hïx=}ÎÞ¬výÞV÷{u²cöê¡h¯QÏY\u0000aêL\u001b$¦ûÈçIGßþ\u001d\u0016EýWö\u001d\u0004ºý\u001bëÛßý\u000e×Ïði\u0017 G´ì=M¦ßÁý'\u000bþºeâNÖ\u00127Ï/Ñ\u001au·6r\u0015ÛF¾¾aUÌÓiÜúÒ]¶éUY*= g\u0010[ 2-_\tc:ðY)\u001f\n¼\u00039îK¨£\u00038\u0019oSå¶K4U>+¯Ãî[H\\wâRVê/÷~Ð\u0011nm¨s8CÏö\u001a©Ø%Àaª\u0013S\u0006]ý\u0010¼§ r_¸k\u001c\nªµfÄéÒQæ2¹Ão¹&3Ç\u0016¢\u0000u \u0007\u001ac5ë\u00046}Í:B£´1uièÑfa&]ävCOx·\u0016\"³LTè.I.ÊÍzB!:\bFÏëxS´Q{\u000bÊõZ7Uh8yÝfDÎ\tdÔX3QÂ\u0003±\t½=MnØ\fnÅc\b\"\u000f@;f?ª¬nû0\u0014Lp´h,¸#M\u001eà-\u001a>+C= Ê¡±^Ù= ®Â\u0000¬QôÅ\u0014ùî\nö\u0006qòbß=}±ÕAË/8RzT³
ÃÌ\u0005/_îMvÛ«;7S\tìN4\nìo7è_¤\u0004ÀÜñ\u0003Ü©è\u0005^U±A\u0017{Éö\u0000ìXtnÝÇvz\n ½½Ùo¨ça\u001dúâ?EHÄ»ë\"±cÀÁEB]acgdck\nËÁEvÇÚM:¸2\u0016¼\"\u0016ûc³Ï1mA]ø[à\u0001= Ý|«oÒ&¡® ¡K$ÚiPÚÛaº!ÊI#?3\u000bÄLo\u0004\u000ex\u000eJò¹<$$»¢\u0006¸h.ÕY¡g \u001d\u0004Û30× ¶~ÃtéR0 ni6ôe\u0010ì\u0014az(¸9°Ù=}ocî#üR{\u0002¶ù*×<Ç\u0016\\Èsa>#¿]¤(R F×\u001bX#¢¯mVRòºÃ\u0002 0ã51ïíDÅVst\u000b°YÎ=}ø\f´·ÇF \u001aØÕÓ\u001f¡ð\u0019\u0013(B\nY\u001bS= '0#×KB<r\u0014ÔôþMz8ï³tíYS\\¿©æ s\u001a¢3~ÏcÉÜ[öÝ-y\u001d£îu(´{©ueØÝª\tg\u0004×\u000e\f»c*5죡Ð>¢\u001a9®ïîêzr{½¢j|W¯Cú²\"Æ\u001b¼¦Xç\u0003t,òYCIVµ\u0012X#\u0005¥_æ)3è \"9ûã)e\u0007
0߸Ûͤ³.¥>å*Á\u0012p\u0014epQkîtÎÚ Å¶ïoÔ¸>³5\u00105\u0015Î= Á¿rà\u0004\u00013S\\ÌÒªs0 i\u001fæméQú\u000eR|ë²FAè\tÁç-ÚýFå3$qÏ\u00023+wØ<üªU\u001aþvü\u0013£b)Ný¯j\u000b;\u000e0õ}áª[6k\t\u0003WÇ\u0011íH®\u0002\t\u001b\u0003¨{2\u0000Jþ!y+(\u001d-ò\u000eÉýÎl SÆ_¼òu8¼z¸Rîùq_fGHî?{vTgeÒU<S^£(îl=MéáDÛ¶ùM·Ä\u00177^õÿ\nØ£ $\u0004\\ \u001aö\u001dv=M¦px6+ã*àÀìî{ølÊEy9² hϳ!ÕÑjú¸ò5pG£¸fëp \u001d\u0019N_::û\\RQ[â\b£\u0015\u0002\u0001\u001f\u0011®M¿L#8¢\u0011ÑPk5]ý«\u0017¢zg\u0010»g\u001eü\u000båÐ\u0015\u0012Òöí<ô\u000bâ~Â\u0015ÔîtýXÙñµE®\u000f\f:¼VBÍ\u0018¼\u000bçtnHç|Ï0[óoûM>h}ìA\u001cö
\"\u0003:Vk=M\u0007©l\\\u0017äÓröQR}8qeV\u0002<J\"ÈFäíûI_Óã«Dûëôz\u0006ïåJNHeÛpµ
×8æÆP\u0005I¦\u001eû-t£sp£i¼äs\u0017ç)ç%0eq#ôF\u0010ør\\ÃÁ\u0001s×C\u0013P÷ú\u001c½\u001a\u0018ÿqH²\u000f}EéÏt\u0012\u001bj\u001dTi.Òþ¡=M%ä¸ÕÙe½_ëÝ;+ÏÁ9ó\u001a+ä·9:×´irxb\u001a@åÄä*Ý\u000b\u001b\n²íCK\u0010Ý»@;ö4Päü\nc\u000f\fãJ1«õãLPµêYàn\u001112ȯ\u0016ÙI
r+= ¶/g\u0012ýZ³#³}~å0\u001a´ú¾dÈwû{\u000bèÒYuvëNôºô[í&öõ¼[9Ø6\n\u0016>ßNçRÆ\u0011Ûeíu\u0013?ìý\fhWõM^8\b<ã*\u0005lkê@\u0010uú.FzFë=M-ûhêl\u0016\u0001T±ÏÌÚ®Eã¾d¹P±\u0014¨à<\u001cÛÉ\u0011Ê6åÉì\u0001Î\u00177Qv¬ÎÊýì$ºÑzØ'¨mÐ\u001b\u0004ØÒº´ZM°o9=}óÃQ·»\u0011¾LW·:+¯©p §àÕ\u0003<Ïí\u00112gþá1é9|Rówàut\u000eH\u0019ý8ºï@¬^¢W¶©ê\t]ð½6Ï\u0005Oô\u001b¼<±GãQ~V§xâü1éUM&CÞ\u001eÍ|\u0014A<^ES¸34\n\u0010Z!¡ÚÜa7Î0¤q1çÖ'©\u0001~É Ù\u0002Wüã)¼ðÁê1
¡é)&n¬'eÚ!6¹¾\u001bP;<\u0005dm-T©\u001dÂ\u001eñPÿoà¿§Úì4¢Î³¬\u001b¬iTÑ9ËÀêIqþdiÉNì=MWH&¨rÅ«q,ì9C6/¤t«ô= \u001aªK5Â#f¿%Î)\u0005¦k Aù4jF\u0003v7üÃ*-Ð\\\u0003éÌ:IJ21 .¨½ü,= åÔ3\u0011V\u0014I¯¾¸þ¼¥\u0014ÂÆÏç^g°(QÿiÕ¬ª|ï\nÊáu¹ÎÖ¥UUÁYE¸ã²öÌÐm®~wø%þ\u0006\u0018zêÑ5\\5oFn$»9³mi\u00176zj1sé\u0003Gd¯É\u0014\u0006Ø\u000b\u0012å2(0¬>nE¥âVÇú°\u0010Üé\u001dÕî\u0005£]þ´Ý\u0012s×\u00167ã\u0005û<Þë§¶§V\u000b\"íÙC'\u0003a\u000eÓX\u0000K£¯üYüúl^~¦¡Rû\u0006!\u001c=MÜPa´\u001a
_Cë.\u001b0£\\\u001a\u0004}À±QP9\u0010\u0002wo\u001aÙæQù\u0002§jK\u0011õ û@É+g\u0005\u0013I4
wÖü\u0016.Û\f_é4GÆ·#ÛxEh\u00056;L]¥2¥á5üP4õu\u0005Å\t>çò-ç»ë\fé;]÷ÑÑ\u001cY¶\tv\u0000
\u0018P\u0002ö\u0014%!̧\u001d8÷PÛ\u0015\u001d'rö§ÙßÏËí»kæ@æ{¨ËC4¬\u001dP\u001d¶ \u000bóÚÈsåÍý£Îx\u0016\u000e)ÜØNóÐ3õÜMüB¡Åø×½»#»Ã-á;Ì'Æz{ãMò\u0004Æ0в>v\u001f©Ø¯³û\u0005#iàBé]á¹F{srPZá:óöCܱÀÃ\u0007Ê\u0007õ\u0003p\u0000^kñþ\u0017\u0019v1_Lç9νdض+u¥\fæÌ·ól~«Ù\u0013îûµ\u001d\fÕÔ\u0016ebyÞ«88\u001c0\u0012L\u001e²\u00165ìæôvZÉQ¦\u0010\u0007HV/ï\u0014F{8M*Áý¶ºÂØO~ü3|Ø\u000ex\u0007¨>¹
çûÖú;ê$hÌz~ç1Hún41eÆOX\u0002Ø&É¡:h'¢yÓSvðxå\u0011Ê:µ\u001cÆ-Ð)ì_ä;k@%\"w¨s\nËØ\u001aJ\u0003Â\u001e\u0007V+á~àé4È\u0012'QØÇÝ\u0006ø\u0018Ä|^\tÇ\u0012)\"¥0ǤÐñ\u0004 kÂ\u0002e\\\u0016\u0001\u00000¤\u0002|>ÿI÷äÒÝýÔ]¶;L\u000b\tqìÅR¥-bE]ÂrÊý#8n°»ØÑGø,RmâAê_Ãpá%/BU#\u0012tÎq>ò*öú(Â$âeò|=M)\u0007!\u001aÐ'¼¹¼R
Ð\u0012zsÑx\nß+.¼\b¢7â%²\u001f0ÿPàiÝPñ\u001d¸MÏå:Lå
-ügß=MÅ#MÚ+üfmi®= µ¬³ñ}\u0000$¨9<og\"Ø[x«Æ\u0004\u0014¯+_Ð N׿jV¦\u000f¥\u0007#Dw$¢ø\"Â\u0017K**\u001d¨N]EB®°Ëß\u0014Sâ^\u001dí\u0004%Í(æé¸Þö\u001ag\u0014Ý¢´Q{Ý»b§Õ\u001d×\u0000±±hÙ\u001f^6«GàýQÃe]\u0016\u001ctÉ\u000f¡Q¯¡ñ⸸\u001da\u0002·12À I¼Æ÷nZQ:bùh<c£5yÞ§è\u000f~xWÀÛý$õAXÁÓ4\u0004KóÝ\u001b×\u0013\u0014¼\u0005µ@ߺøz¶Ñ1s7=MÇ5ö¹k±R%\u0013×¶Hâð/\n+Å»ºDó(\u001d=Mj$\u0012×JD\u0005\t\u001fò¡Æÿ¼\"@ºqJº&ÏþIÑKÍPçüzDjIö\n¼ììoìì¯íì÷\u0006;#¶º8l\b¾k#:âõØ\u0001÷\u001b¢ ü\u0001_WNì¹\u0016tjÏuÐÆ>I¿\u0013y \u0011Hø@u¬BÄÃ5\u0011Ûy:\u0003LU&\u000fùð\u0006£\u0004Rn\u0004\b̵5\u0011ZGù<§h¿\u0011ËhÙâ²zí¾¸\u0012?J\u0005\b\u0011àçªIx6ì\u0012ÚËìV£áø¡h²'ºéÞXQÍÐSÝdÖ8ÙßM9\u000bS}À4To0ömeÎ\u001b¦\\ܳtQÖç'Ñ\"Á©là¿\u0007ö&.Ó\u0011Úçï±í¥£ds¿ý= ìZÔOäþr;Z©êÜÔ\u0003Ðó>B:½î-t®«d¶LÓ¨$Q\u0014èÔDÏ:!ì Ûq*sª4x\u0004ã´®X&(\\À¾ÊØXA¸¨Åe2PB\u001e
*S{éÔce YÆB\u0000º©¦lÍX;O²:À\u001cd¿fQCnMË-ÂÂðǣﶡSÚÁdC,\u0015KÂÍõÞ=}=}ß 2y3R¤Ö3=}c\u0004Ð'Z®¦}±)\\(\u0013\u001eYàP8?ÈÚÂÔº\u0001Ç\u0011¶ïi\u000fXEßÊè= êèÅDÐ&sÙ¦R÷_{\u0006\u0005Ù±4Ë2\u0000\tÆzãT!gU¯CÀ@\b¼û7\"Ìf\u000bÆúX«\u0015à-öRÄ\u0000êP$#¹\u0014oü\u0011³ãq¿«í³= sü§{ÿ\u0012«·=}ßÍ \u0013q?\u0015¡ÏÙ¨½Ãç×\u001eå?\u001bgÆ\u001b\u0011\u001eôÝ\u0006\u0002i,×¾\u000e\u0007\u001cÖ³G¾»= ÙM\u0002\u00079jA¿¬R¶Æ'\u0010s\u001f\u000bÖ\u0003æe4æ+6ª\u0005ÀUùx\u000bGÂ+Ybç\u0005ÅÉM\"äéÁZ]&\u0006ý¡9\u000få(¡nn¶1Í^\b¡<ÞÍeæ:W\u0002æéÓ#4Òªz\u0002BËÿ:°5G¬ÛÂ\u0015Ò(âÄGÿö*ë¶.ï\\\u0001¶l\u0006^Iì°ÔüZÖKXSý¨'\u001d\tM¾b]±>0lùX(^^\u0001¼òçHÂS\u0012\u0011îÃçàó\u0000+!mû¤\u0010Âp= w¢·nHµÔHÅ
p\u001cÈX\u0003w]©5\"1\u0012ü>\u0012\n±XZ^Î9â¦\u0003\u0003gþ\u0016=}oäíçY÷Wé[~Ñ;=Mã\u0011ª¶&$óÅßah\nÂãt\bÛókÿ^Û7z¶#X@ùrÏ8F\u001e\u000eG\"5ÄÐÄ~á\u0012UÒ8ÌËÌe\u00193Îñ\u0011A´º\u0004Ì\u0001\u0003=M¸óÆ~2Î,ô®dmÖ=}»u¸Æw\u0010:á!@
-\b\u0000¾ *ï\u000f\u001br±F¿/Í;öMÅÂ1¨:4>&YÏ= ¬]\u0005ÜèÁ\u0004/4&øö0\u0017aMÞjR»5bãXq=}A%è9= i©\u0016¸¡l¥nô@\u000eÃOPz»wÓÝlX\n:ÎÛÝ\u0002(.Tɬ|©Î¾²ð¬ð\u0015Éç\u0002\u0004iå_*&F×[\toô8B¦Brþ=M¼-\u0003ò»ËÍF?\u000b<@üønÍ|ãxÔr6hÚpÌöç#5íl\u001d÷.à@]ð\u0011{¹ø÷ì<Î<\u000f\u0002ÂuwNLO\"_u\u00047°Ïa ÿ\\Ìr\u000bîÔdð\u0004ó\u0006¶§Ô67¤p£\"ªCËu@ïfcOò\u001c¯x¸3\t²#lf1}U¬q±ýx¾\u0001jõ\u0005×»ó±ñ\tÀR\u001d³.ÙýåÐéI\u000e\u0012cÎÿ;\u0019F? ÛÝkØýóÎóø6¸'á\u0015û=}t8\u001cÔ]&ã\u0001°¿|\u0013%\u001eBÆ<þ·Î\u0014\u0018Ü«ëÍ>YUÐgæE¡ã(Á
\n\u000b8ÔXÀvÏʨ¿6bnµ¤GÔÁ¹§\\)é\u0003«\u001c\u001d®~î¿w\"Þñ£à/\u0010o\u001b¯ëO\bïr(ÿ\n\u001aõOá4\u0016¥àyáz¼}·æÌ²ìB#Ùø }\u0005
\fJÏìN\\]\u0016=}Î\u001fnü4VáaÉlIA\tÍ<\u001a\u0019â:^&q\u001b/nõ×n5\u0002;=}Ù,ìâ|0Bõ=}l\u0007;Á¶®äÓ=}a&¼½ó
ß@ÂU¨¯ÜüHÝØ¯Cþ6ý\u000ejÒX_16¿X]\u001f~Y\u001f~;\f×*½ÿÊí²2\n=MQ\u0000·ämòjyÂbá]Ü\fÍl#\fà(\u0014Kð5ÅôIJßqE|sª\u0010\u0010\u0011±×ÿe¼SÐo\u0006^[ØÞôX\u001bYá4ô@1³¢[#ïQ½,C\u0004\u0001è\u0012oJ\t9Û\u000b\u001e«ÐKvnC&Â\b0\u0018 »¼°SäcÑ07 »4NòÚhr\u0006/\u0012#ÉR\u001feÊø?°Oíÿójà!c³hziÕ§nËGY³ÿòò,8ä¹àø¸\b\f¡\u001f\u001aµ\u001f¨X\u0012[|.\u0004ôóv3<÷\u0004£\u0012Û1²\u0005a<\u000e>G¦\b»
\u0017=Mlf\u0002*-¨>9C1TQÂñ¬ì(\u000e*ø×\u0013d²¬p\u0015\u0019\t?n=}\u001eê{ÕÊd\\ø\\*·×Ré\u0017ÕR_Y>7Û!èc.\u0011¢V;$|òè¯+/UcMX\u0004?\u0000é9ÀÌéZ\u000bm&
,ôvõÓé¶ZÍ<V\u0018Óü°\tTi{êC§)ÐC\u0015U·RsV$gÖ¦îÁ ÖPö4fÃÑ\u0006>פkc1\u0013W\u0007\\åÅ$Çp,%j1âÂ>¦¹Ð¨Xþùï\u001aäRÜJ¿o\f{F\u0019úй\u0011ÝÚ³ó£ëî¸Q\u000f\u001c\u0004E@mj6¹e¢Ñír»{Sg½\u0018ÍRâl¦í\"C÷Ö]§@¸±ë:\u0004Â(\u0013\fíQó9È«Ëîqw±º{i\"\u0019Á\u001djêévVÏ¿KÐ÷±ñ´ìp¦o.\u001cè<wÕ\u0002\u0003ʾØ/i\u0011ºdr2S£ú~&Oãè.¹\nx*q\u0019T·gÀúÛ\u001fx¢\u001d/Ã}ÜYñ-XlEìøö\u0004t¢Ù\u000f6À\b\u0000ùG\u0016\n;\u0013%eU\u001e\tàQ-ðÁÆô+\u000bwcq÷æÍ\u0019¸S\u0015©l¹¾\u0011!Û¬O ISüu\u00159=MÊ\u0006-\t!²\u0015;\fÅUº¿v¶å\u0015±ØÆá\u0006¾\u0012 \u0004@ë]\u0005Lk\u0002e1³,#o¸\u0000òÄéÎ\u001e¾$ê¯3eI \u001b\bNö+ã\u001fs\u0004QøÙöá9¬Çì\u001e<= \t!#\\
]ôÅvÉplñEÚt^ÍU\u0011MA\u001d\u0000ϼÆüÓú}Sú\"\u000f,Ú}Î>P=M¡nOcùÀÑþ\u001dQ{¹ËÂM{pp\u0006\u0001Ý5o;\u0017Úþ¨Wå7°S'1Ê= \u0005Eºg\"¦^H m?P¾ æcà à°!£!f fT(Ø\b#ö%P\u0016!»3à\u001bc= ic \u0017 ðü3p\u001a £\"Øä¨3ðE= \"\u0018(\u0018\tÍè±Sàç\u0004g>W 9μ\u001d5'¹ñ3\u0018!©\u001fݬkD«\u0007êíS\u000fãEèí«òªý+\bLo~EhÿÙ%á¸ÞÓ®©\u000fÆPq\u000e²\u0017@¨Ø\u0017@ù£\u001cu/§>\u0004®\\è¹'ÙÞ'\u0019ë>\u0004ϰc\u0010LX«züèCõNÃöq«O\u0019ëÞ\u0004\u0001k^Á\u001aÞO}a=}¼e\u0015aþ²ï.5\u0001pf°²/²Ú±\u0006Ë=}\u001blZOÁÐÊ\u001eSy5xLQ\u0010SS\u0013Owø¹¹Aìì¸;Ô\u0016Z\u0001\u001b$O0\\\u00136kÃÎrÉÅ\u001dÆlØ2\u0012²_(z¤&ìL¥â\u0018ð¼[¬ºIPN¬¸\u0017/3ö¸4=}s\u0016¦Sgù0ÆíÛàÆ¹(â¬Ôÿ²Í\u000fÒ
ÁOøVSä®PþWì»9wx^Ô\u0007x<Ô¥KL¹ihx\\ÜpÿÕ\u0007;<V³\u0001¨Ðò\u001e\u0015õ«çÛ®\u00136\u001a¥Ã\u0006XF<ÿC\u001cà)Ss¼4n9ÁƤ%çÊe×X&¼1öÜe¯¢«.iXɾHù;%wìØJ|ûCàS-(W\u001bú®{®û®Zñ¢\u00160Zå¤\u001fÂ,\u000bYðu\u000e@lð T*¨%ëXæ¤%tÑM̾¨ÒsH*sH\u001b\u0002µ= ͨ_T5t|Ìö¯ö\"\u0000Xö\u001aNV£\u001emYöÇzÿqovÕÀþ.V\t*z©æJ:ó4pÝH\u0002®qû§ÃE¬\\Ú®T±*\u0015W¯2¦<Û¸àÄaxâPf<§PªQç\u0001hÐù*öÑ\u0001XªìX»\u0001$vÐ\nX©eL\tؤóa³ÝÆõLÕæÔº¬ôô»\u0012ÿ\b4)D=}¯)3ÈÃ\u0001¸d;=}ýÐNÀ\"=}{Ó¬IC¬¼õâh@±óRF¢òZbs9\u0012°ö§¦1³az8ì>+âTªH\u000f[\u001bQl|¸ç6¶¥å@i§C˾LêË\u001aGd\u0013Ôð3Ö¤]äp2ºþW¾d\u0015\u0016¿µ(\u0012H&b3Õ;ë°9Ûeôó®jdúQÂÑTÆ\u001dûd7\f.uo{Ø<Züºæ:\u000b'!î»Ø:iÄ4Ó\u000fÂÀ,¬ôQÁ]v\u000e=}/·tæ5\u0015&06
,ø$ʸt¶ØMõô[ªVÓÆ=}Éæ¨@A¬K\u000e¢§«K\u000eä>N¬È\u0002\u0015]w5øÚ®dC{¼æs\tÿÛ3_Æ
OS\u001cLMÔkí¦
\u001eú¿
\u0018{¦YæÕ»\u0016QÿEL$1îì4:6Æ\u0003=Mr\u0007Z¾\u001c6Ày{øA<(Ål1 db\u0010m7ÎN !\u0002\u001c¬Ûlî1_\u0017= ©néµÂå\u0012Åd¹¬V\u0001k.\u0007d,\u001d4Þ3~LòôÞ1ú¦·½\u0019d\u000b=}q©7vzaY6én±Æó¯Ã=Mµ\\^F\u0019>ÞªëàwÞ»ÏÂ\u0006Ëþúækéy¡½ãyÝ÷¥³jp'ò
°;c9¡Zs&×\b]Ñ]ÝUî«\u0000\u0010\u001a>_<(¬\u0003Ov Q×*xuòRN\u0002*k;\u001b*\u00020ä
«¦øÄ
üЩ{ÖÔYå!\u00041è;\u0016å&ÜÃFU\u0003fmü&r3ÄèÄQñb)2ãT#À·ÿ¼%TqË\u0018Zs>cU´zuÏ\u0012\t¸ÚuQ=}óÐ-G»ªM(e²ZVꬽv¸ ͦO\u001cT·S°{@R0MðaÀ\u000e\u001af\u001aȵÌ_Òú|â<ñ¡îйAé\u001aÜ\u001bb+!¡O#\u0004*¾ï3¨0â\u000fO\u001c\"Í\u0002xÔûÝ\nÃÝ'´Güír\u001e-|zþçWæ¯$\u0011×[ÙÉJuøAD!>'o0K\u000b¸5×=}þ\\\u0002e\u00148\n\u0015?»þÆüÜ=M\u000f3í\u001fúPþræ\tM×\u0013Ö\u0001q\u0005\u0006&@ý\u0016ÑWnBÓ>7ÜÉTùÜQ¿^®ñ-,\få!'9ìsùÃ4\u0005?\u0012BTu\u0016\u0018&éçãÃ,?(\u0017&\u0001ój /¤\u001b£\u0010Eà'â£= \u0018R(/¤¼=}\bÍf÷I³HZépôSGÅQ\u000f¦+^@]ñï\u0010GXg\u0014¶ò¤ssÀ\t/µ¨/6Ê\u0013bÏ´%°/³~å¨5|e¦U\u00059¢$BFp´¢cë±²êÒ\u0002\u0011ý´f]\u0006ð®Æ\u0006Æ\u0012ÓÎa.$ªó=}´Y_óì\u0000õ\u0000X\u0005ó¢Ëï|\u001a3;-%ÏS
)÷ iTl\u0015Wôáµa6m u¢Þ>q9 'I\u0000±N}\u000eÞC>hïGÒ*Æ·¸PØ\f¨)Åé\u0001ø¯Ë¡yèZ?1\u0014^B\\püõôÞç¹Ã\u0005 Ôð4ÚIsmQÚÆû¡u°|î(®±Ø¬$©+=M\u000e°8ggÒ\u0001òCÆ\u001aK\u0001\u0003âåþ6
Ä¬Ú \\Yý°-дXÇÌíÁÚË\u00022ñ=MdÑkhhÉÃd6ñ«Qt»|Z³Üu\fÖUhϽçØÛ\u0012}½SýË}\u0012©)Û\u0000ÑÛÇwß\u0006C ¾\fã't¡a.ÍJãpa/\tÁâÿTVÚ´ý\u000b·ñ¬?{«<\nM2I©O}³&ÿ¬\u0017øu®:º\u000f}ëßGnêtF@\u0006\u001b1«=MÉ\u0004Ø &Õeî%~ïN\u0018õI'Oöz:?\u000f\u0005*<á\u000b°TEŲ{Ï¡xÔ©\u0019ä\u0002¬É\u0004®\u001fò%}Iù$§\t\u001d= s~;ÀíT/¢¤ö
ìpg\u0006 ££»\u0002¬\u0006ú\u0007dl°\fy\u0005çðÖ\u0014ïfʶúÜÃï¸F÷ÌìÊÝ}}yÑ\u0002^\u0006Ö½Ì~H\u0017í\bÒ\u0015ÈÙ¥\u0015¶k\u0015mzk\u0015k£%&¡Ë\u0010msÖ>ÀA}Ô?\u001dºRË\u0018%\u0011]\\:&D¾[,¦\u0017Ñ$ÃÐÎìn´cÓ5ÆÑ\u001dO\u0000[}=}áÖ(N¡ñígµâ9c\u0015&=}Ä®Òξ\u001bQ,öÔ?è³K'VL¡](ÂVÚCê0ø##{ºÿ3\u0002¡6®L(¡m\u000eÕ\"ÕlÆ\u0016zÉØ\u001cÌÝ;A\fª¸_\fÛ\u0001ÕñXã0î|ò \u001bIUÂâw\u0006ļÃú®[,Ê\u0006Z\u0016H«§/n\u0006Päõ\u0011]eÿõuóuq\u001dú´Å³n=}¸@Ö,ñ\u0013«À7¸£Å½ï\u0014oàõ .®\u0000<òò£àzÏq=}þõ\u000baé¼ù^Ò\\¡Êáä®ù!MGÓ& adePõU\u0013áß\u001eá\u0007=M\u001e\ttï¸\n¿.\u001bÇ_\u000f\u0005ò$U+å¯\nw§ÆËp;t\u000f'Q\u001f$2\u0012\b%$\u0003}¬ ^(f\u0003\u0006%e_0^ Ò¯°\u0019j¸kª2{\fm4c@U4N-LCæ\u001aª!3\u0003gâùã\u0003¾Fm¬EÇtîÏ6Þ¤\u0010\u0000äxN8a©Y(O}=}\u0010ÔWñ\u001cµÖê= W¹5(¹~o»%V´¼ÒJÓ°ú:Îų§0V÷zî!\u0001°¦¡øðÃL!¦]èd< ÛN\u0002´= C¤(\u0004Æý>ñmÇs=}ï\u0015û&NK<\u0017ë'»é_È\u0004!ôâ[õ³\"¸ÐNV\u001e\u001b캪6\u001a°Â*v=}7%ÇHßD\u0007Ì/2Þ= 5ßK9'ën\"?¿\u0019lØdmçþ¼S3\u000eµ¡BÁÞø|4ì\fX6!ôE¢z@ù}\u0011ï<|à\u000b@T\u001d¢#\\âC\u001dËêéÙdUè®8Â\u0002rãÚ·AÙvq\u0014¤A4ÌÈAäv¤ Ä,½ÛVq\u0005\u0013^ºÞéçÐ3'Á6\u00129÷[ÎxÈ\u0003»áTyþÎÍe\u0000úî<=}ÕØq¿ñ²9\u0010\u0006y×m\b²càSÀÌëx\u0015é\u0000c¢b9¤¡1c7ÈHD\u0003\u000e À\u0015!xÚÁáò-[xÚ¡xÚÁ¥Å;úxÚÁ¥Å;zxÚ¦Â:zÚÁ¥ÇëîAÓûäd¢í\"äü;ö'¦&Úl\u0003\u0005vs¥æ~cQ±¡K¤ÐáXÕnIÆÛ!£à¿N;Ý&\u0003\u0019T\u000e,){lH:_}\u001e\u001e3 Ãø½óÿ{ÎÝxöD= eË\u001ajv)j-K\u0007tÚF7À\u0001ÍãÃò\u001beS³\u00011Ð{!ëwH«1¬È¸Øýi¸0mOPüéyMmOXÂh
\u0014¡\u0011º<\u0012¡\u0011!øÎÀ\u001d+ÓÿÀ\u0006U!4¹nð?4\u0012¬²Ôj FØ»ãw;p\u0016ÃøÐ\"ËT'b[[Ý\u001d¹?°#O·Õ·O%·¹¾É³ä,}è\u0002ÚöÝvýÝsÁÝÑ*z\f¼wôõÆãú\u0004Û³~t\u0016\u0003±üOá±\u0011Ë2¸[\nÁÔ(û6ùé2oeÅê½úLÁVqR Ô\fI7ÐHh=M*àCY¬Ñp#¸Þ\u0011YvG\u0003à¹\u001f8\t<co\u0000[³\u0006Ki\u0004\u001dRGj&õÕu\u00196:ÿ¹C;´ÕÝèÂ\u0018ËjÒOõ*W±[Åk¤íknXâ±vRa¢¯IC¶Ñh}£\u000f]Æ\u0006ãZµ*StÂm\b\u001eÔkøòÖ¾\u0001Ö¯w<\n\u0001¥ñͪÊw)*èÑ;fy\u000f>\u000b\u00066\u0017z'ÚsFaãì(¶õêÁ\u0005öcÔ@ni±c'ëA>Qоñ\bBù$JCv\u000b
b9|U3q³\u0003Ø\u00008:\u0018Lw(ô¾îMàaSåÁ®b\u0006GÎβÖÍÞ= \n<Ò!¯É.\"\u000eîR\u0014Uéwº\u0002Ì\u0012Êaq_Ë\u001a;e]¼.ã1ØÄ~qØ´¨\n©pz½¬\bÓsÐü¹Ø:2R\u0016%3§ü+\u001b f=}?@Õ,z\u0002èz%øíaj*Mô
ÈÍ\u0002$w§î\u001cyfhEá\u001beD\u0015¬\n\u001aÿt\u0015áоÁÚãèV¦eÖ>I\u0012[Bë+V(mÀ®TBã:ê{A\u001cÓà½WWºÎ\u0014.\u0010®yj{µ¶y/5kÙ×¹wð\u0000¾ÒäÄ-¦ pþ*-+\u0012i} Ë}}ÈiÅa<û\u001e\u0011ceÒ\u000b¢]ùá¾vÿ\u000e¡+\u0013øt\u001dÂçm=}qI7hyPÄ\u001cH±Òlظ\u0007juO\u0017Ô×ûÊ86\n%W=M\u001cñàÎ{\u0003_bØÓçõÓÿ%$|Dì£ZL3F
8VãW\u0010u\";\u0018¼×H°×kyPøÑâëp®=M1¿ëAp:U>2{\fíØíwK1-<êJÜÌùksö\u0013\u0016K\u000b&êB.\u00013_\u001cg§%ÄÅ\u001aBÆ_®\u0011Õ¡o8C@Ao= #±®\u001fPïf\u000f|§áÓñØ)¿G\u001a4¦ÎïVYÿjMa9)õç[\\Ã]= Q\u0013\u000fß\u000bÃ\\pn,ra\u000b7©\u001dô35\u0002 õH¬mµ[ÁÏ¿\u0010¨îÂëq\u0019ç\b¸ñïy>
°ã¨áP4ú¬Pi;Ò_çÂø^\u0007büZ\u0001°d!j©^/i¼CpÏ\u0000b\u00190üö¬\u0004\u001eFE´ôU$iÀâ´v+)ñ×\"¢:\u001bË=M¦.Ur\u000f{\tå=MÕ\u0014\u0006\nIÝFÆFÄÄã\u0003ç©Tùýl=}<Azà\u0017o.ûy2£xá3yhUuj½ù¹c-¦\u001a\u001e&í-tüßùo¹ÊË\u0010ElßµÕx¬îfFeþ\u0001|)¬æ«Ô\u0003¬æ=}f[8mí \u001fÝÁ¡Þ¼]\"dÃ\u001f>PÅß\u0017\u0007\u000e?F^ßÁ\u001bV\fä\u001d¬Õ¾F\u001b ¶»\u0014,L±>4\"\u001f=}8º¦Á\u001c\u001b
Ø\u0013ØJ:\u001fعJ%ãJÙ/Wu\u0019Ø©*\u0010ã¥<^|M\u000e½©\u0001S3
<sd#ÖXæ<\u001b\u0015@ÍÃNÚÿõú^úÑ]þ¦Àÿ\u001f\u0013Ó³ÜÃBå\u001dç¥ð\tò\u001fS,çT à@ àÖ\f\u0000d\"r°¦öFUlëü\u0003\u00159Æ
[\u000e\u0011\u001a,óÒ=}\u0017¦ùî\u0012ùƪÌ(@zØ[\f«+ì=}æý
ûÔ\u0004Q9i\u001aÅí)X&7\fØ%µ\u000b\u0017²´Ã_\u0005\f\u0002\t@´ê\u0002>ìÎÝ\u0017c {À·\u0011\u0019Ö\u001fdzC /zïç %ZzßÔ,NØ/Sw,¥¬$µ²*¬^S=}ÆØ ã:iÈ#eEÈ\u0017¬Íþ\tõ{É;\u001d^c÷Ô§ìg\u000eÁ°^ºø»\u0010\u0001´ömìéÆxÿ%3&.·\u0013ÉÆ±l·Ó=}-p,Cóó£l[dNÆT\u000b\u0013¥R³=M¾\u0017¹5\u0013Ùýb6Ý
r¸MéW\u0019B$Á/í1ð\u0013m¿ÁOñÔ\u0006\u001aXLþ4¾kK½É¢Pgsáä\u0014ÜðS\u001fö\u000b¤ö9ÍKzo\u001ftõ= ó}\u001cO,LàænÐ6®=M^5;{°fÚ['[Ö^Äýª¯Í´M\"&¸´¥øM½&}þý\u0019ç\u000b;Ç\u001bȬvyÀÆV= mFyÖpc\u0018½o(±Òk.Óv%Ì\u0001ôpÚvÜ¢\u0014®Â5?I]\u0011.íý\u0012¹2RúHåÑ':ô¦\tT°\u0012éåXñë(xj¬3\u0016B¦_×'~H>\u001c¶ãðy©'+XÅÜË\u0004Xùêñ\u0010·\u0003w¹Ï-\t\u0016¨\trF\f}tÐ\u000erJlxËã¶&¹Ð\u0010?\u001fÐî±l\u0007\u0010\u0006qýànï\fm.^\u0003Î\u0016\\RðÐÄÉ\u0002\u0017?ÒÔ]hûîqç¯WH÷CJvÞFñîB\u001aÙ®Ô|Z@ä}#Pü\u001c\u0013t'-F:¿&
¨8§F\"¶Q+à-æU|ÎÍ£ùu+y£¶ý.Ø\f\u000f¢\u0010Z\\:\n-ï*°s .ç$áås¦.\nÁ89¦cRY4\bUh©Ñj|:èÑô½\u001e9®MY<¥<ÝX®W\u0003\u001f·cm#ôU
\u0002\t»UDaI\t²\u000fùlZ\u0006ùqä¨RͳΠ'SA¹g(ò\u001e©bÕÿKáFÒm¸\\Å?\u0013˼â®\u0010E\f\u00037g6ö3«úå6][éæ\u0010LÁóöó\u000e]ct5Ëig×nò¦Ï\u001d\t¦r·îêÆr= Ö´\"6s´×QÙÇøñúõ^mÄDÏ)ûÈåRªÚF\u000eÅ\u0010ágé\u0001ôI\u0012Q¨Ã\u0000æKÄ_¥Ì®ð¾=}y4äò\u0001-\u000fI\u001a¿\u000f\u0014\u000e= 9Õß\u0010»BrºÈùÁ=}\fýôQ÷ÃKì|Õ0ó+öËÔq\\@ªÕ§brZ\"/Ob \u001bXð iðÝQ53\u0007ï Ú>Úm¶= Ôpî<\u0014S \u001b\u0000e¨ö}ªJ=M\u0005\b\u0011EÖü|£gUáfÙY¤\"kï|¯V{ôeøÃ\u001b~gøæhKw=}\u0006®\u001cG>Ö\u0014â±þ\u0018Zç7\u0011Û\u001dÐ\u0019¹_õ'@bS(õzáh)f\u001c[9\fï¤\u0000¨mH¦a^,Ç\u0014\u0004xs®\u001135ðúÃàí%*\u0007J6ÎdÆ2í<\u001be<KìXãX<\u0004X©ö#®\n\\.«Ï<ÕÅ<S\u0010Z.3ç½6.ÃV®YYrtÊtú\u001e\u001eOê\u000bóð?\u0013H}ÿ\u001a[³´u>µ8[¶iä7Åï^¸iO¯°nزHõÒè·\u0006\u0018KÕ8øºB2RF;*g\u001bÚ(sW+ÿÒ\u0016(×\u001a½1ú9ý4W)¯_+g\u0002\u001f(¯\u0013ZÒ\u001ce]yóÔAL÷X\u0006\bT«eEí±>Ëx\u001aqÖ5¾Ü±¼Õt
£j¸ö\u0000\u001dì\u000b\u0016ìY\u0016ÒM©õþov
Ð7¹ù^«P\u001bâ·Ò\u0016é¸\u000b¬V\u0006\u0006ó±~\tjî]\bpz0%d¯À\u000b!Hù2\t½n\u001b2åŲhþ\"Ò¬SÄ\u0003÷ð¿4s\u0012Ñyo\u0003&Zñå\"/ú²\u0001o\u0013ϤòÍ;Hû+-ÊùnÎq1D»2c½þ\fÆÜ\u001b\tH[lc»¯q¿Û\u001f²\u001e_±ù%¼²= \nýNóÈÒÄ\u0015L¹\"³óÈ\u0017ù\bà#Ú3\u0019¤íÁÄ-ï\t»\u00125I\u0018{ºÙ\tCE\u001bj×B+Èo)U<ÉÀ\u001dÇrb-9üÀKzhÿ~-§¼úg(\u000e½@\u0012\b¢n>ýàm3îýÑâÞGæz\u0015æh\u0003ÞðV\f§ïT FÂaÐ<^$¯U¦AÐX\u0006<)íÚØTTµñR>NsFÛé8\u001a*F>1¦ý\u0014?]3_Á\u0003\u0011ùÝv?\u001dõÅhØL£9aö\"H/復!Ì>ï§\u0006Ú¥(\u001eÒ(\u0001\u0016kÀ\u0017I|L¶Á÷Ó\u0005ð
KÑ\u000bìJL\u000bÒ&¦®ÑIí(åz\u000b\u0000¢aÑÆ\u001fù,\u0011#L0Þì2ÞÁvÐZ5/öã\u0000Ë-DÖð\u000b/o'8\u0014¤
G=M\u0006¬gMî8}\n¢\u0013ï|é-Bü\u0001\u0003¡×s]1û\b©ìû~еC¶/\u001a·\u001a\u0015!ìº\u0003§w_\u001càV\u0019\u0013\u0000 DG%Àª\"Aî,düª@¸_sQ,æÝ¬¼¼E£\u00169dýcðE@$W\u0012cÐfHêCc\u0012HB¦\u0001\u000eÆP8\u0007¦áÉÏ<}m\u0005P]H§{Þ\nýc!éb%æ§J= *äÜs= o})ãIj48IQXd©îg´Ø³Â¤\t{EJ\u001eHÑs«ãT§Ý´CE§â®\u0003¶_ç\u0016í<ÛXfå,ª\u0003ÈÚî\u0015Ng\b3.\u0003\u0007<fX\u0002p\u001bá±sÌj{îÑߺ\u0003\u0012uMçî.ïf®ÚF.Ý6®ùÍ<=MúX®Ê\u0014\u001eë\u0001ÌjEgÅpÅfÅe\u0005\u000f\u001fÿ\u001b\u001f¯ÀIóýÆA\u000e³¹NH\u001a¯\n\u001b'µ\twÅ\bj;íDCºCDV3EZ\u0013E=}\u001aËiÌ\tO½Ë0iÕ\u0017;jÛ<±¶^ùL=MKùK\u001f\u000f9oÕ\t.ÃïøOòÀOUò¬ã¨~â[ñpA^Ü\u0010\u0001¾¾PÞ°Áßf¸¹C\u0018?\u00166lû\u0001ÓïA\u0005x¬PÁ\u0013aâ)áG\u0006¢ð_\u0011ªp÷Em\u00183\u001bpÈ\u0015Fû\u0018nXº\u0013c\bÖÖj\bÎýHL\fú¾}^ó¹ÅÎ÷Ë\u0017n³&ÒB:î\u000eÅÉ3ùÂQóyv¢¸ùÎ!Ë\u000fÓ°¥\u001c~æ~vÎ
_õMxÊ䮨
}º¸õ69ûÂÝ¡Uö»ªÖÓ^%1LÖZ¦-\nÚ·%«.Ò+®gùÉ\u0013G¸\u0003¶¡Åüoëø5Ö\u001eá-vºê~Tý
ÝO^'½R¹Ñ\bI3îÂ\u0012W\nç¯l\u0007\u001dWöppä\u001eI:CQýU\f}lSó\u0012tC÷!=}È^s½2WÁÍð@ÿ.ýéE×Gù<\u000bcK\u001d\u001bñ¤µ#ÉdT¤\u0004#¦óG=}\u001aûPªþ\u001c:k\u0006_G°ÂRí3±¿ölºÌS»l%)µxPÞ.¨SÀÀ\u0017+p¯ÅtØY]þÞªÎÏųm¨û¹3Î{qÞÆMmÀEyîÄIG¯ã~ùõ¯Ò\u0005¡´pCÃ^*\u001få\nfÚãW³åâÍôÑçÚ\u0014'¹½-Çú hrN¨ÆÒ\u001e[åNz±Ñ§\u0014.\u000fÃÏ\u001e'\u0001êcU\t(-÷Xf»ê¯3ï]a:·oò\u0010\u001dÇ\tÒ\u001cLÅX¼ÇÉKNrw\u001dÂñ©\u0014È\u0017Eúÿ\u000e*½\u001bµÊÞG§\u001c»ô\u0016\u00046}ݽjÁwóò«\u0000é\u001a\u0018^e\u000fhZQ¯IZ\\³Ò×
s\u000e\u0006|ªü\u0018¬z\u0019+:à\u0013\bÅR¿f\u0012Wôâÿ±\tæ/T\u0013G\u0012ù\u001a¥\u001a\u000f\u0018f#C°gAÉ\u000fNÆ/\u001bjÉ\u0000pY?ÏDdzõ´\u00167i\u0003\u001epbrMËG\u0017\u0004fZ½öl÷\u000fÕò\u001e'x¡:¾5Ö£üH\t \u000fÅ=}\u0011Æl=}Ûë[aÓÂS\u0006uá\u0004ªÎèJ\u000f¦^\u0005:\bxÆ©#Ezrô=}Û*À\u001a{o\u001cü+f?\u0015»^\u001eÒOÒÕá¾\u0014£nf$Æ.à\u0014#<_(n-æãcpÑH\"×-ã\u0012Ð\u0001\u0010\u0012>¡÷CÁTö¡ãB}2¯âËÃR,ô[¯å§ºÑè\u001fV.õÙ\u0003Q\nö$\u0018¾º¨7±³PGRòLÇ &s\u0011¼(KÔÆA\u000f\u0007TÌê»®\u001b÷\fÞ¹(-¸¥\u0004U\u0018XV*UäzDæÞ\u001að[Da¯4+%/\u0018{íU£@ú+\u0018Zìaà¬Ù¸ý>\u0004îc\u0015a#Õ»¯37\u0000\u0013\u000f%Hj~¨Ãªe½Ó8½[La\u0012\u001dE\bÞIZíUdËAþDOcÜÿ,¹Ø\"ÞÏà\u0003#KñØ*¹ËP\u0016ò\u0014Óy£\u001dý÷\u0002\nzàù(îݬQHå8\u000b÷h3Øæ¹ v¸\u0002ÕIQ\u0018Tù<¯ÒìQýé\"CõLÑ\u0007ÀEÖmÕb\u0013#K\u001cVÕ¦ÙU\f\u0004\u000b\u0011aã&\u0019§Ð¬M¶}ÖeÆä.¯S\fЩ]6]Õgö'\\ï ɱC<\u0012<qÓê)}½±S\u000eÿ¦Ûø%§3}Ðf÷5\u0016ÛâÆ«;²
Xv\f¦¾æ\u000e\b³\u000e®Ó3]°Ý÷#{z\\\u0010âî3÷>bTñ+\u0013ÃÜps\t¥YëÝQAî;÷[\u001b\u0000»½/NÇ\u0019¬ÖO,\\ñMã7\u001d\u001cäõ/ÉHó\u0010ç+Ý\u0000¯\u0018zõ C\"ð²7 #£#q;¨a\u0007\"ñÅ\\0\t³£Ðø[(ÑiaèÊ*b\u0006Ä\u001c\u000b:,ÃSáH\u00182,\u0003¡R¼Mã\u0017=}RØKcï:9Tæ¥Àþ\\$Bc°[$ªê0L92ªÞkc\u0011]H4÷o¦H¢\nc\u0001^B,^«ã0\u000e=}¦´po-£\u0007·PôÖ·\u0003äY7é\u0001\u0001Bç¾=}´¾³ã\u000f±<Â\"YæÔsàÈ\"¹%\u00045\u0010\u0017t\u0000êV%¤x%\u001aütÝ¿J°|À= d³\nýc©Ã´¸DvbÈädE6\u001aH±Óq©¬ýj¬_ÅdçËjÌëpb\u0017¥ruß2ÓKµøüĤ®Ä^<§¾èñm¯\u0003ä<®üÅ<ÛX{t[d\\-\u0006ØîY,ÖèÃY\f\u0016ô?\u0001GYä\u0007Yj3Xö~\u0005°E¸ÿ\u0006i\u0007x\u001f¨{6gàs®\u0011OYî\u0007ôÜ\u0005ð\u001aÈê\u001b¹\u0003\nWu%Ê\u0010B®â2u¾R®ê*®ÔJ.÷¿<ßX<\u001füÌ\u0001ÈÊ\u0005ðÈ\u0007\bùàñÆ\u0012Ú±\u0003h3çÒ®*5«JߪwKg¾êÄV®0µûJ\u0015J3\u001e8Éèt\u0016ËDÉüwés\u0019ÊrÆ\u0012kÅnÅiÅuÅ=Mý\u001b\u001fMΧö =M:Óß
ÆïO
\u0002-\u0015gåÉÁ
\u0002!\u0015\u0013õì\u0015å=MB\u0015+ßE\n»¾ì÷7fÊi&ø\u0016·D=M4i\u001eD9j~ý±äþL©QþK1]X\u0013(¢' Q¢H*ÕûV\u001eËûÖÖûÖûÖ[\u0001\u0018o\u00042ÙÄ\u0002rNgWÇ\u0005[¹)ý¿ï\u0006\u001d|íNoúáöN^ê4ìïQ\u001b[÷öÞ\u00137Cê6ÆèR\u001bIÌ~h¯E=MSWWXÐO×]ùª°@\u0016\u0000s,{KÝ\u001càö\u0006uÑÛÍÌ\u000b\u001e 3\u0011»= \u000e\u000fƱ\u001aþYÔ\u0019BÚÐ%MÜÔ®d´×°\u001bNz\u001e\u000f@½~ìqoöIZ\u0000±Z}ð¡ä\u001bôX\tYÍ\u001e®\"RßrìÇßäÍ2ÄÉÜ\u0002Ô\u001eÇT\u0000±ÇLE
\u001a\fÁn\u000bÕ§!*»ð´R+Zû¶\u001eÆ[r\fKWúY\ne&n\u001eÔ\u0010(<ªÄe\u0003hÛO©6Ödz.ïIÂÛ§êé\fs-\u0005ZVrï;\u0015ß\bÁ´ajÖ9'\u001d\u000f3±êÆ\u0000\u001b\u001c\t\u0018óR3e9;R?¹\u000e«\u0010âIîÙÌ Ô\u000fÌ©{§y
;+êW\u000f= ôýý\b´û§\u000fñ'Ñ\u001aq<Ýçaâ&¸[\u000eT*~½ceüe\\5fNW÷=}߯ìßï°\u001f\u00055^î§\u0005þ?ñ\u0012\u000eKJw\u001edw\u001e?ÌQ\u0005áËÏ\"\u0010YA\"õy\u0002Ø\\L!¥IüÌ·¡nµ<~tJàÖz)ÿ;u\u0000úŦ\u000f\u0003UU;W\u000b¢¯\u0014Q\u001fÁAö\u001cW¦Á®I\u0004\"íqq)\u001bÙVHX§ß=}\u0010ïö)%
NÐx=M®\u0004\u0007¾\u000e3Þ°X0 ax²>¢W»ãQaX2ýÙñXD.©Ú)Ð?jb\u0006Ût¼kkçð©L\u0014Û\u0005\u0000ø¶\u0018¹4\u0002\u001fª2\u001côO£\u0005êjìQϦ\u000b\u0016ZhW= \u0001|SbzÑ\u001e{'|F\u0003ÍyOæ(¢' Ð\" ¢ùÖûÝ|ÓûÖûÖ[ûÖ=M\u001e\u000e(\n(,ì\u000f*<ßc(<ÀMj÷\\QÞ©C8hRÅ4®©ò<±
\u001daY\u0005I:Ìè¤\u0007j¬ösA
³J)
\u0014?Âaäm~ù\u0003Ä.ªòtÍôGÄâ \u0019)f\u0014nTÆÃ×I&ìØ\u000fáÝ7¶\bØ{s\u0017è&W7[Ò>ùs\u0003\u0006è\u00147n$\u001bÛÐ\u0001ÓKfÝýQl\u0010=MXOÜêÜ\t×ü·×\u0002\u001e]:à5+ð9dn¿0úc¹ÒB<#ÅhìfÑ\\ÄWù}ý/½!<Y°^Ã&3úQ¤õ\u0007§q7R¢ËÅCYTÜæÂ·W®çFÐî2*G\u001b\u0010tÄcÆÔ&Ïîâä<Ü\u0004\u0006Q\u0003\u0003þN¨Û\u0003\u001e5Oûå
¬9Ó¢ÞzË8¾Øºu§÷\u0012ðÚuV\u0002T3ó\u001bæâ+ÓµÖ\u0002qßµMiû8\u0016[×ï=M\u0003\u0006½DïøåýÛ1ü\u00160ÏÛ73ñ´·=MãI_uÏ/\u0015@\u001b.ñÔ\u0002P'F?\u0001|ßÃ8\u001a<cõ\u0002XKtnðÏ\u001b$§Jn2¶ªÉ_ns\u001b\f,Ewï2\u0014<Ê{ï3Ö\u0014\"¹sO²Q\f2!±·1\u0017Ù¢Ýýu¾;|\u0003²\u0012êåØ\u0005&çKò¼«g©×\u0019\u001e\u000b.?\u000eò\u0012\u0014>Ê\u000eÓ\u0019ò#Bn^\f¡gû\u001e¸\u0015\u000b¿Ð\u0019sÒ\u0006_ó¬\u0007Lº\u0018¢ÛÃ~\u0002\\\u00045}Ã:\u0019¦á±\u0017gÍ\u0007Ô|_Ðá\u0001CvV¿pÔ\u0018¬Ûé7n8åc\u0017;*zÿQr\u001fáLµ¿´K\u001e\u0002Â\u001c\u0016è\u001e\u0001Ö\u0014úE\u001fÑvB:'\u00118\u0004åñ1Ðh\\ï¥b¥$ú2i\u000eiBÍG9ÁG¥ÞbJϤTÂdR6é\u0004Ë6\u0017åÒF¾cªdNÊrl·îGnÆ á¥´ê7hѸêE\bʶòÌvf¾fY\tz5\u000btrÅw¥ÄUöæU,TÍ
Ý=}¯L\u000bIÑàøÎ±q.m<\u0006·k+ýÍXÖQêÛ½Þ=}¼\u0016\u000f\u0004~7ï£Ú:òãõP¡ÏB\u001f)¢'àX4$ ¢Ñ{«øÑyûÞ\u001bÊÛûÖû¾Á¹*3]t±ÍpEôkKõø\u0000ÍnóT%:ì{á§p³eUQ0ÁöÓh»/íúب¨ñAyÌkt«N.]¾W\u000bÑ|ÄofÓ^w¤&\u0004ÏUÀsè\u0017õ¦¨¬hy
dÒ·Q¢5æÜW\tr3b}myªÆ³9)\u0013íÈÓSÇÖYÑv6\u001c¸á\\skFyòïàªö\u001fÌøÏ
íÆ\u001fy\u0013·ª-ãx\u001fõ&Ó!ÖÞÓÅʧ=}Iï\fð²ùÓ\bÎ]fU.4À±CÇ<\u0011èçG\u0002¼±°+µMN8ÙR±K¯üð»\næo]\u001dï½¼?\u000eÌ\t\u0007á\u00197><±R\u0016¦Gvå~\u0014X\u000eåÄd¦\u0015æ_à§¶µ^Ü0\u0010Ê ZbÚ0\u0012ݰ\u0017*1ת¸tHf\u001dи\bâú\u0019\u0000\u0006gß¹ò\u0015\u000bP¦ß\u0016gÕQ ´+!ÄÇ&Â×E°¢@®í-\u0002°PC§%\u0013\teP^UAx½,lH>MÁDú§_V¬ÖOµ¥\u0013\u000bbXû3C\u0010\u000f¨ÀêQ2æf\u0015sD¢ÆH\"ng\u0011BJººµñ¬QÁx,ï?å@N¨åLg]\u0002¿8gà\u0007X~õa=M1810o\u001e\fî\u001e®g}¾à£³)\u0014/i\u0003üd¶ÉD1Okü\u0011D\u001e7°¬fRãÞFSÔF%\u000fÝI¬\u0014h\u0005\u001f\u001fÄ2\u001cLµ©ùlkCùD½eÝóyN½Â\u0000,zÆ
ð\u0016^£ªÂlz÷
ÒæT«¼~yì]µåDVÂÑù\u0014¼me.ï6\u0007\u0000\u0016S'µª|\u001eú°k§>ÃÚ\u0004\u0011\t= >î\u0019¼;´oäÙ2e%Ü\u001b!IW*¨-I\u0004\nØb\u000e7\u0012CÒ¨\u001fmNÂ=Mq1cªQÅ8µçå®Ná)&/jx;~ê\u0013ÑżÚyjq= 9£ç´±Á¬6ïÖ,Hgؼ-ö5L·w0ÚÙ\"¥vEñEµÔOË\u0004\u0000ûj¦råÙ\u0011u<Ýze£wU\u001btówUOðNÉÿÂ:<¿õ3rë\u001a\u0001ÕÜ^të\u0003Zòë\u000b°LÎã\u0015i=}C\u001c\u000b9ZÀ>»½\u0015´ÈW0¼ñ= \u0007ä&n¿¢mCOÊ;ÞØ±Ñ/:Y\u0006ýäúNm({»èý¤À¤¾D\u0014yOá\u0012£¤ê0I\u0014³Ý´7\u000fÄ(´\u0001øk¦»¬\u0013ï
Ø(\u00048ë\u0004LzJ\u0007\fMYë=M4øµJ(¼Â\u0000\u0019%zjr\u0002µ\\:ÌdØ~©é+\u0005?&ä!ªÍM¨Â\u000b;ÕûæÎû®\u0013qûÖûÖûV®¹´Ñ;\u001bz\fø\u001cÔ;É\u001e\u0010Þ¸¯¢?¥\u0006\u001bØågæ\u0002w\u0012Sw\u0018ÙÚüïæûªE.ðÆ ¼JàÔ\u0005!öý,ä/Þ°{°ñ\u0013¢\\Z7\u0004\u0001A¦7*Åc¨sb$§x\u0013Räìô*÷(zî/\u0013\u0002¸_âäî1Ã(\u0007eøØTbÅ+1\u001c6Å®H:déý]jÂ%q6½¨\u0012\bc´\u0013,Bµ-V&-¶SÈÓõ\u0016£y\u001fºôéÒÜÞé6÷ä¹·é\u0017m®\u001fqC·¥ÌñâÐ^îÂàf«\f·MîÑè»êÆl»_zû¨>V\u0013ø\u0014ÿ³\u0002¦mç\u000f߸êAei§!í<6Ù.æ[Dx\u000bð\u001côO^h8ãÅ6·\u0005\u0005}fÕéM\u0015\u0011N\u0003vÙÔY\n\u0012\u0000ÞkÖÿ\\RÇ\u0010ØqðÃM¯¡½]ü¾>¹F¬|\u0005Ñ\t°çÌ{>u^L¯KX»eÐÉÔÀmcá¿\u0000Oáå)¢^ë$Ï+ò}4DFX\u001c»Äbi\u000f\f²ÅEU\u000biN´\u0004\u0010=McE\th.β4üK\t~ò\u001eÁDëéú8ª\u001frIÒ\u0006väcÑ×ÖÂ;åÀÐo¥:ÉèRsQ¥\u0002\u0016åûªSw5]¿HÞrt\u001cwóJÑÆfí¯º¡õðäÆ\u0019ÇÓ\u0006ÌÁQ\u000e-õ¿ÄIWo³µ\u0006\u0019vm\u000f£ºGTùj]öÇÙ\u001fc\u0013³=M( b) P\u001cûìÖ\u000bïÖûGûÖûÖûíU<Þëú\u001ey\u0000\u0012/¡ø'Òe-Ä®?\u0018R
æ= \u001cü¡Îe\"Kê&Öu+ìË?üB\u0010\u001b= \u000f\u000e¡k\u001d#¬(ä¸0\u0018f\u0000ü\u001c= \u0017\u0005¡¿ö'º+Ìþ;ØD\u0005\u0007Å= ß»¡\u0004/\"¾Yï'Â\u0001ìWîoü?ÂùBa4Ñ[Æö©åiä§ÉdâB{±Y§¨¶wüI\bådÒòq\u0011o5q˦8g@V1{¨qÍd\u0005\u0002÷nw±ÒǸùgU= 49L,ýCåºQ\u0005Q
²[u½A~ì=}\u0005SkLxDÂL5½¶«cKåd\u0016ΣÝiøBâVq§hÓkÕgûKz\u000e7±.ª5§¼\u001e¨øô\u0011çå\u00043\u0002³sÂø÷f¼\\KÞ_O²0eOªº·dóëÂ\u00195q\u001fÊHí\u001dß\u000eÞÿ0\u000fþ4[ÌÿM±\u001fÖ\u0018\u0002®x5\u000eª¯\u000f©ñ¶\u0018ÞxY?¨}¶\u0003Áx©>Yþ^LÊûF\u001b\u000f©\u000b=MÛǨ-Ó\u0016ûS±ïZú2Û_]7ÉͲÑÖõNû§Oä¶ðÒziËMͧ-ÓiV÷vøfû'\f¸½Ñ«õø=}Û/=M±]ÑÇÏ\u001d\u0013=MÍ\u001f\u001d÷ÝD(> ã¦âP îÖûkþ\u001fíÖûVúÆÖûÖûÖýÛ¸q×y+¼©*ü\u0001wÙ}Ûîî ?u[÷&L\u0005,§|\u0007§èGk\fØótN\t@þ\u0002\u0001l~pýä_[á\u000f-ê¯L1\u0001¿ýt\u0001\u001dl\u00191û]\u0018Êñ\u001cÓú\u001e\u000bÎvþCXSÛ_¹)ß\u0007ÓSöÐñR;ï£g\b\u0012>\u000bZ\u0013¶¬\u001fã¶´ªSÍe*Ìs£½]èÄ/{QÛîìËê§y¦Ñb\"®yL
I[3pïìmÚøË\u0002A\u0014i4]Û_¡®½½fsíÁ©e\u0014P%u]}(ýjFO9
ùgíS¯r\u001düS4Ó\u001bRi\u001dÝeK*?²\u0001ý·ôù\u0017¡ö\u001b\u001cÀ\u0019Q\u001fhQr¬þÅi²o³LÝ{Àdª÷ô®©6\u000bóÃço¬u¡Y½c\u001d.´\u0006jËqé2:ò1lBY1\u0014HA¶L²³\byZ½<µkV1]\u001b~nBqUôÙÚ©ÂTúÉfO\u0001\u001cxM:¦°Ö1°l9nï¸^19úshZ\nìâ<«Ù\u0018\u0007Ý \u0012«È9,¶Î¢ñÅÕXFß!Ê)»AV[\u0006\\\u0007N¨Ðé>xh\u000egçA(®ÁÌ\u0016Dê_¼¥P\u0018BbõÎà\u000b-ìëØÂ\u0017qÑ\u0013QØ\u0006x\n\u0016*vÿA\n\u001cG¨Ì\u001b¦Ô\u0011ß\u0017ç8\u0018/ÛWÂ0þ(x\u0015a\"ÊÿÅ0KF£X5Y¸K½¿2DRtûÆ&ÍyºXÝ{;qoQ~u?Sã,qþ
¬{í°\u0019æ\"½\u0016vèÖ¡DùÃ}äÊTì=M¦ô_>X»\u0005%9î7rz\u001eX^H(qïbPV],\u0003®fBöG:ÇÖçaæQ!²»³èU5Þè= 6êN\u0007bÕR?£\u001e6\u0005¼r¬\u0012H§éÕJ\u0015õÔe]²NV\u0001â\u0010vèÖ\u0003\u0017ÛNÌ|ÿ+ÁÆ?#$á#5 = áûÖ=M·ûÓ=}^ÒÖûÖû±\u0007ÒæÍ7zS\u001a\u0010\u0001¾v\u0017\u0003\u0014Å!$-\u0004áÚáÄ9.ääl[¼þÝg\u0002C8åÙ\u001añ$Ȭ
påX\u0006Knråd\u0012uF\u0013Ä*¢\f\u000b]#Ù×SÙ^Vk\u00060Ù>Û¢\u0007\u0013\u0016òbìÊ7\u0011\u0007\u00192ÎïxfÓ\u000bDîÍdÛ5v÷\u0010\u001dZÅÍG\báfÆLøì®¸M0ÅáÞD=MÀ\u0015\u0019N¶úã\nêÝ\u0014õÿ¯\u0001Å£¬9¸\u0003ñgØ\u0018\u00168K/¿@èIg½\u0006á\u0007Ó\\ß¾«SOò|©;®w\u0018\u0012\u0018:?oþ\u0000\u001c)ª;Dù1JÄÖLg\u000fèó\u0013ÄBâÅêØ/rEÀdOÁ:LÔð\u0002\tçû8þÞë»bö?0Ø\u0006^5?>@\u0017\u0002A¡/>ñw\u0010¸Ùºo¸Ï\u0012´¡*ï(·®Êô+\nE~~\u00025E~\u0003C\u0019&\t×8éÝc~\t]£õ_\u0010\u001a\u0016gjå¿x\u0010\u0014SÛþ¡9Ã\u001d0ó\u000f|\u001ca¸\u000foFd\u001f\u0006\u0016w\u001cqçj¦\u001e\u0007ézw\n¯N¢+\\rög\n©!Ó;\u0002ä\u0012Pd\u0019F\bºÂWñ<ñz+¶¿Ôämåª\t\u000fÌÙ£z¤MwK=M¸]â!\u000fu®ÌY\u000bä¡Sú\u001f}\u00189\u0000ªÙ;cç\u0010«GIr~Ý\u0017Æõõ§ðbtf\u001bsÒ] \u0015J¡|\u00187äñèæ¥×B¬ù2\u0001h«\u0000D÷Û¸ØV&¥x\båÑTM¾E2[²äÏ7é,\u0012o\u0001¯TN°î&&¥N¹hÔÙQ§aNö\u000eh\u0005sÒÓ°mï«X?~ìîqÅÔ¼OcÄ}nx%¥KË(7vC.ÌÁ
=}ûÎöìÌ¡eMd\u000eë\u00176ô«zqÿðîÆw=}¤ÆRÒ» ,ba \u0016\u001cÓ{èV¶ëÖ]ûÖ=M\u0005ºûÖÍÛ§i£¸=}\\(\u001d£ÙW(.ácø\u0019HÛÆ,ãI8/¿.çö(\u0006æ¯= \u0004ýhÎM9åyÃxÄT:\u0013~Q&ãÑ\fù[.ÉÎxØ(\u001e¢@Ï$¥/4B=MÉP+e\u0010î6ásc4¡=}d¨q\u0001\u0016?R÷æãÄ)ܪ¿ Ð\u001cdf»ä¥¶i(ÛnÖì4ÔÇn\u0005r\nt´õÇAÒZ=M£Ð\t\u0017,R¾ïD
õL¶öîÂðVmRØXN+\u0012\u0006Òÿ>ñ\u0006_!YI+ØÇÓ°Óç6IÜ8©äåõz¢öñŨ«L\u0012R|·\u0003ô*þl|i
öj\\ív1UÛ\u0006Îå:ÖÛÎ\u0005\u000fã\bÍ{oh÷\u0016%¡\u001cfî?ødÙèBRWSÙ%\u0015»{Ü;Î=}ûø:ؽ¹ê@|¼êÉ2ä¶iPük2½Wr\\ýÕ#G\u0001½Ìîý©ÀóNÖ»©]8)\fEHOû½\u0016Q\u000eå¶=M\\ Å\ba«.\u0012æ\u000b0e?/\u0004(S¯Rð4·àX?Ç\u0019ú)ô÷½\u0004\u0015¨s\u0018
¾bü\u0015T³_¼a\u0012øyî³\u0006cÇTÚÑ\u0007ÓZ¯\u001d\u0013+ø\u000eßh\u001dìkHÖ}\u0002ì
LÍÏP\u0003õuÊ.\u0010\"9\u001b0k³eð\u001dZG\u0005p\u0011Fa;qA»Óu×1+ÙãD\u0013Ûü¯¡\u0017I|\u0016 ÑÃ>\u0012Á\u0004A{\">¡\tt^\u0006éÇ\u0014Ìælá\u0007Èô\\ô+öYÞ\u0004É\u001cKZ
~3J\u0015¦ÔùyV\u0018=}±¥\u000f)oÂõ'Ö\u001ehûÊo\\Ô\u001eäxñïd\u0019¬së¼
ß0»\u0016%Á]\u001e\u0003K]«\u0005ÐQµ\u0003Î \\G_êÑi>E9%²ó4øÞw±èª\\{Τص2kä´yÇÀìÅN
¼\u000eÉ@rÈ¢\u0011)uDBt9Ñu:/U:\u0006ÈCÈî\u0011Ñ:ôeË&q×T\u0019²Ç©\u0014M.g
»Vºþú\u0004Nð×¹.BÚ\\vô
m¿Nâo\u00158}ÅçÌë\u001a<oóç\u001a !\u0003¢-ðùèocz\u0006;1d°¸QiJæ\u0014.Va\nÕ)ÖFìÜ
ª¡I÷ï¸ÑJá¬\u0011ì\u0019Oà¼\u0005;MØ\u0002¡ûbkdÍLñ¾åKÒg{\u001få:Å>\u0004¾ùtcø-{æ4úsú®ü[?ÔgPü¾'LZÀÜö1ug\f6Z±=MäôîÜVÆnø¥·ÊNl:\u0001j\u001cGwl|\u001fâ\u0007mÙ\u0007®¥[÷\\x²\u000f¡ºÔGcò\\ñX\nåªxOª\u0017\u00032\u0002ÂØ/O\u001b\u0010ÃOÞÞ$Ì\u0014Ãÿõ¯Ã«\u001c\u0011×\u0013\u0019\f\u001cP\u001fæÉIÿ9\u0018½(Ñ?¸\u001d\u0000«àoþÊ\u001cd\u0004OÌ\u00051_\u0018W\"?Ñ\u0017W\u001f~\u001fuç?¾\u001d
\u0013Ê>\u001eãÜ\u000e?÷\u000e&ÐÁJ IW#1L+ddF¨ea\fÞ<ìëܼ/(Òcij/\u0005àÉPrsâØ\\<\u0001Äb®d@7?á\u0011c±L¯\u001c¡HæfgAÐOº\t±ñú3ãõ\u00108\u0014å²>:ë¼½Ü-©Ã= J¾Cá\u0011dkFLH¡©d^&FÒ= B©ì D\u0014ä³Y?°ìR\u00114f&ÄpcJù\u001friF´\u0004³n\u0013ߤäSx?°¡¬FF!¹©QKP«g2ùd$Ó= R'ÕÀ<ÚE4¼kÍt>¯b\u0012\bþ±¯^508v \f\u000eb$C*\u0019ÛǨDZeÌøwlctQ\u001e\u001bk\u00188sâ±£Åì«KÅ\u000fp9Y\u0011
\u001c[r®}Y:çJ¿|áã3µèÆv\u0011t5ò\t\u001f\u001flU\u0007SËÙB}ãÍ\f:¾¼Ï\u0005cM\n7\u000bÐèÏã\u000b]Á¥\u0015ÀÉØ¡QÒìM¤;mhwT\u0011\fvSúuíØÿAÚÆ¥\u0012Í,Í
\u0006ãVÖVÖ\u001a[¯ºûqú¡'_¾2ÿþi\u0011ëNz[Û8\u0016Æ;ñ¾Ü\u000bq/K_\u0014ÒÀ·-¿\u001axWØ¿u\u001ayT \t#\u001c¯@ # @xçÕÍø\u0006\u001aÓûÖûÖûåûÖWJà¯ße\u001d\bVì¯Çç\u001cÈ9\u0004ï©\u0002\u001e¸g\u0018S\u000f¤_¡A!ÔJ9àù±!n%Pj0è£r¡Øf'R\u0001@¥a\bê$ñl0§î$1H.Æù¦®-\u001fù^ªcèN7bÕA,ì-¥dàÉ\"¾®3\u0000¿G@nJd}~¨Ü0\u0012¤4³ªHv~dî1Ö\\1ɸè\u0012¬3Kw쩤é\u0005DT=}Gá¸K\u0001Ëxê\u000eÒrÚ¯µÂ]K\u0005¶hæèRRÔ¼]MÃÉP´OÅb9RJ4áÉpf¥¤\u0001wR¬ÎCâØ\\¬a\u0001LI6î¯Á\u0001´Y:îT\u001f(Î4®@$E.eð\u0015$Ó*eÒÃDÙ\u001bBÙ\u0019S²'\u000eH>\u0014®\u0002\u001aÎHnÓ]ºiýÃÕM:çç\u001e¸øÿI¦Î;h3ã)Lmûæ\u0012Lc¾å2Ȩ= \u0013XþLÃ\u001a£XÖÆåC8oÕ\u0019\u0011ìØ9oa\"F°UC!NEpUB±Úµ2ÉSA±ªÙ©ØeiD´j\u0002\u001d\u0010D\u0016?mÀR®¼>\u0015k\u0004¾rßEÓþ¶¢Ñ*ËVÅ0\u001dF¥¾ºt*zŲØBµ/s¹²¶æ\u001e\u001aüº³æÛË«j\u0007\u0005¾nhG\u0017ZK$9K¾¡h&Ï.P\u0013&VFGÛ
rFG~qQÕe6o·Ø»e»äõìïô\u0012+ÒÙB¶Þļ£c\u0005L\\HÇ\u000boYN§¢/}4LøÀà\u001bba~Ö²jµ¼¸ÇdméÈh5·JȨ<ÃÂ\b5M\u001eÉ\b\u0003qSاºþ»õTÅFgÁaòdãù:\u001a~õ°<Á
sYMÖ±zö>ö2\u001ekk;ۮͽÜ~ÃC\u000eÑ.ʾâÕ\u00154ºÊg»Çg<\u0000F&\u0006\u0016Qp»¡wÏ-\u0014w8\u0019ûèh\u0007YfN~T²MUñÒ¤©ù#m\fý
B\u000fݩչcmíL¾Æë
S¹¥'EL,>A·¥)\u000fL\u001crzÉõøêÒùv\u000e¾×B4ùèLcóçfæ6;¢7VÅûytûnµé^¾ÒS\u0004¿½.'=M[ZXÙâa\u0018=}'ŽH\u0007èpGã\u0016X\t\u001eþiuÅ«ô¦NlQD÷e| »NWÒnúÏÓ\u0007¶»ï1>²kÐ,\u0014ÿ\u000ea\u0011òcpÚ·Uܬ:\u0007eäë\u0001Ï~*\u000b\u0002cPëgå\\?\u001f9*'àX ¨íÖû\u0013ÖÖûÖ}íÖûÖh¦Æoy³$²úEÐ\"sOG0ë±hu2ÙôM±®Ë3\u0019K±XB¥\u001caÙ1Z\\ ¡e$\u0014u)(/4ðLyà×ç\"v47²È5аfÉbF_5ͤ¨üZ1Õ¦¨¶JÂ\u000es1%j¨ÙÇ1S°8aÒ¸¯ä«jhujèú¢Ã¤n\u0017D,K@
¸djç¾rDËÅÞAEIÇ,e¢¬3=}
T}Lò97Rè\u0019ûpnñȼ2S\u0005[J\u0007þwYëÊIPZ5\\?ÃÀý.%÷~HÈwriwÕ²¥\u001d´ÄÍ\u001b\u001f»j¶\u0004tñÓŪF=Mtü»ËÂ\u001b)5?ÞËuwÓáÁ\u0006\u0019HU×ÊI\u0017dm©â:\u001e¨U¼\nÊ\u00182-uîh\u001a\u0013ÿÕÕ¬YSfkÚzj]ñrÁ°®\u001cB=}OZ\txß= §\u0003Ä®WÿÔÏÂ\u0007ÒyoµA¢;\u0015¬ÜÉzV#;;7Rð²¡Ç[-,@{CݤfîP²Î±\u0006g¬^8±·Qqk
\u0002g/3ikl8o»Ø\u0011í¤Æ²¹µSO\u001aºIÒòlÍ\u0013\u001cR³ßÊ¥f+\u001a{ÑêâÁ\u00136º\u001cÒPÕªµK&K9\u001ayIÖâj±ÓvÓÊ¢:;µúxßèf¹\u0003VÐÑÃĽç2[ÿZø\u0019TóîÕÝv\\Ó\u0003ê\u000f\u0000{'#c.~@nP\u0014Æ£U9½Ï\tDé\fj_GÎ
n¾Ò\u001c£³êE|l2ÚØÿúeééN2×ÚpüñRÓ»BÕü|WÙ9ñçmÑåÆ?\u0013=Mµ;ia/Ý»¸\u0001\u0017P¤§±\u000b\\ØïH\u0016õã\u000er~tBO\u0003~jm\u00102j\u0016R\tÊ·5ßÜLM\u000fÔì§Í½¯¼³Ìi\u0015q\u0017Ú¯%ßL\u000fÇÞì¯ÃÍ¿ød_¾_MÏ\u0018i\u001fãïÆò!â §B!®.ð} í\"¼?\u0000jÁ@§»&¹\u0007*\u0002:0D\u001d\u0002@³/$é\u0016Xh\\¨õcüv§\u0018üAäÇiAE¥xQd\u0018¨¬eã¬6\u0006ÇS¬Ù¸\u0013ã\fú=}\u0006ô½P§\u001f¦yyNbg¤Á(û§fÑLâ\u0012£1^_¬pWs4sÅH>i4}Dj\u0015\u0001q~M«R\u000b´º/ÃÌê0C¥8¬¡8Ë'åøØPæÜýQÚüªq\u0017¬Kå\u0003d»åÙ
«óÒg¼\u0001ó\u0002ÄF\u001dX<À ê\"@Ú»;'ùöíÖ^ûÖûÖûÖQ¾.¼Zó¡óÏZÐUÆã\u0010ì.\u0005JX\\\u000bðÑ\u001fß¾\u0013\u000f\u000f8ýû7§S©|î\u0004ù|ý
¨\u000frÈëÝ¥Ná^·[×|ª\t³ä
>¯#õ]\u0016>ë&»\u000f±×çÅ>M_|¬\u0007³K»o\u0007*^«z\u001b\f\f\u0005ÓÊï²-^ýn\u001b\u0004\u0006] ³F\u0000nÁ \n$,-#,)Ø\\O\u0000æ® ·\"\u0006Ý)5]Dæ°Yåbrö/\tGcî--©^_Dû®°b7cÒß*©5eQaa\u001aº¢å®@_¡¸FxÛn\u0013¸\u0000ýÝ\u001eFØ>ÒJÓäKE©÷hRoir-µ\u0014½CYÓy2\u0015ÔDëCi¡¿²\f)5ÒHεt¬ÀèA4{'JÒîp,ÇXd1\u0019ÖB\u0003ge¶8ºô\tTÿ\u0012\u0016uñ¸vºØ}T³gÂî÷ÔùÂyr\u0013¾\u0006ûíÑ,\u000fó9î\u0004WlÉÈôâ\u0010ä:ôp㣹¦ò\u000b,C/9\u0016}Sü
\u0019ß\u0005aëÁì¶\u0011åMµy~×Õ\u0014\n\u0019Zâò®
íëëc¶ä÷L¹\u001e\u0013¦å!pÈH&ãùÖû\u0015
ûÖË£
ûÖûÖûö»\u0017\u0003è=}ç\u0001Z§%=}ºw\u0018þôÁ/§/#<n¸Ùô\u0001\u001c§¯G=}bÿ\u0018\u0015ö\u0001H·M|¼NI+ØË\u0000rÔ±ëÊîN±ÌkÍQNã\u0006ÚÌx\u0007ÒßëÆ+NÓ>Ú\u0014\u001c\u0004²G¼ç\u001d>FÝgø\">a¯;\u0015]R\u0010\u000b¬>\u0006Ѻç²
>sÖ\u0014^\u0006q\u001cºç·Ç>Sß«\u0000ÓZÞo²\u0014^^¿]
^õ\u0016iðúGsO¿¬\u001d\u0002®\u0013[ç\u000b¿ÎÛ½\u0014yýGíS¿\u0011~§-H8GÀgÊ ÉY\"v6+x{Y~ã =M#ÊY!q&&97pnàÕµ!õ×'^20\tr= õ\u001b!ÿ$ì\u001d9\u0002«Èx3oQKÕâïÁHst\u0011×¢}e\tvª³ýbÖvÌ8Ê(Uiq¾âÎrLøÆøhÑ\u0013|¨\u001f¶âSeûoªl\u001f4×Â\u001aFðäjù´}3ÁÐÆsyí\u000e:ºUû\n\u0017òÖº>ãTFJîñÄxÎÜqS¯Æ\u0014íí«Aü=}í½º*?U+þfP´ô0ÄW¬è8yøë8zvS\u0004\u0018ýòÐÉÓÁÉ\u0018F¦aã,ÁG8îT|xh׿ðË\u000e^ãñ\u0003¦\u001b7,Ï:~^Rüø\u001dåP\u001eÏÁdk¬x¶=}©L\u0015s{¾ÖìÙ}ärƬ
5ë\u0013Z¶¬mM-ûzwëDçRçz,Ö¬8\tRùrÖE\u0012ë±u6³EáNë\n£¶GM\u000bOxrýÐ,ÚÙ\u0011ì²\u0016½Åõwëä_¶\u0001¤\u0013q¥[bZÑAµÐCÃPU§ð^߰Ÿ\u0010ÈÔPβ°ËÆÄÞpݹÚpÂÓÐÄÇ0ê7ªP°¤\u0010¼°Ê°ÖpÁpÙpͰÓ0Ç¿Ð\u0000¨ð\u0012´0\u001f¢Ð\u0017Êð\fÖ\u0010\u0011¡¿)ß~+]_*Wß)e\u001e(\u0003â\u001cGí>\"åh£@ Ï5ûÖtûÖ=MåÖûÖGïÖíÚM\u0018æÍûì\u001c¦Ïß:ÆRÔk6ã\u000e¼¦K\u0019,¯*;¾µP\\LØxéÐÃÚZ,Í:8ÒTUxþîpÝÓáÁÛr?ãO#È\u0001¯q&;\u0010¹^ýЯ¦ÐÙ¦«,³·9®ÎRx¨ùhßýp×Á\u0004c©ã¦\u001cç-o;Bï9þ~R<Ü8ëp\u0005¾A\fÁ\u0001àscû·Zx\u0011á°\u0017«\u0001È£Á´«\u0001ÀÛAÛ×¾¿áKðpOôÐ^â\u0000<H8\b³x\u0017#\u001bâ\u0013W\u0002Ç´d®Td\u0011\u0014d\u0019l²µH±£èµ»\u0018M?\u0001 |¸øq¬8y²Èt¦¨Lg¼Ìh\u0014ÏbÄÉn¼ÏiÔ§¾ÍkìÀØæä\u0012Ædª6äüvô×/ñÛ]×C±Ï+QÕ;\u0011Ô'±ÅWñÃOÑÕ_\u0011À\u0002¦0µ§1]g0<Å\u000b¨ó\u0003ô\u000b$]_©U¥Ym\u001dì@Î;6Ñ.Q
>ñ!q1\u0011ã2\u0002\u0015r\u0013\u0005yi\u0004|Íü¨å\u000b¨;(×äÂídñÍäÝd×=}\nÇúmß·¸×¯\u0018\u0011 \u0006Xh¤>ò¬gt\u0013Hq\u0005XÑ\u0005$1²\bºX¦¨[kT]oÌÙ= ÜhÝlÜÂùÏÊ\u0007ªßn\u0004ÞiTÞe,ßmLÛc<ÚË\u0017¨/\u0017)Ï'däcB\t1\u0011\u00133\u0002÷ÇäOïôçõ± 7¤\u0003kí\u001eªX\u001fºø\u0016¦\u0000{Â\u0017[ÂæB\u0003'âwÎtíoº\u0005Sq\u0000+\u0001Cçß2Cß1E<(/ù\u0006hÔòîä9\t\u0005ÂÎä)\u0007f¤é:ÂÔ'\u0011pʹ\u0007e\u0010Fi?åju\u0002Êô\u0014ó~Ê\u00183ÇÅx Ñsò'JnâÄo0\u0011lJ%Ë'\u0019^¤8H/ÄpHQw<Å8ÑjÜÄfXÑb¼Ä$Qc>i¦hÂÛ\f5?I5e¬¶ó2L
©1p|D¬³em¢ELñ~\u0006ê9¶´ºa\u001aê2YC¿Ei*æ3mØL·\u0003\u0012|\"De\"qt:j?¹N\u000b\u0005¤\\4g©°´©d^ÉLíÄǬ±YÒn\u0016ëÙO\u000fämbDqrD1yÅÀ´±:òpzkw\tOC¢ì°Òlöê6ùE'\u0004¸¼±«mëBO\u0004ÕÜ·o\u0012m¼äeüåsäo\"Dh¢EtâDbBEjÂEfEn$\u0011Bh0a\u0002D\u001d'Í\u0001\u001fO/PÅbßeIJÛr;¿zµOfË|¦Ra\u0010 HV4e!Öûÿ]ÓûÖ\u0015ûÖûÖûl\u0016\t$Ï\u0006úgý\u0005\u0018ñ\u0012|yÙC\u0007¹áÝS¢wQ¿¯ñüáï\u0012^ç©í_Ì0\u0003·^t\u0007K2MKî»7ö®\u0003Ô4\u0011®\u0010¢1y\u0003«¹\f¹\br¶Ô3[Ô½açùÒ\u0018Ël\u0001\u001a3ö\u001bS¸CäêÅøÌ\u0015ê\fЩVç¤É~Ò
>LËã¿xdÒ\néuNûÖÉ¢ÑôFÖÿÛ·M<e\u0013¬FðôoóäãYô\u00141\u0005ÏÀ\u0000\u0012K\u001dïùm÷d©ö¾]bí[n³\u0007Þk\u0014\u001dþmú\u0014 *gÞ@Ñ\u0017Ôí*O\u001bg{jdÈÅh¢Vêp\u0003ezëtI\u000b§F-õEçÅf´Bf?g{³Ä¢]Mx\u000fb²]èfú·N'ñê-\u0001T,)®mÄdzóHeVÉ¿HÀ²_Å9pe
S:h\u001b{K¥wñËw#\u0004\u001fhè¼?#¥U\u0003ìDdöma\u000eôÅì¢f\u0012|\u0014
Nàªå\u000f}&\t%˰Mªþ ©ñLíÿ¦K\u0001\b\u001bÝÈ-\u0002\u0011Ü2\\$ô<eôݳ¸²&³= hé
\f\u0018=}WÇüæ~§¨ß\u0011(«æ]ãªà·H4«ËG^bîw\\É\u001b¡Þ¸_X\u000fL iâ¸0Kªðüª³dªT\u0006ë¢Ëµ'÷ϨyÓt0Õy-×î@\u0014Í6æI\u000bͯ>¶u:À
¾Q,ï¹ÍØYD£M1\\â&\tç=M0B\u000f ¹Gü\u0000*Ó\u000e\bh\u0015äê^xÇ\u0000§Qí!\u0010Ý9¬SAÁù>¡v³Hlz0«^µ¤ooâkµ44íkçn\u0003lüýº£¡øÍ0
åG}¦¸-µ8ªÏæ´?~ñ(Û\u0004<0£%Zqþù~¯^t\u001c>äPa\u0010 8$ = PûÖ\u0013ÓûÖýûÖûÖûÛkö;à¢Á£Ø\u0016P_r¦@Ú8¦îhöê¬ÂÄT\u0002¿çRÕ<R¯Fp·S±ýWG\u0013Q*j÷ÇÁ»Y=}ÅÛS\u0019t\\+~ïÁÞ
NR\"\u0013¹RABÚ«èߤEakÙYO\nv\u0010r5·7Ï¥\u001fzj\u000eÎgÊ#Ó,WÁ+mõ{ùÃÒ½\u0017\u001bB}Õ+%-\u0018O·Û\u0016Qé\u000e >¯/î1\u001cs®R\u0001Xïî¾d\f\fïÏ.\u0015Ë7V\u00172\u0013kO\u0003µCÎ\u0003\nFC\u0007ü\u0006x=M=}~%þ\u0003»\u001a#~Þä\u0001³o8Ú\f9V£= ñk<£Sî\u001cM7þ\u0013\u000b\u0013gÄ\u000ef\u0010\u0018w\u000e\u001dîÂE_©º\u0012»»ã\u001f2ÿ\u0015¯=}\u001fùöBàéfaî÷+Ân¸ÍBlÎ7ÅÄa,«\u000eÕkPÂg2\u0003aò:I£\u0003$y¶î´c±\\¥4xÓc±\u0007§µpÝÀ¬\u000b]5BþÊ2\u0013wYÌ-T0ö\u0004rØ63Ô)ô\u0001\u0001h]z6\b\u0013Ç!-7-Ù\u0011æ(g¬mø9êÓSd\u001bìq»©\u001aKÄ>z\u0013nä¦ã6Ö¬ªÕCÀé¾7Ó<9ð)É·î,s\u0001£ÏKQ5ìº\u0006áÕc¾¨\u0010âhÿ;§?<&\u001aÁßù¿\u001fo#XÏ9è¤Ø@\"¦¤\u0010H?ã\u00185nq$§\u0006gÁSºDõ8&GçÒr\\;ODÐaA±©ionA\u0002JBºìkGiFw
1\u000f¸í®Î<\u0004/\u0007±J»ï¸ì\"VLK\u0002ðÇ®$´Ðb9s\u000f·s¡\u001eÀJn}ÉÆøÜ¦÷]Õ4~Ì\u0007Èe#:#ºèÜþì(ç6¶®ãÓv&Pa7åÚQí\u000e\u0001*\u001cX[ïÞÞ¢\u0000!Ð- ûÖ\u001e´ÖûVûÖû<rûÖG\u0000ÃO¶ÿ\bíÙÑ)\u000fã¨/ñ}ö/Ãülq\u000fïð£#E8è)\u0017¡x\\:ä\u0013Y£i;ì#\u0005A>8êö^ãX\u000b[¬\u0002÷ãÉzQ¢§
CØV²¨ÃP¿ZºñâõæP\u0000\u0004x\u001cg®ÃL<\u0003Q[T¡ÕcGÒQBnÒ³PZ\\¹\u001eCư³X¥µJsZ]u³Æ³·Q½¡fSPÝ]3×åÓørS«-\u000eÓÑ\u001cT'\u0001|j'ïã[>ýú\u0013\u0011ÞÙ ÒÅ+qz¨
\u0000BVèLë¹EØîzªq\u0005r\u001aOC}Y\u0013oÍÀöjÆöÌDü5¥Ë-·ÍÅÝM5\u0011\u000bXؾåOV\u0010\u0017fVoøäÓÒml\u0011ÿì\u0005Mäþùjê6XZ;ûª×\u0004×½Ê[(س?â}Øm1Éaè»Øý\u0014Õ0Ã\u001f\u0017]ÚØ·û\u000b\u00171\\_êµ\u001b\u00197 Y\u0013£\u001e\\ä¹\u000b§Ù×\u001d(5ó®rø´9çx\u000e¼ÚG0\u001b²ïwnÑçä¿\u0001ÿÓÄ5¿\u0005ìYV[¼g}\u0005\"×ÿ}ä\u0002\u0012EN*O\u0013ñ5Æ®Üêâ\u0006Ëx}cS\u001cZ=M\u0016WhòØéÄ\u000f×\u0018\u0013\u0000V¢óPø7çå\u0017xS\u001e^«_= Ñ\n!\u0017ó?\u0002:\u0019¨\u0007\u000e¯QTânµÇ¼\u001a\u0011,ñ\u0013\u0007äá\u001a3O9Aå\u0019ÕÏ9_\u001f-â©é;\u001c®\u001aîÜÎïÝâ/äÆäX\u001e3EA¿Q\u0014\u001ab´ãwv½\u001c¦g\u001cW~?\u0018îã\u0010\u000f\u000f\u001aaÏ ?8\u0019é[ï¿hÎ\u001be²\u0013O®Ï\u001cí\u001bÿÔO1¾ÕX\u0002+E¸Aaý\\iZlEùVw*o3I>ì±\u0006´©T\u0006è°BãíÙÒLS³
\u0019Y\u000eyè±Öp¾¿ö\u0012üzÊà%\u0002wJæe±)\u000bµ8\u000eÅäÖÍê¸%HC4ÊPYb¥%'u¼ÀjùiU\u0014ehvçNo½!\u0017TðÊô\u0000ækmÖÂ\u0013u«á\u001dÕ´õf¬.FúZtïò\u0005¥µNkw\tQík/ѽ\u001a¸e\tÓ\u0005¤!#ó-8ë°µ¦ßQ\u0002Æà8ÁÔQ7æºÁâ²eÆ4Ù¸Bú¦@ú¬ËÇíìQG\b±%ÁM6\u001dÒ\u0004éHKæ\n{qÛøºÞ¾ö<1ÓA^ù¦ÿ÷~
«úG[Ê&û\u0013eë>\u0001b'ÖX\u0010¯C=}û©ãn¼\u001b=M¬\u0006X7f¸Û\u0000Óþ5\u001d(wüïÙñ×ì-ɯ\u000e(§Ðúà£Ë\\)\u0011\u00179O¦´Q\u0000³W»f\u0018\f#\u000b99=MëäK¼Î\u0013Crü¿s\"X\u00028àÑ= Ìó\"y\u0010L¨Ôá$\u000b$³ÓJ¤õ±A)\u0005H\u0017ãp¸3nÙX¿ndÐËL\"d\u00124iîq\\X8íÆ¢Ö®\u0001\u0005\u0018x<\u0019Þ_®S\u0019|\u001f<¯á¤$æXG\u0000H1\u0002dLDqYM¹Û~é¬[½bkm*ã\u0005\u001eñd±Ý\u0011¯·ý\u001fpð\u001do\u0016F1W\u001f«¸\u0012Zµ!ò¸\u000f´æ§Ã\t\u0014ÎjçoV#ÛE¹DfÒ\u0000a6î£Òµí\u001dYh¶\u0006°Gµëóą̊éîÃ.,KàìÞ Õç*ÌMÄlŨQ\u000b«BJÆ\u0013c)!ój-LE\u00139;'´3}®\u0004±*^÷uÊ~i\u0017\u0006JÓËX\u0014˺=M«Ø=}£ÿëz\u0016oÊ= = =}í×\n¹\\Ä¡n-Ô¼äÅË1cÓF\"/USÚÁ9-½6.+{ùpþê)µV,ÖÔSÃÀ½Dù.üö2³õé8éN\u0004vÓIÝ;ù}¢Ê:¢5¢>¦á!@,%!ÀÙ
ûÖÍ·ûÖÍ\u000fùÖ\u0002=MûÖû\u0016#O\u001c%\u0011¿Iè\u0012¢X$(Æ0\u001f\\7BQp8ÏùßIlrÐ(\u001fí5\u0001\u00141¼ãdyÕ= ´À\u0017ÂÜ©4\u00032Q6¼X\u0013&åù\u0017c<ñ´1\u0004L?ái1)òÓD\u0018Öv¢r²¬I´Ä
ËD=}jrìÈ´\u0002\b~IôÕÅ\t²\u0006ëQF¹è= ¯,B7
ØGë\u0005qÒ\\ÚM«¼·<Qó\u0004\bN§È\\7é\u0003\u0019e¾÷©*\f~Îà°ØB£\u0019ª\føÊè5E¼\n´¸d))3
\u0016J\u0003e¹ÏîJ¼¾Èâ®GJ\f-v\u0005öButÞɲ¿Êæ\u001eU\u0018éÊÖ|½¾\u001d\n\u00189ÀùÍ¡ô
-´}T¾ÌiõmÖ¦XÀåBA|ÕÙÓu»!=}\u001eöÁ\t¬.]ÚL<ÇëåçÚ¸¥\nQÞo/IA6\u0005\n3Õ}?M#¾Ô9\u0015¢!\u0017¼-1¾¨\u0007cfæ:\u0011Ù1ÅòæÎPé*ìm?¢\t#3L£m)\u000eSÅuø¬}%\b=MQÚ¡Y&ºÓ\u001f¶Y]6äNÒàuà2Ç\\kâyòÀåú_̰ÚeÛßUÿ7{Skè¦\u0010b;\u0004\u0017ù\u0010âø¶[\u001fú\u0012\u001c¡MR$-ûQyò¾\u0017µ\u0016ô<×\u0007§Í#kGY°\u001bæ!§DgTVXÂÆ\u000e¤u§3é÷¼¸¦So6Y³B\fâÅ7/ÙÀ\u0005êí\u0011Î\u0005êÂ;ëVØÑã½\u0017}\u000eýfÀ'\u0002£>¬·\u0014äÂæ³ËÇ]y\u0002\u0002eïO\nÞñ¶\u000fí\u0014\u001dþ<Ô\u0010a¢/uر\"E{axÿ·\u0015\u001f\u0018ò\u001dø·¬8_B÷\u001a±È\u000eo×_«\u000e\u0018\u0013PT \u0005!Ìu,äÃM°Ó÷#\u0019[P¨ð\u0001@,\u0004¢±.f\u0011P¶\u001eAÄ.¦P{F´wÁ~)\u0005Ê8Õ£è¦ÑI¼\u0001Ë\u0001l*¨ü$\u0013\u0005Cùý:é÷;±¤§dÑ4¦JñL\u000fªF\n~T\"qQ<z;c¿vLó\u001f®
îóxöFæ<¦æ\u0011Ô«\u0007\u0016ÛÓ3Ý_¡¹Ö©äïldo@)á\u0012D^¾nbàK9ýÞ
r¸þ²â«»I¦ÇmJúÈ\u001f·æù·Lmo\u0007ßÝ\tù\u0010ÿì,\u001a$SY¹©\u0006¥l:\u001cÒØ\u001eßLÒtÒù»íÔGùdG\u0007ÀÙK§ï¶Ù\\»¾ë;¡\\ÄÊ\u0012Û¸g= ^g¶\u0007Çqàð_%XßJ\u0000lA\u001f<LDüÉ(\u001d¥ehi5SÂÕ8\u0015Ûåå¶pßÕ¤MÅÈlK\u0005¡R¤Ëë¸Ù,\u000f°þÏI·~%\u0013çuP\u001e%³jJ\t_{éQßJävt±ÀuíÊqõ8ÈÆÏÐ&¯óUüƶY\u001fÏÅdÓ®ÀqXÈãÍȾèS\u0015ô\u001bUPÜ¡×úäç\u0007fêºXÁ©æ\u0000ì÷U\u0013òÐ¥c³{xKðêêúvÖÿ\u0005;Òûû¨ÓÇ[²r=}\u001cõñ¡\u0004³.\u001aò[©[ü©¬çO¦ã!Þ*f¡\u0002¿½íÕ\f
\u0017ïÖ\u0015ùÖÖ=MûÖûÖ\u0019Z^IÔ\u001bjà\u0014XJãÙ\u000f;/ßsµ\u0017½¹gäÙ\tOnñ)æ¿°\u0000¤Ì$úá2´kÐÕD\u0017E96h\u0012Lw²\nrü_Le«¤42\u001erì\b°BÙT\u0017\u000fhSýdºìL\u0014æè\u001bÀ,;å
¸\u0000Gc»,5ëéÙMkÆÑLyÒt¯±\u0000À<óD\u0004ø\tOç\u0003.Yìvèsw¾%\"~\u0006ê3S~¡%g5p´vÀWh¡Ç]*ô«I\u0012\u0002±Bc6ª6IÒÊ2¹Ç´0wtcÄ2cjrf\u0002ÅR\u0007=}´1Ër\u0002|5¦OÉðÊÉbÂ*ßËòÝkµ_^ËB\u0002ÅêÎ6u>Luc\u000fÖ:éF\u001c·Ëæù)\n(¯ÉóMËî¹PÜ'ô1ýÈ¡\u0016+-æZÀ~Åá,1m\fÏÒgg³Ò4m\u0004\u001eöãM\nß=MÏåÃÎ?l»_>sÅmÉVÖSðÛÀ£Ò¦.*©ZÈ\u001cÁ«á>}<Þ\n2\tËk
§N\u001fÎö\u000bC]~x\t\u0001xÊgëlÖ|ôgis¿ªD\u0016\u001c
=M^#F©;@?àï]&hÍU\u0004¿¦8ú9Bv
h¨1ïÏ9Q}ÿ¨Ø,Cäç:Ó\u0013ÈQßè9³<¬ø¸/{mØ\u0010î¤=M\u000eFLVæRsFþ\u001bsÆ7»Ò¦ í7$¼ö4\u0010Ry þÿbB/(\t±4B6B\u0004å 0Ïm\u001c\u001cæ¬ÎXUº\u0011\u000fr~þUÇðì¼3å\u0006díÐ\u000fe+ÔLX³a\u0019ß¶XéykâMÙQé¸=MvdÐ\u0002»·5[ûÍ\u0018ÕU¯ÍÑÐÕ\u0006kµUwdøý¦EæVlëÓ\u0001ßIÖ\u001cö¶ßô9·ë\fß=Mxð®£òü-Ócø.\u0017\u0016´ÐÒ×]G[\fq5@\u0013É#<<v\u000b= \u0004bgd[BNÄÆè±SS½¨Ø\u0004äv}GÜS¼øTþ¹\u00003î<qÆ@î¹wØPß+N²N|(\u0001Ç7ü×Ù\u0012\u0000ÃK+|É\fåÍ;ØÑÿù9NG\u0003Þ[^v\u000e¸uØÃVï#é\u000b>R\u0011\u0000c᯾\u000e©äeot\\Qí\u0010äÜ7éGÝr\u0011Â7{\u001f\u0016\u0006áA¬Ýi¯\u0014ìO^¼ü=M£\u0016?ª£xY\b£\u0018v_\u0018Òáç7ýN&÷\u0019\u000fµ?yÎ<\u0011CÅ_û¿\u00183\u000fï¾Z26'\u0019~ ¶!hv$P{T°À;¡ü0$\u0012@~Ó¢ØU¨9¦a\u0004&Á^U¸ó7¢¹Ê3lfPî3b0_=}â%\u00150ärb8SF´öÁK¥2:?ª\u0013(/¥ÁK7¦8ÊߥÃÞO<=}É$\u0001\u0001X\u001e4aðÎ(òßgð0<á?ã1Lþ1éñO±Ü*¨äÔ_²ÄMq¬¨£4ïÂü8móûöe\u0013ÉSºÈQl=}ã\u00178¢ú¸ÒF¶÷Oé©
skLÆË\u0002\u0018\u0013y<\u000f¼\u0002Ȭ\u0003\nªò?çüA¾¤\u001a®Mk@=M\"·=M2ÈÈm\u0000\u0005²d°¨ÎmBË2©}´äýi\u001c½¤}u2G7FóG9KëîuF\u0013\u001b¢4\"Ç\u0010úB¥u5IT¨Æ\u0002Kµ\u0007\u0006ÉHo
~:WóðSk\u0003ay:û\u0007ÅS\u0001Z-âjóÑ2é= \u0016f&/¥9¼LíÓhFÂWR9GìÔD³\u0016Ùyô|ïÂx°ei6¹Óiß¾m¦@»\f²*\u0007\u0006p]§Fa.EY\u001cI²ë\u0014;ÙL7\u0006ÒËT·kBÜܱ§ÒP/\u001bò\\\u0002d\u0012رïxÓö·\u0005~!ÒW+SKÀÄÌ QÂ¥\fÚuè\u0013bë+I1Mú=MBîz4Ávqdò\u001c\u001eÛsìiëÔJ«é}pâ¼ÛEü×JáÍʤÁ¥Å<Ùwª¡IõÅ{|¦ú\u001dRJêøz{¦\u0006²:>´àÎ<\u0013Úf·v\u001dq%A\u00165ìÈ= EÕ¯KY\u000ex©EÓvvA\u0013Ôª6ÇJÎVw1Ûʺ-ïËÑÉrUÒU\u0014ÞÈ\u0001Ñ{-EU¼{{kâËz\u0016ô\u0002ÿqëÚ\u0015XÝÉÑw=}6}¨Ìç\u0004}]S\nQ\fÉæ\u0006&,_TPóÏ!³Þ&dÖV\u0011ɱå!X,TBÖÝ)\u000fOm/BÈ©C[»i\u001föìµ°JfºÒË¥\u00116äãz\u0018\u0007\u0007v\u0017ÔRoÊ5ç¨vV\u001fúfôÞVnëÔq<õæ\u0003ÿû\t]ð®¬|[3ûQ\u001bÓ£u§[(t\b\u0000'\u001fG}j½hGR\u0001ßN¤çÛxÍúep7gç³Ò»\u001b\nýÅCYÞ§Pñ\fyf/^3ùηt=M~Î
\u0015r[Ù¯W7\u001a8ñ=McAǯió\u001aQÝôï£|\u0013\u001aùR ÐK#<V:@Õ «Ó&IÚVèM³aª&\\¨¶\u001f-\u0011jPdé0\u000fd¦\tÞQìÓ?}Vì{ñ1ú\u0010ü¤æª1\u000eO8Å\fîHwÍféÌ:å\u0002oÛê÷\u001d¿\u0001 K! H8ûn~¬Í=MVû{ûÖûÖû\u001cÎûÖ=MY<1b1ÕÚ«¸R}äÑ=MBD7e4\u001cH»mìúü\u000eö0\u0003\bIÆâlQcªùiìÓoÜ.)µ\u0012j8rkâÖ~2\u000eï²ùMÁ\b5)}Þhx\b´B¿´OÕÅd\u001ahÉTgj¿$IkÏjY\u001euê·,!9ôµñÒϬÑ
l´\u0016º¬/ÿø\\7´sþ¼\u000e\u001d\u0004l½G²¼\u0003÷\u0005\\\u001aN\u0007¯g¡Ë°¢\f\u00155´\tÏÀñ%]²5¬ÙÁ\u001e/%»$E*IY{é½\u001ej~íw\u0012]y©\u0012Æ2ëoE~Ϫx|e\u0006&J-pq¡ª\u001fst4ÙÉÂ\u0018o5EÜjäõ4ÀÆè U\u0011%\u0012ÅÈésm¦¿b~-îØ&}#-\u001a_ã£-7ø\u0017cãFaëÜbzfö÷òÉß¶z\u0013Õä³Õ¤±\u001fð\u0012äÃ\u0003a=}\n\t8õogÓZ*G\t~÷\u0011\u0016»®C]+*\b\trwoÑÞÌ\u0015\\hðÓ\u0005ʾ¡\u0015´9P\u0007WÕÖ¡åÝ-T¿\u0000ßý&¾~VÐ\u001aÓ¡¶.C\u0001ÜfõTRËDZjSè:iØÄýgC¢íä\u0011|F\u001atW1=M\u0002\u0014T3ÝÖ¹\u0010¾WÑ\u000f½©6Sª<vvQsÜ«¹[³í\u0014ýææì\n÷\u0002&+ÇÓx|ñâ\u000b.6\u001aoÐÀüê)+î766Ì$SzyvöjØÍµåÌ(Ìì\\e\u001fäê¥OQ;júØúâfÉ1VÖM×A<ÐQ\u001cÞ[5bV5ÑÃÇý[§6ù)Äù\tëî\u0011¿~'=}+YhÉ\u0007= õïaÕÙ.\u0006FXØåa\u0018«£6.Gë\u0012XÙsã©Ç§³ó½¬ù\u0006D\u0019¼³w½mNêñݲ«\u0019=}}\f»\u0000\u0002\u00017ª3NÂï}4uÛÉ¿þm\u0017òæÔSÄ»\u0015KüD>\bÞ»ó/·¢>Î\u0001\u0001fC/÷'ØÒàã\u0019/çÏø\u0013íãV·àÒ\"s)\u0014\u000fIð¦= Ù=M\"yï+8ÿ)ÜRY¶õëÒª~\u001a\u0010rÜ·àZOÏ®i\u0002
ØâgÙ¸/c)?º\u0019¸T\u0014ÿ·\u0018°\u000e\u0011±ëgÇ¿^\"¢¿s%\u001c\u0014Í\u0003Güûïñ¹ú\u000f\u0010ÃÛ\u0000ý[_Em!
-ðÍ § Sæ%(Í-Ð\u001eh ¼¯#\f²%é?)Ò˰¼m¢Ì;4DØPè\u0014\u0004@ò\u000baÚ-ý1¾0K˧p+ñj¨]»bXo¥\b\u0010BdºZ¬^¸ÚÅâL1\u0006\tÐP¹¶¦ßGì\n{\u000e\u001d(\u0003\u0012dH¿_b\u001fz1ö\u0014¨z¤{B\u0018îdH\u001cJb´~9ÂlL=}
ëH{§gùÓTêÑ]qîþª\u0011g´k\u000e8\u0007\u0013åXySæ¡\u000eQoѬ9Ç,1\u001bë X Ð1àpÔÓÛÖ\u001dîÓûÖûÖûÖûéWs\bIðt\u0015DÈ\u0007_];\u0007\b9Òko\u0005;*ó\u0013\\«¡U>#=Mê;Ð×U\u0010´¡K,tZ@\u00113#;29Éyàh\"¬LÊ
d\u000e\u0004\u000etCýV;iñè¼fLmѸ¨6WÑÏ©)&¹øYÿ¤Ï©\u0005×l\u0004\u001cxVS?ÜÊwPÓË͹üÃí}\u0006üqS¥?»\t¼ðâ¡6rçLtÈrw+7GyhÛá¢öb×w6¶ÅÐi\u0005·Å= Kr?Kz\tÖíê¸ëv\u0006ÐÒZ½v;ªûøÿäæþ¡VìÓÑ×åWl\u001aÃ[m}j¶ÑGùP[\u00176ùùÔÿîÀ[ê\u001fÔ³SÛ£[~'ë[Èõæa¶±.nLð\u0013°#\u0003'\u0007[\b²óiÖ ³m5½´\u0007\u0004áHG=}·[ñ=}R\u001c¡³Ô½¬é\u0005BuðåÀjNÞÕñÔ«Kë}䝨x\u0010àeâßN\n\u0006ÓE\u0000F
EWUúÙyRêí\u000b
¼§ýÔÝ\u000fåW\u0017è\u0004\u0017@u\u0010ðʧ)C\\z\u0002\u0001\u001c!/O\u000eð\u001d\u0014°^»·\\>OeêQÕ\u001cïÁ\u001f\u0013bOÙ\u0017ióë\u000fO~¾
\u0014æ\u000e})?û\u0018Ràg®¯t[|Ý\f\u000e?-ò\u0018I\u0012k\u0011SÁ¾?Å·¿\u0017s\u001dìø\b§Ó\u000eÞ\u0010óS ¬%#L®%\u0010v/ÐÇs | cK#¨g#0à\u0016GàÌ<a²\u0019¢ÔN7\u0004ë@öÁa&O(0\u0003\u0015@=}_%ù±NäO¨°6Âc\u001d0k¥ØRUd¢A¬b´>Â\u0002P\u001d\u0012¥¹4.ÓиU=Mâ:9ë²P;\u0017§yKìüÏæ¬ðí6ÁnÑ(T¬°Ëo¤¯óB<þ8ò¹(Õ¿gH¸Xê£Üq§ÂtÊ4EiûH;¦gÉÙHê¿]\u001f\u0017\u000bq\"¿Â¼j;ÃÖIæSYfûZQþ«ñ¬ÇËô\\6\u0003\u0018£8¾ÿQÆ
«\u0013ý5ÇrÉXK»ä\u0019õOn\u0011¹æ®\t¼lO\u0002´j,\u001d\u0012âÚ@üÌ ÚöpHä\u0006cŽð\u0004R+]s(\u0014MDð[FðÅÊ= «\u0016\"Uf*H«%ì%r~7\u001caw±ñ±:¢h¡:B¯Zªì?MrÉhº\u001dB[¨T\u001aD²\\Íär£¤Hj|ÉAñijä\u001bñ2}·jûGñ\u0011¦ä«¯2Uóè<õëX$¹\u0011õ
þ°qgél{L\u0013¯¬\u001dºl\u001b\u0017RsJ\\Kİ[ÆpÒªbÇÖ*ó§I»Ï§â³«*~I\b²ÊDé\u0017¿a5}µïíu¾,pY_s
ëFµÉÇuZ\\qI\u0016wEgçnµåUzUðP\u0016ôØSq\fJè'×U&ñè·ÎH{,eIJ4\u0005?£\u0002 eu0eñûÖ}k\u0007îlÖûÖûÖûÖëëõTÔ÷ØU|Ãú\"Ó[Tê~ôx\u0015rC,½n9î·ðé=M\bÌØ×n\u001cIZî:½\u0001g\u0016þñ\u0017eGc£\u0012Ù-:ð×Êá\u0004Ö&k¦:Ì¿Ð\u000b\u001f]Ð\u0001ÉáÒß&ór»,LòlSñ\u000bº\u000b\u0012¬éñEF\u0003\u0017¸ÈKFIþ¸¼©Q@Ãeñ²6W«^LR\u0014Òø\\ñb\u0019 e=M;6\u0017þ\u001f\u001fNÑñêø\u0014òUÕ\tõç\u0006ú»bË\u001a>ÒYóFég;_¾ãèÌ.\u001bêXÜ\u0013¼\u001fy§h?§ú³=}ÚÌ8ð\n-§\u000f=}6æ¹·ù
I·\u0001®k·fNÕÚdFØÄ}\u000e\u0012ÏëÞKNC~ÛQ\\2Ç\u0017X~ôÃ×\u000e±ßÎçÅî>}gÄ|\bÑÛ'\u0007\\n^\u0011(|l\u000e\u0003\u0005\u0013Y|öÇu¿ÙÍ,\u0012Xã\u0017Z¿Dg\nü\u0016y\u001añ\u0007ü |y\"·*8'\f0ß{= ôÑ!96'4ù9p\u0016 \u0011Tà\u0019=}E/ɰWÄDAùthü¶AO\u001a¥<¹2Ruhë#\u001fÝA_~§¯N¿v°ÓÐ\u0000bea\u0017:¢\u0014=M=d{'+¼¹¢[\u000b$í®(~ÿ4ÔO2kr]£\u0004qiAmRÞ¶\u0004i¥Á²iÓD÷kÒ?µTÜE¹\u0015~V¶\u0002eîÂ*ÍÒÂme\u0017ª1£5³HÆÏul[ĸ}Q\u0018\u001açÀX (µ= qWûÖ\u001b;ÿÖûÖûÖû\u0006\u0011ª®q%´t\"\u0005\u0012+ÄÊL\u0010v0øûj¡Ús$\u0002Î4XÜwÀ\u000bE¡Ìï%n\u001d6½xD.±ù
d\u0012U0ù\nª´\tNÒÔhá%B+רDXIò\u0019Î赯±zl©áEN5´hwuâ´D×®\u0004\u001dEÂm±HØbÂù>©î7Dæ^±x\u0018c}¹¹
4·ùrkµNSË£ìðARMèô|C³\u0019 ìÇëR\u001b¿ë,\u001bMsC±b´*ûjJ$42º*;[JT8Ê\u0010¦b×U*q/H,ßÌ0\u0013Ùâ *¿3ÈXytn4wé{k
¸ÆÛ½jÞaJ}ÇÊ\f|Á\u0012×já\u0013J\u0016CµQuVåöؼn\u0003aHuT2):ÉzÄ\tͱ¼f\u001c¥:V\\_Æ\u001aÆæÊW:£\u001eó1²\néÁ\u0013´îªZZ¾Á³Ê£îÑaZ=MÇ\nDyÁÓ·n\u0015ÓZ÷\u000e\u000bø¿¾fW\u0010s9üíðÈÜáþ&&ù<£A½-\u000e/UH^ã\u0010J£S,2½WÈ\u0017P²Vø2ã\u0004J³\bmÒµWIÿàÄÁÂR\u0011§¸$ól\f5FâN³l*üSi\u0012á\u0004}4«ÃéLÆ\u0005Ðjy\u0004Ê\u0011lÕ¸ÿæÂ_«\u001fGxLqÓå³C6]ÏyäQ\tÇeªV³óûäMóÇÂí\u0013fV\u0015|»U½,ÕqÆùL{\u0013§mÁsVÍûL\u0001ÏíϤ.9R[´K\u0002ðÔª£ÿôÁ£\u000fðÍ\u0004._ýá{\u0001ðÇc¹s.\t[=M\u0006¯ã¼$Nf·Ü¥|~tyðèÅ©\u0003\u0012ÏÃë²aNõFÛü\fò«k´ÃNCÏÚä\u0006R\u0002{FÆg\u001bt>WtH=MQǶçwùÃk¯I]]\u0014hWëc|\u0005Q·çîs>¯ä=M±\u0015×g¹^ò\u0019(\u0019ô±{÷ÇÉ\u0006sÃÕo\u0011þ^\tf\u001b\u001c½\u0005µïÚ}^o\u0019ôÜ\u00053\u000fµïé¿^#\u0003$4k3_àðò!Y%<°\"ºU/ôMÀ\u0015Ð ×s#zM-ØEÀé± Ý·#Ò^.8\u0018I\u0000v´°\"ib.YtHDå°ª-bÚ:Akû¤¼\u000f=}\u0012th²yAv¦´ÿ1r\u000bh$£\u0002 )5eñûÖ=MZûVÞ±]xûÖûÖû\u0006\\~5ù°ù\u001dÕéN³ßc\u0010\u0011\u0003¢~3|\u0019dÐ)áèb¢eaAC\u0002?áúf¢\u0006=}%ù&(n®3ºK\u0018mFÛk0n*ÝA\u001aÀ\u0004ñ7DÍþ³ü\u001fÍD±{ÌÄÄ-餿EoÄDÊ¥jWé}cE\u0019GkºL´ì}OÙØw\u0012ö9iÁ{5\u0001eÓ75þw¬\u001dvQC×éìvwl«ªq)e¯ª&}4°B÷$å«\u00134çwKF\u000ftD®KØÊØÏøóº\u0012\u000e\u0018|S@«FgAí¶\u0012:KU·÷D\nÔò\u001cýcÈÆòí¢%º\u0017ö:\u000eö\f\\Á\u0019\u001cºF¿\u001eó¦þT\u001fì\u00107¦a%,ê:NöR\\\u001dË\u0001³´AgcÑN¦#-5æ9êîV4yèÚõ\u0010\u0001Aã\u0003\u0007-ÓLøò\u0007%ëï\u000fz\u0018êkë\u0014â¶_Jxþ³¶-ßy2ëËMLóÚxj,Ô\f;©ÓL7¶
»MÇ\u0017{¿ÑÌßé\u0012 Ã\u000fS®ûÿ´\u001fôQ\u0002gçÕÜ®¼Å<-ÊY\u0006Zçõß=}?V´\u0003h\u0016\u0014:\u0002¸VáÑ®ï*ç\u0011M®S'Ræ\f¦\u0017\u001d¾uoFß\u000e\t\u001eÑ\u0007ß\u000f]EþM\u000eÙpéScòßhSïÀn¾r\u001d\\÷fl\u0015ßðÓÇ\u001a.ï©ã¾ÿîîÿ:\u0018\u0019áà¡\"
þ(ì\u0019X\u0010î\u0017¡fÙ\"ª&ÞÉ8H\"Ë)\\½(´<õNPÏ\u0000\f°àk3\"ù'ÊN+\u001cÓQðoÀû\u0011à k¡Ad&]<\t\u001d|Ä\u001d»±Ú¿d\f\u0017±ÂÙB?7üsAÒÅv¬\u001c\u001c\u0004Ë&±ÓÍBãÚfÊ,¨\\TZRÄ\u001c¢èÅu±ö{C>¨¬Y5RL.p= $!0íÖûοû\u000bíÖûÖûÖ=MÚ§\u0011p\u0004/\u0016§34«Iø¶x°Y½.a\bâ¢
$gÊ)²W4èö¢£}%±ÝÀú@áØQ¢\u0003ó$6(ÒÌ6ôûJ\bÕP\u000bÄ\u000b
áÉÛ¢{ï%o_*~\u001d6Ü.G6cG±\u0004:éî²\u0019%D#kjºv¶\u0004ÍK)ÿ|Ù£¶,Ò^²äãD·æk¦î´\u0004y<÷h\u001a³D_@ùrr\u0005Ò\u0004\u0016=}iû²w\u000fE½j¾¦vT®ÊX=}oq@¥~fe¨üªFe4»ëHâusôÎϸýbÏÃBÉrô\u000bÃ8UtѼ\u0002\u0011e䥪¬Ë4ÅWK:=Mq^Ê\u00074\u001dÎK&\\(\u0018Åâr\u001cÍ0vsRºF}mØ4º'9T{¦5òôJÅityÛÖf3mÖºPýT»ÌÆmè1º\u00193T¥NLôÔ|Å×i<.\u0018l\u0000Ïzýõ|ÊI\u001anÓ\u0010»F(cÓ(¦ÍQ,12:\nÆTìë´ó°Ê°Áiã䪦cU-\u000f::\u0002ÕR4\f4\fÄÁOã\u0000a¦éÃ,G9¶ìRL}xÔêP³\fNc¿c¦Ç,µO9ÒþRdØ\u001fòÐ\u0011ÃÁ\u001focåp¶±LzfDÔ4o\u0019¸áR_§Å!ë;LÃëyòwÓ\fÍÉöôÛÅm7ë+
\tðû\u0012°Å\u0001Hë\t©¶¢SM+7xâÍ(V\u000bM\u001b×y\u0002\u000f+gM{ïx\u001e}Ö´Þ9\u001cèÒ\u000fÅ\u0005\u000b'kæ?¶A<#â[¶f<\u000b´ä\u0011SÕCzg²|®\u0014%=}y«[ÒµÉ\nhsç±ÐÑCKç\u0007.®{ý=}ͧ9\u0002È\\ú±²\u0003\u0005,çÆ\u0019.Ûì±Í\u0003\u0003çª}®æ'=}±oXÖ¼TÚ\n\u0018ûQ\u0013±C\u0017kçÑ\u0017®\u001aÿ<¯\u001fXZ§\u0011ܯ\u0004\t6ó\u0013RÞÇeRïÅT¾²¹]Ë5\u0010Ⱦ+Å]¹J\u001aõ\u0010¼Ï\u0007iúôóÆÕ
ç\u0000÷ý³îº\u0014\u0011l8\u0004YPâ\u0013¼G\u0016toÞù¾Z+]ý·¦Î\u0015ìø\fyÖóÓß\u001bqïîó!,\u001c&è!+@&ãùÖû\u0015ûÖ=M\u001a{ÖûÖûÖ\u001cCàª!])P\u001cu ?\"ô\u00196@ÿ¿ bXþ§<\f¸6óñRÞCrç\u0007t®M9<ýÒYR\u0006\\H\b¸tìa9ç몮õ=}ù\nZîUÔ\u0001\u0018ûöQÞÓCoç\u0012 ÏñÿѨÿgYv¬D¹\n¸Xë\u0011ÞÃ\u001drçåu®|;<³×\u001c}®ò'<Ó®Z~½\u0004Ù\u0000\bõ\b¶C\u0004#gñÇ®àKçÚ\u0017®\u001b<±Y\u0012\u001eT*E\u0014/OìB\f¨I¼¯G\\nLjA\u001ckK¤éLdèAdìK¤KD$OFOEÜLO|ÏB<ÌIÌÈG¬LA´KD=MD\u000eF<\tMl2Áá A\u0019p\u0001éh\u0011XÁ\u0011Aî,\u0001ô<áM4òN3NÌ2Ï7\u00021Ö\u000f0Ê\u000f\u00158'%[FdYMì^OÄÚBÌÚAÞKÌ\b\u0013¾)\u0013)Qÿ+c^+¿Þ+-\u001f(§£IbKcãK¯BK%H3\u0002\u0018\"E{rerJ§óJSI
ÓIãI'\u0012Iÿ+I9ªI\u0015kIãëI;JI÷ÊI_I\u0011\nKÙ:KµºKí{K]ûK£[K\u0003ÚKóKÓ½R׿ÿ'\u0019\u001bP\u001f^j9Tîçm\u0012\u0011óþL¿_o©×h\u0019ÙtÙÞrùÔv9ÙqÜuéÚs\u0019ÛgY= 9dÉb©fÙ~9yI}\u0019kyoÉ\u001fh)\u001dly\u001brÉ\u001ev\u0019\u0012a¹\u001ceé\u0012ã\u0007\u001fv:\u001dwþ§P\u001a§QBfPÆdV2fW\u0006åR²äSGTGUæÄP¢ÅQÚÇW>RJSV\u0007T\u0002\u0005U|!\u0003CoQi\u00039C%
\u0013¾8é9\u000b:;8\u000f;;yº;=M{9«û\u001aÜ.fÄNf\u0001\u000e\u001eÍ·QÕÏÑw¬g\u001d¬p£¬tcÂC¬\u001aÃÎ\u0003¬Á3s¬Eó-Ó¬½\u001d+¬c«\u001d|<x\f~\u0003ÙÍWv\u0012\u001c×:Ã8;M\u00169\u0005/:ù®8Q®;?o:\u0007î8Kï;#N9ÕÎ:8ÿ9g\u000e:\u0003>\u0018×çf¢æ½7æ¼÷fÝfì¯æ\tï^\u0007»±\u0013Ç\u0011\u0018×%Q= n!= Q0ÌûÖýnûÖ=MûÖûÖûÞëçSÒSl\u001c_ \u001caGáqÁ¬,Ó\u0001Ö±¬pq\u0019ñ¼Ñ¬³¬Ú\u0011·)\u000ei¬\u001fé¬I¬Ñ\t¬(9\u001dCdVÃ.\u0003NÃe~\u0003ÃAC~Qp)\u0003IÃy
CEÃ5wUCmÃy{}\u001fÇ¡qűQÇ©ÄÔÌÜÄ\tT=Mì\u000e|\f$\u000f\u000f\u000b\u001d\u0011\f<\\<\f\u001f/\u0013ÛC¬Rìö¬Á\u0003¬%3¬=}³¼ªÿ¹º$¹d¼ä¹DyÄzÄ{\n^¶{\t\u0015w;I÷:©ö;QWZ\u0017\u0003ÿ6\u0003\u001dV\u0003\u000e.\u0003ôNë>ïÛï9/X\u001bAÃô1C\u0015Qïâ\u000b¼T¿VF½Uz½W\u0012}·[wüãUÃû-Ã\u0000M\u0007Þ\u0003ýÇ\u0017*/\u001dî\u0003\u00143\u001dìH\u0014â\u0018\u0016òx\u001dú\u0018öÝW\u0016O¿¬ø¬c½\u0011Û1\tÇÑ\u0019·q\u001d¯\u0011\u0005Ï÷\u001c*Bn&5£«?Aä¸pBq8ÑAÌH4~¼©@f2/B«vqåÛÂ,\u0011YÆ\b6{ªCZæ3Ï\u0002«Æ)åÍdÂ2XÉè±|LmAÂÅ2jM~Ç1õò©ý\te²¬hF\u0011\\ÓH¹uLëF¢\u00050-ª=MÙdÄ\\Â~ÑK¿¨pà\u0017+ªÕ¥ä\u001c1QÉÈ÷JF²¶0MkªõÅäûòByñÞ¼xu~\\Ë@2w2ÕK«)uäñÊ\u0002U±Î¦Èws¬ÎEö6o\u000bÝBñС8úðÿW\u0016æîûä\u000bW\u0013WíeÉ6îør\u0014EÆÖ6ú¨£åõîñþ\u001d0ÁZ©8½]w7±ÁËèùm4\fNª\u00170
ª*ÝdÅþÂ?ýu_qÎßS-0¥m\u0004µèRpÄ:D\u0002/\u0016|cd°Á\u0002Ã×'ãäÙ\u0001\u000e¤=}Iæ¯2]gÛ»QÂøx±¼(_þS[WaÌ»Hæl2ÍF\u001b\u00194±Ê\u0018\u000e=MüT_}\u0014¹\u0001ÚÃy\u0002³×cÓåäY\u001eÿ|\u0007½GÞ[P¬|\u0000¹7ªx«ä=}+6Û§EBår\u0007éRO\u0017v\u0018Ù×K\u001d\u001eJ1Õø\u000fÍç:\u001fÍØ\u0007\u0002Z%2/PÖ½! &ûÖ×ïÖûÖûÖûÖÑÖQÕ1³éf\u0017\u001c®ßT\t×i3î\u0018Y\u0016»Til»÷FmÁ\u0019òDS
¡ÿOTwfNÒO«c\u0007EöØôÅêRÝüøÄy|:ÍÔ:\u0004éÛúÙp\u000fóÍ6v³Ü°¬Ú\u0004#´÷F§ðÃÙ\n³\u001b\u0011\u0014ÿ\u0004½\u0012ÞðJÏBýV\u0017§ìûÕÎù\u0001_¹\nÜiÛk;ì:\u0006ÜÕç\u001aÏÑÙ¿(ÁÜÎ\u00190¹/\bs}ÿ\\¸{Tî\u0015Ym½\u0013B~XÂ\u0005F¼gýW~_ÆE¬bçý¾^\u0001~ªðÃhÀøI\u0010\u0010=MPûe7ýºCÜöÞª¯ï9«sȳ\u000eä1þôjW'oÆËÓ¬ûOã9g0|\u0016Æùå\u0003Z\nÒlE¤ïÎìùà=}º\n¼\u0014\u0005@¯Ë«Q¼3\\ÃÑNé(®\u0013¤öÚP#øãýa\u0016¿\u0016ÌDº\u0017Õ÷u9ëq\u000e/VÔ>·ZôÝÂ]«Ùês\u0006bKº\u001bâ=MAU9îvÂIâ\u000fá\u0016±è±\u000eQí8ï.BZê}Ç:xä)¨ö¢³z\u0014Ag¨\u00079\u0017´ÁMyçY¨\u0015î\u0018®rÔH«Y= H\u0017äGÄ,í9ä<Ö¡D>«×ÁLm\tãv° lfÜcªp³Ö,JKùë%ÂÙCñ\u001a·T\u0004Ã\\-\bè@FѸí<\u00022±üÌA¨7¿\u000fèiQÊð°\u0016\u0014$syäZ¬«¤²àÚ\u0012'¦÷\u0018°Ïéd>ªq¾ºTÂU}\bëpæQL=}ûøëqî¹@Bi\u0000Æ4à\\êóÜè\u000bÜëgá×@KÙèo1jr¶jtÃV\u0015lzó¾îÇW\u001d8äpfP¦\u0011lJS¸í|6иÅÌ5yïfVÓ=}\f/\u001bøïa.´¼\u0000DÇóñ¿\u0007\"·Øì5Î\u000b$0h0áß\fã\u0012?\u0019Ý¿»\u001b¿ä\u001cD\u0016G_©\u001f¤ÿh\u001cÄ_h\u001e;I\u001f±\u001e\u001e\u001f\u0007\u000fv\u0003\u000e\u0000n\u000e\u0002\u000e\u0001~\u000e\u0003>\u0000á;ò=Móý\u0003\u000e\u0018\u0001å¯\u000f\f7\u0011¯\u0019Éý#{} \u0000·Zë´ÎÆNÏ\u0011RǽûV«A¹³ìÖûÖyí\u0016\u000f\u001bû\u000f¼\u000f9g\u000f:&@*!e*$£vËbáª;Vpc,ÈåE\bUV!4yø \f\u0014Ô#\u0015Û\u0017%î%i\u0000[óX\u0000\u0015\u0013¢î¾Ù@\u0016àÀG!þ¨@Ý\u0013IÐN\u0011Z= Ýóá\u0012¤\u0017àYá /Vâ ÷6XH\\Øü&\u0011ð8ûwâ6õ2@ý \u000eÊù.=M+ç-n¢ò|øM/<ýNÌSY¬Ý)z¿\f¥Coá\u0013\u0005Îã±\tÐÁïXÙ£!õÜd?¯xðì\nÁ\bi;ªäÀ%n= =M+W= \u0007ÓÖc[\u000f\u0017aS\nFÁð]NôÝ'= qr\u0013\u0005(¶ù¤nü«òÿ¿d&ÿ\u000bÈõ\u0013T4Þ\u0007=}z|ö ¿OW\u0002×SM\u0018tdH.ÏãRX&§o3Ø\u0007\u0015ÜXÍ^\u001eÊMí\b£W´iâ\u001b]NüOå£S£\u0006\u0002\u001dÅ·ç÷\u0010\u0000Ý\u0018§½GÑ\u0003\bU\fy¹¦ß\u0014§/6P0\u000f(C\u0019úýb\"þ¥°VÙÄá£ÓÙ@¾Y\u0011\u0004ýò\u001aD{òÃv?EP©=M\u0002Bé\\Ä\u0004½Yä\u0018ýRò\tøfâë\u000fEEf¼D+gC×úDZGÅÿ±Ç?TzÙ¡±ÏÁÕ¯¦ðvZmT}3\u0014xËz×cºrÑM=M\fc-É©Ô7½wæc§Î»cû¾yfÙWòÆÝÔc¥³ô\u0004Øf«Äñ·9ø%\u0019g:y^+{U]¤\u0005þ
[&fÓÏYë«Gªõ¹¦Öð\u0001þ¬\u000fmo\u0013Ûø?/ÛS.[S9ÛùC
/û2²Y£ÎÑ%/sy\u0000¢×ÌùJ\u0014W\u00126Oí\\g\u00070^JùêßÏ0í[\u000e\u0004Ü\u0015'Ï\u001eÔ>À-¿[ÔW?Y]±\u000f\u000b\u0004ØÙÃî<~ÎëR~Ì\u0004f¾Z/×¼_á\u0013¾Þê+îo\u0005Ðñ{Þ\\e3K\u000e%©¹§íB¹§(c=}ËÈ·SzÔn\u0002\u0002\u0004f§èx}o\\9öf|%Ýå¥~©\u001aIÇ\u000bü\u0002ñY\u00028}Ffú@Rú\u000f1éþ3÷\u0018ËótQø\u001cvû|³Îa\u0012á,Ó\u0014é>BG6Òê}Ã\u0017J|¶=}\u0000°\u000e\u0015\u0004öf6õk¶ÌºHgNjÒ{æ¾M;9·é§WèO±Ä\u00033Ò\u0015ËÒy\u001et\t\u0014;ù´\u001aà©a|Ó^\u0005!ÝøûÂÄ\n(VV¸\u000bÇÙcÏ>yoçz\u000bÃv\u0014òG{3\u0015Þ£½c×\u0017ô\u001d\u000bíÅ\u0017é;\u0014°OÛ\u0015\u0001G\u0014Ø<w\u0015ÜW>\trU\u0016]q{û'ùÝ\u0005í\u0016r{*øï?t-í\u001agùWÿ
\u0016\u0016&§]\fm}\u001b×ût¥Ë~ß&>&Õv!b#ÅÌ\u0012\u0013q¢µ|jÍüùÉ^Æ&ôþ~s\u0012I\u0019µ\"\u001f]d)uâ´\bºvk\tÅ\\<Íÿöê½\u0006Â\u0001\n\u0002ïB\u001eçϧ\u001fmÙIól\u001fÜo\u001bëVb¦¯éWÇû\u00103`});\n\nvar imports = {\n \"a\": wasmImports\n};\n\n// No ATMODULES hooks\n// Begin runtime exports\n// End runtime exports\n// Begin JS library exports\n// End JS library exports\n\nthis.setModule = (data) => {\n WASMAudioDecoderCommon.setModule(EmscriptenWASM, data);\n};\n\nthis.getModule = () =>\n WASMAudioDecoderCommon.getModule(EmscriptenWASM);\n\nthis.instantiate = () => {\n this.getModule().then((wasm) => WebAssembly.instantiate(wasm, imports)).then(instance => {\n const wasmExports = instance.exports;\n assignWasmExports(wasmExports);\n wasmMemory = wasmExports[\"l\"];\n updateMemoryViews();\n // No ATPRERUNS hooks\n initRuntime(wasmExports);\n ready();\n});\n\n// end include: postamble_minimal.js\n// include: src/ogg-vorbis/src/emscripten-post.js\nthis.ready = new Promise(resolve => {\n ready = resolve;\n}).then(() => {\n this.HEAP = wasmMemory.buffer;\n this.malloc = _malloc;\n this.free = _free;\n this.create_decoder = _create_decoder;\n this.send_setup = _send_setup;\n this.init_dsp = _init_dsp;\n this.decode_packets = _decode_packets;\n this.destroy_decoder = _destroy_decoder;\n});\nreturn this;\n}}","import { WASMAudioDecoderCommon } from \"@wasm-audio-decoders/common\";\nimport CodecParser, {\n totalSamples,\n data,\n codecFrames,\n header,\n vorbisComments,\n vorbisSetup,\n isLastPage,\n} from \"codec-parser\";\n\nimport EmscriptenWASM from \"./EmscriptenWasm.js\";\n\nexport function Decoder() {\n // injects dependencies when running as a web worker\n // async\n this._init = () => {\n return new this._WASMAudioDecoderCommon()\n .instantiate(this._EmscriptenWASM, this._module)\n .then((common) => {\n this._common = common;\n\n this._input = this._common.allocateTypedArray(\n this._inputSize,\n Uint8Array,\n );\n\n this._firstPage = true;\n this._inputLen = this._common.allocateTypedArray(1, Uint32Array);\n\n this._outputBufferPtr = this._common.allocateTypedArray(1, Uint32Array);\n this._channels = this._common.allocateTypedArray(1, Uint32Array);\n this._sampleRate = this._common.allocateTypedArray(1, Uint32Array);\n this._samplesDecoded = this._common.allocateTypedArray(1, Uint32Array);\n\n const maxErrors = 128 * 2;\n this._errors = this._common.allocateTypedArray(maxErrors, Uint32Array);\n this._errorsLength = this._common.allocateTypedArray(1, Int32Array);\n\n this._frameNumber = 0;\n this._inputBytes = 0;\n this._outputSamples = 0;\n\n this._decoder = this._common.wasm.create_decoder(\n this._input.ptr,\n this._inputLen.ptr,\n this._outputBufferPtr.ptr,\n this._channels.ptr,\n this._sampleRate.ptr,\n this._samplesDecoded.ptr,\n this._errors.ptr,\n this._errorsLength.ptr,\n maxErrors,\n );\n });\n };\n\n Object.defineProperty(this, \"ready\", {\n enumerable: true,\n get: () => this._ready,\n });\n\n // async\n this.reset = () => {\n this.free();\n return this._init();\n };\n\n this.free = () => {\n this._common.wasm.destroy_decoder(this._decoder);\n this._common.free();\n };\n\n this.sendSetupHeader = (data) => {\n this._input.buf.set(data);\n this._inputLen.buf[0] = data.length;\n\n this._common.wasm.send_setup(this._decoder, this._firstPage);\n this._firstPage = false;\n };\n\n this.initDsp = () => {\n this._common.wasm.init_dsp(this._decoder);\n };\n\n this.decodePackets = (packets) => {\n let outputBuffers = [],\n outputSamples = 0,\n errors = [];\n\n for (let packetIdx = 0; packetIdx < packets.length; packetIdx++) {\n const packet = packets[packetIdx];\n this._input.buf.set(packet);\n this._inputLen.buf[0] = packet.length;\n\n this._common.wasm.decode_packets(this._decoder);\n\n const samplesDecoded = this._samplesDecoded.buf[0];\n const channels = [];\n\n const outputBufferChannels = new Uint32Array(\n this._common.wasm.HEAP,\n this._outputBufferPtr.buf[0],\n this._channels.buf[0],\n );\n for (let channel = 0; channel < this._channels.buf[0]; channel++) {\n const output = new Float32Array(samplesDecoded);\n\n if (samplesDecoded) {\n output.set(\n new Float32Array(\n this._common.wasm.HEAP,\n outputBufferChannels[channel],\n samplesDecoded,\n ),\n );\n }\n\n channels.push(output);\n }\n\n outputBuffers.push(channels);\n outputSamples += samplesDecoded;\n\n this._frameNumber++;\n this._inputBytes += packet.length;\n this._outputSamples += samplesDecoded;\n\n // handle any errors that may have occurred\n for (let i = 0; i < this._errorsLength.buf; i += 2) {\n const errorDescription = this._common.codeToString(this._errors.buf[i]);\n const functionName = this._common.codeToString(this._errors.buf[i + 1]);\n\n errors.push({\n message: errorDescription + \" vorbis_synthesis\" + functionName,\n frameLength: packet.length,\n frameNumber: this._frameNumber,\n inputBytes: this._inputBytes,\n outputSamples: this._outputSamples,\n });\n }\n\n // clear the error buffer\n this._errorsLength.buf[0] = 0;\n }\n\n return this._WASMAudioDecoderCommon.getDecodedAudioMultiChannel(\n errors,\n outputBuffers,\n this._channels.buf[0],\n outputSamples,\n this._sampleRate.buf[0],\n 16,\n );\n };\n\n // injects dependencies when running as a web worker\n this._isWebWorker = Decoder.isWebWorker;\n this._WASMAudioDecoderCommon =\n Decoder.WASMAudioDecoderCommon || WASMAudioDecoderCommon;\n this._EmscriptenWASM = Decoder.EmscriptenWASM || EmscriptenWASM;\n this._module = Decoder.module;\n\n this._inputSize = 128 * 1024;\n\n this._ready = this._init();\n\n return this;\n}\n\nexport const setDecoderClass = Symbol();\n\nexport default class OggVorbisDecoder {\n constructor() {\n this._onCodec = (codec) => {\n if (codec !== \"vorbis\")\n throw new Error(\n \"@wasm-audio-decoders/ogg-vorbis does not support this codec \" +\n codec,\n );\n };\n\n // instantiate to create static properties\n new WASMAudioDecoderCommon();\n\n this._init();\n this._ready = this[setDecoderClass](Decoder);\n }\n\n _init() {\n this._vorbisSetupInProgress = true;\n this._totalSamplesDecoded = 0;\n this._codecParser = new CodecParser(\"audio/ogg\", {\n onCodec: this._onCodec,\n enableFrameCRC32: false,\n });\n }\n\n async [setDecoderClass](decoderClass) {\n if (this._decoder) {\n const oldDecoder = this._decoder;\n await oldDecoder.ready.then(() => oldDecoder.free());\n }\n\n this._decoder = new decoderClass();\n return this._decoder.ready;\n }\n\n get ready() {\n return this._ready;\n }\n\n async reset() {\n this._init();\n return this._decoder.reset();\n }\n\n free() {\n this._decoder.free();\n }\n\n async decodeOggPages(oggPages) {\n const packets = [];\n\n for (let i = 0; i < oggPages.length; i++) {\n const oggPage = oggPages[i];\n\n if (this._vorbisSetupInProgress) {\n if (oggPage[data][0] === 1) {\n this._decoder.sendSetupHeader(oggPage[data]);\n }\n\n if (oggPage[codecFrames].length) {\n const headerData = oggPage[codecFrames][0][header];\n // skip the vorbis comment; an empty comment packet will be used\n this._decoder.sendSetupHeader(headerData[vorbisSetup]);\n this._decoder.initDsp();\n\n this._vorbisSetupInProgress = false;\n }\n }\n\n packets.push(...oggPage[codecFrames].map((f) => f[data]));\n }\n\n const decoded = await this._decoder.decodePackets(packets);\n\n this._totalSamplesDecoded += decoded.samplesDecoded;\n\n // in cases where BigInt isn't supported, don't do any absoluteGranulePosition logic (i.e. old iOS versions)\n const oggPage = oggPages[oggPages.length - 1];\n if (oggPage && oggPage[isLastPage]) {\n // trim any extra samples that are decoded beyond the absoluteGranulePosition, relative to where we started in the stream\n const samplesToTrim = this._totalSamplesDecoded - oggPage[totalSamples];\n\n if (samplesToTrim > 0) {\n for (let i = 0; i < decoded.channelData.length; i++)\n decoded.channelData[i] = decoded.channelData[i].subarray(\n 0,\n decoded.samplesDecoded - samplesToTrim,\n );\n\n decoded.samplesDecoded -= samplesToTrim;\n this._totalSamplesDecoded -= samplesToTrim;\n }\n }\n\n return decoded;\n }\n\n async decode(vorbisData) {\n return this.decodeOggPages([...this._codecParser.parseChunk(vorbisData)]);\n }\n\n async flush() {\n const decoded = await this.decodeOggPages([...this._codecParser.flush()]);\n\n await this.reset();\n return decoded;\n }\n\n async decodeFile(vorbisData) {\n const decoded = await this.decodeOggPages([\n ...this._codecParser.parseAll(vorbisData),\n ]);\n\n await this.reset();\n return decoded;\n }\n}\n","import { WASMAudioDecoderWorker } from \"@wasm-audio-decoders/common\";\nimport EmscriptenWASM from \"./EmscriptenWasm.js\";\nimport OggVorbisDecoder, {\n Decoder,\n setDecoderClass,\n} from \"./OggVorbisDecoder.js\";\n\nclass DecoderWorker extends WASMAudioDecoderWorker {\n constructor(options) {\n super(options, \"ogg-vorbis-decoder\", Decoder, EmscriptenWASM);\n }\n\n async sendSetupHeader(data) {\n return this.postToDecoder(\"sendSetupHeader\", data);\n }\n\n async initDsp() {\n return this.postToDecoder(\"initDsp\");\n }\n\n async decodePackets(packets) {\n return this.postToDecoder(\"decodePackets\", packets);\n }\n}\n\nexport default class OggVorbisDecoderWebWorker extends OggVorbisDecoder {\n constructor() {\n super();\n\n this._ready = super[setDecoderClass](DecoderWorker);\n }\n\n async free() {\n await this._decoder.free();\n }\n\n terminate() {\n this._decoder.terminate();\n }\n}\n","import OggVorbisDecoder from \"./src/OggVorbisDecoder.js\";\nimport OggVorbisDecoderWebWorker from \"./src/OggVorbisDecoderWebWorker.js\";\nimport { assignNames } from \"@wasm-audio-decoders/common\";\n\nassignNames(OggVorbisDecoder, \"OggVorbisDecoder\");\nassignNames(OggVorbisDecoderWebWorker, \"OggVorbisDecoderWebWorker\");\n\nexport { OggVorbisDecoder, OggVorbisDecoderWebWorker };\n"],"x_google_ignoreList":[0,1,2,3],"mappings":"2IAKA,SAAwB,EAAe,EAAwB,CAE/D,IAAI,EAAS,EAKb,SAAS,GAAQ,EAKjB,EAAS,EAAE,CAKyB,SAAS,EAAM,EAAM,CACvD,MAAM,EAGR,IAA2B,EAA6D,EAWxF,SAAS,GAAoB,CAC3B,IAAI,EAAI,EAAW,OACX,IAAI,UAAU,EAAE,CACf,IAAI,WAAW,EAAE,CAC1B,EAAS,IAAI,WAAW,EAAE,CAChB,IAAI,YAAY,EAAE,CACnB,IAAI,WAAW,EAAE,CAChB,IAAI,YAAY,EAAE,CAClB,IAAI,aAAa,EAAE,CACnB,IAAI,aAAa,EAAE,CACpB,IAAI,cAAc,EAAE,CACnB,IAAI,eAAe,EAAE,CA2EjC,IAAK,IAxDD,MAAmB,EAAM,GAAG,CAE5B,MAA6C,GAE7C,EAAS,EAAE,CAEX,EAAmB,GAAQ,GAAM,CAEjC,MAA4B,YAAY,KAAK,CAE7C,GAAkB,EAAO,KAEvB,EAAO,KACT,aAAa,EAAO,GAAO,GAAG,CAC9B,OAAO,EAAO,IAIX,IAKL,EAAO,GAAS,CACd,GALO,eAAiB,CACxB,OAAO,EAAO,GACd,MAAuB,EAAqB,EAAO,GAAqB,CAAC,CAAC,EACzE,EAAW,CAGZ,aACD,EARuB,GAYtB,EAAwB,KAAK,KAE7B,EAAuB,KAAK,IAE5B,EAAuB,KAAK,IAE5B,EAAuB,KAAK,IAE5B,EAAuB,KAAK,IAE5B,EAAuB,KAAK,IAE5B,EAA0B,IACd,EAAO,OAErB,KAAmB,EACZ,IAGL,EAAa,GAAQ,CACvB,KAAM,QAAQ,EAAK,IAMZ,EAAsB,IAAI,WAAW,IAAI,CAAE,EAAI,GAAI,GAAK,EAAG,EAAE,EACpE,EAAoB,GAAK,GAAK,GAAK,EAEnC,EAAoB,GAAK,GAAK,EAE9B,EAAoB,GAAK,GAAK,GAAK,EAGrC,EAAoB,IAAM,GAG1B,EAAoB,IAAM,GAE1B,IAAI,EAAc,CACD,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACL,EAAK,EACrB,CAED,SAAS,EAAkB,EAAa,CACtC,EAAkB,EAAY,EAC9B,EAAU,EAAY,EACtB,EAAc,EAAY,EAC1B,EAAY,EAAY,EACxB,EAAkB,EAAY,EAC9B,EAAmB,EAAY,EAC/B,EAAQ,EAAY,EACpB,EAAuB,EAAY,EAGrC,IAAI,EAAiB,EAAS,EAAa,EAAW,EAAiB,EAAkB,EAAO,EAIhG,SAAS,EAAY,EAAa,CAEhC,EAAY,GAAM,CAIf,EAAe,MAAM,OAAO,eAAe,EAAgB,OAAQ,CAAC,QAAW,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAyI3D,CAAC,CAEpC,IAAI,EAAU,CACZ,EAAK,EACN,CAQD,KAAK,UAAa,GAAS,CACzB,EAAuB,UAAU,EAAgB,EAAK,EAGxD,KAAK,cACH,EAAuB,UAAU,EAAe,CAElD,KAAK,iBACH,KAAK,WAAW,CAAC,KAAM,GAAS,YAAY,YAAY,EAAM,EAAQ,CAAC,CAAC,KAAK,GAAY,CACvF,IAAM,EAAc,EAAS,QAC/B,EAAkB,EAAY,CAC9B,EAAa,EAAY,EACzB,GAAmB,CAEnB,EAAY,EAAY,CACxB,GAAO,EACP,CAIF,KAAK,MAAQ,IAAI,QAAQ,GAAW,CAClC,EAAQ,GACR,CAAC,SAAW,CACZ,KAAK,KAAO,EAAW,OACvB,KAAK,OAAS,EACd,KAAK,KAAO,EACZ,KAAK,eAAiB,EACtB,KAAK,WAAa,EAClB,KAAK,SAAW,EAChB,KAAK,eAAiB,EACtB,KAAK,gBAAkB,GACvB,CACK,MCnVP,SAAgB,GAAU,CA0JxB,MAvJA,MAAK,UACI,IAAI,KAAK,yBAAyB,CACtC,YAAY,KAAK,gBAAiB,KAAK,QAAQ,CAC/C,KAAM,GAAW,CAChB,KAAK,QAAU,EAEf,KAAK,OAAS,KAAK,QAAQ,mBACzB,KAAK,WACL,WACD,CAED,KAAK,WAAa,GAClB,KAAK,UAAY,KAAK,QAAQ,mBAAmB,EAAG,YAAY,CAEhE,KAAK,iBAAmB,KAAK,QAAQ,mBAAmB,EAAG,YAAY,CACvE,KAAK,UAAY,KAAK,QAAQ,mBAAmB,EAAG,YAAY,CAChE,KAAK,YAAc,KAAK,QAAQ,mBAAmB,EAAG,YAAY,CAClE,KAAK,gBAAkB,KAAK,QAAQ,mBAAmB,EAAG,YAAY,CAGtE,KAAK,QAAU,KAAK,QAAQ,mBAAmB,IAAW,YAAY,CACtE,KAAK,cAAgB,KAAK,QAAQ,mBAAmB,EAAG,WAAW,CAEnE,KAAK,aAAe,EACpB,KAAK,YAAc,EACnB,KAAK,eAAiB,EAEtB,KAAK,SAAW,KAAK,QAAQ,KAAK,eAChC,KAAK,OAAO,IACZ,KAAK,UAAU,IACf,KAAK,iBAAiB,IACtB,KAAK,UAAU,IACf,KAAK,YAAY,IACjB,KAAK,gBAAgB,IACrB,KAAK,QAAQ,IACb,KAAK,cAAc,IACnB,IACD,EACD,CAGN,OAAO,eAAe,KAAM,QAAS,CACnC,WAAY,GACZ,QAAW,KAAK,OACjB,CAAC,CAGF,KAAK,WACH,KAAK,MAAM,CACJ,KAAK,OAAO,EAGrB,KAAK,SAAa,CAChB,KAAK,QAAQ,KAAK,gBAAgB,KAAK,SAAS,CAChD,KAAK,QAAQ,MAAM,EAGrB,KAAK,gBAAmB,GAAS,CAC/B,KAAK,OAAO,IAAI,IAAI,EAAK,CACzB,KAAK,UAAU,IAAI,GAAK,EAAK,OAE7B,KAAK,QAAQ,KAAK,WAAW,KAAK,SAAU,KAAK,WAAW,CAC5D,KAAK,WAAa,IAGpB,KAAK,YAAgB,CACnB,KAAK,QAAQ,KAAK,SAAS,KAAK,SAAS,EAG3C,KAAK,cAAiB,GAAY,CAChC,IAAI,EAAgB,EAAE,CACpB,EAAgB,EAChB,EAAS,EAAE,CAEb,IAAK,IAAI,EAAY,EAAG,EAAY,EAAQ,OAAQ,IAAa,CAC/D,IAAM,EAAS,EAAQ,GACvB,KAAK,OAAO,IAAI,IAAI,EAAO,CAC3B,KAAK,UAAU,IAAI,GAAK,EAAO,OAE/B,KAAK,QAAQ,KAAK,eAAe,KAAK,SAAS,CAE/C,IAAM,EAAiB,KAAK,gBAAgB,IAAI,GAC1C,EAAW,EAAE,CAEb,EAAuB,IAAI,YAC/B,KAAK,QAAQ,KAAK,KAClB,KAAK,iBAAiB,IAAI,GAC1B,KAAK,UAAU,IAAI,GACpB,CACD,IAAK,IAAI,EAAU,EAAG,EAAU,KAAK,UAAU,IAAI,GAAI,IAAW,CAChE,IAAM,EAAS,IAAI,aAAa,EAAe,CAE3C,GACF,EAAO,IACL,IAAI,aACF,KAAK,QAAQ,KAAK,KAClB,EAAqB,GACrB,EACD,CACF,CAGH,EAAS,KAAK,EAAO,CAGvB,EAAc,KAAK,EAAS,CAC5B,GAAiB,EAEjB,KAAK,eACL,KAAK,aAAe,EAAO,OAC3B,KAAK,gBAAkB,EAGvB,IAAK,IAAI,EAAI,EAAG,EAAI,KAAK,cAAc,IAAK,GAAK,EAAG,CAClD,IAAM,EAAmB,KAAK,QAAQ,aAAa,KAAK,QAAQ,IAAI,GAAG,CACjE,EAAe,KAAK,QAAQ,aAAa,KAAK,QAAQ,IAAI,EAAI,GAAG,CAEvE,EAAO,KAAK,CACV,QAAS,EAAmB,oBAAsB,EAClD,YAAa,EAAO,OACpB,YAAa,KAAK,aAClB,WAAY,KAAK,YACjB,cAAe,KAAK,eACrB,CAAC,CAIJ,KAAK,cAAc,IAAI,GAAK,EAG9B,OAAO,KAAK,wBAAwB,4BAClC,EACA,EACA,KAAK,UAAU,IAAI,GACnB,EACA,KAAK,YAAY,IAAI,GACrB,GACD,EAIH,KAAK,aAAe,EAAQ,YAC5B,KAAK,wBACH,EAAQ,wBAA0B,EACpC,KAAK,gBAAkB,EAAQ,gBAAkB,EACjD,KAAK,QAAU,EAAQ,OAEvB,KAAK,WAAa,IAAM,KAExB,KAAK,OAAS,KAAK,OAAO,CAEnB,KAGT,MAAa,EAAkB,QAAQ,CAEvC,IAAqB,EAArB,KAAsC,CACpC,aAAc,CACZ,KAAK,SAAY,GAAU,CACzB,GAAI,IAAU,SACZ,MAAU,MACR,+DACE,EACH,EAIL,IAAI,EAEJ,KAAK,OAAO,CACZ,KAAK,OAAS,KAAK,GAAiB,EAAQ,CAG9C,OAAQ,CACN,KAAK,uBAAyB,GAC9B,KAAK,qBAAuB,EAC5B,KAAK,aAAe,IAAIA,EAAY,YAAa,CAC/C,QAAS,KAAK,SACd,iBAAkB,GACnB,CAAC,CAGJ,MAAO,GAAiB,EAAc,CACpC,GAAI,KAAK,SAAU,CACjB,IAAM,EAAa,KAAK,SACxB,MAAM,EAAW,MAAM,SAAW,EAAW,MAAM,CAAC,CAItD,MADA,MAAK,SAAW,IAAI,EACb,KAAK,SAAS,MAGvB,IAAI,OAAQ,CACV,OAAO,KAAK,OAGd,MAAM,OAAQ,CAEZ,OADA,KAAK,OAAO,CACL,KAAK,SAAS,OAAO,CAG9B,MAAO,CACL,KAAK,SAAS,MAAM,CAGtB,MAAM,eAAe,EAAU,CAC7B,IAAM,EAAU,EAAE,CAElB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAS,OAAQ,IAAK,CACxC,IAAM,EAAU,EAAS,GAEzB,GAAI,KAAK,yBACH,EAAQ,GAAM,KAAO,GACvB,KAAK,SAAS,gBAAgB,EAAQ,GAAM,CAG1C,EAAQ,GAAa,QAAQ,CAC/B,IAAM,EAAa,EAAQ,GAAa,GAAG,GAE3C,KAAK,SAAS,gBAAgB,EAAW,GAAa,CACtD,KAAK,SAAS,SAAS,CAEvB,KAAK,uBAAyB,GAIlC,EAAQ,KAAK,GAAG,EAAQ,GAAa,IAAK,GAAM,EAAE,GAAM,CAAC,CAG3D,IAAM,EAAU,MAAM,KAAK,SAAS,cAAc,EAAQ,CAE1D,KAAK,sBAAwB,EAAQ,eAGrC,IAAM,EAAU,EAAS,EAAS,OAAS,GAC3C,GAAI,GAAW,EAAQ,GAAa,CAElC,IAAM,EAAgB,KAAK,qBAAuB,EAAQ,GAE1D,GAAI,EAAgB,EAAG,CACrB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAQ,YAAY,OAAQ,IAC9C,EAAQ,YAAY,GAAK,EAAQ,YAAY,GAAG,SAC9C,EACA,EAAQ,eAAiB,EAC1B,CAEH,EAAQ,gBAAkB,EAC1B,KAAK,sBAAwB,GAIjC,OAAO,EAGT,MAAM,OAAO,EAAY,CACvB,OAAO,KAAK,eAAe,CAAC,GAAG,KAAK,aAAa,WAAW,EAAW,CAAC,CAAC,CAG3E,MAAM,OAAQ,CACZ,IAAM,EAAU,MAAM,KAAK,eAAe,CAAC,GAAG,KAAK,aAAa,OAAO,CAAC,CAAC,CAGzE,OADA,MAAM,KAAK,OAAO,CACX,EAGT,MAAM,WAAW,EAAY,CAC3B,IAAM,EAAU,MAAM,KAAK,eAAe,CACxC,GAAG,KAAK,aAAa,SAAS,EAAW,CAC1C,CAAC,CAGF,OADA,MAAM,KAAK,OAAO,CACX,ICxRL,EAAN,cAA4B,CAAuB,CACjD,YAAY,EAAS,CACnB,MAAM,EAAS,qBAAsB,EAAS,EAAe,CAG/D,MAAM,gBAAgB,EAAM,CAC1B,OAAO,KAAK,cAAc,kBAAmB,EAAK,CAGpD,MAAM,SAAU,CACd,OAAO,KAAK,cAAc,UAAU,CAGtC,MAAM,cAAc,EAAS,CAC3B,OAAO,KAAK,cAAc,gBAAiB,EAAQ,GAIlC,EAArB,cAAuD,CAAiB,CACtE,aAAc,CACZ,OAAO,CAEP,KAAK,OAAS,MAAM,GAAiB,EAAc,CAGrD,MAAM,MAAO,CACX,MAAM,KAAK,SAAS,MAAM,CAG5B,WAAY,CACV,KAAK,SAAS,WAAW,GCjC7B,EAAY,EAAkB,mBAAmB,CACjD,EAAY,EAA2B,4BAA4B"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=(e,t=e=>e===void 0?``:`: `+e)=>class extends Error{origMessage;constructor(n){super(e(n)+t(n)),this.origMessage=n===void 0?``:String(n)}},t=e(()=>`illegal argument(s)`),n=e=>{throw new t(e)},r=e(()=>`illegal state`),i=e=>{throw new r(e)};var a=class{buffer;start;limit;pos;bitPos;bit;constructor(e,t=0,n=e.length<<3){this.buffer=e,this.start=t,this.limit=n,this.seek(t)}*[Symbol.iterator](){let e=this.start,t=e>>>3,n=7-(e&7);for(;e<this.limit;)yield this.buffer[t]>>>n&1,--n<0&&(t++,n=7),e++}get length(){return this.limit}get position(){return this.bitPos}seek(e){return(e<this.start||e>=this.limit)&&n(`seek pos out of bounds: ${e}`),this.pos=e>>>3,this.bit=8-(e&7),this.bitPos=e,this}read(e=1,t=!0){if(e>32)return this.read(e-32,t)*4294967296+this.read(32,t);if(e>8){let n=0,r=e&-8,i=e-r;for(i>0&&(n=this._read(i,t));r>0;)n=(n<<8|this._read(8,t))>>>0,r-=8;return n}else return this._read(e,t)}readFields(e,t=!0){return e.map(e=>this.read(e,t))}readWords(e,t=8,n=!0){let r=[];for(;e-- >0;)r.push(this.read(t,n));return r}readStruct(e,t=!0){return e.reduce((e,[n,r])=>(e[n]=this.read(r,t),e),{})}readBit(e=!0){e&&this.checkLimit(1),this.bit--,this.bitPos++;let t=this.buffer[this.pos]>>>this.bit&1;return this.bit===0&&(this.pos++,this.bit=8),t}_read(e,t=!0){t&&this.checkLimit(e);let n=this.bit-e,r;return n>=0?(this.bit=n,r=this.buffer[this.pos]>>>n&(1<<e)-1,n===0&&(this.pos++,this.bit=8)):(r=(this.buffer[this.pos++]&(1<<this.bit)-1)<<-n,this.bit=8+n,r|=this.buffer[this.pos]>>>this.bit),this.bitPos+=e,r}checkLimit(e){this.bitPos+e>this.limit&&i(`can't read past EOF`)}};function o(e,t,n){return e<t?t:e>n?n:e}function s(e,t){return{history:new Int16Array(e||4),weights:new Int16Array(t||4)}}function c(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]>>13}function l(e,t,n,r){let i=r>>4;e[0]+=t[0]<0?-i:i,e[1]+=t[1]<0?-i:i,e[2]+=t[2]<0?-i:i,e[3]+=t[3]<0?-i:i,t[0]=t[1],t[1]=t[2],t[2]=t[3],t[3]=n}const u=e=>Math.sign(e)*Math.round(Math.abs(e)),d=Array(16).fill().map((e,t)=>u((t+1)**2.75)),f=[.75,-.75,2.5,-2.5,4.5,-4.5,7,-7],p=d.map(e=>f.map(t=>u(t*e)));function m(e){if(e.read(32)!==1903124838)throw Error(`Not a QOA file; expected magic number 'qoaf'`);let t={samples:e.read(32),channels:e.read(8),sampleRate:e.read(24)};return e.seek(64),t}function h(e,t,n,r,i){let a=e.read(8),s=e.read(24),u=e.read(16),d=e.read(16),f=Math.floor(d-8-16*a),m=Math.floor(f/8)*20;if(a!=t.channels||s!=t.sampleRate||u*a>m)throw Error(`invalid frame header data`);for(let t=0;t<a;t++){let r=n[t];for(let t=0;t<4;t++){let n=e.read(16);r.history[t]=n}for(let t=0;t<4;t++){let n=e.read(16);r.weights[t]=n}}for(let t=0;t<u;t+=20)for(let s=0;s<a;s++){let a=p[e.read(4)],d=t,f=Math.min(t+20,u)-d,m=n[s],h=r[s],g=i+d,_=m.weights,v=m.history,y=60;for(let t=0;t<f;t++){let t=c(_,v),n=a[e.read(3)],r=o(t+n,-32768,32767),i=r<0?r/32768:r/32767;h[g++]=i,l(_,v,r,n),y-=3}y>0&&e.read(y)}return u}function g(e){if(e.byteLength<16)throw Error(`QOA file size must be >= 16`);let t=new a(e),n=m(t),r=[],i=[];for(let e=0;e<n.channels;e++){let e=new Float32Array(n.samples);r.push(e),i.push(s())}let o=0,c=0;do c=h(t,n,i,r,o),o+=c;while(c&&o<n.samples);return{...n,channelData:r}}d.map(e=>Math.floor((65536+e-1)/e));export{g as decode};
|
|
2
|
+
//# sourceMappingURL=qoa-format-CAiNgsjx.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qoa-format-CAiNgsjx.mjs","names":[],"sources":["../../../node_modules/.bun/@thi.ng+errors@2.6.2/node_modules/@thi.ng/errors/deferror.js","../../../node_modules/.bun/@thi.ng+errors@2.6.2/node_modules/@thi.ng/errors/illegal-arguments.js","../../../node_modules/.bun/@thi.ng+errors@2.6.2/node_modules/@thi.ng/errors/illegal-state.js","../../../node_modules/.bun/@thi.ng+bitstream@2.4.39/node_modules/@thi.ng/bitstream/input.js","../../../node_modules/.bun/qoa-format@1.0.1/node_modules/qoa-format/lib/common.js","../../../node_modules/.bun/qoa-format@1.0.1/node_modules/qoa-format/decode.js","../../../node_modules/.bun/qoa-format@1.0.1/node_modules/qoa-format/encode.js"],"sourcesContent":["const defError = (prefix, suffix = (msg) => msg !== void 0 ? \": \" + msg : \"\") => class extends Error {\n origMessage;\n constructor(msg) {\n super(prefix(msg) + suffix(msg));\n this.origMessage = msg !== void 0 ? String(msg) : \"\";\n }\n};\nexport {\n defError\n};\n","import { defError } from \"./deferror.js\";\nconst IllegalArgumentError = defError(() => \"illegal argument(s)\");\nconst illegalArgs = (msg) => {\n throw new IllegalArgumentError(msg);\n};\nexport {\n IllegalArgumentError,\n illegalArgs\n};\n","import { defError } from \"./deferror.js\";\nconst IllegalStateError = defError(() => \"illegal state\");\nconst illegalState = (msg) => {\n throw new IllegalStateError(msg);\n};\nexport {\n IllegalStateError,\n illegalState\n};\n","import { illegalArgs } from \"@thi.ng/errors/illegal-arguments\";\nimport { illegalState } from \"@thi.ng/errors/illegal-state\";\nconst U32 = 4294967296;\nclass BitInputStream {\n buffer;\n start;\n limit;\n pos;\n bitPos;\n bit;\n constructor(buffer, offset = 0, limit = buffer.length << 3) {\n this.buffer = buffer;\n this.start = offset;\n this.limit = limit;\n this.seek(offset);\n }\n *[Symbol.iterator]() {\n let j = this.start;\n let i = j >>> 3;\n let b = 7 - (j & 7);\n while (j < this.limit) {\n yield this.buffer[i] >>> b & 1;\n if (--b < 0) {\n i++;\n b = 7;\n }\n j++;\n }\n }\n get length() {\n return this.limit;\n }\n get position() {\n return this.bitPos;\n }\n seek(pos) {\n if (pos < this.start || pos >= this.limit) {\n illegalArgs(`seek pos out of bounds: ${pos}`);\n }\n this.pos = pos >>> 3;\n this.bit = 8 - (pos & 7);\n this.bitPos = pos;\n return this;\n }\n read(wordSize = 1, safe = true) {\n if (wordSize > 32) {\n return this.read(wordSize - 32, safe) * U32 + this.read(32, safe);\n } else if (wordSize > 8) {\n let out = 0;\n let n = wordSize & -8;\n let msb = wordSize - n;\n if (msb > 0) {\n out = this._read(msb, safe);\n }\n while (n > 0) {\n out = (out << 8 | this._read(8, safe)) >>> 0;\n n -= 8;\n }\n return out;\n } else {\n return this._read(wordSize, safe);\n }\n }\n readFields(fields, safe = true) {\n return fields.map((word) => this.read(word, safe));\n }\n readWords(n, wordSize = 8, safe = true) {\n let out = [];\n while (n-- > 0) {\n out.push(this.read(wordSize, safe));\n }\n return out;\n }\n readStruct(fields, safe = true) {\n return fields.reduce((acc, [id, word]) => {\n return acc[id] = this.read(word, safe), acc;\n }, {});\n }\n readBit(safe = true) {\n safe && this.checkLimit(1);\n this.bit--;\n this.bitPos++;\n let out = this.buffer[this.pos] >>> this.bit & 1;\n if (this.bit === 0) {\n this.pos++;\n this.bit = 8;\n }\n return out;\n }\n _read(wordSize, safe = true) {\n safe && this.checkLimit(wordSize);\n let l = this.bit - wordSize, out;\n if (l >= 0) {\n this.bit = l;\n out = this.buffer[this.pos] >>> l & (1 << wordSize) - 1;\n if (l === 0) {\n this.pos++;\n this.bit = 8;\n }\n } else {\n out = (this.buffer[this.pos++] & (1 << this.bit) - 1) << -l;\n this.bit = 8 + l;\n out = out | this.buffer[this.pos] >>> this.bit;\n }\n this.bitPos += wordSize;\n return out;\n }\n checkLimit(requested) {\n if (this.bitPos + requested > this.limit) {\n illegalState(`can't read past EOF`);\n }\n }\n}\nexport {\n BitInputStream\n};\n","export const QOA_MIN_FILESIZE = 16;\nexport const QOA_MAX_CHANNELS = 8;\n\nexport const QOA_SLICE_LEN = 20;\nexport const QOA_SLICES_PER_FRAME = 256;\nexport const QOA_FRAME_LEN = QOA_SLICES_PER_FRAME * QOA_SLICE_LEN;\nexport const QOA_LMS_LEN = 4;\nexport const QOA_MAGIC = 0x716f6166; /* 'qoaf' */\nexport const QOA_FRAME_SIZE = (channels, slices) =>\n Math.floor(8 + QOA_LMS_LEN * 4 * channels + 8 * slices * channels);\n\nexport function qoa_clamp(v, min, max) {\n return v < min ? min : v > max ? max : v;\n}\n\nexport function LMS(h, w) {\n const history = new Int16Array(h || 4);\n const weights = new Int16Array(w || 4);\n return { history, weights };\n}\n\nexport function qoa_lms_predict(weights, history) {\n return (\n (weights[0] * history[0] +\n weights[1] * history[1] +\n weights[2] * history[2] +\n weights[3] * history[3]) >>\n 13\n );\n}\n\nexport function qoa_lms_update(weights, history, sample, residual) {\n let delta = residual >> 4;\n weights[0] += history[0] < 0 ? -delta : delta;\n weights[1] += history[1] < 0 ? -delta : delta;\n weights[2] += history[2] < 0 ? -delta : delta;\n weights[3] += history[3] < 0 ? -delta : delta;\n history[0] = history[1];\n history[1] = history[2];\n history[2] = history[3];\n history[3] = sample;\n}\n\nexport const qoa_round = (num) => Math.sign(num) * Math.round(Math.abs(num));\n\n/* We have 16 different scalefactors. Like the quantized residuals these become\nless accurate at the higher end. In theory, the highest scalefactor that we\nwould need to encode the highest 16bit residual is (2**16)/8 = 8192. However we\nrely on the LMS filter to predict samples accurately enough that a maximum \nresidual of one quarter of the 16 bit range is high sufficent. I.e. with the \nscalefactor 2048 times the quant range of 8 we can encode residuals up to 2**14.\n\nThe scalefactor values are computed as:\nscalefactor_tab[s] <- round(pow(s + 1, 2.75)) */\n\nexport const qoa_scalefactor_tab = Array(16)\n .fill()\n .map((_, s) => qoa_round(Math.pow(s + 1, 2.75)));\n\n/* The dequant_tab maps each of the scalefactors and quantized residuals to \ntheir unscaled & dequantized version.\n\nSince qoa_div rounds away from the zero, the smallest entries are mapped to 3/4\ninstead of 1. The dequant_tab assumes the following dequantized values for each \nof the quant_tab indices and is computed as:\nfloat dqt[8] = {0.75, -0.75, 2.5, -2.5, 4.5, -4.5, 7, -7};\ndequant_tab[s][q] <- round(scalefactor_tab[s] * dqt[q]) */\n\nconst dqt = [0.75, -0.75, 2.5, -2.5, 4.5, -4.5, 7, -7];\nexport const qoa_dequant_tab = qoa_scalefactor_tab.map((sf) => {\n return dqt.map((dq) => qoa_round(dq * sf));\n});\n","import { BitInputStream } from \"@thi.ng/bitstream\";\nimport {\n qoa_lms_predict,\n qoa_lms_update,\n qoa_clamp,\n qoa_dequant_tab,\n LMS,\n QOA_MIN_FILESIZE,\n QOA_SLICE_LEN,\n QOA_MAGIC,\n QOA_LMS_LEN,\n} from \"./lib/common.js\";\n\nfunction decodeHeader(stream) {\n const magic = stream.read(32);\n if (magic !== QOA_MAGIC) {\n throw new Error(`Not a QOA file; expected magic number 'qoaf'`);\n }\n\n // peek first frame to get audio file data\n const header = {\n samples: stream.read(32),\n channels: stream.read(8),\n sampleRate: stream.read(24),\n };\n\n // go back to end of header\n stream.seek(64);\n\n // return data\n return header;\n}\n\nfunction qoa_decode_frame(stream, audio, lmses, channelData, sampleOffset) {\n const channels = stream.read(8);\n const sampleRate = stream.read(24);\n const samples = stream.read(16); // frame samples\n const frameSize = stream.read(16);\n\n const dataSize = Math.floor(frameSize - 8 - QOA_LMS_LEN * 4 * channels);\n const numSlices = Math.floor(dataSize / 8);\n const maxTotalSamples = numSlices * QOA_SLICE_LEN;\n\n if (\n channels != audio.channels ||\n sampleRate != audio.sampleRate ||\n samples * channels > maxTotalSamples\n ) {\n throw new Error(`invalid frame header data`);\n }\n\n // decode LMS history and weights\n for (let c = 0; c < channels; c++) {\n const lms = lmses[c];\n for (let i = 0; i < QOA_LMS_LEN; i++) {\n let h = stream.read(16);\n lms.history[i] = h;\n }\n for (let i = 0; i < QOA_LMS_LEN; i++) {\n let w = stream.read(16);\n lms.weights[i] = w;\n }\n }\n\n for (\n let sample_index = 0;\n sample_index < samples;\n sample_index += QOA_SLICE_LEN\n ) {\n for (let c = 0; c < channels; c++) {\n const scalefactor = stream.read(4);\n const table = qoa_dequant_tab[scalefactor];\n const slice_start = sample_index;\n const slice_end = Math.min(sample_index + QOA_SLICE_LEN, samples);\n const slice_count = slice_end - slice_start;\n const lms = lmses[c];\n const sampleData = channelData[c];\n let idx = sampleOffset + slice_start;\n const weights = lms.weights;\n const history = lms.history;\n let bitsRemaining = 60;\n // note: this loop is a hot code path and could be optimized\n for (let i = 0; i < slice_count; i++) {\n const predicted = qoa_lms_predict(weights, history);\n const quantized = stream.read(3);\n const dequantized = table[quantized];\n const reconstructed = qoa_clamp(predicted + dequantized, -32768, 32767);\n const sample =\n reconstructed < 0 ? reconstructed / 32768 : reconstructed / 32767;\n sampleData[idx++] = sample;\n qoa_lms_update(weights, history, reconstructed, dequantized);\n bitsRemaining -= 3;\n }\n // skip stream if needed\n if (bitsRemaining > 0) {\n stream.read(bitsRemaining);\n }\n }\n }\n\n return samples;\n}\n\nexport default function decode(data) {\n if (data.byteLength < QOA_MIN_FILESIZE) {\n throw new Error(`QOA file size must be >= ${QOA_MIN_FILESIZE}`);\n }\n\n const stream = new BitInputStream(data);\n const audio = decodeHeader(stream);\n\n const channelData = [];\n const lmses = [];\n for (let c = 0; c < audio.channels; c++) {\n const d = new Float32Array(audio.samples);\n channelData.push(d);\n lmses.push(LMS());\n }\n\n let sampleIndex = 0;\n let frameLen = 0;\n do {\n frameLen = qoa_decode_frame(stream, audio, lmses, channelData, sampleIndex);\n sampleIndex += frameLen;\n } while (frameLen && sampleIndex < audio.samples);\n\n return {\n ...audio,\n channelData,\n };\n}\n","import { BitOutputStream } from \"@thi.ng/bitstream\";\nimport {\n qoa_lms_predict,\n qoa_lms_update,\n qoa_clamp,\n qoa_dequant_tab,\n qoa_scalefactor_tab,\n LMS,\n QOA_SLICE_LEN,\n QOA_FRAME_LEN,\n QOA_MAGIC,\n QOA_LMS_LEN,\n QOA_FRAME_SIZE,\n} from \"./lib/common.js\";\n\n/* The reciprocal_tab maps each of the 16 scalefactors to their rounded \nreciprocals 1/scalefactor. This allows us to calculate the scaled residuals in \nthe encoder with just one multiplication instead of an expensive division. We \ndo this in .16 fixed point with integers, instead of floats.\n\nThe reciprocal_tab is computed as:\nreciprocal_tab[s] <- ((1<<16) + scalefactor_tab[s] - 1) / scalefactor_tab[s] */\n\nconst qoa_reciprocal_tab = qoa_scalefactor_tab.map((s) =>\n Math.floor(((1 << 16) + s - 1) / s)\n);\n\n/* The quant_tab provides an index into the dequant_tab for residuals in the\nrange of -8 .. 8. It maps this range to just 3bits and becommes less accurate at \nthe higher end. Note that the residual zero is identical to the lowest positive \nvalue. This is mostly fine, since the qoa_div() function always rounds away \nfrom zero. */\n\nconst qoa_quant_tab = [\n // -8..-1\n 7, 7, 7, 5, 5, 3, 3, 1,\n // 0\n 0,\n // 1.. 8\n 0, 2, 2, 4, 4, 6, 6, 6,\n];\n\n/* qoa_div() implements a rounding division, but avoids rounding to zero for \nsmall numbers. E.g. 0.1 will be rounded to 1. Note that 0 itself still \nreturns as 0, which is handled in the qoa_quant_tab[].\nqoa_div() takes an index into the .16 fixed point qoa_reciprocal_tab as an\nargument, so it can do the division with a cheaper integer multiplication. */\n\nfunction qoa_div(v, scalefactor) {\n const reciprocal = qoa_reciprocal_tab[scalefactor];\n let n = (v * reciprocal + (1 << 15)) >> 16;\n n = n + ((v > 0) - (v < 0)) - ((n > 0) - (n < 0)); /* round away from 0 */\n return n;\n}\n\nfunction qoa_encode_frame(stream, audio, lmses, sample_offset, frame_len) {\n const channels = audio.channels;\n const sampleRate = audio.sampleRate;\n const channelData = audio.channelData;\n const samples = audio.samples;\n\n const slices = Math.floor((frame_len + QOA_SLICE_LEN - 1) / QOA_SLICE_LEN);\n const frame_size = QOA_FRAME_SIZE(channels, slices);\n\n // Frame header\n stream.write(channels, 8);\n stream.write(sampleRate, 24);\n stream.write(frame_len, 16); // frame samples\n stream.write(frame_size, 16);\n\n // write current LMS weights and history state\n for (let c = 0; c < channels; c++) {\n const lms = lmses[c];\n\n /* If the weights have grown too large, reset them to 0. This may happen\n\t\twith certain high-frequency sounds. This is a last resort and will \n\t\tintroduce quite a bit of noise, but should at least prevent pops/clicks */\n const weights_sum =\n lms.weights[0] * lms.weights[0] +\n lms.weights[1] * lms.weights[1] +\n lms.weights[2] * lms.weights[2] +\n lms.weights[3] * lms.weights[3];\n if (weights_sum > 0x2fffffff) {\n lms.weights[0] = 0;\n lms.weights[1] = 0;\n lms.weights[2] = 0;\n lms.weights[3] = 0;\n }\n\n for (let i = 0; i < QOA_LMS_LEN; i++) {\n stream.write(lms.history[i], 16);\n }\n for (let i = 0; i < QOA_LMS_LEN; i++) {\n stream.write(lms.weights[i], 16);\n }\n }\n\n /* We encode all samples with the channels interleaved on a slice level.\n\tE.g. for stereo: (ch-0, slice 0), (ch 1, slice 0), (ch 0, slice 1), ...*/\n for (\n let sample_index = 0;\n sample_index < frame_len;\n sample_index += QOA_SLICE_LEN\n ) {\n for (let c = 0; c < channels; c++) {\n const slice_len = qoa_clamp(QOA_SLICE_LEN, 0, frame_len - sample_index);\n const slice_start = sample_index;\n\n /* Brute for search for the best scalefactor. Just go through all\n\t\t\t16 scalefactors, encode all samples for the current slice and \n\t\t\tmeassure the total squared error. */\n let best_error = Number.MAX_SAFE_INTEGER;\n let best_slice;\n let best_slice_scalefactor;\n let best_lms;\n const sampleData = channelData[c];\n\n for (let scalefactor = 0; scalefactor < 16; scalefactor++) {\n /* We have to reset the LMS state to the last known good one\n\t\t\t\tbefore trying each scalefactor, as each pass updates the LMS\n\t\t\t\tstate when encoding. */\n let lms = LMS(lmses[c].history, lmses[c].weights);\n\n const table = qoa_dequant_tab[scalefactor];\n\n // an array of slice data\n let slice = [];\n let current_error = 0;\n let idx = slice_start + sample_offset;\n\n for (let i = 0; i < slice_len; i++) {\n let sample = sampleData[idx++];\n\n // turn into 16 bit signed integer\n sample = Math.floor(\n Math.fround(sample < 0 ? sample * 32768 : sample * 32767)\n );\n sample = qoa_clamp(sample, -32768, 32767);\n\n let predicted = qoa_lms_predict(lms.weights, lms.history);\n let residual = sample - predicted;\n let scaled = qoa_div(residual, scalefactor);\n let clamped = qoa_clamp(scaled, -8, 8);\n let quantized = qoa_quant_tab[clamped + 8];\n let dequantized = table[quantized];\n let reconstructed = qoa_clamp(predicted + dequantized, -32768, 32767);\n let error = sample - reconstructed;\n current_error += error * error;\n if (current_error > best_error) {\n break;\n }\n\n qoa_lms_update(lms.weights, lms.history, reconstructed, dequantized);\n slice.push(quantized);\n }\n\n if (current_error < best_error) {\n best_error = current_error;\n best_slice = slice;\n best_slice_scalefactor = scalefactor;\n best_lms = lms;\n }\n }\n\n lmses[c] = best_lms;\n // first, write the 4bit scalefactor\n stream.write(best_slice_scalefactor, 4);\n // now write each 3bit datum in the slice\n for (let i = 0; i < QOA_SLICE_LEN; i++) {\n // the last frame of a file might be smaller than QOA_SLICE_LEN\n const v = i < best_slice.length ? best_slice[i] : 0;\n stream.write(v, 3);\n }\n }\n }\n}\n\nexport default function encode({ channelData, sampleRate = 44100 } = {}) {\n const channels = channelData.length;\n const samples = channels >= 1 ? channelData[0].length : 0;\n const audio = {\n samples,\n channels,\n channelData,\n sampleRate,\n };\n\n const num_frames = (samples + QOA_FRAME_LEN - 1) / QOA_FRAME_LEN;\n const num_slices = (samples + QOA_SLICE_LEN - 1) / QOA_SLICE_LEN;\n const encoded_size =\n 8 /* 8 byte file header */ +\n num_frames * 8 /* 8 byte frame headers */ +\n num_frames *\n QOA_LMS_LEN *\n 4 *\n audio.channels /* 4 * 4 bytes lms state per channel */ +\n num_slices * 8 * audio.channels; /* 8 byte slices */\n\n const lmses = [];\n for (let c = 0; c < audio.channels; c++) {\n const lms = LMS();\n lms.weights[0] = 0;\n lms.weights[1] = 0;\n lms.weights[2] = -(1 << 13);\n lms.weights[3] = 1 << 14;\n lmses.push(lms);\n }\n\n // write header\n const stream = new BitOutputStream(encoded_size);\n stream.write(QOA_MAGIC, 32);\n stream.write(samples, 32);\n\n let frame_len = QOA_FRAME_LEN;\n for (\n let sample_index = 0;\n sample_index < samples;\n sample_index += frame_len\n ) {\n frame_len = qoa_clamp(QOA_FRAME_LEN, 0, samples - sample_index);\n qoa_encode_frame(stream, audio, lmses, sample_index, frame_len);\n }\n\n return stream.bytes();\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6],"mappings":"AAAA,MAAM,GAAY,EAAQ,EAAU,GAAQ,IAAQ,IAAK,GAAiB,GAAb,KAAO,IAAa,cAAc,KAAM,CACnG,YACA,YAAY,EAAK,CACf,MAAM,EAAO,EAAI,CAAG,EAAO,EAAI,CAAC,CAChC,KAAK,YAAc,IAAQ,IAAK,GAAkB,GAAd,OAAO,EAAI,GCH7C,EAAuB,MAAe,sBAAsB,CAC5D,EAAe,GAAQ,CAC3B,MAAM,IAAI,EAAqB,EAAI,ECF/B,EAAoB,MAAe,gBAAgB,CACnD,EAAgB,GAAQ,CAC5B,MAAM,IAAI,EAAkB,EAAI,ECAlC,IAAM,EAAN,KAAqB,CACnB,OACA,MACA,MACA,IACA,OACA,IACA,YAAY,EAAQ,EAAS,EAAG,EAAQ,EAAO,QAAU,EAAG,CAC1D,KAAK,OAAS,EACd,KAAK,MAAQ,EACb,KAAK,MAAQ,EACb,KAAK,KAAK,EAAO,CAEnB,EAAE,OAAO,WAAY,CACnB,IAAI,EAAI,KAAK,MACT,EAAI,IAAM,EACV,EAAI,GAAK,EAAI,GACjB,KAAO,EAAI,KAAK,OACd,MAAM,KAAK,OAAO,KAAO,EAAI,EACzB,EAAE,EAAI,IACR,IACA,EAAI,GAEN,IAGJ,IAAI,QAAS,CACX,OAAO,KAAK,MAEd,IAAI,UAAW,CACb,OAAO,KAAK,OAEd,KAAK,EAAK,CAOR,OANI,EAAM,KAAK,OAAS,GAAO,KAAK,QAClC,EAAY,2BAA2B,IAAM,CAE/C,KAAK,IAAM,IAAQ,EACnB,KAAK,IAAM,GAAK,EAAM,GACtB,KAAK,OAAS,EACP,KAET,KAAK,EAAW,EAAG,EAAO,GAAM,CAC9B,GAAI,EAAW,GACb,OAAO,KAAK,KAAK,EAAW,GAAI,EAAK,CAAG,WAAM,KAAK,KAAK,GAAI,EAAK,IACxD,EAAW,EAAG,CACvB,IAAI,EAAM,EACN,EAAI,EAAW,GACf,EAAM,EAAW,EAIrB,IAHI,EAAM,IACR,EAAM,KAAK,MAAM,EAAK,EAAK,EAEtB,EAAI,GACT,GAAO,GAAO,EAAI,KAAK,MAAM,EAAG,EAAK,IAAM,EAC3C,GAAK,EAEP,OAAO,OAEP,OAAO,KAAK,MAAM,EAAU,EAAK,CAGrC,WAAW,EAAQ,EAAO,GAAM,CAC9B,OAAO,EAAO,IAAK,GAAS,KAAK,KAAK,EAAM,EAAK,CAAC,CAEpD,UAAU,EAAG,EAAW,EAAG,EAAO,GAAM,CACtC,IAAI,EAAM,EAAE,CACZ,KAAO,KAAM,GACX,EAAI,KAAK,KAAK,KAAK,EAAU,EAAK,CAAC,CAErC,OAAO,EAET,WAAW,EAAQ,EAAO,GAAM,CAC9B,OAAO,EAAO,QAAQ,EAAK,CAAC,EAAI,MACvB,EAAI,GAAM,KAAK,KAAK,EAAM,EAAK,CAAE,GACvC,EAAE,CAAC,CAER,QAAQ,EAAO,GAAM,CACnB,GAAQ,KAAK,WAAW,EAAE,CAC1B,KAAK,MACL,KAAK,SACL,IAAI,EAAM,KAAK,OAAO,KAAK,OAAS,KAAK,IAAM,EAK/C,OAJI,KAAK,MAAQ,IACf,KAAK,MACL,KAAK,IAAM,GAEN,EAET,MAAM,EAAU,EAAO,GAAM,CAC3B,GAAQ,KAAK,WAAW,EAAS,CACjC,IAAI,EAAI,KAAK,IAAM,EAAU,EAc7B,OAbI,GAAK,GACP,KAAK,IAAM,EACX,EAAM,KAAK,OAAO,KAAK,OAAS,GAAK,GAAK,GAAY,EAClD,IAAM,IACR,KAAK,MACL,KAAK,IAAM,KAGb,GAAO,KAAK,OAAO,KAAK,QAAU,GAAK,KAAK,KAAO,IAAM,CAAC,EAC1D,KAAK,IAAM,EAAI,EACf,GAAY,KAAK,OAAO,KAAK,OAAS,KAAK,KAE7C,KAAK,QAAU,EACR,EAET,WAAW,EAAW,CAChB,KAAK,OAAS,EAAY,KAAK,OACjC,EAAa,sBAAsB,GClGzC,SAAgB,EAAU,EAAG,EAAK,EAAK,CACrC,OAAO,EAAI,EAAM,EAAM,EAAI,EAAM,EAAM,EAGzC,SAAgB,EAAI,EAAG,EAAG,CAGxB,MAAO,CAAE,QAFO,IAAI,WAAW,GAAK,EAAE,CAEpB,QADF,IAAI,WAAW,GAAK,EAAE,CACX,CAG7B,SAAgB,EAAgB,EAAS,EAAS,CAChD,OACG,EAAQ,GAAK,EAAQ,GACpB,EAAQ,GAAK,EAAQ,GACrB,EAAQ,GAAK,EAAQ,GACrB,EAAQ,GAAK,EAAQ,IACvB,GAIJ,SAAgB,EAAe,EAAS,EAAS,EAAQ,EAAU,CACjE,IAAI,EAAQ,GAAY,EACxB,EAAQ,IAAM,EAAQ,GAAK,EAAI,CAAC,EAAQ,EACxC,EAAQ,IAAM,EAAQ,GAAK,EAAI,CAAC,EAAQ,EACxC,EAAQ,IAAM,EAAQ,GAAK,EAAI,CAAC,EAAQ,EACxC,EAAQ,IAAM,EAAQ,GAAK,EAAI,CAAC,EAAQ,EACxC,EAAQ,GAAK,EAAQ,GACrB,EAAQ,GAAK,EAAQ,GACrB,EAAQ,GAAK,EAAQ,GACrB,EAAQ,GAAK,EAGf,MAAa,EAAa,GAAQ,KAAK,KAAK,EAAI,CAAG,KAAK,MAAM,KAAK,IAAI,EAAI,CAAC,CAY/D,EAAsB,MAAM,GAAG,CACzC,MAAM,CACN,KAAK,EAAG,IAAM,GAAmB,EAAI,IAAG,KAAM,CAAC,CAW5C,EAAM,CAAC,IAAM,KAAO,IAAK,KAAM,IAAK,KAAM,EAAG,GAAG,CACzC,EAAkB,EAAoB,IAAK,GAC/C,EAAI,IAAK,GAAO,EAAU,EAAK,EAAG,CAAC,CAC1C,CC1DF,SAAS,EAAa,EAAQ,CAE5B,GADc,EAAO,KAAK,GAAG,GACf,WACZ,MAAU,MAAM,+CAA+C,CAIjE,IAAM,EAAS,CACb,QAAS,EAAO,KAAK,GAAG,CACxB,SAAU,EAAO,KAAK,EAAE,CACxB,WAAY,EAAO,KAAK,GAAG,CAC5B,CAMD,OAHA,EAAO,KAAK,GAAG,CAGR,EAGT,SAAS,EAAiB,EAAQ,EAAO,EAAO,EAAa,EAAc,CACzE,IAAM,EAAW,EAAO,KAAK,EAAE,CACzB,EAAa,EAAO,KAAK,GAAG,CAC5B,EAAU,EAAO,KAAK,GAAG,CACzB,EAAY,EAAO,KAAK,GAAG,CAE3B,EAAW,KAAK,MAAM,EAAY,EAAI,GAAkB,EAAS,CAEjE,EADY,KAAK,MAAM,EAAW,EAAE,CACN,GAEpC,GACE,GAAY,EAAM,UAClB,GAAc,EAAM,YACpB,EAAU,EAAW,EAErB,MAAU,MAAM,4BAA4B,CAI9C,IAAK,IAAI,EAAI,EAAG,EAAI,EAAU,IAAK,CACjC,IAAM,EAAM,EAAM,GAClB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAa,IAAK,CACpC,IAAI,EAAI,EAAO,KAAK,GAAG,CACvB,EAAI,QAAQ,GAAK,EAEnB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAa,IAAK,CACpC,IAAI,EAAI,EAAO,KAAK,GAAG,CACvB,EAAI,QAAQ,GAAK,GAIrB,IACE,IAAI,EAAe,EACnB,EAAe,EACf,GAAgB,GAEhB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAU,IAAK,CAEjC,IAAM,EAAQ,EADM,EAAO,KAAK,EAAE,EAE5B,EAAc,EAEd,EADY,KAAK,IAAI,EAAe,GAAe,EAAQ,CACjC,EAC1B,EAAM,EAAM,GACZ,EAAa,EAAY,GAC3B,EAAM,EAAe,EACnB,EAAU,EAAI,QACd,EAAU,EAAI,QAChB,EAAgB,GAEpB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAa,IAAK,CACpC,IAAM,EAAY,EAAgB,EAAS,EAAQ,CAE7C,EAAc,EADF,EAAO,KAAK,EAAE,EAE1B,EAAgB,EAAU,EAAY,EAAa,OAAQ,MAAM,CACjE,EACJ,EAAgB,EAAI,EAAgB,MAAQ,EAAgB,MAC9D,EAAW,KAAS,EACpB,EAAe,EAAS,EAAS,EAAe,EAAY,CAC5D,GAAiB,EAGf,EAAgB,GAClB,EAAO,KAAK,EAAc,CAKhC,OAAO,EAGT,SAAwB,EAAO,EAAM,CACnC,GAAI,EAAK,WAAa,GACpB,MAAU,MAAM,8BAA+C,CAGjE,IAAM,EAAS,IAAI,EAAe,EAAK,CACjC,EAAQ,EAAa,EAAO,CAE5B,EAAc,EAAE,CAChB,EAAQ,EAAE,CAChB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,SAAU,IAAK,CACvC,IAAM,EAAI,IAAI,aAAa,EAAM,QAAQ,CACzC,EAAY,KAAK,EAAE,CACnB,EAAM,KAAK,GAAK,CAAC,CAGnB,IAAI,EAAc,EACd,EAAW,EACf,EACE,GAAW,EAAiB,EAAQ,EAAO,EAAO,EAAa,EAAY,CAC3E,GAAe,QACR,GAAY,EAAc,EAAM,SAEzC,MAAO,CACL,GAAG,EACH,cACD,CC1GwB,EAAoB,IAAK,GAClD,KAAK,OAAQ,MAAW,EAAI,GAAK,EAAE,CACpC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{n as e,r as t,t as n}from"./chunk-Bwx8J3ba.mjs";const r=(e,t=4294967295,n=79764919)=>{let r=new Int32Array(256),i,a,o,s=t;for(i=0;i<256;i++){for(o=i<<24,a=8;a>0;--a)o=2147483648&o?o<<1^n:o<<1;r[i]=o}for(i=0;i<e.length;i++)s=s<<8^r[255&(s>>24^e[i])];return s},i=(e,t=r)=>{let n=e=>new Uint8Array(e.length/2).map(((t,n)=>parseInt(e.substring(2*n,2*(n+1)),16))),i=e=>n(e)[0],a=new Map;[,8364,,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,,381,,,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,,382,376].forEach(((e,t)=>a.set(e,t)));let o=new Uint8Array(e.length),s,c,l,u=!1,d=0,f=42,p=e.length>13&&e.substring(0,9)===`dynEncode`,m=0;p&&(m=11,c=i(e.substring(9,m)),c<=1&&(m+=2,f=i(e.substring(11,m))),c===1&&(m+=8,l=(e=>new DataView(n(e).buffer).getInt32(0,!0))(e.substring(13,m))));let h=256-f;for(let t=m;t<e.length;t++)if(s=e.charCodeAt(t),s!==61||u){if(s===92&&t<e.length-5&&p){let n=e.charCodeAt(t+1);n!==117&&n!==85||(s=parseInt(e.substring(t+2,t+6),16),t+=5)}if(s>255){let e=a.get(s);e&&(s=e+127)}u&&(u=!1,s-=64),o[d++]=s<f&&s>0?s+h:s-f}else u=!0;let g=o.subarray(0,d);if(p&&c===1){let e=t(g);if(e!==l){let t=`Decode failed crc32 validation`;throw console.error("`simple-yenc`\n",t+`
|
|
2
|
+
`,`Expected: `+l+`; Got: `+e+`
|
|
3
|
+
`,`Visit https://github.com/eshaz/simple-yenc for more information`),Error(t)}}return g};function a(){let e=Uint8Array,t=Float32Array;a.modules||Object.defineProperties(a,{modules:{value:new WeakMap},setModule:{value(e,t){a.modules.set(e,Promise.resolve(t))}},getModule:{value(e,t){let n=a.modules.get(e);return n||(t?n=WebAssembly.compile(i(t)):(t=e.wasm,n=a.inflateDynEncodeString(t).then(e=>WebAssembly.compile(e))),a.modules.set(e,n)),n}},concatFloat32:{value(e,n){let r=new t(n),i=0,a=0;for(;i<e.length;)r.set(e[i],a),a+=e[i++].length;return r}},getDecodedAudio:{value:(e,t,n,r,i)=>({errors:e,channelData:t,samplesDecoded:n,sampleRate:r,bitDepth:i})},getDecodedAudioMultiChannel:{value(e,t,n,r,i,o){let s=[],c,l;for(c=0;c<n;c++){let e=[];for(l=0;l<t.length;)e.push(t[l++][c]||[]);s.push(a.concatFloat32(e,r))}return a.getDecodedAudio(e,s,r,i,o)}},inflateDynEncodeString:{value(t){return t=i(t),new Promise(n=>{let r=String.raw`dynEncode012804c7886d()((()>+*§§)§,§§§§)§+§§§)§+.-()(*)-+)(.7*§)i¸¸,3§(i¸¸,3/G+.¡*(,(,3+)2å:-),§H(P*DI*H(P*@I++hH)H*r,hH(H(P*<J,i)^*<H,H(P*4U((I-H(H*i0J,^*DH+H-H*I+H,I*4)33H(H*H)^*DH(H+H)^*@H+i§H)i§3æ*).§K(iHI/+§H,iHn,§H+i(H+i(rCJ0I,H*I-+hH,,hH(H-V)(i)J.H.W)(i)c)(H,i)I,H-i*I-4)33i(I.*hH(V)(H+n5(H(i*I-i(I,i)I.+hH,i*J+iHn,hi(I-i*I,+hH,H/H-c)(H,iFn,hi(I,+hH,H0n5-H*V)(J(,hH/H(i)J(H(V)(J(i)c)(H)H(i)H,c)(3H*i*I*H,i)I,4(3(-H(H,W)(H-I-H,i*I,4)3(3(3H,H-I1H+I,H.i)H1V)(J.i(v5(33H.-H(H,i(c)(H,i*I,4)333)-§i*I*+§H*iHn,hi73H,H(i)8(H+J+H)P*(H*V)(J-r,§H)P*,H.i)H+H,i)V)(-H*i*I*H+i)I+H-H.I.H,H-i)I,4)333Ã+)-§iø7i(^*(iü7I,*h+hH+iDn,h*hilI+i)I,+hH+,hH+iô7H,c)(i)H+i´8W)(H,I,H+i*I+4)-+hH(H)8*J-i(p5.*h*h*hH-i')u,hH(P*(J+,hH(P*0J,H(P*,n50H+H,H-b((3H(P*0i)I.4)3H-i¨*n5*H-iÅ*s,hi73H-i)J+V)&+I,H(H+V)æ,8(I.H(H*8*J-i(p51H-i)J+i¸7V)(H(H+iø7V)(8(J/H(P*0J+s,hi73H+H,H.J,I.H(P*(m5(H.H(P*,s5.+hH,m5*H(P*(J.H+H.H+H/U((b((H(H(P*0i)J+^*0H,i)I,4(3(3H(H.^*03H-i¨*o5)33i(73(3(3-H,H+i)c)(H,i*I,H+i)I+4)33i)I-3H-3!2)0§K(i2J,L(H,H(^*(H,H*^*4H,i(^*0H,i(^*DH,j(_*<H,H)P*(^*,H,H+P*(^*8*h*h+hH,i)8(I3i§I**h*h*h*h*h*h*hH,i*8(6+(),03H,j(_*@i*I-H,P*<J.i,J(H,P*8J/s50H,H.i+J0^*<i¦I*H.H,P*4J1J.U(*H.U((J2i')o5/H.U()I.H,H(^*<H0H1U((H.i0J.i§i0i')o5/H/H.H2J*H(J.q50H,P*0J/H*I-H,P*(J0,hH,P*,H-q,hi)I-423+hH*m5+H/H0H(H1U((b((H/i)I/H(i)I(H*i)I*4(3(3H,H.^*<H,H-^*04*3iØ1U((5+i(I(i¨7i1^*(i$6iè1^*(i°7iè6^*(i¬7iÈ6^*(+hH(iÈ*n,hiÈ*I(+hH(i¨,n,hi¨,I(+hH(iØ,n,hiØ,I(+hH(iè,o,hH,i-H(i0c)(H(i*I(4)33iè1i1H,i-iÈ*8)Bi(I(+hH(ido,hH,i-H(i-c)(H(i*I(4)33iÈ6iè6H,i-iF8)BiØ1i)b((41-H,i-H(i/c)(H(i*I(4)3(3(-H,i-H(i1c)(H(i*I(4)3(3(-H,i-H(i0c)(H(i*I(4)3(3(3H,H/^*0H,H(^*<3i(I*4*3H,H,i¸)^*TH,H,iø-^*PH,H,iX^*LH,H,i(^*HH,i-8(I(H,i-8(I-i¥I*H,i,8(I.H(iErH-iEr5)H(i©*I1H-i)I0i(i;H.i,J(i(H(i(rCJ(J*H*i;sCI*i¨1I-H(I/+hH/,hH,i-H-V)(i)H,i+8(c)(H/i)I/H-i*I-H*i)I*4)-H(i)i¨1I/+hH(H*o,hH,i-H/V)(i)i(c)(H/i*I/H(i)I(4)33i¤I*H,iø-H,i¸)H,i-i;8)5+H0H1I2i(I-+hH-H2p,hH,H,iP8*J*i(p5-H*i7u,hH,i-H-i)H*c)(H-i)I-4*3i(I/i+I.i+I(*h*h*hH*i86*(*)3H-m,hi£I*403H-i)H,W)-I/i*I(4)3i3I.i/I(3H2H,H(8(H.J(H-J.p,hi¢I*4.3H,i-H-i)I*+hH(,hH*H/c)(H*i*I*H(i)I(4)-H.I-4+3(3(33H,W)1m,hiI*4,3H,iø-H,i¸)H,i-H18)J(,hi¡I*H(i(p5,H1H,V)ú-H,V)ø-o5,3H,i(H,iXH,i-H1i)H08)J(,hi I*H(i(p5,H0H,V)H,V)o5,3H,H,iPH,iH8+I*4+3(3(3H,i$6i¬78+I*3H*H3m5(3i)I-H*i(r5)3H)H,P*0^*(H+H,P*<^*(H*I-3H,i2L(H-33Á)+(i¨03b+(,(-(.(/(0(1(2(3(5(7(9(;(?(C(G(K(S([(c(k({(((«(Ë(ë((*)(iø03O)()()()(*(*(*(*(+(+(+(+(,(,(,(,(-(-(-(-(i¨13M8(9(:(((0(/(1(.(2(-(3(,(4(+(5(*(6()(7(T7*S7US0U `;a.getModule(a,r).then(e=>WebAssembly.instantiate(e,{})).then(({exports:r})=>{let i=new Map(Object.entries(r)),a=i.get(`puff`),o=i.get(`memory`).buffer,s=new e(o),c=new DataView(o),l=i.get(`__heap_base`),u=t.length,d=l;l+=4,c.setInt32(d,u,!0);let f=l;l+=u,s.set(t,f);let p=l;l+=4,c.setInt32(p,s.byteLength-l,!0),a(l,p,f,d),n(s.slice(l,l+c.getInt32(p,!0)))})})}}}),Object.defineProperty(this,`wasm`,{enumerable:!0,get:()=>this._wasm}),this.getOutputChannels=(e,t,n)=>{let r=[],i=0;for(;i<t;)r.push(e.slice(i*n,i++*n+n));return r},this.allocateTypedArray=(e,t,n=!0)=>{let r=this._wasm.malloc(t.BYTES_PER_ELEMENT*e);return n&&this._pointers.add(r),{ptr:r,len:e,buf:new t(this._wasm.HEAP,r,e)}},this.free=()=>{this._pointers.forEach(e=>{this._wasm.free(e)}),this._pointers.clear()},this.codeToString=e=>{let t=[],n=new Uint8Array(this._wasm.HEAP);for(let r=n[e];r!==0;r=n[++e])t.push(r);return String.fromCharCode.apply(null,t)},this.addError=(e,t,n,r,i,a)=>{e.push({message:t,frameLength:n,frameNumber:r,inputBytes:i,outputSamples:a})},this.instantiate=(e,t)=>(t&&a.setModule(e,t),this._wasm=new e(a).instantiate(),this._pointers=new Set,this._wasm.ready.then(()=>this))}var o=t(n(((t,n)=>{let r=e(`url`),i=e(`vm`),a=e(`worker_threads`),o=Symbol.for(`worker`),s=Symbol.for(`events`);var c=class{constructor(){Object.defineProperty(this,s,{value:new Map})}dispatchEvent(e){if(e.target=e.currentTarget=this,this[`on`+e.type])try{this[`on`+e.type](e)}catch(e){console.error(e)}this[s].get(e.type)?.forEach(t=>{try{t.call(this,e)}catch(e){console.error(e)}})}addEventListener(e,t){let n=this[s].get(e);n||this[s].set(e,n=[]),n.push(t)}removeEventListener(e,t){let n=this[s].get(e);if(n){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}};function l(e,t){this.type=e,this.timeStamp=Date.now(),this.target=this.currentTarget=this.data=null}n.exports=a.isMainThread?d():f();let u=r.pathToFileURL(process.cwd()+`/`);function d(){class e extends c{constructor(e,t){super();let{name:n,type:i}=t||{};e+=``;let s;s=/^data:/.test(e)?e:r.fileURLToPath(new r.URL(e,u));let c=new a.Worker(__filename,{workerData:{mod:s,name:n,type:i}});Object.defineProperty(this,o,{value:c}),c.on(`message`,e=>{let t=new l(`message`);t.data=e,this.dispatchEvent(t)}),c.on(`error`,e=>{e.type=`error`,this.dispatchEvent(e)}),c.on(`exit`,()=>{this.dispatchEvent(new l(`close`))})}postMessage(e,t){this[o].postMessage(e,t)}terminate(){this[o].terminate()}}return e.prototype.onmessage=e.prototype.onerror=e.prototype.onclose=null,e}function f(){let{mod:t,name:n,type:r}=a.workerData||{};if(!t)return d();let i=global.self=global,o=[];function s(){let e=o;o=null,e.forEach(e=>{i.dispatchEvent(e)})}a.parentPort.on(`message`,e=>{let t=new l(`message`);t.data=e,o==null?i.dispatchEvent(t):o.push(t)}),a.parentPort.on(`error`,e=>{e.type=`Error`,i.dispatchEvent(e)});class u extends c{postMessage(e,t){a.parentPort.postMessage(e,t)}close(){process.exit()}}let f=Object.getPrototypeOf(global);delete f.constructor,Object.defineProperties(u.prototype,f),f=Object.setPrototypeOf(global,new u),[`postMessage`,`addEventListener`,`removeEventListener`,`dispatchEvent`].forEach(e=>{f[e]=f[e].bind(global)}),global.name=n;let m=/^data:/.test(t);if(r===`module`)import(t).catch(e=>{if(m&&e.message===`Not supported`)return console.warn(`Worker(): Importing data: URLs requires Node 12.10+. Falling back to classic worker.`),p(t,n);console.error(e)}).then(s);else{try{/^data:/.test(t)?p(t,n):e(t)}catch(e){console.error(e)}Promise.resolve().then(s)}}function p(e,t){let{data:n}=m(e);return i.runInThisContext(n,{filename:`worker.<`+(t||`data:`)+`>`})}function m(e){let[t,n,r,i]=e.match(/^data: *([^;,]*)(?: *; *([^,]*))? *,(.*)$/)||[];if(!t)throw Error(`Invalid Data URL.`);if(r)switch(r.toLowerCase()){case`base64`:i=Buffer.from(i,`base64`).toString();break;default:throw Error(`Unknown Data URL encoding "`+r+`"`)}return{type:n,data:i}}}))(),1);const s=()=>globalThis.Worker||o.default;var c=class extends s(){constructor(e,t,n,r){a.modules||new a;let i=a.modules.get(n);if(!i){let e=`text/javascript`,t,o=`'use strict';(${((e,t,n)=>{let r,i,a=new Promise(e=>{i=e});self.onmessage=({data:{id:o,command:s,data:c}})=>{let l=a,u={id:o},d;s===`init`?(Object.defineProperties(e,{WASMAudioDecoderCommon:{value:t},EmscriptenWASM:{value:n},module:{value:c.module},isWebWorker:{value:!0}}),r=new e(c.options),i()):s===`free`?r.free():s===`ready`?l=l.then(()=>r.ready):s===`reset`?l=l.then(()=>r.reset()):(Object.assign(u,r[s](Array.isArray(c)?c.map(e=>new Uint8Array(e)):new Uint8Array(c))),d=u.channelData?u.channelData.map(e=>e.buffer):[]),l.then(()=>self.postMessage(u,d))}}).toString()})(${n}, ${a}, ${r})`;try{t=process.versions.node!==void 0}catch{}i=t?`data:${e};base64,${Buffer.from(o).toString(`base64`)}`:URL.createObjectURL(new Blob([o],{type:e})),a.modules.set(n,i)}super(i,{name:t}),this._id=-(2**53-1),this._enqueuedOperations=new Map,this.onmessage=({data:e})=>{let{id:t,...n}=e;this._enqueuedOperations.get(t)(n),this._enqueuedOperations.delete(t)},new r(a).getModule().then(t=>{this.postToDecoder(`init`,{module:t,options:e})})}async postToDecoder(e,t){return new Promise(n=>{this.postMessage({command:e,id:this._id,data:t}),this._enqueuedOperations.set(this._id++,n)})}get ready(){return this.postToDecoder(`ready`)}async free(){await this.postToDecoder(`free`).finally(()=>{this.terminate()})}async reset(){await this.postToDecoder(`reset`)}};const l=(e,t)=>{Object.defineProperty(e,`name`,{value:t})};export{c as n,a as r,l as t};
|
|
4
|
+
//# sourceMappingURL=utilities-DBsvONcX.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utilities-DBsvONcX.mjs","names":["decode","URL","NodeWorker"],"sources":["../../../node_modules/.bun/simple-yenc@1.0.4/node_modules/simple-yenc/dist/esm.js","../../../node_modules/.bun/@wasm-audio-decoders+common@9.0.7/node_modules/@wasm-audio-decoders/common/src/WASMAudioDecoderCommon.js","../../../node_modules/.bun/@eshaz+web-worker@1.2.2/node_modules/@eshaz/web-worker/cjs/node.js","../../../node_modules/.bun/@wasm-audio-decoders+common@9.0.7/node_modules/@wasm-audio-decoders/common/src/WASMAudioDecoderWorker.js","../../../node_modules/.bun/@wasm-audio-decoders+common@9.0.7/node_modules/@wasm-audio-decoders/common/src/utilities.js"],"sourcesContent":["const t=(t,n=4294967295,e=79764919)=>{const r=new Int32Array(256);let o,s,i,c=n;for(o=0;o<256;o++){for(i=o<<24,s=8;s>0;--s)i=2147483648&i?i<<1^e:i<<1;r[o]=i}for(o=0;o<t.length;o++)c=c<<8^r[255&(c>>24^t[o])];return c},n=t=>{const n=[];for(const e of t){let t=(e+42)%256;0===t||10===t||13===t||61===t?n.push(\"=\"+String.fromCharCode((t+64)%256)):n.push(String.fromCharCode(t))}return n.join(\"\")},e=(n,e=t)=>{const r=t=>new Uint8Array(t.length/2).map(((n,e)=>parseInt(t.substring(2*e,2*(e+1)),16))),o=t=>r(t)[0],s=new Map;[,8364,,8218,402,8222,8230,8224,8225,710,8240,352,8249,338,,381,,,8216,8217,8220,8221,8226,8211,8212,732,8482,353,8250,339,,382,376].forEach(((t,n)=>s.set(t,n)));const i=new Uint8Array(n.length);let c,a,l,f=!1,g=0,h=42,p=n.length>13&&\"dynEncode\"===n.substring(0,9),u=0;p&&(u=11,a=o(n.substring(9,u)),a<=1&&(u+=2,h=o(n.substring(11,u))),1===a&&(u+=8,l=(t=>new DataView(r(t).buffer).getInt32(0,!0))(n.substring(13,u))));const d=256-h;for(let t=u;t<n.length;t++)if(c=n.charCodeAt(t),61!==c||f){if(92===c&&t<n.length-5&&p){const e=n.charCodeAt(t+1);117!==e&&85!==e||(c=parseInt(n.substring(t+2,t+6),16),t+=5)}if(c>255){const t=s.get(c);t&&(c=t+127)}f&&(f=!1,c-=64),i[g++]=c<h&&c>0?c+d:c-h}else f=!0;const m=i.subarray(0,g);if(p&&1===a){const t=e(m);if(t!==l){const n=\"Decode failed crc32 validation\";throw console.error(\"`simple-yenc`\\n\",n+\"\\n\",\"Expected: \"+l+\"; Got: \"+t+\"\\n\",\"Visit https://github.com/eshaz/simple-yenc for more information\"),Error(n)}}return m},r=(n,e='\"',r=t,o)=>{const s=(t,n)=>(t%n+n)%n,i=(t,n)=>n.push(String.fromCharCode(61,(t+64)%256)),c=t=>t.map((t=>t.toString(16).padStart(2,\"0\")));let a,l,f=[],g=1/0,h=Array(256).fill(0);if('\"'===e?(l=[0,8,9,10,11,12,13,34,92,61],a=t=>0===t||8===t||9===t||10===t||11===t||12===t||13===t||34===t||92===t||61===t):\"'\"===e?(l=[0,8,9,10,11,12,13,39,92,61],a=t=>0===t||8===t||9===t||10===t||11===t||12===t||13===t||39===t||92===t||61===t):\"`\"===e&&(l=[13,61,96],f=[7,205,231],a=(t,n)=>13===t||36===t&&123===n||61===t||92===t&&(85===n||117===n)||96===t),void 0===o){o=0;for(let t=0;t<n.length;t++){const e=0|n[t];h[e]++;for(let r=0;r<f.length;r++){const o=f[r];s(e-n[t+1]|0,256)===o&&h[e]++}}for(let t=0;t<256;t++){let n=0;for(let e=0;e<l.length;e++)n+=h[s(l[e]-t,256)];n<g&&(g=n,o=t)}}const p=[\"dynEncode\",\"01\",c([o]),...c((t=>{const n=new Uint8Array(4);return new DataView(n.buffer).setInt32(0,t,!0),[...n]})(r(n)))];for(let t=0;t<n.length;t++){const e=(n[t]+o)%256;a(e,(n[t+1]+o)%256)?i(e,p):p.push(String.fromCharCode(e))}return\"\\\\\"===p[p.length-1]&&(p.pop(),i(92,p)),p.join(\"\")},o=t=>t.replace(/[\\\\]/g,\"\\\\\\\\\").replace(/[`]/g,\"\\\\`\").replace(/\\${/g,\"\\\\${\");export{t as crc32,e as decode,r as dynamicEncode,n as encode,o as stringify};\n","import { decode } from \"simple-yenc\";\n\nexport default function WASMAudioDecoderCommon() {\n // setup static methods\n const uint8Array = Uint8Array;\n const float32Array = Float32Array;\n\n if (!WASMAudioDecoderCommon.modules) {\n Object.defineProperties(WASMAudioDecoderCommon, {\n modules: {\n value: new WeakMap(),\n },\n\n setModule: {\n value(Ref, module) {\n WASMAudioDecoderCommon.modules.set(Ref, Promise.resolve(module));\n },\n },\n\n getModule: {\n value(Ref, wasmString) {\n let module = WASMAudioDecoderCommon.modules.get(Ref);\n\n if (!module) {\n if (!wasmString) {\n wasmString = Ref.wasm;\n module = WASMAudioDecoderCommon.inflateDynEncodeString(\n wasmString,\n ).then((data) => WebAssembly.compile(data));\n } else {\n module = WebAssembly.compile(decode(wasmString));\n }\n\n WASMAudioDecoderCommon.modules.set(Ref, module);\n }\n\n return module;\n },\n },\n\n concatFloat32: {\n value(buffers, length) {\n let ret = new float32Array(length),\n i = 0,\n offset = 0;\n\n while (i < buffers.length) {\n ret.set(buffers[i], offset);\n offset += buffers[i++].length;\n }\n\n return ret;\n },\n },\n\n getDecodedAudio: {\n value: (errors, channelData, samplesDecoded, sampleRate, bitDepth) => ({\n errors,\n channelData,\n samplesDecoded,\n sampleRate,\n bitDepth,\n }),\n },\n\n getDecodedAudioMultiChannel: {\n value(\n errors,\n input,\n channelsDecoded,\n samplesDecoded,\n sampleRate,\n bitDepth,\n ) {\n let channelData = [],\n i,\n j;\n\n for (i = 0; i < channelsDecoded; i++) {\n const channel = [];\n for (j = 0; j < input.length; ) channel.push(input[j++][i] || []);\n channelData.push(\n WASMAudioDecoderCommon.concatFloat32(channel, samplesDecoded),\n );\n }\n\n return WASMAudioDecoderCommon.getDecodedAudio(\n errors,\n channelData,\n samplesDecoded,\n sampleRate,\n bitDepth,\n );\n },\n },\n\n /*\n ******************\n * Compression Code\n ******************\n */\n\n inflateDynEncodeString: {\n value(source) {\n source = decode(source);\n\n return new Promise((resolve) => {\n // prettier-ignore\n const puffString = String.raw`dynEncode012804c7886d()((()>+*§§)§,§§§§)§+§§§)§+.-()(*)-+)(.7*§)i¸¸,3§(i¸¸,3/G+.¡*(,(,3+)2å:-),§H(P*DI*H(P*@I++hH)H*r,hH(H(P*<J,i)^*<H,H(P*4U((I-H(H*i0J,^*DH+H-H*I+H,I*4)33H(H*H)^*DH(H+H)^*@H+i§H)i§3æ*).§K(iHI/+§H,iHn,§H+i(H+i(rCJ0I,H*I-+hH,,hH(H-V)(i)J.H.W)(i)c)(H,i)I,H-i*I-4)33i(I.*hH(V)(H+n5(H(i*I-i(I,i)I.+hH,i*J+iHn,hi(I-i*I,+hH,H/H-c)(H,iFn,hi(I,+hH,H0n5-H*V)(J(,hH/H(i)J(H(V)(J(i)c)(H)H(i)H,c)(3H*i*I*H,i)I,4(3(-H(H,W)(H-I-H,i*I,4)3(3(3H,H-I1H+I,H.i)H1V)(J.i(v5(33H.-H(H,i(c)(H,i*I,4)333)-§i*I*+§H*iHn,hi73H,H(i)8(H+J+H)P*(H*V)(J-r,§H)P*,H.i)H+H,i)V)(-H*i*I*H+i)I+H-H.I.H,H-i)I,4)333Ã+)-§iø7i(^*(iü7I,*h+hH+iDn,h*hilI+i)I,+hH+,hH+iô7H,c)(i)H+i´8W)(H,I,H+i*I+4)-+hH(H)8*J-i(p5.*h*h*hH-i')u,hH(P*(J+,hH(P*0J,H(P*,n50H+H,H-b((3H(P*0i)I.4)3H-i¨*n5*H-iÅ*s,hi73H-i)J+V)&+I,H(H+V)æ,8(I.H(H*8*J-i(p51H-i)J+i¸7V)(H(H+iø7V)(8(J/H(P*0J+s,hi73H+H,H.J,I.H(P*(m5(H.H(P*,s5.+hH,m5*H(P*(J.H+H.H+H/U((b((H(H(P*0i)J+^*0H,i)I,4(3(3H(H.^*03H-i¨*o5)33i(73(3(3-H,H+i)c)(H,i*I,H+i)I+4)33i)I-3H-3!2)0§K(i\u00182J,L(H,H(^*(H,H*^*4H,i(^*0H,i(^*DH,j(_*<H,H)P*(^*,H,H+P*(^*8*h*h+hH,i)8(I3i§I**h*h*h*h*h*h*hH,i*8(6+(),03H,j(_*@i*I-H,P*<J.i,J(H,P*8J/s50H,H.i+J0^*<i¦I*H.H,P*4J1J.U(*H.U((J2i')o5/H.U()I.H,H(^*<H0H1U((H.i0J.i§i0i')o5/H/H.H2J*H(J.q50H,P*0J/H*I-H,P*(J0,hH,P*,H-q,hi)I-423+hH*m5+H/H0H(H1U((b((H/i)I/H(i)I(H*i)I*4(3(3H,H.^*<H,H-^*04*3iØ1U((5+i(I(i¨7i\b1^*(i$6iè1^*(i°7iè6^*(i¬7iÈ6^*(+hH(iÈ*n,hiÈ*I(+hH(i¨,n,hi¨,I(+hH(iØ,n,hiØ,I(+hH(iè,o,hH,i\u0018-H(i0c)(H(i*I(4)33iè1i\b1H,i\u0018-iÈ*8)Bi(I(+hH(ido,hH,i\u0018-H(i-c)(H(i*I(4)33iÈ6iè6H,i\u0018-iF8)BiØ1i)b((41-H,i\u0018-H(i/c)(H(i*I(4)3(3(-H,i\u0018-H(i1c)(H(i*I(4)3(3(-H,i\u0018-H(i0c)(H(i*I(4)3(3(3H,H/^*0H,H(^*<3i(I*4*3H,H,i¸)^*TH,H,iø-^*PH,H,iX^*LH,H,i\u0018(^*HH,i-8(I(H,i-8(I-i¥I*H,i,8(I.H(iErH-iEr5)H(i©*I1H-i)I0i(i;H.i,J(i(H(i(rCJ(J*H*i;sCI*i¨1I-H(I/+hH/,hH,i\u0018-H-V)(i)H,i+8(c)(H/i)I/H-i*I-H*i)I*4)-H(i)i¨1I/+hH(H*o,hH,i\u0018-H/V)(i)i(c)(H/i*I/H(i)I(4)33i¤I*H,iø-H,i¸)H,i\u0018-i;8)5+H0H1I2i(I-+hH-H2p,hH,H,iP8*J*i(p5-H*i7u,hH,i\u0018-H-i)H*c)(H-i)I-4*3i(I/i+I.i+I(*h*h*hH*i86*(*)3H-m,hi£I*403H-i)H,W)\u0016-I/i*I(4)3i3I.i/I(3H2H,H(8(H.J(H-J.p,hi¢I*4.3H,i\u0018-H-i)I*+hH(,hH*H/c)(H*i*I*H(i)I(4)-H.I-4+3(3(33H,W)\u00181m,hiI*4,3H,iø-H,i¸)H,i\u0018-H18)J(,hi¡I*H(i(p5,H1H,V)ú-H,V)ø-o5,3H,i\u0018(H,iXH,i\u0018-H1i)H08)J(,hi I*H(i(p5,H0H,V)H,V)o5,3H,H,iPH,iH8+I*4+3(3(3H,i$6i¬78+I*3H*H3m5(3i)I-H*i(r5)3H)H,P*0^*(H+H,P*<^*(H*I-3H,i\u00182L(H-33Á)+(i¨03b+(,(-(.(/(0(1(2(3(5(7(9(;(?(C(G(K(S([(c(k({(((«(Ë(ë(\u000b(*)(iø03O)()()()(*(*(*(*(+(+(+(+(,(,(,(,(-(-(-(-(i¨13M8(9(:(((0(/(1(.(2(-(3(,(4(+(5(*(6()(7(T7*S7US0U `;\n\n WASMAudioDecoderCommon.getModule(WASMAudioDecoderCommon, puffString)\n .then((wasm) => WebAssembly.instantiate(wasm, {}))\n .then(({ exports }) => {\n // required for minifiers that mangle the __heap_base property\n const instanceExports = new Map(Object.entries(exports));\n\n const puff = instanceExports.get(\"puff\");\n const memory = instanceExports.get(\"memory\")[\"buffer\"];\n const dataArray = new uint8Array(memory);\n const heapView = new DataView(memory);\n\n let heapPos = instanceExports.get(\"__heap_base\");\n\n // source length\n const sourceLength = source.length;\n const sourceLengthPtr = heapPos;\n heapPos += 4;\n heapView.setInt32(sourceLengthPtr, sourceLength, true);\n\n // source data\n const sourcePtr = heapPos;\n heapPos += sourceLength;\n dataArray.set(source, sourcePtr);\n\n // destination length\n const destLengthPtr = heapPos;\n heapPos += 4;\n heapView.setInt32(\n destLengthPtr,\n dataArray.byteLength - heapPos,\n true,\n );\n\n // destination data fills in the rest of the heap\n puff(heapPos, destLengthPtr, sourcePtr, sourceLengthPtr);\n\n resolve(\n dataArray.slice(\n heapPos,\n heapPos + heapView.getInt32(destLengthPtr, true),\n ),\n );\n });\n });\n },\n },\n });\n }\n\n Object.defineProperty(this, \"wasm\", {\n enumerable: true,\n get: () => this._wasm,\n });\n\n this.getOutputChannels = (outputData, channelsDecoded, samplesDecoded) => {\n let output = [],\n i = 0;\n\n while (i < channelsDecoded)\n output.push(\n outputData.slice(\n i * samplesDecoded,\n i++ * samplesDecoded + samplesDecoded,\n ),\n );\n\n return output;\n };\n\n this.allocateTypedArray = (len, TypedArray, setPointer = true) => {\n const ptr = this._wasm.malloc(TypedArray.BYTES_PER_ELEMENT * len);\n if (setPointer) this._pointers.add(ptr);\n\n return {\n ptr: ptr,\n len: len,\n buf: new TypedArray(this._wasm.HEAP, ptr, len),\n };\n };\n\n this.free = () => {\n this._pointers.forEach((ptr) => {\n this._wasm.free(ptr);\n });\n this._pointers.clear();\n };\n\n this.codeToString = (ptr) => {\n const characters = [],\n heap = new Uint8Array(this._wasm.HEAP);\n for (let character = heap[ptr]; character !== 0; character = heap[++ptr])\n characters.push(character);\n\n return String.fromCharCode.apply(null, characters);\n };\n\n this.addError = (\n errors,\n message,\n frameLength,\n frameNumber,\n inputBytes,\n outputSamples,\n ) => {\n errors.push({\n message: message,\n frameLength: frameLength,\n frameNumber: frameNumber,\n inputBytes: inputBytes,\n outputSamples: outputSamples,\n });\n };\n\n this.instantiate = (_EmscriptenWASM, _module) => {\n if (_module) WASMAudioDecoderCommon.setModule(_EmscriptenWASM, _module);\n this._wasm = new _EmscriptenWASM(WASMAudioDecoderCommon).instantiate();\n this._pointers = new Set();\n\n return this._wasm.ready.then(() => this);\n };\n}\n","/**\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nconst URL = require('url');\nconst VM = require('vm');\nconst threads = require('worker_threads');\nconst WORKER = Symbol.for('worker');\nconst EVENTS = Symbol.for('events');\nclass EventTarget {\n constructor() {\n Object.defineProperty(this, EVENTS, {\n value: new Map()\n });\n }\n dispatchEvent(event) {\n event.target = event.currentTarget = this;\n if (this['on' + event.type]) {\n try {\n this['on' + event.type](event);\n } catch (err) {\n console.error(err);\n }\n }\n const list = this[EVENTS].get(event.type);\n if (list == null) return;\n list.forEach(handler => {\n try {\n handler.call(this, event);\n } catch (err) {\n console.error(err);\n }\n });\n }\n addEventListener(type, fn) {\n let events = this[EVENTS].get(type);\n if (!events) this[EVENTS].set(type, events = []);\n events.push(fn);\n }\n removeEventListener(type, fn) {\n let events = this[EVENTS].get(type);\n if (events) {\n const index = events.indexOf(fn);\n if (index !== -1) events.splice(index, 1);\n }\n }\n}\nfunction Event(type, target) {\n this.type = type;\n this.timeStamp = Date.now();\n this.target = this.currentTarget = this.data = null;\n}\n\n// this module is used self-referentially on both sides of the\n// thread boundary, but behaves differently in each context.\nmodule.exports = threads.isMainThread ? mainThread() : workerThread();\nconst baseUrl = URL.pathToFileURL(process.cwd() + '/');\nfunction mainThread() {\n /**\n * A web-compatible Worker implementation atop Node's worker_threads.\n * - uses DOM-style events (Event.data, Event.type, etc)\n * - supports event handler properties (worker.onmessage)\n * - Worker() constructor accepts a module URL\n * - accepts the {type:'module'} option\n * - emulates WorkerGlobalScope within the worker\n * @param {string} url The URL or module specifier to load\n * @param {object} [options] Worker construction options\n * @param {string} [options.name] Available as `self.name` within the Worker\n * @param {string} [options.type=\"classic\"] Pass \"module\" to create a Module Worker.\n */\n class Worker extends EventTarget {\n constructor(url, options) {\n super();\n const {\n name,\n type\n } = options || {};\n url += '';\n let mod;\n if (/^data:/.test(url)) {\n mod = url;\n } else {\n mod = URL.fileURLToPath(new URL.URL(url, baseUrl));\n }\n const worker = new threads.Worker(__filename, {\n workerData: {\n mod,\n name,\n type\n }\n });\n Object.defineProperty(this, WORKER, {\n value: worker\n });\n worker.on('message', data => {\n const event = new Event('message');\n event.data = data;\n this.dispatchEvent(event);\n });\n worker.on('error', error => {\n error.type = 'error';\n this.dispatchEvent(error);\n });\n worker.on('exit', () => {\n this.dispatchEvent(new Event('close'));\n });\n }\n postMessage(data, transferList) {\n this[WORKER].postMessage(data, transferList);\n }\n terminate() {\n this[WORKER].terminate();\n }\n }\n Worker.prototype.onmessage = Worker.prototype.onerror = Worker.prototype.onclose = null;\n return Worker;\n}\nfunction workerThread() {\n let {\n mod,\n name,\n type\n } = threads.workerData || {};\n if (!mod) return mainThread();\n\n // turn global into a mock WorkerGlobalScope\n const self = global.self = global;\n\n // enqueue messages to dispatch after modules are loaded\n let q = [];\n function flush() {\n const buffered = q;\n q = null;\n buffered.forEach(event => {\n self.dispatchEvent(event);\n });\n }\n threads.parentPort.on('message', data => {\n const event = new Event('message');\n event.data = data;\n if (q == null) self.dispatchEvent(event);else q.push(event);\n });\n threads.parentPort.on('error', err => {\n err.type = 'Error';\n self.dispatchEvent(err);\n });\n class WorkerGlobalScope extends EventTarget {\n postMessage(data, transferList) {\n threads.parentPort.postMessage(data, transferList);\n }\n // Emulates https://developer.mozilla.org/en-US/docs/Web/API/DedicatedWorkerGlobalScope/close\n close() {\n process.exit();\n }\n }\n let proto = Object.getPrototypeOf(global);\n delete proto.constructor;\n Object.defineProperties(WorkerGlobalScope.prototype, proto);\n proto = Object.setPrototypeOf(global, new WorkerGlobalScope());\n ['postMessage', 'addEventListener', 'removeEventListener', 'dispatchEvent'].forEach(fn => {\n proto[fn] = proto[fn].bind(global);\n });\n global.name = name;\n const isDataUrl = /^data:/.test(mod);\n if (type === 'module') {\n import(mod).catch(err => {\n if (isDataUrl && err.message === 'Not supported') {\n console.warn('Worker(): Importing data: URLs requires Node 12.10+. Falling back to classic worker.');\n return evaluateDataUrl(mod, name);\n }\n console.error(err);\n }).then(flush);\n } else {\n try {\n if (/^data:/.test(mod)) {\n evaluateDataUrl(mod, name);\n } else {\n require(mod);\n }\n } catch (err) {\n console.error(err);\n }\n Promise.resolve().then(flush);\n }\n}\nfunction evaluateDataUrl(url, name) {\n const {\n data\n } = parseDataUrl(url);\n return VM.runInThisContext(data, {\n filename: 'worker.<' + (name || 'data:') + '>'\n });\n}\nfunction parseDataUrl(url) {\n let [m, type, encoding, data] = url.match(/^data: *([^;,]*)(?: *; *([^,]*))? *,(.*)$/) || [];\n if (!m) throw Error('Invalid Data URL.');\n if (encoding) switch (encoding.toLowerCase()) {\n case 'base64':\n data = Buffer.from(data, 'base64').toString();\n break;\n default:\n throw Error('Unknown Data URL encoding \"' + encoding + '\"');\n }\n return {\n type,\n data\n };\n}","import NodeWorker from \"@eshaz/web-worker\";\nimport WASMAudioDecoderCommon from \"./WASMAudioDecoderCommon.js\";\n\nconst getWorker = () => globalThis.Worker || NodeWorker;\n\nexport default class WASMAudioDecoderWorker extends getWorker() {\n constructor(options, name, Decoder, EmscriptenWASM) {\n if (!WASMAudioDecoderCommon.modules) new WASMAudioDecoderCommon();\n\n let source = WASMAudioDecoderCommon.modules.get(Decoder);\n\n if (!source) {\n let type = \"text/javascript\",\n isNode,\n webworkerSourceCode =\n \"'use strict';\" +\n // dependencies need to be manually resolved when stringifying this function\n `(${((_Decoder, _WASMAudioDecoderCommon, _EmscriptenWASM) => {\n // We're in a Web Worker\n\n // setup Promise that will be resolved once the WebAssembly Module is received\n let decoder,\n moduleResolve,\n modulePromise = new Promise((resolve) => {\n moduleResolve = resolve;\n });\n\n self.onmessage = ({ data: { id, command, data } }) => {\n let messagePromise = modulePromise,\n messagePayload = { id },\n transferList;\n\n if (command === \"init\") {\n Object.defineProperties(_Decoder, {\n WASMAudioDecoderCommon: { value: _WASMAudioDecoderCommon },\n EmscriptenWASM: { value: _EmscriptenWASM },\n module: { value: data.module },\n isWebWorker: { value: true },\n });\n\n decoder = new _Decoder(data.options);\n moduleResolve();\n } else if (command === \"free\") {\n decoder.free();\n } else if (command === \"ready\") {\n messagePromise = messagePromise.then(() => decoder.ready);\n } else if (command === \"reset\") {\n messagePromise = messagePromise.then(() => decoder.reset());\n } else {\n // \"decode\":\n // \"decodeFrame\":\n // \"decodeFrames\":\n Object.assign(\n messagePayload,\n decoder[command](\n // detach buffers\n Array.isArray(data)\n ? data.map((data) => new Uint8Array(data))\n : new Uint8Array(data),\n ),\n );\n // The \"transferList\" parameter transfers ownership of channel data to main thread,\n // which avoids copying memory.\n transferList = messagePayload.channelData\n ? messagePayload.channelData.map((channel) => channel.buffer)\n : [];\n }\n\n messagePromise.then(() =>\n self.postMessage(messagePayload, transferList),\n );\n };\n }).toString()})(${Decoder}, ${WASMAudioDecoderCommon}, ${EmscriptenWASM})`;\n\n try {\n isNode = typeof process.versions.node !== \"undefined\";\n } catch {}\n\n source = isNode\n ? `data:${type};base64,${Buffer.from(webworkerSourceCode).toString(\n \"base64\",\n )}`\n : URL.createObjectURL(new Blob([webworkerSourceCode], { type }));\n\n WASMAudioDecoderCommon.modules.set(Decoder, source);\n }\n\n super(source, { name });\n\n this._id = Number.MIN_SAFE_INTEGER;\n this._enqueuedOperations = new Map();\n\n this.onmessage = ({ data }) => {\n const { id, ...rest } = data;\n this._enqueuedOperations.get(id)(rest);\n this._enqueuedOperations.delete(id);\n };\n\n new EmscriptenWASM(WASMAudioDecoderCommon).getModule().then((module) => {\n this.postToDecoder(\"init\", { module, options });\n });\n }\n\n async postToDecoder(command, data) {\n return new Promise((resolve) => {\n this.postMessage({\n command,\n id: this._id,\n data,\n });\n\n this._enqueuedOperations.set(this._id++, resolve);\n });\n }\n\n get ready() {\n return this.postToDecoder(\"ready\");\n }\n\n async free() {\n await this.postToDecoder(\"free\").finally(() => {\n this.terminate();\n });\n }\n\n async reset() {\n await this.postToDecoder(\"reset\");\n }\n}\n","export const assignNames = (Class, name) => {\n Object.defineProperty(Class, \"name\", { value: name });\n};\n"],"x_google_ignoreList":[0,1,2,3,4],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@basmilius/apple-audio-source",
|
|
3
3
|
"description": "Different audio sources for use in Apple Streaming Protocols.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.8.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": {
|
|
@@ -19,23 +19,23 @@
|
|
|
19
19
|
"provenance": false
|
|
20
20
|
},
|
|
21
21
|
"scripts": {
|
|
22
|
-
"build": "tsgo &&
|
|
22
|
+
"build": "tsgo --noEmit && tsdown",
|
|
23
|
+
"dev": "tsdown --watch"
|
|
23
24
|
},
|
|
24
|
-
"main": "./dist/index.
|
|
25
|
-
"types": "./dist/index.d.
|
|
26
|
-
"typings": "./dist/index.d.
|
|
25
|
+
"main": "./dist/index.mjs",
|
|
26
|
+
"types": "./dist/index.d.mts",
|
|
27
|
+
"typings": "./dist/index.d.mts",
|
|
27
28
|
"sideEffects": false,
|
|
28
29
|
"exports": {
|
|
29
30
|
".": {
|
|
30
|
-
"types": "./dist/index.d.
|
|
31
|
-
"default": "./dist/index.
|
|
31
|
+
"types": "./dist/index.d.mts",
|
|
32
|
+
"default": "./dist/index.mjs"
|
|
32
33
|
}
|
|
33
34
|
},
|
|
34
35
|
"dependencies": {
|
|
35
|
-
"@basmilius/apple-common": "0.
|
|
36
|
+
"@basmilius/apple-common": "0.8.0"
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
|
-
"@basmilius/tools": "^2.25.0",
|
|
39
39
|
"@types/bun": "^1.3.9",
|
|
40
40
|
"@wasm-audio-decoders/flac": "^0.2.4",
|
|
41
41
|
"@wasm-audio-decoders/ogg-vorbis": "^0.1.15",
|
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
"audio-type": "^2.2.1",
|
|
44
44
|
"mpg123-decoder": "^1.0.0",
|
|
45
45
|
"node-wav": "^0.0.2",
|
|
46
|
-
"qoa-format": "^1.0.1"
|
|
46
|
+
"qoa-format": "^1.0.1",
|
|
47
|
+
"tsdown": "^0.21.0-beta.2"
|
|
47
48
|
}
|
|
48
49
|
}
|
package/dist/const.d.ts
DELETED
package/dist/decoder/codec.d.ts
DELETED
package/dist/decoder/decode.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function(buffer: Buffer): Promise<Buffer>;
|
package/dist/decoder/index.d.ts
DELETED
package/dist/decoder/pcm.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare function convertPcm(input: Buffer, options: ConvertPcmOptions): Buffer;
|
|
2
|
-
type ConvertPcmOptions = {
|
|
3
|
-
readonly inputChannels: number;
|
|
4
|
-
readonly inputSampleRate: number;
|
|
5
|
-
readonly inputBitsPerSample: number;
|
|
6
|
-
readonly inputEndian: "little" | "big";
|
|
7
|
-
};
|
|
8
|
-
export {};
|
package/dist/ffmpeg.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { AudioSource } from "@basmilius/apple-common";
|
|
2
|
-
export default class Ffmpeg implements AudioSource {
|
|
3
|
-
#private;
|
|
4
|
-
readonly duration: number;
|
|
5
|
-
constructor(filePath: string, duration: number, sampleRate?: number, channels?: number, bytesPerChannel?: number);
|
|
6
|
-
start(): Promise<void>;
|
|
7
|
-
reset(): Promise<void>;
|
|
8
|
-
stop(): Promise<void>;
|
|
9
|
-
readFrames(count: number): Promise<Buffer | null>;
|
|
10
|
-
}
|
package/dist/index.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export { default as Ffmpeg } from "./ffmpeg";
|
|
2
|
-
export { default as Mp3 } from "./mp3";
|
|
3
|
-
export { default as Ogg } from "./ogg";
|
|
4
|
-
export { default as Pcm } from "./pcm";
|
|
5
|
-
export { default as SineWave } from "./sineWave";
|
|
6
|
-
export { default as Url } from "./url";
|
|
7
|
-
export { default as Wav } from "./wav";
|