From 982b57651bec7fd5f9b3af3c53d3de3f47d274b3 Mon Sep 17 00:00:00 2001 From: Joshua LeMay Date: Sun, 29 Oct 2023 00:55:01 -0500 Subject: [PATCH 001/114] test: migrate message v8 tests from Python to JS PR-URL: https://github.com/nodejs/node/pull/50421 Fixes: https://github.com/nodejs/node/issues/47707 Reviewed-By: Moshe Atlow Reviewed-By: Benjamin Gruenbaum Reviewed-By: Yagiz Nizipli Reviewed-By: Geoffrey Booth --- test/{message => fixtures/v8}/v8_warning.js | 2 +- .../v8/v8_warning.snapshot} | 0 test/parallel/test-node-output-v8-warning.mjs | 30 +++++++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) rename test/{message => fixtures/v8}/v8_warning.js (89%) rename test/{message/v8_warning.out => fixtures/v8/v8_warning.snapshot} (100%) create mode 100644 test/parallel/test-node-output-v8-warning.mjs diff --git a/test/message/v8_warning.js b/test/fixtures/v8/v8_warning.js similarity index 89% rename from test/message/v8_warning.js rename to test/fixtures/v8/v8_warning.js index d7d1c5e7dbdff6..ab4d2bf305823f 100644 --- a/test/message/v8_warning.js +++ b/test/fixtures/v8/v8_warning.js @@ -1,6 +1,6 @@ 'use strict'; -require('../common'); +require('../../common'); function AsmModule() { 'use asm'; diff --git a/test/message/v8_warning.out b/test/fixtures/v8/v8_warning.snapshot similarity index 100% rename from test/message/v8_warning.out rename to test/fixtures/v8/v8_warning.snapshot diff --git a/test/parallel/test-node-output-v8-warning.mjs b/test/parallel/test-node-output-v8-warning.mjs new file mode 100644 index 00000000000000..7278a03ce178e7 --- /dev/null +++ b/test/parallel/test-node-output-v8-warning.mjs @@ -0,0 +1,30 @@ +import '../common/index.mjs'; +import * as fixtures from '../common/fixtures.mjs'; +import * as snapshot from '../common/assertSnapshot.js'; +import { describe, it } from 'node:test'; + +function replaceNodeVersion(str) { + return str.replaceAll(process.version, '*'); +} + +describe('v8 output', { concurrency: true }, () => { + function normalize(str) { + return str.replaceAll(snapshot.replaceWindowsPaths(process.cwd()), '') + .replaceAll(/:\d+/g, ':*') + .replaceAll('/', '*') + .replaceAll('*test*', '*') + .replaceAll('*fixtures*v8*', '*') + .replaceAll('node --', '* --'); + } + const common = snapshot + .transform(snapshot.replaceWindowsLineEndings, snapshot.replaceWindowsPaths, replaceNodeVersion); + const defaultTransform = snapshot.transform(common, normalize); + const tests = [ + { name: 'v8/v8_warning.js' }, + ]; + for (const { name } of tests) { + it(name, async () => { + await snapshot.spawnAndAssert(fixtures.path(name), defaultTransform); + }); + } +}); From 0bd694ab6470692338e1d2f5b45fd244bcbd7291 Mon Sep 17 00:00:00 2001 From: Mika Fischer Date: Sun, 12 Nov 2023 09:26:28 +0100 Subject: [PATCH 002/114] test_runner: add tests for various mock timer issues PR-URL: https://github.com/nodejs/node/pull/50384 Fixes: https://github.com/nodejs/node/issues/50365 Fixes: https://github.com/nodejs/node/issues/50381 Fixes: https://github.com/nodejs/node/issues/50382 Reviewed-By: Benjamin Gruenbaum Reviewed-By: Chemi Atlow Reviewed-By: James M Snell --- lib/internal/test_runner/mock/mock_timers.js | 29 ++++--- test/parallel/test-runner-mock-timers.js | 85 ++++++++++++++++++++ 2 files changed, 101 insertions(+), 13 deletions(-) diff --git a/lib/internal/test_runner/mock/mock_timers.js b/lib/internal/test_runner/mock/mock_timers.js index 8fac645e9a3617..85512cc4b66a51 100644 --- a/lib/internal/test_runner/mock/mock_timers.js +++ b/lib/internal/test_runner/mock/mock_timers.js @@ -260,20 +260,23 @@ class MockTimers { #createTimer(isInterval, callback, delay, ...args) { const timerId = this.#currentTimer++; - this.#executionQueue.insert({ + const timer = { __proto__: null, id: timerId, callback, runAt: this.#now + delay, - interval: isInterval, + interval: isInterval ? delay : undefined, args, - }); - - return timerId; + }; + this.#executionQueue.insert(timer); + return timer; } - #clearTimer(position) { - this.#executionQueue.removeAt(position); + #clearTimer(timer) { + if (timer.priorityQueuePosition !== undefined) { + this.#executionQueue.removeAt(timer.priorityQueuePosition); + timer.priorityQueuePosition = undefined; + } } #createDate() { @@ -397,10 +400,10 @@ class MockTimers { emitter.emit('data', result); }; - const timerId = this.#createTimer(true, callback, interval, options); + const timer = this.#createTimer(true, callback, interval, options); const clearListeners = () => { emitter.removeAllListeners(); - context.#clearTimer(timerId); + context.#clearTimer(timer); }; const iterator = { __proto__: null, @@ -453,11 +456,11 @@ class MockTimers { } const onabort = () => { - clearFn(id); + clearFn(timer); return reject(abortIt(options.signal)); }; - const id = timerFn(() => { + const timer = timerFn(() => { return resolve(result); }, ms); @@ -620,11 +623,11 @@ class MockTimers { FunctionPrototypeApply(timer.callback, undefined, timer.args); this.#executionQueue.shift(); + timer.priorityQueuePosition = undefined; - if (timer.interval) { + if (timer.interval !== undefined) { timer.runAt += timer.interval; this.#executionQueue.insert(timer); - return; } timer = this.#executionQueue.peek(); diff --git a/test/parallel/test-runner-mock-timers.js b/test/parallel/test-runner-mock-timers.js index fae520b94cdf67..eb5cec84e122f2 100644 --- a/test/parallel/test-runner-mock-timers.js +++ b/test/parallel/test-runner-mock-timers.js @@ -479,6 +479,59 @@ describe('Mock Timers Test Suite', () => { code: 'ERR_INVALID_ARG_TYPE', }); }); + + // Test for https://github.com/nodejs/node/issues/50365 + it('should not affect other timers when aborting', async (t) => { + const f1 = t.mock.fn(); + const f2 = t.mock.fn(); + t.mock.timers.enable({ apis: ['setTimeout'] }); + const ac = new AbortController(); + + // id 1 & pos 1 in priority queue + nodeTimersPromises.setTimeout(100, undefined, { signal: ac.signal }).then(f1, f1); + // id 2 & pos 1 in priority queue (id 1 is moved to pos 2) + nodeTimersPromises.setTimeout(50).then(f2, f2); + + ac.abort(); // BUG: will remove timer at pos 1 not timer with id 1! + + t.mock.timers.runAll(); + await nodeTimersPromises.setImmediate(); // let promises settle + + // First setTimeout is aborted + assert.strictEqual(f1.mock.callCount(), 1); + assert.strictEqual(f1.mock.calls[0].arguments[0].code, 'ABORT_ERR'); + + // Second setTimeout should resolve, but never settles, because it was eronously removed by ac.abort() + assert.strictEqual(f2.mock.callCount(), 1); + }); + + // Test for https://github.com/nodejs/node/issues/50365 + it('should not affect other timers when aborted after triggering', async (t) => { + const f1 = t.mock.fn(); + const f2 = t.mock.fn(); + t.mock.timers.enable({ apis: ['setTimeout'] }); + const ac = new AbortController(); + + // id 1 & pos 1 in priority queue + nodeTimersPromises.setTimeout(50, true, { signal: ac.signal }).then(f1, f1); + // id 2 & pos 2 in priority queue + nodeTimersPromises.setTimeout(100).then(f2, f2); + + // First setTimeout resolves + t.mock.timers.tick(50); + await nodeTimersPromises.setImmediate(); // let promises settle + assert.strictEqual(f1.mock.callCount(), 1); + assert.strictEqual(f1.mock.calls[0].arguments.length, 1); + assert.strictEqual(f1.mock.calls[0].arguments[0], true); + + // Now timer with id 2 will be at pos 1 in priority queue + ac.abort(); // BUG: will remove timer at pos 1 not timer with id 1! + + // Second setTimeout should resolve, but never settles, because it was eronously removed by ac.abort() + t.mock.timers.runAll(); + await nodeTimersPromises.setImmediate(); // let promises settle + assert.strictEqual(f2.mock.callCount(), 1); + }); }); describe('setInterval Suite', () => { @@ -626,6 +679,38 @@ describe('Mock Timers Test Suite', () => { }); assert.strictEqual(numIterations, expectedIterations); }); + + // Test for https://github.com/nodejs/node/issues/50381 + it('should use the mocked interval', (t) => { + t.mock.timers.enable({ apis: ['setInterval'] }); + const fn = t.mock.fn(); + setInterval(fn, 1000); + assert.strictEqual(fn.mock.callCount(), 0); + t.mock.timers.tick(1000); + assert.strictEqual(fn.mock.callCount(), 1); + t.mock.timers.tick(1); + t.mock.timers.tick(1); + t.mock.timers.tick(1); + assert.strictEqual(fn.mock.callCount(), 1); + }); + + // Test for https://github.com/nodejs/node/issues/50382 + it('should not prevent due timers to be processed', async (t) => { + t.mock.timers.enable({ apis: ['setInterval', 'setTimeout'] }); + const f1 = t.mock.fn(); + const f2 = t.mock.fn(); + + setInterval(f1, 1000); + setTimeout(f2, 1001); + + assert.strictEqual(f1.mock.callCount(), 0); + assert.strictEqual(f2.mock.callCount(), 0); + + t.mock.timers.tick(1001); + + assert.strictEqual(f1.mock.callCount(), 1); + assert.strictEqual(f2.mock.callCount(), 1); + }); }); }); }); From 7ebc8c2aedef30a994234a66736ac84ab2936e09 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 9 Nov 2023 00:06:50 +0100 Subject: [PATCH 003/114] test,stream: enable compression WPTs PR-URL: https://github.com/nodejs/node/pull/50631 Reviewed-By: James M Snell Reviewed-By: Matteo Collina --- test/common/wpt.js | 19 +- test/fixtures/wpt/README.md | 1 + test/fixtures/wpt/compression/META.yml | 3 + .../compression-bad-chunks.tentative.any.js | 74 ++++ ...ression-constructor-error.tentative.any.js | 15 + ...ion-including-empty-chunk.tentative.any.js | 63 ++++ .../compression-large-flush-output.any.js | 41 +++ ...mpression-multiple-chunks.tentative.any.js | 67 ++++ ...compression-output-length.tentative.any.js | 64 ++++ .../compression-stream.tentative.any.js | 91 +++++ ...ompression-with-detach.tentative.window.js | 55 +++ .../decompression-bad-chunks.tentative.any.js | 85 +++++ ...ecompression-buffersource.tentative.any.js | 192 +++++++++++ ...ression-constructor-error.tentative.any.js | 15 + ...compression-correct-input.tentative.any.js | 39 +++ ...compression-corrupt-input.tentative.any.js | 318 ++++++++++++++++++ ...decompression-empty-input.tentative.any.js | 43 +++ ...decompression-split-chunk.tentative.any.js | 53 +++ ...ression-uint8array-output.tentative.any.js | 30 ++ ...ompression-with-detach.tentative.window.js | 41 +++ .../idlharness-shadowrealm.window.js | 2 + .../wpt/compression/idlharness.https.any.js | 17 + .../resources/concatenate-stream.js | 25 ++ .../wpt/compression/third_party/pako/LICENSE | 21 ++ .../wpt/compression/third_party/pako/README | 2 + .../third_party/pako/pako_inflate.min.js | 1 + test/fixtures/wpt/media/foo.vtt | 4 + ...-384k-44100Hz-1ch-320x240-30fps-10kfr.webm | Bin 0 -> 76501 bytes test/fixtures/wpt/versions.json | 4 + test/wpt/README.md | 2 +- test/wpt/status/compression.json | 58 ++++ test/wpt/status/performance-timeline.json | 3 + test/wpt/test-compression.js | 7 + 33 files changed, 1448 insertions(+), 7 deletions(-) create mode 100644 test/fixtures/wpt/compression/META.yml create mode 100644 test/fixtures/wpt/compression/compression-bad-chunks.tentative.any.js create mode 100644 test/fixtures/wpt/compression/compression-constructor-error.tentative.any.js create mode 100644 test/fixtures/wpt/compression/compression-including-empty-chunk.tentative.any.js create mode 100644 test/fixtures/wpt/compression/compression-large-flush-output.any.js create mode 100644 test/fixtures/wpt/compression/compression-multiple-chunks.tentative.any.js create mode 100644 test/fixtures/wpt/compression/compression-output-length.tentative.any.js create mode 100644 test/fixtures/wpt/compression/compression-stream.tentative.any.js create mode 100644 test/fixtures/wpt/compression/compression-with-detach.tentative.window.js create mode 100644 test/fixtures/wpt/compression/decompression-bad-chunks.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-buffersource.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-constructor-error.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-correct-input.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-corrupt-input.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-empty-input.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-split-chunk.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-uint8array-output.tentative.any.js create mode 100644 test/fixtures/wpt/compression/decompression-with-detach.tentative.window.js create mode 100644 test/fixtures/wpt/compression/idlharness-shadowrealm.window.js create mode 100644 test/fixtures/wpt/compression/idlharness.https.any.js create mode 100644 test/fixtures/wpt/compression/resources/concatenate-stream.js create mode 100644 test/fixtures/wpt/compression/third_party/pako/LICENSE create mode 100644 test/fixtures/wpt/compression/third_party/pako/README create mode 100644 test/fixtures/wpt/compression/third_party/pako/pako_inflate.min.js create mode 100644 test/fixtures/wpt/media/foo.vtt create mode 100644 test/fixtures/wpt/media/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr.webm create mode 100644 test/wpt/status/compression.json create mode 100644 test/wpt/test-compression.js diff --git a/test/common/wpt.js b/test/common/wpt.js index 7d0b030614b003..a65a0740d155d8 100644 --- a/test/common/wpt.js +++ b/test/common/wpt.js @@ -210,6 +210,7 @@ class ResourceLoader { const data = await fsPromises.readFile(file); return { ok: true, + arrayBuffer() { return data.buffer; }, json() { return JSON.parse(data.toString()); }, text() { return data.toString(); }, }; @@ -382,7 +383,7 @@ const kIntlRequirement = { // TODO(joyeecheung): we may need to deal with --with-intl=system-icu }; -class IntlRequirement { +class BuildRequirement { constructor() { this.currentIntl = kIntlRequirement.none; if (process.config.variables.v8_enable_i18n_support === 0) { @@ -395,6 +396,9 @@ class IntlRequirement { } else { this.currentIntl = kIntlRequirement.full; } + // Not using common.hasCrypto because of the global leak checks + this.hasCrypto = Boolean(process.versions.openssl) && + !process.env.NODE_SKIP_CRYPTO; } /** @@ -409,11 +413,14 @@ class IntlRequirement { if (requires.has('small-icu') && current < kIntlRequirement.small) { return 'small-icu'; } + if (requires.has('crypto') && !this.hasCrypto) { + return 'crypto'; + } return false; } } -const intlRequirements = new IntlRequirement(); +const buildRequirements = new BuildRequirement(); class StatusLoader { /** @@ -440,7 +447,7 @@ class StatusLoader { const list = this.grep(filepath); result = result.concat(list); } else { - if (!(/\.\w+\.js$/.test(filepath)) || filepath.endsWith('.helper.js')) { + if (!(/\.\w+\.js$/.test(filepath))) { continue; } result.push(filepath); @@ -945,9 +952,9 @@ class WPTRunner { continue; } - const lackingIntl = intlRequirements.isLacking(spec.requires); - if (lackingIntl) { - this.skip(spec, [ `requires ${lackingIntl}` ]); + const lackingSupport = buildRequirements.isLacking(spec.requires); + if (lackingSupport) { + this.skip(spec, [ `requires ${lackingSupport}` ]); continue; } diff --git a/test/fixtures/wpt/README.md b/test/fixtures/wpt/README.md index 6404571a498200..1c7121feb30c9e 100644 --- a/test/fixtures/wpt/README.md +++ b/test/fixtures/wpt/README.md @@ -11,6 +11,7 @@ See [test/wpt](../../wpt/README.md) for information on how these tests are run. Last update: - common: https://github.com/web-platform-tests/wpt/tree/dbd648158d/common +- compression: https://github.com/web-platform-tests/wpt/tree/c82521cfa5/compression - console: https://github.com/web-platform-tests/wpt/tree/767ae35464/console - dom/abort: https://github.com/web-platform-tests/wpt/tree/d1f1ecbd52/dom/abort - dom/events: https://github.com/web-platform-tests/wpt/tree/ab8999891c/dom/events diff --git a/test/fixtures/wpt/compression/META.yml b/test/fixtures/wpt/compression/META.yml new file mode 100644 index 00000000000000..0afbe29a53e807 --- /dev/null +++ b/test/fixtures/wpt/compression/META.yml @@ -0,0 +1,3 @@ +spec: https://wicg.github.io/compression/ +suggested_reviewers: + - ricea diff --git a/test/fixtures/wpt/compression/compression-bad-chunks.tentative.any.js b/test/fixtures/wpt/compression/compression-bad-chunks.tentative.any.js new file mode 100644 index 00000000000000..2d0b5684733930 --- /dev/null +++ b/test/fixtures/wpt/compression/compression-bad-chunks.tentative.any.js @@ -0,0 +1,74 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +const badChunks = [ + { + name: 'undefined', + value: undefined + }, + { + name: 'null', + value: null + }, + { + name: 'numeric', + value: 3.14 + }, + { + name: 'object, not BufferSource', + value: {} + }, + { + name: 'array', + value: [65] + }, + { + name: 'SharedArrayBuffer', + // Use a getter to postpone construction so that all tests don't fail where + // SharedArrayBuffer is not yet implemented. + get value() { + // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()` + return new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer; + } + }, + { + name: 'shared Uint8Array', + get value() { + // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()` + return new Uint8Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer) + } + }, +]; + +for (const chunk of badChunks) { + promise_test(async t => { + const cs = new CompressionStream('gzip'); + const reader = cs.readable.getReader(); + const writer = cs.writable.getWriter(); + const writePromise = writer.write(chunk.value); + const readPromise = reader.read(); + await promise_rejects_js(t, TypeError, writePromise, 'write should reject'); + await promise_rejects_js(t, TypeError, readPromise, 'read should reject'); + }, `chunk of type ${chunk.name} should error the stream for gzip`); + + promise_test(async t => { + const cs = new CompressionStream('deflate'); + const reader = cs.readable.getReader(); + const writer = cs.writable.getWriter(); + const writePromise = writer.write(chunk.value); + const readPromise = reader.read(); + await promise_rejects_js(t, TypeError, writePromise, 'write should reject'); + await promise_rejects_js(t, TypeError, readPromise, 'read should reject'); + }, `chunk of type ${chunk.name} should error the stream for deflate`); + + promise_test(async t => { + const cs = new CompressionStream('deflate-raw'); + const reader = cs.readable.getReader(); + const writer = cs.writable.getWriter(); + const writePromise = writer.write(chunk.value); + const readPromise = reader.read(); + await promise_rejects_js(t, TypeError, writePromise, 'write should reject'); + await promise_rejects_js(t, TypeError, readPromise, 'read should reject'); + }, `chunk of type ${chunk.name} should error the stream for deflate-raw`); +} diff --git a/test/fixtures/wpt/compression/compression-constructor-error.tentative.any.js b/test/fixtures/wpt/compression/compression-constructor-error.tentative.any.js new file mode 100644 index 00000000000000..b39ab93bd02aba --- /dev/null +++ b/test/fixtures/wpt/compression/compression-constructor-error.tentative.any.js @@ -0,0 +1,15 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +test(t => { + assert_throws_js(TypeError, () => new CompressionStream('a'), 'constructor should throw'); +}, '"a" should cause the constructor to throw'); + +test(t => { + assert_throws_js(TypeError, () => new CompressionStream(), 'constructor should throw'); +}, 'no input should cause the constructor to throw'); + +test(t => { + assert_throws_js(Error, () => new CompressionStream({ toString() { throw Error(); } }), 'constructor should throw'); +}, 'non-string input should cause the constructor to throw'); diff --git a/test/fixtures/wpt/compression/compression-including-empty-chunk.tentative.any.js b/test/fixtures/wpt/compression/compression-including-empty-chunk.tentative.any.js new file mode 100644 index 00000000000000..a7fd1ceb24f086 --- /dev/null +++ b/test/fixtures/wpt/compression/compression-including-empty-chunk.tentative.any.js @@ -0,0 +1,63 @@ +// META: global=window,worker,shadowrealm +// META: script=third_party/pako/pako_inflate.min.js +// META: timeout=long + +'use strict'; + +// This test asserts that compressing '' doesn't affect the compressed data. +// Example: compressing ['Hello', '', 'Hello'] results in 'HelloHello' + +async function compressChunkList(chunkList, format) { + const cs = new CompressionStream(format); + const writer = cs.writable.getWriter(); + for (const chunk of chunkList) { + const chunkByte = new TextEncoder().encode(chunk); + writer.write(chunkByte); + } + const closePromise = writer.close(); + const out = []; + const reader = cs.readable.getReader(); + let totalSize = 0; + while (true) { + const { value, done } = await reader.read(); + if (done) + break; + out.push(value); + totalSize += value.byteLength; + } + await closePromise; + const concatenated = new Uint8Array(totalSize); + let offset = 0; + for (const array of out) { + concatenated.set(array, offset); + offset += array.byteLength; + } + return concatenated; +} + +const chunkLists = [ + ['', 'Hello', 'Hello'], + ['Hello', '', 'Hello'], + ['Hello', 'Hello', ''] +]; +const expectedValue = new TextEncoder().encode('HelloHello'); + +for (const chunkList of chunkLists) { + promise_test(async t => { + const compressedData = await compressChunkList(chunkList, 'deflate'); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflate(compressedData), 'value should match'); + }, `the result of compressing [${chunkList}] with deflate should be 'HelloHello'`); + + promise_test(async t => { + const compressedData = await compressChunkList(chunkList, 'gzip'); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflate(compressedData), 'value should match'); + }, `the result of compressing [${chunkList}] with gzip should be 'HelloHello'`); + + promise_test(async t => { + const compressedData = await compressChunkList(chunkList, 'deflate-raw'); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflateRaw(compressedData), 'value should match'); + }, `the result of compressing [${chunkList}] with deflate-raw should be 'HelloHello'`); +} diff --git a/test/fixtures/wpt/compression/compression-large-flush-output.any.js b/test/fixtures/wpt/compression/compression-large-flush-output.any.js new file mode 100644 index 00000000000000..6afcb4d52875b9 --- /dev/null +++ b/test/fixtures/wpt/compression/compression-large-flush-output.any.js @@ -0,0 +1,41 @@ +// META: global=window,worker,shadowrealm +// META: script=third_party/pako/pako_inflate.min.js +// META: script=resources/concatenate-stream.js +// META: timeout=long + +'use strict'; + +// This test verifies that a large flush output will not truncate the +// final results. + +async function compressData(chunk, format) { + const cs = new CompressionStream(format); + const writer = cs.writable.getWriter(); + writer.write(chunk); + writer.close(); + return await concatenateStream(cs.readable); +} + +// JSON-encoded array of 10 thousands numbers ("[0,1,2,...]"). This produces 48_891 bytes of data. +const fullData = new TextEncoder().encode(JSON.stringify(Array.from({ length: 10_000 }, (_, i) => i))); +const data = fullData.subarray(0, 35_579); +const expectedValue = data; + +promise_test(async t => { + const compressedData = await compressData(data, 'deflate'); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflate(compressedData), 'value should match'); +}, `deflate compression with large flush output`); + +promise_test(async t => { + const compressedData = await compressData(data, 'gzip'); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflate(compressedData), 'value should match'); +}, `gzip compression with large flush output`); + +promise_test(async t => { + const compressedData = await compressData(data, 'deflate-raw'); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflateRaw(compressedData), 'value should match'); +}, `deflate-raw compression with large flush output`); + diff --git a/test/fixtures/wpt/compression/compression-multiple-chunks.tentative.any.js b/test/fixtures/wpt/compression/compression-multiple-chunks.tentative.any.js new file mode 100644 index 00000000000000..28a90e5ca53902 --- /dev/null +++ b/test/fixtures/wpt/compression/compression-multiple-chunks.tentative.any.js @@ -0,0 +1,67 @@ +// META: global=window,worker,shadowrealm +// META: script=third_party/pako/pako_inflate.min.js +// META: timeout=long + +'use strict'; + +// This test asserts that compressing multiple chunks should work. + +// Example: ('Hello', 3) => TextEncoder().encode('HelloHelloHello') +function makeExpectedChunk(input, numberOfChunks) { + const expectedChunk = input.repeat(numberOfChunks); + return new TextEncoder().encode(expectedChunk); +} + +// Example: ('Hello', 3, 'deflate') => compress ['Hello', 'Hello', Hello'] +async function compressMultipleChunks(input, numberOfChunks, format) { + const cs = new CompressionStream(format); + const writer = cs.writable.getWriter(); + const chunk = new TextEncoder().encode(input); + for (let i = 0; i < numberOfChunks; ++i) { + writer.write(chunk); + } + const closePromise = writer.close(); + const out = []; + const reader = cs.readable.getReader(); + let totalSize = 0; + while (true) { + const { value, done } = await reader.read(); + if (done) + break; + out.push(value); + totalSize += value.byteLength; + } + await closePromise; + const concatenated = new Uint8Array(totalSize); + let offset = 0; + for (const array of out) { + concatenated.set(array, offset); + offset += array.byteLength; + } + return concatenated; +} + +const hello = 'Hello'; + +for (let numberOfChunks = 2; numberOfChunks <= 16; ++numberOfChunks) { + promise_test(async t => { + const compressedData = await compressMultipleChunks(hello, numberOfChunks, 'deflate'); + const expectedValue = makeExpectedChunk(hello, numberOfChunks); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflate(compressedData), 'value should match'); + }, `compressing ${numberOfChunks} chunks with deflate should work`); + + promise_test(async t => { + const compressedData = await compressMultipleChunks(hello, numberOfChunks, 'gzip'); + const expectedValue = makeExpectedChunk(hello, numberOfChunks); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflate(compressedData), 'value should match'); + }, `compressing ${numberOfChunks} chunks with gzip should work`); + + promise_test(async t => { + const compressedData = await compressMultipleChunks(hello, numberOfChunks, 'deflate-raw'); + const expectedValue = makeExpectedChunk(hello, numberOfChunks); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(expectedValue, pako.inflateRaw(compressedData), 'value should match'); + }, `compressing ${numberOfChunks} chunks with deflate-raw should work`); +} diff --git a/test/fixtures/wpt/compression/compression-output-length.tentative.any.js b/test/fixtures/wpt/compression/compression-output-length.tentative.any.js new file mode 100644 index 00000000000000..7aa13734500d26 --- /dev/null +++ b/test/fixtures/wpt/compression/compression-output-length.tentative.any.js @@ -0,0 +1,64 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +// This test asserts that compressed data length is shorter than the original +// data length. If the input is extremely small, the compressed data may be +// larger than the original data. + +const LARGE_FILE = '/media/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr.webm'; + +async function compressArrayBuffer(input, format) { + const cs = new CompressionStream(format); + const writer = cs.writable.getWriter(); + writer.write(input); + const closePromise = writer.close(); + const out = []; + const reader = cs.readable.getReader(); + let totalSize = 0; + while (true) { + const { value, done } = await reader.read(); + if (done) + break; + out.push(value); + totalSize += value.byteLength; + } + await closePromise; + const concatenated = new Uint8Array(totalSize); + let offset = 0; + for (const array of out) { + concatenated.set(array, offset); + offset += array.byteLength; + } + return concatenated; +} + +promise_test(async () => { + const response = await fetch(LARGE_FILE); + const buffer = await response.arrayBuffer(); + const bufferView = new Uint8Array(buffer); + const originalLength = bufferView.length; + const compressedData = await compressArrayBuffer(bufferView, 'deflate'); + const compressedLength = compressedData.length; + assert_less_than(compressedLength, originalLength, 'output should be smaller'); +}, 'the length of deflated data should be shorter than that of the original data'); + +promise_test(async () => { + const response = await fetch(LARGE_FILE); + const buffer = await response.arrayBuffer(); + const bufferView = new Uint8Array(buffer); + const originalLength = bufferView.length; + const compressedData = await compressArrayBuffer(bufferView, 'gzip'); + const compressedLength = compressedData.length; + assert_less_than(compressedLength, originalLength, 'output should be smaller'); +}, 'the length of gzipped data should be shorter than that of the original data'); + +promise_test(async () => { + const response = await fetch(LARGE_FILE); + const buffer = await response.arrayBuffer(); + const bufferView = new Uint8Array(buffer); + const originalLength = bufferView.length; + const compressedData = await compressArrayBuffer(bufferView, 'deflate-raw'); + const compressedLength = compressedData.length; + assert_less_than(compressedLength, originalLength, 'output should be smaller'); +}, 'the length of deflated (with -raw) data should be shorter than that of the original data'); diff --git a/test/fixtures/wpt/compression/compression-stream.tentative.any.js b/test/fixtures/wpt/compression/compression-stream.tentative.any.js new file mode 100644 index 00000000000000..a7ea0cb908402f --- /dev/null +++ b/test/fixtures/wpt/compression/compression-stream.tentative.any.js @@ -0,0 +1,91 @@ +// META: global=window,worker,shadowrealm +// META: script=third_party/pako/pako_inflate.min.js +// META: timeout=long + +'use strict'; + +const SMALL_FILE = "/media/foo.vtt"; +const LARGE_FILE = "/media/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr.webm"; + +async function compressArrayBuffer(input, format) { + const cs = new CompressionStream(format); + const writer = cs.writable.getWriter(); + writer.write(input); + const closePromise = writer.close(); + const out = []; + const reader = cs.readable.getReader(); + let totalSize = 0; + while (true) { + const { value, done } = await reader.read(); + if (done) + break; + out.push(value); + totalSize += value.byteLength; + } + await closePromise; + const concatenated = new Uint8Array(totalSize); + let offset = 0; + for (const array of out) { + concatenated.set(array, offset); + offset += array.byteLength; + } + return concatenated; +} + +test(() => { + assert_throws_js(TypeError, () => { + const transformer = new CompressionStream("nonvalid"); + }, "non supported format should throw"); +}, "CompressionStream constructor should throw on invalid format"); + +promise_test(async () => { + const buffer = new ArrayBuffer(0); + const bufferView = new Uint8Array(buffer); + const compressedData = await compressArrayBuffer(bufferView, "deflate"); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(bufferView, pako.inflate(compressedData)); +}, "deflated empty data should be reinflated back to its origin"); + +promise_test(async () => { + const response = await fetch(SMALL_FILE) + const buffer = await response.arrayBuffer(); + const bufferView = new Uint8Array(buffer); + const compressedData = await compressArrayBuffer(bufferView, "deflate"); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(bufferView, pako.inflate(compressedData)); +}, "deflated small amount data should be reinflated back to its origin"); + +promise_test(async () => { + const response = await fetch(LARGE_FILE) + const buffer = await response.arrayBuffer(); + const bufferView = new Uint8Array(buffer); + const compressedData = await compressArrayBuffer(bufferView, "deflate"); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(bufferView, pako.inflate(compressedData)); +}, "deflated large amount data should be reinflated back to its origin"); + +promise_test(async () => { + const buffer = new ArrayBuffer(0); + const bufferView = new Uint8Array(buffer); + const compressedData = await compressArrayBuffer(bufferView, "gzip"); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(bufferView, pako.inflate(compressedData)); +}, "gzipped empty data should be reinflated back to its origin"); + +promise_test(async () => { + const response = await fetch(SMALL_FILE) + const buffer = await response.arrayBuffer(); + const bufferView = new Uint8Array(buffer); + const compressedData = await compressArrayBuffer(bufferView, "gzip"); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(bufferView, pako.inflate(compressedData)); +}, "gzipped small amount data should be reinflated back to its origin"); + +promise_test(async () => { + const response = await fetch(LARGE_FILE) + const buffer = await response.arrayBuffer(); + const bufferView = new Uint8Array(buffer); + const compressedData = await compressArrayBuffer(bufferView, "gzip"); + // decompress with pako, and check that we got the same result as our original string + assert_array_equals(bufferView, pako.inflate(compressedData)); +}, "gzipped large amount data should be reinflated back to its origin"); diff --git a/test/fixtures/wpt/compression/compression-with-detach.tentative.window.js b/test/fixtures/wpt/compression/compression-with-detach.tentative.window.js new file mode 100644 index 00000000000000..465feaa47d4e9a --- /dev/null +++ b/test/fixtures/wpt/compression/compression-with-detach.tentative.window.js @@ -0,0 +1,55 @@ +// META: global=window,worker,shadowrealm +// META: script=resources/concatenate-stream.js + +'use strict'; + +const kInputLength = 500000; + +function createLargeRandomInput() { + const buffer = new ArrayBuffer(kInputLength); + // The getRandomValues API will only let us get 65536 bytes at a time, so call + // it multiple times. + const kChunkSize = 65536; + for (let offset = 0; offset < kInputLength; offset += kChunkSize) { + const length = + offset + kChunkSize > kInputLength ? kInputLength - offset : kChunkSize; + const view = new Uint8Array(buffer, offset, length); + crypto.getRandomValues(view); + } + return new Uint8Array(buffer); +} + +function decompress(view) { + const ds = new DecompressionStream('deflate'); + const writer = ds.writable.getWriter(); + writer.write(view); + writer.close(); + return concatenateStream(ds.readable); +} + +promise_test(async () => { + const input = createLargeRandomInput(); + const inputCopy = input.slice(0, input.byteLength); + const cs = new CompressionStream('deflate'); + const writer = cs.writable.getWriter(); + writer.write(input); + writer.close(); + // Object.prototype.then will be looked up synchronously when the promise + // returned by read() is resolved. + Object.defineProperty(Object.prototype, 'then', { + get() { + // Cause input to become detached and unreferenced. + try { + postMessage(undefined, 'nowhere', [input.buffer]); + } catch (e) { + // It's already detached. + } + } + }); + const output = await concatenateStream(cs.readable); + // Perform the comparison as strings since this is reasonably fast even when + // JITted JavaScript is running under an emulator. + assert_equals( + inputCopy.toString(), (await decompress(output)).toString(), + 'decompressing the output should return the input'); +}, 'data should be correctly compressed even if input is detached partway'); diff --git a/test/fixtures/wpt/compression/decompression-bad-chunks.tentative.any.js b/test/fixtures/wpt/compression/decompression-bad-chunks.tentative.any.js new file mode 100644 index 00000000000000..f450b0c4cb2553 --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-bad-chunks.tentative.any.js @@ -0,0 +1,85 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +const badChunks = [ + { + name: 'undefined', + value: undefined + }, + { + name: 'null', + value: null + }, + { + name: 'numeric', + value: 3.14 + }, + { + name: 'object, not BufferSource', + value: {} + }, + { + name: 'array', + value: [65] + }, + { + name: 'SharedArrayBuffer', + // Use a getter to postpone construction so that all tests don't fail where + // SharedArrayBuffer is not yet implemented. + get value() { + // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()` + return new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer; + } + }, + { + name: 'shared Uint8Array', + get value() { + // See https://github.com/whatwg/html/issues/5380 for why not `new SharedArrayBuffer()` + return new Uint8Array(new WebAssembly.Memory({ shared:true, initial:1, maximum:1 }).buffer) + } + }, + { + name: 'invalid deflate bytes', + value: new Uint8Array([0, 156, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 48, 173, 6, 36]) + }, + { + name: 'invalid gzip bytes', + value: new Uint8Array([0, 139, 8, 0, 0, 0, 0, 0, 0, 3, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 176, 1, 57, 179, 15, 0, 0, 0]) + }, +]; + +// Test Case Design +// We need to wait until after we close the writable stream to check if the decoded stream is valid. +// We can end up in a state where all reads/writes are valid, but upon closing the writable stream an error is detected. +// (Example: A zlib encoded chunk w/o the checksum). + +async function decompress(chunk, format, t) +{ + const ds = new DecompressionStream(format); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + + writer.write(chunk.value).then(() => {}, () => {}); + reader.read().then(() => {}, () => {}); + + await promise_rejects_js(t, TypeError, writer.close(), 'writer.close() should reject'); + await promise_rejects_js(t, TypeError, writer.closed, 'write.closed should reject'); + + await promise_rejects_js(t, TypeError, reader.read(), 'reader.read() should reject'); + await promise_rejects_js(t, TypeError, reader.closed, 'read.closed should reject'); +} + +for (const chunk of badChunks) { + promise_test(async t => { + await decompress(chunk, 'gzip', t); + }, `chunk of type ${chunk.name} should error the stream for gzip`); + + promise_test(async t => { + await decompress(chunk, 'deflate', t); + }, `chunk of type ${chunk.name} should error the stream for deflate`); + + promise_test(async t => { + await decompress(chunk, 'deflate-raw', t); + }, `chunk of type ${chunk.name} should error the stream for deflate-raw`); +} diff --git a/test/fixtures/wpt/compression/decompression-buffersource.tentative.any.js b/test/fixtures/wpt/compression/decompression-buffersource.tentative.any.js new file mode 100644 index 00000000000000..e81fc566779800 --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-buffersource.tentative.any.js @@ -0,0 +1,192 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +const compressedBytesWithDeflate = [120, 156, 75, 52, 48, 52, 50, 54, 49, 53, 3, 0, 8, 136, 1, 199]; +const compressedBytesWithGzip = [31, 139, 8, 0, 0, 0, 0, 0, 0, 3, 75, 52, 48, 52, 2, 0, 216, 252, 63, 136, 4, 0, 0, 0]; +const compressedBytesWithDeflateRaw = [ + 0x00, 0x06, 0x00, 0xf9, 0xff, 0x41, 0x42, 0x43, + 0x44, 0x45, 0x46, 0x01, 0x00, 0x00, 0xff, 0xff, +]; +// These chunk values below were chosen to make the length of the compressed +// output be a multiple of 8 bytes. +const deflateExpectedChunkValue = new TextEncoder().encode('a0123456'); +const gzipExpectedChunkValue = new TextEncoder().encode('a012'); +const deflateRawExpectedChunkValue = new TextEncoder().encode('ABCDEF'); + +const bufferSourceChunksForDeflate = [ + { + name: 'ArrayBuffer', + value: new Uint8Array(compressedBytesWithDeflate).buffer + }, + { + name: 'Int8Array', + value: new Int8Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Uint8Array', + value: new Uint8Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Uint8ClampedArray', + value: new Uint8ClampedArray(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Int16Array', + value: new Int16Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Uint16Array', + value: new Uint16Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Int32Array', + value: new Int32Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Uint32Array', + value: new Uint32Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Float32Array', + value: new Float32Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'Float64Array', + value: new Float64Array(new Uint8Array(compressedBytesWithDeflate).buffer) + }, + { + name: 'DataView', + value: new DataView(new Uint8Array(compressedBytesWithDeflate).buffer) + }, +]; + +const bufferSourceChunksForGzip = [ + { + name: 'ArrayBuffer', + value: new Uint8Array(compressedBytesWithGzip).buffer + }, + { + name: 'Int8Array', + value: new Int8Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Uint8Array', + value: new Uint8Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Uint8ClambedArray', + value: new Uint8ClampedArray(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Int16Array', + value: new Int16Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Uint16Array', + value: new Uint16Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Int32Array', + value: new Int32Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Uint32Array', + value: new Uint32Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Float32Array', + value: new Float32Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'Float64Array', + value: new Float64Array(new Uint8Array(compressedBytesWithGzip).buffer) + }, + { + name: 'DataView', + value: new DataView(new Uint8Array(compressedBytesWithGzip).buffer) + }, +]; + +const bufferSourceChunksForDeflateRaw = [ + { + name: 'ArrayBuffer', + value: new Uint8Array(compressedBytesWithDeflateRaw).buffer + }, + { + name: 'Int8Array', + value: new Int8Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Uint8Array', + value: new Uint8Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Uint8ClampedArray', + value: new Uint8ClampedArray(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Int16Array', + value: new Int16Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Uint16Array', + value: new Uint16Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Int32Array', + value: new Int32Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Uint32Array', + value: new Uint32Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Float32Array', + value: new Float32Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'Float64Array', + value: new Float64Array(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, + { + name: 'DataView', + value: new DataView(new Uint8Array(compressedBytesWithDeflateRaw).buffer) + }, +]; + +for (const chunk of bufferSourceChunksForDeflate) { + promise_test(async t => { + const ds = new DecompressionStream('deflate'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(chunk.value); + writer.close(); + const { value } = await reader.read(); + assert_array_equals(Array.from(value), deflateExpectedChunkValue, 'value should match'); + }, `chunk of type ${chunk.name} should work for deflate`); +} + +for (const chunk of bufferSourceChunksForGzip) { + promise_test(async t => { + const ds = new DecompressionStream('gzip'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(chunk.value); + writer.close(); + const { value } = await reader.read(); + assert_array_equals(Array.from(value), gzipExpectedChunkValue, 'value should match'); + }, `chunk of type ${chunk.name} should work for gzip`); +} + +for (const chunk of bufferSourceChunksForDeflateRaw) { + promise_test(async t => { + const ds = new DecompressionStream('deflate-raw'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(chunk.value); + writer.close(); + const { value } = await reader.read(); + assert_array_equals(Array.from(value), deflateRawExpectedChunkValue, 'value should match'); + }, `chunk of type ${chunk.name} should work for deflate-raw`); +} diff --git a/test/fixtures/wpt/compression/decompression-constructor-error.tentative.any.js b/test/fixtures/wpt/compression/decompression-constructor-error.tentative.any.js new file mode 100644 index 00000000000000..0270ba7353128c --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-constructor-error.tentative.any.js @@ -0,0 +1,15 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +test(t => { + assert_throws_js(TypeError, () => new DecompressionStream('a'), 'constructor should throw'); +}, '"a" should cause the constructor to throw'); + +test(t => { + assert_throws_js(TypeError, () => new DecompressionStream(), 'constructor should throw'); +}, 'no input should cause the constructor to throw'); + +test(t => { + assert_throws_js(Error, () => new DecompressionStream({ toString() { throw Error(); } }), 'constructor should throw'); +}, 'non-string input should cause the constructor to throw'); diff --git a/test/fixtures/wpt/compression/decompression-correct-input.tentative.any.js b/test/fixtures/wpt/compression/decompression-correct-input.tentative.any.js new file mode 100644 index 00000000000000..90519445e3667b --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-correct-input.tentative.any.js @@ -0,0 +1,39 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +const deflateChunkValue = new Uint8Array([120, 156, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 48, 173, 6, 36]); +const gzipChunkValue = new Uint8Array([31, 139, 8, 0, 0, 0, 0, 0, 0, 3, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 176, 1, 57, 179, 15, 0, 0, 0]); +const deflateRawChunkValue = new Uint8Array([ + 0x4b, 0xad, 0x28, 0x48, 0x4d, 0x2e, 0x49, 0x4d, 0x51, 0xc8, + 0x2f, 0x2d, 0x29, 0x28, 0x2d, 0x01, 0x00, +]); +const trueChunkValue = new TextEncoder().encode('expected output'); + +promise_test(async t => { + const ds = new DecompressionStream('deflate'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(deflateChunkValue); + const { done, value } = await reader.read(); + assert_array_equals(Array.from(value), trueChunkValue, "value should match"); +}, 'decompressing deflated input should work'); + + +promise_test(async t => { + const ds = new DecompressionStream('gzip'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(gzipChunkValue); + const { done, value } = await reader.read(); + assert_array_equals(Array.from(value), trueChunkValue, "value should match"); +}, 'decompressing gzip input should work'); + +promise_test(async t => { + const ds = new DecompressionStream('deflate-raw'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(deflateRawChunkValue); + const { done, value } = await reader.read(); + assert_array_equals(Array.from(value), trueChunkValue, "value should match"); +}, 'decompressing deflated (with -raw) input should work'); diff --git a/test/fixtures/wpt/compression/decompression-corrupt-input.tentative.any.js b/test/fixtures/wpt/compression/decompression-corrupt-input.tentative.any.js new file mode 100644 index 00000000000000..fc18197dfbd3db --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-corrupt-input.tentative.any.js @@ -0,0 +1,318 @@ +// META global=window,worker,shadowrealm + +// This test checks that DecompressionStream behaves according to the standard +// when the input is corrupted. To avoid a combinatorial explosion in the +// number of tests, we only mutate one field at a time, and we only test +// "interesting" values. + +'use strict'; + +// The many different cases are summarised in this data structure. +const expectations = [ + { + format: 'deflate', + + // Decompresses to 'expected output'. + baseInput: [120, 156, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, + 40, 45, 1, 0, 48, 173, 6, 36], + + // See RFC1950 for the definition of the various fields used by deflate: + // https://tools.ietf.org/html/rfc1950. + fields: [ + { + // The function of this field. This matches the name used in the RFC. + name: 'CMF', + + // The offset of the field in bytes from the start of the input. + offset: 0, + + // The length of the field in bytes. + length: 1, + + cases: [ + { + // The value to set the field to. If the field contains multiple + // bytes, all the bytes will be set to this value. + value: 0, + + // The expected result. 'success' means the input is decoded + // successfully. 'error' means that the stream will be errored. + result: 'error' + } + ] + }, + { + name: 'FLG', + offset: 1, + length: 1, + + // FLG contains a 4-bit checksum (FCHECK) which is calculated in such a + // way that there are 4 valid values for this field. + cases: [ + { + value: 218, + result: 'success' + }, + { + value: 1, + result: 'success' + }, + { + value: 94, + result: 'success' + }, + { + // The remaining 252 values cause an error. + value: 157, + result: 'error' + } + ] + }, + { + name: 'DATA', + // In general, changing any bit of the data will trigger a checksum + // error. Only the last byte does anything else. + offset: 18, + length: 1, + cases: [ + { + value: 4, + result: 'success' + }, + { + value: 5, + result: 'error' + } + ] + }, + { + name: 'ADLER', + offset: -4, + length: 4, + cases: [ + { + value: 255, + result: 'error' + } + ] + } + ] + }, + { + format: 'gzip', + + // Decompresses to 'expected output'. + baseInput: [31, 139, 8, 0, 0, 0, 0, 0, 0, 3, 75, 173, 40, 72, 77, 46, 73, + 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 176, 1, 57, 179, 15, 0, + 0, 0], + + // See RFC1952 for the definition of the various fields used by gzip: + // https://tools.ietf.org/html/rfc1952. + fields: [ + { + name: 'ID', + offset: 0, + length: 2, + cases: [ + { + value: 255, + result: 'error' + } + ] + }, + { + name: 'CM', + offset: 2, + length: 1, + cases: [ + { + value: 0, + result: 'error' + } + ] + }, + { + name: 'FLG', + offset: 3, + length: 1, + cases: [ + { + value: 1, // FTEXT + result: 'success' + }, + { + value: 2, // FHCRC + result: 'error' + } + ] + }, + { + name: 'MTIME', + offset: 4, + length: 4, + cases: [ + { + // Any value is valid for this field. + value: 255, + result: 'success' + } + ] + }, + { + name: 'XFL', + offset: 8, + length: 1, + cases: [ + { + // Any value is accepted. + value: 255, + result: 'success' + } + ] + }, + { + name: 'OS', + offset: 9, + length: 1, + cases: [ + { + // Any value is accepted. + value: 128, + result: 'success' + } + ] + }, + { + name: 'DATA', + + // The last byte of the data is the most interesting. + offset: 26, + length: 1, + cases: [ + { + value: 3, + result: 'error' + }, + { + value: 4, + result: 'success' + } + ] + }, + { + name: 'CRC', + offset: -8, + length: 4, + cases: [ + { + // Any change will error the stream. + value: 0, + result: 'error' + } + ] + }, + { + name: 'ISIZE', + offset: -4, + length: 4, + cases: [ + { + // A mismatch will error the stream. + value: 1, + result: 'error' + } + ] + } + ] + } +]; + +async function tryDecompress(input, format) { + const ds = new DecompressionStream(format); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + writer.write(input).catch(() => {}); + writer.close().catch(() => {}); + let out = []; + while (true) { + try { + const { value, done } = await reader.read(); + if (done) { + break; + } + out = out.concat(Array.from(value)); + } catch (e) { + if (e instanceof TypeError) { + return { result: 'error' }; + } else { + return { result: e.name }; + } + } + } + const expectedOutput = 'expected output'; + if (out.length !== expectedOutput.length) { + return { result: 'corrupt' }; + } + for (let i = 0; i < out.length; ++i) { + if (out[i] !== expectedOutput.charCodeAt(i)) { + return { result: 'corrupt' }; + } + } + return { result: 'success' }; +} + +function corruptInput(input, offset, length, value) { + const output = new Uint8Array(input); + if (offset < 0) { + offset += input.length; + } + for (let i = offset; i < offset + length; ++i) { + output[i] = value; + } + return output; +} + +for (const { format, baseInput, fields } of expectations) { + promise_test(async () => { + const { result } = await tryDecompress(new Uint8Array(baseInput), format); + assert_equals(result, 'success', 'decompression should succeed'); + }, `the unchanged input for '${format}' should decompress successfully`); + + promise_test(async () => { + const truncatedInput = new Uint8Array(baseInput.slice(0, -1)); + const { result } = await tryDecompress(truncatedInput, format); + assert_equals(result, 'error', 'decompression should fail'); + }, `truncating the input for '${format}' should give an error`); + + promise_test(async () => { + const extendedInput = new Uint8Array(baseInput.concat([0])); + const { result } = await tryDecompress(extendedInput, format); + assert_equals(result, 'error', 'decompression should fail'); + }, `trailing junk for '${format}' should give an error`); + + for (const { name, offset, length, cases } of fields) { + for (const { value, result } of cases) { + promise_test(async () => { + const corruptedInput = corruptInput(baseInput, offset, length, value); + const { result: actual } = + await tryDecompress(corruptedInput, format); + assert_equals(actual, result, 'result should match'); + }, `format '${format}' field ${name} should be ${result} for ${value}`); + } + } +} + +promise_test(async () => { + // Data generated in Python: + // ```py + // h = b"thequickbrownfoxjumped\x00" + // words = h.split() + // zdict = b''.join(words) + // co = zlib.compressobj(zdict=zdict) + // cd = co.compress(h) + co.flush() + // ``` + const { result } = await tryDecompress(new Uint8Array([ + 0x78, 0xbb, 0x74, 0xee, 0x09, 0x59, 0x2b, 0xc1, 0x2e, 0x0c, 0x00, 0x74, 0xee, 0x09, 0x59 + ]), 'deflate'); + assert_equals(result, 'error', 'Data compressed with a dictionary should throw TypeError'); +}, 'the deflate input compressed with dictionary should give an error') diff --git a/test/fixtures/wpt/compression/decompression-empty-input.tentative.any.js b/test/fixtures/wpt/compression/decompression-empty-input.tentative.any.js new file mode 100644 index 00000000000000..201db8ec0b0d7c --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-empty-input.tentative.any.js @@ -0,0 +1,43 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +const gzipEmptyValue = new Uint8Array([31, 139, 8, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0]); +const deflateEmptyValue = new Uint8Array([120, 156, 3, 0, 0, 0, 0, 1]); +const deflateRawEmptyValue = new Uint8Array([1, 0, 0, 255, 255]); + +promise_test(async t => { + const ds = new DecompressionStream('gzip'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(gzipEmptyValue); + writer.close(); + const { value, done } = await reader.read(); + assert_true(done, "read() should set done"); + assert_equals(value, undefined, "value should be undefined"); + await writePromise; +}, 'decompressing gzip empty input should work'); + +promise_test(async t => { + const ds = new DecompressionStream('deflate'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(deflateEmptyValue); + writer.close(); + const { value, done } = await reader.read(); + assert_true(done, "read() should set done"); + assert_equals(value, undefined, "value should be undefined"); + await writePromise; +}, 'decompressing deflate empty input should work'); + +promise_test(async t => { + const ds = new DecompressionStream('deflate-raw'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(deflateRawEmptyValue); + writer.close(); + const { value, done } = await reader.read(); + assert_true(done, "read() should set done"); + assert_equals(value, undefined, "value should be undefined"); + await writePromise; +}, 'decompressing deflate-raw empty input should work'); diff --git a/test/fixtures/wpt/compression/decompression-split-chunk.tentative.any.js b/test/fixtures/wpt/compression/decompression-split-chunk.tentative.any.js new file mode 100644 index 00000000000000..eb12c2a2360cd9 --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-split-chunk.tentative.any.js @@ -0,0 +1,53 @@ +// META: global=window,worker,shadowrealm + +'use strict'; + +const compressedBytesWithDeflate = new Uint8Array([120, 156, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 48, 173, 6, 36]); +const compressedBytesWithGzip = new Uint8Array([31, 139, 8, 0, 0, 0, 0, 0, 0, 3, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 176, 1, 57, 179, 15, 0, 0, 0]); +const compressedBytesWithDeflateRaw = new Uint8Array([ + 0x4b, 0xad, 0x28, 0x48, 0x4d, 0x2e, 0x49, 0x4d, 0x51, 0xc8, + 0x2f, 0x2d, 0x29, 0x28, 0x2d, 0x01, 0x00, +]); +const expectedChunkValue = new TextEncoder().encode('expected output'); + +async function decompressArrayBuffer(input, format, chunkSize) { + const ds = new DecompressionStream(format); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + for (let beginning = 0; beginning < input.length; beginning += chunkSize) { + writer.write(input.slice(beginning, beginning + chunkSize)); + } + writer.close(); + const out = []; + let totalSize = 0; + while (true) { + const { value, done } = await reader.read(); + if (done) break; + out.push(value); + totalSize += value.byteLength; + } + const concatenated = new Uint8Array(totalSize); + let offset = 0; + for (const array of out) { + concatenated.set(array, offset); + offset += array.byteLength; + } + return concatenated; +} + +for (let chunkSize = 1; chunkSize < 16; ++chunkSize) { + promise_test(async t => { + const decompressedData = await decompressArrayBuffer(compressedBytesWithDeflate, 'deflate', chunkSize); + assert_array_equals(decompressedData, expectedChunkValue, "value should match"); + }, `decompressing splitted chunk into pieces of size ${chunkSize} should work in deflate`); + + promise_test(async t => { + const decompressedData = await decompressArrayBuffer(compressedBytesWithGzip, 'gzip', chunkSize); + assert_array_equals(decompressedData, expectedChunkValue, "value should match"); + }, `decompressing splitted chunk into pieces of size ${chunkSize} should work in gzip`); + + promise_test(async t => { + const decompressedData = await decompressArrayBuffer(compressedBytesWithDeflateRaw, 'deflate-raw', chunkSize); + assert_array_equals(decompressedData, expectedChunkValue, "value should match"); + }, `decompressing splitted chunk into pieces of size ${chunkSize} should work in deflate-raw`); +} diff --git a/test/fixtures/wpt/compression/decompression-uint8array-output.tentative.any.js b/test/fixtures/wpt/compression/decompression-uint8array-output.tentative.any.js new file mode 100644 index 00000000000000..0c45a0aaa727f1 --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-uint8array-output.tentative.any.js @@ -0,0 +1,30 @@ +// META: global=window,worker,shadowrealm +// META: timeout=long +// +// This test isn't actually slow usually, but sometimes it takes >10 seconds on +// Firefox with service worker for no obvious reason. + +'use strict'; + +const deflateChunkValue = new Uint8Array([120, 156, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 48, 173, 6, 36]); +const gzipChunkValue = new Uint8Array([31, 139, 8, 0, 0, 0, 0, 0, 0, 3, 75, 173, 40, 72, 77, 46, 73, 77, 81, 200, 47, 45, 41, 40, 45, 1, 0, 176, 1, 57, 179, 15, 0, 0, 0]); + +promise_test(async t => { + const ds = new DecompressionStream('deflate'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(deflateChunkValue); + const { value } = await reader.read(); + assert_equals(value.constructor, Uint8Array, "type should match"); + await writePromise; +}, 'decompressing deflated output should give Uint8Array chunks'); + +promise_test(async t => { + const ds = new DecompressionStream('gzip'); + const reader = ds.readable.getReader(); + const writer = ds.writable.getWriter(); + const writePromise = writer.write(gzipChunkValue); + const { value } = await reader.read(); + assert_equals(value.constructor, Uint8Array, "type should match"); + await writePromise; +}, 'decompressing gzip output should give Uint8Array chunks'); diff --git a/test/fixtures/wpt/compression/decompression-with-detach.tentative.window.js b/test/fixtures/wpt/compression/decompression-with-detach.tentative.window.js new file mode 100644 index 00000000000000..1ff9c269837022 --- /dev/null +++ b/test/fixtures/wpt/compression/decompression-with-detach.tentative.window.js @@ -0,0 +1,41 @@ +// META: global=window,worker,shadowrealm +// META: script=resources/concatenate-stream.js + +'use strict'; + +const kInputLength = 1000000; + +async function createLargeCompressedInput() { + const cs = new CompressionStream('deflate'); + // The input has to be large enough that it won't fit in a single chunk when + // decompressed. + const writer = cs.writable.getWriter(); + writer.write(new Uint8Array(kInputLength)); + writer.close(); + return concatenateStream(cs.readable); +} + +promise_test(async () => { + const input = await createLargeCompressedInput(); + const ds = new DecompressionStream('deflate'); + const writer = ds.writable.getWriter(); + writer.write(input); + writer.close(); + // Object.prototype.then will be looked up synchronously when the promise + // returned by read() is resolved. + Object.defineProperty(Object.prototype, 'then', { + get() { + // Cause input to become detached and unreferenced. + try { + postMessage(undefined, 'nowhere', [input.buffer]); + } catch (e) { + // It's already detached. + } + } + }); + const output = await concatenateStream(ds.readable); + // If output successfully decompressed and gave the right length, we can be + // reasonably confident that no data corruption happened. + assert_equals( + output.byteLength, kInputLength, 'output should be the right length'); +}, 'data should be correctly decompressed even if input is detached partway'); diff --git a/test/fixtures/wpt/compression/idlharness-shadowrealm.window.js b/test/fixtures/wpt/compression/idlharness-shadowrealm.window.js new file mode 100644 index 00000000000000..2fdc807ee07e32 --- /dev/null +++ b/test/fixtures/wpt/compression/idlharness-shadowrealm.window.js @@ -0,0 +1,2 @@ +// META: script=/resources/idlharness-shadowrealm.js +idl_test_shadowrealm(["compression"], ["streams"]); diff --git a/test/fixtures/wpt/compression/idlharness.https.any.js b/test/fixtures/wpt/compression/idlharness.https.any.js new file mode 100644 index 00000000000000..8d96cf523c4953 --- /dev/null +++ b/test/fixtures/wpt/compression/idlharness.https.any.js @@ -0,0 +1,17 @@ +// META: script=/resources/WebIDLParser.js +// META: script=/resources/idlharness.js + +'use strict'; + +// https://wicg.github.io/compression/ + +idl_test( + ['compression'], + ['streams'], + idl_array => { + idl_array.add_objects({ + CompressionStream: ['new CompressionStream("deflate")'], + DecompressionStream: ['new DecompressionStream("deflate")'], + }); + } +); diff --git a/test/fixtures/wpt/compression/resources/concatenate-stream.js b/test/fixtures/wpt/compression/resources/concatenate-stream.js new file mode 100644 index 00000000000000..a35bb1416e7548 --- /dev/null +++ b/test/fixtures/wpt/compression/resources/concatenate-stream.js @@ -0,0 +1,25 @@ +'use strict'; + +// Read all the chunks from a stream that returns BufferSource objects and +// concatenate them into a single Uint8Array. +async function concatenateStream(readableStream) { + const reader = readableStream.getReader(); + let totalSize = 0; + const buffers = []; + while (true) { + const { value, done } = await reader.read(); + if (done) { + break; + } + buffers.push(value); + totalSize += value.byteLength; + } + reader.releaseLock(); + const concatenated = new Uint8Array(totalSize); + let offset = 0; + for (const buffer of buffers) { + concatenated.set(buffer, offset); + offset += buffer.byteLength; + } + return concatenated; +} diff --git a/test/fixtures/wpt/compression/third_party/pako/LICENSE b/test/fixtures/wpt/compression/third_party/pako/LICENSE new file mode 100644 index 00000000000000..a934ef8db47845 --- /dev/null +++ b/test/fixtures/wpt/compression/third_party/pako/LICENSE @@ -0,0 +1,21 @@ +(The MIT License) + +Copyright (C) 2014-2017 by Vitaly Puzrin and Andrei Tuputcyn + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/test/fixtures/wpt/compression/third_party/pako/README b/test/fixtures/wpt/compression/third_party/pako/README new file mode 100644 index 00000000000000..96028388ebb9d5 --- /dev/null +++ b/test/fixtures/wpt/compression/third_party/pako/README @@ -0,0 +1,2 @@ +original repository: +https://github.com/nodeca/pako diff --git a/test/fixtures/wpt/compression/third_party/pako/pako_inflate.min.js b/test/fixtures/wpt/compression/third_party/pako/pako_inflate.min.js new file mode 100644 index 00000000000000..a191a78a8956cd --- /dev/null +++ b/test/fixtures/wpt/compression/third_party/pako/pako_inflate.min.js @@ -0,0 +1 @@ +!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).pako=e()}}(function(){return function r(o,s,f){function l(t,e){if(!s[t]){if(!o[t]){var i="function"==typeof require&&require;if(!e&&i)return i(t,!0);if(d)return d(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var a=s[t]={exports:{}};o[t][0].call(a.exports,function(e){return l(o[t][1][e]||e)},a,a.exports,r,o,s,f)}return s[t].exports}for(var d="function"==typeof require&&require,e=0;e>>6:(i<65536?t[r++]=224|i>>>12:(t[r++]=240|i>>>18,t[r++]=128|i>>>12&63),t[r++]=128|i>>>6&63),t[r++]=128|63&i);return t},i.buf2binstring=function(e){return d(e,e.length)},i.binstring2buf=function(e){for(var t=new f.Buf8(e.length),i=0,n=t.length;i>10&1023,s[n++]=56320|1023&a)}return d(s,n)},i.utf8border=function(e,t){var i;for((t=t||e.length)>e.length&&(t=e.length),i=t-1;0<=i&&128==(192&e[i]);)i--;return i<0?t:0===i?t:i+l[e[i]]>t?i:t}},{"./common":1}],3:[function(e,t,i){"use strict";t.exports=function(e,t,i,n){for(var a=65535&e|0,r=e>>>16&65535|0,o=0;0!==i;){for(i-=o=2e3>>1:e>>>1;t[i]=e}return t}();t.exports=function(e,t,i,n){var a=s,r=n+i;e^=-1;for(var o=n;o>>8^a[255&(e^t[o])];return-1^e}},{}],6:[function(e,t,i){"use strict";t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],7:[function(e,t,i){"use strict";t.exports=function(e,t){var i,n,a,r,o,s,f,l,d,c,u,h,b,m,w,k,_,g,v,p,x,y,S,E,Z;i=e.state,n=e.next_in,E=e.input,a=n+(e.avail_in-5),r=e.next_out,Z=e.output,o=r-(t-e.avail_out),s=r+(e.avail_out-257),f=i.dmax,l=i.wsize,d=i.whave,c=i.wnext,u=i.window,h=i.hold,b=i.bits,m=i.lencode,w=i.distcode,k=(1<>>=v=g>>>24,b-=v,0===(v=g>>>16&255))Z[r++]=65535&g;else{if(!(16&v)){if(0==(64&v)){g=m[(65535&g)+(h&(1<>>=v,b-=v),b<15&&(h+=E[n++]<>>=v=g>>>24,b-=v,!(16&(v=g>>>16&255))){if(0==(64&v)){g=w[(65535&g)+(h&(1<>>=v,b-=v,(v=r-o)>3,h&=(1<<(b-=p<<3))-1,e.next_in=n,e.next_out=r,e.avail_in=n>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function r(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new z.Buf16(320),this.work=new z.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function o(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=F,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new z.Buf32(n),t.distcode=t.distdyn=new z.Buf32(a),t.sane=1,t.back=-1,T):U}function s(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,o(e)):U}function f(e,t){var i,n;return e&&e.state?(n=e.state,t<0?(i=0,t=-t):(i=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15=r.wsize?(z.arraySet(r.window,t,i-r.wsize,r.wsize,0),r.wnext=0,r.whave=r.wsize):(n<(a=r.wsize-r.wnext)&&(a=n),z.arraySet(r.window,t,i-n,a,r.wnext),(n-=a)?(z.arraySet(r.window,t,i-n,n,0),r.wnext=n,r.whave=r.wsize):(r.wnext+=a,r.wnext===r.wsize&&(r.wnext=0),r.whave>>8&255,i.check=N(i.check,B,2,0),d=l=0,i.mode=2;break}if(i.flags=0,i.head&&(i.head.done=!1),!(1&i.wrap)||(((255&l)<<8)+(l>>8))%31){e.msg="incorrect header check",i.mode=30;break}if(8!=(15&l)){e.msg="unknown compression method",i.mode=30;break}if(d-=4,x=8+(15&(l>>>=4)),0===i.wbits)i.wbits=x;else if(x>i.wbits){e.msg="invalid window size",i.mode=30;break}i.dmax=1<>8&1),512&i.flags&&(B[0]=255&l,B[1]=l>>>8&255,i.check=N(i.check,B,2,0)),d=l=0,i.mode=3;case 3:for(;d<32;){if(0===s)break e;s--,l+=n[r++]<>>8&255,B[2]=l>>>16&255,B[3]=l>>>24&255,i.check=N(i.check,B,4,0)),d=l=0,i.mode=4;case 4:for(;d<16;){if(0===s)break e;s--,l+=n[r++]<>8),512&i.flags&&(B[0]=255&l,B[1]=l>>>8&255,i.check=N(i.check,B,2,0)),d=l=0,i.mode=5;case 5:if(1024&i.flags){for(;d<16;){if(0===s)break e;s--,l+=n[r++]<>>8&255,i.check=N(i.check,B,2,0)),d=l=0}else i.head&&(i.head.extra=null);i.mode=6;case 6:if(1024&i.flags&&(s<(h=i.length)&&(h=s),h&&(i.head&&(x=i.head.extra_len-i.length,i.head.extra||(i.head.extra=new Array(i.head.extra_len)),z.arraySet(i.head.extra,n,r,h,x)),512&i.flags&&(i.check=N(i.check,n,h,r)),s-=h,r+=h,i.length-=h),i.length))break e;i.length=0,i.mode=7;case 7:if(2048&i.flags){if(0===s)break e;for(h=0;x=n[r+h++],i.head&&x&&i.length<65536&&(i.head.name+=String.fromCharCode(x)),x&&h>9&1,i.head.done=!0),e.adler=i.check=0,i.mode=12;break;case 10:for(;d<32;){if(0===s)break e;s--,l+=n[r++]<>>=7&d,d-=7&d,i.mode=27;break}for(;d<3;){if(0===s)break e;s--,l+=n[r++]<>>=1)){case 0:i.mode=14;break;case 1:if(H(i),i.mode=20,6!==t)break;l>>>=2,d-=2;break e;case 2:i.mode=17;break;case 3:e.msg="invalid block type",i.mode=30}l>>>=2,d-=2;break;case 14:for(l>>>=7&d,d-=7&d;d<32;){if(0===s)break e;s--,l+=n[r++]<>>16^65535)){e.msg="invalid stored block lengths",i.mode=30;break}if(i.length=65535&l,d=l=0,i.mode=15,6===t)break e;case 15:i.mode=16;case 16:if(h=i.length){if(s>>=5,d-=5,i.ndist=1+(31&l),l>>>=5,d-=5,i.ncode=4+(15&l),l>>>=4,d-=4,286>>=3,d-=3}for(;i.have<19;)i.lens[A[i.have++]]=0;if(i.lencode=i.lendyn,i.lenbits=7,S={bits:i.lenbits},y=C(0,i.lens,0,19,i.lencode,0,i.work,S),i.lenbits=S.bits,y){e.msg="invalid code lengths set",i.mode=30;break}i.have=0,i.mode=19;case 19:for(;i.have>>16&255,_=65535&Z,!((w=Z>>>24)<=d);){if(0===s)break e;s--,l+=n[r++]<>>=w,d-=w,i.lens[i.have++]=_;else{if(16===_){for(E=w+2;d>>=w,d-=w,0===i.have){e.msg="invalid bit length repeat",i.mode=30;break}x=i.lens[i.have-1],h=3+(3&l),l>>>=2,d-=2}else if(17===_){for(E=w+3;d>>=w)),l>>>=3,d-=3}else{for(E=w+7;d>>=w)),l>>>=7,d-=7}if(i.have+h>i.nlen+i.ndist){e.msg="invalid bit length repeat",i.mode=30;break}for(;h--;)i.lens[i.have++]=x}}if(30===i.mode)break;if(0===i.lens[256]){e.msg="invalid code -- missing end-of-block",i.mode=30;break}if(i.lenbits=9,S={bits:i.lenbits},y=C(I,i.lens,0,i.nlen,i.lencode,0,i.work,S),i.lenbits=S.bits,y){e.msg="invalid literal/lengths set",i.mode=30;break}if(i.distbits=6,i.distcode=i.distdyn,S={bits:i.distbits},y=C(D,i.lens,i.nlen,i.ndist,i.distcode,0,i.work,S),i.distbits=S.bits,y){e.msg="invalid distances set",i.mode=30;break}if(i.mode=20,6===t)break e;case 20:i.mode=21;case 21:if(6<=s&&258<=f){e.next_out=o,e.avail_out=f,e.next_in=r,e.avail_in=s,i.hold=l,i.bits=d,O(e,u),o=e.next_out,a=e.output,f=e.avail_out,r=e.next_in,n=e.input,s=e.avail_in,l=i.hold,d=i.bits,12===i.mode&&(i.back=-1);break}for(i.back=0;k=(Z=i.lencode[l&(1<>>16&255,_=65535&Z,!((w=Z>>>24)<=d);){if(0===s)break e;s--,l+=n[r++]<>g)])>>>16&255,_=65535&Z,!(g+(w=Z>>>24)<=d);){if(0===s)break e;s--,l+=n[r++]<>>=g,d-=g,i.back+=g}if(l>>>=w,d-=w,i.back+=w,i.length=_,0===k){i.mode=26;break}if(32&k){i.back=-1,i.mode=12;break}if(64&k){e.msg="invalid literal/length code",i.mode=30;break}i.extra=15&k,i.mode=22;case 22:if(i.extra){for(E=i.extra;d>>=i.extra,d-=i.extra,i.back+=i.extra}i.was=i.length,i.mode=23;case 23:for(;k=(Z=i.distcode[l&(1<>>16&255,_=65535&Z,!((w=Z>>>24)<=d);){if(0===s)break e;s--,l+=n[r++]<>g)])>>>16&255,_=65535&Z,!(g+(w=Z>>>24)<=d);){if(0===s)break e;s--,l+=n[r++]<>>=g,d-=g,i.back+=g}if(l>>>=w,d-=w,i.back+=w,64&k){e.msg="invalid distance code",i.mode=30;break}i.offset=_,i.extra=15&k,i.mode=24;case 24:if(i.extra){for(E=i.extra;d>>=i.extra,d-=i.extra,i.back+=i.extra}if(i.offset>i.dmax){e.msg="invalid distance too far back",i.mode=30;break}i.mode=25;case 25:if(0===f)break e;if(h=u-f,i.offset>h){if((h=i.offset-h)>i.whave&&i.sane){e.msg="invalid distance too far back",i.mode=30;break}h>i.wnext?(h-=i.wnext,b=i.wsize-h):b=i.wnext-h,h>i.length&&(h=i.length),m=i.window}else m=a,b=o-i.offset,h=i.length;for(fh?(m=O[C+o[g]],w=A[z+o[g]]):(m=96,w=0),f=1<<_-S,v=l=1<>S)+(l-=f)]=b<<24|m<<16|w|0,0!==l;);for(f=1<<_-1;B&f;)f>>=1;if(0!==f?(B&=f-1,B+=f):B=0,g++,0==--R[_]){if(_===p)break;_=t[i+o[g]]}if(x<_&&(B&c)!==d){for(0===S&&(S=x),u+=v,E=1<<(y=_-S);y+S 00:00:05.000 +Foo diff --git a/test/fixtures/wpt/media/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr.webm b/test/fixtures/wpt/media/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr.webm new file mode 100644 index 0000000000000000000000000000000000000000..8b705dbc8980708aa847f7c1868300979faa12f8 GIT binary patch literal 76501 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�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

KtQ30wQD4}}8P_y`E&y}w3U0aS` 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 literal 0 HcmV?d00001 diff --git a/test/fixtures/wpt/versions.json b/test/fixtures/wpt/versions.json index 4b28c06e6c40df..64de3fbbbeff27 100644 --- a/test/fixtures/wpt/versions.json +++ b/test/fixtures/wpt/versions.json @@ -3,6 +3,10 @@ "commit": "dbd648158d337580885e70a54f929daf215211a0", "path": "common" }, + "compression": { + "commit": "c82521cfa587505746a853a24d22589633825b10", + "path": "compression" + }, "console": { "commit": "767ae354642bee1e4d90b28df4480475b9260e14", "path": "console" diff --git a/test/wpt/README.md b/test/wpt/README.md index a378e3244a1f0b..0f73062e289a47 100644 --- a/test/wpt/README.md +++ b/test/wpt/README.md @@ -153,7 +153,7 @@ expected failures. { "something.scope.js": { // the file name // Optional: If the requirement is not met, this test will be skipped - "requires": ["small-icu"], // supports: "small-icu", "full-icu" + "requires": ["small-icu"], // supports: "small-icu", "full-icu", "crypto" // Optional: the test will be skipped with the reason printed "skip": "explain why we cannot run a test that's supposed to pass", diff --git a/test/wpt/status/compression.json b/test/wpt/status/compression.json new file mode 100644 index 00000000000000..8c8535c15815e4 --- /dev/null +++ b/test/wpt/status/compression.json @@ -0,0 +1,58 @@ +{ + "compression-bad-chunks.tentative.any.js": { + "skip": "Execution \"hangs\", ArrayBuffer and TypedArray is not accepted and throws, instead of rejects during writer.write" + }, + "compression-constructor-error.tentative.any.js": { + "fail": { + "expected": [ + "non-string input should cause the constructor to throw" + ] + } + }, + "decompression-bad-chunks.tentative.any.js": { + "skip": "Execution \"hangs\", ArrayBuffer and TypedArray is not accepted and throws, instead of rejects during writer.write" + }, + "decompression-buffersource.tentative.any.js": { + "skip": "ArrayBuffer and TypedArray is not accepted and throws, instead of rejects during writer.write" + }, + "decompression-constructor-error.tentative.any.js": { + "fail": { + "expected": [ + "non-string input should cause the constructor to throw" + ] + } + }, + "compression-with-detach.tentative.window.js": { + "requires": ["crypto"] + }, + "decompression-corrupt-input.tentative.any.js": { + "fail": { + "expected": [ + "truncating the input for 'deflate' should give an error", + "trailing junk for 'deflate' should give an error", + "format 'deflate' field CMF should be error for 0", + "format 'deflate' field FLG should be error for 157", + "format 'deflate' field DATA should be error for 5", + "format 'deflate' field ADLER should be error for 255", + "truncating the input for 'gzip' should give an error", + "trailing junk for 'gzip' should give an error", + "format 'gzip' field ID should be error for 255", + "format 'gzip' field CM should be error for 0", + "format 'gzip' field FLG should be error for 2", + "format 'gzip' field DATA should be error for 3", + "format 'gzip' field CRC should be error for 0", + "format 'gzip' field ISIZE should be error for 1", + "the deflate input compressed with dictionary should give an error" + ] + } + }, + "idlharness-shadowrealm.window.js": { + "skip": "ShadowRealm support is not enabled" + }, + "idlharness.https.any.js": { + "skip": "wpt/resources is not as simple to bring up to date" + }, + "third_party/pako/pako_inflate.min.js": { + "skip": "This is not a test file." + } +} diff --git a/test/wpt/status/performance-timeline.json b/test/wpt/status/performance-timeline.json index 9a297e641437df..36eeb36782c9aa 100644 --- a/test/wpt/status/performance-timeline.json +++ b/test/wpt/status/performance-timeline.json @@ -7,6 +7,9 @@ ] } }, + "navigation-id.helper.js": { + "skip": "This is not a test file." + }, "webtiming-resolution.any.js": { "skip": "flaky" } diff --git a/test/wpt/test-compression.js b/test/wpt/test-compression.js new file mode 100644 index 00000000000000..6991adff5645b4 --- /dev/null +++ b/test/wpt/test-compression.js @@ -0,0 +1,7 @@ +'use strict'; + +const { WPTRunner } = require('../common/wpt'); + +const runner = new WPTRunner('compression'); + +runner.runJsTests(); From 146ad9cab0295546f8206b3e1a846ad96155dcb1 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Thu, 9 Nov 2023 12:09:17 +0100 Subject: [PATCH 004/114] stream: treat compression web stream format per its WebIDL definition PR-URL: https://github.com/nodejs/node/pull/50631 Reviewed-By: James M Snell Reviewed-By: Matteo Collina --- lib/internal/crypto/webidl.js | 41 ++++---------------------- lib/internal/webidl.js | 40 ++++++++++++++++++++++++- lib/internal/webstreams/compression.js | 24 ++++++++++----- test/wpt/status/compression.json | 14 --------- 4 files changed, 60 insertions(+), 59 deletions(-) diff --git a/lib/internal/crypto/webidl.js b/lib/internal/crypto/webidl.js index 61a4cfe4330703..326d520b844d23 100644 --- a/lib/internal/crypto/webidl.js +++ b/lib/internal/crypto/webidl.js @@ -19,20 +19,22 @@ const { MathTrunc, Number, NumberIsFinite, - ObjectAssign, ObjectPrototypeIsPrototypeOf, SafeArrayIterator, - SafeSet, String, SymbolIterator, TypedArrayPrototypeGetBuffer, TypedArrayPrototypeGetSymbolToStringTag, - TypeError, globalThis: { SharedArrayBuffer, }, } = primordials; +const { + makeException, + createEnumConverter, +} = require('internal/webidl'); + const { kEmptyObject, setOwnProperty, @@ -40,23 +42,6 @@ const { const { CryptoKey } = require('internal/crypto/webcrypto'); const { getDataViewOrTypedArrayBuffer } = require('internal/crypto/util'); -function codedTypeError(message, errorProperties = kEmptyObject) { - // eslint-disable-next-line no-restricted-syntax - const err = new TypeError(message); - ObjectAssign(err, errorProperties); - return err; -} - -function makeException(message, opts = kEmptyObject) { - const prefix = opts.prefix ? opts.prefix + ': ' : ''; - const context = opts.context?.length === 0 ? - '' : (opts.context ?? 'Value') + ' '; - return codedTypeError( - `${prefix}${context}${message}`, - { code: opts.code || 'ERR_INVALID_ARG_TYPE' }, - ); -} - // https://tc39.es/ecma262/#sec-tonumber function toNumber(value, opts = kEmptyObject) { switch (typeof value) { @@ -308,22 +293,6 @@ function createDictionaryConverter(name, dictionaries) { }; } -function createEnumConverter(name, values) { - const E = new SafeSet(values); - - return function(V, opts = kEmptyObject) { - const S = String(V); - - if (!E.has(S)) { - throw makeException( - `value '${S}' is not a valid enum value of type ${name}.`, - { __proto__: null, ...opts, code: 'ERR_INVALID_ARG_VALUE' }); - } - - return S; - }; -} - function createSequenceConverter(converter) { return function(V, opts = kEmptyObject) { if (type(V) !== 'Object') { diff --git a/lib/internal/webidl.js b/lib/internal/webidl.js index 67c01418f167f7..eeb0f35586a2ed 100644 --- a/lib/internal/webidl.js +++ b/lib/internal/webidl.js @@ -10,7 +10,10 @@ const { NumberIsNaN, NumberMAX_SAFE_INTEGER, NumberMIN_SAFE_INTEGER, + ObjectAssign, + SafeSet, String, + TypeError, } = primordials; const { @@ -173,8 +176,43 @@ converters.DOMString = function DOMString(V) { return String(V); }; +function codedTypeError(message, errorProperties = kEmptyObject) { + // eslint-disable-next-line no-restricted-syntax + const err = new TypeError(message); + ObjectAssign(err, errorProperties); + return err; +} + +function makeException(message, opts = kEmptyObject) { + const prefix = opts.prefix ? opts.prefix + ': ' : ''; + const context = opts.context?.length === 0 ? + '' : (opts.context ?? 'Value') + ' '; + return codedTypeError( + `${prefix}${context}${message}`, + { code: opts.code || 'ERR_INVALID_ARG_TYPE' }, + ); +} + +function createEnumConverter(name, values) { + const E = new SafeSet(values); + + return function(V, opts = kEmptyObject) { + const S = String(V); + + if (!E.has(S)) { + throw makeException( + `value '${S}' is not a valid enum value of type ${name}.`, + { __proto__: null, ...opts, code: 'ERR_INVALID_ARG_VALUE' }); + } + + return S; + }; +} + module.exports = { + converters, convertToInt, + createEnumConverter, evenRound, - converters, + makeException, }; diff --git a/lib/internal/webstreams/compression.js b/lib/internal/webstreams/compression.js index d912959e29fd23..32f3f9b4605032 100644 --- a/lib/internal/webstreams/compression.js +++ b/lib/internal/webstreams/compression.js @@ -4,10 +4,6 @@ const { ObjectDefineProperties, } = primordials; -const { - codes: { ERR_INVALID_ARG_VALUE }, -} = require('internal/errors'); - const { newReadableWritablePairFromDuplex, } = require('internal/webstreams/adapters'); @@ -19,12 +15,20 @@ const { kEnumerableProperty, } = require('internal/util'); +const { createEnumConverter } = require('internal/webidl'); + let zlib; function lazyZlib() { zlib ??= require('zlib'); return zlib; } +const formatConverter = createEnumConverter('CompressionFormat', [ + 'deflate', + 'deflate-raw', + 'gzip', +]); + /** * @typedef {import('./readablestream').ReadableStream} ReadableStream * @typedef {import('./writablestream').WritableStream} WritableStream @@ -38,6 +42,10 @@ class CompressionStream { * @param {'deflate'|'deflate-raw'|'gzip'} format */ constructor(format) { + format = formatConverter(format, { + prefix: "Failed to construct 'CompressionStream'", + context: '1st argument', + }); switch (format) { case 'deflate': this.#handle = lazyZlib().createDeflate(); @@ -48,8 +56,6 @@ class CompressionStream { case 'gzip': this.#handle = lazyZlib().createGzip(); break; - default: - throw new ERR_INVALID_ARG_VALUE('format', format); } this.#transform = newReadableWritablePairFromDuplex(this.#handle); } @@ -86,6 +92,10 @@ class DecompressionStream { * @param {'deflate'|'deflate-raw'|'gzip'} format */ constructor(format) { + format = formatConverter(format, { + prefix: "Failed to construct 'DecompressionStream'", + context: '1st argument', + }); switch (format) { case 'deflate': this.#handle = lazyZlib().createInflate(); @@ -96,8 +106,6 @@ class DecompressionStream { case 'gzip': this.#handle = lazyZlib().createGunzip(); break; - default: - throw new ERR_INVALID_ARG_VALUE('format', format); } this.#transform = newReadableWritablePairFromDuplex(this.#handle); } diff --git a/test/wpt/status/compression.json b/test/wpt/status/compression.json index 8c8535c15815e4..cf979345ea87cb 100644 --- a/test/wpt/status/compression.json +++ b/test/wpt/status/compression.json @@ -2,26 +2,12 @@ "compression-bad-chunks.tentative.any.js": { "skip": "Execution \"hangs\", ArrayBuffer and TypedArray is not accepted and throws, instead of rejects during writer.write" }, - "compression-constructor-error.tentative.any.js": { - "fail": { - "expected": [ - "non-string input should cause the constructor to throw" - ] - } - }, "decompression-bad-chunks.tentative.any.js": { "skip": "Execution \"hangs\", ArrayBuffer and TypedArray is not accepted and throws, instead of rejects during writer.write" }, "decompression-buffersource.tentative.any.js": { "skip": "ArrayBuffer and TypedArray is not accepted and throws, instead of rejects during writer.write" }, - "decompression-constructor-error.tentative.any.js": { - "fail": { - "expected": [ - "non-string input should cause the constructor to throw" - ] - } - }, "compression-with-detach.tentative.window.js": { "requires": ["crypto"] }, From 0d556d9a59d115cb5e5a4637d2a807a424e0d00e Mon Sep 17 00:00:00 2001 From: "Node.js GitHub Bot" Date: Sun, 12 Nov 2023 11:07:19 +0000 Subject: [PATCH 005/114] tools: update lint-md-dependencies to rollup@4.3.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50675 Reviewed-By: Luigi Pinca Reviewed-By: Moshe Atlow Reviewed-By: Michaël Zasso --- tools/lint-md/package-lock.json | 752 ++++++++++++++++---------------- tools/lint-md/package.json | 2 +- 2 files changed, 377 insertions(+), 377 deletions(-) diff --git a/tools/lint-md/package-lock.json b/tools/lint-md/package-lock.json index 89b85c81f81a49..8c0b6043548714 100644 --- a/tools/lint-md/package-lock.json +++ b/tools/lint-md/package-lock.json @@ -18,7 +18,7 @@ "devDependencies": { "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-node-resolve": "^15.2.3", - "rollup": "^4.3.0", + "rollup": "^4.3.1", "rollup-plugin-cleanup": "^3.2.1" } }, @@ -101,9 +101,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.3.0.tgz", - "integrity": "sha512-/4pns6BYi8MXdwnXM44yoGAcFYVHL/BYlB2q1HXZ6AzH++LaiEVWFpBWQ/glXhbMbv3E3o09igrHFbP/snhAvA==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.3.1.tgz", + "integrity": "sha512-D+opNc1CnFmN6EcpG2BXUo9dI/vgoqo6xijv/nUPE1t7Y0Iz9IaXkSjaqw5MJq7B1DUawXfEaIdVCod27IsAOQ==", "cpu": [ "arm" ], @@ -114,9 +114,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.3.0.tgz", - "integrity": "sha512-nLO/JsL9idr416vzi3lHm3Xm+QZh4qHij8k3Er13kZr5YhL7/+kBAx84kDmPc7HMexLmwisjDCeDIKNFp8mDlQ==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.3.1.tgz", + "integrity": "sha512-3UbtU+7ocBMxYoMCDymHnFYB8tALVaEOjTe5pzAB65AJwXfDFAxADYGCJnBzDXD9u/G+7ktoYnMGYhitYphFkg==", "cpu": [ "arm64" ], @@ -127,9 +127,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.3.0.tgz", - "integrity": "sha512-dGhVBlllt4iHwTGy21IEoMOTN5wZoid19zEIxsdY29xcEiOEHqzDa7Sqrkh5OE7LKCowL61eFJXxYe/+pYa7ZQ==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.3.1.tgz", + "integrity": "sha512-F19xNgrLNnLTS/LFnTdlmxYvkIjFttDSQmJ6/oXLRZpGX+LAoYZpFcz2sYk5l/umk3M34Dfgnvt1fcMfTuIjzA==", "cpu": [ "arm64" ], @@ -140,9 +140,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.3.0.tgz", - "integrity": "sha512-h8wRfHeLEbU3NzaP1Oku7BYXCJQiTRr+8U0lklyOQXxXiEpHLL8tk1hFl+tezoRKLcPJD7joKaK74ASsqt3Ekg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.3.1.tgz", + "integrity": "sha512-+63fn9QVEHsDz+ZafHN1R7tAjqfVG4LaFEPeHVcM0YWSNc6vq7UOdi7IUTdQ++RZHev5rYm8GTGwJccULX1XnQ==", "cpu": [ "x64" ], @@ -153,9 +153,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.3.0.tgz", - "integrity": "sha512-wP4VgR/gfV18sylTuym3sxRTkAgUR2vh6YLeX/GEznk5jCYcYSlx585XlcUcl0c8UffIZlRJ09raWSX3JDb4GA==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.3.1.tgz", + "integrity": "sha512-eG/9q+W0KPLu4xG3EwqDsG+wz9VoPMW0IDZ4bXdq2yyi2qA/CcmHb5956ZOw9PPAmL2krHvDaPyQIzFkZP0BLA==", "cpu": [ "arm" ], @@ -166,9 +166,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.3.0.tgz", - "integrity": "sha512-v/14JCYVkqRSJeQbxFx4oUkwVQQw6lFMN7bd4vuARBc3X2lmomkxBsc+BFiIDL/BK+CTx5AOh/k9XmqDnKWRVg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.3.1.tgz", + "integrity": "sha512-zjnPmrnXz59M6SaVwJSD0bWQ3ljFxpDMDVDi94Xn60/XX/qokZco9/psvu4hSvV+3A4OKwt4XwAULygXwN8y5w==", "cpu": [ "arm64" ], @@ -179,9 +179,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.3.0.tgz", - "integrity": "sha512-tNhfYqFH5OxtRzfkTOKdgFYlPSZnlDLNW4+leNEvQZhwTJxoTwsZAAhR97l3qVry/kkLyJPBK+Q8EAJLPinDIg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.3.1.tgz", + "integrity": "sha512-/QqGJI0Jk/Ln32EmpkJYmwpKIe+Da40zmJL8YYvJKYQWhvj7qYOJM6HntQndTWNpF5/33vpLVhngCaHqmiVhNg==", "cpu": [ "arm64" ], @@ -192,9 +192,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.3.0.tgz", - "integrity": "sha512-pw77m8QywdsoFdFOgmc8roF1inBI0rciqzO8ffRUgLoq7+ee9o5eFqtEcS6hHOOplgifAUUisP8cAnwl9nUYPw==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.3.1.tgz", + "integrity": "sha512-Q1nbux0VbjeSSYns31wa4r8pssxg/bmYD7kH9ArSfSLxN0OaJaDTaBfHuGC/Ou7dWbg83ca0YQTYHQ6rzZVvgg==", "cpu": [ "x64" ], @@ -205,9 +205,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.3.0.tgz", - "integrity": "sha512-tJs7v2MnV2F8w6X1UpPHl/43OfxjUy9SuJ2ZPoxn79v9vYteChVYO/ueLHCpRMmyTUIVML3N9z4azl9ENH8Xxg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.3.1.tgz", + "integrity": "sha512-5i71ndo6vZ/EaYpWV8h0TypEc5lCmPru6hST35XiTzV9XUtvbLDfbD2T3nSU5MeQMZVgQHCHXelsH3KCGTA8WA==", "cpu": [ "x64" ], @@ -218,9 +218,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.3.0.tgz", - "integrity": "sha512-OKGxp6kATQdTyI2DF+e9s+hB3/QZB45b6e+dzcfW1SUqiF6CviWyevhmT4USsMEdP3mlpC9zxLz3Oh+WaTMOSw==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.3.1.tgz", + "integrity": "sha512-aYKKmlrLL7C0oY43B2Q4uMIlfF1BsSlSYf3R7q7SGB/SrK7Tkj2DHuxqBSYuFqSxuYuAP4PaHt230McvMpZg5A==", "cpu": [ "arm64" ], @@ -231,9 +231,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.3.0.tgz", - "integrity": "sha512-DDZ5AH68JJ2ClQFEA1aNnfA7Ybqyeh0644rGbrLOdNehTmzfICHiWSn0OprzYi9HAshTPQvlwrM+bi2kuaIOjQ==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.3.1.tgz", + "integrity": "sha512-/B5g1WqoXecmHyVsXsSGWfGE+QqiSIMk2I4+EOGcziXfZsUHoUbwXwaiAy5Sir/xUwdi9nEZDqj4jxwMchZPkQ==", "cpu": [ "ia32" ], @@ -244,9 +244,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.3.0.tgz", - "integrity": "sha512-dMvGV8p92GQ8jhNlGIKpyhVZPzJlT258pPrM5q2F8lKcc9Iv9BbfdnhX1OfinYWnb9ms5zLw6MlaMnqLfUkKnQ==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.3.1.tgz", + "integrity": "sha512-2cRSO5SflYT21SKh1G+2zchLUotL2g7/jhYxbeFpJ8gfVU6CMd2YiIfN++Rs8kzTsuwaTqrE8CAK8GORqoVOeQ==", "cpu": [ "x64" ], @@ -257,51 +257,51 @@ ] }, "node_modules/@types/debug": { - "version": "4.1.10", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.10.tgz", - "integrity": "sha512-tOSCru6s732pofZ+sMv9o4o3Zc+Sa8l3bxd/tweTQudFn06vAzb13ZX46Zi6m6EJ+RUbRTHvgQJ1gBtSgkaUYA==", + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "dependencies": { "@types/ms": "*" } }, "node_modules/@types/estree": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.4.tgz", - "integrity": "sha512-2JwWnHK9H+wUZNorf2Zr6ves96WHoWDJIftkcxPKsS7Djta6Zu519LarhRNljPXkpsZR2ZMwNCPeW7omW07BJw==" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" }, "node_modules/@types/estree-jsx": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.2.tgz", - "integrity": "sha512-GNBWlGBMjiiiL5TSkvPtOteuXsiVitw5MYGY1UYlrAq0SKyczsls6sCD7TZ8fsjRsvCVxml7EbyjJezPb3DrSA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.3.tgz", + "integrity": "sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==", "dependencies": { "@types/estree": "*" } }, "node_modules/@types/hast": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.7.tgz", - "integrity": "sha512-EVLigw5zInURhzfXUM65eixfadfsHKomGKUakToXo84t8gGIJuTcD2xooM2See7GyQ7DRtYjhCHnSUQez8JaLw==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.8.tgz", + "integrity": "sha512-aMIqAlFd2wTIDZuvLbhUT+TGvMxrNC8ECUIVtH6xxy0sQLs3iu6NO8Kp/VT5je7i5ufnebXzdV1dNDMnvaH6IQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/@types/hast/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/@types/mdast": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.2.tgz", - "integrity": "sha512-tYR83EignvhYO9iU3kDg8V28M0jqyh9zzp5GV+EO+AYnyUl3P5ltkTeJuTiFZQFz670FSb3EwT/6LQdX+UdKfw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", + "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", "dependencies": { "@types/unist": "*" } }, "node_modules/@types/ms": { - "version": "0.7.33", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.33.tgz", - "integrity": "sha512-AuHIyzR5Hea7ij0P9q7vx7xu4z0C28ucwjAZC0ja7JhINyCnOw8/DnvAPQQ9TfOlCtZAmCERKQX9+o1mgQhuOQ==" + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" }, "node_modules/@types/resolve": { "version": "1.20.2", @@ -310,14 +310,14 @@ "dev": true }, "node_modules/@types/supports-color": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/supports-color/-/supports-color-8.1.2.tgz", - "integrity": "sha512-nhs1D8NjNueBqRBhBTsc81g90g7VBD4wnMTMy9oP+QIldHuJkE655QTL2D1jkj3LyCd+Q5Y69oOpfxN1l0eCMA==" + "version": "8.1.3", + "resolved": "https://registry.npmjs.org/@types/supports-color/-/supports-color-8.1.3.tgz", + "integrity": "sha512-Hy6UMpxhE3j1tLpl27exp1XqHD7n8chAiNPzWfz16LPZoMMoSc4dzLl6w9qijkEb/r5O1ozdu1CWGA2L83ZeZg==" }, "node_modules/@types/unist": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.1.tgz", - "integrity": "sha512-ue/hDUpPjC85m+PM9OQDMZr3LywT+CT6mPsQq8OJtCLiERkGRcQUFvu9XASF5XWqyZFXbf15lvb3JFJ4dRLWPg==" + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" }, "node_modules/ansi-regex": { "version": "6.0.1", @@ -745,17 +745,17 @@ } }, "node_modules/mdast-comment-marker/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/mdast-comment-marker/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/mdast-util-find-and-replace": { "version": "3.0.1", @@ -903,17 +903,17 @@ } }, "node_modules/mdast-util-heading-style/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/mdast-util-heading-style/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/mdast-util-mdx-expression": { "version": "1.3.2", @@ -932,17 +932,17 @@ } }, "node_modules/mdast-util-mdx-expression/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/mdast-util-mdx-expression/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/mdast-util-mdx-expression/node_modules/mdast-util-from-markdown": { "version": "1.3.1", @@ -2181,17 +2181,17 @@ } }, "node_modules/remark-lint-blockquote-indentation/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-blockquote-indentation/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-blockquote-indentation/node_modules/unified": { "version": "10.1.2", @@ -2267,17 +2267,17 @@ } }, "node_modules/remark-lint-checkbox-character-style/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-checkbox-character-style/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-checkbox-character-style/node_modules/unified": { "version": "10.1.2", @@ -2354,17 +2354,17 @@ } }, "node_modules/remark-lint-checkbox-content-indent/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-checkbox-content-indent/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-checkbox-content-indent/node_modules/unified": { "version": "10.1.2", @@ -2441,17 +2441,17 @@ } }, "node_modules/remark-lint-code-block-style/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-code-block-style/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-code-block-style/node_modules/unified": { "version": "10.1.2", @@ -2527,17 +2527,17 @@ } }, "node_modules/remark-lint-definition-spacing/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-definition-spacing/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-definition-spacing/node_modules/unified": { "version": "10.1.2", @@ -2614,17 +2614,17 @@ } }, "node_modules/remark-lint-fenced-code-flag/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-fenced-code-flag/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-fenced-code-flag/node_modules/unified": { "version": "10.1.2", @@ -2700,17 +2700,17 @@ } }, "node_modules/remark-lint-fenced-code-marker/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-fenced-code-marker/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-fenced-code-marker/node_modules/unified": { "version": "10.1.2", @@ -2784,17 +2784,17 @@ } }, "node_modules/remark-lint-file-extension/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-file-extension/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-file-extension/node_modules/unified": { "version": "10.1.2", @@ -2832,17 +2832,17 @@ } }, "node_modules/remark-lint-final-definition/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-final-definition/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-final-definition/node_modules/unified": { "version": "10.1.2", @@ -2916,17 +2916,17 @@ } }, "node_modules/remark-lint-final-newline/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-final-newline/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-final-newline/node_modules/unified": { "version": "10.1.2", @@ -2963,17 +2963,17 @@ } }, "node_modules/remark-lint-first-heading-level/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-first-heading-level/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-first-heading-level/node_modules/unified": { "version": "10.1.2", @@ -3050,17 +3050,17 @@ } }, "node_modules/remark-lint-hard-break-spaces/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-hard-break-spaces/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-hard-break-spaces/node_modules/unified": { "version": "10.1.2", @@ -3137,17 +3137,17 @@ } }, "node_modules/remark-lint-heading-style/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-heading-style/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-heading-style/node_modules/unified": { "version": "10.1.2", @@ -3223,17 +3223,17 @@ } }, "node_modules/remark-lint-list-item-bullet-indent/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-list-item-bullet-indent/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-list-item-bullet-indent/node_modules/unified": { "version": "10.1.2", @@ -3311,17 +3311,17 @@ } }, "node_modules/remark-lint-list-item-indent/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-list-item-indent/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-list-item-indent/node_modules/unified": { "version": "10.1.2", @@ -3398,17 +3398,17 @@ } }, "node_modules/remark-lint-maximum-line-length/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-maximum-line-length/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-maximum-line-length/node_modules/unified": { "version": "10.1.2", @@ -3486,17 +3486,17 @@ } }, "node_modules/remark-lint-no-blockquote-without-marker/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-blockquote-without-marker/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-blockquote-without-marker/node_modules/unified": { "version": "10.1.2", @@ -3575,17 +3575,17 @@ } }, "node_modules/remark-lint-no-consecutive-blank-lines/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-consecutive-blank-lines/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-consecutive-blank-lines/node_modules/unified": { "version": "10.1.2", @@ -3663,17 +3663,17 @@ } }, "node_modules/remark-lint-no-duplicate-definitions/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-duplicate-definitions/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-duplicate-definitions/node_modules/unified": { "version": "10.1.2", @@ -3759,17 +3759,17 @@ } }, "node_modules/remark-lint-no-file-name-articles/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-file-name-articles/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-file-name-articles/node_modules/unified": { "version": "10.1.2", @@ -3804,17 +3804,17 @@ } }, "node_modules/remark-lint-no-file-name-consecutive-dashes/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-file-name-consecutive-dashes/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-file-name-consecutive-dashes/node_modules/unified": { "version": "10.1.2", @@ -3849,17 +3849,17 @@ } }, "node_modules/remark-lint-no-file-name-outer-dashes/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-file-name-outer-dashes/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-file-name-outer-dashes/node_modules/unified": { "version": "10.1.2", @@ -3899,17 +3899,17 @@ } }, "node_modules/remark-lint-no-heading-content-indent/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-heading-content-indent/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-heading-content-indent/node_modules/unified": { "version": "10.1.2", @@ -3987,17 +3987,17 @@ } }, "node_modules/remark-lint-no-heading-indent/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-heading-indent/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-heading-indent/node_modules/unified": { "version": "10.1.2", @@ -4074,17 +4074,17 @@ } }, "node_modules/remark-lint-no-inline-padding/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-inline-padding/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-inline-padding/node_modules/mdast-util-to-string": { "version": "3.2.0", @@ -4174,17 +4174,17 @@ } }, "node_modules/remark-lint-no-literal-urls/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-literal-urls/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-literal-urls/node_modules/mdast-util-to-string": { "version": "3.2.0", @@ -4274,17 +4274,17 @@ } }, "node_modules/remark-lint-no-multiple-toplevel-headings/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-multiple-toplevel-headings/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-multiple-toplevel-headings/node_modules/unified": { "version": "10.1.2", @@ -4372,17 +4372,17 @@ } }, "node_modules/remark-lint-no-shell-dollars/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-shell-dollars/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-shell-dollars/node_modules/unified": { "version": "10.1.2", @@ -4458,17 +4458,17 @@ } }, "node_modules/remark-lint-no-shortcut-reference-image/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-shortcut-reference-image/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-shortcut-reference-image/node_modules/unified": { "version": "10.1.2", @@ -4544,17 +4544,17 @@ } }, "node_modules/remark-lint-no-shortcut-reference-link/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-shortcut-reference-link/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-shortcut-reference-link/node_modules/unified": { "version": "10.1.2", @@ -4631,17 +4631,17 @@ } }, "node_modules/remark-lint-no-table-indentation/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-table-indentation/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-table-indentation/node_modules/unified": { "version": "10.1.2", @@ -4716,17 +4716,17 @@ } }, "node_modules/remark-lint-no-tabs/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-tabs/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-tabs/node_modules/unified": { "version": "10.1.2", @@ -4786,17 +4786,17 @@ } }, "node_modules/remark-lint-no-undefined-references/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-undefined-references/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-undefined-references/node_modules/micromark-util-normalize-identifier": { "version": "1.1.0", @@ -4905,17 +4905,17 @@ } }, "node_modules/remark-lint-no-unused-definitions/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-no-unused-definitions/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-no-unused-definitions/node_modules/unified": { "version": "10.1.2", @@ -4992,17 +4992,17 @@ } }, "node_modules/remark-lint-ordered-list-marker-style/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-ordered-list-marker-style/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-ordered-list-marker-style/node_modules/unified": { "version": "10.1.2", @@ -5074,9 +5074,9 @@ } }, "node_modules/remark-lint-prohibited-strings/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-prohibited-strings/node_modules/unist-util-is": { "version": "5.2.1", @@ -5134,17 +5134,17 @@ } }, "node_modules/remark-lint-rule-style/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-rule-style/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-rule-style/node_modules/unified": { "version": "10.1.2", @@ -5220,17 +5220,17 @@ } }, "node_modules/remark-lint-strong-marker/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-strong-marker/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-strong-marker/node_modules/unified": { "version": "10.1.2", @@ -5307,17 +5307,17 @@ } }, "node_modules/remark-lint-table-cell-padding/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-table-cell-padding/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-table-cell-padding/node_modules/unified": { "version": "10.1.2", @@ -5393,17 +5393,17 @@ } }, "node_modules/remark-lint-table-pipes/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-table-pipes/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-table-pipes/node_modules/unified": { "version": "10.1.2", @@ -5480,17 +5480,17 @@ } }, "node_modules/remark-lint-unordered-list-marker-style/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint-unordered-list-marker-style/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint-unordered-list-marker-style/node_modules/unified": { "version": "10.1.2", @@ -5550,17 +5550,17 @@ } }, "node_modules/remark-lint/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-lint/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-lint/node_modules/unified": { "version": "10.1.2", @@ -5597,17 +5597,17 @@ } }, "node_modules/remark-message-control/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-message-control/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-message-control/node_modules/unified": { "version": "10.1.2", @@ -5716,17 +5716,17 @@ } }, "node_modules/remark-preset-lint-recommended/node_modules/@types/mdast": { - "version": "3.0.14", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.14.tgz", - "integrity": "sha512-gVZ04PGgw1qLZKsnWnyFv4ORnaJ+DXLdHTVSFbU8yX6xZ34Bjg4Q32yPkmveUP1yItXReKfB0Aknlh/3zxTKAw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", "dependencies": { "@types/unist": "^2" } }, "node_modules/remark-preset-lint-recommended/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/remark-preset-lint-recommended/node_modules/unified": { "version": "10.1.2", @@ -5778,9 +5778,9 @@ } }, "node_modules/rollup": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.3.0.tgz", - "integrity": "sha512-scIi1NrKLDIYSPK66jjECtII7vIgdAMFmFo8h6qm++I6nN9qDSV35Ku6erzGVqYjx+lj+j5wkusRMr++8SyDZg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.3.1.tgz", + "integrity": "sha512-gkvK/OnwbyacmUVjxNzuMMqSihBVQSdX9OtZkThN946cpMHA7izVzc03tHg3NVAeWXUNPzkrP7RW/rV68a42BA==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -5790,18 +5790,18 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.3.0", - "@rollup/rollup-android-arm64": "4.3.0", - "@rollup/rollup-darwin-arm64": "4.3.0", - "@rollup/rollup-darwin-x64": "4.3.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.3.0", - "@rollup/rollup-linux-arm64-gnu": "4.3.0", - "@rollup/rollup-linux-arm64-musl": "4.3.0", - "@rollup/rollup-linux-x64-gnu": "4.3.0", - "@rollup/rollup-linux-x64-musl": "4.3.0", - "@rollup/rollup-win32-arm64-msvc": "4.3.0", - "@rollup/rollup-win32-ia32-msvc": "4.3.0", - "@rollup/rollup-win32-x64-msvc": "4.3.0", + "@rollup/rollup-android-arm-eabi": "4.3.1", + "@rollup/rollup-android-arm64": "4.3.1", + "@rollup/rollup-darwin-arm64": "4.3.1", + "@rollup/rollup-darwin-x64": "4.3.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.3.1", + "@rollup/rollup-linux-arm64-gnu": "4.3.1", + "@rollup/rollup-linux-arm64-musl": "4.3.1", + "@rollup/rollup-linux-x64-gnu": "4.3.1", + "@rollup/rollup-linux-x64-musl": "4.3.1", + "@rollup/rollup-win32-arm64-msvc": "4.3.1", + "@rollup/rollup-win32-ia32-msvc": "4.3.1", + "@rollup/rollup-win32-x64-msvc": "4.3.1", "fsevents": "~2.3.2" } }, @@ -6017,9 +6017,9 @@ } }, "node_modules/unified-lint-rule/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/unified-lint-rule/node_modules/unified": { "version": "10.1.2", @@ -6057,9 +6057,9 @@ } }, "node_modules/unified-message-control/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/unified-message-control/node_modules/unist-util-is": { "version": "5.2.1", @@ -6161,9 +6161,9 @@ } }, "node_modules/unist-util-position/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/unist-util-stringify-position": { "version": "4.0.0", @@ -6250,9 +6250,9 @@ } }, "node_modules/vfile-location/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/vfile-message": { "version": "3.1.4", @@ -6268,9 +6268,9 @@ } }, "node_modules/vfile-message/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/vfile-message/node_modules/unist-util-stringify-position": { "version": "3.0.3", @@ -6411,9 +6411,9 @@ } }, "node_modules/vfile/node_modules/@types/unist": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.9.tgz", - "integrity": "sha512-zC0iXxAv1C1ERURduJueYzkzZ2zaGyc+P2c95hgkikHPr3z8EdUZOlgEQ5X0DRmwDZn+hekycQnoeiiRVrmilQ==" + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" }, "node_modules/vfile/node_modules/unist-util-stringify-position": { "version": "3.0.3", diff --git a/tools/lint-md/package.json b/tools/lint-md/package.json index a938116e7e4c08..3ce1c758ca87e5 100644 --- a/tools/lint-md/package.json +++ b/tools/lint-md/package.json @@ -16,7 +16,7 @@ "devDependencies": { "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-node-resolve": "^15.2.3", - "rollup": "^4.3.0", + "rollup": "^4.3.1", "rollup-plugin-cleanup": "^3.2.1" } } From 75265e491df3c3ea66cfc70cfa15ae5018477442 Mon Sep 17 00:00:00 2001 From: Ryan Williams Date: Sun, 12 Nov 2023 11:24:52 +0000 Subject: [PATCH 006/114] test: replace forEach with for...of MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50611 Reviewed-By: Tobias Nießen Reviewed-By: Luigi Pinca --- test/parallel/test-fs-mkdtemp-prefix-check.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/parallel/test-fs-mkdtemp-prefix-check.js b/test/parallel/test-fs-mkdtemp-prefix-check.js index 33a06914a46e10..af5cb6ab7db07d 100644 --- a/test/parallel/test-fs-mkdtemp-prefix-check.js +++ b/test/parallel/test-fs-mkdtemp-prefix-check.js @@ -27,7 +27,7 @@ function failAsync(value) { }); } -prefixValues.forEach((prefixValue) => { +for (const prefixValue of prefixValues) { fail(prefixValue); failAsync(prefixValue); -}); +} From 3731f836ed1e2d1c7c8db56b6b0579a754e7e241 Mon Sep 17 00:00:00 2001 From: Lu Yahan Date: Sun, 12 Nov 2023 22:22:15 +0800 Subject: [PATCH 007/114] deps: V8: cherry-pick 8f0b94671ddb Original commit message: [gcc] Add include for TurboShaft Include for std::numeric_limits. Bug: chromium:819294 Change-Id: I26a71ed4bad1858d2f5ed5d7dcd529e9cae60f37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4889285 Commit-Queue: Nico Hartmann Reviewed-by: Nico Hartmann Cr-Commit-Position: refs/heads/main@{#90347} Refs: https://github.com/v8/v8/commit/8f0b94671ddb56cc681f491d6e542b909b0d94cc PR-URL: https://github.com/nodejs/node/pull/50654 Reviewed-By: Richard Lau Reviewed-By: James M Snell --- common.gypi | 2 +- deps/v8/src/compiler/turboshaft/utils.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/common.gypi b/common.gypi index c51dbca5e74c5b..a74d6420af1997 100644 --- a/common.gypi +++ b/common.gypi @@ -36,7 +36,7 @@ # Reset this number to 0 on major V8 upgrades. # Increment by one for each non-official patch applied to deps/v8. - 'v8_embedder_string': '-node.15', + 'v8_embedder_string': '-node.16', ##### V8 defaults for Node.js ##### diff --git a/deps/v8/src/compiler/turboshaft/utils.h b/deps/v8/src/compiler/turboshaft/utils.h index 232c7a6dbd5b43..a028b23a490420 100644 --- a/deps/v8/src/compiler/turboshaft/utils.h +++ b/deps/v8/src/compiler/turboshaft/utils.h @@ -6,6 +6,7 @@ #define V8_COMPILER_TURBOSHAFT_UTILS_H_ #include +#include #include #include "src/base/logging.h" From 57587de1fa0b34892638d91ddd31b7b7ab527478 Mon Sep 17 00:00:00 2001 From: Deokjin Kim Date: Sun, 12 Nov 2023 23:52:03 +0900 Subject: [PATCH 008/114] src: handle errors from uv_pipe_connect2() We need to handle errors from uv_pipe_connect2() because return type is `int`. Fixes: https://github.com/nodejs/node/issues/50652 Refs: https://github.com/nodejs/node/pull/49667 Refs: https://github.com/libuv/libuv/pull/4030 PR-URL: https://github.com/nodejs/node/pull/50657 Reviewed-By: Ben Noordhuis Reviewed-By: James M Snell Reviewed-By: theanarkh --- src/pipe_wrap.cc | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/pipe_wrap.cc b/src/pipe_wrap.cc index 738a51a140d0af..e6f1f38120db71 100644 --- a/src/pipe_wrap.cc +++ b/src/pipe_wrap.cc @@ -225,16 +225,19 @@ void PipeWrap::Connect(const FunctionCallbackInfo& args) { ConnectWrap* req_wrap = new ConnectWrap(env, req_wrap_obj, AsyncWrap::PROVIDER_PIPECONNECTWRAP); - req_wrap->Dispatch( + int err = req_wrap->Dispatch( uv_pipe_connect2, &wrap->handle_, *name, name.length(), 0, AfterConnect); + if (err) { + delete req_wrap; + } else { + TRACE_EVENT_NESTABLE_ASYNC_BEGIN1(TRACING_CATEGORY_NODE2(net, native), + "connect", + req_wrap, + "pipe_path", + TRACE_STR_COPY(*name)); + } - TRACE_EVENT_NESTABLE_ASYNC_BEGIN1(TRACING_CATEGORY_NODE2(net, native), - "connect", - req_wrap, - "pipe_path", - TRACE_STR_COPY(*name)); - - args.GetReturnValue().Set(0); // uv_pipe_connect() doesn't return errors. + args.GetReturnValue().Set(err); } } // namespace node From 87460736649584590127f972f4914d5a1f31c5ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= Date: Sun, 12 Nov 2023 21:28:27 +0000 Subject: [PATCH 009/114] src: avoid silent coercion to signed/unsigned int Be accurate about signedness and bit widths. PR-URL: https://github.com/nodejs/node/pull/50663 Reviewed-By: Ben Noordhuis Reviewed-By: Marco Ippolito Reviewed-By: James M Snell Reviewed-By: Luigi Pinca --- src/permission/fs_permission.cc | 10 +++++----- src/permission/fs_permission.h | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/permission/fs_permission.cc b/src/permission/fs_permission.cc index fadf75968c779d..7a073f99a49440 100644 --- a/src/permission/fs_permission.cc +++ b/src/permission/fs_permission.cc @@ -56,7 +56,7 @@ bool is_tree_granted(node::permission::FSPermission::RadixTree* granted_tree, // is UNC file path if (param.rfind("\\\\", 0) == 0) { // return lookup with normalized param - int starting_pos = 4; // "\\?\" + size_t starting_pos = 4; // "\\?\" if (param.rfind("\\\\?\\UNC\\") == 0) { starting_pos += 4; // "UNC\" } @@ -176,7 +176,7 @@ bool FSPermission::RadixTree::Lookup(const std::string_view& s, if (current_node->children.size() == 0) { return when_empty_return; } - unsigned int parent_node_prefix_len = current_node->prefix.length(); + size_t parent_node_prefix_len = current_node->prefix.length(); const std::string path(s); auto path_len = path.length(); @@ -202,10 +202,10 @@ bool FSPermission::RadixTree::Lookup(const std::string_view& s, void FSPermission::RadixTree::Insert(const std::string& path) { FSPermission::RadixTree::Node* current_node = root_node_; - unsigned int parent_node_prefix_len = current_node->prefix.length(); - int path_len = path.length(); + size_t parent_node_prefix_len = current_node->prefix.length(); + size_t path_len = path.length(); - for (int i = 1; i <= path_len; ++i) { + for (size_t i = 1; i <= path_len; ++i) { bool is_wildcard_node = path[i - 1] == '*'; bool is_last_char = i == path_len; diff --git a/src/permission/fs_permission.h b/src/permission/fs_permission.h index 80374a08c75d26..74b1440536652a 100644 --- a/src/permission/fs_permission.h +++ b/src/permission/fs_permission.h @@ -45,8 +45,8 @@ class FSPermission final : public PermissionBase { } // swap prefix - unsigned int i = 0; - unsigned int prefix_len = prefix.length(); + size_t i = 0; + size_t prefix_len = prefix.length(); for (; i < child->prefix.length(); ++i) { if (i > prefix_len || prefix[i] != child->prefix[i]) { std::string parent_prefix = child->prefix.substr(0, i); @@ -72,7 +72,7 @@ class FSPermission final : public PermissionBase { return wildcard_child; } - Node* NextNode(const std::string& path, unsigned int idx) { + Node* NextNode(const std::string& path, size_t idx) { if (idx >= path.length()) { return nullptr; } @@ -83,8 +83,8 @@ class FSPermission final : public PermissionBase { } auto child = it->second; // match prefix - unsigned int prefix_len = child->prefix.length(); - for (unsigned int i = 0; i < path.length(); ++i) { + size_t prefix_len = child->prefix.length(); + for (size_t i = 0; i < path.length(); ++i) { if (i >= prefix_len || child->prefix[i] == '*') { return child; } From 673de300b43ef77f9abd3bda9e13da0f6699d1a8 Mon Sep 17 00:00:00 2001 From: Gabriel Schulhof Date: Sun, 12 Nov 2023 15:05:04 -0800 Subject: [PATCH 010/114] node-api: factor out common code into macros * Create macro for checking new string arguments. * Create macro for combining env check and inside-gc check. PR-URL: https://github.com/nodejs/node/pull/50664 Reviewed-By: Vladimir Morozov Reviewed-By: James M Snell Reviewed-By: Chengzhong Wu --- src/js_native_api_v8.cc | 197 +++++++++++++++------------------------- src/js_native_api_v8.h | 9 +- src/node_api.cc | 21 ++--- 3 files changed, 86 insertions(+), 141 deletions(-) diff --git a/src/js_native_api_v8.cc b/src/js_native_api_v8.cc index 7f96a7edd82ef7..54d0c2a70b215b 100644 --- a/src/js_native_api_v8.cc +++ b/src/js_native_api_v8.cc @@ -38,6 +38,17 @@ #define CHECK_NEW_FROM_UTF8(env, result, str) \ CHECK_NEW_FROM_UTF8_LEN((env), (result), (str), NAPI_AUTO_LENGTH) +#define CHECK_NEW_STRING_ARGS(env, str, length, result) \ + do { \ + CHECK_ENV_NOT_IN_GC((env)); \ + if ((length) > 0) CHECK_ARG((env), (str)); \ + CHECK_ARG((env), (result)); \ + RETURN_STATUS_IF_FALSE( \ + (env), \ + ((length) == NAPI_AUTO_LENGTH) || (length) <= INT_MAX, \ + napi_invalid_arg); \ + } while (0) + #define CREATE_TYPED_ARRAY( \ env, type, size_of_element, buffer, byte_offset, length, out) \ do { \ @@ -81,12 +92,7 @@ napi_status NewString(napi_env env, size_t length, napi_value* result, StringMaker string_maker) { - CHECK_ENV(env); - env->CheckGCAccess(); - if (length > 0) CHECK_ARG(env, str); - CHECK_ARG(env, result); - RETURN_STATUS_IF_FALSE( - env, (length == NAPI_AUTO_LENGTH) || length <= INT_MAX, napi_invalid_arg); + CHECK_NEW_STRING_ARGS(env, str, length, result); auto isolate = env->isolate; auto str_maybe = string_maker(isolate); @@ -105,9 +111,10 @@ napi_status NewExternalString(napi_env env, bool* copied, CreateAPI create_api, StringMaker string_maker) { + CHECK_NEW_STRING_ARGS(env, str, length, result); + napi_status status; #if defined(V8_ENABLE_SANDBOX) - env->CheckGCAccess(); status = create_api(env, str, length, result); if (status == napi_ok) { if (copied != nullptr) { @@ -1467,8 +1474,7 @@ napi_status NAPI_CDECL napi_object_seal(napi_env env, napi_value object) { napi_status NAPI_CDECL napi_is_array(napi_env env, napi_value value, bool* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -1528,8 +1534,7 @@ napi_status NAPI_CDECL napi_get_prototype(napi_env env, } napi_status NAPI_CDECL napi_create_object(napi_env env, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue(v8::Object::New(env->isolate)); @@ -1538,8 +1543,7 @@ napi_status NAPI_CDECL napi_create_object(napi_env env, napi_value* result) { } napi_status NAPI_CDECL napi_create_array(napi_env env, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue(v8::Array::New(env->isolate)); @@ -1550,8 +1554,7 @@ napi_status NAPI_CDECL napi_create_array(napi_env env, napi_value* result) { napi_status NAPI_CDECL napi_create_array_with_length(napi_env env, size_t length, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = @@ -1651,8 +1654,7 @@ node_api_create_external_string_utf16(napi_env env, napi_status NAPI_CDECL napi_create_double(napi_env env, double value, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = @@ -1664,8 +1666,7 @@ napi_status NAPI_CDECL napi_create_double(napi_env env, napi_status NAPI_CDECL napi_create_int32(napi_env env, int32_t value, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = @@ -1677,8 +1678,7 @@ napi_status NAPI_CDECL napi_create_int32(napi_env env, napi_status NAPI_CDECL napi_create_uint32(napi_env env, uint32_t value, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue( @@ -1690,8 +1690,7 @@ napi_status NAPI_CDECL napi_create_uint32(napi_env env, napi_status NAPI_CDECL napi_create_int64(napi_env env, int64_t value, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue( @@ -1703,8 +1702,7 @@ napi_status NAPI_CDECL napi_create_int64(napi_env env, napi_status NAPI_CDECL napi_create_bigint_int64(napi_env env, int64_t value, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = @@ -1716,8 +1714,7 @@ napi_status NAPI_CDECL napi_create_bigint_int64(napi_env env, napi_status NAPI_CDECL napi_create_bigint_uint64(napi_env env, uint64_t value, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue( @@ -1732,7 +1729,6 @@ napi_status NAPI_CDECL napi_create_bigint_words(napi_env env, const uint64_t* words, napi_value* result) { NAPI_PREAMBLE(env); - env->CheckGCAccess(); CHECK_ARG(env, words); CHECK_ARG(env, result); @@ -1752,8 +1748,7 @@ napi_status NAPI_CDECL napi_create_bigint_words(napi_env env, napi_status NAPI_CDECL napi_get_boolean(napi_env env, bool value, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); v8::Isolate* isolate = env->isolate; @@ -1770,8 +1765,7 @@ napi_status NAPI_CDECL napi_get_boolean(napi_env env, napi_status NAPI_CDECL napi_create_symbol(napi_env env, napi_value description, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); v8::Isolate* isolate = env->isolate; @@ -1793,8 +1787,7 @@ napi_status NAPI_CDECL node_api_symbol_for(napi_env env, const char* utf8description, size_t length, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); napi_value js_description_string; @@ -1839,8 +1832,7 @@ napi_status NAPI_CDECL napi_create_error(napi_env env, napi_value code, napi_value msg, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, msg); CHECK_ARG(env, result); @@ -1860,8 +1852,7 @@ napi_status NAPI_CDECL napi_create_type_error(napi_env env, napi_value code, napi_value msg, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, msg); CHECK_ARG(env, result); @@ -1881,8 +1872,7 @@ napi_status NAPI_CDECL napi_create_range_error(napi_env env, napi_value code, napi_value msg, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, msg); CHECK_ARG(env, result); @@ -1902,8 +1892,7 @@ napi_status NAPI_CDECL node_api_create_syntax_error(napi_env env, napi_value code, napi_value msg, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, msg); CHECK_ARG(env, result); @@ -1924,8 +1913,7 @@ napi_status NAPI_CDECL napi_typeof(napi_env env, napi_valuetype* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -1964,8 +1952,7 @@ napi_status NAPI_CDECL napi_typeof(napi_env env, } napi_status NAPI_CDECL napi_get_undefined(napi_env env, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue(v8::Undefined(env->isolate)); @@ -1974,8 +1961,7 @@ napi_status NAPI_CDECL napi_get_undefined(napi_env env, napi_value* result) { } napi_status NAPI_CDECL napi_get_null(napi_env env, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue(v8::Null(env->isolate)); @@ -2018,10 +2004,9 @@ napi_status NAPI_CDECL napi_get_cb_info( napi_status NAPI_CDECL napi_get_new_target(napi_env env, napi_callback_info cbinfo, napi_value* result) { - CHECK_ENV(env); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, cbinfo); CHECK_ARG(env, result); - env->CheckGCAccess(); v8impl::CallbackWrapper* info = reinterpret_cast(cbinfo); @@ -2063,8 +2048,7 @@ napi_status NAPI_CDECL napi_call_function(napi_env env, } napi_status NAPI_CDECL napi_get_global(napi_env env, napi_value* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsValueFromV8LocalValue(env->context()->Global()); @@ -2161,8 +2145,7 @@ napi_status NAPI_CDECL napi_is_error(napi_env env, bool* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot // throw JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2177,8 +2160,7 @@ napi_status NAPI_CDECL napi_get_value_double(napi_env env, double* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2195,8 +2177,7 @@ napi_status NAPI_CDECL napi_get_value_int32(napi_env env, int32_t* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2220,8 +2201,7 @@ napi_status NAPI_CDECL napi_get_value_uint32(napi_env env, uint32_t* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2245,8 +2225,7 @@ napi_status NAPI_CDECL napi_get_value_int64(napi_env env, int64_t* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2279,8 +2258,7 @@ napi_status NAPI_CDECL napi_get_value_bigint_int64(napi_env env, napi_value value, int64_t* result, bool* lossless) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); CHECK_ARG(env, lossless); @@ -2298,8 +2276,7 @@ napi_status NAPI_CDECL napi_get_value_bigint_uint64(napi_env env, napi_value value, uint64_t* result, bool* lossless) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); CHECK_ARG(env, lossless); @@ -2318,8 +2295,7 @@ napi_status NAPI_CDECL napi_get_value_bigint_words(napi_env env, int* sign_bit, size_t* word_count, uint64_t* words) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, word_count); @@ -2349,8 +2325,7 @@ napi_status NAPI_CDECL napi_get_value_bool(napi_env env, bool* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2372,8 +2347,7 @@ napi_status NAPI_CDECL napi_get_value_bool(napi_env env, // The result argument is optional unless buf is NULL. napi_status NAPI_CDECL napi_get_value_string_latin1( napi_env env, napi_value value, char* buf, size_t bufsize, size_t* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); v8::Local val = v8impl::V8LocalValueFromJsValue(value); @@ -2411,8 +2385,7 @@ napi_status NAPI_CDECL napi_get_value_string_latin1( // The result argument is optional unless buf is NULL. napi_status NAPI_CDECL napi_get_value_string_utf8( napi_env env, napi_value value, char* buf, size_t bufsize, size_t* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); v8::Local val = v8impl::V8LocalValueFromJsValue(value); @@ -2453,8 +2426,7 @@ napi_status NAPI_CDECL napi_get_value_string_utf16(napi_env env, char16_t* buf, size_t bufsize, size_t* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); v8::Local val = v8impl::V8LocalValueFromJsValue(value); @@ -2640,8 +2612,7 @@ napi_status NAPI_CDECL napi_check_object_type_tag(napi_env env, napi_status NAPI_CDECL napi_get_value_external(napi_env env, napi_value value, void** result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2661,8 +2632,7 @@ napi_status NAPI_CDECL napi_create_reference(napi_env env, napi_ref* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2686,8 +2656,7 @@ napi_status NAPI_CDECL napi_create_reference(napi_env env, napi_status NAPI_CDECL napi_delete_reference(napi_env env, napi_ref ref) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, ref); delete reinterpret_cast(ref); @@ -2705,8 +2674,7 @@ napi_status NAPI_CDECL napi_reference_ref(napi_env env, uint32_t* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, ref); v8impl::Reference* reference = reinterpret_cast(ref); @@ -2728,8 +2696,7 @@ napi_status NAPI_CDECL napi_reference_unref(napi_env env, uint32_t* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, ref); v8impl::Reference* reference = reinterpret_cast(ref); @@ -2755,8 +2722,7 @@ napi_status NAPI_CDECL napi_get_reference_value(napi_env env, napi_value* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, ref); CHECK_ARG(env, result); @@ -2770,8 +2736,7 @@ napi_status NAPI_CDECL napi_open_handle_scope(napi_env env, napi_handle_scope* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsHandleScopeFromV8HandleScope( @@ -2784,8 +2749,7 @@ napi_status NAPI_CDECL napi_close_handle_scope(napi_env env, napi_handle_scope scope) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, scope); if (env->open_handle_scopes == 0) { return napi_handle_scope_mismatch; @@ -2800,8 +2764,7 @@ napi_status NAPI_CDECL napi_open_escapable_handle_scope( napi_env env, napi_escapable_handle_scope* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = v8impl::JsEscapableHandleScopeFromV8EscapableHandleScope( @@ -2814,8 +2777,7 @@ napi_status NAPI_CDECL napi_close_escapable_handle_scope( napi_env env, napi_escapable_handle_scope scope) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, scope); if (env->open_handle_scopes == 0) { return napi_handle_scope_mismatch; @@ -2832,8 +2794,7 @@ napi_status NAPI_CDECL napi_escape_handle(napi_env env, napi_value* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, scope); CHECK_ARG(env, escapee); CHECK_ARG(env, result); @@ -2911,8 +2872,7 @@ napi_status NAPI_CDECL napi_instanceof(napi_env env, napi_status NAPI_CDECL napi_is_exception_pending(napi_env env, bool* result) { // NAPI_PREAMBLE is not used here: this function must execute when there is a // pending exception. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); *result = !env->last_exception.IsEmpty(); @@ -2923,8 +2883,7 @@ napi_status NAPI_CDECL napi_get_and_clear_last_exception(napi_env env, napi_value* result) { // NAPI_PREAMBLE is not used here: this function must execute when there is a // pending exception. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, result); if (env->last_exception.IsEmpty()) { @@ -2941,8 +2900,7 @@ napi_status NAPI_CDECL napi_get_and_clear_last_exception(napi_env env, napi_status NAPI_CDECL napi_is_arraybuffer(napi_env env, napi_value value, bool* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -2994,8 +2952,7 @@ napi_status NAPI_CDECL napi_get_arraybuffer_info(napi_env env, napi_value arraybuffer, void** data, size_t* byte_length) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, arraybuffer); v8::Local value = v8impl::V8LocalValueFromJsValue(arraybuffer); @@ -3017,8 +2974,7 @@ napi_status NAPI_CDECL napi_get_arraybuffer_info(napi_env env, napi_status NAPI_CDECL napi_is_typedarray(napi_env env, napi_value value, bool* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -3104,8 +3060,7 @@ napi_status NAPI_CDECL napi_get_typedarray_info(napi_env env, void** data, napi_value* arraybuffer, size_t* byte_offset) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, typedarray); v8::Local value = v8impl::V8LocalValueFromJsValue(typedarray); @@ -3195,8 +3150,7 @@ napi_status NAPI_CDECL napi_create_dataview(napi_env env, napi_status NAPI_CDECL napi_is_dataview(napi_env env, napi_value value, bool* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -3212,8 +3166,7 @@ napi_status NAPI_CDECL napi_get_dataview_info(napi_env env, void** data, napi_value* arraybuffer, size_t* byte_offset) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, dataview); v8::Local value = v8impl::V8LocalValueFromJsValue(dataview); @@ -3288,8 +3241,7 @@ napi_status NAPI_CDECL napi_reject_deferred(napi_env env, napi_status NAPI_CDECL napi_is_promise(napi_env env, napi_value value, bool* is_promise) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, is_promise); @@ -3315,8 +3267,7 @@ napi_status NAPI_CDECL napi_create_date(napi_env env, napi_status NAPI_CDECL napi_is_date(napi_env env, napi_value value, bool* is_date) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, is_date); @@ -3329,7 +3280,6 @@ napi_status NAPI_CDECL napi_get_date_value(napi_env env, napi_value value, double* result) { NAPI_PREAMBLE(env); - env->CheckGCAccess(); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -3375,8 +3325,7 @@ napi_status NAPI_CDECL napi_add_finalizer(napi_env env, napi_ref* result) { // Omit NAPI_PREAMBLE and GET_RETURN_STATUS because V8 calls here cannot throw // JS exceptions. - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, js_object); CHECK_ARG(env, finalize_cb); @@ -3455,8 +3404,7 @@ napi_status NAPI_CDECL napi_get_instance_data(napi_env env, void** data) { napi_status NAPI_CDECL napi_detach_arraybuffer(napi_env env, napi_value arraybuffer) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, arraybuffer); v8::Local value = v8impl::V8LocalValueFromJsValue(arraybuffer); @@ -3475,8 +3423,7 @@ napi_status NAPI_CDECL napi_detach_arraybuffer(napi_env env, napi_status NAPI_CDECL napi_is_detached_arraybuffer(napi_env env, napi_value arraybuffer, bool* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, arraybuffer); CHECK_ARG(env, result); diff --git a/src/js_native_api_v8.h b/src/js_native_api_v8.h index db39686c91127e..bdb29490dd9c4e 100644 --- a/src/js_native_api_v8.h +++ b/src/js_native_api_v8.h @@ -212,6 +212,12 @@ inline napi_status napi_set_last_error(napi_env env, } \ } while (0) +#define CHECK_ENV_NOT_IN_GC(env) \ + do { \ + CHECK_ENV((env)); \ + (env)->CheckGCAccess(); \ + } while (0) + #define CHECK_ARG(env, arg) \ RETURN_STATUS_IF_FALSE((env), ((arg) != nullptr), napi_invalid_arg) @@ -227,8 +233,7 @@ inline napi_status napi_set_last_error(napi_env env, // NAPI_PREAMBLE is not wrapped in do..while: try_catch must have function scope #define NAPI_PREAMBLE(env) \ - CHECK_ENV((env)); \ - (env)->CheckGCAccess(); \ + CHECK_ENV_NOT_IN_GC((env)); \ RETURN_STATUS_IF_FALSE( \ (env), (env)->last_exception.IsEmpty(), napi_pending_exception); \ RETURN_STATUS_IF_FALSE((env), \ diff --git a/src/node_api.cc b/src/node_api.cc index 23e9fedf8b146e..1a6cdcb8b1de9a 100644 --- a/src/node_api.cc +++ b/src/node_api.cc @@ -917,8 +917,7 @@ napi_status NAPI_CDECL napi_async_init(napi_env env, napi_value async_resource, napi_value async_resource_name, napi_async_context* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, async_resource_name); CHECK_ARG(env, result); @@ -951,8 +950,7 @@ napi_status NAPI_CDECL napi_async_init(napi_env env, napi_status NAPI_CDECL napi_async_destroy(napi_env env, napi_async_context async_context) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, async_context); v8impl::AsyncContext* node_async_context = @@ -1101,8 +1099,7 @@ napi_status NAPI_CDECL napi_create_buffer_copy(napi_env env, napi_status NAPI_CDECL napi_is_buffer(napi_env env, napi_value value, bool* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); CHECK_ARG(env, result); @@ -1114,8 +1111,7 @@ napi_status NAPI_CDECL napi_get_buffer_info(napi_env env, napi_value value, void** data, size_t* length) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, value); v8::Local buffer = v8impl::V8LocalValueFromJsValue(value); @@ -1236,8 +1232,7 @@ napi_create_async_work(napi_env env, napi_async_complete_callback complete, void* data, napi_async_work* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, execute); CHECK_ARG(env, result); @@ -1267,8 +1262,7 @@ napi_create_async_work(napi_env env, napi_status NAPI_CDECL napi_delete_async_work(napi_env env, napi_async_work work) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, work); uvimpl::Work::Delete(reinterpret_cast(work)); @@ -1322,8 +1316,7 @@ napi_create_threadsafe_function(napi_env env, void* context, napi_threadsafe_function_call_js call_js_cb, napi_threadsafe_function* result) { - CHECK_ENV(env); - env->CheckGCAccess(); + CHECK_ENV_NOT_IN_GC(env); CHECK_ARG(env, async_resource_name); RETURN_STATUS_IF_FALSE(env, initial_thread_count > 0, napi_invalid_arg); CHECK_ARG(env, result); From c49483820a4f9251aad69849b5649abe0d4c2d90 Mon Sep 17 00:00:00 2001 From: Marco Ippolito Date: Mon, 13 Nov 2023 09:32:30 +0100 Subject: [PATCH 011/114] tools: change minimatch install strategy PR-URL: https://github.com/nodejs/node/pull/50476 Refs: https://github.com/nodejs/security-wg/issues/1037 Reviewed-By: James M Snell --- deps/minimatch/{src => }/README.md | 0 .../dist/cjs/assert-valid-pattern.d.ts | 0 .../dist/cjs/assert-valid-pattern.d.ts.map | 0 .../dist/cjs/assert-valid-pattern.js | 0 .../dist/cjs/assert-valid-pattern.js.map | 0 deps/minimatch/{src => }/dist/cjs/ast.d.ts | 0 .../minimatch/{src => }/dist/cjs/ast.d.ts.map | 0 deps/minimatch/{src => }/dist/cjs/ast.js | 0 deps/minimatch/{src => }/dist/cjs/ast.js.map | 0 .../{src => }/dist/cjs/brace-expressions.d.ts | 0 .../dist/cjs/brace-expressions.d.ts.map | 0 .../{src => }/dist/cjs/brace-expressions.js | 0 .../dist/cjs/brace-expressions.js.map | 0 deps/minimatch/{src => }/dist/cjs/escape.d.ts | 0 .../{src => }/dist/cjs/escape.d.ts.map | 0 deps/minimatch/{src => }/dist/cjs/escape.js | 0 .../{src => }/dist/cjs/escape.js.map | 0 deps/minimatch/{src => }/dist/cjs/index.d.ts | 0 .../{src => }/dist/cjs/index.d.ts.map | 0 deps/minimatch/{src => }/dist/cjs/index.js | 0 .../minimatch/{src => }/dist/cjs/index.js.map | 0 .../minimatch/{src => }/dist/cjs/package.json | 0 .../{src => }/dist/cjs/unescape.d.ts | 0 .../{src => }/dist/cjs/unescape.d.ts.map | 0 deps/minimatch/{src => }/dist/cjs/unescape.js | 0 .../{src => }/dist/cjs/unescape.js.map | 0 .../dist/mjs/assert-valid-pattern.d.ts | 0 .../dist/mjs/assert-valid-pattern.d.ts.map | 0 .../dist/mjs/assert-valid-pattern.js | 0 .../dist/mjs/assert-valid-pattern.js.map | 0 deps/minimatch/{src => }/dist/mjs/ast.d.ts | 0 .../minimatch/{src => }/dist/mjs/ast.d.ts.map | 0 deps/minimatch/{src => }/dist/mjs/ast.js | 0 deps/minimatch/{src => }/dist/mjs/ast.js.map | 0 .../{src => }/dist/mjs/brace-expressions.d.ts | 0 .../dist/mjs/brace-expressions.d.ts.map | 0 .../{src => }/dist/mjs/brace-expressions.js | 0 .../dist/mjs/brace-expressions.js.map | 0 deps/minimatch/{src => }/dist/mjs/escape.d.ts | 0 .../{src => }/dist/mjs/escape.d.ts.map | 0 deps/minimatch/{src => }/dist/mjs/escape.js | 0 .../{src => }/dist/mjs/escape.js.map | 0 deps/minimatch/{src => }/dist/mjs/index.d.ts | 0 .../{src => }/dist/mjs/index.d.ts.map | 0 deps/minimatch/{src => }/dist/mjs/index.js | 0 .../minimatch/{src => }/dist/mjs/index.js.map | 0 .../minimatch/{src => }/dist/mjs/package.json | 0 .../{src => }/dist/mjs/unescape.d.ts | 0 .../{src => }/dist/mjs/unescape.d.ts.map | 0 deps/minimatch/{src => }/dist/mjs/unescape.js | 0 .../{src => }/dist/mjs/unescape.js.map | 0 deps/minimatch/index.js | 546 +- deps/minimatch/package-lock.json | 6216 +++++++++++++++++ deps/minimatch/{src => }/package.json | 4 +- deps/minimatch/src/LICENSE | 15 - .../node_modules/balanced-match/LICENSE.md | 21 - .../src/node_modules/balanced-match/README.md | 97 - .../src/node_modules/balanced-match/index.js | 62 - .../node_modules/balanced-match/package.json | 48 - .../src/node_modules/brace-expansion/LICENSE | 21 - .../node_modules/brace-expansion/README.md | 135 - .../src/node_modules/brace-expansion/index.js | 203 - .../node_modules/brace-expansion/package.json | 46 - tools/dep_updaters/update-minimatch.sh | 67 +- 64 files changed, 6512 insertions(+), 969 deletions(-) rename deps/minimatch/{src => }/README.md (100%) rename deps/minimatch/{src => }/dist/cjs/assert-valid-pattern.d.ts (100%) rename deps/minimatch/{src => }/dist/cjs/assert-valid-pattern.d.ts.map (100%) rename deps/minimatch/{src => }/dist/cjs/assert-valid-pattern.js (100%) rename deps/minimatch/{src => }/dist/cjs/assert-valid-pattern.js.map (100%) rename deps/minimatch/{src => }/dist/cjs/ast.d.ts (100%) rename deps/minimatch/{src => }/dist/cjs/ast.d.ts.map (100%) rename deps/minimatch/{src => }/dist/cjs/ast.js (100%) rename deps/minimatch/{src => }/dist/cjs/ast.js.map (100%) rename deps/minimatch/{src => }/dist/cjs/brace-expressions.d.ts (100%) rename deps/minimatch/{src => }/dist/cjs/brace-expressions.d.ts.map (100%) rename deps/minimatch/{src => }/dist/cjs/brace-expressions.js (100%) rename deps/minimatch/{src => }/dist/cjs/brace-expressions.js.map (100%) rename deps/minimatch/{src => }/dist/cjs/escape.d.ts (100%) rename deps/minimatch/{src => }/dist/cjs/escape.d.ts.map (100%) rename deps/minimatch/{src => }/dist/cjs/escape.js (100%) rename deps/minimatch/{src => }/dist/cjs/escape.js.map (100%) rename deps/minimatch/{src => }/dist/cjs/index.d.ts (100%) rename deps/minimatch/{src => }/dist/cjs/index.d.ts.map (100%) rename deps/minimatch/{src => }/dist/cjs/index.js (100%) rename deps/minimatch/{src => }/dist/cjs/index.js.map (100%) rename deps/minimatch/{src => }/dist/cjs/package.json (100%) rename deps/minimatch/{src => }/dist/cjs/unescape.d.ts (100%) rename deps/minimatch/{src => }/dist/cjs/unescape.d.ts.map (100%) rename deps/minimatch/{src => }/dist/cjs/unescape.js (100%) rename deps/minimatch/{src => }/dist/cjs/unescape.js.map (100%) rename deps/minimatch/{src => }/dist/mjs/assert-valid-pattern.d.ts (100%) rename deps/minimatch/{src => }/dist/mjs/assert-valid-pattern.d.ts.map (100%) rename deps/minimatch/{src => }/dist/mjs/assert-valid-pattern.js (100%) rename deps/minimatch/{src => }/dist/mjs/assert-valid-pattern.js.map (100%) rename deps/minimatch/{src => }/dist/mjs/ast.d.ts (100%) rename deps/minimatch/{src => }/dist/mjs/ast.d.ts.map (100%) rename deps/minimatch/{src => }/dist/mjs/ast.js (100%) rename deps/minimatch/{src => }/dist/mjs/ast.js.map (100%) rename deps/minimatch/{src => }/dist/mjs/brace-expressions.d.ts (100%) rename deps/minimatch/{src => }/dist/mjs/brace-expressions.d.ts.map (100%) rename deps/minimatch/{src => }/dist/mjs/brace-expressions.js (100%) rename deps/minimatch/{src => }/dist/mjs/brace-expressions.js.map (100%) rename deps/minimatch/{src => }/dist/mjs/escape.d.ts (100%) rename deps/minimatch/{src => }/dist/mjs/escape.d.ts.map (100%) rename deps/minimatch/{src => }/dist/mjs/escape.js (100%) rename deps/minimatch/{src => }/dist/mjs/escape.js.map (100%) rename deps/minimatch/{src => }/dist/mjs/index.d.ts (100%) rename deps/minimatch/{src => }/dist/mjs/index.d.ts.map (100%) rename deps/minimatch/{src => }/dist/mjs/index.js (100%) rename deps/minimatch/{src => }/dist/mjs/index.js.map (100%) rename deps/minimatch/{src => }/dist/mjs/package.json (100%) rename deps/minimatch/{src => }/dist/mjs/unescape.d.ts (100%) rename deps/minimatch/{src => }/dist/mjs/unescape.d.ts.map (100%) rename deps/minimatch/{src => }/dist/mjs/unescape.js (100%) rename deps/minimatch/{src => }/dist/mjs/unescape.js.map (100%) create mode 100644 deps/minimatch/package-lock.json rename deps/minimatch/{src => }/package.json (94%) delete mode 100644 deps/minimatch/src/LICENSE delete mode 100644 deps/minimatch/src/node_modules/balanced-match/LICENSE.md delete mode 100644 deps/minimatch/src/node_modules/balanced-match/README.md delete mode 100644 deps/minimatch/src/node_modules/balanced-match/index.js delete mode 100644 deps/minimatch/src/node_modules/balanced-match/package.json delete mode 100644 deps/minimatch/src/node_modules/brace-expansion/LICENSE delete mode 100644 deps/minimatch/src/node_modules/brace-expansion/README.md delete mode 100644 deps/minimatch/src/node_modules/brace-expansion/index.js delete mode 100644 deps/minimatch/src/node_modules/brace-expansion/package.json diff --git a/deps/minimatch/src/README.md b/deps/minimatch/README.md similarity index 100% rename from deps/minimatch/src/README.md rename to deps/minimatch/README.md diff --git a/deps/minimatch/src/dist/cjs/assert-valid-pattern.d.ts b/deps/minimatch/dist/cjs/assert-valid-pattern.d.ts similarity index 100% rename from deps/minimatch/src/dist/cjs/assert-valid-pattern.d.ts rename to deps/minimatch/dist/cjs/assert-valid-pattern.d.ts diff --git a/deps/minimatch/src/dist/cjs/assert-valid-pattern.d.ts.map b/deps/minimatch/dist/cjs/assert-valid-pattern.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/cjs/assert-valid-pattern.d.ts.map rename to deps/minimatch/dist/cjs/assert-valid-pattern.d.ts.map diff --git a/deps/minimatch/src/dist/cjs/assert-valid-pattern.js b/deps/minimatch/dist/cjs/assert-valid-pattern.js similarity index 100% rename from deps/minimatch/src/dist/cjs/assert-valid-pattern.js rename to deps/minimatch/dist/cjs/assert-valid-pattern.js diff --git a/deps/minimatch/src/dist/cjs/assert-valid-pattern.js.map b/deps/minimatch/dist/cjs/assert-valid-pattern.js.map similarity index 100% rename from deps/minimatch/src/dist/cjs/assert-valid-pattern.js.map rename to deps/minimatch/dist/cjs/assert-valid-pattern.js.map diff --git a/deps/minimatch/src/dist/cjs/ast.d.ts b/deps/minimatch/dist/cjs/ast.d.ts similarity index 100% rename from deps/minimatch/src/dist/cjs/ast.d.ts rename to deps/minimatch/dist/cjs/ast.d.ts diff --git a/deps/minimatch/src/dist/cjs/ast.d.ts.map b/deps/minimatch/dist/cjs/ast.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/cjs/ast.d.ts.map rename to deps/minimatch/dist/cjs/ast.d.ts.map diff --git a/deps/minimatch/src/dist/cjs/ast.js b/deps/minimatch/dist/cjs/ast.js similarity index 100% rename from deps/minimatch/src/dist/cjs/ast.js rename to deps/minimatch/dist/cjs/ast.js diff --git a/deps/minimatch/src/dist/cjs/ast.js.map b/deps/minimatch/dist/cjs/ast.js.map similarity index 100% rename from deps/minimatch/src/dist/cjs/ast.js.map rename to deps/minimatch/dist/cjs/ast.js.map diff --git a/deps/minimatch/src/dist/cjs/brace-expressions.d.ts b/deps/minimatch/dist/cjs/brace-expressions.d.ts similarity index 100% rename from deps/minimatch/src/dist/cjs/brace-expressions.d.ts rename to deps/minimatch/dist/cjs/brace-expressions.d.ts diff --git a/deps/minimatch/src/dist/cjs/brace-expressions.d.ts.map b/deps/minimatch/dist/cjs/brace-expressions.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/cjs/brace-expressions.d.ts.map rename to deps/minimatch/dist/cjs/brace-expressions.d.ts.map diff --git a/deps/minimatch/src/dist/cjs/brace-expressions.js b/deps/minimatch/dist/cjs/brace-expressions.js similarity index 100% rename from deps/minimatch/src/dist/cjs/brace-expressions.js rename to deps/minimatch/dist/cjs/brace-expressions.js diff --git a/deps/minimatch/src/dist/cjs/brace-expressions.js.map b/deps/minimatch/dist/cjs/brace-expressions.js.map similarity index 100% rename from deps/minimatch/src/dist/cjs/brace-expressions.js.map rename to deps/minimatch/dist/cjs/brace-expressions.js.map diff --git a/deps/minimatch/src/dist/cjs/escape.d.ts b/deps/minimatch/dist/cjs/escape.d.ts similarity index 100% rename from deps/minimatch/src/dist/cjs/escape.d.ts rename to deps/minimatch/dist/cjs/escape.d.ts diff --git a/deps/minimatch/src/dist/cjs/escape.d.ts.map b/deps/minimatch/dist/cjs/escape.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/cjs/escape.d.ts.map rename to deps/minimatch/dist/cjs/escape.d.ts.map diff --git a/deps/minimatch/src/dist/cjs/escape.js b/deps/minimatch/dist/cjs/escape.js similarity index 100% rename from deps/minimatch/src/dist/cjs/escape.js rename to deps/minimatch/dist/cjs/escape.js diff --git a/deps/minimatch/src/dist/cjs/escape.js.map b/deps/minimatch/dist/cjs/escape.js.map similarity index 100% rename from deps/minimatch/src/dist/cjs/escape.js.map rename to deps/minimatch/dist/cjs/escape.js.map diff --git a/deps/minimatch/src/dist/cjs/index.d.ts b/deps/minimatch/dist/cjs/index.d.ts similarity index 100% rename from deps/minimatch/src/dist/cjs/index.d.ts rename to deps/minimatch/dist/cjs/index.d.ts diff --git a/deps/minimatch/src/dist/cjs/index.d.ts.map b/deps/minimatch/dist/cjs/index.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/cjs/index.d.ts.map rename to deps/minimatch/dist/cjs/index.d.ts.map diff --git a/deps/minimatch/src/dist/cjs/index.js b/deps/minimatch/dist/cjs/index.js similarity index 100% rename from deps/minimatch/src/dist/cjs/index.js rename to deps/minimatch/dist/cjs/index.js diff --git a/deps/minimatch/src/dist/cjs/index.js.map b/deps/minimatch/dist/cjs/index.js.map similarity index 100% rename from deps/minimatch/src/dist/cjs/index.js.map rename to deps/minimatch/dist/cjs/index.js.map diff --git a/deps/minimatch/src/dist/cjs/package.json b/deps/minimatch/dist/cjs/package.json similarity index 100% rename from deps/minimatch/src/dist/cjs/package.json rename to deps/minimatch/dist/cjs/package.json diff --git a/deps/minimatch/src/dist/cjs/unescape.d.ts b/deps/minimatch/dist/cjs/unescape.d.ts similarity index 100% rename from deps/minimatch/src/dist/cjs/unescape.d.ts rename to deps/minimatch/dist/cjs/unescape.d.ts diff --git a/deps/minimatch/src/dist/cjs/unescape.d.ts.map b/deps/minimatch/dist/cjs/unescape.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/cjs/unescape.d.ts.map rename to deps/minimatch/dist/cjs/unescape.d.ts.map diff --git a/deps/minimatch/src/dist/cjs/unescape.js b/deps/minimatch/dist/cjs/unescape.js similarity index 100% rename from deps/minimatch/src/dist/cjs/unescape.js rename to deps/minimatch/dist/cjs/unescape.js diff --git a/deps/minimatch/src/dist/cjs/unescape.js.map b/deps/minimatch/dist/cjs/unescape.js.map similarity index 100% rename from deps/minimatch/src/dist/cjs/unescape.js.map rename to deps/minimatch/dist/cjs/unescape.js.map diff --git a/deps/minimatch/src/dist/mjs/assert-valid-pattern.d.ts b/deps/minimatch/dist/mjs/assert-valid-pattern.d.ts similarity index 100% rename from deps/minimatch/src/dist/mjs/assert-valid-pattern.d.ts rename to deps/minimatch/dist/mjs/assert-valid-pattern.d.ts diff --git a/deps/minimatch/src/dist/mjs/assert-valid-pattern.d.ts.map b/deps/minimatch/dist/mjs/assert-valid-pattern.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/mjs/assert-valid-pattern.d.ts.map rename to deps/minimatch/dist/mjs/assert-valid-pattern.d.ts.map diff --git a/deps/minimatch/src/dist/mjs/assert-valid-pattern.js b/deps/minimatch/dist/mjs/assert-valid-pattern.js similarity index 100% rename from deps/minimatch/src/dist/mjs/assert-valid-pattern.js rename to deps/minimatch/dist/mjs/assert-valid-pattern.js diff --git a/deps/minimatch/src/dist/mjs/assert-valid-pattern.js.map b/deps/minimatch/dist/mjs/assert-valid-pattern.js.map similarity index 100% rename from deps/minimatch/src/dist/mjs/assert-valid-pattern.js.map rename to deps/minimatch/dist/mjs/assert-valid-pattern.js.map diff --git a/deps/minimatch/src/dist/mjs/ast.d.ts b/deps/minimatch/dist/mjs/ast.d.ts similarity index 100% rename from deps/minimatch/src/dist/mjs/ast.d.ts rename to deps/minimatch/dist/mjs/ast.d.ts diff --git a/deps/minimatch/src/dist/mjs/ast.d.ts.map b/deps/minimatch/dist/mjs/ast.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/mjs/ast.d.ts.map rename to deps/minimatch/dist/mjs/ast.d.ts.map diff --git a/deps/minimatch/src/dist/mjs/ast.js b/deps/minimatch/dist/mjs/ast.js similarity index 100% rename from deps/minimatch/src/dist/mjs/ast.js rename to deps/minimatch/dist/mjs/ast.js diff --git a/deps/minimatch/src/dist/mjs/ast.js.map b/deps/minimatch/dist/mjs/ast.js.map similarity index 100% rename from deps/minimatch/src/dist/mjs/ast.js.map rename to deps/minimatch/dist/mjs/ast.js.map diff --git a/deps/minimatch/src/dist/mjs/brace-expressions.d.ts b/deps/minimatch/dist/mjs/brace-expressions.d.ts similarity index 100% rename from deps/minimatch/src/dist/mjs/brace-expressions.d.ts rename to deps/minimatch/dist/mjs/brace-expressions.d.ts diff --git a/deps/minimatch/src/dist/mjs/brace-expressions.d.ts.map b/deps/minimatch/dist/mjs/brace-expressions.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/mjs/brace-expressions.d.ts.map rename to deps/minimatch/dist/mjs/brace-expressions.d.ts.map diff --git a/deps/minimatch/src/dist/mjs/brace-expressions.js b/deps/minimatch/dist/mjs/brace-expressions.js similarity index 100% rename from deps/minimatch/src/dist/mjs/brace-expressions.js rename to deps/minimatch/dist/mjs/brace-expressions.js diff --git a/deps/minimatch/src/dist/mjs/brace-expressions.js.map b/deps/minimatch/dist/mjs/brace-expressions.js.map similarity index 100% rename from deps/minimatch/src/dist/mjs/brace-expressions.js.map rename to deps/minimatch/dist/mjs/brace-expressions.js.map diff --git a/deps/minimatch/src/dist/mjs/escape.d.ts b/deps/minimatch/dist/mjs/escape.d.ts similarity index 100% rename from deps/minimatch/src/dist/mjs/escape.d.ts rename to deps/minimatch/dist/mjs/escape.d.ts diff --git a/deps/minimatch/src/dist/mjs/escape.d.ts.map b/deps/minimatch/dist/mjs/escape.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/mjs/escape.d.ts.map rename to deps/minimatch/dist/mjs/escape.d.ts.map diff --git a/deps/minimatch/src/dist/mjs/escape.js b/deps/minimatch/dist/mjs/escape.js similarity index 100% rename from deps/minimatch/src/dist/mjs/escape.js rename to deps/minimatch/dist/mjs/escape.js diff --git a/deps/minimatch/src/dist/mjs/escape.js.map b/deps/minimatch/dist/mjs/escape.js.map similarity index 100% rename from deps/minimatch/src/dist/mjs/escape.js.map rename to deps/minimatch/dist/mjs/escape.js.map diff --git a/deps/minimatch/src/dist/mjs/index.d.ts b/deps/minimatch/dist/mjs/index.d.ts similarity index 100% rename from deps/minimatch/src/dist/mjs/index.d.ts rename to deps/minimatch/dist/mjs/index.d.ts diff --git a/deps/minimatch/src/dist/mjs/index.d.ts.map b/deps/minimatch/dist/mjs/index.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/mjs/index.d.ts.map rename to deps/minimatch/dist/mjs/index.d.ts.map diff --git a/deps/minimatch/src/dist/mjs/index.js b/deps/minimatch/dist/mjs/index.js similarity index 100% rename from deps/minimatch/src/dist/mjs/index.js rename to deps/minimatch/dist/mjs/index.js diff --git a/deps/minimatch/src/dist/mjs/index.js.map b/deps/minimatch/dist/mjs/index.js.map similarity index 100% rename from deps/minimatch/src/dist/mjs/index.js.map rename to deps/minimatch/dist/mjs/index.js.map diff --git a/deps/minimatch/src/dist/mjs/package.json b/deps/minimatch/dist/mjs/package.json similarity index 100% rename from deps/minimatch/src/dist/mjs/package.json rename to deps/minimatch/dist/mjs/package.json diff --git a/deps/minimatch/src/dist/mjs/unescape.d.ts b/deps/minimatch/dist/mjs/unescape.d.ts similarity index 100% rename from deps/minimatch/src/dist/mjs/unescape.d.ts rename to deps/minimatch/dist/mjs/unescape.d.ts diff --git a/deps/minimatch/src/dist/mjs/unescape.d.ts.map b/deps/minimatch/dist/mjs/unescape.d.ts.map similarity index 100% rename from deps/minimatch/src/dist/mjs/unescape.d.ts.map rename to deps/minimatch/dist/mjs/unescape.d.ts.map diff --git a/deps/minimatch/src/dist/mjs/unescape.js b/deps/minimatch/dist/mjs/unescape.js similarity index 100% rename from deps/minimatch/src/dist/mjs/unescape.js rename to deps/minimatch/dist/mjs/unescape.js diff --git a/deps/minimatch/src/dist/mjs/unescape.js.map b/deps/minimatch/dist/mjs/unescape.js.map similarity index 100% rename from deps/minimatch/src/dist/mjs/unescape.js.map rename to deps/minimatch/dist/mjs/unescape.js.map diff --git a/deps/minimatch/index.js b/deps/minimatch/index.js index a333cd822011e9..9db4f793d03d7b 100644 --- a/deps/minimatch/index.js +++ b/deps/minimatch/index.js @@ -1,36 +1,8 @@ "use strict"; -var __defProp = Object.defineProperty; var __getOwnPropNames = Object.getOwnPropertyNames; -var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __commonJS = (cb, mod) => function __require() { return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; }; -var __publicField = (obj, key, value) => { - __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); - return value; -}; -var __accessCheck = (obj, member, msg) => { - if (!member.has(obj)) - throw TypeError("Cannot " + msg); -}; -var __privateGet = (obj, member, getter) => { - __accessCheck(obj, member, "read from private field"); - return getter ? getter.call(obj) : member.get(obj); -}; -var __privateAdd = (obj, member, value) => { - if (member.has(obj)) - throw TypeError("Cannot add the same private member more than once"); - member instanceof WeakSet ? member.add(obj) : member.set(obj, value); -}; -var __privateSet = (obj, member, value, setter) => { - __accessCheck(obj, member, "write to private field"); - setter ? setter.call(obj, value) : member.set(obj, value); - return value; -}; -var __privateMethod = (obj, member, method) => { - __accessCheck(obj, member, "access private method"); - return method; -}; // node_modules/balanced-match/index.js var require_balanced_match = __commonJS({ @@ -412,86 +384,111 @@ var require_ast = __commonJS({ var qmark2 = "[^/]"; var star2 = qmark2 + "*?"; var starNoEmpty = qmark2 + "+?"; - var _root, _hasMagic, _uflag, _parts, _parent, _parentIndex, _negs, _filledNegs, _options, _toString, _emptyExt, _fillNegs, fillNegs_fn, _parseAST, parseAST_fn, _partsToRegExp, partsToRegExp_fn, _parseGlob, parseGlob_fn; - var _AST = class { + var AST = class _AST { + type; + #root; + #hasMagic; + #uflag = false; + #parts = []; + #parent; + #parentIndex; + #negs; + #filledNegs = false; + #options; + #toString; + // set to true if it's an extglob with no children + // (which really means one child of '') + #emptyExt = false; constructor(type, parent, options = {}) { - __privateAdd(this, _fillNegs); - __privateAdd(this, _partsToRegExp); - __publicField(this, "type"); - __privateAdd(this, _root, void 0); - __privateAdd(this, _hasMagic, void 0); - __privateAdd(this, _uflag, false); - __privateAdd(this, _parts, []); - __privateAdd(this, _parent, void 0); - __privateAdd(this, _parentIndex, void 0); - __privateAdd(this, _negs, void 0); - __privateAdd(this, _filledNegs, false); - __privateAdd(this, _options, void 0); - __privateAdd(this, _toString, void 0); - // set to true if it's an extglob with no children - // (which really means one child of '') - __privateAdd(this, _emptyExt, false); this.type = type; if (type) - __privateSet(this, _hasMagic, true); - __privateSet(this, _parent, parent); - __privateSet(this, _root, __privateGet(this, _parent) ? __privateGet(__privateGet(this, _parent), _root) : this); - __privateSet(this, _options, __privateGet(this, _root) === this ? options : __privateGet(__privateGet(this, _root), _options)); - __privateSet(this, _negs, __privateGet(this, _root) === this ? [] : __privateGet(__privateGet(this, _root), _negs)); - if (type === "!" && !__privateGet(__privateGet(this, _root), _filledNegs)) - __privateGet(this, _negs).push(this); - __privateSet(this, _parentIndex, __privateGet(this, _parent) ? __privateGet(__privateGet(this, _parent), _parts).length : 0); + this.#hasMagic = true; + this.#parent = parent; + this.#root = this.#parent ? this.#parent.#root : this; + this.#options = this.#root === this ? options : this.#root.#options; + this.#negs = this.#root === this ? [] : this.#root.#negs; + if (type === "!" && !this.#root.#filledNegs) + this.#negs.push(this); + this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0; } get hasMagic() { - if (__privateGet(this, _hasMagic) !== void 0) - return __privateGet(this, _hasMagic); - for (const p of __privateGet(this, _parts)) { + if (this.#hasMagic !== void 0) + return this.#hasMagic; + for (const p of this.#parts) { if (typeof p === "string") continue; if (p.type || p.hasMagic) - return __privateSet(this, _hasMagic, true); + return this.#hasMagic = true; } - return __privateGet(this, _hasMagic); + return this.#hasMagic; } // reconstructs the pattern toString() { - if (__privateGet(this, _toString) !== void 0) - return __privateGet(this, _toString); + if (this.#toString !== void 0) + return this.#toString; if (!this.type) { - return __privateSet(this, _toString, __privateGet(this, _parts).map((p) => String(p)).join("")); + return this.#toString = this.#parts.map((p) => String(p)).join(""); } else { - return __privateSet(this, _toString, this.type + "(" + __privateGet(this, _parts).map((p) => String(p)).join("|") + ")"); + return this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")"; } } + #fillNegs() { + if (this !== this.#root) + throw new Error("should only call on root"); + if (this.#filledNegs) + return this; + this.toString(); + this.#filledNegs = true; + let n; + while (n = this.#negs.pop()) { + if (n.type !== "!") + continue; + let p = n; + let pp = p.#parent; + while (pp) { + for (let i = p.#parentIndex + 1; !pp.type && i < pp.#parts.length; i++) { + for (const part of n.#parts) { + if (typeof part === "string") { + throw new Error("string part in extglob AST??"); + } + part.copyIn(pp.#parts[i]); + } + } + p = pp; + pp = p.#parent; + } + } + return this; + } push(...parts) { for (const p of parts) { if (p === "") continue; - if (typeof p !== "string" && !(p instanceof _AST && __privateGet(p, _parent) === this)) { + if (typeof p !== "string" && !(p instanceof _AST && p.#parent === this)) { throw new Error("invalid part: " + p); } - __privateGet(this, _parts).push(p); + this.#parts.push(p); } } toJSON() { - const ret = this.type === null ? __privateGet(this, _parts).slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...__privateGet(this, _parts).map((p) => p.toJSON())]; + const ret = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())]; if (this.isStart() && !this.type) ret.unshift([]); - if (this.isEnd() && (this === __privateGet(this, _root) || __privateGet(__privateGet(this, _root), _filledNegs) && __privateGet(this, _parent)?.type === "!")) { + if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) { ret.push({}); } return ret; } isStart() { - if (__privateGet(this, _root) === this) + if (this.#root === this) return true; - if (!__privateGet(this, _parent)?.isStart()) + if (!this.#parent?.isStart()) return false; - if (__privateGet(this, _parentIndex) === 0) + if (this.#parentIndex === 0) return true; - const p = __privateGet(this, _parent); - for (let i = 0; i < __privateGet(this, _parentIndex); i++) { - const pp = __privateGet(p, _parts)[i]; + const p = this.#parent; + for (let i = 0; i < this.#parentIndex; i++) { + const pp = p.#parts[i]; if (!(pp instanceof _AST && pp.type === "!")) { return false; } @@ -499,16 +496,16 @@ var require_ast = __commonJS({ return true; } isEnd() { - if (__privateGet(this, _root) === this) + if (this.#root === this) return true; - if (__privateGet(this, _parent)?.type === "!") + if (this.#parent?.type === "!") return true; - if (!__privateGet(this, _parent)?.isEnd()) + if (!this.#parent?.isEnd()) return false; if (!this.type) - return __privateGet(this, _parent)?.isEnd(); - const pl = __privateGet(this, _parent) ? __privateGet(__privateGet(this, _parent), _parts).length : 0; - return __privateGet(this, _parentIndex) === pl - 1; + return this.#parent?.isEnd(); + const pl = this.#parent ? this.#parent.#parts.length : 0; + return this.#parentIndex === pl - 1; } copyIn(part) { if (typeof part === "string") @@ -518,29 +515,132 @@ var require_ast = __commonJS({ } clone(parent) { const c = new _AST(this.type, parent); - for (const p of __privateGet(this, _parts)) { + for (const p of this.#parts) { c.copyIn(p); } return c; } + static #parseAST(str, ast, pos, opt) { + let escaping = false; + let inBrace = false; + let braceStart = -1; + let braceNeg = false; + if (ast.type === null) { + let i2 = pos; + let acc2 = ""; + while (i2 < str.length) { + const c = str.charAt(i2++); + if (escaping || c === "\\") { + escaping = !escaping; + acc2 += c; + continue; + } + if (inBrace) { + if (i2 === braceStart + 1) { + if (c === "^" || c === "!") { + braceNeg = true; + } + } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) { + inBrace = false; + } + acc2 += c; + continue; + } else if (c === "[") { + inBrace = true; + braceStart = i2; + braceNeg = false; + acc2 += c; + continue; + } + if (!opt.noext && isExtglobType(c) && str.charAt(i2) === "(") { + ast.push(acc2); + acc2 = ""; + const ext2 = new _AST(c, ast); + i2 = _AST.#parseAST(str, ext2, i2, opt); + ast.push(ext2); + continue; + } + acc2 += c; + } + ast.push(acc2); + return i2; + } + let i = pos + 1; + let part = new _AST(null, ast); + const parts = []; + let acc = ""; + while (i < str.length) { + const c = str.charAt(i++); + if (escaping || c === "\\") { + escaping = !escaping; + acc += c; + continue; + } + if (inBrace) { + if (i === braceStart + 1) { + if (c === "^" || c === "!") { + braceNeg = true; + } + } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) { + inBrace = false; + } + acc += c; + continue; + } else if (c === "[") { + inBrace = true; + braceStart = i; + braceNeg = false; + acc += c; + continue; + } + if (isExtglobType(c) && str.charAt(i) === "(") { + part.push(acc); + acc = ""; + const ext2 = new _AST(c, part); + part.push(ext2); + i = _AST.#parseAST(str, ext2, i, opt); + continue; + } + if (c === "|") { + part.push(acc); + acc = ""; + parts.push(part); + part = new _AST(null, ast); + continue; + } + if (c === ")") { + if (acc === "" && ast.#parts.length === 0) { + ast.#emptyExt = true; + } + part.push(acc); + acc = ""; + ast.push(...parts, part); + return i; + } + acc += c; + } + ast.type = null; + ast.#hasMagic = void 0; + ast.#parts = [str.substring(pos - 1)]; + return i; + } static fromGlob(pattern, options = {}) { - var _a; const ast = new _AST(null, void 0, options); - __privateMethod(_a = _AST, _parseAST, parseAST_fn).call(_a, pattern, ast, 0, options); + _AST.#parseAST(pattern, ast, 0, options); return ast; } // returns the regular expression if there's magic, or the unescaped // string if not. toMMPattern() { - if (this !== __privateGet(this, _root)) - return __privateGet(this, _root).toMMPattern(); + if (this !== this.#root) + return this.#root.toMMPattern(); const glob = this.toString(); const [re, body, hasMagic, uflag] = this.toRegExpSource(); - const anyMagic = hasMagic || __privateGet(this, _hasMagic) || __privateGet(this, _options).nocase && !__privateGet(this, _options).nocaseMagicOnly && glob.toUpperCase() !== glob.toLowerCase(); + const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob.toUpperCase() !== glob.toLowerCase(); if (!anyMagic) { return body; } - const flags = (__privateGet(this, _options).nocase ? "i" : "") + (uflag ? "u" : ""); + const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : ""); return Object.assign(new RegExp(`^${re}$`, flags), { _src: re, _glob: glob @@ -616,22 +716,21 @@ var require_ast = __commonJS({ // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root // or start or whatever) and prepend ^ or / at the Regexp construction. toRegExpSource(allowDot) { - const dot = allowDot ?? !!__privateGet(this, _options).dot; - if (__privateGet(this, _root) === this) - __privateMethod(this, _fillNegs, fillNegs_fn).call(this); + const dot = allowDot ?? !!this.#options.dot; + if (this.#root === this) + this.#fillNegs(); if (!this.type) { const noEmpty = this.isStart() && this.isEnd(); - const src = __privateGet(this, _parts).map((p) => { - var _a; - const [re, _, hasMagic, uflag] = typeof p === "string" ? __privateMethod(_a = _AST, _parseGlob, parseGlob_fn).call(_a, p, __privateGet(this, _hasMagic), noEmpty) : p.toRegExpSource(allowDot); - __privateSet(this, _hasMagic, __privateGet(this, _hasMagic) || hasMagic); - __privateSet(this, _uflag, __privateGet(this, _uflag) || uflag); + const src = this.#parts.map((p) => { + const [re, _, hasMagic, uflag] = typeof p === "string" ? _AST.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot); + this.#hasMagic = this.#hasMagic || hasMagic; + this.#uflag = this.#uflag || uflag; return re; }).join(""); let start2 = ""; if (this.isStart()) { - if (typeof __privateGet(this, _parts)[0] === "string") { - const dotTravAllowed = __privateGet(this, _parts).length === 1 && justDots.has(__privateGet(this, _parts)[0]); + if (typeof this.#parts[0] === "string") { + const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]); if (!dotTravAllowed) { const aps = addPatternStart; const needNoTrav = ( @@ -646,28 +745,28 @@ var require_ast = __commonJS({ } } let end = ""; - if (this.isEnd() && __privateGet(__privateGet(this, _root), _filledNegs) && __privateGet(this, _parent)?.type === "!") { + if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") { end = "(?:$|\\/)"; } const final2 = start2 + src + end; return [ final2, (0, unescape_js_12.unescape)(src), - __privateSet(this, _hasMagic, !!__privateGet(this, _hasMagic)), - __privateGet(this, _uflag) + this.#hasMagic = !!this.#hasMagic, + this.#uflag ]; } const repeated = this.type === "*" || this.type === "+"; const start = this.type === "!" ? "(?:(?!(?:" : "(?:"; - let body = __privateMethod(this, _partsToRegExp, partsToRegExp_fn).call(this, dot); + let body = this.#partsToRegExp(dot); if (this.isStart() && this.isEnd() && !body && this.type !== "!") { const s = this.toString(); - __privateSet(this, _parts, [s]); + this.#parts = [s]; this.type = null; - __privateSet(this, _hasMagic, void 0); + this.#hasMagic = void 0; return [s, (0, unescape_js_12.unescape)(this.toString()), false, false]; } - let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : __privateMethod(this, _partsToRegExp, partsToRegExp_fn).call(this, true); + let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true); if (bodyDotAllowed === body) { bodyDotAllowed = ""; } @@ -675,7 +774,7 @@ var require_ast = __commonJS({ body = `(?:${body})(?:${bodyDotAllowed})*?`; } let final = ""; - if (this.type === "!" && __privateGet(this, _emptyExt)) { + if (this.type === "!" && this.#emptyExt) { final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty; } else { const close = this.type === "!" ? ( @@ -687,218 +786,67 @@ var require_ast = __commonJS({ return [ final, (0, unescape_js_12.unescape)(body), - __privateSet(this, _hasMagic, !!__privateGet(this, _hasMagic)), - __privateGet(this, _uflag) + this.#hasMagic = !!this.#hasMagic, + this.#uflag ]; } - }; - var AST = _AST; - _root = new WeakMap(); - _hasMagic = new WeakMap(); - _uflag = new WeakMap(); - _parts = new WeakMap(); - _parent = new WeakMap(); - _parentIndex = new WeakMap(); - _negs = new WeakMap(); - _filledNegs = new WeakMap(); - _options = new WeakMap(); - _toString = new WeakMap(); - _emptyExt = new WeakMap(); - _fillNegs = new WeakSet(); - fillNegs_fn = function() { - if (this !== __privateGet(this, _root)) - throw new Error("should only call on root"); - if (__privateGet(this, _filledNegs)) - return this; - this.toString(); - __privateSet(this, _filledNegs, true); - let n; - while (n = __privateGet(this, _negs).pop()) { - if (n.type !== "!") - continue; - let p = n; - let pp = __privateGet(p, _parent); - while (pp) { - for (let i = __privateGet(p, _parentIndex) + 1; !pp.type && i < __privateGet(pp, _parts).length; i++) { - for (const part of __privateGet(n, _parts)) { - if (typeof part === "string") { - throw new Error("string part in extglob AST??"); - } - part.copyIn(__privateGet(pp, _parts)[i]); - } + #partsToRegExp(dot) { + return this.#parts.map((p) => { + if (typeof p === "string") { + throw new Error("string type in extglob ast??"); } - p = pp; - pp = __privateGet(p, _parent); - } + const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot); + this.#uflag = this.#uflag || uflag; + return re; + }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|"); } - return this; - }; - _parseAST = new WeakSet(); - parseAST_fn = function(str, ast, pos, opt) { - var _a, _b; - let escaping = false; - let inBrace = false; - let braceStart = -1; - let braceNeg = false; - if (ast.type === null) { - let i2 = pos; - let acc2 = ""; - while (i2 < str.length) { - const c = str.charAt(i2++); - if (escaping || c === "\\") { - escaping = !escaping; - acc2 += c; + static #parseGlob(glob, hasMagic, noEmpty = false) { + let escaping = false; + let re = ""; + let uflag = false; + for (let i = 0; i < glob.length; i++) { + const c = glob.charAt(i); + if (escaping) { + escaping = false; + re += (reSpecials.has(c) ? "\\" : "") + c; continue; } - if (inBrace) { - if (i2 === braceStart + 1) { - if (c === "^" || c === "!") { - braceNeg = true; - } - } else if (c === "]" && !(i2 === braceStart + 2 && braceNeg)) { - inBrace = false; + if (c === "\\") { + if (i === glob.length - 1) { + re += "\\\\"; + } else { + escaping = true; } - acc2 += c; - continue; - } else if (c === "[") { - inBrace = true; - braceStart = i2; - braceNeg = false; - acc2 += c; - continue; - } - if (!opt.noext && isExtglobType(c) && str.charAt(i2) === "(") { - ast.push(acc2); - acc2 = ""; - const ext2 = new _AST(c, ast); - i2 = __privateMethod(_a = _AST, _parseAST, parseAST_fn).call(_a, str, ext2, i2, opt); - ast.push(ext2); continue; } - acc2 += c; - } - ast.push(acc2); - return i2; - } - let i = pos + 1; - let part = new _AST(null, ast); - const parts = []; - let acc = ""; - while (i < str.length) { - const c = str.charAt(i++); - if (escaping || c === "\\") { - escaping = !escaping; - acc += c; - continue; - } - if (inBrace) { - if (i === braceStart + 1) { - if (c === "^" || c === "!") { - braceNeg = true; + if (c === "[") { + const [src, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob, i); + if (consumed) { + re += src; + uflag = uflag || needUflag; + i += consumed - 1; + hasMagic = hasMagic || magic; + continue; } - } else if (c === "]" && !(i === braceStart + 2 && braceNeg)) { - inBrace = false; } - acc += c; - continue; - } else if (c === "[") { - inBrace = true; - braceStart = i; - braceNeg = false; - acc += c; - continue; - } - if (isExtglobType(c) && str.charAt(i) === "(") { - part.push(acc); - acc = ""; - const ext2 = new _AST(c, part); - part.push(ext2); - i = __privateMethod(_b = _AST, _parseAST, parseAST_fn).call(_b, str, ext2, i, opt); - continue; - } - if (c === "|") { - part.push(acc); - acc = ""; - parts.push(part); - part = new _AST(null, ast); - continue; - } - if (c === ")") { - if (acc === "" && __privateGet(ast, _parts).length === 0) { - __privateSet(ast, _emptyExt, true); - } - part.push(acc); - acc = ""; - ast.push(...parts, part); - return i; - } - acc += c; - } - ast.type = null; - __privateSet(ast, _hasMagic, void 0); - __privateSet(ast, _parts, [str.substring(pos - 1)]); - return i; - }; - _partsToRegExp = new WeakSet(); - partsToRegExp_fn = function(dot) { - return __privateGet(this, _parts).map((p) => { - if (typeof p === "string") { - throw new Error("string type in extglob ast??"); - } - const [re, _, _hasMagic2, uflag] = p.toRegExpSource(dot); - __privateSet(this, _uflag, __privateGet(this, _uflag) || uflag); - return re; - }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|"); - }; - _parseGlob = new WeakSet(); - parseGlob_fn = function(glob, hasMagic, noEmpty = false) { - let escaping = false; - let re = ""; - let uflag = false; - for (let i = 0; i < glob.length; i++) { - const c = glob.charAt(i); - if (escaping) { - escaping = false; - re += (reSpecials.has(c) ? "\\" : "") + c; - continue; - } - if (c === "\\") { - if (i === glob.length - 1) { - re += "\\\\"; - } else { - escaping = true; + if (c === "*") { + if (noEmpty && glob === "*") + re += starNoEmpty; + else + re += star2; + hasMagic = true; + continue; } - continue; - } - if (c === "[") { - const [src, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob, i); - if (consumed) { - re += src; - uflag = uflag || needUflag; - i += consumed - 1; - hasMagic = hasMagic || magic; + if (c === "?") { + re += qmark2; + hasMagic = true; continue; } + re += regExpEscape2(c); } - if (c === "*") { - if (noEmpty && glob === "*") - re += starNoEmpty; - else - re += star2; - hasMagic = true; - continue; - } - if (c === "?") { - re += qmark2; - hasMagic = true; - continue; - } - re += regExpEscape2(c); + return [re, (0, unescape_js_12.unescape)(glob), !!hasMagic, uflag]; } - return [re, (0, unescape_js_12.unescape)(glob), !!hasMagic, uflag]; }; - __privateAdd(AST, _parseAST); - __privateAdd(AST, _parseGlob); exports2.AST = AST; } }); diff --git a/deps/minimatch/package-lock.json b/deps/minimatch/package-lock.json new file mode 100644 index 00000000000000..4c1ad95e6d801b --- /dev/null +++ b/deps/minimatch/package-lock.json @@ -0,0 +1,6216 @@ +{ + "name": "minimatch", + "version": "9.0.3", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "minimatch", + "version": "9.0.3", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "devDependencies": { + "@types/brace-expansion": "^1.1.0", + "@types/node": "^18.15.11", + "@types/tap": "^15.0.8", + "c8": "^7.12.0", + "esbuild": "^0.19.5", + "eslint-config-prettier": "^8.6.0", + "mkdirp": "1", + "prettier": "^2.8.2", + "tap": "^16.3.7", + "ts-node": "^10.9.1", + "typedoc": "^0.23.21", + "typescript": "^4.9.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.0", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.15", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", + "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.5.tgz", + "integrity": "sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.5.tgz", + "integrity": "sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.5.tgz", + "integrity": "sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", + "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.5.tgz", + "integrity": "sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.5.tgz", + "integrity": "sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.5.tgz", + "integrity": "sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.5.tgz", + "integrity": "sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.5.tgz", + "integrity": "sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.5.tgz", + "integrity": "sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.5.tgz", + "integrity": "sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.5.tgz", + "integrity": "sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.5.tgz", + "integrity": "sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.5.tgz", + "integrity": "sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.5.tgz", + "integrity": "sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz", + "integrity": "sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.5.tgz", + "integrity": "sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.5.tgz", + "integrity": "sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.5.tgz", + "integrity": "sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.5.tgz", + "integrity": "sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.5.tgz", + "integrity": "sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.5.tgz", + "integrity": "sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "peer": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.52.0.tgz", + "integrity": "sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "dev": true, + "peer": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "dev": true, + "peer": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", + "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "peer": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "peer": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, + "node_modules/@types/brace-expansion": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/brace-expansion/-/brace-expansion-1.1.1.tgz", + "integrity": "sha512-L/0hwOwpiwDHUdTtqFkRhKPByBt8uKaJpY3YY2NLsuUz+Rzid7h2XnNsHQN1FEpa+8rfZHZ3KNolZZg3uUuF4Q==", + "dev": true + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "18.18.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.7.tgz", + "integrity": "sha512-bw+lEsxis6eqJYW8Ql6+yTqkE6RuFtsQPSe5JxXbqYRFQEER5aJA9a5UH9igqDWm3X4iLHIKOHlnAXLM4mi7uQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/tap": { + "version": "15.0.10", + "resolved": "https://registry.npmjs.org/@types/tap/-/tap-15.0.10.tgz", + "integrity": "sha512-NcsQN3XkZ+xuhaUJjkfpQfJLpyLz/2+wlFKZ1bRK5B5Pe37ccotzkDo66jWjjwmARD5slzLC/KtSt7+gomvLSQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true, + "peer": true + }, + "node_modules/acorn": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", + "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz", + "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-sequence-parser": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ansi-sequence-parser/-/ansi-sequence-parser-1.1.1.tgz", + "integrity": "sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==", + "dev": true + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/append-transform": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", + "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", + "dev": true, + "dependencies": { + "default-require-extensions": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "dev": true + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "peer": true + }, + "node_modules/async-hook-domain": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/async-hook-domain/-/async-hook-domain-2.0.4.tgz", + "integrity": "sha512-14LjCmlK1PK8eDtTezR6WX8TMaYNIzBIsd2D1sGoGjgx0BuNMMoSdk7i/drlbtamy0AWv9yv2tkB+ASdmeqFIw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bind-obj-methods": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bind-obj-methods/-/bind-obj-methods-3.0.0.tgz", + "integrity": "sha512-nLEaaz3/sEzNSyPWRsN9HNsqwk1AUyECtGj+XwGdIi3xABnEqecvXtIJ0wehQXuuER5uZ/5fTs2usONgYjG+iw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/c8": { + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/c8/-/c8-7.14.0.tgz", + "integrity": "sha512-i04rtkkcNcCf7zsQcSv/T9EbUn4RXQ6mropeMcjFOsQXQ0iGLAr/xT6TImQg4+U9hmNpN9XdvPkjUL1IzbgxJw==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@istanbuljs/schema": "^0.1.3", + "find-up": "^5.0.0", + "foreground-child": "^2.0.0", + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-reports": "^3.1.4", + "rimraf": "^3.0.2", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^9.0.0", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9" + }, + "bin": { + "c8": "bin/c8.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/caching-transform": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", + "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", + "dev": true, + "dependencies": { + "hasha": "^5.0.0", + "make-dir": "^3.0.0", + "package-hash": "^4.0.0", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/caching-transform/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caching-transform/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001558", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001558.tgz", + "integrity": "sha512-/Et7DwLqpjS47JPEcz6VnxU9PwcIdVi0ciLXRWBQdj1XFye68pSQYpV0QtPTfUKWuOaEig+/Vez2l74eDc1tPQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "peer": true + }, + "node_modules/default-require-extensions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz", + "integrity": "sha512-eXTJmRbm2TIt9MgWTsOH1wEuhew6XGZcMeGKCtLedIg/NCsg1iBePXkceTdK4Fii7pzmN9tGsZhKzZ4h7O/fxw==", + "dev": true, + "dependencies": { + "strip-bom": "^4.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "peer": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.569", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.569.tgz", + "integrity": "sha512-LsrJjZ0IbVy12ApW3gpYpcmHS3iRxH4bkKOW98y1/D+3cvDUWGcbzbsFinfUS8knpcZk/PG/2p/RnkMCYN7PVg==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true + }, + "node_modules/esbuild": { + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz", + "integrity": "sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.19.5", + "@esbuild/android-arm64": "0.19.5", + "@esbuild/android-x64": "0.19.5", + "@esbuild/darwin-arm64": "0.19.5", + "@esbuild/darwin-x64": "0.19.5", + "@esbuild/freebsd-arm64": "0.19.5", + "@esbuild/freebsd-x64": "0.19.5", + "@esbuild/linux-arm": "0.19.5", + "@esbuild/linux-arm64": "0.19.5", + "@esbuild/linux-ia32": "0.19.5", + "@esbuild/linux-loong64": "0.19.5", + "@esbuild/linux-mips64el": "0.19.5", + "@esbuild/linux-ppc64": "0.19.5", + "@esbuild/linux-riscv64": "0.19.5", + "@esbuild/linux-s390x": "0.19.5", + "@esbuild/linux-x64": "0.19.5", + "@esbuild/netbsd-x64": "0.19.5", + "@esbuild/openbsd-x64": "0.19.5", + "@esbuild/sunos-x64": "0.19.5", + "@esbuild/win32-arm64": "0.19.5", + "@esbuild/win32-ia32": "0.19.5", + "@esbuild/win32-x64": "0.19.5" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.52.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.52.0.tgz", + "integrity": "sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.52.0", + "@humanwhocodes/config-array": "^0.11.13", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", + "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "peer": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/events-to-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz", + "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==", + "dev": true + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "peer": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "peer": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "peer": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "peer": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "peer": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-cache-dir/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-cache-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/findit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findit/-/findit-2.0.0.tgz", + "integrity": "sha512-ENZS237/Hr8bjczn5eKuBohLgaD0JyUd0arxretR1f9RO46vZHA1b2y0VorgGV3WaOT3c+78P8h7v4JGJ1i/rg==", + "dev": true + }, + "node_modules/flat-cache": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", + "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", + "dev": true, + "peer": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "dev": true, + "peer": true + }, + "node_modules/foreground-child": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", + "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/fromentries": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", + "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/fs-exists-cached": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz", + "integrity": "sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-loop": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/function-loop/-/function-loop-2.0.1.tgz", + "integrity": "sha512-ktIR+O6i/4h+j/ZhZJNdzeI4i9lEPeEK6UPR2EVyTVBqOwcU3Za9xYKLH64ZR9HmcROyRrOkizNyjjtWJzDDkQ==", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "peer": true + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/hasha": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz", + "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==", + "dev": true, + "dependencies": { + "is-stream": "^2.0.0", + "type-fest": "^0.8.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hasha/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "peer": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-hook": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", + "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", + "dev": true, + "dependencies": { + "append-transform": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-processinfo": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz", + "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==", + "dev": true, + "dependencies": { + "archy": "^1.0.0", + "cross-spawn": "^7.0.3", + "istanbul-lib-coverage": "^3.2.0", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-1.4.2.tgz", + "integrity": "sha512-GHeGTmnuaHnvS+ZctRB01bfxARuu9wW83ENbuiweu07SFcVlZrJpcshSre/keGT7YGBhLHg/+rXCNSrsEHKU4Q==", + "dev": true, + "dependencies": { + "cliui": "^7.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "peer": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "peer": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "peer": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/libtap": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/libtap/-/libtap-1.4.1.tgz", + "integrity": "sha512-S9v19shLTigoMn3c02V7LZ4t09zxmVP3r3RbEAwuHFYeKgF+ESFJxoQ0PMFKW4XdgQhcjVBEwDoopG6WROq/gw==", + "dev": true, + "dependencies": { + "async-hook-domain": "^2.0.4", + "bind-obj-methods": "^3.0.0", + "diff": "^4.0.2", + "function-loop": "^2.0.1", + "minipass": "^3.1.5", + "own-or": "^1.0.0", + "own-or-env": "^1.0.2", + "signal-exit": "^3.0.4", + "stack-utils": "^2.0.4", + "tap-parser": "^11.0.0", + "tap-yaml": "^1.0.0", + "tcompare": "^5.0.6", + "trivial-deferred": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "peer": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/lunr": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", + "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", + "dev": true + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/marked": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", + "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", + "dev": true, + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimatch/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "peer": true + }, + "node_modules/node-preload": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", + "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", + "dev": true, + "dependencies": { + "process-on-spawn": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nyc": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", + "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", + "dev": true, + "dependencies": { + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "caching-transform": "^4.0.0", + "convert-source-map": "^1.7.0", + "decamelize": "^1.2.0", + "find-cache-dir": "^3.2.0", + "find-up": "^4.1.0", + "foreground-child": "^2.0.0", + "get-package-type": "^0.1.0", + "glob": "^7.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-hook": "^3.0.0", + "istanbul-lib-instrument": "^4.0.0", + "istanbul-lib-processinfo": "^2.0.2", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "make-dir": "^3.0.0", + "node-preload": "^0.2.1", + "p-map": "^3.0.0", + "process-on-spawn": "^1.0.0", + "resolve-from": "^5.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "spawn-wrap": "^2.0.0", + "test-exclude": "^6.0.0", + "yargs": "^15.0.2" + }, + "bin": { + "nyc": "bin/nyc.js" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/nyc/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/nyc/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nyc/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nyc/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/nyc/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "node_modules/nyc/node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nyc/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "dev": true, + "bin": { + "opener": "bin/opener-bin.js" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "dev": true, + "peer": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/own-or": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/own-or/-/own-or-1.0.0.tgz", + "integrity": "sha512-NfZr5+Tdf6MB8UI9GLvKRs4cXY8/yB0w3xtt84xFdWy8hkGjn+JFc60VhzS/hFRfbyxFcGYMTjnF4Me+RbbqrA==", + "dev": true + }, + "node_modules/own-or-env": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/own-or-env/-/own-or-env-1.0.2.tgz", + "integrity": "sha512-NQ7v0fliWtK7Lkb+WdFqe6ky9XAzYmlkXthQrBbzlYbmFKoAYbDDcwmOm6q8kOuwSRXW8bdL5ORksploUJmWgw==", + "dev": true, + "dependencies": { + "own-or": "^1.0.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-hash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", + "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "hasha": "^5.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/process-on-spawn": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", + "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "dev": true, + "dependencies": { + "fromentries": "^1.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", + "dev": true, + "dependencies": { + "es6-error": "^4.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "peer": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "dev": true + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shiki": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.14.5.tgz", + "integrity": "sha512-1gCAYOcmCFONmErGTrS1fjzJLA7MGZmKzrBNX7apqSwhyITJg2O102uFzXUeBxNnEkDA9vHIKLyeKq0V083vIw==", + "dev": true, + "dependencies": { + "ansi-sequence-parser": "^1.1.0", + "jsonc-parser": "^3.2.0", + "vscode-oniguruma": "^1.7.0", + "vscode-textmate": "^8.0.0" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/spawn-wrap": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", + "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", + "dev": true, + "dependencies": { + "foreground-child": "^2.0.0", + "is-windows": "^1.0.2", + "make-dir": "^3.0.0", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.2", + "which": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/spawn-wrap/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/spawn-wrap/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap": { + "version": "16.3.9", + "resolved": "https://registry.npmjs.org/tap/-/tap-16.3.9.tgz", + "integrity": "sha512-KKmu12hRJhb/kGvVV/UKBOJ90sNoGbcXF0E+VmNqej1DqaCmZHyOXR8R7E66qg2Wor33XhSHGrku5MPYWSRNWw==", + "bundleDependencies": [ + "ink", + "treport", + "@types/react", + "@isaacs/import-jsx", + "react" + ], + "dev": true, + "dependencies": { + "@isaacs/import-jsx": "^4.0.1", + "@types/react": "^17.0.52", + "chokidar": "^3.3.0", + "findit": "^2.0.0", + "foreground-child": "^2.0.0", + "fs-exists-cached": "^1.0.0", + "glob": "^7.2.3", + "ink": "^3.2.0", + "isexe": "^2.0.0", + "istanbul-lib-processinfo": "^2.0.3", + "jackspeak": "^1.4.2", + "libtap": "^1.4.0", + "minipass": "^3.3.4", + "mkdirp": "^1.0.4", + "nyc": "^15.1.0", + "opener": "^1.5.1", + "react": "^17.0.2", + "rimraf": "^3.0.0", + "signal-exit": "^3.0.6", + "source-map-support": "^0.5.16", + "tap-mocha-reporter": "^5.0.3", + "tap-parser": "^11.0.2", + "tap-yaml": "^1.0.2", + "tcompare": "^5.0.7", + "treport": "^3.0.4", + "which": "^2.0.2" + }, + "bin": { + "tap": "bin/run.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "peerDependencies": { + "coveralls": "^3.1.1", + "flow-remove-types": ">=2.112.0", + "ts-node": ">=8.5.2", + "typescript": ">=3.7.2" + }, + "peerDependenciesMeta": { + "coveralls": { + "optional": true + }, + "flow-remove-types": { + "optional": true + }, + "ts-node": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/tap-mocha-reporter": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/tap-mocha-reporter/-/tap-mocha-reporter-5.0.4.tgz", + "integrity": "sha512-J+YMO8B7lq1O6Zxd/jeuG27vJ+Y4tLiRMKPSb7KR6FVh86k3Rq1TwYc2GKPyIjCbzzdMdReh3Vfz9L5cg1Z2Bw==", + "dev": true, + "dependencies": { + "color-support": "^1.1.0", + "debug": "^4.1.1", + "diff": "^4.0.1", + "escape-string-regexp": "^2.0.0", + "glob": "^7.0.5", + "tap-parser": "^11.0.0", + "tap-yaml": "^1.0.0", + "unicode-length": "^2.0.2" + }, + "bin": { + "tap-mocha-reporter": "index.js" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tap-mocha-reporter/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap-parser": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-11.0.2.tgz", + "integrity": "sha512-6qGlC956rcORw+fg7Fv1iCRAY8/bU9UabUAhs3mXRH6eRmVZcNPLheSXCYaVaYeSwx5xa/1HXZb1537YSvwDZg==", + "dev": true, + "dependencies": { + "events-to-array": "^1.0.1", + "minipass": "^3.1.6", + "tap-yaml": "^1.0.0" + }, + "bin": { + "tap-parser": "bin/cmd.js" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tap-yaml": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/tap-yaml/-/tap-yaml-1.0.2.tgz", + "integrity": "sha512-GegASpuqBnRNdT1U+yuUPZ8rEU64pL35WPBpCISWwff4dErS2/438barz7WFJl4Nzh3Y05tfPidZnH+GaV1wMg==", + "dev": true, + "dependencies": { + "yaml": "^1.10.2" + } + }, + "node_modules/tap/node_modules/@ampproject/remapping": { + "version": "2.2.1", + "dev": true, + "inBundle": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/tap/node_modules/@babel/code-frame": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/compat-data": { + "version": "7.22.9", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/core": { + "version": "7.22.9", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/tap/node_modules/@babel/generator": { + "version": "7.22.9", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-compilation-targets": { + "version": "7.22.9", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-environment-visitor": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-function-name": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-module-imports": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-module-transforms": { + "version": "7.22.9", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-string-parser": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-validator-identifier": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helper-validator-option": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/helpers": { + "version": "7.22.6", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.6", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/highlight": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/parser": { + "version": "7.22.7", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-transform-destructuring": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/tap/node_modules/@babel/template": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/traverse": { + "version": "7.22.8", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.7", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/types": "^7.22.5", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@babel/types": { + "version": "7.22.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/@isaacs/import-jsx": { + "version": "4.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.5.5", + "@babel/plugin-proposal-object-rest-spread": "^7.5.5", + "@babel/plugin-transform-destructuring": "^7.5.0", + "@babel/plugin-transform-react-jsx": "^7.3.0", + "caller-path": "^3.0.1", + "find-cache-dir": "^3.2.0", + "make-dir": "^3.0.2", + "resolve-from": "^3.0.0", + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/tap/node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/tap/node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/tap/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.18", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/tap/node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/@types/prop-types": { + "version": "15.7.5", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/@types/react": { + "version": "17.0.62", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/tap/node_modules/@types/scheduler": { + "version": "0.16.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/@types/yoga-layout": { + "version": "1.9.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/ansi-escapes": { + "version": "4.3.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "dev": true, + "inBundle": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/ansicolors": { + "version": "0.3.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/astral-regex": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/auto-bind": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/tap/node_modules/browserslist": { + "version": "4.21.9", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "inBundle": true, + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001503", + "electron-to-chromium": "^1.4.431", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/tap/node_modules/caller-callsite": { + "version": "4.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/caller-path": { + "version": "3.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "caller-callsite": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/callsites": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/caniuse-lite": { + "version": "1.0.30001517", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "inBundle": true, + "license": "CC-BY-4.0" + }, + "node_modules/tap/node_modules/cardinal": { + "version": "2.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansicolors": "~0.3.2", + "redeyed": "~2.1.0" + }, + "bin": { + "cdl": "bin/cdl.js" + } + }, + "node_modules/tap/node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/ci-info": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/cli-boxes": { + "version": "2.2.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/cli-cursor": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/cli-truncate": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/code-excerpt": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "convert-to-spaces": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/tap/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/commondir": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/convert-source-map": { + "version": "1.9.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/convert-to-spaces": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/tap/node_modules/csstype": { + "version": "3.1.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/debug": { + "version": "4.3.4", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/tap/node_modules/electron-to-chromium": { + "version": "1.4.477", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/escalade": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/tap/node_modules/esprima": { + "version": "4.0.1", + "dev": true, + "inBundle": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/events-to-array": { + "version": "1.1.2", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/find-cache-dir": { + "version": "3.3.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/tap/node_modules/find-up": { + "version": "4.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/fs.realpath": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/gensync": { + "version": "1.0.0-beta.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/tap/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/tap/node_modules/globals": { + "version": "11.12.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/has-flag": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/indent-string": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/tap/node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/ink": { + "version": "3.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.2.1", + "auto-bind": "4.0.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.0", + "cli-cursor": "^3.1.0", + "cli-truncate": "^2.1.0", + "code-excerpt": "^3.0.0", + "indent-string": "^4.0.0", + "is-ci": "^2.0.0", + "lodash": "^4.17.20", + "patch-console": "^1.0.0", + "react-devtools-core": "^4.19.1", + "react-reconciler": "^0.26.2", + "scheduler": "^0.20.2", + "signal-exit": "^3.0.2", + "slice-ansi": "^3.0.0", + "stack-utils": "^2.0.2", + "string-width": "^4.2.2", + "type-fest": "^0.12.0", + "widest-line": "^3.1.0", + "wrap-ansi": "^6.2.0", + "ws": "^7.5.5", + "yoga-layout-prebuilt": "^1.9.6" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": ">=16.8.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/tap/node_modules/ink/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/ink/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/tap/node_modules/ink/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/ink/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/ink/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/ink/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/is-ci": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/tap/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/js-tokens": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/jsesc": { + "version": "2.5.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/json5": { + "version": "2.2.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/locate-path": { + "version": "5.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/lodash": { + "version": "4.17.21", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/loose-envify": { + "version": "1.4.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/tap/node_modules/lru-cache": { + "version": "5.1.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/tap/node_modules/make-dir": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/mimic-fn": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tap/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/ms": { + "version": "2.1.2", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/node-releases": { + "version": "2.0.13", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/object-assign": { + "version": "4.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/once": { + "version": "1.4.0", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/tap/node_modules/onetime": { + "version": "5.1.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/p-limit": { + "version": "2.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/p-locate": { + "version": "4.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/p-try": { + "version": "2.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/patch-console": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/path-exists": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/picocolors": { + "version": "1.0.0", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/pkg-dir": { + "version": "4.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/punycode": { + "version": "2.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tap/node_modules/react": { + "version": "17.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tap/node_modules/react-devtools-core": { + "version": "4.28.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "shell-quote": "^1.6.1", + "ws": "^7" + } + }, + "node_modules/tap/node_modules/react-reconciler": { + "version": "0.26.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "react": "^17.0.2" + } + }, + "node_modules/tap/node_modules/redeyed": { + "version": "2.1.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "esprima": "~4.0.0" + } + }, + "node_modules/tap/node_modules/resolve-from": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/restore-cursor": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/tap/node_modules/scheduler": { + "version": "0.20.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "node_modules/tap/node_modules/semver": { + "version": "6.3.1", + "dev": true, + "inBundle": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/tap/node_modules/shell-quote": { + "version": "1.8.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tap/node_modules/signal-exit": { + "version": "3.0.7", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/slice-ansi": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/stack-utils": { + "version": "2.0.6", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tap/node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/supports-color": { + "version": "5.5.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/tap-parser": { + "version": "11.0.2", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "events-to-array": "^1.0.1", + "minipass": "^3.1.6", + "tap-yaml": "^1.0.0" + }, + "bin": { + "tap-parser": "bin/cmd.js" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tap/node_modules/tap-yaml": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "yaml": "^1.10.2" + } + }, + "node_modules/tap/node_modules/to-fast-properties": { + "version": "2.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tap/node_modules/treport": { + "version": "3.0.4", + "dev": true, + "inBundle": true, + "license": "ISC", + "dependencies": { + "@isaacs/import-jsx": "^4.0.1", + "cardinal": "^2.1.1", + "chalk": "^3.0.0", + "ink": "^3.2.0", + "ms": "^2.1.2", + "tap-parser": "^11.0.0", + "tap-yaml": "^1.0.0", + "unicode-length": "^2.0.2" + }, + "peerDependencies": { + "react": "^17.0.2" + } + }, + "node_modules/tap/node_modules/treport/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/treport/node_modules/chalk": { + "version": "3.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/treport/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/treport/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/treport/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/treport/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/type-fest": { + "version": "0.12.0", + "dev": true, + "inBundle": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tap/node_modules/unicode-length": { + "version": "2.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.0.0" + } + }, + "node_modules/tap/node_modules/update-browserslist-db": { + "version": "1.0.11", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "inBundle": true, + "license": "MIT", + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/tap/node_modules/widest-line": { + "version": "3.1.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/wrap-ansi": { + "version": "6.2.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tap/node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/tap/node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/tap/node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "inBundle": true, + "license": "MIT" + }, + "node_modules/tap/node_modules/wrappy": { + "version": "1.0.2", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/ws": { + "version": "7.5.9", + "dev": true, + "inBundle": true, + "license": "MIT", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/tap/node_modules/yallist": { + "version": "3.1.1", + "dev": true, + "inBundle": true, + "license": "ISC" + }, + "node_modules/tap/node_modules/yaml": { + "version": "1.10.2", + "dev": true, + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/tap/node_modules/yoga-layout-prebuilt": { + "version": "1.10.0", + "dev": true, + "inBundle": true, + "license": "MIT", + "dependencies": { + "@types/yoga-layout": "1.9.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tcompare": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/tcompare/-/tcompare-5.0.7.tgz", + "integrity": "sha512-d9iddt6YYGgyxJw5bjsN7UJUO1kGOtjSlNy/4PoGYAjQS5pAT/hzIoLf1bZCw+uUxRmZJh7Yy1aA7xKVRT9B4w==", + "dev": true, + "dependencies": { + "diff": "^4.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "peer": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/trivial-deferred": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.1.2.tgz", + "integrity": "sha512-vDPiDBC3hyP6O4JrJYMImW3nl3c03Tsj9fEXc7Qc/XKa1O7gf5ZtFfIR/E0dun9SnDHdwjna1Z2rSzYgqpxh/g==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "peer": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typedoc": { + "version": "0.23.28", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.28.tgz", + "integrity": "sha512-9x1+hZWTHEQcGoP7qFmlo4unUoVJLB0H/8vfO/7wqTnZxg4kPuji9y3uRzEu0ZKez63OJAUmiGhUrtukC6Uj3w==", + "dev": true, + "dependencies": { + "lunr": "^2.3.9", + "marked": "^4.2.12", + "minimatch": "^7.1.3", + "shiki": "^0.14.1" + }, + "bin": { + "typedoc": "bin/typedoc" + }, + "engines": { + "node": ">= 14.14" + }, + "peerDependencies": { + "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x" + } + }, + "node_modules/typedoc/node_modules/minimatch": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicode-length": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-2.1.0.tgz", + "integrity": "sha512-4bV582zTV9Q02RXBxSUMiuN/KHo5w4aTojuKTNT96DIKps/SIawFp7cS5Mu25VuY1AioGXrmYyzKZUzh8OqoUw==", + "dev": true, + "dependencies": { + "punycode": "^2.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "peer": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz", + "integrity": "sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/vscode-oniguruma": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz", + "integrity": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==", + "dev": true + }, + "node_modules/vscode-textmate": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-8.0.0.tgz", + "integrity": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==", + "dev": true + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "dev": true + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/deps/minimatch/src/package.json b/deps/minimatch/package.json similarity index 94% rename from deps/minimatch/src/package.json rename to deps/minimatch/package.json index 061c3b9f343306..fc80834f380417 100644 --- a/deps/minimatch/src/package.json +++ b/deps/minimatch/package.json @@ -38,7 +38,8 @@ "snap": "c8 tap", "format": "prettier --write . --loglevel warn", "benchmark": "node benchmark/index.js", - "typedoc": "typedoc --tsconfig tsconfig-esm.json ./src/*.ts" + "typedoc": "typedoc --tsconfig tsconfig-esm.json ./src/*.ts", + "node-build": "esbuild ./dist/cjs/index.js --bundle --platform=node --outfile=index.js" }, "prettier": { "semi": false, @@ -62,6 +63,7 @@ "@types/node": "^18.15.11", "@types/tap": "^15.0.8", "c8": "^7.12.0", + "esbuild": "^0.19.5", "eslint-config-prettier": "^8.6.0", "mkdirp": "1", "prettier": "^2.8.2", diff --git a/deps/minimatch/src/LICENSE b/deps/minimatch/src/LICENSE deleted file mode 100644 index 1493534e60dce4..00000000000000 --- a/deps/minimatch/src/LICENSE +++ /dev/null @@ -1,15 +0,0 @@ -The ISC License - -Copyright (c) 2011-2023 Isaac Z. Schlueter and Contributors - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted, provided that the above -copyright notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR -IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/deps/minimatch/src/node_modules/balanced-match/LICENSE.md b/deps/minimatch/src/node_modules/balanced-match/LICENSE.md deleted file mode 100644 index 2cdc8e4148cc0a..00000000000000 --- a/deps/minimatch/src/node_modules/balanced-match/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -(MIT) - -Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do -so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/deps/minimatch/src/node_modules/balanced-match/README.md b/deps/minimatch/src/node_modules/balanced-match/README.md deleted file mode 100644 index d2a48b6b49f2cf..00000000000000 --- a/deps/minimatch/src/node_modules/balanced-match/README.md +++ /dev/null @@ -1,97 +0,0 @@ -# balanced-match - -Match balanced string pairs, like `{` and `}` or `` and ``. Supports regular expressions as well! - -[![build status](https://secure.travis-ci.org/juliangruber/balanced-match.svg)](http://travis-ci.org/juliangruber/balanced-match) -[![downloads](https://img.shields.io/npm/dm/balanced-match.svg)](https://www.npmjs.org/package/balanced-match) - -[![testling badge](https://ci.testling.com/juliangruber/balanced-match.png)](https://ci.testling.com/juliangruber/balanced-match) - -## Example - -Get the first matching pair of braces: - -```js -var balanced = require('balanced-match'); - -console.log(balanced('{', '}', 'pre{in{nested}}post')); -console.log(balanced('{', '}', 'pre{first}between{second}post')); -console.log(balanced(/\s+\{\s+/, /\s+\}\s+/, 'pre { in{nest} } post')); -``` - -The matches are: - -```bash -$ node example.js -{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' } -{ start: 3, - end: 9, - pre: 'pre', - body: 'first', - post: 'between{second}post' } -{ start: 3, end: 17, pre: 'pre', body: 'in{nest}', post: 'post' } -``` - -## API - -### var m = balanced(a, b, str) - -For the first non-nested matching pair of `a` and `b` in `str`, return an -object with those keys: - -* **start** the index of the first match of `a` -* **end** the index of the matching `b` -* **pre** the preamble, `a` and `b` not included -* **body** the match, `a` and `b` not included -* **post** the postscript, `a` and `b` not included - -If there's no match, `undefined` will be returned. - -If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']` and `{a}}` will match `['', 'a', '}']`. - -### var r = balanced.range(a, b, str) - -For the first non-nested matching pair of `a` and `b` in `str`, return an -array with indexes: `[ , ]`. - -If there's no match, `undefined` will be returned. - -If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `[ 1, 3 ]` and `{a}}` will match `[0, 2]`. - -## Installation - -With [npm](https://npmjs.org) do: - -```bash -npm install balanced-match -``` - -## Security contact information - -To report a security vulnerability, please use the -[Tidelift security contact](https://tidelift.com/security). -Tidelift will coordinate the fix and disclosure. - -## License - -(MIT) - -Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do -so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/deps/minimatch/src/node_modules/balanced-match/index.js b/deps/minimatch/src/node_modules/balanced-match/index.js deleted file mode 100644 index c67a64608df7f4..00000000000000 --- a/deps/minimatch/src/node_modules/balanced-match/index.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; -module.exports = balanced; -function balanced(a, b, str) { - if (a instanceof RegExp) a = maybeMatch(a, str); - if (b instanceof RegExp) b = maybeMatch(b, str); - - var r = range(a, b, str); - - return r && { - start: r[0], - end: r[1], - pre: str.slice(0, r[0]), - body: str.slice(r[0] + a.length, r[1]), - post: str.slice(r[1] + b.length) - }; -} - -function maybeMatch(reg, str) { - var m = str.match(reg); - return m ? m[0] : null; -} - -balanced.range = range; -function range(a, b, str) { - var begs, beg, left, right, result; - var ai = str.indexOf(a); - var bi = str.indexOf(b, ai + 1); - var i = ai; - - if (ai >= 0 && bi > 0) { - if(a===b) { - return [ai, bi]; - } - begs = []; - left = str.length; - - while (i >= 0 && !result) { - if (i == ai) { - begs.push(i); - ai = str.indexOf(a, i + 1); - } else if (begs.length == 1) { - result = [ begs.pop(), bi ]; - } else { - beg = begs.pop(); - if (beg < left) { - left = beg; - right = bi; - } - - bi = str.indexOf(b, i + 1); - } - - i = ai < bi && ai >= 0 ? ai : bi; - } - - if (begs.length) { - result = [ left, right ]; - } - } - - return result; -} diff --git a/deps/minimatch/src/node_modules/balanced-match/package.json b/deps/minimatch/src/node_modules/balanced-match/package.json deleted file mode 100644 index ce6073e0403b5a..00000000000000 --- a/deps/minimatch/src/node_modules/balanced-match/package.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "name": "balanced-match", - "description": "Match balanced character pairs, like \"{\" and \"}\"", - "version": "1.0.2", - "repository": { - "type": "git", - "url": "git://github.com/juliangruber/balanced-match.git" - }, - "homepage": "https://github.com/juliangruber/balanced-match", - "main": "index.js", - "scripts": { - "test": "tape test/test.js", - "bench": "matcha test/bench.js" - }, - "devDependencies": { - "matcha": "^0.7.0", - "tape": "^4.6.0" - }, - "keywords": [ - "match", - "regexp", - "test", - "balanced", - "parse" - ], - "author": { - "name": "Julian Gruber", - "email": "mail@juliangruber.com", - "url": "http://juliangruber.com" - }, - "license": "MIT", - "testling": { - "files": "test/*.js", - "browsers": [ - "ie/8..latest", - "firefox/20..latest", - "firefox/nightly", - "chrome/25..latest", - "chrome/canary", - "opera/12..latest", - "opera/next", - "safari/5.1..latest", - "ipad/6.0..latest", - "iphone/6.0..latest", - "android-browser/4.2..latest" - ] - } -} diff --git a/deps/minimatch/src/node_modules/brace-expansion/LICENSE b/deps/minimatch/src/node_modules/brace-expansion/LICENSE deleted file mode 100644 index de3226673c3874..00000000000000 --- a/deps/minimatch/src/node_modules/brace-expansion/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2013 Julian Gruber - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/deps/minimatch/src/node_modules/brace-expansion/README.md b/deps/minimatch/src/node_modules/brace-expansion/README.md deleted file mode 100644 index e55c583dd095a5..00000000000000 --- a/deps/minimatch/src/node_modules/brace-expansion/README.md +++ /dev/null @@ -1,135 +0,0 @@ -# brace-expansion - -[Brace expansion](https://www.gnu.org/software/bash/manual/html_node/Brace-Expansion.html), -as known from sh/bash, in JavaScript. - -[![build status](https://secure.travis-ci.org/juliangruber/brace-expansion.svg)](http://travis-ci.org/juliangruber/brace-expansion) -[![downloads](https://img.shields.io/npm/dm/brace-expansion.svg)](https://www.npmjs.org/package/brace-expansion) -[![Greenkeeper badge](https://badges.greenkeeper.io/juliangruber/brace-expansion.svg)](https://greenkeeper.io/) - -[![testling badge](https://ci.testling.com/juliangruber/brace-expansion.png)](https://ci.testling.com/juliangruber/brace-expansion) - -## Example - -```js -var expand = require('brace-expansion'); - -expand('file-{a,b,c}.jpg') -// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg'] - -expand('-v{,,}') -// => ['-v', '-v', '-v'] - -expand('file{0..2}.jpg') -// => ['file0.jpg', 'file1.jpg', 'file2.jpg'] - -expand('file-{a..c}.jpg') -// => ['file-a.jpg', 'file-b.jpg', 'file-c.jpg'] - -expand('file{2..0}.jpg') -// => ['file2.jpg', 'file1.jpg', 'file0.jpg'] - -expand('file{0..4..2}.jpg') -// => ['file0.jpg', 'file2.jpg', 'file4.jpg'] - -expand('file-{a..e..2}.jpg') -// => ['file-a.jpg', 'file-c.jpg', 'file-e.jpg'] - -expand('file{00..10..5}.jpg') -// => ['file00.jpg', 'file05.jpg', 'file10.jpg'] - -expand('{{A..C},{a..c}}') -// => ['A', 'B', 'C', 'a', 'b', 'c'] - -expand('ppp{,config,oe{,conf}}') -// => ['ppp', 'pppconfig', 'pppoe', 'pppoeconf'] -``` - -## API - -```js -var expand = require('brace-expansion'); -``` - -### var expanded = expand(str) - -Return an array of all possible and valid expansions of `str`. If none are -found, `[str]` is returned. - -Valid expansions are: - -```js -/^(.*,)+(.+)?$/ -// {a,b,...} -``` - -A comma separated list of options, like `{a,b}` or `{a,{b,c}}` or `{,a,}`. - -```js -/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/ -// {x..y[..incr]} -``` - -A numeric sequence from `x` to `y` inclusive, with optional increment. -If `x` or `y` start with a leading `0`, all the numbers will be padded -to have equal length. Negative numbers and backwards iteration work too. - -```js -/^-?\d+\.\.-?\d+(\.\.-?\d+)?$/ -// {x..y[..incr]} -``` - -An alphabetic sequence from `x` to `y` inclusive, with optional increment. -`x` and `y` must be exactly one character, and if given, `incr` must be a -number. - -For compatibility reasons, the string `${` is not eligible for brace expansion. - -## Installation - -With [npm](https://npmjs.org) do: - -```bash -npm install brace-expansion -``` - -## Contributors - -- [Julian Gruber](https://github.com/juliangruber) -- [Isaac Z. Schlueter](https://github.com/isaacs) - -## Sponsors - -This module is proudly supported by my [Sponsors](https://github.com/juliangruber/sponsors)! - -Do you want to support modules like this to improve their quality, stability and weigh in on new features? Then please consider donating to my [Patreon](https://www.patreon.com/juliangruber). Not sure how much of my modules you're using? Try [feross/thanks](https://github.com/feross/thanks)! - -## Security contact information - -To report a security vulnerability, please use the -[Tidelift security contact](https://tidelift.com/security). -Tidelift will coordinate the fix and disclosure. - -## License - -(MIT) - -Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do -so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/deps/minimatch/src/node_modules/brace-expansion/index.js b/deps/minimatch/src/node_modules/brace-expansion/index.js deleted file mode 100644 index 4af9ddee463f4a..00000000000000 --- a/deps/minimatch/src/node_modules/brace-expansion/index.js +++ /dev/null @@ -1,203 +0,0 @@ -var balanced = require('balanced-match'); - -module.exports = expandTop; - -var escSlash = '\0SLASH'+Math.random()+'\0'; -var escOpen = '\0OPEN'+Math.random()+'\0'; -var escClose = '\0CLOSE'+Math.random()+'\0'; -var escComma = '\0COMMA'+Math.random()+'\0'; -var escPeriod = '\0PERIOD'+Math.random()+'\0'; - -function numeric(str) { - return parseInt(str, 10) == str - ? parseInt(str, 10) - : str.charCodeAt(0); -} - -function escapeBraces(str) { - return str.split('\\\\').join(escSlash) - .split('\\{').join(escOpen) - .split('\\}').join(escClose) - .split('\\,').join(escComma) - .split('\\.').join(escPeriod); -} - -function unescapeBraces(str) { - return str.split(escSlash).join('\\') - .split(escOpen).join('{') - .split(escClose).join('}') - .split(escComma).join(',') - .split(escPeriod).join('.'); -} - - -// Basically just str.split(","), but handling cases -// where we have nested braced sections, which should be -// treated as individual members, like {a,{b,c},d} -function parseCommaParts(str) { - if (!str) - return ['']; - - var parts = []; - var m = balanced('{', '}', str); - - if (!m) - return str.split(','); - - var pre = m.pre; - var body = m.body; - var post = m.post; - var p = pre.split(','); - - p[p.length-1] += '{' + body + '}'; - var postParts = parseCommaParts(post); - if (post.length) { - p[p.length-1] += postParts.shift(); - p.push.apply(p, postParts); - } - - parts.push.apply(parts, p); - - return parts; -} - -function expandTop(str) { - if (!str) - return []; - - // I don't know why Bash 4.3 does this, but it does. - // Anything starting with {} will have the first two bytes preserved - // but *only* at the top level, so {},a}b will not expand to anything, - // but a{},b}c will be expanded to [a}c,abc]. - // One could argue that this is a bug in Bash, but since the goal of - // this module is to match Bash's rules, we escape a leading {} - if (str.substr(0, 2) === '{}') { - str = '\\{\\}' + str.substr(2); - } - - return expand(escapeBraces(str), true).map(unescapeBraces); -} - -function embrace(str) { - return '{' + str + '}'; -} -function isPadded(el) { - return /^-?0\d/.test(el); -} - -function lte(i, y) { - return i <= y; -} -function gte(i, y) { - return i >= y; -} - -function expand(str, isTop) { - var expansions = []; - - var m = balanced('{', '}', str); - if (!m) return [str]; - - // no need to expand pre, since it is guaranteed to be free of brace-sets - var pre = m.pre; - var post = m.post.length - ? expand(m.post, false) - : ['']; - - if (/\$$/.test(m.pre)) { - for (var k = 0; k < post.length; k++) { - var expansion = pre+ '{' + m.body + '}' + post[k]; - expansions.push(expansion); - } - } else { - var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); - var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); - var isSequence = isNumericSequence || isAlphaSequence; - var isOptions = m.body.indexOf(',') >= 0; - if (!isSequence && !isOptions) { - // {a},b} - if (m.post.match(/,.*\}/)) { - str = m.pre + '{' + m.body + escClose + m.post; - return expand(str); - } - return [str]; - } - - var n; - if (isSequence) { - n = m.body.split(/\.\./); - } else { - n = parseCommaParts(m.body); - if (n.length === 1) { - // x{{a,b}}y ==> x{a}y x{b}y - n = expand(n[0], false).map(embrace); - if (n.length === 1) { - return post.map(function(p) { - return m.pre + n[0] + p; - }); - } - } - } - - // at this point, n is the parts, and we know it's not a comma set - // with a single entry. - var N; - - if (isSequence) { - var x = numeric(n[0]); - var y = numeric(n[1]); - var width = Math.max(n[0].length, n[1].length) - var incr = n.length == 3 - ? Math.abs(numeric(n[2])) - : 1; - var test = lte; - var reverse = y < x; - if (reverse) { - incr *= -1; - test = gte; - } - var pad = n.some(isPadded); - - N = []; - - for (var i = x; test(i, y); i += incr) { - var c; - if (isAlphaSequence) { - c = String.fromCharCode(i); - if (c === '\\') - c = ''; - } else { - c = String(i); - if (pad) { - var need = width - c.length; - if (need > 0) { - var z = new Array(need + 1).join('0'); - if (i < 0) - c = '-' + z + c.slice(1); - else - c = z + c; - } - } - } - N.push(c); - } - } else { - N = []; - - for (var j = 0; j < n.length; j++) { - N.push.apply(N, expand(n[j], false)); - } - } - - for (var j = 0; j < N.length; j++) { - for (var k = 0; k < post.length; k++) { - var expansion = pre + N[j] + post[k]; - if (!isTop || isSequence || expansion) - expansions.push(expansion); - } - } - } - - return expansions; -} - diff --git a/deps/minimatch/src/node_modules/brace-expansion/package.json b/deps/minimatch/src/node_modules/brace-expansion/package.json deleted file mode 100644 index 7097d41e39de5d..00000000000000 --- a/deps/minimatch/src/node_modules/brace-expansion/package.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "name": "brace-expansion", - "description": "Brace expansion as known from sh/bash", - "version": "2.0.1", - "repository": { - "type": "git", - "url": "git://github.com/juliangruber/brace-expansion.git" - }, - "homepage": "https://github.com/juliangruber/brace-expansion", - "main": "index.js", - "scripts": { - "test": "tape test/*.js", - "gentest": "bash test/generate.sh", - "bench": "matcha test/perf/bench.js" - }, - "dependencies": { - "balanced-match": "^1.0.0" - }, - "devDependencies": { - "@c4312/matcha": "^1.3.1", - "tape": "^4.6.0" - }, - "keywords": [], - "author": { - "name": "Julian Gruber", - "email": "mail@juliangruber.com", - "url": "http://juliangruber.com" - }, - "license": "MIT", - "testling": { - "files": "test/*.js", - "browsers": [ - "ie/8..latest", - "firefox/20..latest", - "firefox/nightly", - "chrome/25..latest", - "chrome/canary", - "opera/12..latest", - "opera/next", - "safari/5.1..latest", - "ipad/6.0..latest", - "iphone/6.0..latest", - "android-browser/4.2..latest" - ] - } -} diff --git a/tools/dep_updaters/update-minimatch.sh b/tools/dep_updaters/update-minimatch.sh index 3ee91d374d5521..6be6bdc44a7f52 100755 --- a/tools/dep_updaters/update-minimatch.sh +++ b/tools/dep_updaters/update-minimatch.sh @@ -7,43 +7,68 @@ set -ex -ROOT=$(cd "$(dirname "$0")/../.." && pwd) -[ -z "$NODE" ] && NODE="$ROOT/out/Release/node" +BASE_DIR=$(cd "$(dirname "$0")/../.." && pwd) +[ -z "$NODE" ] && NODE="$BASE_DIR/out/Release/node" [ -x "$NODE" ] || NODE=$(command -v node) -NPM="$ROOT/deps/npm/bin/npm-cli.js" +DEPS_DIR="$BASE_DIR/deps" +NPM="$DEPS_DIR/npm/bin/npm-cli.js" # shellcheck disable=SC1091 -. "$ROOT/tools/dep_updaters/utils.sh" +. "$BASE_DIR/tools/dep_updaters/utils.sh" NEW_VERSION=$("$NODE" "$NPM" view minimatch dist-tags.latest) -CURRENT_VERSION=$("$NODE" -p "require('./deps/minimatch/src/package.json').version") +CURRENT_VERSION=$("$NODE" "$NPM" --prefix './deps/minimatch' pkg get version) # This function exit with 0 if new version and current version are the same compare_dependency_version "minimatch" "$NEW_VERSION" "$CURRENT_VERSION" cd "$( dirname "$0" )/../.." || exit -rm -rf deps/minimatch/src -rm -rf deps/minimatch/index.js +echo "Making temporary workspace..." -( - rm -rf minimatch-tmp - mkdir minimatch-tmp - cd minimatch-tmp || exit +WORKSPACE=$(mktemp -d 2> /dev/null || mktemp -d -t 'tmp') - "$NODE" "$NPM" init --yes +cleanup () { + EXIT_CODE=$? + [ -d "$WORKSPACE" ] && rm -rf "$WORKSPACE" + exit $EXIT_CODE +} - "$NODE" "$NPM" install --global-style --no-bin-links --ignore-scripts "minimatch@$NEW_VERSION" - cd node_modules/minimatch - "$NODE" "$NPM" exec --package=esbuild@0.17.15 --yes -- esbuild ./dist/cjs/index.js --bundle --platform=node --outfile=minimatch.js -) +trap cleanup INT TERM EXIT -ls -l minimatch-tmp -mv minimatch-tmp/node_modules/minimatch deps/minimatch/src -mv deps/minimatch/src/minimatch.js deps/minimatch/index.js -cp deps/minimatch/src/LICENSE deps/minimatch/LICENSE +cd "$WORKSPACE" -rm -rf minimatch-tmp/ +echo "Fetching minimatch source archive..." + +"$NODE" "$NPM" pack "minimatch@$NEW_VERSION" + +MINIMATCH_TGZ="minimatch-$NEW_VERSION.tgz" + +log_and_verify_sha256sum "minimatch" "$MINIMATCH_TGZ" + +rm -r "$DEPS_DIR/minimatch"/* + +tar -xf "$MINIMATCH_TGZ" + +cd package + +"$NODE" "$NPM" install esbuild --save-dev + +"$NODE" "$NPM" pkg set scripts.node-build="esbuild ./dist/cjs/index.js --bundle --platform=node --outfile=index.js" + +"$NODE" "$NPM" run node-build + +rm -rf node_modules + +mv ./* "$DEPS_DIR/minimatch" + +echo "All done!" +echo "" +echo "Please git add minimatch, commit the new version:" +echo "" +echo "$ git add -A deps/minimatch" +echo "$ git commit -m \"deps: update minimatch to $NEW_VERSION\"" +echo "" # Update the version number on maintaining-dependencies.md # and print the new version as the last line of the script as we need From 342a83e72887f7c37b890edc7bf8e00692c61af6 Mon Sep 17 00:00:00 2001 From: Kyriakos Markakis <11089475+marquicodes@users.noreply.github.com> Date: Mon, 13 Nov 2023 14:45:59 +0200 Subject: [PATCH 012/114] test: change forEach to for...of in path extname MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50667 Reviewed-By: James M Snell Reviewed-By: Marco Ippolito Reviewed-By: Michaël Zasso --- test/parallel/test-path-extname.js | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/test/parallel/test-path-extname.js b/test/parallel/test-path-extname.js index 47b327d370d78e..be5a6316b0c7c3 100644 --- a/test/parallel/test-path-extname.js +++ b/test/parallel/test-path-extname.js @@ -6,7 +6,7 @@ const path = require('path'); const failures = []; const slashRE = /\//g; -[ +const testPaths = [ [__filename, '.js'], ['', ''], ['/path/to/file', ''], @@ -50,10 +50,13 @@ const slashRE = /\//g; ['file//', ''], ['file./', '.'], ['file.//', '.'], -].forEach((test) => { - const expected = test[1]; - [path.posix.extname, path.win32.extname].forEach((extname) => { - let input = test[0]; +]; + +for (const testPath of testPaths) { + const expected = testPath[1]; + const extNames = [path.posix.extname, path.win32.extname]; + for (const extname of extNames) { + let input = testPath[0]; let os; if (extname === path.win32.extname) { input = input.replace(slashRE, '\\'); @@ -66,16 +69,14 @@ const slashRE = /\//g; JSON.stringify(expected)}\n actual=${JSON.stringify(actual)}`; if (actual !== expected) failures.push(`\n${message}`); - }); - { - const input = `C:${test[0].replace(slashRE, '\\')}`; - const actual = path.win32.extname(input); - const message = `path.win32.extname(${JSON.stringify(input)})\n expect=${ - JSON.stringify(expected)}\n actual=${JSON.stringify(actual)}`; - if (actual !== expected) - failures.push(`\n${message}`); } -}); + const input = `C:${testPath[0].replace(slashRE, '\\')}`; + const actual = path.win32.extname(input); + const message = `path.win32.extname(${JSON.stringify(input)})\n expect=${ + JSON.stringify(expected)}\n actual=${JSON.stringify(actual)}`; + if (actual !== expected) + failures.push(`\n${message}`); +} assert.strictEqual(failures.length, 0, failures.join('')); // On Windows, backslash is a path separator. From 4a1ce451817fc275eecb4d99bb45d1c656bd1779 Mon Sep 17 00:00:00 2001 From: legendecas Date: Fri, 10 Nov 2023 00:20:59 +0800 Subject: [PATCH 013/114] src: make process binding data weak Avoid the realm being strongly referenced by the process binding data. PR-URL: https://github.com/nodejs/node/pull/48655 Reviewed-By: Matteo Collina Reviewed-By: Antoine du Hamel Reviewed-By: James M Snell Reviewed-By: Joyee Cheung --- lib/internal/process/per_thread.js | 5 +-- src/node_process.h | 18 +++++---- src/node_process_methods.cc | 62 +++++++++++++++++++----------- 3 files changed, 52 insertions(+), 33 deletions(-) diff --git a/lib/internal/process/per_thread.js b/lib/internal/process/per_thread.js index fb8014dcb39178..9b86f20053da3b 100644 --- a/lib/internal/process/per_thread.js +++ b/lib/internal/process/per_thread.js @@ -28,7 +28,6 @@ const { StringPrototypeStartsWith, Symbol, SymbolIterator, - Uint32Array, } = primordials; const { @@ -65,10 +64,10 @@ function refreshHrtimeBuffer() { // The 3 entries filled in by the original process.hrtime contains // the upper/lower 32 bits of the second part of the value, // and the remaining nanoseconds of the value. - hrValues = new Uint32Array(binding.hrtimeBuffer); + hrValues = binding.hrtimeBuffer; // Use a BigUint64Array in the closure because this is actually a bit // faster than simply returning a BigInt from C++ in V8 7.1. - hrBigintValues = new BigUint64Array(binding.hrtimeBuffer, 0, 1); + hrBigintValues = new BigUint64Array(binding.hrtimeBuffer.buffer, 0, 1); } // Create the buffers. diff --git a/src/node_process.h b/src/node_process.h index cb8c7962825f46..c911b3ddd7b78f 100644 --- a/src/node_process.h +++ b/src/node_process.h @@ -48,16 +48,20 @@ void PatchProcessObject(const v8::FunctionCallbackInfo& args); namespace process { class BindingData : public SnapshotableObject { public: + struct InternalFieldInfo : public node::InternalFieldInfoBase { + AliasedBufferIndex hrtime_buffer; + }; + static void AddMethods(v8::Isolate* isolate, v8::Local target); static void RegisterExternalReferences(ExternalReferenceRegistry* registry); - using InternalFieldInfo = InternalFieldInfoBase; - SERIALIZABLE_OBJECT_METHODS() SET_BINDING_ID(process_binding_data) - BindingData(Realm* realm, v8::Local object); + BindingData(Realm* realm, + v8::Local object, + InternalFieldInfo* info = nullptr); void MemoryInfo(MemoryTracker* tracker) const override; SET_MEMORY_INFO_NAME(BindingData) @@ -81,10 +85,10 @@ class BindingData : public SnapshotableObject { static void SlowBigInt(const v8::FunctionCallbackInfo& args); private: - static constexpr size_t kBufferSize = - std::max(sizeof(uint64_t), sizeof(uint32_t) * 3); - v8::Global array_buffer_; - std::shared_ptr backing_store_; + // Buffer length in uint32. + static constexpr size_t kHrTimeBufferLength = 3; + AliasedUint32Array hrtime_buffer_; + InternalFieldInfo* internal_field_info_ = nullptr; // These need to be static so that we have their addresses available to // register as external references in the snapshot at environment creation diff --git a/src/node_process_methods.cc b/src/node_process_methods.cc index 34d3c3af4c3e10..0342658c35ebdb 100644 --- a/src/node_process_methods.cc +++ b/src/node_process_methods.cc @@ -465,15 +465,29 @@ static void ReallyExit(const FunctionCallbackInfo& args) { namespace process { -BindingData::BindingData(Realm* realm, v8::Local object) - : SnapshotableObject(realm, object, type_int) { +BindingData::BindingData(Realm* realm, + v8::Local object, + InternalFieldInfo* info) + : SnapshotableObject(realm, object, type_int), + hrtime_buffer_(realm->isolate(), + kHrTimeBufferLength, + MAYBE_FIELD_PTR(info, hrtime_buffer)) { Isolate* isolate = realm->isolate(); Local context = realm->context(); - Local ab = ArrayBuffer::New(isolate, kBufferSize); - array_buffer_.Reset(isolate, ab); - object->Set(context, FIXED_ONE_BYTE_STRING(isolate, "hrtimeBuffer"), ab) - .ToChecked(); - backing_store_ = ab->GetBackingStore(); + + if (info == nullptr) { + object + ->Set(context, + FIXED_ONE_BYTE_STRING(isolate, "hrtimeBuffer"), + hrtime_buffer_.GetJSArray()) + .ToChecked(); + } else { + hrtime_buffer_.Deserialize(realm->context()); + } + + // The hrtime buffer is referenced from the binding data js object. + // Make the native handle weak to avoid keeping the realm alive. + hrtime_buffer_.MakeWeak(); } v8::CFunction BindingData::fast_number_(v8::CFunction::Make(FastNumber)); @@ -503,7 +517,7 @@ BindingData* BindingData::FromV8Value(Local value) { } void BindingData::MemoryInfo(MemoryTracker* tracker) const { - tracker->TrackField("array_buffer", array_buffer_); + tracker->TrackField("hrtime_buffer", hrtime_buffer_); } // This is the legacy version of hrtime before BigInt was introduced in @@ -516,20 +530,19 @@ void BindingData::MemoryInfo(MemoryTracker* tracker) const { // because there is no Uint64Array in JS. // The third entry contains the remaining nanosecond part of the value. void BindingData::NumberImpl(BindingData* receiver) { - // Make sure we don't accidentally access buffers wiped for snapshot. - CHECK(!receiver->array_buffer_.IsEmpty()); uint64_t t = uv_hrtime(); - uint32_t* fields = static_cast(receiver->backing_store_->Data()); - fields[0] = (t / NANOS_PER_SEC) >> 32; - fields[1] = (t / NANOS_PER_SEC) & 0xffffffff; - fields[2] = t % NANOS_PER_SEC; + receiver->hrtime_buffer_[0] = (t / NANOS_PER_SEC) >> 32; + receiver->hrtime_buffer_[1] = (t / NANOS_PER_SEC) & 0xffffffff; + receiver->hrtime_buffer_[2] = t % NANOS_PER_SEC; } void BindingData::BigIntImpl(BindingData* receiver) { - // Make sure we don't accidentally access buffers wiped for snapshot. - CHECK(!receiver->array_buffer_.IsEmpty()); uint64_t t = uv_hrtime(); - uint64_t* fields = static_cast(receiver->backing_store_->Data()); + // The buffer is a Uint32Array, so we need to reinterpret it as a + // Uint64Array to write the value. The buffer is valid at this scope so we + // can safely cast away the constness. + uint64_t* fields = reinterpret_cast( + const_cast(receiver->hrtime_buffer_.GetNativeBuffer())); fields[0] = t; } @@ -543,9 +556,10 @@ void BindingData::SlowNumber(const v8::FunctionCallbackInfo& args) { bool BindingData::PrepareForSerialization(Local context, v8::SnapshotCreator* creator) { - // It's not worth keeping. - // Release it, we will recreate it when the instance is dehydrated. - array_buffer_.Reset(); + DCHECK_NULL(internal_field_info_); + internal_field_info_ = InternalFieldInfoBase::New(type()); + internal_field_info_->hrtime_buffer = + hrtime_buffer_.Serialize(context, creator); // Return true because we need to maintain the reference to the binding from // JS land. return true; @@ -553,8 +567,8 @@ bool BindingData::PrepareForSerialization(Local context, InternalFieldInfoBase* BindingData::Serialize(int index) { DCHECK_IS_SNAPSHOT_SLOT(index); - InternalFieldInfo* info = - InternalFieldInfoBase::New(type()); + InternalFieldInfo* info = internal_field_info_; + internal_field_info_ = nullptr; return info; } @@ -566,7 +580,9 @@ void BindingData::Deserialize(Local context, v8::HandleScope scope(context->GetIsolate()); Realm* realm = Realm::GetCurrent(context); // Recreate the buffer in the constructor. - BindingData* binding = realm->AddBindingData(holder); + InternalFieldInfo* casted_info = static_cast(info); + BindingData* binding = + realm->AddBindingData(holder, casted_info); CHECK_NOT_NULL(binding); } From 5c5834190ac52e92546c833438c27a65aa272f3e Mon Sep 17 00:00:00 2001 From: legendecas Date: Fri, 10 Nov 2023 00:21:03 +0800 Subject: [PATCH 014/114] src: create worker per isolate properties PR-URL: https://github.com/nodejs/node/pull/48655 Reviewed-By: Matteo Collina Reviewed-By: Antoine du Hamel Reviewed-By: James M Snell Reviewed-By: Joyee Cheung --- src/node_binding.h | 5 ++-- src/node_messaging.cc | 70 ++++++++++++++++++++++++------------------- src/node_messaging.h | 2 +- 3 files changed, 44 insertions(+), 33 deletions(-) diff --git a/src/node_binding.h b/src/node_binding.h index 9f0692ca4e190b..b09b8a5e521b18 100644 --- a/src/node_binding.h +++ b/src/node_binding.h @@ -37,10 +37,11 @@ static_assert(static_cast(NM_F_LINKED) == V(contextify) \ V(encoding_binding) \ V(fs) \ + V(messaging) \ V(mksnapshot) \ - V(timers) \ - V(process_methods) \ V(performance) \ + V(process_methods) \ + V(timers) \ V(url) \ V(worker) \ NODE_BUILTIN_ICU_BINDINGS(V) diff --git a/src/node_messaging.cc b/src/node_messaging.cc index 47cc80cf551f74..59d2495ddb27bd 100644 --- a/src/node_messaging.cc +++ b/src/node_messaging.cc @@ -30,6 +30,7 @@ using v8::Maybe; using v8::MaybeLocal; using v8::Nothing; using v8::Object; +using v8::ObjectTemplate; using v8::SharedArrayBuffer; using v8::SharedValueConveyor; using v8::String; @@ -717,7 +718,8 @@ MessagePort* MessagePort::New( std::unique_ptr data, std::shared_ptr sibling_group) { Context::Scope context_scope(context); - Local ctor_templ = GetMessagePortConstructorTemplate(env); + Local ctor_templ = + GetMessagePortConstructorTemplate(env->isolate_data()); // Construct a new instance, then assign the listener instance and possibly // the MessagePortData to it. @@ -1116,7 +1118,8 @@ void MessagePort::Stop(const FunctionCallbackInfo& args) { void MessagePort::CheckType(const FunctionCallbackInfo& args) { Environment* env = Environment::GetCurrent(args); args.GetReturnValue().Set( - GetMessagePortConstructorTemplate(env)->HasInstance(args[0])); + GetMessagePortConstructorTemplate(env->isolate_data()) + ->HasInstance(args[0])); } void MessagePort::Drain(const FunctionCallbackInfo& args) { @@ -1193,28 +1196,30 @@ void MessagePort::MemoryInfo(MemoryTracker* tracker) const { tracker->TrackField("emit_message_fn", emit_message_fn_); } -Local GetMessagePortConstructorTemplate(Environment* env) { +Local GetMessagePortConstructorTemplate( + IsolateData* isolate_data) { // Factor generating the MessagePort JS constructor into its own piece // of code, because it is needed early on in the child environment setup. - Local templ = env->message_port_constructor_template(); + Local templ = + isolate_data->message_port_constructor_template(); if (!templ.IsEmpty()) return templ; { - Isolate* isolate = env->isolate(); + Isolate* isolate = isolate_data->isolate(); Local m = NewFunctionTemplate(isolate, MessagePort::New); - m->SetClassName(env->message_port_constructor_string()); + m->SetClassName(isolate_data->message_port_constructor_string()); m->InstanceTemplate()->SetInternalFieldCount( MessagePort::kInternalFieldCount); - m->Inherit(HandleWrap::GetConstructorTemplate(env)); + m->Inherit(HandleWrap::GetConstructorTemplate(isolate_data)); SetProtoMethod(isolate, m, "postMessage", MessagePort::PostMessage); SetProtoMethod(isolate, m, "start", MessagePort::Start); - env->set_message_port_constructor_template(m); + isolate_data->set_message_port_constructor_template(m); } - return GetMessagePortConstructorTemplate(env); + return GetMessagePortConstructorTemplate(isolate_data); } // static @@ -1636,15 +1641,12 @@ static void BroadcastChannel(const FunctionCallbackInfo& args) { } } -static void InitMessaging(Local target, - Local unused, - Local context, - void* priv) { - Environment* env = Environment::GetCurrent(context); - Isolate* isolate = env->isolate(); +static void CreatePerIsolateProperties(IsolateData* isolate_data, + Local target) { + Isolate* isolate = isolate_data->isolate(); { - SetConstructorFunction(context, + SetConstructorFunction(isolate, target, "MessageChannel", NewFunctionTemplate(isolate, MessageChannel)); @@ -1655,31 +1657,36 @@ static void InitMessaging(Local target, t->InstanceTemplate()->SetInternalFieldCount( JSTransferable::kInternalFieldCount); t->SetClassName(OneByteString(isolate, "JSTransferable")); - env->isolate_data()->set_js_transferable_constructor_template(t); + isolate_data->set_js_transferable_constructor_template(t); } - SetConstructorFunction(context, + SetConstructorFunction(isolate, target, - env->message_port_constructor_string(), - GetMessagePortConstructorTemplate(env), - SetConstructorFunctionFlag::NONE); + isolate_data->message_port_constructor_string(), + GetMessagePortConstructorTemplate(isolate_data)); // These are not methods on the MessagePort prototype, because // the browser equivalents do not provide them. - SetMethod(context, target, "stopMessagePort", MessagePort::Stop); - SetMethod(context, target, "checkMessagePort", MessagePort::CheckType); - SetMethod(context, target, "drainMessagePort", MessagePort::Drain); + SetMethod(isolate, target, "stopMessagePort", MessagePort::Stop); + SetMethod(isolate, target, "checkMessagePort", MessagePort::CheckType); + SetMethod(isolate, target, "drainMessagePort", MessagePort::Drain); SetMethod( - context, target, "receiveMessageOnPort", MessagePort::ReceiveMessage); + isolate, target, "receiveMessageOnPort", MessagePort::ReceiveMessage); SetMethod( - context, target, "moveMessagePortToContext", MessagePort::MoveToContext); - SetMethod(context, + isolate, target, "moveMessagePortToContext", MessagePort::MoveToContext); + SetMethod(isolate, target, "setDeserializerCreateObjectFunction", SetDeserializerCreateObjectFunction); - SetMethod(context, target, "broadcastChannel", BroadcastChannel); - SetMethod(context, target, "structuredClone", StructuredClone); + SetMethod(isolate, target, "broadcastChannel", BroadcastChannel); + SetMethod(isolate, target, "structuredClone", StructuredClone); +} +static void CreatePerContextProperties(Local target, + Local unused, + Local context, + void* priv) { + Environment* env = Environment::GetCurrent(context); { Local domexception = GetDOMException(context).ToLocalChecked(); target @@ -1710,6 +1717,9 @@ static void RegisterExternalReferences(ExternalReferenceRegistry* registry) { } // namespace worker } // namespace node -NODE_BINDING_CONTEXT_AWARE_INTERNAL(messaging, node::worker::InitMessaging) +NODE_BINDING_CONTEXT_AWARE_INTERNAL(messaging, + node::worker::CreatePerContextProperties) +NODE_BINDING_PER_ISOLATE_INIT(messaging, + node::worker::CreatePerIsolateProperties) NODE_BINDING_EXTERNAL_REFERENCE(messaging, node::worker::RegisterExternalReferences) diff --git a/src/node_messaging.h b/src/node_messaging.h index a32d477c2e2f79..6dd34b8bd5a407 100644 --- a/src/node_messaging.h +++ b/src/node_messaging.h @@ -379,7 +379,7 @@ class JSTransferable : public BaseObject { }; v8::Local GetMessagePortConstructorTemplate( - Environment* env); + IsolateData* isolate_data); } // namespace worker } // namespace node From 91aa9dd23a4b19e5329b0baee7a220f27aa2da8a Mon Sep 17 00:00:00 2001 From: legendecas Date: Fri, 10 Nov 2023 00:21:06 +0800 Subject: [PATCH 015/114] src: create fs_dir per isolate properties PR-URL: https://github.com/nodejs/node/pull/48655 Reviewed-By: Matteo Collina Reviewed-By: Antoine du Hamel Reviewed-By: James M Snell Reviewed-By: Joyee Cheung --- src/node_binding.h | 1 + src/node_dir.cc | 28 ++++++++++++++++------------ 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/src/node_binding.h b/src/node_binding.h index b09b8a5e521b18..2901231090cce3 100644 --- a/src/node_binding.h +++ b/src/node_binding.h @@ -37,6 +37,7 @@ static_assert(static_cast(NM_F_LINKED) == V(contextify) \ V(encoding_binding) \ V(fs) \ + V(fs_dir) \ V(messaging) \ V(mksnapshot) \ V(performance) \ diff --git a/src/node_dir.cc b/src/node_dir.cc index 10cde6067899c7..21d5b880ccee98 100644 --- a/src/node_dir.cc +++ b/src/node_dir.cc @@ -423,27 +423,29 @@ static void OpenDirSync(const FunctionCallbackInfo& args) { args.GetReturnValue().Set(handle->object().As()); } -void Initialize(Local target, - Local unused, - Local context, - void* priv) { - Environment* env = Environment::GetCurrent(context); - Isolate* isolate = env->isolate(); +void CreatePerIsolateProperties(IsolateData* isolate_data, + Local target) { + Isolate* isolate = isolate_data->isolate(); - SetMethod(context, target, "opendir", OpenDir); - SetMethod(context, target, "opendirSync", OpenDirSync); + SetMethod(isolate, target, "opendir", OpenDir); + SetMethod(isolate, target, "opendirSync", OpenDirSync); // Create FunctionTemplate for DirHandle Local dir = NewFunctionTemplate(isolate, DirHandle::New); - dir->Inherit(AsyncWrap::GetConstructorTemplate(env)); + dir->Inherit(AsyncWrap::GetConstructorTemplate(isolate_data)); SetProtoMethod(isolate, dir, "read", DirHandle::Read); SetProtoMethod(isolate, dir, "close", DirHandle::Close); Local dirt = dir->InstanceTemplate(); dirt->SetInternalFieldCount(DirHandle::kInternalFieldCount); - SetConstructorFunction(context, target, "DirHandle", dir); - env->set_dir_instance_template(dirt); + SetConstructorFunction(isolate, target, "DirHandle", dir); + isolate_data->set_dir_instance_template(dirt); } +void CreatePerContextProperties(Local target, + Local unused, + Local context, + void* priv) {} + void RegisterExternalReferences(ExternalReferenceRegistry* registry) { registry->Register(OpenDir); registry->Register(OpenDirSync); @@ -456,6 +458,8 @@ void RegisterExternalReferences(ExternalReferenceRegistry* registry) { } // end namespace node -NODE_BINDING_CONTEXT_AWARE_INTERNAL(fs_dir, node::fs_dir::Initialize) +NODE_BINDING_CONTEXT_AWARE_INTERNAL(fs_dir, + node::fs_dir::CreatePerContextProperties) +NODE_BINDING_PER_ISOLATE_INIT(fs_dir, node::fs_dir::CreatePerIsolateProperties) NODE_BINDING_EXTERNAL_REFERENCE(fs_dir, node::fs_dir::RegisterExternalReferences) From aadff07e5937da744c795283e14683bb983cf08d Mon Sep 17 00:00:00 2001 From: legendecas Date: Fri, 10 Nov 2023 00:21:08 +0800 Subject: [PATCH 016/114] src: create per isolate proxy env template PR-URL: https://github.com/nodejs/node/pull/48655 Reviewed-By: Matteo Collina Reviewed-By: Antoine du Hamel Reviewed-By: James M Snell Reviewed-By: Joyee Cheung --- src/env.cc | 1 + src/node_env_var.cc | 3 ++- src/node_process.h | 2 +- src/node_realm.cc | 5 +++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/env.cc b/src/env.cc index 4a25309449c8c7..0befcbd6c25570 100644 --- a/src/env.cc +++ b/src/env.cc @@ -501,6 +501,7 @@ void IsolateData::CreateProperties() { binding::CreateInternalBindingTemplates(this); contextify::ContextifyContext::InitializeGlobalTemplates(this); + CreateEnvProxyTemplate(this); } constexpr uint16_t kDefaultCppGCEmebdderID = 0x90de; diff --git a/src/node_env_var.cc b/src/node_env_var.cc index 94936ea1c2bd22..bce7ae07214ddf 100644 --- a/src/node_env_var.cc +++ b/src/node_env_var.cc @@ -456,7 +456,8 @@ static void EnvDefiner(Local property, } } -void CreateEnvProxyTemplate(Isolate* isolate, IsolateData* isolate_data) { +void CreateEnvProxyTemplate(IsolateData* isolate_data) { + Isolate* isolate = isolate_data->isolate(); HandleScope scope(isolate); if (!isolate_data->env_proxy_template().IsEmpty()) return; Local env_proxy_ctor_template = diff --git a/src/node_process.h b/src/node_process.h index c911b3ddd7b78f..ee6e6a81676bd6 100644 --- a/src/node_process.h +++ b/src/node_process.h @@ -15,7 +15,7 @@ class MemoryTracker; class ExternalReferenceRegistry; class Realm; -void CreateEnvProxyTemplate(v8::Isolate* isolate, IsolateData* isolate_data); +void CreateEnvProxyTemplate(IsolateData* isolate_data); // Most of the time, it's best to use `console.error` to write // to the process.stderr stream. However, in some cases, such as diff --git a/src/node_realm.cc b/src/node_realm.cc index 7101b23e347c7c..23fb6bd55213ee 100644 --- a/src/node_realm.cc +++ b/src/node_realm.cc @@ -344,10 +344,11 @@ MaybeLocal PrincipalRealm::BootstrapRealm() { return MaybeLocal(); } + // Setup process.env proxy. Local env_string = FIXED_ONE_BYTE_STRING(isolate_, "env"); Local env_proxy; - CreateEnvProxyTemplate(isolate_, env_->isolate_data()); - if (!env_->env_proxy_template()->NewInstance(context()).ToLocal(&env_proxy) || + if (!isolate_data()->env_proxy_template()->NewInstance(context()).ToLocal( + &env_proxy) || process_object()->Set(context(), env_string, env_proxy).IsNothing()) { return MaybeLocal(); } From bc3f7b540142a238f0b3714a87105b57fd5e900e Mon Sep 17 00:00:00 2001 From: legendecas Date: Fri, 10 Nov 2023 00:21:10 +0800 Subject: [PATCH 017/114] module: remove useCustomLoadersIfPresent flag The flag is always true and can be determined by isLoaderWorker solely. PR-URL: https://github.com/nodejs/node/pull/48655 Reviewed-By: Matteo Collina Reviewed-By: Antoine du Hamel Reviewed-By: James M Snell Reviewed-By: Joyee Cheung --- lib/internal/modules/esm/loader.js | 10 ++++------ lib/internal/process/esm_loader.js | 4 ++-- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/lib/internal/modules/esm/loader.js b/lib/internal/modules/esm/loader.js index 6044765c3709f5..d1ce6f1df1bceb 100644 --- a/lib/internal/modules/esm/loader.js +++ b/lib/internal/modules/esm/loader.js @@ -524,15 +524,13 @@ let emittedLoaderFlagWarning = false; * A loader instance is used as the main entry point for loading ES modules. Currently, this is a singleton; there is * only one used for loading the main module and everything in its dependency graph, though separate instances of this * class might be instantiated as part of bootstrap for other purposes. - * @param {boolean} useCustomLoadersIfPresent If the user has provided loaders via the --loader flag, use them. * @returns {ModuleLoader} */ -function createModuleLoader(useCustomLoadersIfPresent = true) { +function createModuleLoader() { let customizations = null; - if (useCustomLoadersIfPresent && - // Don't spawn a new worker if we're already in a worker thread created by instantiating CustomizedModuleLoader; - // doing so would cause an infinite loop. - !require('internal/modules/esm/utils').isLoaderWorker()) { + // Don't spawn a new worker if we're already in a worker thread created by instantiating CustomizedModuleLoader; + // doing so would cause an infinite loop. + if (!require('internal/modules/esm/utils').isLoaderWorker()) { const userLoaderPaths = getOptionValue('--experimental-loader'); if (userLoaderPaths.length > 0) { if (!emittedLoaderFlagWarning) { diff --git a/lib/internal/process/esm_loader.js b/lib/internal/process/esm_loader.js index 47c909c9e55435..0865d7ceef66b7 100644 --- a/lib/internal/process/esm_loader.js +++ b/lib/internal/process/esm_loader.js @@ -11,10 +11,10 @@ let esmLoader; module.exports = { get esmLoader() { - return esmLoader ??= createModuleLoader(true); + return esmLoader ??= createModuleLoader(); }, async loadESM(callback) { - esmLoader ??= createModuleLoader(true); + esmLoader ??= createModuleLoader(); try { const userImports = getOptionValue('--import'); if (userImports.length > 0) { From c7a7493ca2050b7b6f04956b4245bd844f2b1dcf Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Fri, 10 Nov 2023 00:21:15 +0800 Subject: [PATCH 018/114] module: bootstrap module loaders in shadow realm This bootstraps ESM loaders in the ShadowRealm with `ShadowRealm.prototype.importValue` as its entry point and enables loading ESM and CJS modules in the ShadowRealm. The module is imported without a parent URL and resolved with the current process's working directory. PR-URL: https://github.com/nodejs/node/pull/48655 Reviewed-By: Matteo Collina Reviewed-By: Antoine du Hamel Reviewed-By: James M Snell Reviewed-By: Joyee Cheung --- lib/internal/bootstrap/realm.js | 13 +- lib/internal/bootstrap/shadow_realm.js | 21 ++ lib/internal/main/worker_thread.js | 1 + lib/internal/modules/esm/loader.js | 7 +- lib/internal/modules/esm/utils.js | 43 +++- lib/internal/process/pre_execution.js | 38 +++- src/async_wrap.cc | 22 ++- src/env.cc | 11 +- src/module_wrap.cc | 183 ++++++++++-------- src/module_wrap.h | 13 +- src/node_binding.h | 1 + src/node_errors.h | 4 + src/node_shadow_realm.cc | 34 ++++ .../es-module-shadow-realm/custom-loaders.js | 15 ++ .../es-module-shadow-realm/preload-main.js | 9 + .../es-module-shadow-realm/preload.js | 1 + .../re-export-state-counter.mjs | 3 + .../es-module-shadow-realm/state-counter.mjs | 4 + ...st-shadow-realm-allowed-builtin-modules.js | 21 ++ .../test-shadow-realm-custom-loaders.js | 26 +++ test/parallel/test-shadow-realm-gc-module.js | 20 ++ .../test-shadow-realm-import-value-resolve.js | 28 +++ test/parallel/test-shadow-realm-module.js | 29 +++ .../test-shadow-realm-preload-module.js | 20 ++ 24 files changed, 445 insertions(+), 122 deletions(-) create mode 100644 lib/internal/bootstrap/shadow_realm.js create mode 100644 test/fixtures/es-module-shadow-realm/custom-loaders.js create mode 100644 test/fixtures/es-module-shadow-realm/preload-main.js create mode 100644 test/fixtures/es-module-shadow-realm/preload.js create mode 100644 test/fixtures/es-module-shadow-realm/re-export-state-counter.mjs create mode 100644 test/fixtures/es-module-shadow-realm/state-counter.mjs create mode 100644 test/parallel/test-shadow-realm-allowed-builtin-modules.js create mode 100644 test/parallel/test-shadow-realm-custom-loaders.js create mode 100644 test/parallel/test-shadow-realm-gc-module.js create mode 100644 test/parallel/test-shadow-realm-import-value-resolve.js create mode 100644 test/parallel/test-shadow-realm-module.js create mode 100644 test/parallel/test-shadow-realm-preload-module.js diff --git a/lib/internal/bootstrap/realm.js b/lib/internal/bootstrap/realm.js index c6935c6f7775fc..6034af9a36003c 100644 --- a/lib/internal/bootstrap/realm.js +++ b/lib/internal/bootstrap/realm.js @@ -50,6 +50,8 @@ const { ArrayFrom, + ArrayPrototypeFilter, + ArrayPrototypeIncludes, ArrayPrototypeMap, ArrayPrototypePush, ArrayPrototypeSlice, @@ -215,8 +217,8 @@ const internalBuiltinIds = builtinIds .filter((id) => StringPrototypeStartsWith(id, 'internal/') && id !== selfId); // When --expose-internals is on we'll add the internal builtin ids to these. -const canBeRequiredByUsersList = new SafeSet(publicBuiltinIds); -const canBeRequiredByUsersWithoutSchemeList = +let canBeRequiredByUsersList = new SafeSet(publicBuiltinIds); +let canBeRequiredByUsersWithoutSchemeList = new SafeSet(publicBuiltinIds.filter((id) => !schemelessBlockList.has(id))); /** @@ -269,6 +271,13 @@ class BuiltinModule { } } + static setRealmAllowRequireByUsers(ids) { + canBeRequiredByUsersList = + new SafeSet(ArrayPrototypeFilter(ids, (id) => ArrayPrototypeIncludes(publicBuiltinIds, id))); + canBeRequiredByUsersWithoutSchemeList = + new SafeSet(ArrayPrototypeFilter(ids, (id) => !schemelessBlockList.has(id))); + } + // To be called during pre-execution when --expose-internals is on. // Enables the user-land module loader to access internal modules. static exposeInternals() { diff --git a/lib/internal/bootstrap/shadow_realm.js b/lib/internal/bootstrap/shadow_realm.js new file mode 100644 index 00000000000000..b99502355d9818 --- /dev/null +++ b/lib/internal/bootstrap/shadow_realm.js @@ -0,0 +1,21 @@ +'use strict'; + +// This script sets up the context for shadow realms. + +const { + prepareShadowRealmExecution, +} = require('internal/process/pre_execution'); +const { + BuiltinModule, +} = require('internal/bootstrap/realm'); + +BuiltinModule.setRealmAllowRequireByUsers([ + /** + * The built-in modules exposed in the ShadowRealm must each be providing + * platform capabilities with no authority to cause side effects such as + * I/O or mutation of values that are shared across different realms within + * the same Node.js environment. + */ +]); + +prepareShadowRealmExecution(); diff --git a/lib/internal/main/worker_thread.js b/lib/internal/main/worker_thread.js index 0dda4c760e4acb..c14091ffe09ca7 100644 --- a/lib/internal/main/worker_thread.js +++ b/lib/internal/main/worker_thread.js @@ -136,6 +136,7 @@ port.on('message', (message) => { const isLoaderWorker = doEval === 'internal' && filename === require('internal/modules/esm/utils').loaderWorkerId; + // Disable custom loaders in loader worker. setupUserModules(isLoaderWorker); if (!hasStdin) diff --git a/lib/internal/modules/esm/loader.js b/lib/internal/modules/esm/loader.js index d1ce6f1df1bceb..0694c7ef2b902d 100644 --- a/lib/internal/modules/esm/loader.js +++ b/lib/internal/modules/esm/loader.js @@ -528,9 +528,10 @@ let emittedLoaderFlagWarning = false; */ function createModuleLoader() { let customizations = null; - // Don't spawn a new worker if we're already in a worker thread created by instantiating CustomizedModuleLoader; - // doing so would cause an infinite loop. - if (!require('internal/modules/esm/utils').isLoaderWorker()) { + // Don't spawn a new worker if custom loaders are disabled. For instance, if + // we're already in a worker thread created by instantiating + // CustomizedModuleLoader; doing so would cause an infinite loop. + if (!require('internal/modules/esm/utils').forceDefaultLoader()) { const userLoaderPaths = getOptionValue('--experimental-loader'); if (userLoaderPaths.length > 0) { if (!emittedLoaderFlagWarning) { diff --git a/lib/internal/modules/esm/utils.js b/lib/internal/modules/esm/utils.js index 3fe1daabe98f1d..df15169f68faa1 100644 --- a/lib/internal/modules/esm/utils.js +++ b/lib/internal/modules/esm/utils.js @@ -4,6 +4,7 @@ const { ArrayIsArray, SafeSet, SafeWeakMap, + Symbol, ObjectFreeze, } = primordials; @@ -157,6 +158,26 @@ function registerModule(referrer, registry) { moduleRegistries.set(idSymbol, registry); } +/** + * Registers the ModuleRegistry for dynamic import() calls with a realm + * as the referrer. Similar to {@link registerModule}, but this function + * generates a new id symbol instead of using the one from the referrer + * object. + * @param {globalThis} globalThis The globalThis object of the realm. + * @param {ModuleRegistry} registry + */ +function registerRealm(globalThis, registry) { + let idSymbol = globalThis[host_defined_option_symbol]; + // If the per-realm host-defined options is already registered, do nothing. + if (idSymbol) { + return; + } + // Otherwise, register the per-realm host-defined options. + idSymbol = Symbol('Realm globalThis'); + globalThis[host_defined_option_symbol] = idSymbol; + moduleRegistries.set(idSymbol, registry); +} + /** * Defines the `import.meta` object for a given module. * @param {symbol} symbol - Reference to the module. @@ -192,28 +213,29 @@ async function importModuleDynamicallyCallback(referrerSymbol, specifier, attrib throw new ERR_VM_DYNAMIC_IMPORT_CALLBACK_MISSING(); } -let _isLoaderWorker = false; +let _forceDefaultLoader = false; /** * Initializes handling of ES modules. * This is configured during pre-execution. Specifically it's set to true for * the loader worker in internal/main/worker_thread.js. - * @param {boolean} [isLoaderWorker=false] - A boolean indicating whether the loader is a worker or not. + * @param {boolean} [forceDefaultLoader=false] - A boolean indicating disabling custom loaders. */ -function initializeESM(isLoaderWorker = false) { - _isLoaderWorker = isLoaderWorker; +function initializeESM(forceDefaultLoader = false) { + _forceDefaultLoader = forceDefaultLoader; initializeDefaultConditions(); - // Setup per-isolate callbacks that locate data or callbacks that we keep + // Setup per-realm callbacks that locate data or callbacks that we keep // track of for different ESM modules. setInitializeImportMetaObjectCallback(initializeImportMetaObject); setImportModuleDynamicallyCallback(importModuleDynamicallyCallback); } /** - * Determine whether the current process is a loader worker. - * @returns {boolean} Whether the current process is a loader worker. + * Determine whether custom loaders are disabled and it is forced to use the + * default loader. + * @returns {boolean} */ -function isLoaderWorker() { - return _isLoaderWorker; +function forceDefaultLoader() { + return _forceDefaultLoader; } /** @@ -251,10 +273,11 @@ async function initializeHooks() { module.exports = { registerModule, + registerRealm, initializeESM, initializeHooks, getDefaultConditions, getConditionsSet, loaderWorkerId: 'internal/modules/esm/worker', - isLoaderWorker, + forceDefaultLoader, }; diff --git a/lib/internal/process/pre_execution.js b/lib/internal/process/pre_execution.js index c535f8e8ed8a5d..1cf204a3f7d3e6 100644 --- a/lib/internal/process/pre_execution.js +++ b/lib/internal/process/pre_execution.js @@ -67,6 +67,26 @@ function prepareWorkerThreadExecution() { }); } +function prepareShadowRealmExecution() { + const { registerRealm } = require('internal/modules/esm/utils'); + // Patch the process object with legacy properties and normalizations. + // Do not expand argv1 as it is not available in ShadowRealm. + patchProcessObject(false); + setupDebugEnv(); + + // Disable custom loaders in ShadowRealm. + setupUserModules(true); + registerRealm(globalThis, { + __proto__: null, + importModuleDynamically: (specifier, _referrer, attributes) => { + // The handler for `ShadowRealm.prototype.importValue`. + const { esmLoader } = require('internal/process/esm_loader'); + // `parentURL` is not set in the case of a ShadowRealm top-level import. + return esmLoader.import(specifier, undefined, attributes); + }, + }); +} + function prepareExecution(options) { const { expandArgv1, initializeModules, isMainThread } = options; @@ -161,16 +181,17 @@ function setupSymbolDisposePolyfill() { } } -function setupUserModules(isLoaderWorker = false) { +function setupUserModules(forceDefaultLoader = false) { initializeCJSLoader(); - initializeESMLoader(isLoaderWorker); + initializeESMLoader(forceDefaultLoader); const CJSLoader = require('internal/modules/cjs/loader'); assert(!CJSLoader.hasLoadedAnyUserCJSModule); - // Loader workers are responsible for doing this themselves. - if (isLoaderWorker) { - return; + // Do not enable preload modules if custom loaders are disabled. + // For example, loader workers are responsible for doing this themselves. + // And preload modules are not supported in ShadowRealm as well. + if (!forceDefaultLoader) { + loadPreloadModules(); } - loadPreloadModules(); // Need to be done after --require setup. initializeFrozenIntrinsics(); } @@ -701,9 +722,9 @@ function initializeCJSLoader() { initializeCJS(); } -function initializeESMLoader(isLoaderWorker) { +function initializeESMLoader(forceDefaultLoader) { const { initializeESM } = require('internal/modules/esm/utils'); - initializeESM(isLoaderWorker); + initializeESM(forceDefaultLoader); // Patch the vm module when --experimental-vm-modules is on. // Please update the comments in vm.js when this block changes. @@ -779,6 +800,7 @@ module.exports = { setupUserModules, prepareMainThreadExecution, prepareWorkerThreadExecution, + prepareShadowRealmExecution, markBootstrapComplete, loadPreloadModules, initializeFrozenIntrinsics, diff --git a/src/async_wrap.cc b/src/async_wrap.cc index 42cddc52aed285..8b784cddf41603 100644 --- a/src/async_wrap.cc +++ b/src/async_wrap.cc @@ -372,8 +372,9 @@ void AsyncWrap::CreatePerContextProperties(Local target, Local unused, Local context, void* priv) { - Environment* env = Environment::GetCurrent(context); - Isolate* isolate = env->isolate(); + Realm* realm = Realm::GetCurrent(context); + Environment* env = realm->env(); + Isolate* isolate = realm->isolate(); HandleScope scope(isolate); PropertyAttribute ReadOnlyDontDelete = @@ -446,13 +447,16 @@ void AsyncWrap::CreatePerContextProperties(Local target, #undef FORCE_SET_TARGET_FIELD - env->set_async_hooks_init_function(Local()); - env->set_async_hooks_before_function(Local()); - env->set_async_hooks_after_function(Local()); - env->set_async_hooks_destroy_function(Local()); - env->set_async_hooks_promise_resolve_function(Local()); - env->set_async_hooks_callback_trampoline(Local()); - env->set_async_hooks_binding(target); + // TODO(legendecas): async hook functions are not realm-aware yet. + // This simply avoid overriding principal realm's functions when a + // ShadowRealm initializes the binding. + realm->set_async_hooks_init_function(Local()); + realm->set_async_hooks_before_function(Local()); + realm->set_async_hooks_after_function(Local()); + realm->set_async_hooks_destroy_function(Local()); + realm->set_async_hooks_promise_resolve_function(Local()); + realm->set_async_hooks_callback_trampoline(Local()); + realm->set_async_hooks_binding(target); } void AsyncWrap::RegisterExternalReferences( diff --git a/src/env.cc b/src/env.cc index 0befcbd6c25570..4bfdfae2354741 100644 --- a/src/env.cc +++ b/src/env.cc @@ -1651,10 +1651,13 @@ void AsyncHooks::MemoryInfo(MemoryTracker* tracker) const { void AsyncHooks::grow_async_ids_stack() { async_ids_stack_.reserve(async_ids_stack_.Length() * 3); - env()->async_hooks_binding()->Set( - env()->context(), - env()->async_ids_stack_string(), - async_ids_stack_.GetJSArray()).Check(); + env() + ->principal_realm() + ->async_hooks_binding() + ->Set(env()->context(), + env()->async_ids_stack_string(), + async_ids_stack_.GetJSArray()) + .Check(); } void AsyncHooks::FailWithCorruptedAsyncStack(double expected_async_id) { diff --git a/src/module_wrap.cc b/src/module_wrap.cc index 1d61fe5f0522ba..bad60d02dfe953 100644 --- a/src/module_wrap.cc +++ b/src/module_wrap.cc @@ -39,6 +39,7 @@ using v8::MicrotaskQueue; using v8::Module; using v8::ModuleRequest; using v8::Object; +using v8::ObjectTemplate; using v8::PrimitiveArray; using v8::Promise; using v8::ScriptCompiler; @@ -49,15 +50,17 @@ using v8::UnboundModuleScript; using v8::Undefined; using v8::Value; -ModuleWrap::ModuleWrap(Environment* env, +ModuleWrap::ModuleWrap(Realm* realm, Local object, Local module, Local url, Local context_object, Local synthetic_evaluation_step) - : BaseObject(env, object), - module_(env->isolate(), module), + : BaseObject(realm, object), + module_(realm->isolate(), module), module_hash_(module->GetIdentityHash()) { + realm->env()->hash_to_module_map.emplace(module_hash_, this); + object->SetInternalField(kModuleSlot, module); object->SetInternalField(kURLSlot, url); object->SetInternalField(kSyntheticEvaluationStepsSlot, @@ -72,7 +75,6 @@ ModuleWrap::ModuleWrap(Environment* env, } ModuleWrap::~ModuleWrap() { - HandleScope scope(env()->isolate()); auto range = env()->hash_to_module_map.equal_range(module_hash_); for (auto it = range.first; it != range.second; ++it) { if (it->second == this) { @@ -107,8 +109,8 @@ void ModuleWrap::New(const FunctionCallbackInfo& args) { CHECK(args.IsConstructCall()); CHECK_GE(args.Length(), 3); - Environment* env = Environment::GetCurrent(args); - Isolate* isolate = env->isolate(); + Realm* realm = Realm::GetCurrent(args); + Isolate* isolate = realm->isolate(); Local that = args.This(); @@ -122,7 +124,7 @@ void ModuleWrap::New(const FunctionCallbackInfo& args) { } else { CHECK(args[1]->IsObject()); contextify_context = ContextifyContext::ContextFromContextifiedSandbox( - env, args[1].As()); + realm->env(), args[1].As()); CHECK_NOT_NULL(contextify_context); context = contextify_context->context(); } @@ -148,8 +150,8 @@ void ModuleWrap::New(const FunctionCallbackInfo& args) { Local id_symbol = Symbol::New(isolate, url); host_defined_options->Set(isolate, HostDefinedOptions::kID, id_symbol); - ShouldNotAbortOnUncaughtScope no_abort_scope(env); - TryCatchScope try_catch(env); + ShouldNotAbortOnUncaughtScope no_abort_scope(realm->env()); + TryCatchScope try_catch(realm->env()); Local module; @@ -206,7 +208,9 @@ void ModuleWrap::New(const FunctionCallbackInfo& args) { if (try_catch.HasCaught() && !try_catch.HasTerminated()) { CHECK(!try_catch.Message().IsEmpty()); CHECK(!try_catch.Exception().IsEmpty()); - AppendExceptionLine(env, try_catch.Exception(), try_catch.Message(), + AppendExceptionLine(realm->env(), + try_catch.Exception(), + try_catch.Message(), ErrorHandlingMode::MODULE_ERROR); try_catch.ReThrow(); } @@ -215,18 +219,21 @@ void ModuleWrap::New(const FunctionCallbackInfo& args) { if (options == ScriptCompiler::kConsumeCodeCache && source.GetCachedData()->rejected) { THROW_ERR_VM_MODULE_CACHED_DATA_REJECTED( - env, "cachedData buffer was rejected"); + realm, "cachedData buffer was rejected"); try_catch.ReThrow(); return; } } } - if (!that->Set(context, env->url_string(), url).FromMaybe(false)) { + if (!that->Set(context, realm->isolate_data()->url_string(), url) + .FromMaybe(false)) { return; } - if (that->SetPrivate(context, env->host_defined_option_symbol(), id_symbol) + if (that->SetPrivate(context, + realm->isolate_data()->host_defined_option_symbol(), + id_symbol) .IsNothing()) { return; } @@ -236,28 +243,26 @@ void ModuleWrap::New(const FunctionCallbackInfo& args) { // be stored in an internal field. Local context_object = context->GetExtrasBindingObject(); Local synthetic_evaluation_step = - synthetic ? args[3] : Undefined(env->isolate()).As(); + synthetic ? args[3] : Undefined(realm->isolate()).As(); ModuleWrap* obj = new ModuleWrap( - env, that, module, url, context_object, synthetic_evaluation_step); + realm, that, module, url, context_object, synthetic_evaluation_step); obj->contextify_context_ = contextify_context; - env->hash_to_module_map.emplace(module->GetIdentityHash(), obj); - that->SetIntegrityLevel(context, IntegrityLevel::kFrozen); args.GetReturnValue().Set(that); } static Local createImportAttributesContainer( - Environment* env, Isolate* isolate, Local raw_attributes) { + Realm* realm, Isolate* isolate, Local raw_attributes) { Local attributes = - Object::New(isolate, v8::Null(env->isolate()), nullptr, nullptr, 0); + Object::New(isolate, v8::Null(isolate), nullptr, nullptr, 0); for (int i = 0; i < raw_attributes->Length(); i += 3) { attributes - ->Set(env->context(), - raw_attributes->Get(env->context(), i).As(), - raw_attributes->Get(env->context(), i + 1).As()) + ->Set(realm->context(), + raw_attributes->Get(realm->context(), i).As(), + raw_attributes->Get(realm->context(), i + 1).As()) .ToChecked(); } @@ -265,7 +270,7 @@ static Local createImportAttributesContainer( } void ModuleWrap::Link(const FunctionCallbackInfo& args) { - Environment* env = Environment::GetCurrent(args); + Realm* realm = Realm::GetCurrent(args); Isolate* isolate = args.GetIsolate(); CHECK_EQ(args.Length(), 1); @@ -292,14 +297,14 @@ void ModuleWrap::Link(const FunctionCallbackInfo& args) { // call the dependency resolve callbacks for (int i = 0; i < module_requests_length; i++) { Local module_request = - module_requests->Get(env->context(), i).As(); + module_requests->Get(realm->context(), i).As(); Local specifier = module_request->GetSpecifier(); - Utf8Value specifier_utf8(env->isolate(), specifier); + Utf8Value specifier_utf8(realm->isolate(), specifier); std::string specifier_std(*specifier_utf8, specifier_utf8.length()); Local raw_attributes = module_request->GetImportAssertions(); Local attributes = - createImportAttributesContainer(env, isolate, raw_attributes); + createImportAttributesContainer(realm, isolate, raw_attributes); Local argv[] = { specifier, @@ -315,11 +320,11 @@ void ModuleWrap::Link(const FunctionCallbackInfo& args) { maybe_resolve_return_value.ToLocalChecked(); if (!resolve_return_value->IsPromise()) { THROW_ERR_VM_MODULE_LINK_FAILURE( - env, "request for '%s' did not return promise", specifier_std); + realm, "request for '%s' did not return promise", specifier_std); return; } Local resolve_promise = resolve_return_value.As(); - obj->resolve_cache_[specifier_std].Reset(env->isolate(), resolve_promise); + obj->resolve_cache_[specifier_std].Reset(isolate, resolve_promise); promises[i] = resolve_promise; } @@ -329,13 +334,13 @@ void ModuleWrap::Link(const FunctionCallbackInfo& args) { } void ModuleWrap::Instantiate(const FunctionCallbackInfo& args) { - Environment* env = Environment::GetCurrent(args); + Realm* realm = Realm::GetCurrent(args); Isolate* isolate = args.GetIsolate(); ModuleWrap* obj; ASSIGN_OR_RETURN_UNWRAP(&obj, args.This()); Local context = obj->context(); Local module = obj->module_.Get(isolate); - TryCatchScope try_catch(env); + TryCatchScope try_catch(realm->env()); USE(module->InstantiateModule(context, ResolveModuleCallback)); // clear resolve cache on instantiate @@ -344,7 +349,9 @@ void ModuleWrap::Instantiate(const FunctionCallbackInfo& args) { if (try_catch.HasCaught() && !try_catch.HasTerminated()) { CHECK(!try_catch.Message().IsEmpty()); CHECK(!try_catch.Exception().IsEmpty()); - AppendExceptionLine(env, try_catch.Exception(), try_catch.Message(), + AppendExceptionLine(realm->env(), + try_catch.Exception(), + try_catch.Message(), ErrorHandlingMode::MODULE_ERROR); try_catch.ReThrow(); return; @@ -352,8 +359,8 @@ void ModuleWrap::Instantiate(const FunctionCallbackInfo& args) { } void ModuleWrap::Evaluate(const FunctionCallbackInfo& args) { - Environment* env = Environment::GetCurrent(args); - Isolate* isolate = env->isolate(); + Realm* realm = Realm::GetCurrent(args); + Isolate* isolate = realm->isolate(); ModuleWrap* obj; ASSIGN_OR_RETURN_UNWRAP(&obj, args.This()); Local context = obj->context(); @@ -368,14 +375,14 @@ void ModuleWrap::Evaluate(const FunctionCallbackInfo& args) { CHECK_EQ(args.Length(), 2); CHECK(args[0]->IsNumber()); - int64_t timeout = args[0]->IntegerValue(env->context()).FromJust(); + int64_t timeout = args[0]->IntegerValue(realm->context()).FromJust(); CHECK(args[1]->IsBoolean()); bool break_on_sigint = args[1]->IsTrue(); - ShouldNotAbortOnUncaughtScope no_abort_scope(env); - TryCatchScope try_catch(env); - Isolate::SafeForTerminationScope safe_for_termination(env->isolate()); + ShouldNotAbortOnUncaughtScope no_abort_scope(realm->env()); + TryCatchScope try_catch(realm->env()); + Isolate::SafeForTerminationScope safe_for_termination(isolate); bool timed_out = false; bool received_signal = false; @@ -406,16 +413,15 @@ void ModuleWrap::Evaluate(const FunctionCallbackInfo& args) { // Convert the termination exception into a regular exception. if (timed_out || received_signal) { - if (!env->is_main_thread() && env->is_stopping()) - return; - env->isolate()->CancelTerminateExecution(); + if (!realm->env()->is_main_thread() && realm->env()->is_stopping()) return; + isolate->CancelTerminateExecution(); // It is possible that execution was terminated by another timeout in // which this timeout is nested, so check whether one of the watchdogs // from this invocation is responsible for termination. if (timed_out) { - THROW_ERR_SCRIPT_EXECUTION_TIMEOUT(env, timeout); + THROW_ERR_SCRIPT_EXECUTION_TIMEOUT(realm->env(), timeout); } else if (received_signal) { - THROW_ERR_SCRIPT_EXECUTION_INTERRUPTED(env); + THROW_ERR_SCRIPT_EXECUTION_INTERRUPTED(realm->env()); } } @@ -429,7 +435,7 @@ void ModuleWrap::Evaluate(const FunctionCallbackInfo& args) { } void ModuleWrap::GetNamespace(const FunctionCallbackInfo& args) { - Environment* env = Environment::GetCurrent(args); + Realm* realm = Realm::GetCurrent(args); Isolate* isolate = args.GetIsolate(); ModuleWrap* obj; ASSIGN_OR_RETURN_UNWRAP(&obj, args.This()); @@ -439,7 +445,7 @@ void ModuleWrap::GetNamespace(const FunctionCallbackInfo& args) { switch (module->GetStatus()) { case v8::Module::Status::kUninstantiated: case v8::Module::Status::kInstantiating: - return env->ThrowError( + return realm->env()->ThrowError( "cannot get namespace, module has not been instantiated"); case v8::Module::Status::kInstantiated: case v8::Module::Status::kEvaluating: @@ -466,11 +472,11 @@ void ModuleWrap::GetStatus(const FunctionCallbackInfo& args) { void ModuleWrap::GetStaticDependencySpecifiers( const FunctionCallbackInfo& args) { - Environment* env = Environment::GetCurrent(args); + Realm* realm = Realm::GetCurrent(args); ModuleWrap* obj; ASSIGN_OR_RETURN_UNWRAP(&obj, args.This()); - Local module = obj->module_.Get(env->isolate()); + Local module = obj->module_.Get(realm->isolate()); Local module_requests = module->GetModuleRequests(); int count = module_requests->Length(); @@ -479,12 +485,12 @@ void ModuleWrap::GetStaticDependencySpecifiers( for (int i = 0; i < count; i++) { Local module_request = - module_requests->Get(env->context(), i).As(); + module_requests->Get(realm->context(), i).As(); specifiers[i] = module_request->GetSpecifier(); } args.GetReturnValue().Set( - Array::New(env->isolate(), specifiers.out(), count)); + Array::New(realm->isolate(), specifiers.out(), count)); } void ModuleWrap::GetError(const FunctionCallbackInfo& args) { @@ -501,15 +507,13 @@ MaybeLocal ModuleWrap::ResolveModuleCallback( Local specifier, Local import_attributes, Local referrer) { + Isolate* isolate = context->GetIsolate(); Environment* env = Environment::GetCurrent(context); if (env == nullptr) { - Isolate* isolate = context->GetIsolate(); THROW_ERR_EXECUTION_ENVIRONMENT_NOT_AVAILABLE(isolate); return MaybeLocal(); } - Isolate* isolate = env->isolate(); - Utf8Value specifier_utf8(isolate, specifier); std::string specifier_std(*specifier_utf8, specifier_utf8.length()); @@ -559,11 +563,16 @@ static MaybeLocal ImportModuleDynamically( THROW_ERR_EXECUTION_ENVIRONMENT_NOT_AVAILABLE(isolate); return MaybeLocal(); } + Realm* realm = Realm::GetCurrent(context); + if (realm == nullptr) { + // Fallback to the principal realm if it's in a vm context. + realm = env->principal_realm(); + } EscapableHandleScope handle_scope(isolate); Local import_callback = - env->host_import_module_dynamically_callback(); + realm->host_import_module_dynamically_callback(); Local id; Local options = host_defined_options.As(); @@ -579,7 +588,7 @@ static MaybeLocal ImportModuleDynamically( } Local attributes = - createImportAttributesContainer(env, isolate, import_attributes); + createImportAttributesContainer(realm, isolate, import_attributes); Local import_args[] = { id, @@ -603,13 +612,13 @@ static MaybeLocal ImportModuleDynamically( void ModuleWrap::SetImportModuleDynamicallyCallback( const FunctionCallbackInfo& args) { Isolate* isolate = args.GetIsolate(); - Environment* env = Environment::GetCurrent(args); + Realm* realm = Realm::GetCurrent(args); HandleScope handle_scope(isolate); CHECK_EQ(args.Length(), 1); CHECK(args[0]->IsFunction()); Local import_callback = args[0].As(); - env->set_host_import_module_dynamically_callback(import_callback); + realm->set_host_import_module_dynamically_callback(import_callback); isolate->SetHostImportModuleDynamicallyCallback(ImportModuleDynamically); } @@ -624,10 +633,15 @@ void ModuleWrap::HostInitializeImportMetaObjectCallback( if (module_wrap == nullptr) { return; } + Realm* realm = Realm::GetCurrent(context); + if (realm == nullptr) { + // Fallback to the principal realm if it's in a vm context. + realm = env->principal_realm(); + } Local wrap = module_wrap->object(); Local callback = - env->host_initialize_import_meta_object_callback(); + realm->host_initialize_import_meta_object_callback(); Local id; if (!wrap->GetPrivate(context, env->host_defined_option_symbol()) .ToLocal(&id)) { @@ -637,7 +651,7 @@ void ModuleWrap::HostInitializeImportMetaObjectCallback( Local args[] = {id, meta}; TryCatchScope try_catch(env); USE(callback->Call( - context, Undefined(env->isolate()), arraysize(args), args)); + context, Undefined(realm->isolate()), arraysize(args), args)); if (try_catch.HasCaught() && !try_catch.HasTerminated()) { try_catch.ReThrow(); } @@ -645,13 +659,13 @@ void ModuleWrap::HostInitializeImportMetaObjectCallback( void ModuleWrap::SetInitializeImportMetaObjectCallback( const FunctionCallbackInfo& args) { - Environment* env = Environment::GetCurrent(args); - Isolate* isolate = env->isolate(); + Realm* realm = Realm::GetCurrent(args); + Isolate* isolate = realm->isolate(); CHECK_EQ(args.Length(), 1); CHECK(args[0]->IsFunction()); Local import_meta_callback = args[0].As(); - env->set_host_initialize_import_meta_object_callback(import_meta_callback); + realm->set_host_initialize_import_meta_object_callback(import_meta_callback); isolate->SetHostInitializeImportMetaObjectCallback( HostInitializeImportMetaObjectCallback); @@ -742,12 +756,9 @@ void ModuleWrap::CreateCachedData(const FunctionCallbackInfo& args) { } } -void ModuleWrap::Initialize(Local target, - Local unused, - Local context, - void* priv) { - Environment* env = Environment::GetCurrent(context); - Isolate* isolate = env->isolate(); +void ModuleWrap::CreatePerIsolateProperties(IsolateData* isolate_data, + Local target) { + Isolate* isolate = isolate_data->isolate(); Local tpl = NewFunctionTemplate(isolate, New); tpl->InstanceTemplate()->SetInternalFieldCount( @@ -767,28 +778,36 @@ void ModuleWrap::Initialize(Local target, "getStaticDependencySpecifiers", GetStaticDependencySpecifiers); - SetConstructorFunction(context, target, "ModuleWrap", tpl); + SetConstructorFunction(isolate, target, "ModuleWrap", tpl); - SetMethod(context, + SetMethod(isolate, target, "setImportModuleDynamicallyCallback", SetImportModuleDynamicallyCallback); - SetMethod(context, + SetMethod(isolate, target, "setInitializeImportMetaObjectCallback", SetInitializeImportMetaObjectCallback); +} +void ModuleWrap::CreatePerContextProperties(Local target, + Local unused, + Local context, + void* priv) { + Realm* realm = Realm::GetCurrent(context); + Isolate* isolate = realm->isolate(); #define V(name) \ - target->Set(context, \ - FIXED_ONE_BYTE_STRING(env->isolate(), #name), \ - Integer::New(env->isolate(), Module::Status::name)) \ - .FromJust() - V(kUninstantiated); - V(kInstantiating); - V(kInstantiated); - V(kEvaluating); - V(kEvaluated); - V(kErrored); + target \ + ->Set(context, \ + FIXED_ONE_BYTE_STRING(isolate, #name), \ + Integer::New(isolate, Module::Status::name)) \ + .FromJust() + V(kUninstantiated); + V(kInstantiating); + V(kInstantiated); + V(kEvaluating); + V(kEvaluated); + V(kErrored); #undef V } @@ -812,7 +831,9 @@ void ModuleWrap::RegisterExternalReferences( } // namespace loader } // namespace node -NODE_BINDING_CONTEXT_AWARE_INTERNAL(module_wrap, - node::loader::ModuleWrap::Initialize) +NODE_BINDING_CONTEXT_AWARE_INTERNAL( + module_wrap, node::loader::ModuleWrap::CreatePerContextProperties) +NODE_BINDING_PER_ISOLATE_INIT( + module_wrap, node::loader::ModuleWrap::CreatePerIsolateProperties) NODE_BINDING_EXTERNAL_REFERENCE( module_wrap, node::loader::ModuleWrap::RegisterExternalReferences) diff --git a/src/module_wrap.h b/src/module_wrap.h index 1fc801edced9c5..e17048357feca2 100644 --- a/src/module_wrap.h +++ b/src/module_wrap.h @@ -10,6 +10,7 @@ namespace node { +class IsolateData; class Environment; class ExternalReferenceRegistry; @@ -40,10 +41,12 @@ class ModuleWrap : public BaseObject { kInternalFieldCount }; - static void Initialize(v8::Local target, - v8::Local unused, - v8::Local context, - void* priv); + static void CreatePerIsolateProperties(IsolateData* isolate_data, + v8::Local target); + static void CreatePerContextProperties(v8::Local target, + v8::Local unused, + v8::Local context, + void* priv); static void RegisterExternalReferences(ExternalReferenceRegistry* registry); static void HostInitializeImportMetaObjectCallback( v8::Local context, @@ -66,7 +69,7 @@ class ModuleWrap : public BaseObject { } private: - ModuleWrap(Environment* env, + ModuleWrap(Realm* realm, v8::Local object, v8::Local module, v8::Local url, diff --git a/src/node_binding.h b/src/node_binding.h index 2901231090cce3..7256bf2bbcf732 100644 --- a/src/node_binding.h +++ b/src/node_binding.h @@ -40,6 +40,7 @@ static_assert(static_cast(NM_F_LINKED) == V(fs_dir) \ V(messaging) \ V(mksnapshot) \ + V(module_wrap) \ V(performance) \ V(process_methods) \ V(timers) \ diff --git a/src/node_errors.h b/src/node_errors.h index 0f4a2d0cc6eaaf..e804c250ab169a 100644 --- a/src/node_errors.h +++ b/src/node_errors.h @@ -123,6 +123,10 @@ void AppendExceptionLine(Environment* env, inline void THROW_##code( \ Environment* env, const char* format, Args&&... args) { \ THROW_##code(env->isolate(), format, std::forward(args)...); \ + } \ + template \ + inline void THROW_##code(Realm* realm, const char* format, Args&&... args) { \ + THROW_##code(realm->isolate(), format, std::forward(args)...); \ } ERRORS_WITH_CODE(V) #undef V diff --git a/src/node_shadow_realm.cc b/src/node_shadow_realm.cc index 1cf0a57617b8b2..e7199e18756521 100644 --- a/src/node_shadow_realm.cc +++ b/src/node_shadow_realm.cc @@ -1,6 +1,7 @@ #include "node_shadow_realm.h" #include "env-inl.h" #include "node_errors.h" +#include "node_process.h" namespace node { namespace shadow_realm { @@ -9,6 +10,8 @@ using v8::EscapableHandleScope; using v8::HandleScope; using v8::Local; using v8::MaybeLocal; +using v8::Object; +using v8::String; using v8::Value; using TryCatchScope = node::errors::TryCatchScope; @@ -16,6 +19,11 @@ using TryCatchScope = node::errors::TryCatchScope; // static ShadowRealm* ShadowRealm::New(Environment* env) { ShadowRealm* realm = new ShadowRealm(env); + // TODO(legendecas): required by node::PromiseRejectCallback. + // Remove this once promise rejection doesn't need to be handled across + // realms. + realm->context()->SetSecurityToken( + env->principal_realm()->context()->GetSecurityToken()); // We do not expect the realm bootstrapping to throw any // exceptions. If it does, exit the current Node.js instance. @@ -32,6 +40,10 @@ MaybeLocal HostCreateShadowRealmContextCallback( Local initiator_context) { Environment* env = Environment::GetCurrent(initiator_context); EscapableHandleScope scope(env->isolate()); + + // We do not expect the realm bootstrapping to throw any + // exceptions. If it does, exit the current Node.js instance. + TryCatchScope try_catch(env, TryCatchScope::CatchMode::kFatal); ShadowRealm* realm = ShadowRealm::New(env); if (realm != nullptr) { return scope.Escape(realm->context()); @@ -137,6 +149,28 @@ v8::MaybeLocal ShadowRealm::BootstrapRealm() { } } + // The process object is not exposed globally in ShadowRealm yet. + // However, the process properties need to be setup for built-in modules. + // Specifically, process.cwd() is needed by the ESM loader. + if (ExecuteBootstrapper( + "internal/bootstrap/switches/does_not_own_process_state") + .IsEmpty()) { + return MaybeLocal(); + } + + // Setup process.env proxy. + Local env_string = FIXED_ONE_BYTE_STRING(isolate_, "env"); + Local env_proxy; + if (!isolate_data()->env_proxy_template()->NewInstance(context()).ToLocal( + &env_proxy) || + process_object()->Set(context(), env_string, env_proxy).IsNothing()) { + return MaybeLocal(); + } + + if (ExecuteBootstrapper("internal/bootstrap/shadow_realm").IsEmpty()) { + return MaybeLocal(); + } + return v8::True(isolate_); } diff --git a/test/fixtures/es-module-shadow-realm/custom-loaders.js b/test/fixtures/es-module-shadow-realm/custom-loaders.js new file mode 100644 index 00000000000000..bf4402250cc4f8 --- /dev/null +++ b/test/fixtures/es-module-shadow-realm/custom-loaders.js @@ -0,0 +1,15 @@ +// This fixture is used to test that custom loaders are not enabled in the ShadowRealm. + +'use strict'; +const assert = require('assert'); + +async function workInChildProcess() { + // Assert that the process is running with a custom loader. + const moduleNamespace = await import('file:///42.mjs'); + assert.strictEqual(moduleNamespace.default, 42); + + const realm = new ShadowRealm(); + await assert.rejects(realm.importValue('file:///42.mjs', 'default'), TypeError); +} + +workInChildProcess(); diff --git a/test/fixtures/es-module-shadow-realm/preload-main.js b/test/fixtures/es-module-shadow-realm/preload-main.js new file mode 100644 index 00000000000000..4258b012ad6139 --- /dev/null +++ b/test/fixtures/es-module-shadow-realm/preload-main.js @@ -0,0 +1,9 @@ +// This fixture is used to test that --require preload modules are not enabled in the ShadowRealm. + +'use strict'; +const assert = require('assert'); + +assert.strictEqual(globalThis.preload, 42); +const realm = new ShadowRealm(); +const value = realm.evaluate(`globalThis.preload`); +assert.strictEqual(value, undefined); diff --git a/test/fixtures/es-module-shadow-realm/preload.js b/test/fixtures/es-module-shadow-realm/preload.js new file mode 100644 index 00000000000000..dbbcb65e5a17e7 --- /dev/null +++ b/test/fixtures/es-module-shadow-realm/preload.js @@ -0,0 +1 @@ +globalThis.preload = 42; diff --git a/test/fixtures/es-module-shadow-realm/re-export-state-counter.mjs b/test/fixtures/es-module-shadow-realm/re-export-state-counter.mjs new file mode 100644 index 00000000000000..50a6aa3fe1e5b1 --- /dev/null +++ b/test/fixtures/es-module-shadow-realm/re-export-state-counter.mjs @@ -0,0 +1,3 @@ +// This module verifies that the module specifier is resolved relative to the +// current module and not the current working directory in the ShadowRealm. +export { getCounter } from "./state-counter.mjs"; diff --git a/test/fixtures/es-module-shadow-realm/state-counter.mjs b/test/fixtures/es-module-shadow-realm/state-counter.mjs new file mode 100644 index 00000000000000..c547658bf455ba --- /dev/null +++ b/test/fixtures/es-module-shadow-realm/state-counter.mjs @@ -0,0 +1,4 @@ +let counter = 0; +export const getCounter = () => { + return counter++; +}; diff --git a/test/parallel/test-shadow-realm-allowed-builtin-modules.js b/test/parallel/test-shadow-realm-allowed-builtin-modules.js new file mode 100644 index 00000000000000..2aa550ac7bb55b --- /dev/null +++ b/test/parallel/test-shadow-realm-allowed-builtin-modules.js @@ -0,0 +1,21 @@ +// Flags: --experimental-shadow-realm +'use strict'; +const common = require('../common'); +const assert = require('assert'); + +async function main() { + // Verifies that builtin modules can not be imported in the ShadowRealm. + const realm = new ShadowRealm(); + // The error object created inside the ShadowRealm with the error code + // property is not copied on the realm boundary. Only the error message + // is copied. Simply check the error message here. + await assert.rejects(realm.importValue('fs', 'readFileSync'), { + message: /Cannot find package 'fs'/, + }); + // As above, we can only validate the error message, not the error code. + await assert.rejects(realm.importValue('node:fs', 'readFileSync'), { + message: /No such built-in module: node:fs/, + }); +} + +main().then(common.mustCall()); diff --git a/test/parallel/test-shadow-realm-custom-loaders.js b/test/parallel/test-shadow-realm-custom-loaders.js new file mode 100644 index 00000000000000..80cda74bb88940 --- /dev/null +++ b/test/parallel/test-shadow-realm-custom-loaders.js @@ -0,0 +1,26 @@ +'use strict'; +const common = require('../common'); +const fixtures = require('../common/fixtures'); +const assert = require('assert'); + +const commonArgs = [ + '--experimental-shadow-realm', + '--no-warnings', +]; + +async function main() { + // Verifies that custom loaders are not enabled in the ShadowRealm. + const child = await common.spawnPromisified(process.execPath, [ + ...commonArgs, + '--experimental-loader', + fixtures.fileURL('es-module-loaders', 'loader-resolve-shortcircuit.mjs'), + '--experimental-loader', + fixtures.fileURL('es-module-loaders', 'loader-load-foo-or-42.mjs'), + fixtures.path('es-module-shadow-realm', 'custom-loaders.js'), + ]); + + assert.strictEqual(child.stderr, ''); + assert.strictEqual(child.code, 0); +} + +main().then(common.mustCall()); diff --git a/test/parallel/test-shadow-realm-gc-module.js b/test/parallel/test-shadow-realm-gc-module.js new file mode 100644 index 00000000000000..7f822bdd52fe1d --- /dev/null +++ b/test/parallel/test-shadow-realm-gc-module.js @@ -0,0 +1,20 @@ +// Flags: --experimental-shadow-realm --max-old-space-size=20 +'use strict'; + +/** + * Verifying modules imported by ShadowRealm instances can be correctly + * garbage collected. + */ + +const common = require('../common'); +const fixtures = require('../common/fixtures'); + +async function main() { + const mod = fixtures.fileURL('es-module-shadow-realm', 'state-counter.mjs'); + for (let i = 0; i < 100; i++) { + const realm = new ShadowRealm(); + await realm.importValue(mod, 'getCounter'); + } +} + +main().then(common.mustCall()); diff --git a/test/parallel/test-shadow-realm-import-value-resolve.js b/test/parallel/test-shadow-realm-import-value-resolve.js new file mode 100644 index 00000000000000..ee1c17d67c12f1 --- /dev/null +++ b/test/parallel/test-shadow-realm-import-value-resolve.js @@ -0,0 +1,28 @@ +// Flags: --experimental-shadow-realm +'use strict'; +const common = require('../common'); +const assert = require('assert'); +const path = require('path'); + +common.skipIfWorker('process.chdir is not supported in workers.'); + +async function main() { + const realm = new ShadowRealm(); + + const dirname = __dirname; + // Set process cwd to the parent directory of __dirname. + const cwd = path.dirname(dirname); + process.chdir(cwd); + // Hardcode the relative path to ensure the string is still a valid relative + // URL string. + const relativePath = './fixtures/es-module-shadow-realm/re-export-state-counter.mjs'; + + // Make sure that the module can not be resolved relative to __filename. + assert.throws(() => require.resolve(relativePath), { code: 'MODULE_NOT_FOUND' }); + + // Resolve relative to the current working directory. + const getCounter = await realm.importValue(relativePath, 'getCounter'); + assert.strictEqual(typeof getCounter, 'function'); +} + +main().then(common.mustCall()); diff --git a/test/parallel/test-shadow-realm-module.js b/test/parallel/test-shadow-realm-module.js new file mode 100644 index 00000000000000..bc0c2c04f69f2b --- /dev/null +++ b/test/parallel/test-shadow-realm-module.js @@ -0,0 +1,29 @@ +// Flags: --experimental-shadow-realm +'use strict'; +const common = require('../common'); +const fixtures = require('../common/fixtures'); +const assert = require('assert'); + +async function main() { + const realm = new ShadowRealm(); + const mod = fixtures.fileURL('es-module-shadow-realm', 'state-counter.mjs'); + const getCounter = await realm.importValue(mod, 'getCounter'); + assert.strictEqual(getCounter(), 0); + const getCounter1 = await realm.importValue(mod, 'getCounter'); + // Returned value is a newly wrapped function. + assert.notStrictEqual(getCounter, getCounter1); + // Verify that the module state is shared between two `importValue` calls. + assert.strictEqual(getCounter1(), 1); + assert.strictEqual(getCounter(), 2); + + const { getCounter: getCounterThisRealm } = await import(mod); + assert.notStrictEqual(getCounterThisRealm, getCounter); + // Verify that the module state is not shared between two realms. + assert.strictEqual(getCounterThisRealm(), 0); + assert.strictEqual(getCounter(), 3); + + // Verify that shadow realm rejects to import a non-existing module. + await assert.rejects(realm.importValue('non-exists', 'exports'), TypeError); +} + +main().then(common.mustCall()); diff --git a/test/parallel/test-shadow-realm-preload-module.js b/test/parallel/test-shadow-realm-preload-module.js new file mode 100644 index 00000000000000..ebd29c1c4a8b80 --- /dev/null +++ b/test/parallel/test-shadow-realm-preload-module.js @@ -0,0 +1,20 @@ +'use strict'; +const common = require('../common'); +const fixtures = require('../common/fixtures'); +const { spawnSyncAndExitWithoutError } = require('../common/child_process'); + +const commonArgs = [ + '--experimental-shadow-realm', +]; + +async function main() { + // Verifies that --require preload modules are not enabled in the ShadowRealm. + spawnSyncAndExitWithoutError(process.execPath, [ + ...commonArgs, + '--require', + fixtures.path('es-module-shadow-realm', 'preload.js'), + fixtures.path('es-module-shadow-realm', 'preload-main.js'), + ]); +} + +main().then(common.mustCall()); From 0d3aa725cf888e3d04319e58b58bcddfe7879066 Mon Sep 17 00:00:00 2001 From: Ardi Nugraha <33378542+ardi-nugraha@users.noreply.github.com> Date: Tue, 14 Nov 2023 11:05:57 +0700 Subject: [PATCH 019/114] src: return error --env-file if file is not found PR-URL: https://github.com/nodejs/node/pull/50588 Reviewed-By: Yagiz Nizipli Reviewed-By: James M Snell Reviewed-By: Benjamin Gruenbaum --- src/node.cc | 4 +++- src/node_dotenv.cc | 7 ++++--- src/node_dotenv.h | 2 +- test/parallel/test-dotenv-edge-cases.js | 4 ++-- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/node.cc b/src/node.cc index a9336a14304fc6..524f80ee69ee52 100644 --- a/src/node.cc +++ b/src/node.cc @@ -866,7 +866,9 @@ static ExitCode InitializeNodeWithArgsInternal( for (const auto& file_path : file_paths) { std::string path = cwd + kPathSeparator + file_path; - per_process::dotenv_file.ParsePath(path); + auto path_exists = per_process::dotenv_file.ParsePath(path); + + if (!path_exists) errors->push_back(file_path + ": not found"); } per_process::dotenv_file.AssignNodeOptionsIfAvailable(&node_options); diff --git a/src/node_dotenv.cc b/src/node_dotenv.cc index 0633ef51269959..992633c50b9a14 100644 --- a/src/node_dotenv.cc +++ b/src/node_dotenv.cc @@ -64,14 +64,14 @@ void Dotenv::SetEnvironment(node::Environment* env) { } } -void Dotenv::ParsePath(const std::string_view path) { +bool Dotenv::ParsePath(const std::string_view path) { uv_fs_t req; auto defer_req_cleanup = OnScopeLeave([&req]() { uv_fs_req_cleanup(&req); }); uv_file file = uv_fs_open(nullptr, &req, path.data(), 0, 438, nullptr); if (req.result < 0) { // req will be cleaned up by scope leave. - return; + return false; } uv_fs_req_cleanup(&req); @@ -89,7 +89,7 @@ void Dotenv::ParsePath(const std::string_view path) { auto r = uv_fs_read(nullptr, &req, file, &buf, 1, -1, nullptr); if (req.result < 0) { // req will be cleaned up by scope leave. - return; + return false; } uv_fs_req_cleanup(&req); if (r <= 0) { @@ -104,6 +104,7 @@ void Dotenv::ParsePath(const std::string_view path) { for (const auto& line : lines) { ParseLine(line); } + return true; } void Dotenv::AssignNodeOptionsIfAvailable(std::string* node_options) { diff --git a/src/node_dotenv.h b/src/node_dotenv.h index ee74f9ff84a353..cc87008d149f43 100644 --- a/src/node_dotenv.h +++ b/src/node_dotenv.h @@ -18,7 +18,7 @@ class Dotenv { Dotenv& operator=(const Dotenv& d) = default; ~Dotenv() = default; - void ParsePath(const std::string_view path); + bool ParsePath(const std::string_view path); void AssignNodeOptionsIfAvailable(std::string* node_options); void SetEnvironment(Environment* env); diff --git a/test/parallel/test-dotenv-edge-cases.js b/test/parallel/test-dotenv-edge-cases.js index ae2b3dc2a35f35..9735a89618172c 100644 --- a/test/parallel/test-dotenv-edge-cases.js +++ b/test/parallel/test-dotenv-edge-cases.js @@ -34,8 +34,8 @@ describe('.env supports edge cases', () => { [ '--env-file=.env', '--eval', code ], { cwd: __dirname }, ); - assert.strictEqual(child.stderr, ''); - assert.strictEqual(child.code, 0); + assert.notStrictEqual(child.stderr.toString(), ''); + assert.strictEqual(child.code, 9); }); it('should not override existing environment variables but introduce new vars', async () => { From 377deded5979d8f51aa6fffcaa3652e5433a8b32 Mon Sep 17 00:00:00 2001 From: Jithil P Ponnan Date: Thu, 18 May 2023 23:37:57 +1000 Subject: [PATCH 020/114] test: test streambase has already has a consumer test: test streambase has already has a consumer PR-URL: https://github.com/nodejs/node/pull/48059 Reviewed-By: Antoine du Hamel Reviewed-By: James M Snell --- ...st-whatwg-webstreams-adapters-streambase.js | 9 +++++++++ ...streams-adapters-to-readablewritablepair.js | 6 ++++++ ...atwg-webstreams-adapters-to-streamduplex.js | 18 ++++++++++++++++++ 3 files changed, 33 insertions(+) diff --git a/test/parallel/test-whatwg-webstreams-adapters-streambase.js b/test/parallel/test-whatwg-webstreams-adapters-streambase.js index 43d28f0499dc7d..bd864ab8c14195 100644 --- a/test/parallel/test-whatwg-webstreams-adapters-streambase.js +++ b/test/parallel/test-whatwg-webstreams-adapters-streambase.js @@ -65,3 +65,12 @@ const { const readable = newReadableStreamFromStreamBase(stream); readable.cancel().then(common.mustCall()); } + +{ + const stream = new JSStream(); + stream.onread = common.mustCall(); + assert.throws(() => newReadableStreamFromStreamBase(stream), { + code: 'ERR_INVALID_STATE' + }); + stream.emitEOF(); +} diff --git a/test/parallel/test-whatwg-webstreams-adapters-to-readablewritablepair.js b/test/parallel/test-whatwg-webstreams-adapters-to-readablewritablepair.js index 83d21247a49265..5062b9e179ac1e 100644 --- a/test/parallel/test-whatwg-webstreams-adapters-to-readablewritablepair.js +++ b/test/parallel/test-whatwg-webstreams-adapters-to-readablewritablepair.js @@ -248,3 +248,9 @@ const { reader.closed.then(common.mustCall()); writer.close().then(common.mustCall()); } + +{ + assert.throws(() => newReadableWritablePairFromDuplex(null), { + code: 'ERR_INVALID_ARG_TYPE' + }); +} diff --git a/test/parallel/test-whatwg-webstreams-adapters-to-streamduplex.js b/test/parallel/test-whatwg-webstreams-adapters-to-streamduplex.js index 15ac9f832714e9..9c92a4778a00fd 100644 --- a/test/parallel/test-whatwg-webstreams-adapters-to-streamduplex.js +++ b/test/parallel/test-whatwg-webstreams-adapters-to-streamduplex.js @@ -164,3 +164,21 @@ const { duplex.end(); } + +{ + const transform = { readable: {}, writable: {} }; + assert.throws(() => newStreamDuplexFromReadableWritablePair(transform), { + code: 'ERR_INVALID_ARG_TYPE' + }); +} + +{ + const transform = { + readable: new ReadableStream(), + writable: null + }; + + assert.throws(() => newStreamDuplexFromReadableWritablePair(transform), { + code: 'ERR_INVALID_ARG_TYPE', + }); +} From 5d28f8d18fe790ea558751d6f1b166a6383ca0cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= Date: Tue, 14 Nov 2023 15:19:00 +0100 Subject: [PATCH 021/114] deps: escape Python strings correctly MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: https://github.com/nodejs/node/issues/50671 PR-URL: https://github.com/nodejs/node/pull/50695 Reviewed-By: Christian Clauss Reviewed-By: Jithil P Ponnan Reviewed-By: Jiawen Geng Reviewed-By: Tobias Nießen Reviewed-By: Richard Lau Reviewed-By: Moshe Atlow Reviewed-By: Luigi Pinca --- deps/openssl/openssl_common.gypi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/openssl/openssl_common.gypi b/deps/openssl/openssl_common.gypi index 1290fff251fc5b..8745ec130ab878 100644 --- a/deps/openssl/openssl_common.gypi +++ b/deps/openssl/openssl_common.gypi @@ -26,7 +26,7 @@ }, 'OS=="win"', { 'defines': [ ## default of Win. See INSTALL in openssl repo. - 'OPENSSLDIR="C:\\\Program\ Files\\\Common\ Files\\\SSL"', + 'OPENSSLDIR="C:\\\\Program\\ Files\\\\Common\\ Files\\\\SSL"', 'ENGINESDIR="NUL"', 'OPENSSL_SYS_WIN32', 'WIN32_LEAN_AND_MEAN', 'L_ENDIAN', '_CRT_SECURE_NO_DEPRECATE', 'UNICODE', '_UNICODE', From 2e8e237ce21f05519b3a964ccb24a8382ccc2f02 Mon Sep 17 00:00:00 2001 From: Keyhan Vakil Date: Tue, 14 Nov 2023 08:20:53 -0800 Subject: [PATCH 022/114] src: fix JSONParser leaking internal V8 scopes JSONParser uses V8's JSON.parse (for now), meaning that its uses handles and contexts. JSONParser was leaking its internal HandleScope and Context::Scope. Move the scope construction to the member functions to prevent those scopes from leaking. Refs: https://github.com/nodejs/node/pull/50680#discussion_r1390363367 PR-URL: https://github.com/nodejs/node/pull/50688 Reviewed-By: James M Snell Reviewed-By: Ben Noordhuis Reviewed-By: Chengzhong Wu --- src/json_parser.cc | 22 +++++++++++++++++----- src/json_parser.h | 3 +-- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/json_parser.cc b/src/json_parser.cc index 1e19e174833fa5..7b405cfc3b331e 100644 --- a/src/json_parser.cc +++ b/src/json_parser.cc @@ -11,16 +11,16 @@ using v8::Object; using v8::String; using v8::Value; -JSONParser::JSONParser() - : handle_scope_(isolate_.get()), - context_(isolate_.get(), Context::New(isolate_.get())), - context_scope_(context_.Get(isolate_.get())) {} +JSONParser::JSONParser() {} bool JSONParser::Parse(const std::string& content) { DCHECK(!parsed_); Isolate* isolate = isolate_.get(); - Local context = context_.Get(isolate); + v8::HandleScope handle_scope(isolate); + + Local context = Context::New(isolate); + Context::Scope context_scope(context); // It's not a real script, so don't print the source line. errors::PrinterTryCatch bootstrapCatch( @@ -34,16 +34,24 @@ bool JSONParser::Parse(const std::string& content) { !result_value->IsObject()) { return false; } + + context_.Reset(isolate, context); content_.Reset(isolate, result_value.As()); parsed_ = true; + return true; } std::optional JSONParser::GetTopLevelStringField( std::string_view field) { Isolate* isolate = isolate_.get(); + v8::HandleScope handle_scope(isolate); + Local context = context_.Get(isolate); + Context::Scope context_scope(context); + Local content_object = content_.Get(isolate); + Local value; // It's not a real script, so don't print the source line. errors::PrinterTryCatch bootstrapCatch( @@ -62,7 +70,11 @@ std::optional JSONParser::GetTopLevelStringField( std::optional JSONParser::GetTopLevelBoolField(std::string_view field) { Isolate* isolate = isolate_.get(); + v8::HandleScope handle_scope(isolate); + Local context = context_.Get(isolate); + Context::Scope context_scope(context); + Local content_object = content_.Get(isolate); Local value; bool has_field; diff --git a/src/json_parser.h b/src/json_parser.h index f2e7d592d9aaa7..a4c5b3e96dd23d 100644 --- a/src/json_parser.h +++ b/src/json_parser.h @@ -25,9 +25,8 @@ class JSONParser { // We might want a lighter-weight JSON parser for this use case. But for now // using V8 is good enough. RAIIIsolate isolate_; - v8::HandleScope handle_scope_; + v8::Global context_; - v8::Context::Scope context_scope_; v8::Global content_; bool parsed_ = false; }; From 5ef6729b669be11561fbcb77c6b4d8ef8690b038 Mon Sep 17 00:00:00 2001 From: Ulises Gascon Date: Wed, 8 Nov 2023 11:00:37 +0100 Subject: [PATCH 023/114] tools: remove unused file MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50622 Reviewed-By: Richard Lau Reviewed-By: Michaël Zasso Reviewed-By: Moshe Atlow Reviewed-By: Tobias Nießen Reviewed-By: Luigi Pinca Reviewed-By: Zeyu "Alex" Yang Reviewed-By: Michael Dawson --- tools/osx-gon-config.json.tmpl | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 tools/osx-gon-config.json.tmpl diff --git a/tools/osx-gon-config.json.tmpl b/tools/osx-gon-config.json.tmpl deleted file mode 100644 index 3ea16465fc1de5..00000000000000 --- a/tools/osx-gon-config.json.tmpl +++ /dev/null @@ -1,12 +0,0 @@ -{ - "notarize": [{ - "path": "node-{{pkgid}}.pkg", - "bundle_id": "org.nodejs.pkg.{{pkgid}}", - "staple": true - }], - - "apple_id": { - "username": "{{appleid}}", - "password": "@env:NOTARIZATION_PASSWORD" - } -} From 713fdf1fc3052017c7b2fe6baf266f5fe1798f0d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 15 Nov 2023 00:25:40 +0000 Subject: [PATCH 024/114] doc: run license-builder MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50691 Reviewed-By: Marco Ippolito Reviewed-By: Tobias Nießen Reviewed-By: Moshe Atlow Reviewed-By: Darshan Sen Reviewed-By: Luigi Pinca Reviewed-By: Benjamin Gruenbaum Reviewed-By: Rafael Gonzaga Reviewed-By: Michael Dawson --- LICENSE | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/LICENSE b/LICENSE index 511343a8dfd4bb..9188c2223d1f8b 100644 --- a/LICENSE +++ b/LICENSE @@ -2153,9 +2153,9 @@ The externally maintained libraries used by Node.js are: - base64, located at deps/base64/base64/, is licensed as follows: """ Copyright (c) 2005-2007, Nick Galbreath - Copyright (c) 2013-2019, Alfred Klomp - Copyright (c) 2015-2017, Wojciech Mula + Copyright (c) 2015-2018, Wojciech Muła Copyright (c) 2016-2017, Matthieu Darbois + Copyright (c) 2013-2022, Alfred Klomp All rights reserved. Redistribution and use in source and binary forms, with or without From c81d2acfe0504a2bb8c14c43689ac0f3e4b30dff Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Wed, 15 Nov 2023 01:48:54 +0100 Subject: [PATCH 025/114] benchmark: remove punycode from require-builtins fixture It's now runtime-deprecated. Remove it from the benchmark. This also gets rid of the warning emitted when the fixture is loaded. PR-URL: https://github.com/nodejs/node/pull/50689 Reviewed-By: Yagiz Nizipli Reviewed-By: James M Snell Reviewed-By: Luigi Pinca --- benchmark/fixtures/require-builtins.js | 1 - 1 file changed, 1 deletion(-) diff --git a/benchmark/fixtures/require-builtins.js b/benchmark/fixtures/require-builtins.js index 685eef1875b301..872c6aa302c70e 100644 --- a/benchmark/fixtures/require-builtins.js +++ b/benchmark/fixtures/require-builtins.js @@ -23,7 +23,6 @@ const list = [ 'path', 'perf_hooks', 'process', - 'punycode', 'querystring', 'readline', 'repl', From db8ce5bbdd8ad3c82428f2565706e3252bd245e0 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Wed, 15 Nov 2023 13:37:09 +0900 Subject: [PATCH 026/114] tools: recognize GN files in dep_updaters PR-URL: https://github.com/nodejs/node/pull/50693 Reviewed-By: Marco Ippolito Reviewed-By: Yagiz Nizipli Reviewed-By: Darshan Sen Reviewed-By: Joyee Cheung Reviewed-By: Tierney Cyren Reviewed-By: Michael Dawson --- tools/dep_updaters/update-ada.sh | 4 +-- tools/dep_updaters/update-brotli.sh | 5 +++- tools/dep_updaters/update-c-ares.sh | 3 +- tools/dep_updaters/update-libuv.sh | 4 +-- tools/dep_updaters/update-llhttp.sh | 5 ++++ tools/dep_updaters/update-nghttp2.sh | 3 ++ tools/dep_updaters/update-postject.sh | 42 ++++++++++++++++++--------- tools/dep_updaters/update-simdutf.sh | 4 +-- tools/dep_updaters/update-uvwasi.sh | 6 +++- 9 files changed, 53 insertions(+), 23 deletions(-) diff --git a/tools/dep_updaters/update-ada.sh b/tools/dep_updaters/update-ada.sh index a6fa2464728b97..9f4f779b6ae02b 100755 --- a/tools/dep_updaters/update-ada.sh +++ b/tools/dep_updaters/update-ada.sh @@ -54,8 +54,8 @@ rm "$ADA_ZIP" curl -sL -o "$ADA_LICENSE" "https://raw.githubusercontent.com/ada-url/ada/HEAD/LICENSE-MIT" -echo "Replacing existing ada (except GYP build files)" -mv "$DEPS_DIR/ada/"*.gyp "$DEPS_DIR/ada/README.md" "$WORKSPACE/" +echo "Replacing existing ada (except GYP and GN build files)" +mv "$DEPS_DIR/ada/"*.gyp "$DEPS_DIR/ada/"*.gn "$DEPS_DIR/ada/"*.gni "$DEPS_DIR/ada/README.md" "$WORKSPACE/" rm -rf "$DEPS_DIR/ada" mv "$WORKSPACE" "$DEPS_DIR/ada" diff --git a/tools/dep_updaters/update-brotli.sh b/tools/dep_updaters/update-brotli.sh index c7e8979d178526..90b65ed31a284b 100755 --- a/tools/dep_updaters/update-brotli.sh +++ b/tools/dep_updaters/update-brotli.sh @@ -60,12 +60,15 @@ mv "brotli-$NEW_VERSION" "brotli" echo "Copying existing gyp file" cp "$DEPS_DIR/brotli/brotli.gyp" "$WORKSPACE/brotli" +echo "Copying existing GN files" +cp "$DEPS_DIR/brotli/"*.gn "$DEPS_DIR/brotli/"*.gni "$WORKSPACE/brotli" + echo "Deleting existing brotli" rm -rf "$DEPS_DIR/brotli" mkdir "$DEPS_DIR/brotli" echo "Update c and LICENSE" -mv "$WORKSPACE/brotli/c" "$WORKSPACE/brotli/LICENSE" "$WORKSPACE/brotli/brotli.gyp" "$DEPS_DIR/brotli" +mv "$WORKSPACE/brotli/"*.gn "$WORKSPACE/brotli/"*.gni "$WORKSPACE/brotli/c" "$WORKSPACE/brotli/LICENSE" "$WORKSPACE/brotli/brotli.gyp" "$DEPS_DIR/brotli" # Update the version number on maintaining-dependencies.md # and print the new version as the last line of the script as we need diff --git a/tools/dep_updaters/update-c-ares.sh b/tools/dep_updaters/update-c-ares.sh index 4a679105405c2d..5081a74545dbf2 100755 --- a/tools/dep_updaters/update-c-ares.sh +++ b/tools/dep_updaters/update-c-ares.sh @@ -56,10 +56,11 @@ mv "c-ares-$NEW_VERSION" cares echo "Removing tests" rm -rf "$WORKSPACE/cares/test" -echo "Copying existing .gitignore, config and gyp files" +echo "Copying existing .gitignore, config, gyp and gn files" cp -R "$DEPS_DIR/cares/config" "$WORKSPACE/cares" cp "$DEPS_DIR/cares/.gitignore" "$WORKSPACE/cares" cp "$DEPS_DIR/cares/cares.gyp" "$WORKSPACE/cares" +cp "$DEPS_DIR/cares/"*.gn "$DEPS_DIR/cares/"*.gni "$WORKSPACE/cares" echo "Replacing existing c-ares" rm -rf "$DEPS_DIR/cares" diff --git a/tools/dep_updaters/update-libuv.sh b/tools/dep_updaters/update-libuv.sh index 83c285ecaa2000..c2524ddbf0dd66 100755 --- a/tools/dep_updaters/update-libuv.sh +++ b/tools/dep_updaters/update-libuv.sh @@ -59,8 +59,8 @@ gzip -dc "$LIBUV_TARBALL" | tar xf - rm "$LIBUV_TARBALL" mv libuv-libuv-* uv -echo "Replacing existing libuv (except GYP build files)" -mv "$DEPS_DIR/uv/"*.gyp "$DEPS_DIR/uv/"*.gypi "$WORKSPACE/uv/" +echo "Replacing existing libuv (except GYP and GN build files)" +mv "$DEPS_DIR/uv/"*.gyp "$DEPS_DIR/uv/"*.gypi "$DEPS_DIR/uv/"*.gn "$DEPS_DIR/uv/"*.gni "$WORKSPACE/uv/" rm -rf "$DEPS_DIR/uv" mv "$WORKSPACE/uv" "$DEPS_DIR/" diff --git a/tools/dep_updaters/update-llhttp.sh b/tools/dep_updaters/update-llhttp.sh index c9462748775287..739819e1a45b69 100755 --- a/tools/dep_updaters/update-llhttp.sh +++ b/tools/dep_updaters/update-llhttp.sh @@ -45,6 +45,9 @@ trap cleanup INT TERM EXIT cd "$WORKSPACE" +echo "Replacing existing llhttp (except GYP and GN build files)" +mv "$DEPS_DIR/llhttp/"*.gn "$DEPS_DIR/llhttp/"*.gni "$WORKSPACE/" + if echo "$NEW_VERSION" | grep -qs "/" ; then # Download a release REPO="git@github.com:$NEW_VERSION.git" BRANCH=$2 @@ -74,6 +77,8 @@ else cp -a "llhttp-release-v$NEW_VERSION" "$DEPS_DIR/llhttp" fi +mv "$WORKSPACE/"*.gn "$WORKSPACE/"*.gni "$DEPS_DIR/llhttp" + # Update the version number on maintaining-dependencies.md # and print the new version as the last line of the script as we need # to add it to $GITHUB_ENV variable diff --git a/tools/dep_updaters/update-nghttp2.sh b/tools/dep_updaters/update-nghttp2.sh index 4c375c979691f6..ccb36caae13d4d 100755 --- a/tools/dep_updaters/update-nghttp2.sh +++ b/tools/dep_updaters/update-nghttp2.sh @@ -73,6 +73,9 @@ cp "$DEPS_DIR/nghttp2/lib/includes/config.h" "$WORKSPACE/nghttp2/lib/includes" echo "Copying existing gyp files" cp "$DEPS_DIR/nghttp2/nghttp2.gyp" "$WORKSPACE/nghttp2" +echo "Copying existing GN files" +cp "$DEPS_DIR/nghttp2/"*.gn "$DEPS_DIR/nghttp2/"*.gni "$WORKSPACE/nghttp2" + echo "Replacing existing nghttp2" rm -rf "$DEPS_DIR/nghttp2" mv "$WORKSPACE/nghttp2" "$DEPS_DIR/" diff --git a/tools/dep_updaters/update-postject.sh b/tools/dep_updaters/update-postject.sh index 55c0de21a7f1b1..671bcd5a3a9ef6 100755 --- a/tools/dep_updaters/update-postject.sh +++ b/tools/dep_updaters/update-postject.sh @@ -7,13 +7,14 @@ set -ex -ROOT=$(cd "$(dirname "$0")/../.." && pwd) -[ -z "$NODE" ] && NODE="$ROOT/out/Release/node" +BASE_DIR=$(cd "$(dirname "$0")/../.." && pwd) +DEPS_DIR="$BASE_DIR/deps" +[ -z "$NODE" ] && NODE="$BASE_DIR/out/Release/node" [ -x "$NODE" ] || NODE=$(command -v node) -NPM="$ROOT/deps/npm/bin/npm-cli.js" +NPM="$BASE_DIR/deps/npm/bin/npm-cli.js" # shellcheck disable=SC1091 -. "$ROOT/tools/dep_updaters/utils.sh" +. "$BASE_DIR/tools/dep_updaters/utils.sh" NEW_VERSION=$("$NODE" "$NPM" view postject dist-tags.latest) CURRENT_VERSION=$("$NODE" -p "require('./test/fixtures/postject-copy/node_modules/postject/package.json').version") @@ -21,21 +22,34 @@ CURRENT_VERSION=$("$NODE" -p "require('./test/fixtures/postject-copy/node_module # This function exit with 0 if new version and current version are the same compare_dependency_version "postject" "$NEW_VERSION" "$CURRENT_VERSION" -cd "$( dirname "$0" )/../.." || exit -rm -rf test/fixtures/postject-copy -mkdir test/fixtures/postject-copy -cd test/fixtures/postject-copy || exit +echo "Making temporary workspace..." + +WORKSPACE=$(mktemp -d 2> /dev/null || mktemp -d -t 'tmp') + +cleanup () { + EXIT_CODE=$? + [ -d "$WORKSPACE" ] && rm -rf "$WORKSPACE" + exit $EXIT_CODE +} + +trap cleanup INT TERM EXIT + +cd "$WORKSPACE" + +echo "Installing postject npm package..." "$NODE" "$NPM" init --yes "$NODE" "$NPM" install --no-bin-links --ignore-scripts "postject@$NEW_VERSION" -# TODO(RaisinTen): Replace following with $WORKSPACE -cd ../../.. -rm -rf deps/postject -mkdir deps/postject -cp test/fixtures/postject-copy/node_modules/postject/LICENSE deps/postject -cp test/fixtures/postject-copy/node_modules/postject/dist/postject-api.h deps/postject +echo "Replacing existing postject (except GN build files)" + +mv "$DEPS_DIR/postject/"*.gn "$DEPS_DIR/postject/"*.gni "$WORKSPACE/" +rm -rf "$DEPS_DIR/postject" +mkdir "$DEPS_DIR/postject" +mv "$WORKSPACE/"*.gn "$WORKSPACE/"*.gni "$DEPS_DIR/postject" +mv "$WORKSPACE/node_modules/postject/LICENSE" "$DEPS_DIR/postject" +mv "$WORKSPACE/node_modules/postject/dist/postject-api.h" "$DEPS_DIR/postject" # Update the version number on maintaining-dependencies.md # and print the new version as the last line of the script as we need diff --git a/tools/dep_updaters/update-simdutf.sh b/tools/dep_updaters/update-simdutf.sh index ce22798006e546..bb4ea276548ed1 100755 --- a/tools/dep_updaters/update-simdutf.sh +++ b/tools/dep_updaters/update-simdutf.sh @@ -54,8 +54,8 @@ rm ./*_demo.cpp curl -sL -o "$SIMDUTF_LICENSE" "https://raw.githubusercontent.com/simdutf/simdutf/HEAD/LICENSE-MIT" -echo "Replacing existing simdutf (except GYP build files)" -mv "$DEPS_DIR/simdutf/"*.gyp "$DEPS_DIR/simdutf/README.md" "$WORKSPACE/" +echo "Replacing existing simdutf (except GYP and GN build files)" +mv "$DEPS_DIR/simdutf/"*.gyp "$DEPS_DIR/simdutf/"*.gn "$DEPS_DIR/simdutf/"*.gni "$DEPS_DIR/simdutf/README.md" "$WORKSPACE/" rm -rf "$DEPS_DIR/simdutf" mv "$WORKSPACE" "$DEPS_DIR/simdutf" diff --git a/tools/dep_updaters/update-uvwasi.sh b/tools/dep_updaters/update-uvwasi.sh index c36a7377bf44bc..8b4070cb336565 100755 --- a/tools/dep_updaters/update-uvwasi.sh +++ b/tools/dep_updaters/update-uvwasi.sh @@ -54,13 +54,17 @@ log_and_verify_sha256sum "uvwasi" "$UVWASI_ZIP.zip" echo "Moving existing GYP build file" mv "$DEPS_DIR/uvwasi/"*.gyp "$WORKSPACE/" + +echo "Moving existing GN build file" +mv "$DEPS_DIR/uvwasi/"*.gn "$DEPS_DIR/uvwasi/"*.gni "$WORKSPACE/" + rm -rf "$DEPS_DIR/uvwasi/" echo "Unzipping..." unzip "$UVWASI_ZIP.zip" -d "$DEPS_DIR/uvwasi/" rm "$UVWASI_ZIP.zip" -mv "$WORKSPACE/"*.gyp "$DEPS_DIR/uvwasi/" +mv "$WORKSPACE/"*.gyp "$WORKSPACE/"*.gn "$WORKSPACE/"*.gni "$DEPS_DIR/uvwasi/" cd "$DEPS_DIR/uvwasi/" echo "Copying new files to deps folder" From 0e8275b6106d2419f4436eb5e0be07dd884c0473 Mon Sep 17 00:00:00 2001 From: Markus Muschol Date: Wed, 15 Nov 2023 12:49:14 +0100 Subject: [PATCH 027/114] test: replace foreach with for MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50599 Reviewed-By: Luigi Pinca Reviewed-By: Tobias Nießen --- test/parallel/test-path.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/parallel/test-path.js b/test/parallel/test-path.js index 7a5f3d4715a7f2..0cb55d42aa2999 100644 --- a/test/parallel/test-path.js +++ b/test/parallel/test-path.js @@ -35,8 +35,8 @@ function fail(fn) { }, { code: 'ERR_INVALID_ARG_TYPE', name: 'TypeError' }); } -typeErrorTests.forEach((test) => { - [path.posix, path.win32].forEach((namespace) => { +for (const test of typeErrorTests) { + for (const namespace of [path.posix, path.win32]) { fail(namespace.join, test); fail(namespace.resolve, test); fail(namespace.normalize, test); @@ -52,8 +52,8 @@ typeErrorTests.forEach((test) => { if (test !== undefined) { fail(namespace.basename, 'foo', test); } - }); -}); + } +} // path.sep tests // windows From 52830b71ccedaf78ed21e19eb4bf976238dc9e59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= Date: Wed, 15 Nov 2023 14:36:43 +0100 Subject: [PATCH 028/114] tools: add workflow to update release links Refs: https://github.com/nodejs/node/pull/50623 PR-URL: https://github.com/nodejs/node/pull/50710 Reviewed-By: Claudio Wunder Reviewed-By: Moshe Atlow Reviewed-By: Richard Lau Reviewed-By: James M Snell Reviewed-By: Yagiz Nizipli Reviewed-By: Michael Dawson --- .github/workflows/update-release-links.yml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 .github/workflows/update-release-links.yml diff --git a/.github/workflows/update-release-links.yml b/.github/workflows/update-release-links.yml new file mode 100644 index 00000000000000..fc9e6ad084cd3b --- /dev/null +++ b/.github/workflows/update-release-links.yml @@ -0,0 +1,19 @@ +name: Update release links + +on: + release: + types: [published] + +permissions: + contents: read + +jobs: + update-release-links: + if: github.repository == 'nodejs/node' + runs-on: ubuntu-latest + steps: + - name: Trigger update-links workflow on nodejs/release-cloudflare-worker + run: | + gh workflow run update-links.yml --repo nodejs/release-cloudflare-worker + env: + GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} From 6b7403c5df5043a8dc24757d1c005543d1935a8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mert=20Can=20Alt=C4=B1n?= Date: Wed, 15 Nov 2023 16:51:25 +0300 Subject: [PATCH 029/114] doc: fix `Buffer.allocUnsafe` documentation PR-URL: https://github.com/nodejs/node/pull/50686 Reviewed-By: James M Snell Reviewed-By: Marco Ippolito --- doc/api/buffer.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/api/buffer.md b/doc/api/buffer.md index 3a46599649d025..7bb7d42454fad6 100644 --- a/doc/api/buffer.md +++ b/doc/api/buffer.md @@ -808,8 +808,8 @@ A `TypeError` will be thrown if `size` is not a number. The `Buffer` module pre-allocates an internal `Buffer` instance of size [`Buffer.poolSize`][] that is used as a pool for the fast allocation of new `Buffer` instances created using [`Buffer.allocUnsafe()`][], [`Buffer.from(array)`][], -and [`Buffer.concat()`][] only when `size` is less than or equal to -`Buffer.poolSize >> 1` (floor of [`Buffer.poolSize`][] divided by two). +and [`Buffer.concat()`][] only when `size` is less than +`Buffer.poolSize >>> 1` (floor of [`Buffer.poolSize`][] divided by two). Use of this pre-allocated internal memory pool is a key difference between calling `Buffer.alloc(size, fill)` vs. `Buffer.allocUnsafe(size).fill(fill)`. From f7245d73d94cf9cd86dfe505c87424a0ecfe2078 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Wed, 15 Nov 2023 19:51:25 +0100 Subject: [PATCH 030/114] benchmark: add misc/startup-cli-version benchmark This benchmarks the startup of various CLI tools that are already checked into the source code. We use --version because the output tends to be minimal and fewer operations are done to generate these so that the startup cost is still dominated by a more indispensible part of the CLI. PR-URL: https://github.com/nodejs/node/pull/50684 Reviewed-By: Yagiz Nizipli Reviewed-By: James M Snell --- benchmark/misc/startup-cli-version.js | 51 +++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 benchmark/misc/startup-cli-version.js diff --git a/benchmark/misc/startup-cli-version.js b/benchmark/misc/startup-cli-version.js new file mode 100644 index 00000000000000..52ab6bc9f582f3 --- /dev/null +++ b/benchmark/misc/startup-cli-version.js @@ -0,0 +1,51 @@ +'use strict'; +const common = require('../common.js'); +const { spawnSync } = require('child_process'); +const path = require('path'); + +// This benchmarks the startup of various CLI tools that are already +// checked into the source code. We use --version because the output +// tends to be minimal and fewer operations are done to generate +// these so that the startup cost is still dominated by a more +// indispensible part of the CLI. +const bench = common.createBenchmark(main, { + cli: [ + 'tools/node_modules/eslint/bin/eslint.js', + 'deps/npm/bin/npm-cli.js', + 'deps/corepack/dist/corepack.js', + ], + count: [30], +}); + +function spawnProcess(cli, bench, state) { + const cmd = process.execPath || process.argv[0]; + while (state.finished < state.count) { + const child = spawnSync(cmd, [cli, '--version'], { + env: { npm_config_loglevel: 'silent', ...process.env }, + }); + // Log some information for debugging if it fails, which it shouldn't. + if (child.status !== 0) { + console.log('---- STDOUT ----'); + console.log(child.stdout.toString()); + console.log('---- STDERR ----'); + console.log(child.stderr.toString()); + throw new Error(`Child process stopped with exit code ${child.status}`); + } + state.finished++; + if (state.finished === 0) { + // Finished warmup. + bench.start(); + } + + if (state.finished === state.count) { + bench.end(state.count); + } + } +} + +function main({ count, cli }) { + cli = path.resolve(__dirname, '../../', cli); + const warmup = 3; + const state = { count, finished: -warmup }; + spawnProcess(cli, bench, state); +} From dee8039c9b18eaa28427d4c535e98e12a1a91410 Mon Sep 17 00:00:00 2001 From: Kumar Rishav Date: Mon, 16 Oct 2023 19:55:36 +0000 Subject: [PATCH 031/114] tls: fix order of setting cipher before setting cert and key Set the cipher list and cipher suite before anything else because @SECLEVEL= changes the security level and that affects subsequent operations. Fixes: https://github.com/nodejs/node/issues/36655 Fixes: https://github.com/nodejs/node/issues/49549 Refs: https://github.com/orgs/nodejs/discussions/49634 Refs: https://github.com/orgs/nodejs/discussions/46545 Refs: https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_security_level.html PR-URL: https://github.com/nodejs/node/pull/50186 Reviewed-By: James M Snell Reviewed-By: Paolo Insogna --- lib/internal/tls/secure-context.js | 47 ++++++++++--------- test/fixtures/keys/agent11-cert.pem | 8 ++++ test/fixtures/keys/agent11-key.pem | 9 ++++ .../test-tls-reduced-SECLEVEL-in-cipher.js | 26 ++++++++++ 4 files changed, 68 insertions(+), 22 deletions(-) create mode 100644 test/fixtures/keys/agent11-cert.pem create mode 100644 test/fixtures/keys/agent11-key.pem create mode 100644 test/parallel/test-tls-reduced-SECLEVEL-in-cipher.js diff --git a/lib/internal/tls/secure-context.js b/lib/internal/tls/secure-context.js index 0fa3098ffa1020..40d995f9890d53 100644 --- a/lib/internal/tls/secure-context.js +++ b/lib/internal/tls/secure-context.js @@ -148,6 +148,31 @@ function configSecureContext(context, options = kEmptyObject, name = 'options') ticketKeys, } = options; + // Set the cipher list and cipher suite before anything else because + // @SECLEVEL= changes the security level and that affects subsequent + // operations. + if (ciphers !== undefined && ciphers !== null) + validateString(ciphers, `${name}.ciphers`); + + // Work around an OpenSSL API quirk. cipherList is for TLSv1.2 and below, + // cipherSuites is for TLSv1.3 (and presumably any later versions). TLSv1.3 + // cipher suites all have a standard name format beginning with TLS_, so split + // the ciphers and pass them to the appropriate API. + const { + cipherList, + cipherSuites, + } = processCiphers(ciphers, `${name}.ciphers`); + + if (cipherSuites !== '') + context.setCipherSuites(cipherSuites); + context.setCiphers(cipherList); + + if (cipherList === '' && + context.getMinProto() < TLS1_3_VERSION && + context.getMaxProto() > TLS1_2_VERSION) { + context.setMinProto(TLS1_3_VERSION); + } + // Add CA before the cert to be able to load cert's issuer in C++ code. // NOTE(@jasnell): ca, cert, and key are permitted to be falsy, so do not // change the checks to !== undefined checks. @@ -218,28 +243,6 @@ function configSecureContext(context, options = kEmptyObject, name = 'options') } } - if (ciphers !== undefined && ciphers !== null) - validateString(ciphers, `${name}.ciphers`); - - // Work around an OpenSSL API quirk. cipherList is for TLSv1.2 and below, - // cipherSuites is for TLSv1.3 (and presumably any later versions). TLSv1.3 - // cipher suites all have a standard name format beginning with TLS_, so split - // the ciphers and pass them to the appropriate API. - const { - cipherList, - cipherSuites, - } = processCiphers(ciphers, `${name}.ciphers`); - - if (cipherSuites !== '') - context.setCipherSuites(cipherSuites); - context.setCiphers(cipherList); - - if (cipherList === '' && - context.getMinProto() < TLS1_3_VERSION && - context.getMaxProto() > TLS1_2_VERSION) { - context.setMinProto(TLS1_3_VERSION); - } - validateString(ecdhCurve, `${name}.ecdhCurve`); context.setECDHCurve(ecdhCurve); diff --git a/test/fixtures/keys/agent11-cert.pem b/test/fixtures/keys/agent11-cert.pem new file mode 100644 index 00000000000000..42b34d537fc535 --- /dev/null +++ b/test/fixtures/keys/agent11-cert.pem @@ -0,0 +1,8 @@ +-----BEGIN CERTIFICATE----- +MIIBFjCBwaADAgECAgEBMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNVBAMTCWxvY2Fs +aG9zdDAeFw0yMzEwMTUxNzQ5MTBaFw0yNDEwMTUxNzQ5MTBaMBQxEjAQBgNVBAMT +CWxvY2FsaG9zdDBcMA0GCSqGSIb3DQEBAQUAA0sAMEgCQQDW9vH7W98zSi1IfoTG +pTjbvXRzmmSG6y5z1S3gvC6+keC5QQkEdIG5vWas1efX5qEPybptRyM34T6aWv+U +uzUJAgMBAAEwDQYJKoZIhvcNAQEFBQADQQAEIwD5mLIALrim6uD39DO/umYDtDIb +TAQmgWdkQrCdCtX0Yp49gJyaq2HtFgsk/cxMoYMYkDtT5a7nwEQu+Xqt +-----END CERTIFICATE----- diff --git a/test/fixtures/keys/agent11-key.pem b/test/fixtures/keys/agent11-key.pem new file mode 100644 index 00000000000000..a8bccd007c857c --- /dev/null +++ b/test/fixtures/keys/agent11-key.pem @@ -0,0 +1,9 @@ +-----BEGIN RSA PRIVATE KEY----- +MIIBOwIBAAJBANb28ftb3zNKLUh+hMalONu9dHOaZIbrLnPVLeC8Lr6R4LlBCQR0 +gbm9ZqzV59fmoQ/Jum1HIzfhPppa/5S7NQkCAwEAAQJAaetb6GKoY/lUvre4bLjU +f1Gmo5+bkO8pAGI2LNoMnlETjLjlnvShkqu0kxY96G5Il6VSX4Yjz0D40f4IrlJW +AQIhAPChOjGBlOFcGA/pPmzMcW8jRCLvVubiO9TpiYVhWz45AiEA5LIKsSR8HT9y +eyVNNNkRbNvTrddbvXMBBjj+KwxQrVECIQDjalzHQQJl4lXTY8rdpHJoaNoSckSd +PJ7zYCvaZOKI8QIhALoGbRYMxHySCJBNFlE/pKH06mnE/RXMf2/NWkov+UwRAiAz +ucgBN8xY5KvG3eI78WHdE2B5X0B4EabFXmUlzIrhTA== +-----END RSA PRIVATE KEY----- diff --git a/test/parallel/test-tls-reduced-SECLEVEL-in-cipher.js b/test/parallel/test-tls-reduced-SECLEVEL-in-cipher.js new file mode 100644 index 00000000000000..9f4458e0a7d671 --- /dev/null +++ b/test/parallel/test-tls-reduced-SECLEVEL-in-cipher.js @@ -0,0 +1,26 @@ +'use strict'; +const common = require('../common'); + +if (!common.hasCrypto) + common.skip('missing crypto'); + +const assert = require('assert'); +const tls = require('tls'); +const fixtures = require('../common/fixtures'); + +{ + const options = { + key: fixtures.readKey('agent11-key.pem'), + cert: fixtures.readKey('agent11-cert.pem'), + ciphers: 'DEFAULT' + }; + + // Should throw error as key is too small because openssl v3 doesn't allow it + assert.throws(() => tls.createServer(options, common.mustNotCall()), + /key too small/i); + + // Reducing SECLEVEL to 0 in ciphers retains compatibility with previous versions of OpenSSL like using a small key. + // As ciphers are getting set before the cert and key get loaded. + options.ciphers = 'DEFAULT:@SECLEVEL=0'; + assert.ok(tls.createServer(options, common.mustNotCall())); +} From 071e46ae56e6046ab2f1046684d821c2da3cc39a Mon Sep 17 00:00:00 2001 From: npm CLI robot Date: Thu, 16 Nov 2023 09:12:25 -0800 Subject: [PATCH 032/114] deps: upgrade npm to 10.2.4 PR-URL: https://github.com/nodejs/node/pull/50751 Reviewed-By: Luigi Pinca Reviewed-By: Richard Lau --- deps/npm/docs/content/commands/npm-ls.md | 2 +- deps/npm/docs/content/commands/npm-prune.md | 5 +- deps/npm/docs/content/commands/npm-view.md | 7 + deps/npm/docs/content/commands/npm.md | 2 +- deps/npm/docs/output/commands/npm-ls.html | 2 +- deps/npm/docs/output/commands/npm-prune.html | 5 +- deps/npm/docs/output/commands/npm-view.html | 4 + deps/npm/docs/output/commands/npm.html | 2 +- deps/npm/lib/commands/exec.js | 25 +- deps/npm/lib/commands/outdated.js | 4 +- deps/npm/lib/commands/pkg.js | 7 +- deps/npm/lib/commands/search.js | 8 +- deps/npm/lib/commands/token.js | 6 +- deps/npm/lib/utils/format-search-stream.js | 192 +++++------ deps/npm/lib/utils/open-url.js | 2 +- deps/npm/lib/utils/sbom-cyclonedx.js | 11 +- deps/npm/lib/utils/sbom-spdx.js | 9 +- deps/npm/man/man1/npm-ls.1 | 2 +- deps/npm/man/man1/npm-prune.1 | 2 +- deps/npm/man/man1/npm-view.1 | 8 + deps/npm/man/man1/npm.1 | 2 +- .../cliui/node_modules/ansi-regex/index.js | 8 - .../cliui/node_modules/strip-ansi/index.js | 14 - .../node_modules/@npmcli/config/package.json | 4 +- .../node_modules/ansi-styles/index.js | 163 +++++++++ .../node_modules/ansi-styles}/license | 2 +- .../node_modules/ansi-styles/package.json | 18 +- .../@sigstore/sign/dist/witness/tlog/index.js | 3 +- .../node_modules/@sigstore/sign/package.json | 6 +- .../node_modules/@sigstore/tuf/dist/client.js | 22 +- .../node_modules/@sigstore/tuf/dist/index.js | 7 +- .../node_modules/@sigstore/tuf/package.json | 2 +- .../agent-base/dist/helpers.js | 0 .../agent-base/dist/index.js | 0 .../node_modules => }/agent-base/package.json | 0 deps/npm/node_modules/ansi-regex/index.js | 8 +- deps/npm/node_modules/ansi-regex/license | 2 +- deps/npm/node_modules/ansi-regex/package.json | 15 +- deps/npm/node_modules/ansi-styles/index.js | 320 +++++++++++------- deps/npm/node_modules/ansi-styles/license | 2 +- .../npm/node_modules/ansi-styles/package.json | 18 +- deps/npm/node_modules/ci-info/package.json | 2 +- deps/npm/node_modules/ci-info/vendors.json | 43 ++- deps/npm/node_modules/cidr-regex/index.js | 15 +- deps/npm/node_modules/cidr-regex/package.json | 34 +- .../node_modules/ansi-regex/index.js | 10 + .../node_modules/ansi-regex/license | 2 +- .../node_modules/ansi-regex/package.json | 15 +- .../node_modules/strip-ansi/index.js | 4 + .../node_modules/strip-ansi}/license | 2 +- .../node_modules/strip-ansi/package.json | 17 +- .../node_modules/ansi-regex/index.js | 10 + .../node_modules/ansi-regex/license | 2 +- .../node_modules/ansi-regex/package.json | 15 +- .../node_modules/strip-ansi/index.js | 4 + .../columnify/node_modules/strip-ansi/license | 9 + .../node_modules/strip-ansi/package.json | 17 +- .../function-bind/implementation.js | 56 ++- .../node_modules/function-bind/package.json | 52 ++- .../gauge/node_modules/ansi-regex/index.js | 10 + .../gauge/node_modules/ansi-regex/license | 9 + .../node_modules/ansi-regex/package.json | 55 +++ .../gauge/node_modules/strip-ansi/index.js | 4 + .../gauge/node_modules/strip-ansi/license | 9 + .../node_modules/strip-ansi/package.json | 54 +++ deps/npm/node_modules/has/LICENSE-MIT | 22 -- deps/npm/node_modules/has/package.json | 48 --- deps/npm/node_modules/has/src/index.js | 5 - deps/npm/node_modules/has/test/index.js | 10 - deps/npm/node_modules/hasown/LICENSE | 21 ++ deps/npm/node_modules/hasown/index.js | 8 + deps/npm/node_modules/hasown/package.json | 91 +++++ deps/npm/node_modules/hasown/tsconfig.json | 49 +++ .../http-proxy-agent/LICENSE | 0 .../http-proxy-agent/dist/index.js | 0 .../http-proxy-agent/package.json | 0 .../https-proxy-agent/dist/index.js | 0 .../dist/parse-proxy-response.js | 0 .../https-proxy-agent/package.json | 0 deps/npm/node_modules/ip-regex/index.js | 40 +-- deps/npm/node_modules/ip-regex/license | 2 +- deps/npm/node_modules/ip-regex/package.json | 13 +- deps/npm/node_modules/is-cidr/index.js | 14 +- deps/npm/node_modules/is-cidr/package.json | 38 +-- deps/npm/node_modules/is-core-module/index.js | 4 +- .../node_modules/is-core-module/package.json | 8 +- deps/npm/node_modules/libnpmexec/package.json | 4 +- .../libnpmpublish/lib/provenance.js | 8 +- .../node_modules/libnpmpublish/package.json | 4 +- .../lru-cache/dist/cjs/index.min.js | 2 - .../lru-cache/dist/{cjs => commonjs}/index.js | 28 +- .../dist/{cjs => commonjs}/package.json | 0 .../lru-cache/dist/{mjs => esm}/index.js | 28 +- .../lru-cache/dist/{mjs => esm}/package.json | 0 .../lru-cache/dist/mjs/index.min.js | 2 - deps/npm/node_modules/lru-cache/package.json | 98 +++--- .../signal-exit/dist/cjs/index.js | 31 +- .../signal-exit/dist/mjs/index.js | 31 +- .../npm/node_modules/signal-exit/package.json | 2 +- .../socks-proxy-agent/dist/index.js | 0 .../socks-proxy-agent/package.json | 0 .../node_modules/ansi-regex/index.js | 10 + .../node_modules/ansi-regex/license | 9 + .../node_modules/ansi-regex/package.json | 55 +++ .../node_modules/strip-ansi/index.js | 4 + .../node_modules/strip-ansi/license | 9 + .../node_modules/strip-ansi/package.json | 54 +++ .../node_modules/ansi-regex/index.js | 10 + .../node_modules/ansi-regex/license | 9 + .../node_modules/ansi-regex/package.json | 55 +++ .../node_modules/strip-ansi/index.js | 4 + .../node_modules/strip-ansi/license | 9 + .../node_modules/strip-ansi/package.json | 54 +++ .../node_modules/ansi-regex/index.js | 10 + .../node_modules/ansi-regex/license | 9 + .../node_modules/ansi-regex/package.json | 55 +++ deps/npm/node_modules/strip-ansi/index.js | 16 +- deps/npm/node_modules/strip-ansi/license | 2 +- deps/npm/node_modules/strip-ansi/package.json | 17 +- .../node_modules/ansi-regex/index.js | 10 + .../node_modules/ansi-regex/license | 9 + .../node_modules/ansi-regex/package.json | 55 +++ .../node_modules/ansi-styles/index.js | 163 +++++++++ .../node_modules/ansi-styles/license | 9 + .../node_modules/ansi-styles/package.json | 56 +++ .../node_modules/strip-ansi/index.js | 4 + .../node_modules/strip-ansi/license | 9 + .../node_modules/strip-ansi/package.json | 54 +++ .../node_modules/ansi-regex/index.js | 8 - .../node_modules/ansi-styles/index.js | 223 ------------ .../node_modules/strip-ansi/index.js | 14 - .../wrap-ansi/node_modules/strip-ansi/license | 9 - deps/npm/package.json | 18 +- .../test/lib/commands/search.js.test.cjs | 28 +- .../test/lib/utils/sbom-cyclonedx.js.test.cjs | 55 +++ .../test/lib/utils/sbom-spdx.js.test.cjs | 135 ++++++++ deps/npm/test/lib/commands/exec.js | 93 ++++- deps/npm/test/lib/commands/hook.js | 6 +- deps/npm/test/lib/commands/org.js | 10 +- deps/npm/test/lib/commands/pkg.js | 37 ++ deps/npm/test/lib/utils/open-url.js | 2 +- deps/npm/test/lib/utils/sbom-cyclonedx.js | 20 +- deps/npm/test/lib/utils/sbom-spdx.js | 30 ++ 143 files changed, 2417 insertions(+), 1013 deletions(-) delete mode 100644 deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/index.js delete mode 100644 deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/index.js create mode 100644 deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/index.js rename deps/npm/node_modules/{@isaacs/cliui/node_modules/strip-ansi => @npmcli/disparity-colors/node_modules/ansi-styles}/license (92%) rename deps/npm/node_modules/{wrap-ansi => @npmcli/disparity-colors}/node_modules/ansi-styles/package.json (80%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/agent-base/dist/helpers.js (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/agent-base/dist/index.js (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/agent-base/package.json (100%) create mode 100644 deps/npm/node_modules/cli-columns/node_modules/ansi-regex/index.js rename deps/npm/node_modules/{@isaacs/cliui => cli-columns}/node_modules/ansi-regex/license (92%) rename deps/npm/node_modules/{wrap-ansi => cli-columns}/node_modules/ansi-regex/package.json (75%) create mode 100644 deps/npm/node_modules/cli-columns/node_modules/strip-ansi/index.js rename deps/npm/node_modules/{wrap-ansi/node_modules/ansi-styles => cli-columns/node_modules/strip-ansi}/license (92%) rename deps/npm/node_modules/{@isaacs/cliui => cli-columns}/node_modules/strip-ansi/package.json (71%) create mode 100644 deps/npm/node_modules/columnify/node_modules/ansi-regex/index.js rename deps/npm/node_modules/{wrap-ansi => columnify}/node_modules/ansi-regex/license (92%) rename deps/npm/node_modules/{@isaacs/cliui => columnify}/node_modules/ansi-regex/package.json (75%) create mode 100644 deps/npm/node_modules/columnify/node_modules/strip-ansi/index.js create mode 100644 deps/npm/node_modules/columnify/node_modules/strip-ansi/license rename deps/npm/node_modules/{wrap-ansi => columnify}/node_modules/strip-ansi/package.json (71%) create mode 100644 deps/npm/node_modules/gauge/node_modules/ansi-regex/index.js create mode 100644 deps/npm/node_modules/gauge/node_modules/ansi-regex/license create mode 100644 deps/npm/node_modules/gauge/node_modules/ansi-regex/package.json create mode 100644 deps/npm/node_modules/gauge/node_modules/strip-ansi/index.js create mode 100644 deps/npm/node_modules/gauge/node_modules/strip-ansi/license create mode 100644 deps/npm/node_modules/gauge/node_modules/strip-ansi/package.json delete mode 100644 deps/npm/node_modules/has/LICENSE-MIT delete mode 100644 deps/npm/node_modules/has/package.json delete mode 100644 deps/npm/node_modules/has/src/index.js delete mode 100644 deps/npm/node_modules/has/test/index.js create mode 100644 deps/npm/node_modules/hasown/LICENSE create mode 100644 deps/npm/node_modules/hasown/index.js create mode 100644 deps/npm/node_modules/hasown/package.json create mode 100644 deps/npm/node_modules/hasown/tsconfig.json rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/http-proxy-agent/LICENSE (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/http-proxy-agent/dist/index.js (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/http-proxy-agent/package.json (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/https-proxy-agent/dist/index.js (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/https-proxy-agent/dist/parse-proxy-response.js (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/https-proxy-agent/package.json (100%) delete mode 100644 deps/npm/node_modules/lru-cache/dist/cjs/index.min.js rename deps/npm/node_modules/lru-cache/dist/{cjs => commonjs}/index.js (98%) rename deps/npm/node_modules/lru-cache/dist/{cjs => commonjs}/package.json (100%) rename deps/npm/node_modules/lru-cache/dist/{mjs => esm}/index.js (98%) rename deps/npm/node_modules/lru-cache/dist/{mjs => esm}/package.json (100%) delete mode 100644 deps/npm/node_modules/lru-cache/dist/mjs/index.min.js rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/socks-proxy-agent/dist/index.js (100%) rename deps/npm/node_modules/{@npmcli/agent/node_modules => }/socks-proxy-agent/package.json (100%) create mode 100644 deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/index.js create mode 100644 deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/license create mode 100644 deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/package.json create mode 100644 deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/index.js create mode 100644 deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/license create mode 100644 deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/package.json create mode 100644 deps/npm/node_modules/string-width/node_modules/ansi-regex/index.js create mode 100644 deps/npm/node_modules/string-width/node_modules/ansi-regex/license create mode 100644 deps/npm/node_modules/string-width/node_modules/ansi-regex/package.json create mode 100644 deps/npm/node_modules/string-width/node_modules/strip-ansi/index.js create mode 100644 deps/npm/node_modules/string-width/node_modules/strip-ansi/license create mode 100644 deps/npm/node_modules/string-width/node_modules/strip-ansi/package.json create mode 100644 deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/index.js create mode 100644 deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/license create mode 100644 deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/package.json create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/index.js create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/license create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/package.json create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.js create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/license create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/index.js create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/license create mode 100644 deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/package.json delete mode 100644 deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/index.js delete mode 100644 deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/index.js delete mode 100644 deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/index.js delete mode 100644 deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/license diff --git a/deps/npm/docs/content/commands/npm-ls.md b/deps/npm/docs/content/commands/npm-ls.md index 2bff962988c4cc..4ad025dbb5b08e 100644 --- a/deps/npm/docs/content/commands/npm-ls.md +++ b/deps/npm/docs/content/commands/npm-ls.md @@ -27,7 +27,7 @@ packages will *also* show the paths to the specified packages. For example, running `npm ls promzard` in npm's source tree will show: ```bash -npm@10.2.3 /path/to/npm +npm@10.2.4 /path/to/npm └─┬ init-package-json@0.0.4 └── promzard@0.1.5 ``` diff --git a/deps/npm/docs/content/commands/npm-prune.md b/deps/npm/docs/content/commands/npm-prune.md index ec6aa1ee454d64..d195eb6d3b601f 100644 --- a/deps/npm/docs/content/commands/npm-prune.md +++ b/deps/npm/docs/content/commands/npm-prune.md @@ -18,10 +18,9 @@ then only packages matching one of the supplied names are removed. Extraneous packages are those present in the `node_modules` folder that are not listed as any package's dependency list. -If the `--production` flag is specified or the `NODE_ENV` environment +If the `--omit=dev` flag is specified or the `NODE_ENV` environment variable is set to `production`, this command will remove the packages -specified in your `devDependencies`. Setting `--no-production` will negate -`NODE_ENV` being set to `production`. +specified in your `devDependencies`. If the `--dry-run` flag is used then no changes will actually be made. diff --git a/deps/npm/docs/content/commands/npm-view.md b/deps/npm/docs/content/commands/npm-view.md index 280b6ebe1f091b..63bfe41398d1f3 100644 --- a/deps/npm/docs/content/commands/npm-view.md +++ b/deps/npm/docs/content/commands/npm-view.md @@ -32,6 +32,13 @@ For example, to show the dependencies of the `ronn` package at version npm view ronn@0.3.5 dependencies ``` +By default, `npm view` shows data about the current project context (by looking for a `package.json`). +To show field data for the current project use a file path (i.e. `.`): + +```bash +npm view . dependencies +``` + You can view child fields by separating them with a period. To view the git repository URL for the latest version of `npm`, you would run the following command: diff --git a/deps/npm/docs/content/commands/npm.md b/deps/npm/docs/content/commands/npm.md index 247b7ba6edf594..1528614f69a69a 100644 --- a/deps/npm/docs/content/commands/npm.md +++ b/deps/npm/docs/content/commands/npm.md @@ -14,7 +14,7 @@ Note: This command is unaware of workspaces. ### Version -10.2.3 +10.2.4 ### Description diff --git a/deps/npm/docs/output/commands/npm-ls.html b/deps/npm/docs/output/commands/npm-ls.html index 0c623b49378635..642c883f350281 100644 --- a/deps/npm/docs/output/commands/npm-ls.html +++ b/deps/npm/docs/output/commands/npm-ls.html @@ -160,7 +160,7 @@

Description

the results to only the paths to the packages named. Note that nested packages will also show the paths to the specified packages. For example, running npm ls promzard in npm's source tree will show:

-
npm@10.2.3 /path/to/npm
+
npm@10.2.4 /path/to/npm
 └─┬ init-package-json@0.0.4
   └── promzard@0.1.5
 
diff --git a/deps/npm/docs/output/commands/npm-prune.html b/deps/npm/docs/output/commands/npm-prune.html index acb24ea8023cee..034257f2271bea 100644 --- a/deps/npm/docs/output/commands/npm-prune.html +++ b/deps/npm/docs/output/commands/npm-prune.html @@ -153,10 +153,9 @@

Description

then only packages matching one of the supplied names are removed.

Extraneous packages are those present in the node_modules folder that are not listed as any package's dependency list.

-

If the --production flag is specified or the NODE_ENV environment +

If the --omit=dev flag is specified or the NODE_ENV environment variable is set to production, this command will remove the packages -specified in your devDependencies. Setting --no-production will negate -NODE_ENV being set to production.

+specified in your devDependencies.

If the --dry-run flag is used then no changes will actually be made.

If the --json flag is used, then the changes npm prune made (or would have made with --dry-run) are printed as a JSON object.

diff --git a/deps/npm/docs/output/commands/npm-view.html b/deps/npm/docs/output/commands/npm-view.html index 7db48739ef8842..af43193dd0869b 100644 --- a/deps/npm/docs/output/commands/npm-view.html +++ b/deps/npm/docs/output/commands/npm-view.html @@ -161,6 +161,10 @@

Description

0.3.5, you could do the following:

npm view ronn@0.3.5 dependencies
 
+

By default, npm view shows data about the current project context (by looking for a package.json). +To show field data for the current project use a file path (i.e. .):

+
npm view . dependencies
+

You can view child fields by separating them with a period. To view the git repository URL for the latest version of npm, you would run the following command:

npm view npm repository.url
diff --git a/deps/npm/docs/output/commands/npm.html b/deps/npm/docs/output/commands/npm.html
index d1ca758360ff09..7a530efa07bb17 100644
--- a/deps/npm/docs/output/commands/npm.html
+++ b/deps/npm/docs/output/commands/npm.html
@@ -150,7 +150,7 @@ 

Table of contents

Note: This command is unaware of workspaces.

Version

-

10.2.3

+

10.2.4

Description

npm is the package manager for the Node JavaScript platform. It puts modules in place so that node can find them, and manages dependency diff --git a/deps/npm/lib/commands/exec.js b/deps/npm/lib/commands/exec.js index ed4b07dc39b4d2..d532eca107c6c1 100644 --- a/deps/npm/lib/commands/exec.js +++ b/deps/npm/lib/commands/exec.js @@ -34,24 +34,33 @@ class Exec extends BaseCommand { for (const [name, path] of this.workspaces) { const locationMsg = `in workspace ${this.npm.chalk.green(name)} at location:\n${this.npm.chalk.dim(path)}` - await this.callExec(args, { locationMsg, runPath: path }) + await this.callExec(args, { name, locationMsg, runPath: path }) } } - async callExec (args, { locationMsg, runPath } = {}) { - // This is where libnpmexec will look for locally installed packages + async callExec (args, { name, locationMsg, runPath } = {}) { + // This is where libnpmexec will look for locally installed packages at the project level const localPrefix = this.npm.localPrefix + // This is where libnpmexec will look for locally installed packages at the workspace level + let localBin = this.npm.localBin + let path = localPrefix // This is where libnpmexec will actually run the scripts from if (!runPath) { runPath = process.cwd() + } else { + // We have to consider if the workspace has its own separate versions + // libnpmexec will walk up to localDir after looking here + localBin = resolve(this.npm.localDir, name, 'node_modules', '.bin') + // We also need to look for `bin` entries in the workspace package.json + // libnpmexec will NOT look in the project root for the bin entry + path = runPath } const call = this.npm.config.get('call') let globalPath const { flatOptions, - localBin, globalBin, globalDir, chalk, @@ -79,14 +88,14 @@ class Exec extends BaseCommand { // copy args so they dont get mutated args: [...args], call, - localBin, - locationMsg, + chalk, globalBin, globalPath, + localBin, + locationMsg, output, - chalk, packages, - path: localPrefix, + path, runPath, scriptShell, yes, diff --git a/deps/npm/lib/commands/outdated.js b/deps/npm/lib/commands/outdated.js index 7e5805d41806c3..9b9283e497727e 100644 --- a/deps/npm/lib/commands/outdated.js +++ b/deps/npm/lib/commands/outdated.js @@ -6,7 +6,6 @@ const npa = require('npm-package-arg') const pickManifest = require('npm-pick-manifest') const localeCompare = require('@isaacs/string-locale-compare')('en') -const ansiTrim = require('strip-ansi') const ArboristWorkspaceCmd = require('../arborist-cmd.js') class Outdated extends ArboristWorkspaceCmd { @@ -23,6 +22,7 @@ class Outdated extends ArboristWorkspaceCmd { ] async exec (args) { + const { default: stripAnsi } = await import('strip-ansi') const global = resolve(this.npm.globalDir, '..') const where = this.npm.global ? global @@ -106,7 +106,7 @@ class Outdated extends ArboristWorkspaceCmd { const tableOpts = { align: ['l', 'r', 'r', 'r', 'l'], - stringLength: s => ansiTrim(s).length, + stringLength: s => stripAnsi(s).length, } this.npm.output(table(outTable, tableOpts)) } diff --git a/deps/npm/lib/commands/pkg.js b/deps/npm/lib/commands/pkg.js index 29bd4e89cc3c17..49a66823cca996 100644 --- a/deps/npm/lib/commands/pkg.js +++ b/deps/npm/lib/commands/pkg.js @@ -82,10 +82,9 @@ class Pkg extends BaseCommand { } } - // only outputs if not running with workspaces config, - // in case you're retrieving info for workspaces the pkgWorkspaces - // will handle the output to make sure it get keyed by ws name - if (!this.npm.config.get('workspaces')) { + // only outputs if not running with workspaces config + // execWorkspaces will handle the output otherwise + if (!this.workspaces) { this.npm.output(JSON.stringify(result, null, 2)) } diff --git a/deps/npm/lib/commands/search.js b/deps/npm/lib/commands/search.js index 85ff7db2b78840..2af4daa211dca1 100644 --- a/deps/npm/lib/commands/search.js +++ b/deps/npm/lib/commands/search.js @@ -81,12 +81,12 @@ class Search extends BaseCommand { const filterStream = new FilterStream() - // Grab a configured output stream that will spit out packages in the - // desired format. - const outputStream = formatSearchStream({ + const { default: stripAnsi } = await import('strip-ansi') + // Grab a configured output stream that will spit out packages in the desired format. + const outputStream = await formatSearchStream({ args, // --searchinclude options are not highlighted ...opts, - }) + }, stripAnsi) log.silly('search', 'searching packages') const p = new Pipeline( diff --git a/deps/npm/lib/commands/token.js b/deps/npm/lib/commands/token.js index c24684b3dd6143..dc1df6e0fcb25b 100644 --- a/deps/npm/lib/commands/token.js +++ b/deps/npm/lib/commands/token.js @@ -1,5 +1,4 @@ const Table = require('cli-table3') -const { v4: isCidrV4, v6: isCidrV6 } = require('is-cidr') const log = require('../utils/log-shim.js') const profile = require('npm-profile') @@ -137,7 +136,7 @@ class Token extends BaseCommand { const readonly = conf.readOnly const password = await readUserInfo.password() - const validCIDR = this.validateCIDRList(cidr) + const validCIDR = await this.validateCIDRList(cidr) log.info('token', 'creating') const result = await pulseTillDone.withPromise( otplease(this.npm, conf, c => profile.createToken(password, readonly, validCIDR, c)) @@ -209,7 +208,8 @@ class Token extends BaseCommand { return byId } - validateCIDRList (cidrs) { + async validateCIDRList (cidrs) { + const { v4: isCidrV4, v6: isCidrV6 } = await import('is-cidr') const maybeList = [].concat(cidrs).filter(Boolean) const list = maybeList.length === 1 ? maybeList[0].split(/,\s*/) : maybeList for (const cidr of list) { diff --git a/deps/npm/lib/utils/format-search-stream.js b/deps/npm/lib/utils/format-search-stream.js index 280e96b13fa8bd..cb29151e7c2e70 100644 --- a/deps/npm/lib/utils/format-search-stream.js +++ b/deps/npm/lib/utils/format-search-stream.js @@ -1,6 +1,5 @@ const { Minipass } = require('minipass') const columnify = require('columnify') -const ansiTrim = require('strip-ansi') // This module consumes package data in the following format: // @@ -16,8 +15,8 @@ const ansiTrim = require('strip-ansi') // The returned stream will format this package data // into a byte stream of formatted, displayable output. -module.exports = (opts) => { - return opts.json ? new JSONOutputStream() : new TextOutputStream(opts) +module.exports = async (opts, clean) => { + return opts.json ? new JSONOutputStream() : new TextOutputStream(opts, clean) } class JSONOutputStream extends Minipass { @@ -41,121 +40,96 @@ class JSONOutputStream extends Minipass { } class TextOutputStream extends Minipass { - constructor (opts) { + #clean + #opts + #line = 0 + + constructor (opts, clean) { super() - this._opts = opts - this._line = 0 + this.#clean = clean + this.#opts = opts } write (pkg) { - return super.write(prettify(pkg, ++this._line, this._opts)) - } -} - -function prettify (data, num, opts) { - var truncate = !opts.long - - var pkg = normalizePackage(data, opts) - - var columns = ['name', 'description', 'author', 'date', 'version', 'keywords'] - - if (opts.parseable) { - return columns.map(function (col) { - return pkg[col] && ('' + pkg[col]).replace(/\t/g, ' ') - }).join('\t') + return super.write(this.#prettify(pkg)) } - // stdout in tap is never a tty - /* istanbul ignore next */ - const maxWidth = process.stdout.isTTY ? process.stdout.getWindowSize()[0] : Infinity - let output = columnify( - [pkg], - { - include: columns, - showHeaders: num <= 1, - columnSplitter: ' | ', - truncate: truncate, - config: { - name: { minWidth: 25, maxWidth: 25, truncate: false, truncateMarker: '' }, - description: { minWidth: 20, maxWidth: 20 }, - author: { minWidth: 15, maxWidth: 15 }, - date: { maxWidth: 11 }, - version: { minWidth: 8, maxWidth: 8 }, - keywords: { maxWidth: Infinity }, - }, + #prettify (data) { + const pkg = { + author: data.maintainers.map((m) => `=${this.#clean(m.username)}`).join(' '), + date: 'prehistoric', + description: this.#clean(data.description ?? ''), + keywords: '', + name: this.#clean(data.name), + version: data.version, + } + if (Array.isArray(data.keywords)) { + pkg.keywords = data.keywords.map((k) => this.#clean(k)).join(' ') + } else if (typeof data.keywords === 'string') { + pkg.keywords = this.#clean(data.keywords.replace(/[,\s]+/, ' ')) + } + if (data.date) { + pkg.date = data.date.toISOString().split('T')[0] // remove time } - ).split('\n').map(line => line.slice(0, maxWidth)).join('\n') - - if (opts.color) { - output = highlightSearchTerms(output, opts.args) - } - - return output -} - -var colors = [31, 33, 32, 36, 34, 35] -var cl = colors.length - -function addColorMarker (str, arg, i) { - var m = i % cl + 1 - var markStart = String.fromCharCode(m) - var markEnd = String.fromCharCode(0) - - if (arg.charAt(0) === '/') { - return str.replace( - new RegExp(arg.slice(1, -1), 'gi'), - bit => markStart + bit + markEnd - ) - } - - // just a normal string, do the split/map thing - var pieces = str.toLowerCase().split(arg.toLowerCase()) - var p = 0 - - return pieces.map(function (piece) { - piece = str.slice(p, p + piece.length) - var mark = markStart + - str.slice(p + piece.length, p + piece.length + arg.length) + - markEnd - p += piece.length + arg.length - return piece + mark - }).join('') -} - -function colorize (line) { - for (var i = 0; i < cl; i++) { - var m = i + 1 - var color = '\u001B[' + colors[i] + 'm' - line = line.split(String.fromCharCode(m)).join(color) - } - var uncolor = '\u001B[0m' - return line.split('\u0000').join(uncolor) -} -function highlightSearchTerms (str, terms) { - terms.forEach(function (arg, i) { - str = addColorMarker(str, arg, i) - }) + const columns = ['name', 'description', 'author', 'date', 'version', 'keywords'] + if (this.#opts.parseable) { + return columns.map((col) => pkg[col] && ('' + pkg[col]).replace(/\t/g, ' ')).join('\t') + } - return colorize(str).trim() -} + // stdout in tap is never a tty + /* istanbul ignore next */ + const maxWidth = process.stdout.isTTY ? process.stdout.getWindowSize()[0] : Infinity + let output = columnify( + [pkg], + { + include: columns, + showHeaders: ++this.#line <= 1, + columnSplitter: ' | ', + truncate: !this.#opts.long, + config: { + name: { minWidth: 25, maxWidth: 25, truncate: false, truncateMarker: '' }, + description: { minWidth: 20, maxWidth: 20 }, + author: { minWidth: 15, maxWidth: 15 }, + date: { maxWidth: 11 }, + version: { minWidth: 8, maxWidth: 8 }, + keywords: { maxWidth: Infinity }, + }, + } + ).split('\n').map(line => line.slice(0, maxWidth)).join('\n') + + if (!this.#opts.color) { + return output + } -function normalizePackage (data, opts) { - return { - name: ansiTrim(data.name), - description: ansiTrim(data.description ?? ''), - author: data.maintainers.map((m) => `=${ansiTrim(m.username)}`).join(' '), - keywords: Array.isArray(data.keywords) - ? data.keywords.map(ansiTrim).join(' ') - : typeof data.keywords === 'string' - ? ansiTrim(data.keywords.replace(/[,\s]+/, ' ')) - : '', - version: data.version, - date: (data.date && - (data.date.toISOString() // remove time - .split('T').join(' ') - .replace(/:[0-9]{2}\.[0-9]{3}Z$/, '')) - .slice(0, -5)) || - 'prehistoric', + const colors = ['31m', '33m', '32m', '36m', '34m', '35m'] + + this.#opts.args.forEach((arg, i) => { + const markStart = String.fromCharCode(i % colors.length + 1) + const markEnd = String.fromCharCode(0) + + if (arg.charAt(0) === '/') { + output = output.replace( + new RegExp(arg.slice(1, -1), 'gi'), + bit => `${markStart}${bit}${markEnd}` + ) + } else { + // just a normal string, do the split/map thing + let p = 0 + + output = output.toLowerCase().split(arg.toLowerCase()).map(piece => { + piece = output.slice(p, p + piece.length) + p += piece.length + const mark = `${markStart}${output.slice(p, p + arg.length)}${markEnd}` + p += arg.length + return `${piece}${mark}` + }).join('') + } + }) + + for (let i = 1; i <= colors.length; i++) { + output = output.split(String.fromCharCode(i)).join(`\u001B[${colors[i - 1]}`) + } + return output.split('\u0000').join('\u001B[0m').trim() } } diff --git a/deps/npm/lib/utils/open-url.js b/deps/npm/lib/utils/open-url.js index f882d0c9d39341..77bb1d03d8e165 100644 --- a/deps/npm/lib/utils/open-url.js +++ b/deps/npm/lib/utils/open-url.js @@ -39,7 +39,7 @@ const open = async (npm, url, errMsg, isFile) => { const command = browser === true ? null : browser await promiseSpawn.open(url, { command }) .catch((err) => { - if (err.code !== 'ENOENT') { + if (err.code !== 127) { throw err } diff --git a/deps/npm/lib/utils/sbom-cyclonedx.js b/deps/npm/lib/utils/sbom-cyclonedx.js index 3088068ad3b5f2..0a340895bb3f49 100644 --- a/deps/npm/lib/utils/sbom-cyclonedx.js +++ b/deps/npm/lib/utils/sbom-cyclonedx.js @@ -86,7 +86,14 @@ const toCyclonedxItem = (node, { packageType }) => { let parsedLicense try { - parsedLicense = parseLicense(node.package?.license) + let license = node.package?.license + if (license) { + if (typeof license === 'object') { + license = license.type + } + } + + parsedLicense = parseLicense(license) } catch (err) { parsedLicense = null } @@ -152,7 +159,7 @@ const toCyclonedxItem = (node, { packageType }) => { // If license is a single SPDX license, use the license field if (parsedLicense?.license) { component.licenses = [{ license: { id: parsedLicense.license } }] - // If license is a conjunction, use the expression field + // If license is a conjunction, use the expression field } else if (parsedLicense?.conjunction) { component.licenses = [{ expression: node.package.license }] } diff --git a/deps/npm/lib/utils/sbom-spdx.js b/deps/npm/lib/utils/sbom-spdx.js index 890ee3310fa789..8c91147cb4102b 100644 --- a/deps/npm/lib/utils/sbom-spdx.js +++ b/deps/npm/lib/utils/sbom-spdx.js @@ -93,6 +93,13 @@ const toSpdxItem = (node, { packageType }) => { location = node.linksIn.values().next().value.location } + let license = node.package?.license + if (license) { + if (typeof license === 'object') { + license = license.type + } + } + const pkg = { name: node.packageName, SPDXID: toSpdxID(node), @@ -103,7 +110,7 @@ const toSpdxItem = (node, { packageType }) => { downloadLocation: (node.isLink ? undefined : node.resolved) || NO_ASSERTION, filesAnalyzed: false, homepage: node.package?.homepage || NO_ASSERTION, - licenseDeclared: node.package?.license || NO_ASSERTION, + licenseDeclared: license || NO_ASSERTION, externalRefs: [ { referenceCategory: REF_CAT_PACKAGE_MANAGER, diff --git a/deps/npm/man/man1/npm-ls.1 b/deps/npm/man/man1/npm-ls.1 index 25af64a1534878..7b8ea0771e1a43 100644 --- a/deps/npm/man/man1/npm-ls.1 +++ b/deps/npm/man/man1/npm-ls.1 @@ -20,7 +20,7 @@ Positional arguments are \fBname@version-range\fR identifiers, which will limit .P .RS 2 .nf -npm@10.2.3 /path/to/npm +npm@10.2.4 /path/to/npm └─┬ init-package-json@0.0.4 └── promzard@0.1.5 .fi diff --git a/deps/npm/man/man1/npm-prune.1 b/deps/npm/man/man1/npm-prune.1 index 3ab15a55c879a1..32f57580e3fb49 100644 --- a/deps/npm/man/man1/npm-prune.1 +++ b/deps/npm/man/man1/npm-prune.1 @@ -14,7 +14,7 @@ This command removes "extraneous" packages. If a package name is provided, then .P Extraneous packages are those present in the \fBnode_modules\fR folder that are not listed as any package's dependency list. .P -If the \fB--production\fR flag is specified or the \fBNODE_ENV\fR environment variable is set to \fBproduction\fR, this command will remove the packages specified in your \fBdevDependencies\fR. Setting \fB--no-production\fR will negate \fBNODE_ENV\fR being set to \fBproduction\fR. +If the \fB--omit=dev\fR flag is specified or the \fBNODE_ENV\fR environment variable is set to \fBproduction\fR, this command will remove the packages specified in your \fBdevDependencies\fR. .P If the \fB--dry-run\fR flag is used then no changes will actually be made. .P diff --git a/deps/npm/man/man1/npm-view.1 b/deps/npm/man/man1/npm-view.1 index decf76a1e9bfc7..70c435cdc929c6 100644 --- a/deps/npm/man/man1/npm-view.1 +++ b/deps/npm/man/man1/npm-view.1 @@ -32,6 +32,14 @@ npm view ronn@0.3.5 dependencies .fi .RE .P +By default, \fBnpm view\fR shows data about the current project context (by looking for a \fBpackage.json\fR). To show field data for the current project use a file path (i.e. \fB.\fR): +.P +.RS 2 +.nf +npm view . dependencies +.fi +.RE +.P You can view child fields by separating them with a period. To view the git repository URL for the latest version of \fBnpm\fR, you would run the following command: .P .RS 2 diff --git a/deps/npm/man/man1/npm.1 b/deps/npm/man/man1/npm.1 index 2f08cb27dbbca5..05d06e9f7758a4 100644 --- a/deps/npm/man/man1/npm.1 +++ b/deps/npm/man/man1/npm.1 @@ -12,7 +12,7 @@ npm Note: This command is unaware of workspaces. .SS "Version" .P -10.2.3 +10.2.4 .SS "Description" .P npm is the package manager for the Node JavaScript platform. It puts modules in place so that node can find them, and manages dependency conflicts intelligently. diff --git a/deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/index.js b/deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/index.js deleted file mode 100644 index 130a0929b8ce8c..00000000000000 --- a/deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/index.js +++ /dev/null @@ -1,8 +0,0 @@ -export default function ansiRegex({onlyFirst = false} = {}) { - const pattern = [ - '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', - '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' - ].join('|'); - - return new RegExp(pattern, onlyFirst ? undefined : 'g'); -} diff --git a/deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/index.js b/deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/index.js deleted file mode 100644 index ba19750e64e061..00000000000000 --- a/deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/index.js +++ /dev/null @@ -1,14 +0,0 @@ -import ansiRegex from 'ansi-regex'; - -const regex = ansiRegex(); - -export default function stripAnsi(string) { - if (typeof string !== 'string') { - throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``); - } - - // Even though the regex is global, we don't need to reset the `.lastIndex` - // because unlike `.exec()` and `.test()`, `.replace()` does it automatically - // and doing it manually has a performance penalty. - return string.replace(regex, ''); -} diff --git a/deps/npm/node_modules/@npmcli/config/package.json b/deps/npm/node_modules/@npmcli/config/package.json index 2f30c7ff98a644..c4eabca7d1b8c1 100644 --- a/deps/npm/node_modules/@npmcli/config/package.json +++ b/deps/npm/node_modules/@npmcli/config/package.json @@ -1,6 +1,6 @@ { "name": "@npmcli/config", - "version": "8.0.1", + "version": "8.0.2", "files": [ "bin/", "lib/" @@ -37,7 +37,7 @@ }, "dependencies": { "@npmcli/map-workspaces": "^3.0.2", - "ci-info": "^3.8.0", + "ci-info": "^4.0.0", "ini": "^4.1.0", "nopt": "^7.0.0", "proc-log": "^3.0.0", diff --git a/deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/index.js b/deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/index.js new file mode 100644 index 00000000000000..5d82581a13f990 --- /dev/null +++ b/deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/index.js @@ -0,0 +1,163 @@ +'use strict'; + +const wrapAnsi16 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${code + offset}m`; +}; + +const wrapAnsi256 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${38 + offset};5;${code}m`; +}; + +const wrapAnsi16m = (fn, offset) => (...args) => { + const rgb = fn(...args); + return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; +}; + +const ansi2ansi = n => n; +const rgb2rgb = (r, g, b) => [r, g, b]; + +const setLazyProperty = (object, property, get) => { + Object.defineProperty(object, property, { + get: () => { + const value = get(); + + Object.defineProperty(object, property, { + value, + enumerable: true, + configurable: true + }); + + return value; + }, + enumerable: true, + configurable: true + }); +}; + +/** @type {typeof import('color-convert')} */ +let colorConvert; +const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { + if (colorConvert === undefined) { + colorConvert = require('color-convert'); + } + + const offset = isBackground ? 10 : 0; + const styles = {}; + + for (const [sourceSpace, suite] of Object.entries(colorConvert)) { + const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace; + if (sourceSpace === targetSpace) { + styles[name] = wrap(identity, offset); + } else if (typeof suite === 'object') { + styles[name] = wrap(suite[targetSpace], offset); + } + } + + return styles; +}; + +function assembleStyles() { + const codes = new Map(); + const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29] + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + + // Bright color + blackBright: [90, 39], + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39] + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + + // Bright color + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49] + } + }; + + // Alias bright black as gray (and grey) + styles.color.gray = styles.color.blackBright; + styles.bgColor.bgGray = styles.bgColor.bgBlackBright; + styles.color.grey = styles.color.blackBright; + styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; + + for (const [groupName, group] of Object.entries(styles)) { + for (const [styleName, style] of Object.entries(group)) { + styles[styleName] = { + open: `\u001B[${style[0]}m`, + close: `\u001B[${style[1]}m` + }; + + group[styleName] = styles[styleName]; + + codes.set(style[0], style[1]); + } + + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + } + + Object.defineProperty(styles, 'codes', { + value: codes, + enumerable: false + }); + + styles.color.close = '\u001B[39m'; + styles.bgColor.close = '\u001B[49m'; + + setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false)); + setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true)); + + return styles; +} + +// Make the export immutable +Object.defineProperty(module, 'exports', { + enumerable: true, + get: assembleStyles +}); diff --git a/deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/license b/deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/license similarity index 92% rename from deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/license rename to deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/license index fa7ceba3eb4a96..e7af2f77107d73 100644 --- a/deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/license +++ b/deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) Sindre Sorhus (sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/package.json b/deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/package.json similarity index 80% rename from deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/package.json rename to deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/package.json index 6cd3ca5bf95d00..75393284d7e474 100644 --- a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/package.json +++ b/deps/npm/node_modules/@npmcli/disparity-colors/node_modules/ansi-styles/package.json @@ -1,6 +1,6 @@ { "name": "ansi-styles", - "version": "6.2.1", + "version": "4.3.0", "description": "ANSI escape codes for styling strings in the terminal", "license": "MIT", "repository": "chalk/ansi-styles", @@ -8,12 +8,10 @@ "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "https://sindresorhus.com" + "url": "sindresorhus.com" }, - "type": "module", - "exports": "./index.js", "engines": { - "node": ">=12" + "node": ">=8" }, "scripts": { "test": "xo && ava && tsd", @@ -45,10 +43,14 @@ "command-line", "text" ], + "dependencies": { + "color-convert": "^2.0.1" + }, "devDependencies": { - "ava": "^3.15.0", + "@types/color-convert": "^1.9.0", + "ava": "^2.3.0", "svg-term-cli": "^2.1.1", - "tsd": "^0.19.0", - "xo": "^0.47.0" + "tsd": "^0.11.0", + "xo": "^0.25.3" } } diff --git a/deps/npm/node_modules/@sigstore/sign/dist/witness/tlog/index.js b/deps/npm/node_modules/@sigstore/sign/dist/witness/tlog/index.js index 1f098df85390cf..6197b09d4cdd9a 100644 --- a/deps/npm/node_modules/@sigstore/sign/dist/witness/tlog/index.js +++ b/deps/npm/node_modules/@sigstore/sign/dist/witness/tlog/index.js @@ -22,13 +22,14 @@ const entry_1 = require("./entry"); exports.DEFAULT_REKOR_URL = 'https://rekor.sigstore.dev'; class RekorWitness { constructor(options) { + this.entryType = options.entryType; this.tlog = new client_1.TLogClient({ ...options, rekorBaseURL: options.rekorBaseURL || /* istanbul ignore next */ exports.DEFAULT_REKOR_URL, }); } async testify(content, publicKey) { - const proposedEntry = (0, entry_1.toProposedEntry)(content, publicKey); + const proposedEntry = (0, entry_1.toProposedEntry)(content, publicKey, this.entryType); const entry = await this.tlog.createEntry(proposedEntry); return toTransparencyLogEntry(entry); } diff --git a/deps/npm/node_modules/@sigstore/sign/package.json b/deps/npm/node_modules/@sigstore/sign/package.json index cd8dc14412e4da..7075ee16aeb0dc 100644 --- a/deps/npm/node_modules/@sigstore/sign/package.json +++ b/deps/npm/node_modules/@sigstore/sign/package.json @@ -1,6 +1,6 @@ { "name": "@sigstore/sign", - "version": "2.1.0", + "version": "2.2.0", "description": "Sigstore signing library", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -27,9 +27,9 @@ }, "devDependencies": { "@sigstore/jest": "^0.0.0", - "@sigstore/mock": "^0.4.0", + "@sigstore/mock": "^0.6.0", "@sigstore/rekor-types": "^2.0.0", - "@types/make-fetch-happen": "^10.0.0" + "@types/make-fetch-happen": "^10.0.3" }, "dependencies": { "@sigstore/bundle": "^2.1.0", diff --git a/deps/npm/node_modules/@sigstore/tuf/dist/client.js b/deps/npm/node_modules/@sigstore/tuf/dist/client.js index 797346d39e6202..865d52b73027ed 100644 --- a/deps/npm/node_modules/@sigstore/tuf/dist/client.js +++ b/deps/npm/node_modules/@sigstore/tuf/dist/client.js @@ -25,8 +25,8 @@ const tuf_js_1 = require("tuf-js"); const target_1 = require("./target"); class TUFClient { constructor(options) { - initTufCache(options.cachePath, options.rootPath); - const remote = initRemoteConfig(options.cachePath, options.mirrorURL); + initTufCache(options); + const remote = initRemoteConfig(options); this.updater = initClient(options.cachePath, remote, options); } async refresh() { @@ -42,7 +42,7 @@ exports.TUFClient = TUFClient; // created. If the targets directory does not exist, it will be created. // If the root.json file does not exist, it will be copied from the // rootPath argument. -function initTufCache(cachePath, tufRootPath) { +function initTufCache({ cachePath, rootPath: tufRootPath, force, }) { const targetsPath = path_1.default.join(cachePath, 'targets'); const cachedRootPath = path_1.default.join(cachePath, 'root.json'); if (!fs_1.default.existsSync(cachePath)) { @@ -51,7 +51,9 @@ function initTufCache(cachePath, tufRootPath) { if (!fs_1.default.existsSync(targetsPath)) { fs_1.default.mkdirSync(targetsPath); } - if (!fs_1.default.existsSync(cachedRootPath)) { + // If the root.json file does not exist (or we're forcing re-initialization), + // copy it from the rootPath argument + if (!fs_1.default.existsSync(cachedRootPath) || force) { fs_1.default.copyFileSync(tufRootPath, cachedRootPath); } return cachePath; @@ -59,14 +61,18 @@ function initTufCache(cachePath, tufRootPath) { // Initializes the remote.json file, which contains the URL of the TUF // repository. If the file does not exist, it will be created. If the file // exists, it will be parsed and returned. -function initRemoteConfig(rootDir, mirrorURL) { +function initRemoteConfig({ cachePath, mirrorURL, force, }) { let remoteConfig; - const remoteConfigPath = path_1.default.join(rootDir, 'remote.json'); - if (fs_1.default.existsSync(remoteConfigPath)) { + const remoteConfigPath = path_1.default.join(cachePath, 'remote.json'); + // If the remote config file exists, read it and parse it (skip if force is + // true) + if (!force && fs_1.default.existsSync(remoteConfigPath)) { const data = fs_1.default.readFileSync(remoteConfigPath, 'utf-8'); remoteConfig = JSON.parse(data); } - if (!remoteConfig) { + // If the remote config file does not exist (or we're forcing initialization), + // create it + if (!remoteConfig || force) { remoteConfig = { mirror: mirrorURL }; fs_1.default.writeFileSync(remoteConfigPath, JSON.stringify(remoteConfig)); } diff --git a/deps/npm/node_modules/@sigstore/tuf/dist/index.js b/deps/npm/node_modules/@sigstore/tuf/dist/index.js index 0d201c356dffc5..297c7231408c25 100644 --- a/deps/npm/node_modules/@sigstore/tuf/dist/index.js +++ b/deps/npm/node_modules/@sigstore/tuf/dist/index.js @@ -1,6 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.TUFError = exports.initTUF = exports.getTrustedRoot = void 0; +exports.TUFError = exports.initTUF = exports.getTrustedRoot = exports.DEFAULT_MIRROR_URL = void 0; /* Copyright 2023 The Sigstore Authors. @@ -19,8 +19,8 @@ limitations under the License. const protobuf_specs_1 = require("@sigstore/protobuf-specs"); const appdata_1 = require("./appdata"); const client_1 = require("./client"); +exports.DEFAULT_MIRROR_URL = 'https://tuf-repo-cdn.sigstore.dev'; const DEFAULT_CACHE_DIR = 'sigstore-js'; -const DEFAULT_MIRROR_URL = 'https://tuf-repo-cdn.sigstore.dev'; const DEFAULT_TUF_ROOT_PATH = '../store/public-good-instance-root.json'; const DEFAULT_RETRY = { retries: 2 }; const DEFAULT_TIMEOUT = 5000; @@ -46,9 +46,10 @@ function createClient(options) { return new client_1.TUFClient({ cachePath: options.cachePath || (0, appdata_1.appDataPath)(DEFAULT_CACHE_DIR), rootPath: options.rootPath || require.resolve(DEFAULT_TUF_ROOT_PATH), - mirrorURL: options.mirrorURL || DEFAULT_MIRROR_URL, + mirrorURL: options.mirrorURL || exports.DEFAULT_MIRROR_URL, retry: options.retry ?? DEFAULT_RETRY, timeout: options.timeout ?? DEFAULT_TIMEOUT, + force: options.force ?? false, }); } var error_1 = require("./error"); diff --git a/deps/npm/node_modules/@sigstore/tuf/package.json b/deps/npm/node_modules/@sigstore/tuf/package.json index a655d52a0407a3..38d5a03ad5be1c 100644 --- a/deps/npm/node_modules/@sigstore/tuf/package.json +++ b/deps/npm/node_modules/@sigstore/tuf/package.json @@ -1,6 +1,6 @@ { "name": "@sigstore/tuf", - "version": "2.1.0", + "version": "2.2.0", "description": "Client for the Sigstore TUF repository", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/agent-base/dist/helpers.js b/deps/npm/node_modules/agent-base/dist/helpers.js similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/agent-base/dist/helpers.js rename to deps/npm/node_modules/agent-base/dist/helpers.js diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/agent-base/dist/index.js b/deps/npm/node_modules/agent-base/dist/index.js similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/agent-base/dist/index.js rename to deps/npm/node_modules/agent-base/dist/index.js diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/agent-base/package.json b/deps/npm/node_modules/agent-base/package.json similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/agent-base/package.json rename to deps/npm/node_modules/agent-base/package.json diff --git a/deps/npm/node_modules/ansi-regex/index.js b/deps/npm/node_modules/ansi-regex/index.js index 616ff837d3ff01..130a0929b8ce8c 100644 --- a/deps/npm/node_modules/ansi-regex/index.js +++ b/deps/npm/node_modules/ansi-regex/index.js @@ -1,10 +1,8 @@ -'use strict'; - -module.exports = ({onlyFirst = false} = {}) => { +export default function ansiRegex({onlyFirst = false} = {}) { const pattern = [ - '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' ].join('|'); return new RegExp(pattern, onlyFirst ? undefined : 'g'); -}; +} diff --git a/deps/npm/node_modules/ansi-regex/license b/deps/npm/node_modules/ansi-regex/license index e7af2f77107d73..fa7ceba3eb4a96 100644 --- a/deps/npm/node_modules/ansi-regex/license +++ b/deps/npm/node_modules/ansi-regex/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (sindresorhus.com) +Copyright (c) Sindre Sorhus (https://sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/ansi-regex/package.json b/deps/npm/node_modules/ansi-regex/package.json index 017f53116a9e28..7bbb563bf2a70a 100644 --- a/deps/npm/node_modules/ansi-regex/package.json +++ b/deps/npm/node_modules/ansi-regex/package.json @@ -1,16 +1,19 @@ { "name": "ansi-regex", - "version": "5.0.1", + "version": "6.0.1", "description": "Regular expression for matching ANSI escape codes", "license": "MIT", "repository": "chalk/ansi-regex", + "funding": "https://github.com/chalk/ansi-regex?sponsor=1", "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "sindresorhus.com" + "url": "https://sindresorhus.com" }, + "type": "module", + "exports": "./index.js", "engines": { - "node": ">=8" + "node": ">=12" }, "scripts": { "test": "xo && ava && tsd", @@ -48,8 +51,8 @@ "pattern" ], "devDependencies": { - "ava": "^2.4.0", - "tsd": "^0.9.0", - "xo": "^0.25.3" + "ava": "^3.15.0", + "tsd": "^0.14.0", + "xo": "^0.38.2" } } diff --git a/deps/npm/node_modules/ansi-styles/index.js b/deps/npm/node_modules/ansi-styles/index.js index 5d82581a13f990..d7bede44b7b6ba 100644 --- a/deps/npm/node_modules/ansi-styles/index.js +++ b/deps/npm/node_modules/ansi-styles/index.js @@ -1,130 +1,83 @@ -'use strict'; - -const wrapAnsi16 = (fn, offset) => (...args) => { - const code = fn(...args); - return `\u001B[${code + offset}m`; -}; - -const wrapAnsi256 = (fn, offset) => (...args) => { - const code = fn(...args); - return `\u001B[${38 + offset};5;${code}m`; -}; - -const wrapAnsi16m = (fn, offset) => (...args) => { - const rgb = fn(...args); - return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; -}; - -const ansi2ansi = n => n; -const rgb2rgb = (r, g, b) => [r, g, b]; - -const setLazyProperty = (object, property, get) => { - Object.defineProperty(object, property, { - get: () => { - const value = get(); - - Object.defineProperty(object, property, { - value, - enumerable: true, - configurable: true - }); - - return value; - }, - enumerable: true, - configurable: true - }); +const ANSI_BACKGROUND_OFFSET = 10; + +const wrapAnsi16 = (offset = 0) => code => `\u001B[${code + offset}m`; + +const wrapAnsi256 = (offset = 0) => code => `\u001B[${38 + offset};5;${code}m`; + +const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`; + +const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + overline: [53, 55], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29], + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + + // Bright color + blackBright: [90, 39], + gray: [90, 39], // Alias of `blackBright` + grey: [90, 39], // Alias of `blackBright` + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39], + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + + // Bright color + bgBlackBright: [100, 49], + bgGray: [100, 49], // Alias of `bgBlackBright` + bgGrey: [100, 49], // Alias of `bgBlackBright` + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49], + }, }; -/** @type {typeof import('color-convert')} */ -let colorConvert; -const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { - if (colorConvert === undefined) { - colorConvert = require('color-convert'); - } - - const offset = isBackground ? 10 : 0; - const styles = {}; - - for (const [sourceSpace, suite] of Object.entries(colorConvert)) { - const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace; - if (sourceSpace === targetSpace) { - styles[name] = wrap(identity, offset); - } else if (typeof suite === 'object') { - styles[name] = wrap(suite[targetSpace], offset); - } - } - - return styles; -}; +export const modifierNames = Object.keys(styles.modifier); +export const foregroundColorNames = Object.keys(styles.color); +export const backgroundColorNames = Object.keys(styles.bgColor); +export const colorNames = [...foregroundColorNames, ...backgroundColorNames]; function assembleStyles() { const codes = new Map(); - const styles = { - modifier: { - reset: [0, 0], - // 21 isn't widely supported and 22 does the same thing - bold: [1, 22], - dim: [2, 22], - italic: [3, 23], - underline: [4, 24], - inverse: [7, 27], - hidden: [8, 28], - strikethrough: [9, 29] - }, - color: { - black: [30, 39], - red: [31, 39], - green: [32, 39], - yellow: [33, 39], - blue: [34, 39], - magenta: [35, 39], - cyan: [36, 39], - white: [37, 39], - - // Bright color - blackBright: [90, 39], - redBright: [91, 39], - greenBright: [92, 39], - yellowBright: [93, 39], - blueBright: [94, 39], - magentaBright: [95, 39], - cyanBright: [96, 39], - whiteBright: [97, 39] - }, - bgColor: { - bgBlack: [40, 49], - bgRed: [41, 49], - bgGreen: [42, 49], - bgYellow: [43, 49], - bgBlue: [44, 49], - bgMagenta: [45, 49], - bgCyan: [46, 49], - bgWhite: [47, 49], - - // Bright color - bgBlackBright: [100, 49], - bgRedBright: [101, 49], - bgGreenBright: [102, 49], - bgYellowBright: [103, 49], - bgBlueBright: [104, 49], - bgMagentaBright: [105, 49], - bgCyanBright: [106, 49], - bgWhiteBright: [107, 49] - } - }; - - // Alias bright black as gray (and grey) - styles.color.gray = styles.color.blackBright; - styles.bgColor.bgGray = styles.bgColor.bgBlackBright; - styles.color.grey = styles.color.blackBright; - styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; for (const [groupName, group] of Object.entries(styles)) { for (const [styleName, style] of Object.entries(group)) { styles[styleName] = { open: `\u001B[${style[0]}m`, - close: `\u001B[${style[1]}m` + close: `\u001B[${style[1]}m`, }; group[styleName] = styles[styleName]; @@ -134,30 +87,137 @@ function assembleStyles() { Object.defineProperty(styles, groupName, { value: group, - enumerable: false + enumerable: false, }); } Object.defineProperty(styles, 'codes', { value: codes, - enumerable: false + enumerable: false, }); styles.color.close = '\u001B[39m'; styles.bgColor.close = '\u001B[49m'; - setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false)); - setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false)); - setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false)); - setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true)); - setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true)); - setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true)); + styles.color.ansi = wrapAnsi16(); + styles.color.ansi256 = wrapAnsi256(); + styles.color.ansi16m = wrapAnsi16m(); + styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET); + styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET); + styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET); + + // From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js + Object.defineProperties(styles, { + rgbToAnsi256: { + value: (red, green, blue) => { + // We use the extended greyscale palette here, with the exception of + // black and white. normal palette only has 4 greyscale shades. + if (red === green && green === blue) { + if (red < 8) { + return 16; + } + + if (red > 248) { + return 231; + } + + return Math.round(((red - 8) / 247) * 24) + 232; + } + + return 16 + + (36 * Math.round(red / 255 * 5)) + + (6 * Math.round(green / 255 * 5)) + + Math.round(blue / 255 * 5); + }, + enumerable: false, + }, + hexToRgb: { + value: hex => { + const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16)); + if (!matches) { + return [0, 0, 0]; + } + + let [colorString] = matches; + + if (colorString.length === 3) { + colorString = [...colorString].map(character => character + character).join(''); + } + + const integer = Number.parseInt(colorString, 16); + + return [ + /* eslint-disable no-bitwise */ + (integer >> 16) & 0xFF, + (integer >> 8) & 0xFF, + integer & 0xFF, + /* eslint-enable no-bitwise */ + ]; + }, + enumerable: false, + }, + hexToAnsi256: { + value: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)), + enumerable: false, + }, + ansi256ToAnsi: { + value: code => { + if (code < 8) { + return 30 + code; + } + + if (code < 16) { + return 90 + (code - 8); + } + + let red; + let green; + let blue; + + if (code >= 232) { + red = (((code - 232) * 10) + 8) / 255; + green = red; + blue = red; + } else { + code -= 16; + + const remainder = code % 36; + + red = Math.floor(code / 36) / 5; + green = Math.floor(remainder / 6) / 5; + blue = (remainder % 6) / 5; + } + + const value = Math.max(red, green, blue) * 2; + + if (value === 0) { + return 30; + } + + // eslint-disable-next-line no-bitwise + let result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red)); + + if (value === 2) { + result += 60; + } + + return result; + }, + enumerable: false, + }, + rgbToAnsi: { + value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)), + enumerable: false, + }, + hexToAnsi: { + value: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)), + enumerable: false, + }, + }); return styles; } -// Make the export immutable -Object.defineProperty(module, 'exports', { - enumerable: true, - get: assembleStyles -}); +const ansiStyles = assembleStyles(); + +export default ansiStyles; diff --git a/deps/npm/node_modules/ansi-styles/license b/deps/npm/node_modules/ansi-styles/license index e7af2f77107d73..fa7ceba3eb4a96 100644 --- a/deps/npm/node_modules/ansi-styles/license +++ b/deps/npm/node_modules/ansi-styles/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (sindresorhus.com) +Copyright (c) Sindre Sorhus (https://sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/ansi-styles/package.json b/deps/npm/node_modules/ansi-styles/package.json index 75393284d7e474..6cd3ca5bf95d00 100644 --- a/deps/npm/node_modules/ansi-styles/package.json +++ b/deps/npm/node_modules/ansi-styles/package.json @@ -1,6 +1,6 @@ { "name": "ansi-styles", - "version": "4.3.0", + "version": "6.2.1", "description": "ANSI escape codes for styling strings in the terminal", "license": "MIT", "repository": "chalk/ansi-styles", @@ -8,10 +8,12 @@ "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "sindresorhus.com" + "url": "https://sindresorhus.com" }, + "type": "module", + "exports": "./index.js", "engines": { - "node": ">=8" + "node": ">=12" }, "scripts": { "test": "xo && ava && tsd", @@ -43,14 +45,10 @@ "command-line", "text" ], - "dependencies": { - "color-convert": "^2.0.1" - }, "devDependencies": { - "@types/color-convert": "^1.9.0", - "ava": "^2.3.0", + "ava": "^3.15.0", "svg-term-cli": "^2.1.1", - "tsd": "^0.11.0", - "xo": "^0.25.3" + "tsd": "^0.19.0", + "xo": "^0.47.0" } } diff --git a/deps/npm/node_modules/ci-info/package.json b/deps/npm/node_modules/ci-info/package.json index 8d3ff0030cc919..3c6b9e4adac8e8 100644 --- a/deps/npm/node_modules/ci-info/package.json +++ b/deps/npm/node_modules/ci-info/package.json @@ -1,6 +1,6 @@ { "name": "ci-info", - "version": "3.9.0", + "version": "4.0.0", "description": "Get details about the current Continuous Integration environment", "main": "index.js", "typings": "index.d.ts", diff --git a/deps/npm/node_modules/ci-info/vendors.json b/deps/npm/node_modules/ci-info/vendors.json index 7bedd96a7972fa..6b65e3f9b541f8 100644 --- a/deps/npm/node_modules/ci-info/vendors.json +++ b/deps/npm/node_modules/ci-info/vendors.json @@ -1,4 +1,10 @@ [ + { + "name": "Agola CI", + "constant": "AGOLA", + "env": "AGOLA_GIT_REF", + "pr": "AGOLA_PULL_REQUEST_ID" + }, { "name": "Appcircle", "constant": "APPCIRCLE", @@ -104,6 +110,11 @@ "constant": "DSARI", "env": "DSARI" }, + { + "name": "Earthly", + "constant": "EARTHLY", + "env": "EARTHLY_CI" + }, { "name": "Expo Application Services", "constant": "EAS", @@ -114,6 +125,11 @@ "constant": "GERRIT", "env": "GERRIT_PROJECT" }, + { + "name": "Gitea Actions", + "constant": "GITEA_ACTIONS", + "env": "GITEA_ACTIONS" + }, { "name": "GitHub Actions", "constant": "GITHUB_ACTIONS", @@ -199,6 +215,11 @@ "ne": "false" } }, + { + "name": "Prow", + "constant": "PROW", + "env": "PROW_JOB_ID" + }, { "name": "ReleaseHub", "constant": "RELEASEHUB", @@ -233,20 +254,6 @@ "env": "SEMAPHORE", "pr": "PULL_REQUEST_NUMBER" }, - { - "name": "Shippable", - "constant": "SHIPPABLE", - "env": "SHIPPABLE", - "pr": { - "IS_PULL_REQUEST": "true" - } - }, - { - "name": "Solano CI", - "constant": "SOLANO", - "env": "TDDIUM", - "pr": "TDDIUM_PR_ID" - }, { "name": "Sourcehut", "constant": "SOURCEHUT", @@ -281,6 +288,14 @@ "ne": "false" } }, + { + "name": "Vela", + "constant": "VELA", + "env": "VELA", + "pr": { + "VELA_PULL_REQUEST": "1" + } + }, { "name": "Vercel", "constant": "VERCEL", diff --git a/deps/npm/node_modules/cidr-regex/index.js b/deps/npm/node_modules/cidr-regex/index.js index 0f12ee10b3c815..61597c62532aa8 100644 --- a/deps/npm/node_modules/cidr-regex/index.js +++ b/deps/npm/node_modules/cidr-regex/index.js @@ -1,18 +1,15 @@ -"use strict"; - -const ipRegex = require("ip-regex"); +import ipRegex from "ip-regex"; const defaultOpts = {exact: false}; - const v4str = `${ipRegex.v4().source}\\/(3[0-2]|[12]?[0-9])`; const v6str = `${ipRegex.v6().source}\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])`; -// can not precompile the non-exact regexes because global flag makes the regex object stateful -// which would require the user to reset .lastIndex on subsequent calls +// pre-compile only the exact regexes as global flag makes regex objects stateful const v4exact = new RegExp(`^${v4str}$`); const v6exact = new RegExp(`^${v6str}$`); const v46exact = new RegExp(`(?:^${v4str}$)|(?:^${v6str}$)`); -module.exports = ({exact} = defaultOpts) => exact ? v46exact : new RegExp(`(?:${v4str})|(?:${v6str})`, "g"); -module.exports.v4 = ({exact} = defaultOpts) => exact ? v4exact : new RegExp(v4str, "g"); -module.exports.v6 = ({exact} = defaultOpts) => exact ? v6exact : new RegExp(v6str, "g"); +const cidrRegex = ({exact} = defaultOpts) => exact ? v46exact : new RegExp(`(?:${v4str})|(?:${v6str})`, "g"); +export const v4 = cidrRegex.v4 = ({exact} = defaultOpts) => exact ? v4exact : new RegExp(v4str, "g"); +export const v6 = cidrRegex.v6 = ({exact} = defaultOpts) => exact ? v6exact : new RegExp(v6str, "g"); +export default cidrRegex; diff --git a/deps/npm/node_modules/cidr-regex/package.json b/deps/npm/node_modules/cidr-regex/package.json index 8ddef4ed96a935..4f743464075e3e 100644 --- a/deps/npm/node_modules/cidr-regex/package.json +++ b/deps/npm/node_modules/cidr-regex/package.json @@ -1,6 +1,6 @@ { "name": "cidr-regex", - "version": "3.1.1", + "version": "4.0.3", "description": "Regular expression for matching IP addresses in CIDR notation", "author": "silverwind ", "contributors": [ @@ -8,35 +8,25 @@ ], "repository": "silverwind/cidr-regex", "license": "BSD-2-Clause", - "scripts": { - "test": "make test" - }, + "type": "module", + "exports": "./index.js", + "sideEffects": false, "engines": { - "node": ">=10" + "node": ">=14" }, "files": [ "index.js", "index.d.ts" ], - "keywords": [ - "cidr", - "regex", - "notation", - "cidr notation", - "prefix", - "prefixes", - "ip", - "ip address" - ], "dependencies": { - "ip-regex": "^4.1.0" + "ip-regex": "^5.0.0" }, "devDependencies": { - "eslint": "7.8.1", - "eslint-config-silverwind": "18.0.8", - "jest": "26.4.2", - "tsd": "0.13.1", - "updates": "10.3.6", - "versions": "8.4.3" + "eslint": "8.37.0", + "eslint-config-silverwind": "65.1.3", + "tsd": "0.28.1", + "updates": "13.2.9", + "versions": "10.4.2", + "vitest": "0.29.8" } } diff --git a/deps/npm/node_modules/cli-columns/node_modules/ansi-regex/index.js b/deps/npm/node_modules/cli-columns/node_modules/ansi-regex/index.js new file mode 100644 index 00000000000000..616ff837d3ff01 --- /dev/null +++ b/deps/npm/node_modules/cli-columns/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/license b/deps/npm/node_modules/cli-columns/node_modules/ansi-regex/license similarity index 92% rename from deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/license rename to deps/npm/node_modules/cli-columns/node_modules/ansi-regex/license index fa7ceba3eb4a96..e7af2f77107d73 100644 --- a/deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/license +++ b/deps/npm/node_modules/cli-columns/node_modules/ansi-regex/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) Sindre Sorhus (sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/package.json b/deps/npm/node_modules/cli-columns/node_modules/ansi-regex/package.json similarity index 75% rename from deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/package.json rename to deps/npm/node_modules/cli-columns/node_modules/ansi-regex/package.json index 7bbb563bf2a70a..017f53116a9e28 100644 --- a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/package.json +++ b/deps/npm/node_modules/cli-columns/node_modules/ansi-regex/package.json @@ -1,19 +1,16 @@ { "name": "ansi-regex", - "version": "6.0.1", + "version": "5.0.1", "description": "Regular expression for matching ANSI escape codes", "license": "MIT", "repository": "chalk/ansi-regex", - "funding": "https://github.com/chalk/ansi-regex?sponsor=1", "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "https://sindresorhus.com" + "url": "sindresorhus.com" }, - "type": "module", - "exports": "./index.js", "engines": { - "node": ">=12" + "node": ">=8" }, "scripts": { "test": "xo && ava && tsd", @@ -51,8 +48,8 @@ "pattern" ], "devDependencies": { - "ava": "^3.15.0", - "tsd": "^0.14.0", - "xo": "^0.38.2" + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" } } diff --git a/deps/npm/node_modules/cli-columns/node_modules/strip-ansi/index.js b/deps/npm/node_modules/cli-columns/node_modules/strip-ansi/index.js new file mode 100644 index 00000000000000..9a593dfcd1fd5c --- /dev/null +++ b/deps/npm/node_modules/cli-columns/node_modules/strip-ansi/index.js @@ -0,0 +1,4 @@ +'use strict'; +const ansiRegex = require('ansi-regex'); + +module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/license b/deps/npm/node_modules/cli-columns/node_modules/strip-ansi/license similarity index 92% rename from deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/license rename to deps/npm/node_modules/cli-columns/node_modules/strip-ansi/license index fa7ceba3eb4a96..e7af2f77107d73 100644 --- a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/license +++ b/deps/npm/node_modules/cli-columns/node_modules/strip-ansi/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) Sindre Sorhus (sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/package.json b/deps/npm/node_modules/cli-columns/node_modules/strip-ansi/package.json similarity index 71% rename from deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/package.json rename to deps/npm/node_modules/cli-columns/node_modules/strip-ansi/package.json index e1f455c325b007..1a41108d42831c 100644 --- a/deps/npm/node_modules/@isaacs/cliui/node_modules/strip-ansi/package.json +++ b/deps/npm/node_modules/cli-columns/node_modules/strip-ansi/package.json @@ -1,19 +1,16 @@ { "name": "strip-ansi", - "version": "7.1.0", + "version": "6.0.1", "description": "Strip ANSI escape codes from a string", "license": "MIT", "repository": "chalk/strip-ansi", - "funding": "https://github.com/chalk/strip-ansi?sponsor=1", "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "https://sindresorhus.com" + "url": "sindresorhus.com" }, - "type": "module", - "exports": "./index.js", "engines": { - "node": ">=12" + "node": ">=8" }, "scripts": { "test": "xo && ava && tsd" @@ -47,11 +44,11 @@ "text" ], "dependencies": { - "ansi-regex": "^6.0.1" + "ansi-regex": "^5.0.1" }, "devDependencies": { - "ava": "^3.15.0", - "tsd": "^0.17.0", - "xo": "^0.44.0" + "ava": "^2.4.0", + "tsd": "^0.10.0", + "xo": "^0.25.3" } } diff --git a/deps/npm/node_modules/columnify/node_modules/ansi-regex/index.js b/deps/npm/node_modules/columnify/node_modules/ansi-regex/index.js new file mode 100644 index 00000000000000..616ff837d3ff01 --- /dev/null +++ b/deps/npm/node_modules/columnify/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/license b/deps/npm/node_modules/columnify/node_modules/ansi-regex/license similarity index 92% rename from deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/license rename to deps/npm/node_modules/columnify/node_modules/ansi-regex/license index fa7ceba3eb4a96..e7af2f77107d73 100644 --- a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/license +++ b/deps/npm/node_modules/columnify/node_modules/ansi-regex/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (https://sindresorhus.com) +Copyright (c) Sindre Sorhus (sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/package.json b/deps/npm/node_modules/columnify/node_modules/ansi-regex/package.json similarity index 75% rename from deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/package.json rename to deps/npm/node_modules/columnify/node_modules/ansi-regex/package.json index 7bbb563bf2a70a..017f53116a9e28 100644 --- a/deps/npm/node_modules/@isaacs/cliui/node_modules/ansi-regex/package.json +++ b/deps/npm/node_modules/columnify/node_modules/ansi-regex/package.json @@ -1,19 +1,16 @@ { "name": "ansi-regex", - "version": "6.0.1", + "version": "5.0.1", "description": "Regular expression for matching ANSI escape codes", "license": "MIT", "repository": "chalk/ansi-regex", - "funding": "https://github.com/chalk/ansi-regex?sponsor=1", "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "https://sindresorhus.com" + "url": "sindresorhus.com" }, - "type": "module", - "exports": "./index.js", "engines": { - "node": ">=12" + "node": ">=8" }, "scripts": { "test": "xo && ava && tsd", @@ -51,8 +48,8 @@ "pattern" ], "devDependencies": { - "ava": "^3.15.0", - "tsd": "^0.14.0", - "xo": "^0.38.2" + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" } } diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/index.js b/deps/npm/node_modules/columnify/node_modules/strip-ansi/index.js new file mode 100644 index 00000000000000..9a593dfcd1fd5c --- /dev/null +++ b/deps/npm/node_modules/columnify/node_modules/strip-ansi/index.js @@ -0,0 +1,4 @@ +'use strict'; +const ansiRegex = require('ansi-regex'); + +module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; diff --git a/deps/npm/node_modules/columnify/node_modules/strip-ansi/license b/deps/npm/node_modules/columnify/node_modules/strip-ansi/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/columnify/node_modules/strip-ansi/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/package.json b/deps/npm/node_modules/columnify/node_modules/strip-ansi/package.json similarity index 71% rename from deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/package.json rename to deps/npm/node_modules/columnify/node_modules/strip-ansi/package.json index e1f455c325b007..1a41108d42831c 100644 --- a/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/package.json +++ b/deps/npm/node_modules/columnify/node_modules/strip-ansi/package.json @@ -1,19 +1,16 @@ { "name": "strip-ansi", - "version": "7.1.0", + "version": "6.0.1", "description": "Strip ANSI escape codes from a string", "license": "MIT", "repository": "chalk/strip-ansi", - "funding": "https://github.com/chalk/strip-ansi?sponsor=1", "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "https://sindresorhus.com" + "url": "sindresorhus.com" }, - "type": "module", - "exports": "./index.js", "engines": { - "node": ">=12" + "node": ">=8" }, "scripts": { "test": "xo && ava && tsd" @@ -47,11 +44,11 @@ "text" ], "dependencies": { - "ansi-regex": "^6.0.1" + "ansi-regex": "^5.0.1" }, "devDependencies": { - "ava": "^3.15.0", - "tsd": "^0.17.0", - "xo": "^0.44.0" + "ava": "^2.4.0", + "tsd": "^0.10.0", + "xo": "^0.25.3" } } diff --git a/deps/npm/node_modules/function-bind/implementation.js b/deps/npm/node_modules/function-bind/implementation.js index cc4daec1b080a1..fd4384cc0c34ce 100644 --- a/deps/npm/node_modules/function-bind/implementation.js +++ b/deps/npm/node_modules/function-bind/implementation.js @@ -3,43 +3,75 @@ /* eslint no-invalid-this: 1 */ var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible '; -var slice = Array.prototype.slice; var toStr = Object.prototype.toString; +var max = Math.max; var funcType = '[object Function]'; +var concatty = function concatty(a, b) { + var arr = []; + + for (var i = 0; i < a.length; i += 1) { + arr[i] = a[i]; + } + for (var j = 0; j < b.length; j += 1) { + arr[j + a.length] = b[j]; + } + + return arr; +}; + +var slicy = function slicy(arrLike, offset) { + var arr = []; + for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) { + arr[j] = arrLike[i]; + } + return arr; +}; + +var joiny = function (arr, joiner) { + var str = ''; + for (var i = 0; i < arr.length; i += 1) { + str += arr[i]; + if (i + 1 < arr.length) { + str += joiner; + } + } + return str; +}; + module.exports = function bind(that) { var target = this; - if (typeof target !== 'function' || toStr.call(target) !== funcType) { + if (typeof target !== 'function' || toStr.apply(target) !== funcType) { throw new TypeError(ERROR_MESSAGE + target); } - var args = slice.call(arguments, 1); + var args = slicy(arguments, 1); var bound; var binder = function () { if (this instanceof bound) { var result = target.apply( this, - args.concat(slice.call(arguments)) + concatty(args, arguments) ); if (Object(result) === result) { return result; } return this; - } else { - return target.apply( - that, - args.concat(slice.call(arguments)) - ); } + return target.apply( + that, + concatty(args, arguments) + ); + }; - var boundLength = Math.max(0, target.length - args.length); + var boundLength = max(0, target.length - args.length); var boundArgs = []; for (var i = 0; i < boundLength; i++) { - boundArgs.push('$' + i); + boundArgs[i] = '$' + i; } - bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder); + bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder); if (target.prototype) { var Empty = function Empty() {}; diff --git a/deps/npm/node_modules/function-bind/package.json b/deps/npm/node_modules/function-bind/package.json index 20a1727cbf8711..61859638977906 100644 --- a/deps/npm/node_modules/function-bind/package.json +++ b/deps/npm/node_modules/function-bind/package.json @@ -1,6 +1,6 @@ { "name": "function-bind", - "version": "1.1.1", + "version": "1.1.2", "description": "Implementation of Function.prototype.bind", "keywords": [ "function", @@ -9,7 +9,13 @@ "es5" ], "author": "Raynos ", - "repository": "git://github.com/Raynos/function-bind.git", + "repository": { + "type": "git", + "url": "https://github.com/Raynos/function-bind.git" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + }, "main": "index", "homepage": "https://github.com/Raynos/function-bind", "contributors": [ @@ -25,24 +31,29 @@ "url": "https://github.com/Raynos/function-bind/issues", "email": "raynos2@gmail.com" }, - "dependencies": {}, "devDependencies": { - "@ljharb/eslint-config": "^12.2.1", - "covert": "^1.1.0", - "eslint": "^4.5.0", - "jscs": "^3.0.7", - "tape": "^4.8.0" + "@ljharb/eslint-config": "^21.1.0", + "aud": "^2.0.3", + "auto-changelog": "^2.4.0", + "eslint": "=8.8.0", + "in-publish": "^2.0.1", + "npmignore": "^0.3.0", + "nyc": "^10.3.2", + "safe-publish-latest": "^2.0.0", + "tape": "^5.7.1" }, "license": "MIT", "scripts": { + "prepublishOnly": "safe-publish-latest", + "prepublish": "not-in-publish || npm run prepublishOnly", + "prepack": "npmignore --auto --commentLines=autogenerated", "pretest": "npm run lint", "test": "npm run tests-only", - "posttest": "npm run coverage -- --quiet", - "tests-only": "node test", - "coverage": "covert test/*.js", - "lint": "npm run jscs && npm run eslint", - "jscs": "jscs *.js */*.js", - "eslint": "eslint *.js */*.js" + "posttest": "aud --production", + "tests-only": "nyc tape 'test/**/*.js'", + "lint": "eslint --ext=js,mjs .", + "version": "auto-changelog && git add CHANGELOG.md", + "postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\"" }, "testling": { "files": "test/index.js", @@ -59,5 +70,18 @@ "iphone/6.0..latest", "android-browser/4.2..latest" ] + }, + "auto-changelog": { + "output": "CHANGELOG.md", + "template": "keepachangelog", + "unreleased": false, + "commitLimit": false, + "backfillLimit": false, + "hideCredit": true + }, + "publishConfig": { + "ignore": [ + ".github/workflows" + ] } } diff --git a/deps/npm/node_modules/gauge/node_modules/ansi-regex/index.js b/deps/npm/node_modules/gauge/node_modules/ansi-regex/index.js new file mode 100644 index 00000000000000..616ff837d3ff01 --- /dev/null +++ b/deps/npm/node_modules/gauge/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/deps/npm/node_modules/gauge/node_modules/ansi-regex/license b/deps/npm/node_modules/gauge/node_modules/ansi-regex/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/gauge/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/gauge/node_modules/ansi-regex/package.json b/deps/npm/node_modules/gauge/node_modules/ansi-regex/package.json new file mode 100644 index 00000000000000..017f53116a9e28 --- /dev/null +++ b/deps/npm/node_modules/gauge/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/gauge/node_modules/strip-ansi/index.js b/deps/npm/node_modules/gauge/node_modules/strip-ansi/index.js new file mode 100644 index 00000000000000..9a593dfcd1fd5c --- /dev/null +++ b/deps/npm/node_modules/gauge/node_modules/strip-ansi/index.js @@ -0,0 +1,4 @@ +'use strict'; +const ansiRegex = require('ansi-regex'); + +module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; diff --git a/deps/npm/node_modules/gauge/node_modules/strip-ansi/license b/deps/npm/node_modules/gauge/node_modules/strip-ansi/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/gauge/node_modules/strip-ansi/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/gauge/node_modules/strip-ansi/package.json b/deps/npm/node_modules/gauge/node_modules/strip-ansi/package.json new file mode 100644 index 00000000000000..1a41108d42831c --- /dev/null +++ b/deps/npm/node_modules/gauge/node_modules/strip-ansi/package.json @@ -0,0 +1,54 @@ +{ + "name": "strip-ansi", + "version": "6.0.1", + "description": "Strip ANSI escape codes from a string", + "license": "MIT", + "repository": "chalk/strip-ansi", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "strip", + "trim", + "remove", + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.10.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/has/LICENSE-MIT b/deps/npm/node_modules/has/LICENSE-MIT deleted file mode 100644 index ae7014d385df3d..00000000000000 --- a/deps/npm/node_modules/has/LICENSE-MIT +++ /dev/null @@ -1,22 +0,0 @@ -Copyright (c) 2013 Thiago de Arruda - -Permission is hereby granted, free of charge, to any person -obtaining a copy of this software and associated documentation -files (the "Software"), to deal in the Software without -restriction, including without limitation the rights to use, -copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/has/package.json b/deps/npm/node_modules/has/package.json deleted file mode 100644 index 7c4592f16de071..00000000000000 --- a/deps/npm/node_modules/has/package.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "name": "has", - "description": "Object.prototype.hasOwnProperty.call shortcut", - "version": "1.0.3", - "homepage": "https://github.com/tarruda/has", - "author": { - "name": "Thiago de Arruda", - "email": "tpadilha84@gmail.com" - }, - "contributors": [ - { - "name": "Jordan Harband", - "email": "ljharb@gmail.com", - "url": "http://ljharb.codes" - } - ], - "repository": { - "type": "git", - "url": "git://github.com/tarruda/has.git" - }, - "bugs": { - "url": "https://github.com/tarruda/has/issues" - }, - "license": "MIT", - "licenses": [ - { - "type": "MIT", - "url": "https://github.com/tarruda/has/blob/master/LICENSE-MIT" - } - ], - "main": "./src", - "dependencies": { - "function-bind": "^1.1.1" - }, - "devDependencies": { - "@ljharb/eslint-config": "^12.2.1", - "eslint": "^4.19.1", - "tape": "^4.9.0" - }, - "engines": { - "node": ">= 0.4.0" - }, - "scripts": { - "lint": "eslint .", - "pretest": "npm run lint", - "test": "tape test" - } -} diff --git a/deps/npm/node_modules/has/src/index.js b/deps/npm/node_modules/has/src/index.js deleted file mode 100644 index dd92dd9094edb0..00000000000000 --- a/deps/npm/node_modules/has/src/index.js +++ /dev/null @@ -1,5 +0,0 @@ -'use strict'; - -var bind = require('function-bind'); - -module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); diff --git a/deps/npm/node_modules/has/test/index.js b/deps/npm/node_modules/has/test/index.js deleted file mode 100644 index 43d480b2c2e763..00000000000000 --- a/deps/npm/node_modules/has/test/index.js +++ /dev/null @@ -1,10 +0,0 @@ -'use strict'; - -var test = require('tape'); -var has = require('../'); - -test('has', function (t) { - t.equal(has({}, 'hasOwnProperty'), false, 'object literal does not have own property "hasOwnProperty"'); - t.equal(has(Object.prototype, 'hasOwnProperty'), true, 'Object.prototype has own property "hasOwnProperty"'); - t.end(); -}); diff --git a/deps/npm/node_modules/hasown/LICENSE b/deps/npm/node_modules/hasown/LICENSE new file mode 100644 index 00000000000000..0314929078de8a --- /dev/null +++ b/deps/npm/node_modules/hasown/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) Jordan Harband and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/deps/npm/node_modules/hasown/index.js b/deps/npm/node_modules/hasown/index.js new file mode 100644 index 00000000000000..3b91618323842f --- /dev/null +++ b/deps/npm/node_modules/hasown/index.js @@ -0,0 +1,8 @@ +'use strict'; + +var call = Function.prototype.call; +var $hasOwn = Object.prototype.hasOwnProperty; +var bind = require('function-bind'); + +/** @type {(o: {}, p: PropertyKey) => p is keyof o} */ +module.exports = bind.call(call, $hasOwn); diff --git a/deps/npm/node_modules/hasown/package.json b/deps/npm/node_modules/hasown/package.json new file mode 100644 index 00000000000000..954500640223c2 --- /dev/null +++ b/deps/npm/node_modules/hasown/package.json @@ -0,0 +1,91 @@ +{ + "name": "hasown", + "version": "2.0.0", + "description": "A robust, ES3 compatible, \"has own property\" predicate.", + "main": "index.js", + "exports": { + ".": "./index.js", + "./package.json": "./package.json" + }, + "scripts": { + "prepack": "npmignore --auto --commentLines=autogenerated && npm run emit-types", + "prepublish": "not-in-publish || npm run prepublishOnly", + "prepublishOnly": "safe-publish-latest", + "prelint": "evalmd README.md", + "lint": "eslint --ext=js,mjs .", + "postlint": "npm run tsc", + "preemit-types": "rm -f *.ts *.ts.map test/*.ts test/*.ts.map", + "emit-types": "npm run tsc -- --noEmit false --emitDeclarationOnly", + "pretest": "npm run lint", + "tsc": "tsc -p .", + "tests-only": "nyc tape 'test/**/*.js'", + "test": "npm run tests-only", + "posttest": "aud --production", + "version": "auto-changelog && git add CHANGELOG.md", + "postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\"" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/inspect-js/hasOwn.git" + }, + "keywords": [ + "has", + "hasOwnProperty", + "hasOwn", + "has-own", + "own", + "has", + "property", + "in", + "javascript", + "ecmascript" + ], + "author": "Jordan Harband ", + "license": "MIT", + "bugs": { + "url": "https://github.com/inspect-js/hasOwn/issues" + }, + "homepage": "https://github.com/inspect-js/hasOwn#readme", + "dependencies": { + "function-bind": "^1.1.2" + }, + "devDependencies": { + "@ljharb/eslint-config": "^21.1.0", + "@types/function-bind": "^1.1.9", + "@types/mock-property": "^1.0.1", + "@types/tape": "^5.6.3", + "aud": "^2.0.3", + "auto-changelog": "^2.4.0", + "eslint": "=8.8.0", + "evalmd": "^0.0.19", + "in-publish": "^2.0.1", + "mock-property": "^1.0.2", + "npmignore": "^0.3.0", + "nyc": "^10.3.2", + "safe-publish-latest": "^2.0.0", + "tape": "^5.7.1", + "typescript": "^5.3.0-dev.20231019" + }, + "engines": { + "node": ">= 0.4" + }, + "testling": { + "files": "test/index.js" + }, + "auto-changelog": { + "output": "CHANGELOG.md", + "template": "keepachangelog", + "unreleased": false, + "commitLimit": false, + "backfillLimit": false, + "hideCredit": true + }, + "publishConfig": { + "ignore": [ + ".github/workflows", + "test", + "!*.d.ts", + "!*.d.ts.map" + ] + } +} diff --git a/deps/npm/node_modules/hasown/tsconfig.json b/deps/npm/node_modules/hasown/tsconfig.json new file mode 100644 index 00000000000000..fdab34fe311577 --- /dev/null +++ b/deps/npm/node_modules/hasown/tsconfig.json @@ -0,0 +1,49 @@ +{ + "compilerOptions": { + /* Visit https://aka.ms/tsconfig to read more about this file */ + + /* Projects */ + + /* Language and Environment */ + "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */ + // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */ + // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */ + "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */ + // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ + + /* Modules */ + "module": "commonjs", /* Specify what module code is generated. */ + // "rootDir": "./", /* Specify the root folder within your source files. */ + // "moduleResolution": "node10", /* Specify how TypeScript looks up a file from a given module specifier. */ + // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ + // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */ + // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ + "typeRoots": ["types"], /* Specify multiple folders that act like './node_modules/@types'. */ + "resolveJsonModule": true, /* Enable importing .json files. */ + // "allowArbitraryExtensions": true, /* Enable importing files with any extension, provided a declaration file is present. */ + + /* JavaScript Support */ + "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */ + "checkJs": true, /* Enable error reporting in type-checked JavaScript files. */ + "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */ + + /* Emit */ + "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */ + "declarationMap": true, /* Create sourcemaps for d.ts files. */ + "noEmit": true, /* Disable emitting files from a compilation. */ + + /* Interop Constraints */ + "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */ + "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */ + "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */ + + /* Type Checking */ + "strict": true, /* Enable all strict type-checking options. */ + + /* Completeness */ + //"skipLibCheck": true /* Skip type checking all .d.ts files. */ + }, + "exclude": [ + "coverage" + ] +} diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/http-proxy-agent/LICENSE b/deps/npm/node_modules/http-proxy-agent/LICENSE similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/http-proxy-agent/LICENSE rename to deps/npm/node_modules/http-proxy-agent/LICENSE diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/http-proxy-agent/dist/index.js b/deps/npm/node_modules/http-proxy-agent/dist/index.js similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/http-proxy-agent/dist/index.js rename to deps/npm/node_modules/http-proxy-agent/dist/index.js diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/http-proxy-agent/package.json b/deps/npm/node_modules/http-proxy-agent/package.json similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/http-proxy-agent/package.json rename to deps/npm/node_modules/http-proxy-agent/package.json diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/https-proxy-agent/dist/index.js b/deps/npm/node_modules/https-proxy-agent/dist/index.js similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/https-proxy-agent/dist/index.js rename to deps/npm/node_modules/https-proxy-agent/dist/index.js diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/https-proxy-agent/dist/parse-proxy-response.js b/deps/npm/node_modules/https-proxy-agent/dist/parse-proxy-response.js similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/https-proxy-agent/dist/parse-proxy-response.js rename to deps/npm/node_modules/https-proxy-agent/dist/parse-proxy-response.js diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/https-proxy-agent/package.json b/deps/npm/node_modules/https-proxy-agent/package.json similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/https-proxy-agent/package.json rename to deps/npm/node_modules/https-proxy-agent/package.json diff --git a/deps/npm/node_modules/ip-regex/index.js b/deps/npm/node_modules/ip-regex/index.js index ab7a37f1caf0e3..1fe723cb7f5a9f 100644 --- a/deps/npm/node_modules/ip-regex/index.js +++ b/deps/npm/node_modules/ip-regex/index.js @@ -1,23 +1,23 @@ -'use strict'; - const word = '[a-fA-F\\d:]'; -const b = options => options && options.includeBoundaries ? - `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` : - ''; + +const boundry = options => options && options.includeBoundaries + ? `(?:(?<=\\s|^)(?=${word})|(?<=${word})(?=\\s|$))` + : ''; const v4 = '(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}'; -const v6seg = '[a-fA-F\\d]{1,4}'; +const v6segment = '[a-fA-F\\d]{1,4}'; + const v6 = ` (?: -(?:${v6seg}:){7}(?:${v6seg}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8 -(?:${v6seg}:){6}(?:${v4}|:${v6seg}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4 -(?:${v6seg}:){5}(?::${v4}|(?::${v6seg}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4 -(?:${v6seg}:){4}(?:(?::${v6seg}){0,1}:${v4}|(?::${v6seg}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4 -(?:${v6seg}:){3}(?:(?::${v6seg}){0,2}:${v4}|(?::${v6seg}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4 -(?:${v6seg}:){2}(?:(?::${v6seg}){0,3}:${v4}|(?::${v6seg}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4 -(?:${v6seg}:){1}(?:(?::${v6seg}){0,4}:${v4}|(?::${v6seg}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4 -(?::(?:(?::${v6seg}){0,5}:${v4}|(?::${v6seg}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4 +(?:${v6segment}:){7}(?:${v6segment}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8 +(?:${v6segment}:){6}(?:${v4}|:${v6segment}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4 +(?:${v6segment}:){5}(?::${v4}|(?::${v6segment}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4 +(?:${v6segment}:){4}(?:(?::${v6segment}){0,1}:${v4}|(?::${v6segment}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4 +(?:${v6segment}:){3}(?:(?::${v6segment}){0,2}:${v4}|(?::${v6segment}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4 +(?:${v6segment}:){2}(?:(?::${v6segment}){0,3}:${v4}|(?::${v6segment}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4 +(?:${v6segment}:){1}(?:(?::${v6segment}){0,4}:${v4}|(?::${v6segment}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4 +(?::(?:(?::${v6segment}){0,5}:${v4}|(?::${v6segment}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4 )(?:%[0-9a-zA-Z]{1,})? // %eth0 %1 `.replace(/\s*\/\/.*$/gm, '').replace(/\n/g, '').trim(); @@ -26,11 +26,11 @@ const v46Exact = new RegExp(`(?:^${v4}$)|(?:^${v6}$)`); const v4exact = new RegExp(`^${v4}$`); const v6exact = new RegExp(`^${v6}$`); -const ip = options => options && options.exact ? - v46Exact : - new RegExp(`(?:${b(options)}${v4}${b(options)})|(?:${b(options)}${v6}${b(options)})`, 'g'); +const ipRegex = options => options && options.exact + ? v46Exact + : new RegExp(`(?:${boundry(options)}${v4}${boundry(options)})|(?:${boundry(options)}${v6}${boundry(options)})`, 'g'); -ip.v4 = options => options && options.exact ? v4exact : new RegExp(`${b(options)}${v4}${b(options)}`, 'g'); -ip.v6 = options => options && options.exact ? v6exact : new RegExp(`${b(options)}${v6}${b(options)}`, 'g'); +ipRegex.v4 = options => options && options.exact ? v4exact : new RegExp(`${boundry(options)}${v4}${boundry(options)}`, 'g'); +ipRegex.v6 = options => options && options.exact ? v6exact : new RegExp(`${boundry(options)}${v6}${boundry(options)}`, 'g'); -module.exports = ip; +export default ipRegex; diff --git a/deps/npm/node_modules/ip-regex/license b/deps/npm/node_modules/ip-regex/license index e7af2f77107d73..fa7ceba3eb4a96 100644 --- a/deps/npm/node_modules/ip-regex/license +++ b/deps/npm/node_modules/ip-regex/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (sindresorhus.com) +Copyright (c) Sindre Sorhus (https://sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/ip-regex/package.json b/deps/npm/node_modules/ip-regex/package.json index 2fb8a03c812a09..1f82fd5947262b 100644 --- a/deps/npm/node_modules/ip-regex/package.json +++ b/deps/npm/node_modules/ip-regex/package.json @@ -1,16 +1,19 @@ { "name": "ip-regex", - "version": "4.3.0", + "version": "5.0.0", "description": "Regular expression for matching IP addresses (IPv4 & IPv6)", "license": "MIT", "repository": "sindresorhus/ip-regex", + "funding": "https://github.com/sponsors/sindresorhus", "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", "url": "sindresorhus.com" }, + "type": "module", + "exports": "./index.js", "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "scripts": { "test": "xo && ava && tsd" @@ -37,8 +40,8 @@ "validate" ], "devDependencies": { - "ava": "^1.4.1", - "tsd": "^0.7.2", - "xo": "^0.24.0" + "ava": "^3.15.0", + "tsd": "^0.19.1", + "xo": "^0.47.0" } } diff --git a/deps/npm/node_modules/is-cidr/index.js b/deps/npm/node_modules/is-cidr/index.js index 8caef5fbb72a38..ed7f152c1163e7 100644 --- a/deps/npm/node_modules/is-cidr/index.js +++ b/deps/npm/node_modules/is-cidr/index.js @@ -1,9 +1,9 @@ -"use strict"; -const {v4, v6} = require("cidr-regex"); +import {v4 as v4Re, v6 as v6Re} from "cidr-regex"; -const re4 = v4({exact: true}); -const re6 = v6({exact: true}); +const re4 = v4Re({exact: true}); +const re6 = v6Re({exact: true}); -module.exports = str => re4.test(str) ? 4 : (re6.test(str) ? 6 : 0); -module.exports.v4 = str => re4.test(str); -module.exports.v6 = str => re6.test(str); +const isCidr = str => re4.test(str) ? 4 : (re6.test(str) ? 6 : 0); +export const v4 = isCidr.v4 = str => re4.test(str); +export const v6 = isCidr.v6 = str => re6.test(str); +export default isCidr; diff --git a/deps/npm/node_modules/is-cidr/package.json b/deps/npm/node_modules/is-cidr/package.json index b02775a0e3f6f8..d6971b3b33bd83 100644 --- a/deps/npm/node_modules/is-cidr/package.json +++ b/deps/npm/node_modules/is-cidr/package.json @@ -1,6 +1,6 @@ { "name": "is-cidr", - "version": "4.0.2", + "version": "5.0.3", "description": "Check if a string is an IP address in CIDR notation", "author": "silverwind ", "contributors": [ @@ -8,39 +8,25 @@ ], "repository": "silverwind/is-cidr", "license": "BSD-2-Clause", - "scripts": { - "test": "make test" - }, + "type": "module", + "exports": "./index.js", + "sideEffects": false, "engines": { - "node": ">=10" + "node": ">=14" }, "files": [ "index.js", "index.d.ts" ], - "keywords": [ - "cidr", - "regex", - "notation", - "cidr notation", - "prefix", - "prefixes", - "ip", - "ip address", - "network" - ], "dependencies": { - "cidr-regex": "^3.1.1" + "cidr-regex": "4.0.3" }, "devDependencies": { - "eslint": "7.10.0", - "eslint-config-silverwind": "18.0.10", - "jest": "26.4.2", - "updates": "11.1.5", - "versions": "8.4.3" - }, - "jest": { - "verbose": false, - "testTimeout": 10000 + "eslint": "8.37.0", + "eslint-config-silverwind": "65.1.3", + "tsd": "0.28.1", + "updates": "13.2.9", + "versions": "10.4.2", + "vitest": "0.29.8" } } diff --git a/deps/npm/node_modules/is-core-module/index.js b/deps/npm/node_modules/is-core-module/index.js index f9637e0e7d3ffe..423e20c0d99db5 100644 --- a/deps/npm/node_modules/is-core-module/index.js +++ b/deps/npm/node_modules/is-core-module/index.js @@ -1,6 +1,6 @@ 'use strict'; -var has = require('has'); +var hasOwn = require('hasown'); function specifierIncluded(current, specifier) { var nodeParts = current.split('.'); @@ -65,5 +65,5 @@ function versionIncluded(nodeVersion, specifierValue) { var data = require('./core.json'); module.exports = function isCore(x, nodeVersion) { - return has(data, x) && versionIncluded(nodeVersion, data[x]); + return hasOwn(data, x) && versionIncluded(nodeVersion, data[x]); }; diff --git a/deps/npm/node_modules/is-core-module/package.json b/deps/npm/node_modules/is-core-module/package.json index 1269c80c5520d8..1bac5851fd637f 100644 --- a/deps/npm/node_modules/is-core-module/package.json +++ b/deps/npm/node_modules/is-core-module/package.json @@ -1,6 +1,6 @@ { "name": "is-core-module", - "version": "2.13.0", + "version": "2.13.1", "description": "Is this specifier a node.js core module?", "main": "index.js", "sideEffects": false, @@ -42,7 +42,7 @@ }, "homepage": "https://github.com/inspect-js/is-core-module", "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "devDependencies": { "@ljharb/eslint-config": "^21.1.0", @@ -50,12 +50,12 @@ "auto-changelog": "^2.4.0", "eslint": "=8.8.0", "in-publish": "^2.0.1", - "mock-property": "^1.0.0", + "mock-property": "^1.0.2", "npmignore": "^0.3.0", "nyc": "^10.3.2", "safe-publish-latest": "^2.0.0", "semver": "^6.3.1", - "tape": "^5.6.6" + "tape": "^5.7.1" }, "auto-changelog": { "output": "CHANGELOG.md", diff --git a/deps/npm/node_modules/libnpmexec/package.json b/deps/npm/node_modules/libnpmexec/package.json index 5e4ae52a2fdddf..31e6c7386b1117 100644 --- a/deps/npm/node_modules/libnpmexec/package.json +++ b/deps/npm/node_modules/libnpmexec/package.json @@ -1,6 +1,6 @@ { "name": "libnpmexec", - "version": "7.0.3", + "version": "7.0.4", "files": [ "bin/", "lib/" @@ -61,7 +61,7 @@ "dependencies": { "@npmcli/arborist": "^7.2.1", "@npmcli/run-script": "^7.0.2", - "ci-info": "^3.7.1", + "ci-info": "^4.0.0", "npm-package-arg": "^11.0.1", "npmlog": "^7.0.1", "pacote": "^17.0.4", diff --git a/deps/npm/node_modules/libnpmpublish/lib/provenance.js b/deps/npm/node_modules/libnpmpublish/lib/provenance.js index 45fe963d5f36f2..090d4cd7fe561c 100644 --- a/deps/npm/node_modules/libnpmpublish/lib/provenance.js +++ b/deps/npm/node_modules/libnpmpublish/lib/provenance.js @@ -19,9 +19,11 @@ const generateProvenance = async (subject, opts) => { let payload if (ci.GITHUB_ACTIONS) { /* istanbul ignore next - not covering missing env var case */ - const [workflowPath, workflowRef] = (env.GITHUB_WORKFLOW_REF || '') - .replace(env.GITHUB_REPOSITORY + '/', '') - .split('@') + const relativeRef = (env.GITHUB_WORKFLOW_REF || '').replace(env.GITHUB_REPOSITORY + '/', '') + const delimiterIndex = relativeRef.indexOf('@') + const workflowPath = relativeRef.slice(0, delimiterIndex) + const workflowRef = relativeRef.slice(delimiterIndex + 1) + payload = { _type: INTOTO_STATEMENT_V1_TYPE, subject, diff --git a/deps/npm/node_modules/libnpmpublish/package.json b/deps/npm/node_modules/libnpmpublish/package.json index f5081a05188660..3d08280870ac72 100644 --- a/deps/npm/node_modules/libnpmpublish/package.json +++ b/deps/npm/node_modules/libnpmpublish/package.json @@ -1,6 +1,6 @@ { "name": "libnpmpublish", - "version": "9.0.1", + "version": "9.0.2", "description": "Programmatic API for the bits behind npm publish and unpublish", "author": "GitHub Inc.", "main": "lib/index.js", @@ -38,7 +38,7 @@ "bugs": "https://github.com/npm/cli/issues", "homepage": "https://npmjs.com/package/libnpmpublish", "dependencies": { - "ci-info": "^3.6.1", + "ci-info": "^4.0.0", "normalize-package-data": "^6.0.0", "npm-package-arg": "^11.0.1", "npm-registry-fetch": "^16.0.0", diff --git a/deps/npm/node_modules/lru-cache/dist/cjs/index.min.js b/deps/npm/node_modules/lru-cache/dist/cjs/index.min.js deleted file mode 100644 index 8d34a03041d25e..00000000000000 --- a/deps/npm/node_modules/lru-cache/dist/cjs/index.min.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";var x=(o,t,e)=>{if(!t.has(o))throw TypeError("Cannot "+e)};var j=(o,t,e)=>(x(o,t,"read from private field"),e?e.call(o):t.get(o)),I=(o,t,e)=>{if(t.has(o))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(o):t.set(o,e)},D=(o,t,e,i)=>(x(o,t,"write to private field"),i?i.call(o,e):t.set(o,e),e);Object.defineProperty(exports,"__esModule",{value:!0});exports.LRUCache=void 0;var v=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,N=new Set,L=typeof process=="object"&&process?process:{},P=(o,t,e,i)=>{typeof L.emitWarning=="function"?L.emitWarning(o,t,e,i):console.error(`[${e}] ${t}: ${o}`)},W=globalThis.AbortController,M=globalThis.AbortSignal;if(typeof W>"u"){M=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(i,s){this._onabort.push(s)}},W=class{constructor(){t()}signal=new M;abort(i){if(!this.signal.aborted){this.signal.reason=i,this.signal.aborted=!0;for(let s of this.signal._onabort)s(i);this.signal.onabort?.(i)}}};let o=L.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{o&&(o=!1,P("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var V=o=>!N.has(o),Y=Symbol("type"),m=o=>o&&o===Math.floor(o)&&o>0&&isFinite(o),H=o=>m(o)?o<=Math.pow(2,8)?Uint8Array:o<=Math.pow(2,16)?Uint16Array:o<=Math.pow(2,32)?Uint32Array:o<=Number.MAX_SAFE_INTEGER?z:null:null,z=class extends Array{constructor(t){super(t),this.fill(0)}},E,T=class{heap;length;static create(t){let e=H(t);if(!e)return[];D(T,E,!0);let i=new T(t,e);return D(T,E,!1),i}constructor(t,e){if(!j(T,E))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new e(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},R=T;E=new WeakMap,I(R,E,!1);var C=class{#d;#f;#g;#p;#C;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#s;#w;#n;#i;#t;#l;#c;#o;#h;#S;#r;#m;#F;#_;#b;#T;#a;static unsafeExposeInternals(t){return{starts:t.#F,ttls:t.#_,sizes:t.#m,keyMap:t.#n,keyList:t.#i,valList:t.#t,next:t.#l,prev:t.#c,get head(){return t.#o},get tail(){return t.#h},free:t.#S,isBackgroundFetch:e=>t.#e(e),backgroundFetch:(e,i,s,n)=>t.#D(e,i,s,n),moveToTail:e=>t.#v(e),indexes:e=>t.#y(e),rindexes:e=>t.#A(e),isStale:e=>t.#u(e)}}get max(){return this.#d}get maxSize(){return this.#f}get calculatedSize(){return this.#w}get size(){return this.#s}get fetchMethod(){return this.#C}get dispose(){return this.#g}get disposeAfter(){return this.#p}constructor(t){let{max:e=0,ttl:i,ttlResolution:s=1,ttlAutopurge:n,updateAgeOnGet:h,updateAgeOnHas:a,allowStale:r,dispose:g,disposeAfter:b,noDisposeOnSet:f,noUpdateTTL:u,maxSize:c=0,maxEntrySize:F=0,sizeCalculation:d,fetchMethod:S,noDeleteOnFetchRejection:l,noDeleteOnStaleGet:w,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:p,ignoreFetchAbort:_}=t;if(e!==0&&!m(e))throw new TypeError("max option must be a nonnegative integer");let O=e?H(e):Array;if(!O)throw new Error("invalid max value: "+e);if(this.#d=e,this.#f=c,this.maxEntrySize=F||this.#f,this.sizeCalculation=d,this.sizeCalculation){if(!this.#f&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(S!==void 0&&typeof S!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#C=S,this.#T=!!S,this.#n=new Map,this.#i=new Array(e).fill(void 0),this.#t=new Array(e).fill(void 0),this.#l=new O(e),this.#c=new O(e),this.#o=0,this.#h=0,this.#S=R.create(e),this.#s=0,this.#w=0,typeof g=="function"&&(this.#g=g),typeof b=="function"?(this.#p=b,this.#r=[]):(this.#p=void 0,this.#r=void 0),this.#b=!!this.#g,this.#a=!!this.#p,this.noDisposeOnSet=!!f,this.noUpdateTTL=!!u,this.noDeleteOnFetchRejection=!!l,this.allowStaleOnFetchRejection=!!y,this.allowStaleOnFetchAbort=!!p,this.ignoreFetchAbort=!!_,this.maxEntrySize!==0){if(this.#f!==0&&!m(this.#f))throw new TypeError("maxSize must be a positive integer if specified");if(!m(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#I()}if(this.allowStale=!!r,this.noDeleteOnStaleGet=!!w,this.updateAgeOnGet=!!h,this.updateAgeOnHas=!!a,this.ttlResolution=m(s)||s===0?s:1,this.ttlAutopurge=!!n,this.ttl=i||0,this.ttl){if(!m(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#L()}if(this.#d===0&&this.ttl===0&&this.#f===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#d&&!this.#f){let A="LRU_CACHE_UNBOUNDED";V(A)&&(N.add(A),P("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",A,C))}}getRemainingTTL(t){return this.#n.has(t)?1/0:0}#L(){let t=new z(this.#d),e=new z(this.#d);this.#_=t,this.#F=e,this.#U=(n,h,a=v.now())=>{if(e[n]=h!==0?a:0,t[n]=h,h!==0&&this.ttlAutopurge){let r=setTimeout(()=>{this.#u(n)&&this.delete(this.#i[n])},h+1);r.unref&&r.unref()}},this.#z=n=>{e[n]=t[n]!==0?v.now():0},this.#O=(n,h)=>{if(t[h]){let a=t[h],r=e[h];n.ttl=a,n.start=r,n.now=i||s();let g=n.now-r;n.remainingTTL=a-g}};let i=0,s=()=>{let n=v.now();if(this.ttlResolution>0){i=n;let h=setTimeout(()=>i=0,this.ttlResolution);h.unref&&h.unref()}return n};this.getRemainingTTL=n=>{let h=this.#n.get(n);if(h===void 0)return 0;let a=t[h],r=e[h];if(a===0||r===0)return 1/0;let g=(i||s())-r;return a-g},this.#u=n=>t[n]!==0&&e[n]!==0&&(i||s())-e[n]>t[n]}#z=()=>{};#O=()=>{};#U=()=>{};#u=()=>!1;#I(){let t=new z(this.#d);this.#w=0,this.#m=t,this.#E=e=>{this.#w-=t[e],t[e]=0},this.#G=(e,i,s,n)=>{if(this.#e(i))return 0;if(!m(s))if(n){if(typeof n!="function")throw new TypeError("sizeCalculation must be a function");if(s=n(i,e),!m(s))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return s},this.#R=(e,i,s)=>{if(t[e]=i,this.#f){let n=this.#f-t[e];for(;this.#w>n;)this.#W(!0)}this.#w+=t[e],s&&(s.entrySize=i,s.totalCalculatedSize=this.#w)}}#E=t=>{};#R=(t,e,i)=>{};#G=(t,e,i,s)=>{if(i||s)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#y({allowStale:t=this.allowStale}={}){if(this.#s)for(let e=this.#h;!(!this.#x(e)||((t||!this.#u(e))&&(yield e),e===this.#o));)e=this.#c[e]}*#A({allowStale:t=this.allowStale}={}){if(this.#s)for(let e=this.#o;!(!this.#x(e)||((t||!this.#u(e))&&(yield e),e===this.#h));)e=this.#l[e]}#x(t){return t!==void 0&&this.#n.get(this.#i[t])===t}*entries(){for(let t of this.#y())this.#t[t]!==void 0&&this.#i[t]!==void 0&&!this.#e(this.#t[t])&&(yield[this.#i[t],this.#t[t]])}*rentries(){for(let t of this.#A())this.#t[t]!==void 0&&this.#i[t]!==void 0&&!this.#e(this.#t[t])&&(yield[this.#i[t],this.#t[t]])}*keys(){for(let t of this.#y()){let e=this.#i[t];e!==void 0&&!this.#e(this.#t[t])&&(yield e)}}*rkeys(){for(let t of this.#A()){let e=this.#i[t];e!==void 0&&!this.#e(this.#t[t])&&(yield e)}}*values(){for(let t of this.#y())this.#t[t]!==void 0&&!this.#e(this.#t[t])&&(yield this.#t[t])}*rvalues(){for(let t of this.#A())this.#t[t]!==void 0&&!this.#e(this.#t[t])&&(yield this.#t[t])}[Symbol.iterator](){return this.entries()}find(t,e={}){for(let i of this.#y()){let s=this.#t[i],n=this.#e(s)?s.__staleWhileFetching:s;if(n!==void 0&&t(n,this.#i[i],this))return this.get(this.#i[i],e)}}forEach(t,e=this){for(let i of this.#y()){let s=this.#t[i],n=this.#e(s)?s.__staleWhileFetching:s;n!==void 0&&t.call(e,n,this.#i[i],this)}}rforEach(t,e=this){for(let i of this.#A()){let s=this.#t[i],n=this.#e(s)?s.__staleWhileFetching:s;n!==void 0&&t.call(e,n,this.#i[i],this)}}purgeStale(){let t=!1;for(let e of this.#A({allowStale:!0}))this.#u(e)&&(this.delete(this.#i[e]),t=!0);return t}dump(){let t=[];for(let e of this.#y({allowStale:!0})){let i=this.#i[e],s=this.#t[e],n=this.#e(s)?s.__staleWhileFetching:s;if(n===void 0||i===void 0)continue;let h={value:n};if(this.#_&&this.#F){h.ttl=this.#_[e];let a=v.now()-this.#F[e];h.start=Math.floor(Date.now()-a)}this.#m&&(h.size=this.#m[e]),t.unshift([i,h])}return t}load(t){this.clear();for(let[e,i]of t){if(i.start){let s=Date.now()-i.start;i.start=v.now()-s}this.set(e,i.value,i)}}set(t,e,i={}){if(e===void 0)return this.delete(t),this;let{ttl:s=this.ttl,start:n,noDisposeOnSet:h=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:r}=i,{noUpdateTTL:g=this.noUpdateTTL}=i,b=this.#G(t,e,i.size||0,a);if(this.maxEntrySize&&b>this.maxEntrySize)return r&&(r.set="miss",r.maxEntrySizeExceeded=!0),this.delete(t),this;let f=this.#s===0?void 0:this.#n.get(t);if(f===void 0)f=this.#s===0?this.#h:this.#S.length!==0?this.#S.pop():this.#s===this.#d?this.#W(!1):this.#s,this.#i[f]=t,this.#t[f]=e,this.#n.set(t,f),this.#l[this.#h]=f,this.#c[f]=this.#h,this.#h=f,this.#s++,this.#R(f,b,r),r&&(r.set="add"),g=!1;else{this.#v(f);let u=this.#t[f];if(e!==u){if(this.#T&&this.#e(u)){u.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:c}=u;c!==void 0&&!h&&(this.#b&&this.#g?.(c,t,"set"),this.#a&&this.#r?.push([c,t,"set"]))}else h||(this.#b&&this.#g?.(u,t,"set"),this.#a&&this.#r?.push([u,t,"set"]));if(this.#E(f),this.#R(f,b,r),this.#t[f]=e,r){r.set="replace";let c=u&&this.#e(u)?u.__staleWhileFetching:u;c!==void 0&&(r.oldValue=c)}}else r&&(r.set="update")}if(s!==0&&!this.#_&&this.#L(),this.#_&&(g||this.#U(f,s,n),r&&this.#O(r,f)),!h&&this.#a&&this.#r){let u=this.#r,c;for(;c=u?.shift();)this.#p?.(...c)}return this}pop(){try{for(;this.#s;){let t=this.#t[this.#o];if(this.#W(!0),this.#e(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#a&&this.#r){let t=this.#r,e;for(;e=t?.shift();)this.#p?.(...e)}}}#W(t){let e=this.#o,i=this.#i[e],s=this.#t[e];return this.#T&&this.#e(s)?s.__abortController.abort(new Error("evicted")):(this.#b||this.#a)&&(this.#b&&this.#g?.(s,i,"evict"),this.#a&&this.#r?.push([s,i,"evict"])),this.#E(e),t&&(this.#i[e]=void 0,this.#t[e]=void 0,this.#S.push(e)),this.#s===1?(this.#o=this.#h=0,this.#S.length=0):this.#o=this.#l[e],this.#n.delete(i),this.#s--,e}has(t,e={}){let{updateAgeOnHas:i=this.updateAgeOnHas,status:s}=e,n=this.#n.get(t);if(n!==void 0){let h=this.#t[n];if(this.#e(h)&&h.__staleWhileFetching===void 0)return!1;if(this.#u(n))s&&(s.has="stale",this.#O(s,n));else return i&&this.#z(n),s&&(s.has="hit",this.#O(s,n)),!0}else s&&(s.has="miss");return!1}peek(t,e={}){let{allowStale:i=this.allowStale}=e,s=this.#n.get(t);if(s!==void 0&&(i||!this.#u(s))){let n=this.#t[s];return this.#e(n)?n.__staleWhileFetching:n}}#D(t,e,i,s){let n=e===void 0?void 0:this.#t[e];if(this.#e(n))return n;let h=new W,{signal:a}=i;a?.addEventListener("abort",()=>h.abort(a.reason),{signal:h.signal});let r={signal:h.signal,options:i,context:s},g=(d,S=!1)=>{let{aborted:l}=h.signal,w=i.ignoreFetchAbort&&d!==void 0;if(i.status&&(l&&!S?(i.status.fetchAborted=!0,i.status.fetchError=h.signal.reason,w&&(i.status.fetchAbortIgnored=!0)):i.status.fetchResolved=!0),l&&!w&&!S)return f(h.signal.reason);let y=c;return this.#t[e]===c&&(d===void 0?y.__staleWhileFetching?this.#t[e]=y.__staleWhileFetching:this.delete(t):(i.status&&(i.status.fetchUpdated=!0),this.set(t,d,r.options))),d},b=d=>(i.status&&(i.status.fetchRejected=!0,i.status.fetchError=d),f(d)),f=d=>{let{aborted:S}=h.signal,l=S&&i.allowStaleOnFetchAbort,w=l||i.allowStaleOnFetchRejection,y=w||i.noDeleteOnFetchRejection,p=c;if(this.#t[e]===c&&(!y||p.__staleWhileFetching===void 0?this.delete(t):l||(this.#t[e]=p.__staleWhileFetching)),w)return i.status&&p.__staleWhileFetching!==void 0&&(i.status.returnedStale=!0),p.__staleWhileFetching;if(p.__returned===p)throw d},u=(d,S)=>{let l=this.#C?.(t,n,r);l&&l instanceof Promise&&l.then(w=>d(w===void 0?void 0:w),S),h.signal.addEventListener("abort",()=>{(!i.ignoreFetchAbort||i.allowStaleOnFetchAbort)&&(d(void 0),i.allowStaleOnFetchAbort&&(d=w=>g(w,!0)))})};i.status&&(i.status.fetchDispatched=!0);let c=new Promise(u).then(g,b),F=Object.assign(c,{__abortController:h,__staleWhileFetching:n,__returned:void 0});return e===void 0?(this.set(t,F,{...r.options,status:void 0}),e=this.#n.get(t)):this.#t[e]=F,F}#e(t){if(!this.#T)return!1;let e=t;return!!e&&e instanceof Promise&&e.hasOwnProperty("__staleWhileFetching")&&e.__abortController instanceof W}async fetch(t,e={}){let{allowStale:i=this.allowStale,updateAgeOnGet:s=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,ttl:h=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:r=0,sizeCalculation:g=this.sizeCalculation,noUpdateTTL:b=this.noUpdateTTL,noDeleteOnFetchRejection:f=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:u=this.allowStaleOnFetchRejection,ignoreFetchAbort:c=this.ignoreFetchAbort,allowStaleOnFetchAbort:F=this.allowStaleOnFetchAbort,context:d,forceRefresh:S=!1,status:l,signal:w}=e;if(!this.#T)return l&&(l.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:s,noDeleteOnStaleGet:n,status:l});let y={allowStale:i,updateAgeOnGet:s,noDeleteOnStaleGet:n,ttl:h,noDisposeOnSet:a,size:r,sizeCalculation:g,noUpdateTTL:b,noDeleteOnFetchRejection:f,allowStaleOnFetchRejection:u,allowStaleOnFetchAbort:F,ignoreFetchAbort:c,status:l,signal:w},p=this.#n.get(t);if(p===void 0){l&&(l.fetch="miss");let _=this.#D(t,p,y,d);return _.__returned=_}else{let _=this.#t[p];if(this.#e(_)){let G=i&&_.__staleWhileFetching!==void 0;return l&&(l.fetch="inflight",G&&(l.returnedStale=!0)),G?_.__staleWhileFetching:_.__returned=_}let O=this.#u(p);if(!S&&!O)return l&&(l.fetch="hit"),this.#v(p),s&&this.#z(p),l&&this.#O(l,p),_;let A=this.#D(t,p,y,d),U=A.__staleWhileFetching!==void 0&&i;return l&&(l.fetch=O?"stale":"refresh",U&&O&&(l.returnedStale=!0)),U?A.__staleWhileFetching:A.__returned=A}}get(t,e={}){let{allowStale:i=this.allowStale,updateAgeOnGet:s=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,status:h}=e,a=this.#n.get(t);if(a!==void 0){let r=this.#t[a],g=this.#e(r);return h&&this.#O(h,a),this.#u(a)?(h&&(h.get="stale"),g?(h&&i&&r.__staleWhileFetching!==void 0&&(h.returnedStale=!0),i?r.__staleWhileFetching:void 0):(n||this.delete(t),h&&i&&(h.returnedStale=!0),i?r:void 0)):(h&&(h.get="hit"),g?r.__staleWhileFetching:(this.#v(a),s&&this.#z(a),r))}else h&&(h.get="miss")}#j(t,e){this.#c[e]=t,this.#l[t]=e}#v(t){t!==this.#h&&(t===this.#o?this.#o=this.#l[t]:this.#j(this.#c[t],this.#l[t]),this.#j(this.#h,t),this.#h=t)}delete(t){let e=!1;if(this.#s!==0){let i=this.#n.get(t);if(i!==void 0)if(e=!0,this.#s===1)this.clear();else{this.#E(i);let s=this.#t[i];this.#e(s)?s.__abortController.abort(new Error("deleted")):(this.#b||this.#a)&&(this.#b&&this.#g?.(s,t,"delete"),this.#a&&this.#r?.push([s,t,"delete"])),this.#n.delete(t),this.#i[i]=void 0,this.#t[i]=void 0,i===this.#h?this.#h=this.#c[i]:i===this.#o?this.#o=this.#l[i]:(this.#l[this.#c[i]]=this.#l[i],this.#c[this.#l[i]]=this.#c[i]),this.#s--,this.#S.push(i)}}if(this.#a&&this.#r?.length){let i=this.#r,s;for(;s=i?.shift();)this.#p?.(...s)}return e}clear(){for(let t of this.#A({allowStale:!0})){let e=this.#t[t];if(this.#e(e))e.__abortController.abort(new Error("deleted"));else{let i=this.#i[t];this.#b&&this.#g?.(e,i,"delete"),this.#a&&this.#r?.push([e,i,"delete"])}}if(this.#n.clear(),this.#t.fill(void 0),this.#i.fill(void 0),this.#_&&this.#F&&(this.#_.fill(0),this.#F.fill(0)),this.#m&&this.#m.fill(0),this.#o=0,this.#h=0,this.#S.length=0,this.#w=0,this.#s=0,this.#a&&this.#r){let t=this.#r,e;for(;e=t?.shift();)this.#p?.(...e)}}};exports.LRUCache=C; -//# sourceMappingURL=index.min.js.map diff --git a/deps/npm/node_modules/lru-cache/dist/cjs/index.js b/deps/npm/node_modules/lru-cache/dist/commonjs/index.js similarity index 98% rename from deps/npm/node_modules/lru-cache/dist/cjs/index.js rename to deps/npm/node_modules/lru-cache/dist/commonjs/index.js index 1d1f23a55ec4b4..3fec15958a5349 100644 --- a/deps/npm/node_modules/lru-cache/dist/cjs/index.js +++ b/deps/npm/node_modules/lru-cache/dist/commonjs/index.js @@ -435,6 +435,9 @@ class LRUCache { if (ttls[index]) { const ttl = ttls[index]; const start = starts[index]; + /* c8 ignore next */ + if (!ttl || !start) + return; status.ttl = ttl; status.start = start; status.now = cachedNow || getNow(); @@ -466,16 +469,16 @@ class LRUCache { } const ttl = ttls[index]; const start = starts[index]; - if (ttl === 0 || start === 0) { + if (!ttl || !start) { return Infinity; } const age = (cachedNow || getNow()) - start; return ttl - age; }; this.#isStale = index => { - return (ttls[index] !== 0 && - starts[index] !== 0 && - (cachedNow || getNow()) - starts[index] > ttls[index]); + const s = starts[index]; + const t = ttls[index]; + return !!t && !!s && (cachedNow || getNow()) - s > t; }; } // conditionally set private methods related to TTL @@ -999,12 +1002,13 @@ class LRUCache { peek(k, peekOptions = {}) { const { allowStale = this.allowStale } = peekOptions; const index = this.#keyMap.get(k); - if (index !== undefined && - (allowStale || !this.#isStale(index))) { - const v = this.#valList[index]; - // either stale and allowed, or forcing a refresh of non-stale value - return this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (index === undefined || + (!allowStale && this.#isStale(index))) { + return; } + const v = this.#valList[index]; + // either stale and allowed, or forcing a refresh of non-stale value + return this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; } #backgroundFetch(k, index, options, context) { const v = index === undefined ? undefined : this.#valList[index]; @@ -1340,8 +1344,10 @@ class LRUCache { this.#head = this.#next[index]; } else { - this.#next[this.#prev[index]] = this.#next[index]; - this.#prev[this.#next[index]] = this.#prev[index]; + const pi = this.#prev[index]; + this.#next[pi] = this.#next[index]; + const ni = this.#next[index]; + this.#prev[ni] = this.#prev[index]; } this.#size--; this.#free.push(index); diff --git a/deps/npm/node_modules/lru-cache/dist/cjs/package.json b/deps/npm/node_modules/lru-cache/dist/commonjs/package.json similarity index 100% rename from deps/npm/node_modules/lru-cache/dist/cjs/package.json rename to deps/npm/node_modules/lru-cache/dist/commonjs/package.json diff --git a/deps/npm/node_modules/lru-cache/dist/mjs/index.js b/deps/npm/node_modules/lru-cache/dist/esm/index.js similarity index 98% rename from deps/npm/node_modules/lru-cache/dist/mjs/index.js rename to deps/npm/node_modules/lru-cache/dist/esm/index.js index 79025471782531..3c34d3de6c53cc 100644 --- a/deps/npm/node_modules/lru-cache/dist/mjs/index.js +++ b/deps/npm/node_modules/lru-cache/dist/esm/index.js @@ -432,6 +432,9 @@ export class LRUCache { if (ttls[index]) { const ttl = ttls[index]; const start = starts[index]; + /* c8 ignore next */ + if (!ttl || !start) + return; status.ttl = ttl; status.start = start; status.now = cachedNow || getNow(); @@ -463,16 +466,16 @@ export class LRUCache { } const ttl = ttls[index]; const start = starts[index]; - if (ttl === 0 || start === 0) { + if (!ttl || !start) { return Infinity; } const age = (cachedNow || getNow()) - start; return ttl - age; }; this.#isStale = index => { - return (ttls[index] !== 0 && - starts[index] !== 0 && - (cachedNow || getNow()) - starts[index] > ttls[index]); + const s = starts[index]; + const t = ttls[index]; + return !!t && !!s && (cachedNow || getNow()) - s > t; }; } // conditionally set private methods related to TTL @@ -996,12 +999,13 @@ export class LRUCache { peek(k, peekOptions = {}) { const { allowStale = this.allowStale } = peekOptions; const index = this.#keyMap.get(k); - if (index !== undefined && - (allowStale || !this.#isStale(index))) { - const v = this.#valList[index]; - // either stale and allowed, or forcing a refresh of non-stale value - return this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; + if (index === undefined || + (!allowStale && this.#isStale(index))) { + return; } + const v = this.#valList[index]; + // either stale and allowed, or forcing a refresh of non-stale value + return this.#isBackgroundFetch(v) ? v.__staleWhileFetching : v; } #backgroundFetch(k, index, options, context) { const v = index === undefined ? undefined : this.#valList[index]; @@ -1337,8 +1341,10 @@ export class LRUCache { this.#head = this.#next[index]; } else { - this.#next[this.#prev[index]] = this.#next[index]; - this.#prev[this.#next[index]] = this.#prev[index]; + const pi = this.#prev[index]; + this.#next[pi] = this.#next[index]; + const ni = this.#next[index]; + this.#prev[ni] = this.#prev[index]; } this.#size--; this.#free.push(index); diff --git a/deps/npm/node_modules/lru-cache/dist/mjs/package.json b/deps/npm/node_modules/lru-cache/dist/esm/package.json similarity index 100% rename from deps/npm/node_modules/lru-cache/dist/mjs/package.json rename to deps/npm/node_modules/lru-cache/dist/esm/package.json diff --git a/deps/npm/node_modules/lru-cache/dist/mjs/index.min.js b/deps/npm/node_modules/lru-cache/dist/mjs/index.min.js deleted file mode 100644 index 5a16b3940d6df9..00000000000000 --- a/deps/npm/node_modules/lru-cache/dist/mjs/index.min.js +++ /dev/null @@ -1,2 +0,0 @@ -var U=(o,t,e)=>{if(!t.has(o))throw TypeError("Cannot "+e)};var I=(o,t,e)=>(U(o,t,"read from private field"),e?e.call(o):t.get(o)),j=(o,t,e)=>{if(t.has(o))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(o):t.set(o,e)},D=(o,t,e,i)=>(U(o,t,"write to private field"),i?i.call(o,e):t.set(o,e),e);var v=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,M=new Set,L=typeof process=="object"&&process?process:{},P=(o,t,e,i)=>{typeof L.emitWarning=="function"?L.emitWarning(o,t,e,i):console.error(`[${e}] ${t}: ${o}`)},W=globalThis.AbortController,N=globalThis.AbortSignal;if(typeof W>"u"){N=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(i,s){this._onabort.push(s)}},W=class{constructor(){t()}signal=new N;abort(i){if(!this.signal.aborted){this.signal.reason=i,this.signal.aborted=!0;for(let s of this.signal._onabort)s(i);this.signal.onabort?.(i)}}};let o=L.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",t=()=>{o&&(o=!1,P("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}var V=o=>!M.has(o),Y=Symbol("type"),m=o=>o&&o===Math.floor(o)&&o>0&&isFinite(o),H=o=>m(o)?o<=Math.pow(2,8)?Uint8Array:o<=Math.pow(2,16)?Uint16Array:o<=Math.pow(2,32)?Uint32Array:o<=Number.MAX_SAFE_INTEGER?z:null:null,z=class extends Array{constructor(t){super(t),this.fill(0)}},E,T=class{heap;length;static create(t){let e=H(t);if(!e)return[];D(T,E,!0);let i=new T(t,e);return D(T,E,!1),i}constructor(t,e){if(!I(T,E))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new e(t),this.length=0}push(t){this.heap[this.length++]=t}pop(){return this.heap[--this.length]}},C=T;E=new WeakMap,j(C,E,!1);var R=class{#d;#f;#g;#p;#C;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#s;#w;#n;#i;#t;#l;#c;#o;#h;#S;#r;#m;#F;#_;#b;#T;#a;static unsafeExposeInternals(t){return{starts:t.#F,ttls:t.#_,sizes:t.#m,keyMap:t.#n,keyList:t.#i,valList:t.#t,next:t.#l,prev:t.#c,get head(){return t.#o},get tail(){return t.#h},free:t.#S,isBackgroundFetch:e=>t.#e(e),backgroundFetch:(e,i,s,n)=>t.#D(e,i,s,n),moveToTail:e=>t.#v(e),indexes:e=>t.#y(e),rindexes:e=>t.#A(e),isStale:e=>t.#u(e)}}get max(){return this.#d}get maxSize(){return this.#f}get calculatedSize(){return this.#w}get size(){return this.#s}get fetchMethod(){return this.#C}get dispose(){return this.#g}get disposeAfter(){return this.#p}constructor(t){let{max:e=0,ttl:i,ttlResolution:s=1,ttlAutopurge:n,updateAgeOnGet:h,updateAgeOnHas:a,allowStale:r,dispose:g,disposeAfter:b,noDisposeOnSet:f,noUpdateTTL:u,maxSize:c=0,maxEntrySize:F=0,sizeCalculation:d,fetchMethod:S,noDeleteOnFetchRejection:l,noDeleteOnStaleGet:w,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:p,ignoreFetchAbort:_}=t;if(e!==0&&!m(e))throw new TypeError("max option must be a nonnegative integer");let O=e?H(e):Array;if(!O)throw new Error("invalid max value: "+e);if(this.#d=e,this.#f=c,this.maxEntrySize=F||this.#f,this.sizeCalculation=d,this.sizeCalculation){if(!this.#f&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(S!==void 0&&typeof S!="function")throw new TypeError("fetchMethod must be a function if specified");if(this.#C=S,this.#T=!!S,this.#n=new Map,this.#i=new Array(e).fill(void 0),this.#t=new Array(e).fill(void 0),this.#l=new O(e),this.#c=new O(e),this.#o=0,this.#h=0,this.#S=C.create(e),this.#s=0,this.#w=0,typeof g=="function"&&(this.#g=g),typeof b=="function"?(this.#p=b,this.#r=[]):(this.#p=void 0,this.#r=void 0),this.#b=!!this.#g,this.#a=!!this.#p,this.noDisposeOnSet=!!f,this.noUpdateTTL=!!u,this.noDeleteOnFetchRejection=!!l,this.allowStaleOnFetchRejection=!!y,this.allowStaleOnFetchAbort=!!p,this.ignoreFetchAbort=!!_,this.maxEntrySize!==0){if(this.#f!==0&&!m(this.#f))throw new TypeError("maxSize must be a positive integer if specified");if(!m(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#j()}if(this.allowStale=!!r,this.noDeleteOnStaleGet=!!w,this.updateAgeOnGet=!!h,this.updateAgeOnHas=!!a,this.ttlResolution=m(s)||s===0?s:1,this.ttlAutopurge=!!n,this.ttl=i||0,this.ttl){if(!m(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#L()}if(this.#d===0&&this.ttl===0&&this.#f===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#d&&!this.#f){let A="LRU_CACHE_UNBOUNDED";V(A)&&(M.add(A),P("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",A,R))}}getRemainingTTL(t){return this.#n.has(t)?1/0:0}#L(){let t=new z(this.#d),e=new z(this.#d);this.#_=t,this.#F=e,this.#x=(n,h,a=v.now())=>{if(e[n]=h!==0?a:0,t[n]=h,h!==0&&this.ttlAutopurge){let r=setTimeout(()=>{this.#u(n)&&this.delete(this.#i[n])},h+1);r.unref&&r.unref()}},this.#z=n=>{e[n]=t[n]!==0?v.now():0},this.#O=(n,h)=>{if(t[h]){let a=t[h],r=e[h];n.ttl=a,n.start=r,n.now=i||s();let g=n.now-r;n.remainingTTL=a-g}};let i=0,s=()=>{let n=v.now();if(this.ttlResolution>0){i=n;let h=setTimeout(()=>i=0,this.ttlResolution);h.unref&&h.unref()}return n};this.getRemainingTTL=n=>{let h=this.#n.get(n);if(h===void 0)return 0;let a=t[h],r=e[h];if(a===0||r===0)return 1/0;let g=(i||s())-r;return a-g},this.#u=n=>t[n]!==0&&e[n]!==0&&(i||s())-e[n]>t[n]}#z=()=>{};#O=()=>{};#x=()=>{};#u=()=>!1;#j(){let t=new z(this.#d);this.#w=0,this.#m=t,this.#E=e=>{this.#w-=t[e],t[e]=0},this.#G=(e,i,s,n)=>{if(this.#e(i))return 0;if(!m(s))if(n){if(typeof n!="function")throw new TypeError("sizeCalculation must be a function");if(s=n(i,e),!m(s))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return s},this.#W=(e,i,s)=>{if(t[e]=i,this.#f){let n=this.#f-t[e];for(;this.#w>n;)this.#R(!0)}this.#w+=t[e],s&&(s.entrySize=i,s.totalCalculatedSize=this.#w)}}#E=t=>{};#W=(t,e,i)=>{};#G=(t,e,i,s)=>{if(i||s)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#y({allowStale:t=this.allowStale}={}){if(this.#s)for(let e=this.#h;!(!this.#U(e)||((t||!this.#u(e))&&(yield e),e===this.#o));)e=this.#c[e]}*#A({allowStale:t=this.allowStale}={}){if(this.#s)for(let e=this.#o;!(!this.#U(e)||((t||!this.#u(e))&&(yield e),e===this.#h));)e=this.#l[e]}#U(t){return t!==void 0&&this.#n.get(this.#i[t])===t}*entries(){for(let t of this.#y())this.#t[t]!==void 0&&this.#i[t]!==void 0&&!this.#e(this.#t[t])&&(yield[this.#i[t],this.#t[t]])}*rentries(){for(let t of this.#A())this.#t[t]!==void 0&&this.#i[t]!==void 0&&!this.#e(this.#t[t])&&(yield[this.#i[t],this.#t[t]])}*keys(){for(let t of this.#y()){let e=this.#i[t];e!==void 0&&!this.#e(this.#t[t])&&(yield e)}}*rkeys(){for(let t of this.#A()){let e=this.#i[t];e!==void 0&&!this.#e(this.#t[t])&&(yield e)}}*values(){for(let t of this.#y())this.#t[t]!==void 0&&!this.#e(this.#t[t])&&(yield this.#t[t])}*rvalues(){for(let t of this.#A())this.#t[t]!==void 0&&!this.#e(this.#t[t])&&(yield this.#t[t])}[Symbol.iterator](){return this.entries()}find(t,e={}){for(let i of this.#y()){let s=this.#t[i],n=this.#e(s)?s.__staleWhileFetching:s;if(n!==void 0&&t(n,this.#i[i],this))return this.get(this.#i[i],e)}}forEach(t,e=this){for(let i of this.#y()){let s=this.#t[i],n=this.#e(s)?s.__staleWhileFetching:s;n!==void 0&&t.call(e,n,this.#i[i],this)}}rforEach(t,e=this){for(let i of this.#A()){let s=this.#t[i],n=this.#e(s)?s.__staleWhileFetching:s;n!==void 0&&t.call(e,n,this.#i[i],this)}}purgeStale(){let t=!1;for(let e of this.#A({allowStale:!0}))this.#u(e)&&(this.delete(this.#i[e]),t=!0);return t}dump(){let t=[];for(let e of this.#y({allowStale:!0})){let i=this.#i[e],s=this.#t[e],n=this.#e(s)?s.__staleWhileFetching:s;if(n===void 0||i===void 0)continue;let h={value:n};if(this.#_&&this.#F){h.ttl=this.#_[e];let a=v.now()-this.#F[e];h.start=Math.floor(Date.now()-a)}this.#m&&(h.size=this.#m[e]),t.unshift([i,h])}return t}load(t){this.clear();for(let[e,i]of t){if(i.start){let s=Date.now()-i.start;i.start=v.now()-s}this.set(e,i.value,i)}}set(t,e,i={}){if(e===void 0)return this.delete(t),this;let{ttl:s=this.ttl,start:n,noDisposeOnSet:h=this.noDisposeOnSet,sizeCalculation:a=this.sizeCalculation,status:r}=i,{noUpdateTTL:g=this.noUpdateTTL}=i,b=this.#G(t,e,i.size||0,a);if(this.maxEntrySize&&b>this.maxEntrySize)return r&&(r.set="miss",r.maxEntrySizeExceeded=!0),this.delete(t),this;let f=this.#s===0?void 0:this.#n.get(t);if(f===void 0)f=this.#s===0?this.#h:this.#S.length!==0?this.#S.pop():this.#s===this.#d?this.#R(!1):this.#s,this.#i[f]=t,this.#t[f]=e,this.#n.set(t,f),this.#l[this.#h]=f,this.#c[f]=this.#h,this.#h=f,this.#s++,this.#W(f,b,r),r&&(r.set="add"),g=!1;else{this.#v(f);let u=this.#t[f];if(e!==u){if(this.#T&&this.#e(u)){u.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:c}=u;c!==void 0&&!h&&(this.#b&&this.#g?.(c,t,"set"),this.#a&&this.#r?.push([c,t,"set"]))}else h||(this.#b&&this.#g?.(u,t,"set"),this.#a&&this.#r?.push([u,t,"set"]));if(this.#E(f),this.#W(f,b,r),this.#t[f]=e,r){r.set="replace";let c=u&&this.#e(u)?u.__staleWhileFetching:u;c!==void 0&&(r.oldValue=c)}}else r&&(r.set="update")}if(s!==0&&!this.#_&&this.#L(),this.#_&&(g||this.#x(f,s,n),r&&this.#O(r,f)),!h&&this.#a&&this.#r){let u=this.#r,c;for(;c=u?.shift();)this.#p?.(...c)}return this}pop(){try{for(;this.#s;){let t=this.#t[this.#o];if(this.#R(!0),this.#e(t)){if(t.__staleWhileFetching)return t.__staleWhileFetching}else if(t!==void 0)return t}}finally{if(this.#a&&this.#r){let t=this.#r,e;for(;e=t?.shift();)this.#p?.(...e)}}}#R(t){let e=this.#o,i=this.#i[e],s=this.#t[e];return this.#T&&this.#e(s)?s.__abortController.abort(new Error("evicted")):(this.#b||this.#a)&&(this.#b&&this.#g?.(s,i,"evict"),this.#a&&this.#r?.push([s,i,"evict"])),this.#E(e),t&&(this.#i[e]=void 0,this.#t[e]=void 0,this.#S.push(e)),this.#s===1?(this.#o=this.#h=0,this.#S.length=0):this.#o=this.#l[e],this.#n.delete(i),this.#s--,e}has(t,e={}){let{updateAgeOnHas:i=this.updateAgeOnHas,status:s}=e,n=this.#n.get(t);if(n!==void 0){let h=this.#t[n];if(this.#e(h)&&h.__staleWhileFetching===void 0)return!1;if(this.#u(n))s&&(s.has="stale",this.#O(s,n));else return i&&this.#z(n),s&&(s.has="hit",this.#O(s,n)),!0}else s&&(s.has="miss");return!1}peek(t,e={}){let{allowStale:i=this.allowStale}=e,s=this.#n.get(t);if(s!==void 0&&(i||!this.#u(s))){let n=this.#t[s];return this.#e(n)?n.__staleWhileFetching:n}}#D(t,e,i,s){let n=e===void 0?void 0:this.#t[e];if(this.#e(n))return n;let h=new W,{signal:a}=i;a?.addEventListener("abort",()=>h.abort(a.reason),{signal:h.signal});let r={signal:h.signal,options:i,context:s},g=(d,S=!1)=>{let{aborted:l}=h.signal,w=i.ignoreFetchAbort&&d!==void 0;if(i.status&&(l&&!S?(i.status.fetchAborted=!0,i.status.fetchError=h.signal.reason,w&&(i.status.fetchAbortIgnored=!0)):i.status.fetchResolved=!0),l&&!w&&!S)return f(h.signal.reason);let y=c;return this.#t[e]===c&&(d===void 0?y.__staleWhileFetching?this.#t[e]=y.__staleWhileFetching:this.delete(t):(i.status&&(i.status.fetchUpdated=!0),this.set(t,d,r.options))),d},b=d=>(i.status&&(i.status.fetchRejected=!0,i.status.fetchError=d),f(d)),f=d=>{let{aborted:S}=h.signal,l=S&&i.allowStaleOnFetchAbort,w=l||i.allowStaleOnFetchRejection,y=w||i.noDeleteOnFetchRejection,p=c;if(this.#t[e]===c&&(!y||p.__staleWhileFetching===void 0?this.delete(t):l||(this.#t[e]=p.__staleWhileFetching)),w)return i.status&&p.__staleWhileFetching!==void 0&&(i.status.returnedStale=!0),p.__staleWhileFetching;if(p.__returned===p)throw d},u=(d,S)=>{let l=this.#C?.(t,n,r);l&&l instanceof Promise&&l.then(w=>d(w===void 0?void 0:w),S),h.signal.addEventListener("abort",()=>{(!i.ignoreFetchAbort||i.allowStaleOnFetchAbort)&&(d(void 0),i.allowStaleOnFetchAbort&&(d=w=>g(w,!0)))})};i.status&&(i.status.fetchDispatched=!0);let c=new Promise(u).then(g,b),F=Object.assign(c,{__abortController:h,__staleWhileFetching:n,__returned:void 0});return e===void 0?(this.set(t,F,{...r.options,status:void 0}),e=this.#n.get(t)):this.#t[e]=F,F}#e(t){if(!this.#T)return!1;let e=t;return!!e&&e instanceof Promise&&e.hasOwnProperty("__staleWhileFetching")&&e.__abortController instanceof W}async fetch(t,e={}){let{allowStale:i=this.allowStale,updateAgeOnGet:s=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,ttl:h=this.ttl,noDisposeOnSet:a=this.noDisposeOnSet,size:r=0,sizeCalculation:g=this.sizeCalculation,noUpdateTTL:b=this.noUpdateTTL,noDeleteOnFetchRejection:f=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:u=this.allowStaleOnFetchRejection,ignoreFetchAbort:c=this.ignoreFetchAbort,allowStaleOnFetchAbort:F=this.allowStaleOnFetchAbort,context:d,forceRefresh:S=!1,status:l,signal:w}=e;if(!this.#T)return l&&(l.fetch="get"),this.get(t,{allowStale:i,updateAgeOnGet:s,noDeleteOnStaleGet:n,status:l});let y={allowStale:i,updateAgeOnGet:s,noDeleteOnStaleGet:n,ttl:h,noDisposeOnSet:a,size:r,sizeCalculation:g,noUpdateTTL:b,noDeleteOnFetchRejection:f,allowStaleOnFetchRejection:u,allowStaleOnFetchAbort:F,ignoreFetchAbort:c,status:l,signal:w},p=this.#n.get(t);if(p===void 0){l&&(l.fetch="miss");let _=this.#D(t,p,y,d);return _.__returned=_}else{let _=this.#t[p];if(this.#e(_)){let G=i&&_.__staleWhileFetching!==void 0;return l&&(l.fetch="inflight",G&&(l.returnedStale=!0)),G?_.__staleWhileFetching:_.__returned=_}let O=this.#u(p);if(!S&&!O)return l&&(l.fetch="hit"),this.#v(p),s&&this.#z(p),l&&this.#O(l,p),_;let A=this.#D(t,p,y,d),x=A.__staleWhileFetching!==void 0&&i;return l&&(l.fetch=O?"stale":"refresh",x&&O&&(l.returnedStale=!0)),x?A.__staleWhileFetching:A.__returned=A}}get(t,e={}){let{allowStale:i=this.allowStale,updateAgeOnGet:s=this.updateAgeOnGet,noDeleteOnStaleGet:n=this.noDeleteOnStaleGet,status:h}=e,a=this.#n.get(t);if(a!==void 0){let r=this.#t[a],g=this.#e(r);return h&&this.#O(h,a),this.#u(a)?(h&&(h.get="stale"),g?(h&&i&&r.__staleWhileFetching!==void 0&&(h.returnedStale=!0),i?r.__staleWhileFetching:void 0):(n||this.delete(t),h&&i&&(h.returnedStale=!0),i?r:void 0)):(h&&(h.get="hit"),g?r.__staleWhileFetching:(this.#v(a),s&&this.#z(a),r))}else h&&(h.get="miss")}#I(t,e){this.#c[e]=t,this.#l[t]=e}#v(t){t!==this.#h&&(t===this.#o?this.#o=this.#l[t]:this.#I(this.#c[t],this.#l[t]),this.#I(this.#h,t),this.#h=t)}delete(t){let e=!1;if(this.#s!==0){let i=this.#n.get(t);if(i!==void 0)if(e=!0,this.#s===1)this.clear();else{this.#E(i);let s=this.#t[i];this.#e(s)?s.__abortController.abort(new Error("deleted")):(this.#b||this.#a)&&(this.#b&&this.#g?.(s,t,"delete"),this.#a&&this.#r?.push([s,t,"delete"])),this.#n.delete(t),this.#i[i]=void 0,this.#t[i]=void 0,i===this.#h?this.#h=this.#c[i]:i===this.#o?this.#o=this.#l[i]:(this.#l[this.#c[i]]=this.#l[i],this.#c[this.#l[i]]=this.#c[i]),this.#s--,this.#S.push(i)}}if(this.#a&&this.#r?.length){let i=this.#r,s;for(;s=i?.shift();)this.#p?.(...s)}return e}clear(){for(let t of this.#A({allowStale:!0})){let e=this.#t[t];if(this.#e(e))e.__abortController.abort(new Error("deleted"));else{let i=this.#i[t];this.#b&&this.#g?.(e,i,"delete"),this.#a&&this.#r?.push([e,i,"delete"])}}if(this.#n.clear(),this.#t.fill(void 0),this.#i.fill(void 0),this.#_&&this.#F&&(this.#_.fill(0),this.#F.fill(0)),this.#m&&this.#m.fill(0),this.#o=0,this.#h=0,this.#S.length=0,this.#w=0,this.#s=0,this.#a&&this.#r){let t=this.#r,e;for(;e=t?.shift();)this.#p?.(...e)}}};export{R as LRUCache}; -//# sourceMappingURL=index.min.js.map diff --git a/deps/npm/node_modules/lru-cache/package.json b/deps/npm/node_modules/lru-cache/package.json index bae4a04839d1f7..e6cb6b32153b5b 100644 --- a/deps/npm/node_modules/lru-cache/package.json +++ b/deps/npm/node_modules/lru-cache/package.json @@ -1,7 +1,7 @@ { "name": "lru-cache", "description": "A cache object that deletes the least-recently-used items.", - "version": "10.0.1", + "version": "10.0.2", "author": "Isaac Z. Schlueter ", "keywords": [ "mru", @@ -11,67 +11,57 @@ "sideEffects": false, "scripts": { "build": "npm run prepare", - "preprepare": "rm -rf dist", - "prepare": "tsc -p tsconfig.json && tsc -p tsconfig-esm.json", + "prepare": "tshy", "postprepare": "bash fixup.sh", "pretest": "npm run prepare", "presnap": "npm run prepare", - "test": "c8 tap", - "snap": "c8 tap", + "test": "tap", + "snap": "tap", "preversion": "npm test", "postversion": "npm publish", "prepublishOnly": "git push origin --follow-tags", "format": "prettier --write .", - "typedoc": "typedoc --tsconfig tsconfig-esm.json ./src/*.ts", + "typedoc": "typedoc --tsconfig ./.tshy/esm.json ./src/*.ts", "benchmark-results-typedoc": "bash scripts/benchmark-results-typedoc.sh", "prebenchmark": "npm run prepare", "benchmark": "make -C benchmark", "preprofile": "npm run prepare", "profile": "make -C benchmark profile" }, - "main": "./dist/cjs/index.js", - "module": "./dist/mjs/index.js", - "exports": { - "./min": { - "import": { - "types": "./dist/mjs/index.d.ts", - "default": "./dist/mjs/index.min.js" - }, - "require": { - "types": "./dist/cjs/index.d.ts", - "default": "./dist/cjs/index.min.js" - } - }, - ".": { - "import": { - "types": "./dist/mjs/index.d.ts", - "default": "./dist/mjs/index.js" - }, - "require": { - "types": "./dist/cjs/index.d.ts", - "default": "./dist/cjs/index.js" + "main": "./dist/commonjs/index.js", + "types": "./dist/commonjs/index.d.ts", + "tshy": { + "exports": { + ".": "./src/index.ts", + "./min": { + "import": { + "types": "./dist/mjs/index.d.ts", + "default": "./dist/mjs/index.min.js" + }, + "require": { + "types": "./dist/commonjs/index.d.ts", + "default": "./dist/commonjs/index.min.js" + } } } }, "repository": "git://github.com/isaacs/node-lru-cache.git", "devDependencies": { - "@size-limit/preset-small-lib": "^7.0.8", + "@tapjs/clock": "^1.1.16", "@types/node": "^20.2.5", "@types/tap": "^15.0.6", "benchmark": "^2.1.4", - "c8": "^7.11.2", - "clock-mock": "^1.0.6", + "clock-mock": "^2.0.2", "esbuild": "^0.17.11", "eslint-config-prettier": "^8.5.0", "marked": "^4.2.12", "mkdirp": "^2.1.5", "prettier": "^2.6.2", - "size-limit": "^7.0.8", - "tap": "^16.3.4", - "ts-node": "^10.9.1", + "tap": "^18.5.7", + "tshy": "^1.8.0", "tslib": "^2.4.0", - "typedoc": "^0.24.6", - "typescript": "^5.0.4" + "typedoc": "^0.25.3", + "typescript": "^5.2.2" }, "license": "ISC", "files": [ @@ -92,17 +82,37 @@ "endOfLine": "lf" }, "tap": { - "coverage": false, "node-arg": [ - "--expose-gc", - "-r", - "ts-node/register" + "--expose-gc" ], - "ts": false + "plugin": [ + "@tapjs/clock" + ] }, - "size-limit": [ - { - "path": "./dist/mjs/index.js" + "exports": { + ".": { + "import": { + "types": "./dist/esm/index.d.ts", + "default": "./dist/esm/index.js" + }, + "require": { + "types": "./dist/commonjs/index.d.ts", + "default": "./dist/commonjs/index.js" + } + }, + "./min": { + "import": { + "types": "./dist/mjs/index.d.ts", + "default": "./dist/mjs/index.min.js" + }, + "require": { + "types": "./dist/commonjs/index.d.ts", + "default": "./dist/commonjs/index.min.js" + } } - ] + }, + "type": "module", + "dependencies": { + "semver": "^7.3.5" + } } diff --git a/deps/npm/node_modules/signal-exit/dist/cjs/index.js b/deps/npm/node_modules/signal-exit/dist/cjs/index.js index 2e6c18316b9a5d..27d4e4f7fc7763 100644 --- a/deps/npm/node_modules/signal-exit/dist/cjs/index.js +++ b/deps/npm/node_modules/signal-exit/dist/cjs/index.js @@ -20,7 +20,7 @@ const processOk = (process) => !!process && const kExitEmitter = Symbol.for('signal-exit emitter'); const global = globalThis; const ObjectDefineProperty = Object.defineProperty.bind(Object); -// teeny tiny ee +// teeny special purpose ee class Emitter { emitted = { afterExit: false, @@ -63,12 +63,17 @@ class Emitter { } emit(ev, code, signal) { if (this.emitted[ev]) { - return; + return false; } this.emitted[ev] = true; + let ret = false; for (const fn of this.listeners[ev]) { - fn(code, signal); + ret = fn(code, signal) === true || ret; + } + if (ev === 'exit') { + ret = this.emit('afterExit', code, signal) || ret; } + return ret; } } class SignalExitBase { @@ -122,18 +127,22 @@ class SignalExit extends SignalExitBase { // exit v4 are not aware of each other, and each will attempt to let // the other handle it, so neither of them do. To correct this, we // detect if we're the only handler *except* for previous versions - // of signal-exit. + // of signal-exit, and increment by the count of listeners it has + // created. /* c8 ignore start */ - //@ts-ignore - if (typeof process.__signal_exit_emitter__ === 'object') - count++; + const p = process; + if (typeof p.__signal_exit_emitter__ === 'object' && + typeof p.__signal_exit_emitter__.count === 'number') { + count += p.__signal_exit_emitter__.count; + } /* c8 ignore stop */ if (listeners.length === count) { this.unload(); - this.#emitter.emit('exit', null, sig); - this.#emitter.emit('afterExit', null, sig); + const ret = this.#emitter.emit('exit', null, sig); /* c8 ignore start */ - process.kill(process.pid, sig === 'SIGHUP' ? this.#hupSig : sig); + const s = sig === 'SIGHUP' ? this.#hupSig : sig; + if (!ret) + process.kill(process.pid, s); /* c8 ignore stop */ } }; @@ -216,7 +225,6 @@ class SignalExit extends SignalExitBase { this.#process.exitCode = code || 0; /* c8 ignore stop */ this.#emitter.emit('exit', this.#process.exitCode, null); - this.#emitter.emit('afterExit', this.#process.exitCode, null); return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode); } #processEmit(ev, ...args) { @@ -230,7 +238,6 @@ class SignalExit extends SignalExitBase { const ret = og.call(this.#process, ev, ...args); /* c8 ignore start */ this.#emitter.emit('exit', this.#process.exitCode, null); - this.#emitter.emit('afterExit', this.#process.exitCode, null); /* c8 ignore stop */ return ret; } diff --git a/deps/npm/node_modules/signal-exit/dist/mjs/index.js b/deps/npm/node_modules/signal-exit/dist/mjs/index.js index 1e8dea6d4930b6..9a86ee86e1bc0d 100644 --- a/deps/npm/node_modules/signal-exit/dist/mjs/index.js +++ b/deps/npm/node_modules/signal-exit/dist/mjs/index.js @@ -16,7 +16,7 @@ const processOk = (process) => !!process && const kExitEmitter = Symbol.for('signal-exit emitter'); const global = globalThis; const ObjectDefineProperty = Object.defineProperty.bind(Object); -// teeny tiny ee +// teeny special purpose ee class Emitter { emitted = { afterExit: false, @@ -59,12 +59,17 @@ class Emitter { } emit(ev, code, signal) { if (this.emitted[ev]) { - return; + return false; } this.emitted[ev] = true; + let ret = false; for (const fn of this.listeners[ev]) { - fn(code, signal); + ret = fn(code, signal) === true || ret; + } + if (ev === 'exit') { + ret = this.emit('afterExit', code, signal) || ret; } + return ret; } } class SignalExitBase { @@ -118,18 +123,22 @@ class SignalExit extends SignalExitBase { // exit v4 are not aware of each other, and each will attempt to let // the other handle it, so neither of them do. To correct this, we // detect if we're the only handler *except* for previous versions - // of signal-exit. + // of signal-exit, and increment by the count of listeners it has + // created. /* c8 ignore start */ - //@ts-ignore - if (typeof process.__signal_exit_emitter__ === 'object') - count++; + const p = process; + if (typeof p.__signal_exit_emitter__ === 'object' && + typeof p.__signal_exit_emitter__.count === 'number') { + count += p.__signal_exit_emitter__.count; + } /* c8 ignore stop */ if (listeners.length === count) { this.unload(); - this.#emitter.emit('exit', null, sig); - this.#emitter.emit('afterExit', null, sig); + const ret = this.#emitter.emit('exit', null, sig); /* c8 ignore start */ - process.kill(process.pid, sig === 'SIGHUP' ? this.#hupSig : sig); + const s = sig === 'SIGHUP' ? this.#hupSig : sig; + if (!ret) + process.kill(process.pid, s); /* c8 ignore stop */ } }; @@ -212,7 +221,6 @@ class SignalExit extends SignalExitBase { this.#process.exitCode = code || 0; /* c8 ignore stop */ this.#emitter.emit('exit', this.#process.exitCode, null); - this.#emitter.emit('afterExit', this.#process.exitCode, null); return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode); } #processEmit(ev, ...args) { @@ -226,7 +234,6 @@ class SignalExit extends SignalExitBase { const ret = og.call(this.#process, ev, ...args); /* c8 ignore start */ this.#emitter.emit('exit', this.#process.exitCode, null); - this.#emitter.emit('afterExit', this.#process.exitCode, null); /* c8 ignore stop */ return ret; } diff --git a/deps/npm/node_modules/signal-exit/package.json b/deps/npm/node_modules/signal-exit/package.json index 455452f96a0b3f..ac176cec743748 100644 --- a/deps/npm/node_modules/signal-exit/package.json +++ b/deps/npm/node_modules/signal-exit/package.json @@ -1,6 +1,6 @@ { "name": "signal-exit", - "version": "4.0.2", + "version": "4.1.0", "description": "when you want to fire an event no matter how a process exits.", "main": "./dist/cjs/index.js", "module": "./dist/mjs/index.js", diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/socks-proxy-agent/dist/index.js b/deps/npm/node_modules/socks-proxy-agent/dist/index.js similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/socks-proxy-agent/dist/index.js rename to deps/npm/node_modules/socks-proxy-agent/dist/index.js diff --git a/deps/npm/node_modules/@npmcli/agent/node_modules/socks-proxy-agent/package.json b/deps/npm/node_modules/socks-proxy-agent/package.json similarity index 100% rename from deps/npm/node_modules/@npmcli/agent/node_modules/socks-proxy-agent/package.json rename to deps/npm/node_modules/socks-proxy-agent/package.json diff --git a/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/index.js b/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/index.js new file mode 100644 index 00000000000000..616ff837d3ff01 --- /dev/null +++ b/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/license b/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/package.json b/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/package.json new file mode 100644 index 00000000000000..017f53116a9e28 --- /dev/null +++ b/deps/npm/node_modules/string-width-cjs/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/index.js b/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/index.js new file mode 100644 index 00000000000000..9a593dfcd1fd5c --- /dev/null +++ b/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/index.js @@ -0,0 +1,4 @@ +'use strict'; +const ansiRegex = require('ansi-regex'); + +module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; diff --git a/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/license b/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/package.json b/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/package.json new file mode 100644 index 00000000000000..1a41108d42831c --- /dev/null +++ b/deps/npm/node_modules/string-width-cjs/node_modules/strip-ansi/package.json @@ -0,0 +1,54 @@ +{ + "name": "strip-ansi", + "version": "6.0.1", + "description": "Strip ANSI escape codes from a string", + "license": "MIT", + "repository": "chalk/strip-ansi", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "strip", + "trim", + "remove", + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.10.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/string-width/node_modules/ansi-regex/index.js b/deps/npm/node_modules/string-width/node_modules/ansi-regex/index.js new file mode 100644 index 00000000000000..616ff837d3ff01 --- /dev/null +++ b/deps/npm/node_modules/string-width/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/deps/npm/node_modules/string-width/node_modules/ansi-regex/license b/deps/npm/node_modules/string-width/node_modules/ansi-regex/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/string-width/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/string-width/node_modules/ansi-regex/package.json b/deps/npm/node_modules/string-width/node_modules/ansi-regex/package.json new file mode 100644 index 00000000000000..017f53116a9e28 --- /dev/null +++ b/deps/npm/node_modules/string-width/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/string-width/node_modules/strip-ansi/index.js b/deps/npm/node_modules/string-width/node_modules/strip-ansi/index.js new file mode 100644 index 00000000000000..9a593dfcd1fd5c --- /dev/null +++ b/deps/npm/node_modules/string-width/node_modules/strip-ansi/index.js @@ -0,0 +1,4 @@ +'use strict'; +const ansiRegex = require('ansi-regex'); + +module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; diff --git a/deps/npm/node_modules/string-width/node_modules/strip-ansi/license b/deps/npm/node_modules/string-width/node_modules/strip-ansi/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/string-width/node_modules/strip-ansi/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/string-width/node_modules/strip-ansi/package.json b/deps/npm/node_modules/string-width/node_modules/strip-ansi/package.json new file mode 100644 index 00000000000000..1a41108d42831c --- /dev/null +++ b/deps/npm/node_modules/string-width/node_modules/strip-ansi/package.json @@ -0,0 +1,54 @@ +{ + "name": "strip-ansi", + "version": "6.0.1", + "description": "Strip ANSI escape codes from a string", + "license": "MIT", + "repository": "chalk/strip-ansi", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "strip", + "trim", + "remove", + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.10.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/index.js b/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/index.js new file mode 100644 index 00000000000000..616ff837d3ff01 --- /dev/null +++ b/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/license b/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/package.json b/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/package.json new file mode 100644 index 00000000000000..017f53116a9e28 --- /dev/null +++ b/deps/npm/node_modules/strip-ansi-cjs/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/strip-ansi/index.js b/deps/npm/node_modules/strip-ansi/index.js index 9a593dfcd1fd5c..ba19750e64e061 100644 --- a/deps/npm/node_modules/strip-ansi/index.js +++ b/deps/npm/node_modules/strip-ansi/index.js @@ -1,4 +1,14 @@ -'use strict'; -const ansiRegex = require('ansi-regex'); +import ansiRegex from 'ansi-regex'; -module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; +const regex = ansiRegex(); + +export default function stripAnsi(string) { + if (typeof string !== 'string') { + throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``); + } + + // Even though the regex is global, we don't need to reset the `.lastIndex` + // because unlike `.exec()` and `.test()`, `.replace()` does it automatically + // and doing it manually has a performance penalty. + return string.replace(regex, ''); +} diff --git a/deps/npm/node_modules/strip-ansi/license b/deps/npm/node_modules/strip-ansi/license index e7af2f77107d73..fa7ceba3eb4a96 100644 --- a/deps/npm/node_modules/strip-ansi/license +++ b/deps/npm/node_modules/strip-ansi/license @@ -1,6 +1,6 @@ MIT License -Copyright (c) Sindre Sorhus (sindresorhus.com) +Copyright (c) Sindre Sorhus (https://sindresorhus.com) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/deps/npm/node_modules/strip-ansi/package.json b/deps/npm/node_modules/strip-ansi/package.json index 1a41108d42831c..e1f455c325b007 100644 --- a/deps/npm/node_modules/strip-ansi/package.json +++ b/deps/npm/node_modules/strip-ansi/package.json @@ -1,16 +1,19 @@ { "name": "strip-ansi", - "version": "6.0.1", + "version": "7.1.0", "description": "Strip ANSI escape codes from a string", "license": "MIT", "repository": "chalk/strip-ansi", + "funding": "https://github.com/chalk/strip-ansi?sponsor=1", "author": { "name": "Sindre Sorhus", "email": "sindresorhus@gmail.com", - "url": "sindresorhus.com" + "url": "https://sindresorhus.com" }, + "type": "module", + "exports": "./index.js", "engines": { - "node": ">=8" + "node": ">=12" }, "scripts": { "test": "xo && ava && tsd" @@ -44,11 +47,11 @@ "text" ], "dependencies": { - "ansi-regex": "^5.0.1" + "ansi-regex": "^6.0.1" }, "devDependencies": { - "ava": "^2.4.0", - "tsd": "^0.10.0", - "xo": "^0.25.3" + "ava": "^3.15.0", + "tsd": "^0.17.0", + "xo": "^0.44.0" } } diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/index.js b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/index.js new file mode 100644 index 00000000000000..616ff837d3ff01 --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/license b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/package.json b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/package.json new file mode 100644 index 00000000000000..017f53116a9e28 --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.js b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.js new file mode 100644 index 00000000000000..5d82581a13f990 --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/index.js @@ -0,0 +1,163 @@ +'use strict'; + +const wrapAnsi16 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${code + offset}m`; +}; + +const wrapAnsi256 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${38 + offset};5;${code}m`; +}; + +const wrapAnsi16m = (fn, offset) => (...args) => { + const rgb = fn(...args); + return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; +}; + +const ansi2ansi = n => n; +const rgb2rgb = (r, g, b) => [r, g, b]; + +const setLazyProperty = (object, property, get) => { + Object.defineProperty(object, property, { + get: () => { + const value = get(); + + Object.defineProperty(object, property, { + value, + enumerable: true, + configurable: true + }); + + return value; + }, + enumerable: true, + configurable: true + }); +}; + +/** @type {typeof import('color-convert')} */ +let colorConvert; +const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { + if (colorConvert === undefined) { + colorConvert = require('color-convert'); + } + + const offset = isBackground ? 10 : 0; + const styles = {}; + + for (const [sourceSpace, suite] of Object.entries(colorConvert)) { + const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace; + if (sourceSpace === targetSpace) { + styles[name] = wrap(identity, offset); + } else if (typeof suite === 'object') { + styles[name] = wrap(suite[targetSpace], offset); + } + } + + return styles; +}; + +function assembleStyles() { + const codes = new Map(); + const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29] + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + + // Bright color + blackBright: [90, 39], + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39] + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + + // Bright color + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49] + } + }; + + // Alias bright black as gray (and grey) + styles.color.gray = styles.color.blackBright; + styles.bgColor.bgGray = styles.bgColor.bgBlackBright; + styles.color.grey = styles.color.blackBright; + styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; + + for (const [groupName, group] of Object.entries(styles)) { + for (const [styleName, style] of Object.entries(group)) { + styles[styleName] = { + open: `\u001B[${style[0]}m`, + close: `\u001B[${style[1]}m` + }; + + group[styleName] = styles[styleName]; + + codes.set(style[0], style[1]); + } + + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + } + + Object.defineProperty(styles, 'codes', { + value: codes, + enumerable: false + }); + + styles.color.close = '\u001B[39m'; + styles.bgColor.close = '\u001B[49m'; + + setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false)); + setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true)); + + return styles; +} + +// Make the export immutable +Object.defineProperty(module, 'exports', { + enumerable: true, + get: assembleStyles +}); diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/license b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json new file mode 100644 index 00000000000000..75393284d7e474 --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles/package.json @@ -0,0 +1,56 @@ +{ + "name": "ansi-styles", + "version": "4.3.0", + "description": "ANSI escape codes for styling strings in the terminal", + "license": "MIT", + "repository": "chalk/ansi-styles", + "funding": "https://github.com/chalk/ansi-styles?sponsor=1", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "color-convert": "^2.0.1" + }, + "devDependencies": { + "@types/color-convert": "^1.9.0", + "ava": "^2.3.0", + "svg-term-cli": "^2.1.1", + "tsd": "^0.11.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/index.js b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/index.js new file mode 100644 index 00000000000000..9a593dfcd1fd5c --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/index.js @@ -0,0 +1,4 @@ +'use strict'; +const ansiRegex = require('ansi-regex'); + +module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string; diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/license b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/license new file mode 100644 index 00000000000000..e7af2f77107d73 --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/package.json b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/package.json new file mode 100644 index 00000000000000..1a41108d42831c --- /dev/null +++ b/deps/npm/node_modules/wrap-ansi-cjs/node_modules/strip-ansi/package.json @@ -0,0 +1,54 @@ +{ + "name": "strip-ansi", + "version": "6.0.1", + "description": "Strip ANSI escape codes from a string", + "license": "MIT", + "repository": "chalk/strip-ansi", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "strip", + "trim", + "remove", + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.10.0", + "xo": "^0.25.3" + } +} diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/index.js b/deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/index.js deleted file mode 100644 index 130a0929b8ce8c..00000000000000 --- a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-regex/index.js +++ /dev/null @@ -1,8 +0,0 @@ -export default function ansiRegex({onlyFirst = false} = {}) { - const pattern = [ - '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', - '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' - ].join('|'); - - return new RegExp(pattern, onlyFirst ? undefined : 'g'); -} diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/index.js b/deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/index.js deleted file mode 100644 index d7bede44b7b6ba..00000000000000 --- a/deps/npm/node_modules/wrap-ansi/node_modules/ansi-styles/index.js +++ /dev/null @@ -1,223 +0,0 @@ -const ANSI_BACKGROUND_OFFSET = 10; - -const wrapAnsi16 = (offset = 0) => code => `\u001B[${code + offset}m`; - -const wrapAnsi256 = (offset = 0) => code => `\u001B[${38 + offset};5;${code}m`; - -const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`; - -const styles = { - modifier: { - reset: [0, 0], - // 21 isn't widely supported and 22 does the same thing - bold: [1, 22], - dim: [2, 22], - italic: [3, 23], - underline: [4, 24], - overline: [53, 55], - inverse: [7, 27], - hidden: [8, 28], - strikethrough: [9, 29], - }, - color: { - black: [30, 39], - red: [31, 39], - green: [32, 39], - yellow: [33, 39], - blue: [34, 39], - magenta: [35, 39], - cyan: [36, 39], - white: [37, 39], - - // Bright color - blackBright: [90, 39], - gray: [90, 39], // Alias of `blackBright` - grey: [90, 39], // Alias of `blackBright` - redBright: [91, 39], - greenBright: [92, 39], - yellowBright: [93, 39], - blueBright: [94, 39], - magentaBright: [95, 39], - cyanBright: [96, 39], - whiteBright: [97, 39], - }, - bgColor: { - bgBlack: [40, 49], - bgRed: [41, 49], - bgGreen: [42, 49], - bgYellow: [43, 49], - bgBlue: [44, 49], - bgMagenta: [45, 49], - bgCyan: [46, 49], - bgWhite: [47, 49], - - // Bright color - bgBlackBright: [100, 49], - bgGray: [100, 49], // Alias of `bgBlackBright` - bgGrey: [100, 49], // Alias of `bgBlackBright` - bgRedBright: [101, 49], - bgGreenBright: [102, 49], - bgYellowBright: [103, 49], - bgBlueBright: [104, 49], - bgMagentaBright: [105, 49], - bgCyanBright: [106, 49], - bgWhiteBright: [107, 49], - }, -}; - -export const modifierNames = Object.keys(styles.modifier); -export const foregroundColorNames = Object.keys(styles.color); -export const backgroundColorNames = Object.keys(styles.bgColor); -export const colorNames = [...foregroundColorNames, ...backgroundColorNames]; - -function assembleStyles() { - const codes = new Map(); - - for (const [groupName, group] of Object.entries(styles)) { - for (const [styleName, style] of Object.entries(group)) { - styles[styleName] = { - open: `\u001B[${style[0]}m`, - close: `\u001B[${style[1]}m`, - }; - - group[styleName] = styles[styleName]; - - codes.set(style[0], style[1]); - } - - Object.defineProperty(styles, groupName, { - value: group, - enumerable: false, - }); - } - - Object.defineProperty(styles, 'codes', { - value: codes, - enumerable: false, - }); - - styles.color.close = '\u001B[39m'; - styles.bgColor.close = '\u001B[49m'; - - styles.color.ansi = wrapAnsi16(); - styles.color.ansi256 = wrapAnsi256(); - styles.color.ansi16m = wrapAnsi16m(); - styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET); - styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET); - styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET); - - // From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js - Object.defineProperties(styles, { - rgbToAnsi256: { - value: (red, green, blue) => { - // We use the extended greyscale palette here, with the exception of - // black and white. normal palette only has 4 greyscale shades. - if (red === green && green === blue) { - if (red < 8) { - return 16; - } - - if (red > 248) { - return 231; - } - - return Math.round(((red - 8) / 247) * 24) + 232; - } - - return 16 - + (36 * Math.round(red / 255 * 5)) - + (6 * Math.round(green / 255 * 5)) - + Math.round(blue / 255 * 5); - }, - enumerable: false, - }, - hexToRgb: { - value: hex => { - const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16)); - if (!matches) { - return [0, 0, 0]; - } - - let [colorString] = matches; - - if (colorString.length === 3) { - colorString = [...colorString].map(character => character + character).join(''); - } - - const integer = Number.parseInt(colorString, 16); - - return [ - /* eslint-disable no-bitwise */ - (integer >> 16) & 0xFF, - (integer >> 8) & 0xFF, - integer & 0xFF, - /* eslint-enable no-bitwise */ - ]; - }, - enumerable: false, - }, - hexToAnsi256: { - value: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)), - enumerable: false, - }, - ansi256ToAnsi: { - value: code => { - if (code < 8) { - return 30 + code; - } - - if (code < 16) { - return 90 + (code - 8); - } - - let red; - let green; - let blue; - - if (code >= 232) { - red = (((code - 232) * 10) + 8) / 255; - green = red; - blue = red; - } else { - code -= 16; - - const remainder = code % 36; - - red = Math.floor(code / 36) / 5; - green = Math.floor(remainder / 6) / 5; - blue = (remainder % 6) / 5; - } - - const value = Math.max(red, green, blue) * 2; - - if (value === 0) { - return 30; - } - - // eslint-disable-next-line no-bitwise - let result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red)); - - if (value === 2) { - result += 60; - } - - return result; - }, - enumerable: false, - }, - rgbToAnsi: { - value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)), - enumerable: false, - }, - hexToAnsi: { - value: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)), - enumerable: false, - }, - }); - - return styles; -} - -const ansiStyles = assembleStyles(); - -export default ansiStyles; diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/index.js b/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/index.js deleted file mode 100644 index ba19750e64e061..00000000000000 --- a/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/index.js +++ /dev/null @@ -1,14 +0,0 @@ -import ansiRegex from 'ansi-regex'; - -const regex = ansiRegex(); - -export default function stripAnsi(string) { - if (typeof string !== 'string') { - throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``); - } - - // Even though the regex is global, we don't need to reset the `.lastIndex` - // because unlike `.exec()` and `.test()`, `.replace()` does it automatically - // and doing it manually has a performance penalty. - return string.replace(regex, ''); -} diff --git a/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/license b/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/license deleted file mode 100644 index fa7ceba3eb4a96..00000000000000 --- a/deps/npm/node_modules/wrap-ansi/node_modules/strip-ansi/license +++ /dev/null @@ -1,9 +0,0 @@ -MIT License - -Copyright (c) Sindre Sorhus (https://sindresorhus.com) - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/deps/npm/package.json b/deps/npm/package.json index 185b5090cb9a2f..a946e38493e0e4 100644 --- a/deps/npm/package.json +++ b/deps/npm/package.json @@ -1,5 +1,5 @@ { - "version": "10.2.3", + "version": "10.2.4", "name": "npm", "description": "a package manager for JavaScript", "workspaces": [ @@ -53,18 +53,18 @@ "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", "@npmcli/arborist": "^7.2.1", - "@npmcli/config": "^8.0.1", + "@npmcli/config": "^8.0.2", "@npmcli/fs": "^3.1.0", "@npmcli/map-workspaces": "^3.0.4", "@npmcli/package-json": "^5.0.0", "@npmcli/promise-spawn": "^7.0.0", "@npmcli/run-script": "^7.0.2", - "@sigstore/tuf": "^2.1.0", + "@sigstore/tuf": "^2.2.0", "abbrev": "^2.0.0", "archy": "~1.0.0", "cacache": "^18.0.0", "chalk": "^5.3.0", - "ci-info": "^3.9.0", + "ci-info": "^4.0.0", "cli-columns": "^4.0.0", "cli-table3": "^0.6.3", "columnify": "^1.6.0", @@ -75,16 +75,16 @@ "hosted-git-info": "^7.0.1", "ini": "^4.1.1", "init-package-json": "^6.0.0", - "is-cidr": "^4.0.2", + "is-cidr": "^5.0.3", "json-parse-even-better-errors": "^3.0.0", "libnpmaccess": "^8.0.1", "libnpmdiff": "^6.0.3", - "libnpmexec": "^7.0.3", + "libnpmexec": "^7.0.4", "libnpmfund": "^5.0.1", "libnpmhook": "^10.0.0", "libnpmorg": "^6.0.1", "libnpmpack": "^6.0.3", - "libnpmpublish": "^9.0.1", + "libnpmpublish": "^9.0.2", "libnpmsearch": "^7.0.0", "libnpmteam": "^6.0.0", "libnpmversion": "^5.0.1", @@ -113,7 +113,7 @@ "semver": "^7.5.4", "spdx-expression-parse": "^3.0.1", "ssri": "^10.0.5", - "strip-ansi": "^6.0.1", + "strip-ansi": "^7.1.0", "supports-color": "^9.4.0", "tar": "^6.2.0", "text-table": "~0.2.0", @@ -209,7 +209,7 @@ "ajv-formats-draft2019": "^1.6.1", "diff": "^5.1.0", "licensee": "^10.0.0", - "nock": "^13.3.3", + "nock": "^13.3.8", "npm-packlist": "^8.0.0", "remark": "^14.0.2", "remark-gfm": "^3.0.1", diff --git a/deps/npm/tap-snapshots/test/lib/commands/search.js.test.cjs b/deps/npm/tap-snapshots/test/lib/commands/search.js.test.cjs index 50032deb745739..3fd12d699bd77f 100644 --- a/deps/npm/tap-snapshots/test/lib/commands/search.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/commands/search.js.test.cjs @@ -46,20 +46,20 @@ pkg-no-desc | | =lukekarrys | 2019-09-26 ` exports[`test/lib/commands/search.js TAP search --parseable > should have expected search results as parseable 1`] = ` -libnpm Collection of programmatic APIs for the npm CLI =nlf =ruyadorno =darcyclarke =isaacs 2019-07-16 3.0.1 npm api package manager lib -libnpmaccess programmatic library for \`npm access\` commands =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 4.0.1 libnpmaccess -@evocateur/libnpmaccess programmatic library for \`npm access\` commands =evocateur 2019-07-16 3.1.2 -@evocateur/libnpmpublish Programmatic API for the bits behind npm publish and unpublish =evocateur 2019-07-16 1.2.2 -libnpmorg Programmatic api for \`npm org\` commands =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 2.0.1 libnpm npm package manager api orgs teams -libnpmsearch Programmatic API for searching in npm and compatible registries. =nlf =ruyadorno =darcyclarke =isaacs 2020-12-08 3.1.0 npm search api libnpm -libnpmteam npm Team management APIs =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 2.0.2 -libnpmhook programmatic API for managing npm registry hooks =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 6.0.1 npm hooks registry npm api -libnpmpublish Programmatic API for the bits behind npm publish and unpublish =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 4.0.0 -libnpmfund Programmatic API for npm fund =nlf =ruyadorno =darcyclarke =isaacs 2020-12-08 1.0.2 npm npmcli libnpm cli git fund gitfund -@npmcli/map-workspaces Retrieves a name:pathname Map for a given workspaces config =nlf =ruyadorno =darcyclarke =isaacs 2020-09-30 1.0.1 npm bad map npmcli libnpm cli workspaces map-workspaces -libnpmversion library to do the things that 'npm version' does =nlf =ruyadorno =darcyclarke =isaacs 2020-11-04 1.0.7 -@types/libnpmsearch TypeScript definitions for libnpmsearch =types 2019-09-26 2.0.1 -pkg-no-desc =lukekarrys 2019-09-26 1.0.0 +libnpm Collection of programmatic APIs for the npm CLI =nlf =ruyadorno =darcyclarke =isaacs 2019-07-16 3.0.1 npm api package manager lib +libnpmaccess programmatic library for \`npm access\` commands =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 4.0.1 libnpmaccess +@evocateur/libnpmaccess programmatic library for \`npm access\` commands =evocateur 2019-07-16 3.1.2 +@evocateur/libnpmpublish Programmatic API for the bits behind npm publish and unpublish =evocateur 2019-07-16 1.2.2 +libnpmorg Programmatic api for \`npm org\` commands =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 2.0.1 libnpm npm package manager api orgs teams +libnpmsearch Programmatic API for searching in npm and compatible registries. =nlf =ruyadorno =darcyclarke =isaacs 2020-12-08 3.1.0 npm search api libnpm +libnpmteam npm Team management APIs =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 2.0.2 +libnpmhook programmatic API for managing npm registry hooks =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 6.0.1 npm hooks registry npm api +libnpmpublish Programmatic API for the bits behind npm publish and unpublish =nlf =ruyadorno =darcyclarke =isaacs 2020-11-03 4.0.0 +libnpmfund Programmatic API for npm fund =nlf =ruyadorno =darcyclarke =isaacs 2020-12-08 1.0.2 npm npmcli libnpm cli git fund gitfund +@npmcli/map-workspaces Retrieves a name:pathname Map for a given workspaces config =nlf =ruyadorno =darcyclarke =isaacs 2020-09-30 1.0.1 npm bad map npmcli libnpm cli workspaces map-workspaces +libnpmversion library to do the things that 'npm version' does =nlf =ruyadorno =darcyclarke =isaacs 2020-11-04 1.0.7 +@types/libnpmsearch TypeScript definitions for libnpmsearch =types 2019-09-26 2.0.1 +pkg-no-desc =lukekarrys 2019-09-26 1.0.0 ` exports[`test/lib/commands/search.js TAP search > should have filtered expected search results 1`] = ` diff --git a/deps/npm/tap-snapshots/test/lib/utils/sbom-cyclonedx.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/sbom-cyclonedx.js.test.cjs index 878dfd4be4705b..7a8d79017f36a2 100644 --- a/deps/npm/tap-snapshots/test/lib/utils/sbom-cyclonedx.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/utils/sbom-cyclonedx.js.test.cjs @@ -912,6 +912,61 @@ exports[`test/lib/utils/sbom-cyclonedx.js TAP single node - with license express } ` +exports[`test/lib/utils/sbom-cyclonedx.js TAP single node - with license object > must match snapshot 1`] = ` +{ + "$schema": "http://cyclonedx.org/schema/bom-1.5.schema.json", + "bomFormat": "CycloneDX", + "specVersion": "1.5", + "serialNumber": "urn:uuid:00000000-0000-0000-0000-000000000000", + "version": 1, + "metadata": { + "timestamp": "2020-01-01T00:00:00.000Z", + "lifecycles": [ + { + "phase": "build" + } + ], + "tools": [ + { + "vendor": "npm", + "name": "cli", + "version": "10.0.0 " + } + ], + "component": { + "bom-ref": "root@1.0.0", + "type": "library", + "name": "root", + "version": "1.0.0", + "scope": "required", + "author": "Author", + "purl": "pkg:npm/root@1.0.0", + "properties": [ + { + "name": "cdx:npm:package:path", + "value": "" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + } + }, + "components": [], + "dependencies": [ + { + "ref": "root@1.0.0", + "dependsOn": [] + } + ] +} +` + exports[`test/lib/utils/sbom-cyclonedx.js TAP single node - with repository url > must match snapshot 1`] = ` { "$schema": "http://cyclonedx.org/schema/bom-1.5.schema.json", diff --git a/deps/npm/tap-snapshots/test/lib/utils/sbom-spdx.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/sbom-spdx.js.test.cjs index 890bd29b7d2639..aeda27793a04ff 100644 --- a/deps/npm/tap-snapshots/test/lib/utils/sbom-spdx.js.test.cjs +++ b/deps/npm/tap-snapshots/test/lib/utils/sbom-spdx.js.test.cjs @@ -504,3 +504,138 @@ exports[`test/lib/utils/sbom-spdx.js TAP single node - with integrity > must mat ] } ` + +exports[`test/lib/utils/sbom-spdx.js TAP single node - with license expression > must match snapshot 1`] = ` +{ + "spdxVersion": "SPDX-2.3", + "dataLicense": "CC0-1.0", + "SPDXID": "SPDXRef-DOCUMENT", + "name": "root@1.0.0", + "documentNamespace": "docns", + "creationInfo": { + "created": "2020-01-01T00:00:00.000Z", + "creators": [ + "Tool: npm/cli-10.0.0 " + ] + }, + "documentDescribes": [ + "SPDXRef-Package-root-1.0.0" + ], + "packages": [ + { + "name": "root", + "SPDXID": "SPDXRef-Package-root-1.0.0", + "versionInfo": "1.0.0", + "packageFileName": "", + "downloadLocation": "NOASSERTION", + "filesAnalyzed": false, + "homepage": "NOASSERTION", + "licenseDeclared": "(MIT OR Apache-2.0)", + "externalRefs": [ + { + "referenceCategory": "PACKAGE-MANAGER", + "referenceType": "purl", + "referenceLocator": "pkg:npm/root@1.0.0" + } + ] + } + ], + "relationships": [ + { + "spdxElementId": "SPDXRef-DOCUMENT", + "relatedSpdxElement": "SPDXRef-Package-root-1.0.0", + "relationshipType": "DESCRIBES" + } + ] +} +` + +exports[`test/lib/utils/sbom-spdx.js TAP single node - with license object > must match snapshot 1`] = ` +{ + "spdxVersion": "SPDX-2.3", + "dataLicense": "CC0-1.0", + "SPDXID": "SPDXRef-DOCUMENT", + "name": "root@1.0.0", + "documentNamespace": "docns", + "creationInfo": { + "created": "2020-01-01T00:00:00.000Z", + "creators": [ + "Tool: npm/cli-10.0.0 " + ] + }, + "documentDescribes": [ + "SPDXRef-Package-root-1.0.0" + ], + "packages": [ + { + "name": "root", + "SPDXID": "SPDXRef-Package-root-1.0.0", + "versionInfo": "1.0.0", + "packageFileName": "", + "downloadLocation": "NOASSERTION", + "filesAnalyzed": false, + "homepage": "NOASSERTION", + "licenseDeclared": "MIT", + "externalRefs": [ + { + "referenceCategory": "PACKAGE-MANAGER", + "referenceType": "purl", + "referenceLocator": "pkg:npm/root@1.0.0" + } + ] + } + ], + "relationships": [ + { + "spdxElementId": "SPDXRef-DOCUMENT", + "relatedSpdxElement": "SPDXRef-Package-root-1.0.0", + "relationshipType": "DESCRIBES" + } + ] +} +` + +exports[`test/lib/utils/sbom-spdx.js TAP single node - with single license > must match snapshot 1`] = ` +{ + "spdxVersion": "SPDX-2.3", + "dataLicense": "CC0-1.0", + "SPDXID": "SPDXRef-DOCUMENT", + "name": "root@1.0.0", + "documentNamespace": "docns", + "creationInfo": { + "created": "2020-01-01T00:00:00.000Z", + "creators": [ + "Tool: npm/cli-10.0.0 " + ] + }, + "documentDescribes": [ + "SPDXRef-Package-root-1.0.0" + ], + "packages": [ + { + "name": "root", + "SPDXID": "SPDXRef-Package-root-1.0.0", + "versionInfo": "1.0.0", + "packageFileName": "", + "downloadLocation": "NOASSERTION", + "filesAnalyzed": false, + "homepage": "NOASSERTION", + "licenseDeclared": "ISC", + "externalRefs": [ + { + "referenceCategory": "PACKAGE-MANAGER", + "referenceType": "purl", + "referenceLocator": "pkg:npm/root@1.0.0" + } + ] + } + ], + "relationships": [ + { + "spdxElementId": "SPDXRef-DOCUMENT", + "relatedSpdxElement": "SPDXRef-Package-root-1.0.0", + "relationshipType": "DESCRIBES" + } + ] +} +` diff --git a/deps/npm/test/lib/commands/exec.js b/deps/npm/test/lib/commands/exec.js index 07a3e6ebd8ed95..3cb4e90e855fe4 100644 --- a/deps/npm/test/lib/commands/exec.js +++ b/deps/npm/test/lib/commands/exec.js @@ -88,7 +88,7 @@ t.test('--prefix', async t => { t.ok(exists.isFile(), 'bin ran, creating file') }) -t.test('workspaces', async t => { +t.test('runs in workspace path', async t => { const registry = new MockRegistry({ tap: t, registry: 'https://registry.npmjs.org/', @@ -124,12 +124,101 @@ t.test('workspaces', async t => { await registry.package({ manifest, tarballs: { '1.0.0': path.join(npm.prefix, 'npm-exec-test'), - } }) + }, + }) await npm.exec('exec', ['@npmcli/npx-test']) const exists = await fs.stat(path.join(npm.prefix, 'workspace-a', 'npm-exec-test-success')) t.ok(exists.isFile(), 'bin ran, creating file inside workspace') }) +t.test('finds workspace bin first', async t => { + const { npm } = await loadMockNpm(t, { + config: { + workspace: ['workspace-a'], + }, + prefixDir: { + 'package.json': JSON.stringify({ + name: '@npmcli/npx-workspace-root-test', + bin: { 'npx-test': 'index.js' }, + workspaces: ['workspace-a'], + }), + 'index.js': `#!/usr/bin/env node + require('fs').writeFileSync('npm-exec-test-fail', '')`, + 'workspace-a': { + 'package.json': JSON.stringify({ + name: '@npmcli/npx-workspace-test', + bin: { 'npx-test': 'index.js' }, + }), + 'index.js': `#!/usr/bin/env node + require('fs').writeFileSync('npm-exec-test-success', '')`, + }, + }, + }) + + await npm.exec('install', []) // reify + await npm.exec('exec', ['npx-test']) + const exists = await fs.stat(path.join(npm.prefix, 'workspace-a', 'npm-exec-test-success')) + t.ok(exists.isFile(), 'bin ran, creating file inside workspace') + t.rejects(fs.stat(path.join(npm.prefix, 'npm-exec-test-fail'))) +}) + +t.test('finds workspace dep first', async t => { + const registry = new MockRegistry({ + tap: t, + registry: 'https://registry.npmjs.org/', + }) + + const manifest = registry.manifest({ name: '@npmcli/subdep', versions: ['1.0.0', '2.0.0'] }) + manifest.versions['1.0.0'].bin = { 'npx-test': 'index.js' } + manifest.versions['2.0.0'].bin = { 'npx-test': 'index.js' } + + const { npm } = await loadMockNpm(t, { + prefixDir: { + subdep: { + one: { + 'package.json': JSON.stringify(manifest.versions['1.0.0']), + 'index.js': `#!/usr/bin/env node + require('fs').writeFileSync('npm-exec-test-one', '')`, + }, + two: { + 'package.json': JSON.stringify(manifest.versions['2.0.0']), + 'index.js': `#!/usr/bin/env node + require('fs').writeFileSync('npm-exec-test-two', '')`, + }, + }, + 'package.json': JSON.stringify({ + name: '@npmcli/npx-workspace-root-test', + dependencies: { '@npmcli/subdep': '1.0.0' }, + bin: { 'npx-test': 'index.js' }, + workspaces: ['workspace-a'], + }), + 'index.js': `#!/usr/bin/env node + require('fs').writeFileSync('npm-exec-test-fail', '')`, + 'workspace-a': { + 'package.json': JSON.stringify({ + name: '@npmcli/npx-workspace-test', + dependencies: { '@npmcli/subdep': '2.0.0' }, + bin: { 'npx-test': 'index.js' }, + }), + 'index.js': `#!/usr/bin/env node + require('fs').writeFileSync('npm-exec-test-success', '')`, + }, + }, + }) + + await registry.package({ manifest, + tarballs: { + '1.0.0': path.join(npm.prefix, 'subdep', 'one'), + '2.0.0': path.join(npm.prefix, 'subdep', 'two'), + }, + }) + await npm.exec('install', []) + npm.config.set('workspace', ['workspace-a']) + await npm.exec('exec', ['npx-test']) + const exists = await fs.stat(path.join(npm.prefix, 'workspace-a', 'npm-exec-test-success')) + t.ok(exists.isFile(), 'bin ran, creating file') +}) + t.test('npx --no-install @npmcli/npx-test', async t => { const registry = new MockRegistry({ tap: t, diff --git a/deps/npm/test/lib/commands/hook.js b/deps/npm/test/lib/commands/hook.js index d3de4f5c55efad..448045cdd69162 100644 --- a/deps/npm/test/lib/commands/hook.js +++ b/deps/npm/test/lib/commands/hook.js @@ -243,7 +243,8 @@ t.test('npm hook ls', async t => { 'received the correct arguments' ) t.equal(outputs[0][0], 'You have 3 hooks configured.', 'prints the correct header') - const out = require('strip-ansi')(outputs[1][0]) + const { default: stripAnsi } = await import('strip-ansi') + const out = stripAnsi(outputs[1][0]) t.match(out, /semver.*https:\/\/google.com.*\n.*\n.*never triggered/, 'prints package hook') t.match(out, /@npmcli.*https:\/\/google.com.*\n.*\n.*triggered just now/, 'prints scope hook') t.match(out, /~npm.*https:\/\/google.com.*\n.*\n.*never triggered/, 'prints owner hook') @@ -292,7 +293,8 @@ t.test('npm hook ls, single result', async t => { 'received the correct arguments' ) t.equal(outputs[0][0], 'You have one hook configured.', 'prints the correct header') - const out = require('strip-ansi')(outputs[1][0]) + const { default: stripAnsi } = await import('strip-ansi') + const out = stripAnsi(outputs[1][0]) t.match(out, /semver.*https:\/\/google.com.*\n.*\n.*never triggered/, 'prints package hook') }) diff --git a/deps/npm/test/lib/commands/org.js b/deps/npm/test/lib/commands/org.js index 5c239295c33432..ed8fb238c4b0d8 100644 --- a/deps/npm/test/lib/commands/org.js +++ b/deps/npm/test/lib/commands/org.js @@ -1,5 +1,4 @@ const t = require('tap') -const ansiTrim = require('strip-ansi') const mockNpm = require('../../fixtures/mock-npm') const mockOrg = async (t, { orgSize = 1, orgList = {}, ...npmOpts } = {}) => { @@ -427,7 +426,8 @@ t.test('npm org ls', async t => { }, 'receieved the correct args' ) - const out = ansiTrim(outputs[0][0]) + const { default: stripAnsi } = await import('strip-ansi') + const out = stripAnsi(outputs[0][0]) t.match(out, /one.*developer/, 'contains the developer member') t.match(out, /two.*admin/, 'contains the admin member') t.match(out, /three.*owner/, 'contains the owner member') @@ -452,7 +452,8 @@ t.test('npm org ls - user filter', async t => { }, 'receieved the correct args' ) - const out = ansiTrim(outputs[0][0]) + const { default: stripAnsi } = await import('strip-ansi') + const out = stripAnsi(outputs[0][0]) t.match(out, /username.*admin/, 'contains the filtered member') t.notMatch(out, /missing.*admin/, 'does not contain other members') }) @@ -475,7 +476,8 @@ t.test('npm org ls - user filter, missing user', async t => { }, 'receieved the correct args' ) - const out = ansiTrim(outputs[0][0]) + const { default: stripAnsi } = await import('strip-ansi') + const out = stripAnsi(outputs[0][0]) t.notMatch(out, /username/, 'does not contain the requested member') t.notMatch(out, /missing.*admin/, 'does not contain other members') }) diff --git a/deps/npm/test/lib/commands/pkg.js b/deps/npm/test/lib/commands/pkg.js index f3401bde5226a8..168870f59d9d1e 100644 --- a/deps/npm/test/lib/commands/pkg.js +++ b/deps/npm/test/lib/commands/pkg.js @@ -662,6 +662,43 @@ t.test('workspaces', async t => { ) }) +t.test('single workspace', async t => { + const { pkg, OUTPUT } = await mockNpm(t, { + prefixDir: { + 'package.json': JSON.stringify({ + name: 'root', + version: '1.0.0', + workspaces: [ + 'packages/*', + ], + }), + packages: { + a: { + 'package.json': JSON.stringify({ + name: 'a', + version: '1.0.0', + }), + }, + b: { + 'package.json': JSON.stringify({ + name: 'b', + version: '1.2.3', + }), + }, + }, + }, + config: { workspace: ['packages/a'] }, + }) + + await pkg('get', 'name', 'version') + + t.strictSame( + JSON.parse(OUTPUT()), + { a: { name: 'a', version: '1.0.0' } }, + 'should only return info for one workspace' + ) +}) + t.test('fix', async t => { const { pkg, readPackageJson } = await mockNpm(t, { prefixDir: { diff --git a/deps/npm/test/lib/utils/open-url.js b/deps/npm/test/lib/utils/open-url.js index 0ce1b57aa5f9f7..dab7b41b92f1fb 100644 --- a/deps/npm/test/lib/utils/open-url.js +++ b/deps/npm/test/lib/utils/open-url.js @@ -124,7 +124,7 @@ t.test('prints where to go when given browser does not exist', async t => { const { openerUrl, openerOpts, joinedOutput } = await mockOpenUrl(t, ['https://www.npmjs.com', 'npm home'], { - openerResult: Object.assign(new Error('failed'), { code: 'ENOENT' }), + openerResult: Object.assign(new Error('failed'), { code: 127 }), } ) diff --git a/deps/npm/test/lib/utils/sbom-cyclonedx.js b/deps/npm/test/lib/utils/sbom-cyclonedx.js index 540feb9eb0ee34..da9b3f757988b4 100644 --- a/deps/npm/test/lib/utils/sbom-cyclonedx.js +++ b/deps/npm/test/lib/utils/sbom-cyclonedx.js @@ -190,6 +190,20 @@ t.test('single node - with license expression', t => { t.end() }) +t.test('single node - with license object', t => { + const pkg = { + ...rootPkg, + license: { + type: 'MIT', + url: 'http://github.com/kriskowal/q/raw/master/LICENSE', + }, + } + const node = { ...root, package: pkg } + const res = cyclonedxOutput({ npm, nodes: [node] }) + t.matchSnapshot(JSON.stringify(res)) + t.end() +}) + t.test('single node - from git url', t => { const node = { ...root, type: 'git', resolved: 'https://github.com/foo/bar#1234' } const res = cyclonedxOutput({ npm, nodes: [node] }) @@ -205,13 +219,15 @@ t.test('single node - no package info', t => { }) t.test('node - with deps', t => { - const node = { ...root, + const node = { + ...root, edgesOut: [ { to: dep1 }, { to: dep2 }, { to: undefined }, { to: { pkgid: 'foo' } }, - ] } + ], + } const res = cyclonedxOutput({ npm, nodes: [node, dep1, dep2, dep2Link] }) t.matchSnapshot(JSON.stringify(res)) t.end() diff --git a/deps/npm/test/lib/utils/sbom-spdx.js b/deps/npm/test/lib/utils/sbom-spdx.js index 74f6c3f34e71c4..d69e85667dc85b 100644 --- a/deps/npm/test/lib/utils/sbom-spdx.js +++ b/deps/npm/test/lib/utils/sbom-spdx.js @@ -109,6 +109,36 @@ t.test('single node - application package type', t => { t.end() }) +t.test('single node - with single license', t => { + const pkg = { ...rootPkg, license: 'ISC' } + const node = { ...root, package: pkg } + const res = spdxOutput({ npm, nodes: [node] }) + t.matchSnapshot(JSON.stringify(res)) + t.end() +}) + +t.test('single node - with license object', t => { + const pkg = { + ...rootPkg, + license: { + type: 'MIT', + url: 'http://github.com/kriskowal/q/raw/master/LICENSE', + }, + } + const node = { ...root, package: pkg } + const res = spdxOutput({ npm, nodes: [node] }) + t.matchSnapshot(JSON.stringify(res)) + t.end() +}) + +t.test('single node - with license expression', t => { + const pkg = { ...rootPkg, license: '(MIT OR Apache-2.0)' } + const node = { ...root, package: pkg } + const res = spdxOutput({ npm, nodes: [node] }) + t.matchSnapshot(JSON.stringify(res)) + t.end() +}) + t.test('single node - with description', t => { const pkg = { ...rootPkg, description: 'Package description' } const node = { ...root, package: pkg } From eaa4c14e6b0a1aaf0a489717d0294b1602321f22 Mon Sep 17 00:00:00 2001 From: kylo5aby <109658203+zhenweijin@users.noreply.github.com> Date: Fri, 17 Nov 2023 04:53:38 +0800 Subject: [PATCH 033/114] util: improve performance of normalizeEncoding MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50721 Reviewed-By: Marco Ippolito Reviewed-By: Vinícius Lourenço Claro Cardoso --- lib/internal/util.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/internal/util.js b/lib/internal/util.js index 4149840b244adc..80ce774a211644 100644 --- a/lib/internal/util.js +++ b/lib/internal/util.js @@ -220,13 +220,13 @@ function slowCases(enc) { case 4: if (enc === 'UTF8') return 'utf8'; if (enc === 'ucs2' || enc === 'UCS2') return 'utf16le'; - enc = `${enc}`.toLowerCase(); + enc = StringPrototypeToLowerCase(enc); if (enc === 'utf8') return 'utf8'; if (enc === 'ucs2') return 'utf16le'; break; case 3: if (enc === 'hex' || enc === 'HEX' || - `${enc}`.toLowerCase() === 'hex') + StringPrototypeToLowerCase(enc) === 'hex') return 'hex'; break; case 5: @@ -235,7 +235,7 @@ function slowCases(enc) { if (enc === 'UTF-8') return 'utf8'; if (enc === 'ASCII') return 'ascii'; if (enc === 'UCS-2') return 'utf16le'; - enc = `${enc}`.toLowerCase(); + enc = StringPrototypeToLowerCase(enc); if (enc === 'utf-8') return 'utf8'; if (enc === 'ascii') return 'ascii'; if (enc === 'ucs-2') return 'utf16le'; @@ -245,23 +245,23 @@ function slowCases(enc) { if (enc === 'latin1' || enc === 'binary') return 'latin1'; if (enc === 'BASE64') return 'base64'; if (enc === 'LATIN1' || enc === 'BINARY') return 'latin1'; - enc = `${enc}`.toLowerCase(); + enc = StringPrototypeToLowerCase(enc); if (enc === 'base64') return 'base64'; if (enc === 'latin1' || enc === 'binary') return 'latin1'; break; case 7: if (enc === 'utf16le' || enc === 'UTF16LE' || - `${enc}`.toLowerCase() === 'utf16le') + StringPrototypeToLowerCase(enc) === 'utf16le') return 'utf16le'; break; case 8: if (enc === 'utf-16le' || enc === 'UTF-16LE' || - `${enc}`.toLowerCase() === 'utf-16le') + StringPrototypeToLowerCase(enc) === 'utf-16le') return 'utf16le'; break; case 9: if (enc === 'base64url' || enc === 'BASE64URL' || - `${enc}`.toLowerCase() === 'base64url') + StringPrototypeToLowerCase(enc) === 'base64url') return 'base64url'; break; default: From 465f75b58a052ded5eabc13e4c2b630abf3a06b6 Mon Sep 17 00:00:00 2001 From: Chengzhong Wu Date: Fri, 17 Nov 2023 11:55:33 +0800 Subject: [PATCH 034/114] build: disable flag v8_scriptormodule_legacy_lifetime MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Usages of `v8::ScriptOrModule` were removed in https://github.com/nodejs/node/pull/44198 so the flag can be disabled by default. PR-URL: https://github.com/nodejs/node/pull/50616 Reviewed-By: Michaël Zasso Reviewed-By: Richard Lau --- tools/v8_gypfiles/features.gypi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/v8_gypfiles/features.gypi b/tools/v8_gypfiles/features.gypi index aa946a2774177f..b5738243363182 100644 --- a/tools/v8_gypfiles/features.gypi +++ b/tools/v8_gypfiles/features.gypi @@ -270,7 +270,7 @@ # Enable global allocation site tracking. 'v8_allocation_site_tracking%': 1, - 'v8_scriptormodule_legacy_lifetime%': 1, + 'v8_scriptormodule_legacy_lifetime%': 0, # Change code emission and runtime features to be CET shadow-stack compliant # (incomplete and experimental). From 27a4f5864089315b1a6e58c4b2b1e19bb8764c54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= Date: Fri, 17 Nov 2023 12:04:45 +0000 Subject: [PATCH 035/114] permission: mark const functions as such MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Otherwise, non-mutating functions such as is_tree_granted unnecessarily require pointers to mutable data structures. PR-URL: https://github.com/nodejs/node/pull/50705 Reviewed-By: Rafael Gonzaga Reviewed-By: James M Snell Reviewed-By: Vinícius Lourenço Claro Cardoso --- src/permission/child_process_permission.cc | 2 +- src/permission/child_process_permission.h | 2 +- src/permission/fs_permission.cc | 9 +++++---- src/permission/fs_permission.h | 11 ++++++----- src/permission/inspector_permission.cc | 2 +- src/permission/inspector_permission.h | 2 +- src/permission/permission_base.h | 2 +- src/permission/worker_permission.cc | 2 +- src/permission/worker_permission.h | 2 +- 9 files changed, 18 insertions(+), 16 deletions(-) diff --git a/src/permission/child_process_permission.cc b/src/permission/child_process_permission.cc index de078febf4bcd9..da85083918aa21 100644 --- a/src/permission/child_process_permission.cc +++ b/src/permission/child_process_permission.cc @@ -15,7 +15,7 @@ void ChildProcessPermission::Apply(const std::vector& allow, } bool ChildProcessPermission::is_granted(PermissionScope perm, - const std::string_view& param) { + const std::string_view& param) const { return deny_all_ == false; } diff --git a/src/permission/child_process_permission.h b/src/permission/child_process_permission.h index cf0ec97d5021a3..58f05b01982d6c 100644 --- a/src/permission/child_process_permission.h +++ b/src/permission/child_process_permission.h @@ -15,7 +15,7 @@ class ChildProcessPermission final : public PermissionBase { void Apply(const std::vector& allow, PermissionScope scope) override; bool is_granted(PermissionScope perm, - const std::string_view& param = "") override; + const std::string_view& param = "") const override; private: bool deny_all_; diff --git a/src/permission/fs_permission.cc b/src/permission/fs_permission.cc index 7a073f99a49440..042dc0ff297216 100644 --- a/src/permission/fs_permission.cc +++ b/src/permission/fs_permission.cc @@ -50,8 +50,9 @@ void FreeRecursivelyNode( delete node; } -bool is_tree_granted(node::permission::FSPermission::RadixTree* granted_tree, - const std::string_view& param) { +bool is_tree_granted( + const node::permission::FSPermission::RadixTree* granted_tree, + const std::string_view& param) { #ifdef _WIN32 // is UNC file path if (param.rfind("\\\\", 0) == 0) { @@ -147,7 +148,7 @@ void FSPermission::GrantAccess(PermissionScope perm, const std::string& res) { } bool FSPermission::is_granted(PermissionScope perm, - const std::string_view& param = "") { + const std::string_view& param = "") const { switch (perm) { case PermissionScope::kFileSystem: return allow_all_in_ && allow_all_out_; @@ -171,7 +172,7 @@ FSPermission::RadixTree::~RadixTree() { } bool FSPermission::RadixTree::Lookup(const std::string_view& s, - bool when_empty_return = false) { + bool when_empty_return = false) const { FSPermission::RadixTree::Node* current_node = root_node_; if (current_node->children.size() == 0) { return when_empty_return; diff --git a/src/permission/fs_permission.h b/src/permission/fs_permission.h index 74b1440536652a..1c818567934f7d 100644 --- a/src/permission/fs_permission.h +++ b/src/permission/fs_permission.h @@ -17,7 +17,8 @@ class FSPermission final : public PermissionBase { public: void Apply(const std::vector& allow, PermissionScope scope) override; - bool is_granted(PermissionScope perm, const std::string_view& param) override; + bool is_granted(PermissionScope perm, + const std::string_view& param) const override; struct RadixTree { struct Node { @@ -72,7 +73,7 @@ class FSPermission final : public PermissionBase { return wildcard_child; } - Node* NextNode(const std::string& path, size_t idx) { + Node* NextNode(const std::string& path, size_t idx) const { if (idx >= path.length()) { return nullptr; } @@ -115,7 +116,7 @@ class FSPermission final : public PermissionBase { // ---> '\000' ASCII (0) || \0 // ---> er // ---> n - bool IsEndNode() { + bool IsEndNode() const { if (children.size() == 0) { return true; } @@ -126,8 +127,8 @@ class FSPermission final : public PermissionBase { RadixTree(); ~RadixTree(); void Insert(const std::string& s); - bool Lookup(const std::string_view& s) { return Lookup(s, false); } - bool Lookup(const std::string_view& s, bool when_empty_return); + bool Lookup(const std::string_view& s) const { return Lookup(s, false); } + bool Lookup(const std::string_view& s, bool when_empty_return) const; private: Node* root_node_; diff --git a/src/permission/inspector_permission.cc b/src/permission/inspector_permission.cc index 401d801ac0adb5..34e55db4bef590 100644 --- a/src/permission/inspector_permission.cc +++ b/src/permission/inspector_permission.cc @@ -14,7 +14,7 @@ void InspectorPermission::Apply(const std::vector& allow, } bool InspectorPermission::is_granted(PermissionScope perm, - const std::string_view& param) { + const std::string_view& param) const { return deny_all_ == false; } diff --git a/src/permission/inspector_permission.h b/src/permission/inspector_permission.h index e5c6d1b81677f5..fc8b357c4fcb15 100644 --- a/src/permission/inspector_permission.h +++ b/src/permission/inspector_permission.h @@ -15,7 +15,7 @@ class InspectorPermission final : public PermissionBase { void Apply(const std::vector& allow, PermissionScope scope) override; bool is_granted(PermissionScope perm, - const std::string_view& param = "") override; + const std::string_view& param = "") const override; private: bool deny_all_; diff --git a/src/permission/permission_base.h b/src/permission/permission_base.h index c2f377424f6fc5..b817efb88a76bb 100644 --- a/src/permission/permission_base.h +++ b/src/permission/permission_base.h @@ -42,7 +42,7 @@ class PermissionBase { virtual void Apply(const std::vector& allow, PermissionScope scope) = 0; virtual bool is_granted(PermissionScope perm, - const std::string_view& param = "") = 0; + const std::string_view& param = "") const = 0; }; } // namespace permission diff --git a/src/permission/worker_permission.cc b/src/permission/worker_permission.cc index a18938e5fe1efd..78293589faa3bd 100644 --- a/src/permission/worker_permission.cc +++ b/src/permission/worker_permission.cc @@ -15,7 +15,7 @@ void WorkerPermission::Apply(const std::vector& allow, } bool WorkerPermission::is_granted(PermissionScope perm, - const std::string_view& param) { + const std::string_view& param) const { return deny_all_ == false; } diff --git a/src/permission/worker_permission.h b/src/permission/worker_permission.h index cdc224925c2291..99d6b039ee22c1 100644 --- a/src/permission/worker_permission.h +++ b/src/permission/worker_permission.h @@ -15,7 +15,7 @@ class WorkerPermission final : public PermissionBase { void Apply(const std::vector& allow, PermissionScope scope) override; bool is_granted(PermissionScope perm, - const std::string_view& param = "") override; + const std::string_view& param = "") const override; private: bool deny_all_; From ead9879a0430644ebdcd14d604415890a0184ce8 Mon Sep 17 00:00:00 2001 From: Jungku Lee Date: Fri, 17 Nov 2023 22:49:26 +0900 Subject: [PATCH 036/114] doc: update print results(detail) in `PerformanceEntry` PR-URL: https://github.com/nodejs/node/pull/50723 Reviewed-By: Luigi Pinca Reviewed-By: Deokjin Kim --- doc/api/perf_hooks.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/doc/api/perf_hooks.md b/doc/api/perf_hooks.md index 8323b9ab03fcd0..040b8eaa52027b 100644 --- a/doc/api/perf_hooks.md +++ b/doc/api/perf_hooks.md @@ -1328,13 +1328,15 @@ const obs = new PerformanceObserver((perfObserverList, observer) => { * name: 'test', * entryType: 'mark', * startTime: 81.465639, - * duration: 0 + * duration: 0, + * detail: null * }, * PerformanceEntry { * name: 'meow', * entryType: 'mark', * startTime: 81.860064, - * duration: 0 + * duration: 0, + * detail: null * } * ] */ @@ -1378,7 +1380,8 @@ const obs = new PerformanceObserver((perfObserverList, observer) => { * name: 'meow', * entryType: 'mark', * startTime: 98.545991, - * duration: 0 + * duration: 0, + * detail: null * } * ] */ @@ -1391,7 +1394,8 @@ const obs = new PerformanceObserver((perfObserverList, observer) => { * name: 'test', * entryType: 'mark', * startTime: 63.518931, - * duration: 0 + * duration: 0, + * detail: null * } * ] */ @@ -1434,13 +1438,15 @@ const obs = new PerformanceObserver((perfObserverList, observer) => { * name: 'test', * entryType: 'mark', * startTime: 55.897834, - * duration: 0 + * duration: 0, + * detail: null * }, * PerformanceEntry { * name: 'meow', * entryType: 'mark', * startTime: 56.350146, - * duration: 0 + * duration: 0, + * detail: null * } * ] */ From 6475cee6a469cacd159039cba1cfc6126174d398 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Tue, 14 Nov 2023 23:42:36 +0100 Subject: [PATCH 037/114] test: give more time to GC in test-shadow-realm-gc-* When --node-builtin-modules-path is used, we read and create new strings for builtins in each realm which increases the memory usage. As a result GC may not be able to keep up with the allocation done in the loop in the test. As a workaround, give GC a bit more time by waiting for a timer in the loop. PR-URL: https://github.com/nodejs/node/pull/50735 Refs: https://github.com/nodejs/node/issues/50726 Reviewed-By: Chengzhong Wu Reviewed-By: Yagiz Nizipli --- test/common/gc.js | 11 +++++++++++ test/parallel/test-shadow-realm-gc-module.js | 14 ++++++-------- test/parallel/test-shadow-realm-gc.js | 6 ++++-- 3 files changed, 21 insertions(+), 10 deletions(-) diff --git a/test/common/gc.js b/test/common/gc.js index af637af7bedcd6..9860bb191ee072 100644 --- a/test/common/gc.js +++ b/test/common/gc.js @@ -1,5 +1,7 @@ 'use strict'; +const wait = require('timers/promises').setTimeout; + // TODO(joyeecheung): merge ongc.js and gcUntil from common/index.js // into this. @@ -65,6 +67,15 @@ async function checkIfCollectable( createObject(); } +// Repeat an operation and give GC some breathing room at every iteration. +async function runAndBreathe(fn, repeat, waitTime = 20) { + for (let i = 0; i < repeat; i++) { + await fn(); + await wait(waitTime); + } +} + module.exports = { checkIfCollectable, + runAndBreathe, }; diff --git a/test/parallel/test-shadow-realm-gc-module.js b/test/parallel/test-shadow-realm-gc-module.js index 7f822bdd52fe1d..6077bf03146d87 100644 --- a/test/parallel/test-shadow-realm-gc-module.js +++ b/test/parallel/test-shadow-realm-gc-module.js @@ -8,13 +8,11 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); +const { runAndBreathe } = require('../common/gc'); -async function main() { - const mod = fixtures.fileURL('es-module-shadow-realm', 'state-counter.mjs'); - for (let i = 0; i < 100; i++) { - const realm = new ShadowRealm(); - await realm.importValue(mod, 'getCounter'); - } -} +const mod = fixtures.fileURL('es-module-shadow-realm', 'state-counter.mjs'); -main().then(common.mustCall()); +runAndBreathe(async () => { + const realm = new ShadowRealm(); + await realm.importValue(mod, 'getCounter'); +}, 100).then(common.mustCall()); diff --git a/test/parallel/test-shadow-realm-gc.js b/test/parallel/test-shadow-realm-gc.js index 83f793fd89222f..c6de4a32a88faa 100644 --- a/test/parallel/test-shadow-realm-gc.js +++ b/test/parallel/test-shadow-realm-gc.js @@ -6,14 +6,16 @@ */ const common = require('../common'); +const { runAndBreathe } = require('../common/gc'); const assert = require('assert'); const { isMainThread, Worker } = require('worker_threads'); -for (let i = 0; i < 100; i++) { +runAndBreathe(() => { const realm = new ShadowRealm(); realm.evaluate('new TextEncoder(); 1;'); -} +}, 100).then(common.mustCall()); +// Test it in worker too. if (isMainThread) { const worker = new Worker(__filename); worker.on('exit', common.mustCall((code) => { From 4088b750e7ad811b4a439d420404734696e5da14 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Wed, 15 Nov 2023 19:14:57 +0100 Subject: [PATCH 038/114] test: mark SEA tests as flaky on PowerPC PR-URL: https://github.com/nodejs/node/pull/50750 Refs: https://github.com/nodejs/node/issues/50740 Refs: https://github.com/nodejs/reliability/issues/718 Reviewed-By: Yagiz Nizipli Reviewed-By: Michael Dawson --- test/sequential/sequential.status | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/test/sequential/sequential.status b/test/sequential/sequential.status index 6d89fa0a4d2127..c25fdaa17236bd 100644 --- a/test/sequential/sequential.status +++ b/test/sequential/sequential.status @@ -46,3 +46,11 @@ test-watch-mode-inspect: PASS, FLAKY [$arch==s390x] # https://github.com/nodejs/node/issues/41286 test-performance-eventloopdelay: PASS, FLAKY + +[$arch==ppc] +# https://github.com/nodejs/node/issues/50740 +test-single-executable-application-empty: PASS, FLAKY +test-single-executable-application-snapshot-and-code-cache: PASS, FLAKY +test-single-executable-application-snapshot: PASS, FLAKY +test-single-executable-application-use-code-cache: PASS, FLAKY +test-single-executable-application: PASS, FLAKY From 43da9ea9e56bb4158ab37c982e48d383f7543c3e Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Sat, 18 Nov 2023 04:52:00 +0900 Subject: [PATCH 039/114] build: fix GN configuration for deps/base64 PR-URL: https://github.com/nodejs/node/pull/50696 Reviewed-By: Luigi Pinca Reviewed-By: Marco Ippolito Reviewed-By: Jiawen Geng --- deps/base64/unofficial.gni | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/deps/base64/unofficial.gni b/deps/base64/unofficial.gni index 8138d88798e1df..269c62d976d6ad 100644 --- a/deps/base64/unofficial.gni +++ b/deps/base64/unofficial.gni @@ -32,6 +32,7 @@ template("base64_gn_build") { "HAVE_SSE42=1", "HAVE_AVX=1", "HAVE_AVX2=1", + "HAVE_AVX512=1", ] } if (target_cpu == "arm") { @@ -65,6 +66,7 @@ template("base64_gn_build") { ":base64_sse42", ":base64_avx", ":base64_avx2", + ":base64_avx512", ":base64_neon32", ":base64_neon64", ] @@ -111,6 +113,7 @@ template("base64_gn_build") { } } } + source_set("base64_avx2") { configs += [ ":base64_internal_config" ] sources = [ "base64/lib/arch/avx2/codec.c" ] @@ -123,6 +126,21 @@ template("base64_gn_build") { } } + source_set("base64_avx512") { + configs += [ ":base64_internal_config" ] + sources = [ "base64/lib/arch/avx512/codec.c" ] + if (target_cpu == "x86" || target_cpu == "x64") { + if (is_clang || !is_win) { + cflags_c = [ + "-mavx512vl", + "-mavx512vbmi", + ] + } else if (is_win) { + cflags_c = [ "/arch:AVX512" ] + } + } + } + source_set("base64_neon32") { configs += [ ":base64_internal_config" ] sources = [ "base64/lib/arch/neon32/codec.c" ] From 28d78de0ddd2aaea3648c1bbe04775d559f720c9 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Fri, 17 Nov 2023 21:00:30 +0100 Subject: [PATCH 040/114] test: skip parallel/test-macos-app-sandbox if disk space < 120MB It needs to copy the Node.js binary which is currently almost 100MB. To be safe, skip the test when the available disk space is smaller than 120MB. PR-URL: https://github.com/nodejs/node/pull/50764 Reviewed-By: Debadree Chatterjee Reviewed-By: Yagiz Nizipli Reviewed-By: Luigi Pinca --- test/parallel/test-macos-app-sandbox.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/test/parallel/test-macos-app-sandbox.js b/test/parallel/test-macos-app-sandbox.js index 91485b75983f84..60ad67b3db3790 100644 --- a/test/parallel/test-macos-app-sandbox.js +++ b/test/parallel/test-macos-app-sandbox.js @@ -17,6 +17,10 @@ const nodeBinary = process.execPath; tmpdir.refresh(); +if (!tmpdir.hasEnoughSpace(120 * 1024 * 1024)) { + common.skip('Available disk space < 120MB'); +} + const appBundlePath = tmpdir.resolve('node_sandboxed.app'); const appBundleContentPath = path.join(appBundlePath, 'Contents'); const appExecutablePath = path.join( From 4b26f14a53107424c14d36bc3bc60da69522efa5 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Fri, 17 Nov 2023 22:42:21 +0100 Subject: [PATCH 041/114] test: improve test-bootstrap-modules.js Divide builtins into two lists depending on whether they are loaded before pre-execution or at run time, and give clearer suggestions about how to deal with them based on the category they are in. This helps preventing regressions like the one reported in https://github.com/nodejs/node/issues/45662. PR-URL: https://github.com/nodejs/node/pull/50708 Reviewed-By: Antoine du Hamel Reviewed-By: Richard Lau Reviewed-By: Yagiz Nizipli Reviewed-By: Chengzhong Wu --- test/parallel/test-bootstrap-modules.js | 128 +++++++++++++++++++----- 1 file changed, 103 insertions(+), 25 deletions(-) diff --git a/test/parallel/test-bootstrap-modules.js b/test/parallel/test-bootstrap-modules.js index e4561d746606ed..047e4fbeaa1e67 100644 --- a/test/parallel/test-bootstrap-modules.js +++ b/test/parallel/test-bootstrap-modules.js @@ -1,14 +1,27 @@ -// Flags: --expose-internals 'use strict'; -// This list must be computed before we require any modules to +// This list must be computed before we require any builtins to // to eliminate the noise. -const actualModules = new Set(process.moduleLoadList.slice()); +const list = process.moduleLoadList.slice(); const common = require('../common'); const assert = require('assert'); +const { inspect } = require('util'); -const expectedModules = new Set([ +const preExecIndex = + list.findIndex((i) => i.includes('pre_execution')); +const actual = { + beforePreExec: new Set(list.slice(0, preExecIndex)), + atRunTime: new Set(list.slice(preExecIndex)), +}; + +// Currently, we don't add additional builtins to worker snapshots. +// So for worker snapshots we'll just concatenate the two. Once we +// add more builtins to worker snapshots, we should also distinguish +// the two stages for them. +const expected = {}; + +expected.beforePreExec = new Set([ 'Internal Binding builtins', 'Internal Binding encoding_binding', 'Internal Binding errors', @@ -84,22 +97,25 @@ const expectedModules = new Set([ 'NativeModule internal/modules/package_json_reader', 'Internal Binding module_wrap', 'NativeModule internal/modules/cjs/loader', - 'NativeModule internal/vm/module', - 'NativeModule internal/modules/esm/utils', +]); + +expected.atRunTime = new Set([ 'Internal Binding wasm_web_api', 'Internal Binding worker', 'NativeModule internal/modules/run_main', 'NativeModule internal/net', 'NativeModule internal/dns/utils', 'NativeModule internal/process/pre_execution', + 'NativeModule internal/vm/module', + 'NativeModule internal/modules/esm/utils', ]); if (common.isMainThread) { [ 'NativeModule internal/idna', 'NativeModule url', - ].forEach(expectedModules.add.bind(expectedModules)); -} else { + ].forEach(expected.beforePreExec.add.bind(expected.beforePreExec)); +} else { // Worker. [ 'NativeModule diagnostics_channel', 'NativeModule internal/abort_controller', @@ -127,35 +143,97 @@ if (common.isMainThread) { 'NativeModule stream/promises', 'NativeModule string_decoder', 'NativeModule worker_threads', - ].forEach(expectedModules.add.bind(expectedModules)); + ].forEach(expected.atRunTime.add.bind(expected.atRunTime)); + // For now we'll concatenate the two stages for workers. We prefer + // atRunTime here because that's what currently happens for these. } if (common.isWindows) { // On Windows fs needs SideEffectFreeRegExpPrototypeExec which uses vm. - expectedModules.add('NativeModule vm'); + expected.atRunTime.add('NativeModule vm'); } if (common.hasIntl) { - expectedModules.add('Internal Binding icu'); + expected.beforePreExec.add('Internal Binding icu'); } if (process.features.inspector) { - expectedModules.add('Internal Binding inspector'); - expectedModules.add('NativeModule internal/inspector_async_hook'); - expectedModules.add('NativeModule internal/util/inspector'); + expected.beforePreExec.add('Internal Binding inspector'); + expected.beforePreExec.add('NativeModule internal/util/inspector'); + expected.atRunTime.add('NativeModule internal/inspector_async_hook'); } const difference = (setA, setB) => { return new Set([...setA].filter((x) => !setB.has(x))); }; -const missingModules = difference(expectedModules, actualModules); -const extraModules = difference(actualModules, expectedModules); -const printSet = (s) => { return `${[...s].sort().join(',\n ')}\n`; }; - -assert.deepStrictEqual(actualModules, expectedModules, - (missingModules.size > 0 ? - 'These modules were not loaded:\n ' + - printSet(missingModules) : '') + - (extraModules.size > 0 ? - 'These modules were unexpectedly loaded:\n ' + - printSet(extraModules) : '')); + +// Accumulate all the errors and print them at the end instead of throwing +// immediately which makes it harder to update the test. +const errorLogs = []; +function err(message) { + if (typeof message === 'string') { + errorLogs.push(message); + } else { + // Show the items in individual lines for easier copy-pasting. + errorLogs.push(inspect(message, { compact: false })); + } +} + +if (common.isMainThread) { + const missing = difference(expected.beforePreExec, actual.beforePreExec); + const extra = difference(actual.beforePreExec, expected.beforePreExec); + if (missing.size !== 0) { + err('These builtins are now no longer loaded before pre-execution.'); + err('If this is intentional, remove them from `expected.beforePreExec`.'); + err('\n--- These could be removed from expected.beforePreExec ---'); + err([...missing].sort()); + err(''); + } + if (extra.size !== 0) { + err('These builtins are now unexpectedly loaded before pre-execution.'); + err('If this is intentional, add them to `expected.beforePreExec`.'); + err('\n# Note: loading more builtins before pre-execution can lead to ' + + 'startup performance regression or invalid snapshots.'); + err('- Consider lazy loading builtins that are not used universally.'); + err('- Make sure that the builtins do not access environment dependent ' + + 'states e.g. command line arguments or environment variables ' + + 'during loading.'); + err('- When in doubt, ask @nodejs/startup.'); + err('\n--- These could be added to expected.beforePreExec ---'); + err([...extra].sort()); + err(''); + } +} + +if (!common.isMainThread) { + // For workers, just merge beforePreExec into atRunTime for now. + // When we start adding modules to the worker snapshot, this branch + // can be removed and we can just remove the common.isMainThread + // conditions. + expected.beforePreExec.forEach(expected.atRunTime.add.bind(expected.atRunTime)); + actual.beforePreExec.forEach(actual.atRunTime.add.bind(actual.atRunTime)); +} + +{ + const missing = difference(expected.atRunTime, actual.atRunTime); + const extra = difference(actual.atRunTime, expected.atRunTime); + if (missing.size !== 0) { + err('These builtins are now no longer loaded at run time.'); + err('If this is intentional, remove them from `expected.atRunTime`.'); + err('\n--- These could be removed from expected.atRunTime ---'); + err([...missing].sort()); + err(''); + } + if (extra.size !== 0) { + err('These builtins are now unexpectedly loaded at run time.'); + err('If this is intentional, add them to `expected.atRunTime`.'); + err('\n# Note: loading more builtins at run time can lead to ' + + 'startup performance regression.'); + err('- Consider lazy loading builtins that are not used universally.'); + err('\n--- These could be added to expected.atRunTime ---'); + err([...extra].sort()); + err(''); + } +} + +assert.strictEqual(errorLogs.length, 0, errorLogs.join('\n')); From aebe2fc7025cea32d113756729cea2fdc499245e Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Sat, 18 Nov 2023 00:59:26 +0100 Subject: [PATCH 042/114] perf_hooks: implement performance.now() with fast API calls MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50492 Reviewed-By: Vinícius Lourenço Claro Cardoso Reviewed-By: Yagiz Nizipli Reviewed-By: Bryan English Reviewed-By: Chengzhong Wu Reviewed-By: Benjamin Gruenbaum Reviewed-By: Stephen Belanger --- benchmark/perf_hooks/now.js | 23 +++++++++++++++++++++++ lib/internal/perf/utils.js | 7 +------ src/node_external_reference.h | 3 +++ src/node_perf.cc | 21 +++++++++++++++++++++ 4 files changed, 48 insertions(+), 6 deletions(-) create mode 100644 benchmark/perf_hooks/now.js diff --git a/benchmark/perf_hooks/now.js b/benchmark/perf_hooks/now.js new file mode 100644 index 00000000000000..7132196c430125 --- /dev/null +++ b/benchmark/perf_hooks/now.js @@ -0,0 +1,23 @@ +'use strict'; + +const assert = require('assert'); +const common = require('../common.js'); + +const bench = common.createBenchmark(main, { + n: [1e6], +}); + +function main({ n }) { + const arr = []; + for (let i = 0; i < n; ++i) { + arr.push(performance.now()); + } + + bench.start(); + for (let i = 0; i < n; i++) { + arr[i] = performance.now(); + } + bench.end(n); + + assert.strictEqual(arr.length, n); +} diff --git a/lib/internal/perf/utils.js b/lib/internal/perf/utils.js index a0b7955c70481c..bbc1c996e318f8 100644 --- a/lib/internal/perf/utils.js +++ b/lib/internal/perf/utils.js @@ -5,6 +5,7 @@ const { NODE_PERFORMANCE_MILESTONE_TIME_ORIGIN, }, milestones, + now, } = internalBinding('performance'); function getTimeOrigin() { @@ -13,12 +14,6 @@ function getTimeOrigin() { return milestones[NODE_PERFORMANCE_MILESTONE_TIME_ORIGIN] / 1e6; } -// Returns the time relative to the process start time in milliseconds. -function now() { - const hr = process.hrtime(); - return (hr[0] * 1000 + hr[1] / 1e6) - getTimeOrigin(); -} - // Returns the milestone relative to the process start time in milliseconds. function getMilestoneTimestamp(milestoneIdx) { const ns = milestones[milestoneIdx]; diff --git a/src/node_external_reference.h b/src/node_external_reference.h index ae37094c8e117e..541b73499869e3 100644 --- a/src/node_external_reference.h +++ b/src/node_external_reference.h @@ -15,6 +15,8 @@ using CFunctionCallbackWithOneByteString = using CFunctionCallback = void (*)(v8::Local receiver); using CFunctionCallbackReturnDouble = double (*)(v8::Local receiver); +using CFunctionCallbackValueReturnDouble = + double (*)(v8::Local receiver); using CFunctionCallbackWithInt64 = void (*)(v8::Local receiver, int64_t); using CFunctionCallbackWithBool = void (*)(v8::Local receiver, @@ -38,6 +40,7 @@ class ExternalReferenceRegistry { V(CFunctionCallback) \ V(CFunctionCallbackWithOneByteString) \ V(CFunctionCallbackReturnDouble) \ + V(CFunctionCallbackValueReturnDouble) \ V(CFunctionCallbackWithInt64) \ V(CFunctionCallbackWithBool) \ V(CFunctionCallbackWithString) \ diff --git a/src/node_perf.cc b/src/node_perf.cc index 360cc8bf673073..603af57b2639b2 100644 --- a/src/node_perf.cc +++ b/src/node_perf.cc @@ -291,6 +291,22 @@ void MarkBootstrapComplete(const FunctionCallbackInfo& args) { performance::NODE_PERFORMANCE_MILESTONE_BOOTSTRAP_COMPLETE); } +static double PerformanceNowImpl() { + return static_cast(uv_hrtime() - performance_process_start) / + NANOS_PER_MILLIS; +} + +static double FastPerformanceNow(v8::Local receiver) { + return PerformanceNowImpl(); +} + +static void SlowPerformanceNow(const FunctionCallbackInfo& args) { + args.GetReturnValue().Set(PerformanceNowImpl()); +} + +static v8::CFunction fast_performance_now( + v8::CFunction::Make(FastPerformanceNow)); + static void CreatePerIsolateProperties(IsolateData* isolate_data, Local target) { Isolate* isolate = isolate_data->isolate(); @@ -311,6 +327,8 @@ static void CreatePerIsolateProperties(IsolateData* isolate_data, SetMethod(isolate, target, "getTimeOriginTimestamp", GetTimeOriginTimeStamp); SetMethod(isolate, target, "createELDHistogram", CreateELDHistogram); SetMethod(isolate, target, "markBootstrapComplete", MarkBootstrapComplete); + SetFastMethodNoSideEffect( + isolate, target, "now", SlowPerformanceNow, &fast_performance_now); } void CreatePerContextProperties(Local target, @@ -376,6 +394,9 @@ void RegisterExternalReferences(ExternalReferenceRegistry* registry) { registry->Register(GetTimeOriginTimeStamp); registry->Register(CreateELDHistogram); registry->Register(MarkBootstrapComplete); + registry->Register(SlowPerformanceNow); + registry->Register(FastPerformanceNow); + registry->Register(fast_performance_now.GetTypeInfo()); HistogramBase::RegisterExternalReferences(registry); IntervalHistogram::RegisterExternalReferences(registry); } From 23f56d8bb39372e22631d009802c31861f452746 Mon Sep 17 00:00:00 2001 From: Joyee Cheung Date: Sat, 18 Nov 2023 01:46:42 +0100 Subject: [PATCH 043/114] benchmark: rewrite import.meta benchmark MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is a ESM benchmark, rewrite it so that we are directly benchmarking the ESM import.meta paths and using number of loads for op/s calculation, instead of doing it in startup benchmarks and nesting number of process/workers spawn for op/s calculation. PR-URL: https://github.com/nodejs/node/pull/50683 Reviewed-By: James M Snell Reviewed-By: Vinícius Lourenço Claro Cardoso --- benchmark/esm/import-meta.js | 32 +++++++++++++++++++++++++ benchmark/fixtures/esm-dir-file.mjs | 5 ++-- benchmark/fixtures/load-esm-dir-file.js | 5 ---- benchmark/misc/startup.js | 1 - 4 files changed, 34 insertions(+), 9 deletions(-) create mode 100644 benchmark/esm/import-meta.js delete mode 100644 benchmark/fixtures/load-esm-dir-file.js diff --git a/benchmark/esm/import-meta.js b/benchmark/esm/import-meta.js new file mode 100644 index 00000000000000..fd371cf60ed6a3 --- /dev/null +++ b/benchmark/esm/import-meta.js @@ -0,0 +1,32 @@ +'use strict'; + +const path = require('path'); +const { pathToFileURL, fileURLToPath } = require('url'); +const common = require('../common'); +const assert = require('assert'); +const bench = common.createBenchmark(main, { + n: [1000], +}); + +const file = pathToFileURL( + path.resolve(__filename, '../../fixtures/esm-dir-file.mjs'), +); +async function load(array, n) { + for (let i = 0; i < n; i++) { + array[i] = await import(`${file}?i=${i}`); + } + return array; +} + +function main({ n }) { + const array = []; + for (let i = 0; i < n; ++i) { + array.push({ dirname: '', filename: '', i: 0 }); + } + + bench.start(); + load(array, n).then((arr) => { + bench.end(n); + assert.strictEqual(arr[n - 1].filename, fileURLToPath(file)); + }); +} diff --git a/benchmark/fixtures/esm-dir-file.mjs b/benchmark/fixtures/esm-dir-file.mjs index d5dafc5c46697e..a1028d57afd56b 100644 --- a/benchmark/fixtures/esm-dir-file.mjs +++ b/benchmark/fixtures/esm-dir-file.mjs @@ -1,3 +1,2 @@ -import assert from 'assert'; -assert.ok(import.meta.dirname); -assert.ok(import.meta.filename); +export const dirname = import.meta.dirname; +export const filename = import.meta.filename; diff --git a/benchmark/fixtures/load-esm-dir-file.js b/benchmark/fixtures/load-esm-dir-file.js deleted file mode 100644 index a4115dd39e0489..00000000000000 --- a/benchmark/fixtures/load-esm-dir-file.js +++ /dev/null @@ -1,5 +0,0 @@ -(async function () { - for (let i = 0; i < 1000; i += 1) { - await import(`./esm-dir-file.mjs?i=${i}`); - } -}()); diff --git a/benchmark/misc/startup.js b/benchmark/misc/startup.js index f55be1a7902e4f..07c0701d128899 100644 --- a/benchmark/misc/startup.js +++ b/benchmark/misc/startup.js @@ -9,7 +9,6 @@ const bench = common.createBenchmark(main, { script: [ 'benchmark/fixtures/require-builtins', 'test/fixtures/semicolon', - 'benchmark/fixtures/load-esm-dir-file', ], mode: ['process', 'worker'], count: [30], From a0c01b23b418093a97c8115e7a413ec57fc260a6 Mon Sep 17 00:00:00 2001 From: "Node.js GitHub Bot" Date: Sat, 18 Nov 2023 14:47:21 +0100 Subject: [PATCH 044/114] deps: update simdutf to 4.0.4 PR-URL: https://github.com/nodejs/node/pull/50772 Reviewed-By: Yagiz Nizipli Reviewed-By: Luigi Pinca --- deps/simdutf/simdutf.cpp | 17606 ++++++++++------ deps/simdutf/simdutf.h | 1071 +- .../maintaining/maintaining-dependencies.md | 6 +- 3 files changed, 12040 insertions(+), 6643 deletions(-) diff --git a/deps/simdutf/simdutf.cpp b/deps/simdutf/simdutf.cpp index 70b461ab550b46..7a6e9a0efd190b 100644 --- a/deps/simdutf/simdutf.cpp +++ b/deps/simdutf/simdutf.cpp @@ -1,8 +1,6 @@ -/* auto-generated on 2023-10-08 13:48:09 -0400. Do not edit! */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf.cpp +/* auto-generated on 2023-11-15 17:34:03 -0500. Do not edit! */ /* begin file src/simdutf.cpp */ #include "simdutf.h" -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=implementation.cpp /* begin file src/implementation.cpp */ #include #include @@ -26,7 +24,6 @@ std::string toBinaryString(T b) { // Implementations // The best choice should always come first! -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64.h /* begin file src/simdutf/arm64.h */ #ifndef SIMDUTF_ARM64_H #define SIMDUTF_ARM64_H @@ -53,7 +50,6 @@ namespace arm64 { } // namespace arm64 } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/implementation.h /* begin file src/simdutf/arm64/implementation.h */ #ifndef SIMDUTF_ARM64_IMPLEMENTATION_H #define SIMDUTF_ARM64_IMPLEMENTATION_H @@ -80,6 +76,13 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept final; simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) const noexcept final; simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; + simdutf_warn_unused size_t convert_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16be(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf16le_with_errors(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; @@ -89,12 +92,21 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf32_with_errors(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused size_t convert_valid_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf16be_to_utf8_with_errors(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_valid_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_valid_utf16be_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf8_with_errors(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_valid_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; @@ -122,6 +134,13 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf32_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf16(size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf32(size_t length) const noexcept; + simdutf_warn_unused size_t utf32_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf16_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf8_length_from_latin1(const char * input, size_t length) const noexcept; + }; } // namespace arm64 @@ -130,14 +149,12 @@ class implementation final : public simdutf::implementation { #endif // SIMDUTF_ARM64_IMPLEMENTATION_H /* end file src/simdutf/arm64/implementation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/begin.h /* begin file src/simdutf/arm64/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "arm64" // #define SIMDUTF_IMPLEMENTATION arm64 /* end file src/simdutf/arm64/begin.h */ // Declarations -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/intrinsics.h /* begin file src/simdutf/arm64/intrinsics.h */ #ifndef SIMDUTF_ARM64_INTRINSICS_H #define SIMDUTF_ARM64_INTRINSICS_H @@ -149,7 +166,6 @@ class implementation final : public simdutf::implementation { #endif // SIMDUTF_ARM64_INTRINSICS_H /* end file src/simdutf/arm64/intrinsics.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/bitmanipulation.h /* begin file src/simdutf/arm64/bitmanipulation.h */ #ifndef SIMDUTF_ARM64_BITMANIPULATION_H #define SIMDUTF_ARM64_BITMANIPULATION_H @@ -169,7 +185,6 @@ simdutf_really_inline int count_ones(uint64_t input_num) { #endif // SIMDUTF_ARM64_BITMANIPULATION_H /* end file src/simdutf/arm64/bitmanipulation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/simd.h /* begin file src/simdutf/arm64/simd.h */ #ifndef SIMDUTF_ARM64_SIMD_H #define SIMDUTF_ARM64_SIMD_H @@ -505,32 +520,68 @@ simdutf_really_inline int16x8_t make_int16x8_t(int16_t x1, int16_t x2, int16_t static simdutf_really_inline simd8 splat(int8_t _value) { return vmovq_n_s8(_value); } static simdutf_really_inline simd8 zero() { return vdupq_n_s8(0); } static simdutf_really_inline simd8 load(const int8_t values[16]) { return vld1q_s8(values); } + + // Use ST2 instead of UXTL+UXTL2 to interleave zeroes. UXTL is actually a USHLL #0, + // and shifting in NEON is actually quite slow. + // + // While this needs the registers to be in a specific order, bigger cores can interleave + // these with no overhead, and it still performs decently on little cores. + // movi v1.3d, #0 + // mov v0.16b, value[0] + // st2 {v0.16b, v1.16b}, [ptr], #32 + // mov v0.16b, value[1] + // st2 {v0.16b, v1.16b}, [ptr], #32 + // ... template simdutf_really_inline void store_ascii_as_utf16(char16_t * p) const { - uint16x8_t first = vmovl_u8(vget_low_u8 (vreinterpretq_u8_s8(this->value))); - uint16x8_t second = vmovl_high_u8(vreinterpretq_u8_s8(this->value)); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - first = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(first), swap)); - second = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(second), swap)); - } - vst1q_u16(reinterpret_cast(p), first); - vst1q_u16(reinterpret_cast(p + 8), second); - } + int8x16x2_t pair = match_system(big_endian) + ? int8x16x2_t{{this->value, vmovq_n_s8(0)}} + : int8x16x2_t{{vmovq_n_s8(0), this->value}}; + vst2q_s8(reinterpret_cast(p), pair); + } + + // currently unused + // Technically this could be done with ST4 like in store_ascii_as_utf16, but it is + // very much not worth it, as explicitly mentioned in the ARM Cortex-X1 Core Software + // Optimization Guide: + // 4.18 Complex ASIMD instructions + // The bandwidth of [ST4 with element size less than 64b] is limited by decode + // constraints and it is advisable to avoid them when high performing code is desired. + // Instead, it is better to use ZIP1+ZIP2 and two ST2. simdutf_really_inline void store_ascii_as_utf32(char32_t * p) const { - vst1q_u32(reinterpret_cast(p), vmovl_u16(vget_low_u16(vmovl_u8(vget_low_u8 (vreinterpretq_u8_s8(this->value)))))); - vst1q_u32(reinterpret_cast(p + 4), vmovl_high_u16(vmovl_u8(vget_low_u8 (vreinterpretq_u8_s8(this->value))))); - vst1q_u32(reinterpret_cast(p + 8), vmovl_u16(vget_low_u16(vmovl_high_u8(vreinterpretq_u8_s8(this->value))))); - vst1q_u32(reinterpret_cast(p + 12), vmovl_high_u16(vmovl_high_u8(vreinterpretq_u8_s8(this->value)))); + const uint16x8_t low = vreinterpretq_u16_s8(vzip1q_s8(this->value, vmovq_n_s8(0))); + const uint16x8_t high = vreinterpretq_u16_s8(vzip2q_s8(this->value, vmovq_n_s8(0))); + const uint16x8x2_t low_pair{{ low, vmovq_n_u16(0) }}; + vst2q_u16(reinterpret_cast(p), low_pair); + const uint16x8x2_t high_pair{{ high, vmovq_n_u16(0) }}; + vst2q_u16(reinterpret_cast(p + 8), high_pair); + } + + // In places where the table can be reused, which is most uses in simdutf, it is worth it to do + // 4 table lookups, as there is no direct zero extension from u8 to u32. + simdutf_really_inline void store_ascii_as_utf32_tbl(char32_t * p) const { + const simd8 tb1{ 0,255,255,255, 1,255,255,255, 2,255,255,255, 3,255,255,255 }; + const simd8 tb2{ 4,255,255,255, 5,255,255,255, 6,255,255,255, 7,255,255,255 }; + const simd8 tb3{ 8,255,255,255, 9,255,255,255, 10,255,255,255, 11,255,255,255 }; + const simd8 tb4{ 12,255,255,255, 13,255,255,255, 14,255,255,255, 15,255,255,255 }; + + // encourage store pairing and interleaving + const auto shuf1 = this->apply_lookup_16_to(tb1); + const auto shuf2 = this->apply_lookup_16_to(tb2); + shuf1.store(reinterpret_cast(p)); + shuf2.store(reinterpret_cast(p + 4)); + + const auto shuf3 = this->apply_lookup_16_to(tb3); + const auto shuf4 = this->apply_lookup_16_to(tb4); + shuf3.store(reinterpret_cast(p + 8)); + shuf4.store(reinterpret_cast(p + 12)); } // Conversion from/to SIMD register simdutf_really_inline simd8(const int8x16_t _value) : value{_value} {} simdutf_really_inline operator const int8x16_t&() const { return this->value; } +#ifndef SIMDUTF_REGULAR_VISUAL_STUDIO simdutf_really_inline operator const uint8x16_t() const { return vreinterpretq_u8_s8(this->value); } +#endif simdutf_really_inline operator int8x16_t&() { return this->value; } // Zero constructor @@ -627,7 +678,7 @@ simdutf_really_inline int16x8_t make_int16x8_t(int16_t x1, int16_t x2, int16_t } template - simdutf_really_inline simd8 apply_lookup_16_to(const simd8 original) { + simdutf_really_inline simd8 apply_lookup_16_to(const simd8 original) const { return vqtbl1q_s8(*this, simd8(original)); } }; @@ -678,10 +729,10 @@ simdutf_really_inline int16x8_t make_int16x8_t(int16_t x1, int16_t x2, int16_t } simdutf_really_inline void store_ascii_as_utf32(char32_t * ptr) const { - this->chunks[0].store_ascii_as_utf32(ptr+sizeof(simd8)*0); - this->chunks[1].store_ascii_as_utf32(ptr+sizeof(simd8)*1); - this->chunks[2].store_ascii_as_utf32(ptr+sizeof(simd8)*2); - this->chunks[3].store_ascii_as_utf32(ptr+sizeof(simd8)*3); + this->chunks[0].store_ascii_as_utf32_tbl(ptr+sizeof(simd8)*0); + this->chunks[1].store_ascii_as_utf32_tbl(ptr+sizeof(simd8)*1); + this->chunks[2].store_ascii_as_utf32_tbl(ptr+sizeof(simd8)*2); + this->chunks[3].store_ascii_as_utf32_tbl(ptr+sizeof(simd8)*3); } simdutf_really_inline uint64_t to_bitmask() const { @@ -782,7 +833,6 @@ simdutf_really_inline int16x8_t make_int16x8_t(int16_t x1, int16_t x2, int16_t ).to_bitmask(); } }; // struct simd8x64 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/simd16-inl.h /* begin file src/simdutf/arm64/simd16-inl.h */ template struct simd16; @@ -869,7 +919,7 @@ struct base16_numeric: base16 { simdutf_really_inline simd16& operator-=(const simd16 other) { *this = *this - other; return *static_cast*>(this); } }; -// Signed words +// Signed code units template<> struct simd16 : base16_numeric { simdutf_really_inline simd16() : base16_numeric() {} @@ -899,7 +949,7 @@ struct simd16 : base16_numeric { -// Unsigned words +// Unsigned code units template<> struct simd16: base16_numeric { simdutf_really_inline simd16() : base16_numeric() {} @@ -942,19 +992,14 @@ struct simd16: base16_numeric { simdutf_really_inline simd16 operator&(const simd16 other) const { return vandq_u16(*this, other); } simdutf_really_inline simd16 operator^(const simd16 other) const { return veorq_u16(*this, other); } - // Pack with the unsigned saturation two uint16_t words into single uint8_t vector + // Pack with the unsigned saturation two uint16_t code units into single uint8_t vector static simdutf_really_inline simd8 pack(const simd16& v0, const simd16& v1) { return vqmovn_high_u16(vqmovn_u16(v0), v1); } // Change the endianness simdutf_really_inline simd16 swap_bytes() const { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - return vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(*this), swap)); + return vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(*this))); } }; simdutf_really_inline simd16::operator simd16() const { return this->value; } @@ -1095,7 +1140,6 @@ simdutf_really_inline simd16::operator simd16() const { retur #endif // SIMDUTF_ARM64_SIMD_H /* end file src/simdutf/arm64/simd.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/end.h /* begin file src/simdutf/arm64/end.h */ /* end file src/simdutf/arm64/end.h */ @@ -1103,7 +1147,6 @@ simdutf_really_inline simd16::operator simd16() const { retur #endif // SIMDUTF_ARM64_H /* end file src/simdutf/arm64.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake.h /* begin file src/simdutf/icelake.h */ #ifndef SIMDUTF_ICELAKE_H #define SIMDUTF_ICELAKE_H @@ -1145,7 +1188,7 @@ simdutf_really_inline simd16::operator simd16() const { retur #if SIMDUTF_CAN_ALWAYS_RUN_ICELAKE #define SIMDUTF_TARGET_ICELAKE #else -#define SIMDUTF_TARGET_ICELAKE SIMDUTF_TARGET_REGION("avx512f,avx512dq,avx512cd,avx512bw,avx512vbmi,avx512vbmi2,avx512vl,avx2,bmi,bmi2,pclmul,lzcnt,popcnt") +#define SIMDUTF_TARGET_ICELAKE SIMDUTF_TARGET_REGION("avx512f,avx512dq,avx512cd,avx512bw,avx512vbmi,avx512vbmi2,avx512vl,avx2,bmi,bmi2,pclmul,lzcnt,popcnt,avx512vpopcntdq") #endif namespace simdutf { @@ -1158,7 +1201,6 @@ namespace icelake { // // These two need to be included outside SIMDUTF_TARGET_REGION // -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake/intrinsics.h /* begin file src/simdutf/icelake/intrinsics.h */ #ifndef SIMDUTF_ICELAKE_INTRINSICS_H #define SIMDUTF_ICELAKE_INTRINSICS_H @@ -1227,6 +1269,8 @@ SIMDUTF_POP_DISABLE_WARNINGS #include #include #include +#include +#include // unfortunately, we may not get _blsr_u64, but, thankfully, clang // has it as a macro. #ifndef _blsr_u64 @@ -1268,7 +1312,6 @@ inline __m512i _mm512_set_epi8(uint8_t a0, uint8_t a1, uint8_t a2, uint8_t a3, u #endif // SIMDUTF_HASWELL_INTRINSICS_H /* end file src/simdutf/icelake/intrinsics.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake/implementation.h /* begin file src/simdutf/icelake/implementation.h */ #ifndef SIMDUTF_ICELAKE_IMPLEMENTATION_H #define SIMDUTF_ICELAKE_IMPLEMENTATION_H @@ -1286,7 +1329,7 @@ class implementation final : public simdutf::implementation { simdutf_really_inline implementation() : simdutf::implementation( "icelake", "Intel AVX512 (AVX-512BW, AVX-512CD, AVX-512VL, AVX-512VBMI2 extensions)", - internal::instruction_set::AVX2 | internal::instruction_set::BMI1 | internal::instruction_set::BMI2 | internal::instruction_set::AVX512BW | internal::instruction_set::AVX512CD | internal::instruction_set::AVX512VL | internal::instruction_set::AVX512VBMI2 ) {} + internal::instruction_set::AVX2 | internal::instruction_set::BMI1 | internal::instruction_set::BMI2 | internal::instruction_set::AVX512BW | internal::instruction_set::AVX512CD | internal::instruction_set::AVX512VL | internal::instruction_set::AVX512VBMI2 | internal::instruction_set::AVX512VPOPCNTDQ ) {} simdutf_warn_unused int detect_encodings(const char * input, size_t length) const noexcept final; simdutf_warn_unused bool validate_utf8(const char *buf, size_t len) const noexcept final; simdutf_warn_unused result validate_utf8_with_errors(const char *buf, size_t len) const noexcept final; @@ -1298,6 +1341,13 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept final; simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) const noexcept final; simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; + simdutf_warn_unused size_t convert_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16be(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf16le_with_errors(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; @@ -1307,6 +1357,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf32_with_errors(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused size_t convert_valid_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; @@ -1316,6 +1372,9 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf8_with_errors(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_valid_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16le(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16be(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf16le_with_errors(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; @@ -1340,6 +1399,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf32_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf16(size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf32(size_t length) const noexcept; + simdutf_warn_unused size_t utf32_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf16_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf8_length_from_latin1(const char * input, size_t length) const noexcept; }; } // namespace icelake @@ -1351,7 +1416,6 @@ class implementation final : public simdutf::implementation { // // The rest need to be inside the region // -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake/begin.h /* begin file src/simdutf/icelake/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "icelake" // #define SIMDUTF_IMPLEMENTATION icelake @@ -1367,7 +1431,6 @@ SIMDUTF_DISABLE_GCC_WARNING(-Wmaybe-uninitialized) #endif // end of workaround /* end file src/simdutf/icelake/begin.h */ // Declarations -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake/bitmanipulation.h /* begin file src/simdutf/icelake/bitmanipulation.h */ #ifndef SIMDUTF_ICELAKE_BITMANIPULATION_H #define SIMDUTF_ICELAKE_BITMANIPULATION_H @@ -1393,7 +1456,6 @@ simdutf_really_inline long long int count_ones(uint64_t input_num) { #endif // SIMDUTF_ICELAKE_BITMANIPULATION_H /* end file src/simdutf/icelake/bitmanipulation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake/end.h /* begin file src/simdutf/icelake/end.h */ #if SIMDUTF_CAN_ALWAYS_RUN_ICELAKE // nothing needed. @@ -1412,7 +1474,6 @@ SIMDUTF_POP_DISABLE_WARNINGS #endif // SIMDUTF_IMPLEMENTATION_ICELAKE #endif // SIMDUTF_ICELAKE_H /* end file src/simdutf/icelake.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell.h /* begin file src/simdutf/haswell.h */ #ifndef SIMDUTF_HASWELL_H #define SIMDUTF_HASWELL_H @@ -1458,7 +1519,6 @@ namespace haswell { // // These two need to be included outside SIMDUTF_TARGET_REGION // -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/implementation.h /* begin file src/simdutf/haswell/implementation.h */ #ifndef SIMDUTF_HASWELL_IMPLEMENTATION_H #define SIMDUTF_HASWELL_IMPLEMENTATION_H @@ -1488,6 +1548,13 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept final; simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) const noexcept final; simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; + simdutf_warn_unused size_t convert_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16be(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf16le_with_errors(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; @@ -1497,6 +1564,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf32_with_errors(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused size_t convert_valid_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; @@ -1506,6 +1579,9 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf8_with_errors(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_valid_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16le(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16be(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf16le_with_errors(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; @@ -1530,6 +1606,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf32_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf16(size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf32(size_t length) const noexcept; + simdutf_warn_unused size_t utf32_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf16_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf8_length_from_latin1(const char * input, size_t length) const noexcept; }; } // namespace haswell @@ -1537,7 +1619,6 @@ class implementation final : public simdutf::implementation { #endif // SIMDUTF_HASWELL_IMPLEMENTATION_H /* end file src/simdutf/haswell/implementation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/intrinsics.h /* begin file src/simdutf/haswell/intrinsics.h */ #ifndef SIMDUTF_HASWELL_INTRINSICS_H #define SIMDUTF_HASWELL_INTRINSICS_H @@ -1606,7 +1687,6 @@ SIMDUTF_POP_DISABLE_WARNINGS // // The rest need to be inside the region // -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/begin.h /* begin file src/simdutf/haswell/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "haswell" // #define SIMDUTF_IMPLEMENTATION haswell @@ -1622,7 +1702,6 @@ SIMDUTF_DISABLE_GCC_WARNING(-Wmaybe-uninitialized) #endif // end of workaround /* end file src/simdutf/haswell/begin.h */ // Declarations -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/bitmanipulation.h /* begin file src/simdutf/haswell/bitmanipulation.h */ #ifndef SIMDUTF_HASWELL_BITMANIPULATION_H #define SIMDUTF_HASWELL_BITMANIPULATION_H @@ -1648,7 +1727,6 @@ simdutf_really_inline long long int count_ones(uint64_t input_num) { #endif // SIMDUTF_HASWELL_BITMANIPULATION_H /* end file src/simdutf/haswell/bitmanipulation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/simd.h /* begin file src/simdutf/haswell/simd.h */ #ifndef SIMDUTF_HASWELL_SIMD_H #define SIMDUTF_HASWELL_SIMD_H @@ -2000,9 +2078,7 @@ namespace simd { return simd8x64( (this->chunks[0] <= mask_high) & (this->chunks[0] >= mask_low), - (this->chunks[1] <= mask_high) & (this->chunks[1] >= mask_low), - (this->chunks[2] <= mask_high) & (this->chunks[2] >= mask_low), - (this->chunks[3] <= mask_high) & (this->chunks[3] >= mask_low) + (this->chunks[1] <= mask_high) & (this->chunks[1] >= mask_low) ).to_bitmask(); } simdutf_really_inline uint64_t not_in_range(const T low, const T high) const { @@ -2044,7 +2120,6 @@ namespace simd { } }; // struct simd8x64 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/simd16-inl.h /* begin file src/simdutf/haswell/simd16-inl.h */ #ifdef __GNUC__ #if __GNUC__ < 8 @@ -2117,7 +2192,7 @@ struct base16_numeric: base16 { simdutf_really_inline simd16& operator-=(const simd16 other) { *this = *this - other; return *static_cast*>(this); } }; -// Signed words +// Signed code units template<> struct simd16 : base16_numeric { simdutf_really_inline simd16() : base16_numeric() {} @@ -2134,7 +2209,7 @@ struct simd16 : base16_numeric { simdutf_really_inline simd16 operator<(const simd16 other) const { return _mm256_cmpgt_epi16(other, *this); } }; -// Unsigned words +// Unsigned code units template<> struct simd16: base16_numeric { simdutf_really_inline simd16() : base16_numeric() {} @@ -2188,7 +2263,7 @@ struct simd16: base16_numeric { return _mm256_shuffle_epi8(*this, swap); } - // Pack with the unsigned saturation two uint16_t words into single uint8_t vector + // Pack with the unsigned saturation two uint16_t code units into single uint8_t vector static simdutf_really_inline simd8 pack(const simd16& v0, const simd16& v1) { // Note: the AVX2 variant of pack operates on 128-bit lanes, thus // we have to shuffle lanes in order to produce bytes in the @@ -2206,7 +2281,7 @@ struct simd16: base16_numeric { const __m256i t0 = _mm256_set_m128i(lo_1, lo_0); const __m256i t1 = _mm256_set_m128i(hi_1, hi_0); - // pack words in linear order from v0 and v1 + // pack code units in linear order from v0 and v1 return _mm256_packus_epi16(t0, t1); } }; @@ -2291,9 +2366,7 @@ struct simd16: base16_numeric { return simd16x32( (this->chunks[0] <= mask_high) & (this->chunks[0] >= mask_low), - (this->chunks[1] <= mask_high) & (this->chunks[1] >= mask_low), - (this->chunks[2] <= mask_high) & (this->chunks[2] >= mask_low), - (this->chunks[3] <= mask_high) & (this->chunks[3] >= mask_low) + (this->chunks[1] <= mask_high) & (this->chunks[1] >= mask_low) ).to_bitmask(); } simdutf_really_inline uint64_t not_in_range(const T low, const T high) const { @@ -2323,7 +2396,6 @@ struct simd16: base16_numeric { #endif // SIMDUTF_HASWELL_SIMD_H /* end file src/simdutf/haswell/simd.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/end.h /* begin file src/simdutf/haswell/end.h */ #if SIMDUTF_CAN_ALWAYS_RUN_HASWELL // nothing needed. @@ -2340,7 +2412,6 @@ SIMDUTF_POP_DISABLE_WARNINGS #endif // SIMDUTF_IMPLEMENTATION_HASWELL #endif // SIMDUTF_HASWELL_COMMON_H /* end file src/simdutf/haswell.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere.h /* begin file src/simdutf/westmere.h */ #ifndef SIMDUTF_WESTMERE_H #define SIMDUTF_WESTMERE_H @@ -2381,7 +2452,6 @@ namespace westmere { // // These two need to be included outside SIMDUTF_TARGET_REGION // -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/implementation.h /* begin file src/simdutf/westmere/implementation.h */ #ifndef SIMDUTF_WESTMERE_IMPLEMENTATION_H #define SIMDUTF_WESTMERE_IMPLEMENTATION_H @@ -2409,6 +2479,13 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept final; simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) const noexcept final; simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; + simdutf_warn_unused size_t convert_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16be(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf16le_with_errors(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; @@ -2418,6 +2495,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf32_with_errors(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused size_t convert_valid_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; @@ -2427,6 +2510,9 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf8_with_errors(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_valid_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16le(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16be(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf16le_with_errors(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; @@ -2451,6 +2537,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf32_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf16(size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf32(size_t length) const noexcept; + simdutf_warn_unused size_t utf32_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf16_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf8_length_from_latin1(const char * input, size_t length) const noexcept; }; } // namespace westmere @@ -2458,7 +2550,6 @@ class implementation final : public simdutf::implementation { #endif // SIMDUTF_WESTMERE_IMPLEMENTATION_H /* end file src/simdutf/westmere/implementation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/intrinsics.h /* begin file src/simdutf/westmere/intrinsics.h */ #ifndef SIMDUTF_WESTMERE_INTRINSICS_H #define SIMDUTF_WESTMERE_INTRINSICS_H @@ -2507,7 +2598,6 @@ SIMDUTF_POP_DISABLE_WARNINGS // // The rest need to be inside the region // -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/begin.h /* begin file src/simdutf/westmere/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "westmere" // #define SIMDUTF_IMPLEMENTATION westmere @@ -2520,7 +2610,6 @@ SIMDUTF_TARGET_WESTMERE /* end file src/simdutf/westmere/begin.h */ // Declarations -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/bitmanipulation.h /* begin file src/simdutf/westmere/bitmanipulation.h */ #ifndef SIMDUTF_WESTMERE_BITMANIPULATION_H #define SIMDUTF_WESTMERE_BITMANIPULATION_H @@ -2546,7 +2635,6 @@ simdutf_really_inline long long int count_ones(uint64_t input_num) { #endif // SIMDUTF_WESTMERE_BITMANIPULATION_H /* end file src/simdutf/westmere/bitmanipulation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/simd.h /* begin file src/simdutf/westmere/simd.h */ #ifndef SIMDUTF_WESTMERE_SIMD_H #define SIMDUTF_WESTMERE_SIMD_H @@ -2894,10 +2982,10 @@ namespace simd { } simdutf_really_inline uint64_t to_bitmask() const { - uint64_t r0 = uint32_t(this->chunks[0].to_bitmask() ); - uint64_t r1 = this->chunks[1].to_bitmask() ; - uint64_t r2 = this->chunks[2].to_bitmask() ; - uint64_t r3 = this->chunks[3].to_bitmask() ; + uint64_t r0 = uint32_t(this->chunks[0].to_bitmask()); + uint64_t r1 = this->chunks[1].to_bitmask(); + uint64_t r2 = this->chunks[2].to_bitmask(); + uint64_t r3 = this->chunks[3].to_bitmask(); return r0 | (r1 << 16) | (r2 << 32) | (r3 << 48); } @@ -2990,7 +3078,6 @@ namespace simd { } }; // struct simd8x64 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/simd16-inl.h /* begin file src/simdutf/westmere/simd16-inl.h */ template struct simd16; @@ -3054,7 +3141,7 @@ struct base16_numeric: base16 { simdutf_really_inline simd16& operator-=(const simd16 other) { *this = *this - other; return *static_cast*>(this); } }; -// Signed words +// Signed code units template<> struct simd16 : base16_numeric { simdutf_really_inline simd16() : base16_numeric() {} @@ -3077,7 +3164,7 @@ struct simd16 : base16_numeric { simdutf_really_inline simd16 operator<(const simd16 other) const { return _mm_cmpgt_epi16(other, *this); } }; -// Unsigned words +// Unsigned code units template<> struct simd16: base16_numeric { simdutf_really_inline simd16() : base16_numeric() {} @@ -3140,7 +3227,7 @@ struct simd16: base16_numeric { return _mm_shuffle_epi8(*this, swap); } - // Pack with the unsigned saturation two uint16_t words into single uint8_t vector + // Pack with the unsigned saturation two uint16_t code units into single uint8_t vector static simdutf_really_inline simd8 pack(const simd16& v0, const simd16& v1) { return _mm_packus_epi16(v0, v1); } @@ -3183,10 +3270,10 @@ template } simdutf_really_inline uint64_t to_bitmask() const { - uint64_t r0 = uint32_t(this->chunks[0].to_bitmask() ); - uint64_t r1 = this->chunks[1].to_bitmask() ; - uint64_t r2 = this->chunks[2].to_bitmask() ; - uint64_t r3 = this->chunks[3].to_bitmask() ; + uint64_t r0 = uint32_t(this->chunks[0].to_bitmask()); + uint64_t r1 = this->chunks[1].to_bitmask(); + uint64_t r2 = this->chunks[2].to_bitmask(); + uint64_t r3 = this->chunks[3].to_bitmask(); return r0 | (r1 << 16) | (r2 << 32) | (r3 << 48); } @@ -3267,7 +3354,6 @@ template #endif // SIMDUTF_WESTMERE_SIMD_INPUT_H /* end file src/simdutf/westmere/simd.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/end.h /* begin file src/simdutf/westmere/end.h */ #if SIMDUTF_CAN_ALWAYS_RUN_WESTMERE // nothing needed. @@ -3280,7 +3366,6 @@ SIMDUTF_UNTARGET_REGION #endif // SIMDUTF_IMPLEMENTATION_WESTMERE #endif // SIMDUTF_WESTMERE_COMMON_H /* end file src/simdutf/westmere.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64.h /* begin file src/simdutf/ppc64.h */ #ifndef SIMDUTF_PPC64_H #define SIMDUTF_PPC64_H @@ -3307,7 +3392,6 @@ namespace ppc64 { } // namespace ppc64 } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/implementation.h /* begin file src/simdutf/ppc64/implementation.h */ #ifndef SIMDUTF_PPC64_IMPLEMENTATION_H #define SIMDUTF_PPC64_IMPLEMENTATION_H @@ -3386,14 +3470,12 @@ class implementation final : public simdutf::implementation { #endif // SIMDUTF_PPC64_IMPLEMENTATION_H /* end file src/simdutf/ppc64/implementation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/begin.h /* begin file src/simdutf/ppc64/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "ppc64" // #define SIMDUTF_IMPLEMENTATION ppc64 /* end file src/simdutf/ppc64/begin.h */ // Declarations -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/intrinsics.h /* begin file src/simdutf/ppc64/intrinsics.h */ #ifndef SIMDUTF_PPC64_INTRINSICS_H #define SIMDUTF_PPC64_INTRINSICS_H @@ -3414,7 +3496,6 @@ class implementation final : public simdutf::implementation { #endif // SIMDUTF_PPC64_INTRINSICS_H /* end file src/simdutf/ppc64/intrinsics.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/bitmanipulation.h /* begin file src/simdutf/ppc64/bitmanipulation.h */ #ifndef SIMDUTF_PPC64_BITMANIPULATION_H #define SIMDUTF_PPC64_BITMANIPULATION_H @@ -3440,7 +3521,6 @@ simdutf_really_inline int count_ones(uint64_t input_num) { #endif // SIMDUTF_PPC64_BITMANIPULATION_H /* end file src/simdutf/ppc64/bitmanipulation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/simd.h /* begin file src/simdutf/ppc64/simd.h */ #ifndef SIMDUTF_PPC64_SIMD_H #define SIMDUTF_PPC64_SIMD_H @@ -3932,7 +4012,6 @@ template struct simd8x64 { #endif // SIMDUTF_PPC64_SIMD_INPUT_H /* end file src/simdutf/ppc64/simd.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/end.h /* begin file src/simdutf/ppc64/end.h */ /* end file src/simdutf/ppc64/end.h */ @@ -3940,7 +4019,6 @@ template struct simd8x64 { #endif // SIMDUTF_PPC64_H /* end file src/simdutf/ppc64.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/fallback.h /* begin file src/simdutf/fallback.h */ #ifndef SIMDUTF_FALLBACK_H #define SIMDUTF_FALLBACK_H @@ -3969,7 +4047,6 @@ namespace fallback { } // namespace fallback } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/fallback/implementation.h /* begin file src/simdutf/fallback/implementation.h */ #ifndef SIMDUTF_FALLBACK_IMPLEMENTATION_H #define SIMDUTF_FALLBACK_IMPLEMENTATION_H @@ -4000,6 +4077,13 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept final; simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) const noexcept final; simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * buf, size_t len, char16_t* utf16_buffer) const noexcept final; + simdutf_warn_unused size_t convert_latin1_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; + simdutf_warn_unused size_t convert_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused size_t convert_utf8_to_utf16be(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf16le_with_errors(const char * buf, size_t len, char16_t* utf16_output) const noexcept final; @@ -4009,6 +4093,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused result convert_utf8_to_utf32_with_errors(const char * buf, size_t len, char32_t* utf32_output) const noexcept final; simdutf_warn_unused size_t convert_valid_utf8_to_utf32(const char * buf, size_t len, char32_t* utf32_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * buf, size_t len, char* utf8_buffer) const noexcept final; @@ -4018,6 +4108,9 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf8_with_errors(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; simdutf_warn_unused size_t convert_valid_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_buffer) const noexcept final; + simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; + simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16le(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused size_t convert_utf32_to_utf16be(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; simdutf_warn_unused result convert_utf32_to_utf16le_with_errors(const char32_t * buf, size_t len, char16_t* utf16_buffer) const noexcept final; @@ -4042,7 +4135,12 @@ class implementation final : public simdutf::implementation { simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept; simdutf_warn_unused size_t utf32_length_from_utf8(const char * input, size_t length) const noexcept; -}; + simdutf_warn_unused size_t latin1_length_from_utf8(const char * input, size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf16(size_t length) const noexcept; + simdutf_warn_unused size_t latin1_length_from_utf32(size_t length) const noexcept; + simdutf_warn_unused size_t utf32_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf16_length_from_latin1(size_t length) const noexcept; + simdutf_warn_unused size_t utf8_length_from_latin1(const char * input, size_t length) const noexcept;}; } // namespace fallback } // namespace simdutf @@ -4050,14 +4148,12 @@ class implementation final : public simdutf::implementation { #endif // SIMDUTF_FALLBACK_IMPLEMENTATION_H /* end file src/simdutf/fallback/implementation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/fallback/begin.h /* begin file src/simdutf/fallback/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "fallback" // #define SIMDUTF_IMPLEMENTATION fallback /* end file src/simdutf/fallback/begin.h */ // Declarations -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/fallback/bitmanipulation.h /* begin file src/simdutf/fallback/bitmanipulation.h */ #ifndef SIMDUTF_FALLBACK_BITMANIPULATION_H #define SIMDUTF_FALLBACK_BITMANIPULATION_H @@ -4068,23 +4164,6 @@ namespace simdutf { namespace fallback { namespace { -#if defined(_MSC_VER) && !defined(_M_ARM64) && !defined(_M_X64) -static inline unsigned char _BitScanForward64(unsigned long* ret, uint64_t x) { - unsigned long x0 = (unsigned long)x, top, bottom; - _BitScanForward(&top, (unsigned long)(x >> 32)); - _BitScanForward(&bottom, x0); - *ret = x0 ? bottom : 32 + top; - return x != 0; -} -static unsigned char _BitScanReverse64(unsigned long* ret, uint64_t x) { - unsigned long x1 = (unsigned long)(x >> 32), top, bottom; - _BitScanReverse(&top, x1); - _BitScanReverse(&bottom, (unsigned long)x); - *ret = x1 ? top + 32 : bottom; - return x != 0; -} -#endif - } // unnamed namespace } // namespace fallback } // namespace simdutf @@ -4092,7 +4171,6 @@ static unsigned char _BitScanReverse64(unsigned long* ret, uint64_t x) { #endif // SIMDUTF_FALLBACK_BITMANIPULATION_H /* end file src/simdutf/fallback/bitmanipulation.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/fallback/end.h /* begin file src/simdutf/fallback/end.h */ /* end file src/simdutf/fallback/end.h */ @@ -4100,100 +4178,469 @@ static unsigned char _BitScanReverse64(unsigned long* ret, uint64_t x) { #endif // SIMDUTF_FALLBACK_H /* end file src/simdutf/fallback.h */ +/* begin file src/scalar/utf8.h */ +#ifndef SIMDUTF_UTF8_H +#define SIMDUTF_UTF8_H + namespace simdutf { -bool implementation::supported_by_runtime_system() const { - uint32_t required_instruction_sets = this->required_instruction_sets(); - uint32_t supported_instruction_sets = internal::detect_supported_architectures(); - return ((supported_instruction_sets & required_instruction_sets) == required_instruction_sets); -} +namespace scalar { +namespace { +namespace utf8 { +#if SIMDUTF_IMPLEMENTATION_FALLBACK +// only used by the fallback kernel. +// credit: based on code from Google Fuchsia (Apache Licensed) +inline simdutf_warn_unused bool validate(const char *buf, size_t len) noexcept { + const uint8_t *data = reinterpret_cast(buf); + uint64_t pos = 0; + uint32_t code_point = 0; + while (pos < len) { + // check of the next 16 bytes are ascii. + uint64_t next_pos = pos + 16; + if (next_pos <= len) { // if it is safe to read 16 more bytes, check that they are ascii + uint64_t v1; + std::memcpy(&v1, data + pos, sizeof(uint64_t)); + uint64_t v2; + std::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); + uint64_t v{v1 | v2}; + if ((v & 0x8080808080808080) == 0) { + pos = next_pos; + continue; + } + } + unsigned char byte = data[pos]; -simdutf_warn_unused encoding_type implementation::autodetect_encoding(const char * input, size_t length) const noexcept { - // If there is a BOM, then we trust it. - auto bom_encoding = simdutf::BOM::check_bom(input, length); - if(bom_encoding != encoding_type::unspecified) { return bom_encoding; } - // UTF8 is common, it includes ASCII, and is commonly represented - // without a BOM, so if it fits, go with that. Note that it is still - // possible to get it wrong, we are only 'guessing'. If some has UTF-16 - // data without a BOM, it could pass as UTF-8. - // - // An interesting twist might be to check for UTF-16 ASCII first (every - // other byte is zero). - if(validate_utf8(input, length)) { return encoding_type::UTF8; } - // The next most common encoding that might appear without BOM is probably - // UTF-16LE, so try that next. - if((length % 2) == 0) { - // important: we need to divide by two - if(validate_utf16le(reinterpret_cast(input), length/2)) { return encoding_type::UTF16_LE; } + while (byte < 0b10000000) { + if (++pos == len) { return true; } + byte = data[pos]; } - if((length % 4) == 0) { - if(validate_utf32(reinterpret_cast(input), length/4)) { return encoding_type::UTF32_LE; } + + if ((byte & 0b11100000) == 0b11000000) { + next_pos = pos + 2; + if (next_pos > len) { return false; } + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return false; } + // range check + code_point = (byte & 0b00011111) << 6 | (data[pos + 1] & 0b00111111); + if ((code_point < 0x80) || (0x7ff < code_point)) { return false; } + } else if ((byte & 0b11110000) == 0b11100000) { + next_pos = pos + 3; + if (next_pos > len) { return false; } + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return false; } + if ((data[pos + 2] & 0b11000000) != 0b10000000) { return false; } + // range check + code_point = (byte & 0b00001111) << 12 | + (data[pos + 1] & 0b00111111) << 6 | + (data[pos + 2] & 0b00111111); + if ((code_point < 0x800) || (0xffff < code_point) || + (0xd7ff < code_point && code_point < 0xe000)) { + return false; + } + } else if ((byte & 0b11111000) == 0b11110000) { // 0b11110000 + next_pos = pos + 4; + if (next_pos > len) { return false; } + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return false; } + if ((data[pos + 2] & 0b11000000) != 0b10000000) { return false; } + if ((data[pos + 3] & 0b11000000) != 0b10000000) { return false; } + // range check + code_point = + (byte & 0b00000111) << 18 | (data[pos + 1] & 0b00111111) << 12 | + (data[pos + 2] & 0b00111111) << 6 | (data[pos + 3] & 0b00111111); + if (code_point <= 0xffff || 0x10ffff < code_point) { return false; } + } else { + // we may have a continuation + return false; } - return encoding_type::unspecified; + pos = next_pos; + } + return true; } - -namespace internal { - -// Static array of known implementations. We're hoping these get baked into the executable -// without requiring a static initializer. - - -#if SIMDUTF_IMPLEMENTATION_ICELAKE -const icelake::implementation icelake_singleton{}; -#endif -#if SIMDUTF_IMPLEMENTATION_HASWELL -const haswell::implementation haswell_singleton{}; -#endif -#if SIMDUTF_IMPLEMENTATION_WESTMERE -const westmere::implementation westmere_singleton{}; -#endif -#if SIMDUTF_IMPLEMENTATION_ARM64 -const arm64::implementation arm64_singleton{}; -#endif -#if SIMDUTF_IMPLEMENTATION_PPC64 -const ppc64::implementation ppc64_singleton{}; -#endif -#if SIMDUTF_IMPLEMENTATION_FALLBACK -const fallback::implementation fallback_singleton{}; #endif -/** - * @private Detects best supported implementation on first use, and sets it - */ -class detect_best_supported_implementation_on_first_use final : public implementation { -public: - const std::string &name() const noexcept final { return set_best()->name(); } - const std::string &description() const noexcept final { return set_best()->description(); } - uint32_t required_instruction_sets() const noexcept final { return set_best()->required_instruction_sets(); } +inline simdutf_warn_unused result validate_with_errors(const char *buf, size_t len) noexcept { + const uint8_t *data = reinterpret_cast(buf); + size_t pos = 0; + uint32_t code_point = 0; + while (pos < len) { + // check of the next 16 bytes are ascii. + size_t next_pos = pos + 16; + if (next_pos <= len) { // if it is safe to read 16 more bytes, check that they are ascii + uint64_t v1; + std::memcpy(&v1, data + pos, sizeof(uint64_t)); + uint64_t v2; + std::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); + uint64_t v{v1 | v2}; + if ((v & 0x8080808080808080) == 0) { + pos = next_pos; + continue; + } + } + unsigned char byte = data[pos]; - simdutf_warn_unused int detect_encodings(const char * input, size_t length) const noexcept override { - return set_best()->detect_encodings(input, length); - } + while (byte < 0b10000000) { + if (++pos == len) { return result(error_code::SUCCESS, len); } + byte = data[pos]; + } - simdutf_warn_unused bool validate_utf8(const char * buf, size_t len) const noexcept final override { - return set_best()->validate_utf8(buf, len); + if ((byte & 0b11100000) == 0b11000000) { + next_pos = pos + 2; + if (next_pos > len) { return result(error_code::TOO_SHORT, pos); } + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } + // range check + code_point = (byte & 0b00011111) << 6 | (data[pos + 1] & 0b00111111); + if ((code_point < 0x80) || (0x7ff < code_point)) { return result(error_code::OVERLONG, pos); } + } else if ((byte & 0b11110000) == 0b11100000) { + next_pos = pos + 3; + if (next_pos > len) { return result(error_code::TOO_SHORT, pos); } + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } + if ((data[pos + 2] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } + // range check + code_point = (byte & 0b00001111) << 12 | + (data[pos + 1] & 0b00111111) << 6 | + (data[pos + 2] & 0b00111111); + if ((code_point < 0x800) || (0xffff < code_point)) { return result(error_code::OVERLONG, pos);} + if (0xd7ff < code_point && code_point < 0xe000) { return result(error_code::SURROGATE, pos); } + } else if ((byte & 0b11111000) == 0b11110000) { // 0b11110000 + next_pos = pos + 4; + if (next_pos > len) { return result(error_code::TOO_SHORT, pos); } + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } + if ((data[pos + 2] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } + if ((data[pos + 3] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } + // range check + code_point = + (byte & 0b00000111) << 18 | (data[pos + 1] & 0b00111111) << 12 | + (data[pos + 2] & 0b00111111) << 6 | (data[pos + 3] & 0b00111111); + if (code_point <= 0xffff) { return result(error_code::OVERLONG, pos); } + if (0x10ffff < code_point) { return result(error_code::TOO_LARGE, pos); } + } else { + // we either have too many continuation bytes or an invalid leading byte + if ((byte & 0b11000000) == 0b10000000) { return result(error_code::TOO_LONG, pos); } + else { return result(error_code::HEADER_BITS, pos); } + } + pos = next_pos; } + return result(error_code::SUCCESS, len); +} - simdutf_warn_unused result validate_utf8_with_errors(const char * buf, size_t len) const noexcept final override { - return set_best()->validate_utf8_with_errors(buf, len); +// Finds the previous leading byte starting backward from buf and validates with errors from there +// Used to pinpoint the location of an error when an invalid chunk is detected +// We assume that the stream starts with a leading byte, and to check that it is the case, we +// ask that you pass a pointer to the start of the stream (start). +inline simdutf_warn_unused result rewind_and_validate_with_errors(const char *start, const char *buf, size_t len) noexcept { + // First check that we start with a leading byte + if ((*start & 0b11000000) == 0b10000000) { + return result(error_code::TOO_LONG, 0); } - - simdutf_warn_unused bool validate_ascii(const char * buf, size_t len) const noexcept final override { - return set_best()->validate_ascii(buf, len); + size_t extra_len{0}; + // A leading byte cannot be further than 4 bytes away + for(int i = 0; i < 5; i++) { + unsigned char byte = *buf; + if ((byte & 0b11000000) != 0b10000000) { + break; + } else { + buf--; + extra_len++; + } } - simdutf_warn_unused result validate_ascii_with_errors(const char * buf, size_t len) const noexcept final override { - return set_best()->validate_ascii_with_errors(buf, len); - } + result res = validate_with_errors(buf, len + extra_len); + res.count -= extra_len; + return res; +} - simdutf_warn_unused bool validate_utf16le(const char16_t * buf, size_t len) const noexcept final override { - return set_best()->validate_utf16le(buf, len); - } +inline size_t count_code_points(const char* buf, size_t len) { + const int8_t * p = reinterpret_cast(buf); + size_t counter{0}; + for(size_t i = 0; i < len; i++) { + // -65 is 0b10111111, anything larger in two-complement's should start a new code point. + if(p[i] > -65) { counter++; } + } + return counter; +} - simdutf_warn_unused bool validate_utf16be(const char16_t * buf, size_t len) const noexcept final override { - return set_best()->validate_utf16be(buf, len); - } +inline size_t utf16_length_from_utf8(const char* buf, size_t len) { + const int8_t * p = reinterpret_cast(buf); + size_t counter{0}; + for(size_t i = 0; i < len; i++) { + if(p[i] > -65) { counter++; } + if(uint8_t(p[i]) >= 240) { counter++; } + } + return counter; +} - simdutf_warn_unused result validate_utf16le_with_errors(const char16_t * buf, size_t len) const noexcept final override { +inline size_t latin1_length_from_utf8(const char *buf, size_t len) { + const uint8_t * c = reinterpret_cast(buf); + + size_t answer = len; + for(size_t i = 0; i < len; i++) { + if((c[i] & 0b11100000) == 0b11000000) { answer--; } // if we have a two-byte UTF8 character + } + return answer; +} + +simdutf_warn_unused inline size_t trim_partial_utf8(const char *input, size_t length) { + if (length < 3) { + switch (length) { + case 2: + if (uint8_t(input[length-1]) >= 0xc0) { return length-1; } // 2-, 3- and 4-byte characters with only 1 byte left + if (uint8_t(input[length-2]) >= 0xe0) { return length-2; } // 3- and 4-byte characters with only 2 bytes left + return length; + case 1: + if (uint8_t(input[length-1]) >= 0xc0) { return length-1; } // 2-, 3- and 4-byte characters with only 1 byte left + return length; + case 0: + return length; + } + } + if (uint8_t(input[length-1]) >= 0xc0) { return length-1; } // 2-, 3- and 4-byte characters with only 1 byte left + if (uint8_t(input[length-2]) >= 0xe0) { return length-2; } // 3- and 4-byte characters with only 1 byte left + if (uint8_t(input[length-3]) >= 0xf0) { return length-3; } // 4-byte characters with only 3 bytes left + return length; +} + +} // utf8 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf + +#endif +/* end file src/scalar/utf8.h */ +/* begin file src/scalar/utf16.h */ +#ifndef SIMDUTF_UTF16_H +#define SIMDUTF_UTF16_H + +namespace simdutf { +namespace scalar { +namespace { +namespace utf16 { + +inline simdutf_warn_unused uint16_t swap_bytes(const uint16_t word) { + return uint16_t((word >> 8) | (word << 8)); +} + +template +inline simdutf_warn_unused bool validate(const char16_t *buf, size_t len) noexcept { + const uint16_t *data = reinterpret_cast(buf); + uint64_t pos = 0; + while (pos < len) { + uint16_t word = !match_system(big_endian) ? swap_bytes(data[pos]) : data[pos]; + if((word &0xF800) == 0xD800) { + if(pos + 1 >= len) { return false; } + uint16_t diff = uint16_t(word - 0xD800); + if(diff > 0x3FF) { return false; } + uint16_t next_word = !match_system(big_endian) ? swap_bytes(data[pos + 1]) : data[pos + 1]; + uint16_t diff2 = uint16_t(next_word - 0xDC00); + if(diff2 > 0x3FF) { return false; } + pos += 2; + } else { + pos++; + } + } + return true; +} + +template +inline simdutf_warn_unused result validate_with_errors(const char16_t *buf, size_t len) noexcept { + const uint16_t *data = reinterpret_cast(buf); + size_t pos = 0; + while (pos < len) { + uint16_t word = !match_system(big_endian) ? swap_bytes(data[pos]) : data[pos]; + if((word & 0xF800) == 0xD800) { + if(pos + 1 >= len) { return result(error_code::SURROGATE, pos); } + uint16_t diff = uint16_t(word - 0xD800); + if(diff > 0x3FF) { return result(error_code::SURROGATE, pos); } + uint16_t next_word = !match_system(big_endian) ? swap_bytes(data[pos + 1]) : data[pos + 1]; + uint16_t diff2 = uint16_t(next_word - 0xDC00); + if(diff2 > 0x3FF) { return result(error_code::SURROGATE, pos); } + pos += 2; + } else { + pos++; + } + } + return result(error_code::SUCCESS, pos); +} + +template +inline size_t count_code_points(const char16_t* buf, size_t len) { + // We are not BOM aware. + const uint16_t * p = reinterpret_cast(buf); + size_t counter{0}; + for(size_t i = 0; i < len; i++) { + uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; + counter += ((word & 0xFC00) != 0xDC00); + } + return counter; +} + +template +inline size_t utf8_length_from_utf16(const char16_t* buf, size_t len) { + // We are not BOM aware. + const uint16_t * p = reinterpret_cast(buf); + size_t counter{0}; + for(size_t i = 0; i < len; i++) { + uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; + counter++; // ASCII + counter += static_cast(word > 0x7F); // non-ASCII is at least 2 bytes, surrogates are 2*2 == 4 bytes + counter += static_cast((word > 0x7FF && word <= 0xD7FF) || (word >= 0xE000)); // three-byte + } + return counter; +} + +template +inline size_t utf32_length_from_utf16(const char16_t* buf, size_t len) { + // We are not BOM aware. + const uint16_t * p = reinterpret_cast(buf); + size_t counter{0}; + for(size_t i = 0; i < len; i++) { + uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; + counter += ((word & 0xFC00) != 0xDC00); + } + return counter; +} + + +inline size_t latin1_length_from_utf16(size_t len) { + return len; +} + +simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* out) { + const uint16_t * input = reinterpret_cast(in); + uint16_t * output = reinterpret_cast(out); + for (size_t i = 0; i < size; i++) { + *output++ = uint16_t(input[i] >> 8 | input[i] << 8); + } +} + + +template +simdutf_warn_unused inline size_t trim_partial_utf16(const char16_t* input, size_t length) { + if (length <= 1) { + return length; + } + uint16_t last_word = uint16_t(input[length-1]); + last_word = !match_system(big_endian) ? swap_bytes(last_word) : last_word; + length -= ((last_word & 0xFC00) == 0xD800); + return length; +} + +} // utf16 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf + +#endif +/* end file src/scalar/utf16.h */ + +namespace simdutf { +bool implementation::supported_by_runtime_system() const { + uint32_t required_instruction_sets = this->required_instruction_sets(); + uint32_t supported_instruction_sets = internal::detect_supported_architectures(); + return ((supported_instruction_sets & required_instruction_sets) == required_instruction_sets); +} + +simdutf_warn_unused encoding_type implementation::autodetect_encoding(const char * input, size_t length) const noexcept { + // If there is a BOM, then we trust it. + auto bom_encoding = simdutf::BOM::check_bom(input, length); + if(bom_encoding != encoding_type::unspecified) { return bom_encoding; } + // UTF8 is common, it includes ASCII, and is commonly represented + // without a BOM, so if it fits, go with that. Note that it is still + // possible to get it wrong, we are only 'guessing'. If some has UTF-16 + // data without a BOM, it could pass as UTF-8. + // + // An interesting twist might be to check for UTF-16 ASCII first (every + // other byte is zero). + if(validate_utf8(input, length)) { return encoding_type::UTF8; } + // The next most common encoding that might appear without BOM is probably + // UTF-16LE, so try that next. + if((length % 2) == 0) { + // important: we need to divide by two + if(validate_utf16le(reinterpret_cast(input), length/2)) { return encoding_type::UTF16_LE; } + } + if((length % 4) == 0) { + if(validate_utf32(reinterpret_cast(input), length/4)) { return encoding_type::UTF32_LE; } + } + return encoding_type::unspecified; +} + +namespace internal { + +// Static array of known implementations. We're hoping these get baked into the executable +// without requiring a static initializer. + + +#if SIMDUTF_IMPLEMENTATION_ICELAKE +static const icelake::implementation* get_icelake_singleton() { + static const icelake::implementation icelake_singleton{}; + return &icelake_singleton; +} +#endif +#if SIMDUTF_IMPLEMENTATION_HASWELL +static const haswell::implementation* get_haswell_singleton() { + static const haswell::implementation haswell_singleton{}; + return &haswell_singleton; +} +#endif +#if SIMDUTF_IMPLEMENTATION_WESTMERE +static const westmere::implementation* get_westmere_singleton() { + static const westmere::implementation westmere_singleton{}; + return &westmere_singleton; +} +#endif +#if SIMDUTF_IMPLEMENTATION_ARM64 +static const arm64::implementation* get_arm64_singleton() { + static const arm64::implementation arm64_singleton{}; + return &arm64_singleton; +} +#endif +#if SIMDUTF_IMPLEMENTATION_PPC64 +static const ppc64::implementation* get_ppc64_singleton() { + static const ppc64::implementation ppc64_singleton{}; + return &ppc64_singleton; +} +#endif +#if SIMDUTF_IMPLEMENTATION_FALLBACK +static const fallback::implementation* get_fallback_singleton() { + static const fallback::implementation fallback_singleton{}; + return &fallback_singleton; +} +#endif + +/** + * @private Detects best supported implementation on first use, and sets it + */ +class detect_best_supported_implementation_on_first_use final : public implementation { +public: + const std::string &name() const noexcept final { return set_best()->name(); } + const std::string &description() const noexcept final { return set_best()->description(); } + uint32_t required_instruction_sets() const noexcept final { return set_best()->required_instruction_sets(); } + + simdutf_warn_unused int detect_encodings(const char * input, size_t length) const noexcept override { + return set_best()->detect_encodings(input, length); + } + + simdutf_warn_unused bool validate_utf8(const char * buf, size_t len) const noexcept final override { + return set_best()->validate_utf8(buf, len); + } + + simdutf_warn_unused result validate_utf8_with_errors(const char * buf, size_t len) const noexcept final override { + return set_best()->validate_utf8_with_errors(buf, len); + } + + simdutf_warn_unused bool validate_ascii(const char * buf, size_t len) const noexcept final override { + return set_best()->validate_ascii(buf, len); + } + + simdutf_warn_unused result validate_ascii_with_errors(const char * buf, size_t len) const noexcept final override { + return set_best()->validate_ascii_with_errors(buf, len); + } + + simdutf_warn_unused bool validate_utf16le(const char16_t * buf, size_t len) const noexcept final override { + return set_best()->validate_utf16le(buf, len); + } + + simdutf_warn_unused bool validate_utf16be(const char16_t * buf, size_t len) const noexcept final override { + return set_best()->validate_utf16be(buf, len); + } + + simdutf_warn_unused result validate_utf16le_with_errors(const char16_t * buf, size_t len) const noexcept final override { return set_best()->validate_utf16le_with_errors(buf, len); } @@ -4209,6 +4656,34 @@ class detect_best_supported_implementation_on_first_use final : public implement return set_best()->validate_utf32_with_errors(buf, len); } + simdutf_warn_unused size_t convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept final override { + return set_best()->convert_latin1_to_utf8(buf, len,utf8_output); + } + + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) const noexcept final override { + return set_best()->convert_latin1_to_utf16le(buf, len, utf16_output); + } + + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * buf, size_t len, char16_t* utf16_output) const noexcept final override { + return set_best()->convert_latin1_to_utf16be(buf, len, utf16_output); + } + + simdutf_warn_unused size_t convert_latin1_to_utf32(const char * buf, size_t len, char32_t * latin1_output) const noexcept final override { + return set_best()->convert_latin1_to_utf32(buf, len,latin1_output); + } + + simdutf_warn_unused size_t convert_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf8_to_latin1(buf, len,latin1_output); + } + + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char* buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf8_to_latin1_with_errors(buf, len, latin1_output); + } + + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_valid_utf8_to_latin1(buf, len,latin1_output); + } + simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) const noexcept final override { return set_best()->convert_utf8_to_utf16le(buf, len, utf16_output); } @@ -4245,6 +4720,30 @@ class detect_best_supported_implementation_on_first_use final : public implement return set_best()->convert_valid_utf8_to_utf32(buf, len, utf32_output); } + simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf16le_to_latin1(buf, len, latin1_output); + } + + simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf16be_to_latin1(buf, len, latin1_output); + } + + simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf16le_to_latin1_with_errors(buf, len, latin1_output); + } + + simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf16be_to_latin1_with_errors(buf, len, latin1_output); + } + + simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_valid_utf16le_to_latin1(buf, len, latin1_output); + } + + simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_valid_utf16be_to_latin1(buf, len, latin1_output); + } + simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_output) const noexcept final override { return set_best()->convert_utf16le_to_utf8(buf, len, utf8_output); } @@ -4269,6 +4768,18 @@ class detect_best_supported_implementation_on_first_use final : public implement return set_best()->convert_valid_utf16be_to_utf8(buf, len, utf8_output); } + simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf32_to_latin1(buf, len,latin1_output); + } + + simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf32_to_latin1_with_errors(buf, len,latin1_output); + } + + simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t * buf, size_t len, char* latin1_output) const noexcept final override { + return set_best()->convert_utf32_to_latin1(buf, len,latin1_output); + } + simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * buf, size_t len, char* utf8_output) const noexcept final override { return set_best()->convert_utf32_to_utf8(buf, len, utf8_output); } @@ -4345,6 +4856,22 @@ class detect_best_supported_implementation_on_first_use final : public implement return set_best()->count_utf8(buf, len); } + simdutf_warn_unused size_t latin1_length_from_utf8(const char * buf, size_t len) const noexcept override { + return set_best()->latin1_length_from_utf8(buf, len); + } + + simdutf_warn_unused size_t latin1_length_from_utf16(size_t len) const noexcept override { + return set_best()->latin1_length_from_utf16(len); + } + + simdutf_warn_unused size_t latin1_length_from_utf32(size_t len) const noexcept override { + return set_best()->latin1_length_from_utf32(len); + } + + simdutf_warn_unused size_t utf8_length_from_latin1(const char * buf, size_t len) const noexcept override { + return set_best()->utf8_length_from_latin1(buf, len); + } + simdutf_warn_unused size_t utf8_length_from_utf16le(const char16_t * buf, size_t len) const noexcept override { return set_best()->utf8_length_from_utf16le(buf, len); } @@ -4353,6 +4880,14 @@ class detect_best_supported_implementation_on_first_use final : public implement return set_best()->utf8_length_from_utf16be(buf, len); } + simdutf_warn_unused size_t utf16_length_from_latin1(size_t len) const noexcept override { + return set_best()->utf16_length_from_latin1(len); + } + + simdutf_warn_unused size_t utf32_length_from_latin1(size_t len) const noexcept override { + return set_best()->utf32_length_from_latin1(len); + } + simdutf_warn_unused size_t utf32_length_from_utf16le(const char16_t * buf, size_t len) const noexcept override { return set_best()->utf32_length_from_utf16le(buf, len); } @@ -4383,27 +4918,29 @@ class detect_best_supported_implementation_on_first_use final : public implement const implementation *set_best() const noexcept; }; - -const std::initializer_list available_implementation_pointers { +static const std::initializer_list& get_available_implementation_pointers() { + static const std::initializer_list available_implementation_pointers { #if SIMDUTF_IMPLEMENTATION_ICELAKE - &icelake_singleton, + get_icelake_singleton(), #endif #if SIMDUTF_IMPLEMENTATION_HASWELL - &haswell_singleton, + get_haswell_singleton(), #endif #if SIMDUTF_IMPLEMENTATION_WESTMERE - &westmere_singleton, + get_westmere_singleton(), #endif #if SIMDUTF_IMPLEMENTATION_ARM64 - &arm64_singleton, + get_arm64_singleton(), #endif #if SIMDUTF_IMPLEMENTATION_PPC64 - &ppc64_singleton, + get_ppc64_singleton(), #endif #if SIMDUTF_IMPLEMENTATION_FALLBACK - &fallback_singleton, + get_fallback_singleton(), #endif -}; // available_implementation_pointers + }; // available_implementation_pointers + return available_implementation_pointers; +} // So we can return UNSUPPORTED_ARCHITECTURE from the parser when there is no support class unsupported_implementation final : public implementation { @@ -4459,6 +4996,34 @@ class unsupported_implementation final : public implementation { return result(error_code::OTHER, 0); } + simdutf_warn_unused size_t convert_latin1_to_utf8(const char*, size_t, char*) const noexcept final override { + return 0; + } + + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char*, size_t, char16_t*) const noexcept final override { + return 0; + } + + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char*, size_t, char16_t*) const noexcept final override { + return 0; + } + + simdutf_warn_unused size_t convert_latin1_to_utf32(const char*, size_t, char32_t*) const noexcept final override { + return 0; + } + + simdutf_warn_unused size_t convert_utf8_to_latin1(const char*, size_t, char*) const noexcept final override { + return 0; + } + + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char*, size_t, char*) const noexcept final override { + return result(error_code::OTHER, 0); + } + + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char*, size_t, char*) const noexcept final override { + return 0; + } + simdutf_warn_unused size_t convert_utf8_to_utf16le(const char*, size_t, char16_t*) const noexcept final override { return 0; } @@ -4495,6 +5060,30 @@ class unsupported_implementation final : public implementation { return 0; } + simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t*, size_t, char*) const noexcept final override { + return 0; + } + + simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t*, size_t, char*) const noexcept final override { + return 0; + } + + simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t*, size_t, char*) const noexcept final override { + return result(error_code::OTHER, 0); + } + + simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t*, size_t, char*) const noexcept final override { + return result(error_code::OTHER, 0); + } + + simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t*, size_t, char*) const noexcept final override { + return 0; + } + + simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t*, size_t, char*) const noexcept final override { + return 0; + } + simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t*, size_t, char*) const noexcept final override { return 0; } @@ -4519,6 +5108,18 @@ class unsupported_implementation final : public implementation { return 0; } + simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t *, size_t, char* ) const noexcept final override { + return 0; + } + + simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t *, size_t, char* ) const noexcept final override { + return result(error_code::OTHER, 0); + } + + simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t *, size_t, char* ) const noexcept final override { + return 0; + } + simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t*, size_t, char*) const noexcept final override { return 0; } @@ -4595,6 +5196,21 @@ class unsupported_implementation final : public implementation { return 0; } + simdutf_warn_unused size_t latin1_length_from_utf8(const char *, size_t) const noexcept override { + return 0; + } + + simdutf_warn_unused size_t latin1_length_from_utf16(size_t) const noexcept override { + return 0; + } + + simdutf_warn_unused size_t latin1_length_from_utf32(size_t) const noexcept override { + return 0; + } + simdutf_warn_unused size_t utf8_length_from_latin1(const char *, size_t) const noexcept override { + return 0; + } + simdutf_warn_unused size_t utf8_length_from_utf16le(const char16_t *, size_t) const noexcept override { return 0; } @@ -4611,10 +5227,16 @@ class unsupported_implementation final : public implementation { return 0; } - simdutf_warn_unused size_t utf16_length_from_utf8(const char *, size_t) const noexcept override { + simdutf_warn_unused size_t utf32_length_from_latin1(size_t) const noexcept override { return 0; } + simdutf_warn_unused size_t utf16_length_from_utf8(const char *, size_t) const noexcept override { + return 0; + } + simdutf_warn_unused size_t utf16_length_from_latin1(size_t) const noexcept override { + return 0; + } simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t *, size_t) const noexcept override { return 0; } @@ -4633,18 +5255,18 @@ class unsupported_implementation final : public implementation { const unsupported_implementation unsupported_singleton{}; size_t available_implementation_list::size() const noexcept { - return internal::available_implementation_pointers.size(); + return internal::get_available_implementation_pointers().size(); } const implementation * const *available_implementation_list::begin() const noexcept { - return internal::available_implementation_pointers.begin(); + return internal::get_available_implementation_pointers().begin(); } const implementation * const *available_implementation_list::end() const noexcept { - return internal::available_implementation_pointers.end(); + return internal::get_available_implementation_pointers().end(); } const implementation *available_implementation_list::detect_best_supported() const noexcept { // They are prelisted in priority order, so we just go down the list uint32_t supported_instruction_sets = internal::detect_supported_architectures(); - for (const implementation *impl : internal::available_implementation_pointers) { + for (const implementation *impl : internal::get_available_implementation_pointers()) { uint32_t required_instruction_sets = impl->required_instruction_sets(); if ((supported_instruction_sets & required_instruction_sets) == required_instruction_sets) { return impl; } } @@ -4709,6 +5331,27 @@ simdutf_warn_unused size_t convert_utf8_to_utf16(const char * input, size_t leng return convert_utf8_to_utf16le(input, length, utf16_output); #endif } +simdutf_warn_unused size_t convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) noexcept { + return get_active_implementation()->convert_latin1_to_utf8(buf, len,utf8_output); +} +simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * buf, size_t len, char16_t* utf16_output) noexcept { + return get_active_implementation()->convert_latin1_to_utf16le(buf, len, utf16_output); +} +simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * buf, size_t len, char16_t* utf16_output) noexcept{ + return get_active_implementation()->convert_latin1_to_utf16be(buf, len, utf16_output); +} +simdutf_warn_unused size_t convert_latin1_to_utf32(const char * buf, size_t len, char32_t * latin1_output) noexcept { + return get_active_implementation()->convert_latin1_to_utf32(buf, len,latin1_output); +} +simdutf_warn_unused size_t convert_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) noexcept { + return get_active_implementation()->convert_utf8_to_latin1(buf, len,latin1_output); +} +simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char* buf, size_t len, char* latin1_output) noexcept { + return get_active_implementation()->convert_utf8_to_latin1_with_errors(buf, len, latin1_output); +} +simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * buf, size_t len, char* latin1_output) noexcept { + return get_active_implementation()->convert_valid_utf8_to_latin1(buf, len,latin1_output); +} simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * input, size_t length, char16_t* utf16_output) noexcept { return get_active_implementation()->convert_utf8_to_utf16le(input, length, utf16_output); } @@ -4789,6 +5432,38 @@ simdutf_warn_unused size_t convert_utf16_to_utf8(const char16_t * buf, size_t le return convert_utf16le_to_utf8(buf, len, utf8_buffer); #endif } +simdutf_warn_unused size_t convert_utf16_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + #if SIMDUTF_IS_BIG_ENDIAN + return convert_utf16be_to_latin1(buf, len, latin1_buffer); + #else + return convert_utf16le_to_latin1(buf, len, latin1_buffer); + #endif +} +simdutf_warn_unused size_t convert_latin1_to_utf16(const char * buf, size_t len, char16_t* utf16_output) noexcept { + #if SIMDUTF_IS_BIG_ENDIAN + return convert_latin1_to_utf16be(buf, len, utf16_output); + #else + return convert_latin1_to_utf16le(buf, len, utf16_output); + #endif +} +simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + return get_active_implementation()->convert_utf16be_to_latin1(buf, len, latin1_buffer); +} +simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + return get_active_implementation()->convert_utf16le_to_latin1(buf, len, latin1_buffer); +} +simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + return get_active_implementation()->convert_valid_utf16be_to_latin1(buf, len, latin1_buffer); +} +simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + return get_active_implementation()->convert_valid_utf16le_to_latin1(buf, len, latin1_buffer); +} +simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + return get_active_implementation()->convert_utf16le_to_latin1_with_errors(buf, len, latin1_buffer); +} +simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + return get_active_implementation()->convert_utf16be_to_latin1_with_errors(buf, len, latin1_buffer); +} simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) noexcept { return get_active_implementation()->convert_utf16le_to_utf8(buf, len, utf8_buffer); } @@ -4802,6 +5477,13 @@ simdutf_warn_unused result convert_utf16_to_utf8_with_errors(const char16_t * bu return convert_utf16le_to_utf8_with_errors(buf, len, utf8_buffer); #endif } +simdutf_warn_unused result convert_utf16_to_latin1_with_errors(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + #if SIMDUTF_IS_BIG_ENDIAN + return convert_utf16be_to_latin1_with_errors(buf, len, latin1_buffer); + #else + return convert_utf16le_to_latin1_with_errors(buf, len, latin1_buffer); + #endif +} simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * buf, size_t len, char* utf8_buffer) noexcept { return get_active_implementation()->convert_utf16le_to_utf8_with_errors(buf, len, utf8_buffer); } @@ -4815,6 +5497,13 @@ simdutf_warn_unused size_t convert_valid_utf16_to_utf8(const char16_t * buf, siz return convert_valid_utf16le_to_utf8(buf, len, utf8_buffer); #endif } +simdutf_warn_unused size_t convert_valid_utf16_to_latin1(const char16_t * buf, size_t len, char* latin1_buffer) noexcept { + #if SIMDUTF_IS_BIG_ENDIAN + return convert_valid_utf16be_to_latin1(buf, len, latin1_buffer); + #else + return convert_valid_utf16le_to_latin1(buf, len, latin1_buffer); + #endif +} simdutf_warn_unused size_t convert_valid_utf16le_to_utf8(const char16_t * buf, size_t len, char* utf8_buffer) noexcept { return get_active_implementation()->convert_valid_utf16le_to_utf8(buf, len, utf8_buffer); } @@ -4837,6 +5526,9 @@ simdutf_warn_unused size_t convert_utf32_to_utf16(const char32_t * buf, size_t l return convert_utf32_to_utf16le(buf, len, utf16_buffer); #endif } +simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * input, size_t length, char* latin1_output) noexcept { + return get_active_implementation()->convert_utf32_to_latin1(input, length, latin1_output); +} simdutf_warn_unused size_t convert_utf32_to_utf16le(const char32_t * buf, size_t len, char16_t* utf16_buffer) noexcept { return get_active_implementation()->convert_utf32_to_utf16le(buf, len, utf16_buffer); } @@ -4927,6 +5619,18 @@ simdutf_warn_unused size_t count_utf16be(const char16_t * input, size_t length) simdutf_warn_unused size_t count_utf8(const char * input, size_t length) noexcept { return get_active_implementation()->count_utf8(input, length); } +simdutf_warn_unused size_t latin1_length_from_utf8(const char * buf, size_t len) noexcept { + return get_active_implementation()->latin1_length_from_utf8(buf, len); +} +simdutf_warn_unused size_t latin1_length_from_utf16(size_t len) noexcept { + return get_active_implementation()->latin1_length_from_utf16(len); +} +simdutf_warn_unused size_t latin1_length_from_utf32(size_t len) noexcept { + return get_active_implementation()->latin1_length_from_utf32(len); +} +simdutf_warn_unused size_t utf8_length_from_latin1(const char * buf, size_t len) noexcept { + return get_active_implementation()->utf8_length_from_latin1(buf, len); +} simdutf_warn_unused size_t utf8_length_from_utf16(const char16_t * input, size_t length) noexcept { #if SIMDUTF_IS_BIG_ENDIAN return utf8_length_from_utf16be(input, length); @@ -4956,6 +5660,9 @@ simdutf_warn_unused size_t utf32_length_from_utf16be(const char16_t * input, siz simdutf_warn_unused size_t utf16_length_from_utf8(const char * input, size_t length) noexcept { return get_active_implementation()->utf16_length_from_utf8(input, length); } +simdutf_warn_unused size_t utf16_length_from_latin1(size_t length) noexcept { + return get_active_implementation()->utf16_length_from_latin1(length); +} simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t * input, size_t length) noexcept { return get_active_implementation()->utf8_length_from_utf32(input, length); } @@ -4971,17 +5678,34 @@ simdutf_warn_unused simdutf::encoding_type autodetect_encoding(const char * buf, simdutf_warn_unused int detect_encodings(const char * buf, size_t length) noexcept { return get_active_implementation()->detect_encodings(buf, length); } - const implementation * builtin_implementation() { static const implementation * builtin_impl = get_available_implementations()[SIMDUTF_STRINGIFY(SIMDUTF_BUILTIN_IMPLEMENTATION)]; return builtin_impl; } +simdutf_warn_unused size_t trim_partial_utf8(const char *input, size_t length) { + return scalar::utf8::trim_partial_utf8(input, length); +} + +simdutf_warn_unused size_t trim_partial_utf16be(const char16_t* input, size_t length) { + return scalar::utf16::trim_partial_utf16(input, length); +} + +simdutf_warn_unused size_t trim_partial_utf16le(const char16_t* input, size_t length) { + return scalar::utf16::trim_partial_utf16(input, length); +} + +simdutf_warn_unused size_t trim_partial_utf16(const char16_t* input, size_t length) { + #if SIMDUTF_IS_BIG_ENDIAN + return trim_partial_utf16be(input, length); + #else + return trim_partial_utf16le(input, length); + #endif +} } // namespace simdutf /* end file src/implementation.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=encoding_types.cpp /* begin file src/encoding_types.cpp */ namespace simdutf { @@ -5043,7 +5767,6 @@ encoding_type check_bom(const char* byte, size_t length) { } } /* end file src/encoding_types.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=error.cpp /* begin file src/error.cpp */ namespace simdutf { @@ -5055,7 +5778,6 @@ namespace simdutf { /* end file src/error.cpp */ // The large tables should be included once and they // should not depend on a kernel. -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=tables/utf8_to_utf16_tables.h /* begin file src/tables/utf8_to_utf16_tables.h */ #ifndef SIMDUTF_UTF8_TO_UTF16_TABLES_H #define SIMDUTF_UTF8_TO_UTF16_TABLES_H @@ -9394,7 +10116,6 @@ const uint8_t utf8bigindex[4096][2] = #endif // SIMDUTF_UTF8_TO_UTF16_TABLES_H /* end file src/tables/utf8_to_utf16_tables.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=tables/utf16_to_utf8_tables.h /* begin file src/tables/utf16_to_utf8_tables.h */ // file generated by scripts/sse_convert_utf16_to_utf8.py #ifndef SIMDUTF_UTF16_TO_UTF8_TABLES_H @@ -9935,7 +10656,6 @@ namespace utf16_to_utf8 { // End of tables. // The scalar routines should be included once. -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/ascii.h /* begin file src/scalar/ascii.h */ #ifndef SIMDUTF_ASCII_H #define SIMDUTF_ASCII_H @@ -9950,7 +10670,7 @@ inline simdutf_warn_unused bool validate(const char *buf, size_t len) noexcept { const uint8_t *data = reinterpret_cast(buf); uint64_t pos = 0; // process in blocks of 16 bytes when possible - for (;pos + 16 < len; pos += 16) { + for (;pos + 16 <= len; pos += 16) { uint64_t v1; std::memcpy(&v1, data + pos, sizeof(uint64_t)); uint64_t v2; @@ -9970,7 +10690,7 @@ inline simdutf_warn_unused result validate_with_errors(const char *buf, size_t l const uint8_t *data = reinterpret_cast(buf); size_t pos = 0; // process in blocks of 16 bytes when possible - for (;pos + 16 < len; pos += 16) { + for (;pos + 16 <= len; pos += 16) { uint64_t v1; std::memcpy(&v1, data + pos, sizeof(uint64_t)); uint64_t v2; @@ -9996,379 +10716,106 @@ inline simdutf_warn_unused result validate_with_errors(const char *buf, size_t l #endif /* end file src/scalar/ascii.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf8.h -/* begin file src/scalar/utf8.h */ -#ifndef SIMDUTF_UTF8_H -#define SIMDUTF_UTF8_H +/* begin file src/scalar/utf32.h */ +#ifndef SIMDUTF_UTF32_H +#define SIMDUTF_UTF32_H namespace simdutf { namespace scalar { namespace { -namespace utf8 { -#if SIMDUTF_IMPLEMENTATION_FALLBACK -// only used by the fallback kernel. -// credit: based on code from Google Fuchsia (Apache Licensed) -inline simdutf_warn_unused bool validate(const char *buf, size_t len) noexcept { - const uint8_t *data = reinterpret_cast(buf); - uint64_t pos = 0; - uint32_t code_point = 0; - while (pos < len) { - // check of the next 8 bytes are ascii. - uint64_t next_pos = pos + 16; - if (next_pos <= len) { // if it is safe to read 8 more bytes, check that they are ascii - uint64_t v1; - std::memcpy(&v1, data + pos, sizeof(uint64_t)); - uint64_t v2; - std::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); - uint64_t v{v1 | v2}; - if ((v & 0x8080808080808080) == 0) { - pos = next_pos; - continue; - } - } - unsigned char byte = data[pos]; - - while (byte < 0b10000000) { - if (++pos == len) { return true; } - byte = data[pos]; - } +namespace utf32 { - if ((byte & 0b11100000) == 0b11000000) { - next_pos = pos + 2; - if (next_pos > len) { return false; } - if ((data[pos + 1] & 0b11000000) != 0b10000000) { return false; } - // range check - code_point = (byte & 0b00011111) << 6 | (data[pos + 1] & 0b00111111); - if ((code_point < 0x80) || (0x7ff < code_point)) { return false; } - } else if ((byte & 0b11110000) == 0b11100000) { - next_pos = pos + 3; - if (next_pos > len) { return false; } - if ((data[pos + 1] & 0b11000000) != 0b10000000) { return false; } - if ((data[pos + 2] & 0b11000000) != 0b10000000) { return false; } - // range check - code_point = (byte & 0b00001111) << 12 | - (data[pos + 1] & 0b00111111) << 6 | - (data[pos + 2] & 0b00111111); - if ((code_point < 0x800) || (0xffff < code_point) || - (0xd7ff < code_point && code_point < 0xe000)) { +inline simdutf_warn_unused bool validate(const char32_t *buf, size_t len) noexcept { + const uint32_t *data = reinterpret_cast(buf); + uint64_t pos = 0; + for(;pos < len; pos++) { + uint32_t word = data[pos]; + if(word > 0x10FFFF || (word >= 0xD800 && word <= 0xDFFF)) { return false; - } - } else if ((byte & 0b11111000) == 0b11110000) { // 0b11110000 - next_pos = pos + 4; - if (next_pos > len) { return false; } - if ((data[pos + 1] & 0b11000000) != 0b10000000) { return false; } - if ((data[pos + 2] & 0b11000000) != 0b10000000) { return false; } - if ((data[pos + 3] & 0b11000000) != 0b10000000) { return false; } - // range check - code_point = - (byte & 0b00000111) << 18 | (data[pos + 1] & 0b00111111) << 12 | - (data[pos + 2] & 0b00111111) << 6 | (data[pos + 3] & 0b00111111); - if (code_point <= 0xffff || 0x10ffff < code_point) { return false; } - } else { - // we may have a continuation - return false; } - pos = next_pos; } return true; } -#endif -inline simdutf_warn_unused result validate_with_errors(const char *buf, size_t len) noexcept { - const uint8_t *data = reinterpret_cast(buf); +inline simdutf_warn_unused result validate_with_errors(const char32_t *buf, size_t len) noexcept { + const uint32_t *data = reinterpret_cast(buf); size_t pos = 0; - uint32_t code_point = 0; - while (pos < len) { - // check of the next 8 bytes are ascii. - size_t next_pos = pos + 16; - if (next_pos <= len) { // if it is safe to read 8 more bytes, check that they are ascii - uint64_t v1; - std::memcpy(&v1, data + pos, sizeof(uint64_t)); - uint64_t v2; - std::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); - uint64_t v{v1 | v2}; - if ((v & 0x8080808080808080) == 0) { - pos = next_pos; - continue; - } + for(;pos < len; pos++) { + uint32_t word = data[pos]; + if(word > 0x10FFFF) { + return result(error_code::TOO_LARGE, pos); } - unsigned char byte = data[pos]; - - while (byte < 0b10000000) { - if (++pos == len) { return result(error_code::SUCCESS, len); } - byte = data[pos]; + if(word >= 0xD800 && word <= 0xDFFF) { + return result(error_code::SURROGATE, pos); } + } + return result(error_code::SUCCESS, pos); +} - if ((byte & 0b11100000) == 0b11000000) { - next_pos = pos + 2; - if (next_pos > len) { return result(error_code::TOO_SHORT, pos); } - if ((data[pos + 1] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } - // range check - code_point = (byte & 0b00011111) << 6 | (data[pos + 1] & 0b00111111); - if ((code_point < 0x80) || (0x7ff < code_point)) { return result(error_code::OVERLONG, pos); } - } else if ((byte & 0b11110000) == 0b11100000) { - next_pos = pos + 3; - if (next_pos > len) { return result(error_code::TOO_SHORT, pos); } - if ((data[pos + 1] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } - if ((data[pos + 2] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } - // range check - code_point = (byte & 0b00001111) << 12 | - (data[pos + 1] & 0b00111111) << 6 | - (data[pos + 2] & 0b00111111); - if ((code_point < 0x800) || (0xffff < code_point)) { return result(error_code::OVERLONG, pos);} - if (0xd7ff < code_point && code_point < 0xe000) { return result(error_code::SURROGATE, pos); } - } else if ((byte & 0b11111000) == 0b11110000) { // 0b11110000 - next_pos = pos + 4; - if (next_pos > len) { return result(error_code::TOO_SHORT, pos); } - if ((data[pos + 1] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } - if ((data[pos + 2] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } - if ((data[pos + 3] & 0b11000000) != 0b10000000) { return result(error_code::TOO_SHORT, pos); } - // range check - code_point = - (byte & 0b00000111) << 18 | (data[pos + 1] & 0b00111111) << 12 | - (data[pos + 2] & 0b00111111) << 6 | (data[pos + 3] & 0b00111111); - if (code_point <= 0xffff) { return result(error_code::OVERLONG, pos); } - if (0x10ffff < code_point) { return result(error_code::TOO_LARGE, pos); } - } else { - // we either have too many continuation bytes or an invalid leading byte - if ((byte & 0b11000000) == 0b10000000) { return result(error_code::TOO_LONG, pos); } - else { return result(error_code::HEADER_BITS, pos); } - } - pos = next_pos; - } - return result(error_code::SUCCESS, len); -} - -// Finds the previous leading byte and validates with errors from there -// Used to pinpoint the location of an error when an invalid chunk is detected -inline simdutf_warn_unused result rewind_and_validate_with_errors(const char *start, const char *buf, size_t len) noexcept { - // First check that we start with a leading byte - if ((*start & 0b11000000) == 0b10000000) { - return result(error_code::TOO_LONG, 0); - } - size_t extra_len{0}; - // A leading byte cannot be further than 4 bytes away - for(int i = 0; i < 5; i++) { - unsigned char byte = *buf; - if ((byte & 0b11000000) != 0b10000000) { - break; - } else { - buf--; - extra_len++; - } - } - - result res = validate_with_errors(buf, len + extra_len); - res.count -= extra_len; - return res; -} - -inline size_t count_code_points(const char* buf, size_t len) { - const int8_t * p = reinterpret_cast(buf); - size_t counter{0}; - for(size_t i = 0; i < len; i++) { - // -65 is 0b10111111, anything larger in two-complement's should start a new code point. - if(p[i] > -65) { counter++; } - } - return counter; -} - -inline size_t utf16_length_from_utf8(const char* buf, size_t len) { - const int8_t * p = reinterpret_cast(buf); - size_t counter{0}; - for(size_t i = 0; i < len; i++) { - if(p[i] > -65) { counter++; } - if(uint8_t(p[i]) >= 240) { counter++; } - } - return counter; -} - -} // utf8 namespace -} // unnamed namespace -} // namespace scalar -} // namespace simdutf - -#endif -/* end file src/scalar/utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf16.h -/* begin file src/scalar/utf16.h */ -#ifndef SIMDUTF_UTF16_H -#define SIMDUTF_UTF16_H - -namespace simdutf { -namespace scalar { -namespace { -namespace utf16 { - -inline simdutf_warn_unused uint16_t swap_bytes(const uint16_t word) { - return uint16_t((word >> 8) | (word << 8)); -} - -template -inline simdutf_warn_unused bool validate(const char16_t *buf, size_t len) noexcept { - const uint16_t *data = reinterpret_cast(buf); - uint64_t pos = 0; - while (pos < len) { - uint16_t word = !match_system(big_endian) ? swap_bytes(data[pos]) : data[pos]; - if((word &0xF800) == 0xD800) { - if(pos + 1 >= len) { return false; } - uint16_t diff = uint16_t(word - 0xD800); - if(diff > 0x3FF) { return false; } - uint16_t next_word = !match_system(big_endian) ? swap_bytes(data[pos + 1]) : data[pos + 1]; - uint16_t diff2 = uint16_t(next_word - 0xDC00); - if(diff2 > 0x3FF) { return false; } - pos += 2; - } else { - pos++; - } - } - return true; -} - -template -inline simdutf_warn_unused result validate_with_errors(const char16_t *buf, size_t len) noexcept { - const uint16_t *data = reinterpret_cast(buf); - size_t pos = 0; - while (pos < len) { - uint16_t word = !match_system(big_endian) ? swap_bytes(data[pos]) : data[pos]; - if((word & 0xF800) == 0xD800) { - if(pos + 1 >= len) { return result(error_code::SURROGATE, pos); } - uint16_t diff = uint16_t(word - 0xD800); - if(diff > 0x3FF) { return result(error_code::SURROGATE, pos); } - uint16_t next_word = !match_system(big_endian) ? swap_bytes(data[pos + 1]) : data[pos + 1]; - uint16_t diff2 = uint16_t(next_word - 0xDC00); - if(diff2 > 0x3FF) { return result(error_code::SURROGATE, pos); } - pos += 2; - } else { - pos++; - } - } - return result(error_code::SUCCESS, pos); -} - -template -inline size_t count_code_points(const char16_t* buf, size_t len) { +inline size_t utf8_length_from_utf32(const char32_t* buf, size_t len) { // We are not BOM aware. - const uint16_t * p = reinterpret_cast(buf); + const uint32_t * p = reinterpret_cast(buf); size_t counter{0}; for(size_t i = 0; i < len; i++) { - uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; - counter += ((word & 0xFC00) != 0xDC00); + // credit: @ttsugriy for the vectorizable approach + counter++; // ASCII + counter += static_cast(p[i] > 0x7F); // two-byte + counter += static_cast(p[i] > 0x7FF); // three-byte + counter += static_cast(p[i] > 0xFFFF); // four-bytes } return counter; } -template -inline size_t utf8_length_from_utf16(const char16_t* buf, size_t len) { +inline size_t utf16_length_from_utf32(const char32_t* buf, size_t len) { // We are not BOM aware. - const uint16_t * p = reinterpret_cast(buf); + const uint32_t * p = reinterpret_cast(buf); size_t counter{0}; for(size_t i = 0; i < len; i++) { - uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; - /** ASCII **/ - if(word <= 0x7F) { counter++; } - /** two-byte **/ - else if (word <= 0x7FF) { counter += 2; } - /** three-byte **/ - else if((word <= 0xD7FF) || (word >= 0xE000)) { counter += 3; } - /** surrogates -- 4 bytes **/ - else { counter += 2; } + counter++; // non-surrogate word + counter += static_cast(p[i] > 0xFFFF); // surrogate pair } return counter; } -template -inline size_t utf32_length_from_utf16(const char16_t* buf, size_t len) { +inline size_t latin1_length_from_utf32(size_t len) { // We are not BOM aware. - const uint16_t * p = reinterpret_cast(buf); - size_t counter{0}; - for(size_t i = 0; i < len; i++) { - uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; - counter += ((word & 0xFC00) != 0xDC00); - } - return counter; + return len; // a utf32 codepoint will always represent 1 latin1 character } -simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* out) { - const uint16_t * input = reinterpret_cast(in); - uint16_t * output = reinterpret_cast(out); - for (size_t i = 0; i < size; i++) { - *output++ = uint16_t(input[i] >> 8 | input[i] << 8); - } -} -} // utf16 namespace + +} // utf32 namespace } // unnamed namespace } // namespace scalar } // namespace simdutf #endif -/* end file src/scalar/utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf32.h -/* begin file src/scalar/utf32.h */ -#ifndef SIMDUTF_UTF32_H -#define SIMDUTF_UTF32_H +/* end file src/scalar/utf32.h */ +/* begin file src/scalar/latin1.h */ +#ifndef SIMDUTF_LATIN1_H +#define SIMDUTF_LATIN1_H namespace simdutf { namespace scalar { namespace { -namespace utf32 { - -inline simdutf_warn_unused bool validate(const char32_t *buf, size_t len) noexcept { - const uint32_t *data = reinterpret_cast(buf); - uint64_t pos = 0; - for(;pos < len; pos++) { - uint32_t word = data[pos]; - if(word > 0x10FFFF || (word >= 0xD800 && word <= 0xDFFF)) { - return false; - } - } - return true; -} +namespace latin1 { -inline simdutf_warn_unused result validate_with_errors(const char32_t *buf, size_t len) noexcept { - const uint32_t *data = reinterpret_cast(buf); - size_t pos = 0; - for(;pos < len; pos++) { - uint32_t word = data[pos]; - if(word > 0x10FFFF) { - return result(error_code::TOO_LARGE, pos); - } - if(word >= 0xD800 && word <= 0xDFFF) { - return result(error_code::SURROGATE, pos); - } - } - return result(error_code::SUCCESS, pos); +inline size_t utf32_length_from_latin1(size_t len) { + // We are not BOM aware. + return len; // a utf32 unit will always represent 1 latin1 character } -inline size_t utf8_length_from_utf32(const char32_t* buf, size_t len) { - // We are not BOM aware. - const uint32_t * p = reinterpret_cast(buf); - size_t counter{0}; - for(size_t i = 0; i < len; i++) { - /** ASCII **/ - if(p[i] <= 0x7F) { counter++; } - /** two-byte **/ - else if(p[i] <= 0x7FF) { counter += 2; } - /** three-byte **/ - else if(p[i] <= 0xFFFF) { counter += 3; } - /** four-bytes **/ - else { counter += 4; } +inline size_t utf8_length_from_latin1(const char *buf, size_t len) { + const uint8_t * c = reinterpret_cast(buf); + size_t answer = 0; + for(size_t i = 0; i>7)) { answer++; } } - return counter; + return answer + len; } -inline size_t utf16_length_from_utf32(const char32_t* buf, size_t len) { - // We are not BOM aware. - const uint32_t * p = reinterpret_cast(buf); - size_t counter{0}; - for(size_t i = 0; i < len; i++) { - /** non-surrogate word **/ - if(p[i] <= 0xFFFF) { counter++; } - /** surrogate pair **/ - else { counter += 2; } - } - return counter; +inline size_t utf16_length_from_latin1(size_t len) { + return len; } } // utf32 namespace @@ -10377,9 +10824,8 @@ inline size_t utf16_length_from_utf32(const char32_t* buf, size_t len) { } // namespace simdutf #endif -/* end file src/scalar/utf32.h */ +/* end file src/scalar/latin1.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf32_to_utf8/valid_utf32_to_utf8.h /* begin file src/scalar/utf32_to_utf8/valid_utf32_to_utf8.h */ #ifndef SIMDUTF_VALID_UTF32_TO_UTF8_H #define SIMDUTF_VALID_UTF32_TO_UTF8_H @@ -10446,7 +10892,6 @@ inline size_t convert_valid(const char32_t* buf, size_t len, char* utf8_output) #endif /* end file src/scalar/utf32_to_utf8/valid_utf32_to_utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf32_to_utf8/utf32_to_utf8.h /* begin file src/scalar/utf32_to_utf8/utf32_to_utf8.h */ #ifndef SIMDUTF_UTF32_TO_UTF8_H #define SIMDUTF_UTF32_TO_UTF8_H @@ -10562,7 +11007,6 @@ inline result convert_with_errors(const char32_t* buf, size_t len, char* utf8_ou #endif /* end file src/scalar/utf32_to_utf8/utf32_to_utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf32_to_utf16/valid_utf32_to_utf16.h /* begin file src/scalar/utf32_to_utf16/valid_utf32_to_utf16.h */ #ifndef SIMDUTF_VALID_UTF32_TO_UTF16_H #define SIMDUTF_VALID_UTF32_TO_UTF16_H @@ -10607,7 +11051,6 @@ inline size_t convert_valid(const char32_t* buf, size_t len, char16_t* utf16_out #endif /* end file src/scalar/utf32_to_utf16/valid_utf32_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf32_to_utf16/utf32_to_utf16.h /* begin file src/scalar/utf32_to_utf16/utf32_to_utf16.h */ #ifndef SIMDUTF_UTF32_TO_UTF16_H #define SIMDUTF_UTF32_TO_UTF16_H @@ -10683,7 +11126,6 @@ inline result convert_with_errors(const char32_t* buf, size_t len, char16_t* utf #endif /* end file src/scalar/utf32_to_utf16/utf32_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf16_to_utf8/valid_utf16_to_utf8.h /* begin file src/scalar/utf16_to_utf8/valid_utf16_to_utf8.h */ #ifndef SIMDUTF_VALID_UTF16_TO_UTF8_H #define SIMDUTF_VALID_UTF16_TO_UTF8_H @@ -10703,7 +11145,7 @@ inline size_t convert_valid(const char16_t* buf, size_t len, char* utf8_output) if (pos + 4 <= len) { // if it is safe to read 8 more bytes, check that they are ascii uint64_t v; ::memcpy(&v, data + pos, sizeof(uint64_t)); - if (!match_system(big_endian)) v = (v >> 8) | (v << (64 - 8)); + if (!match_system(big_endian)) { v = (v >> 8) | (v << (64 - 8)); } if ((v & 0xFF80FF80FF80FF80) == 0) { size_t final_pos = pos + 4; while(pos < final_pos) { @@ -10758,7 +11200,6 @@ inline size_t convert_valid(const char16_t* buf, size_t len, char* utf8_output) #endif /* end file src/scalar/utf16_to_utf8/valid_utf16_to_utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf16_to_utf8/utf16_to_utf8.h /* begin file src/scalar/utf16_to_utf8/utf16_to_utf8.h */ #ifndef SIMDUTF_UTF16_TO_UTF8_H #define SIMDUTF_UTF16_TO_UTF8_H @@ -10774,11 +11215,11 @@ inline size_t convert(const char16_t* buf, size_t len, char* utf8_output) { size_t pos = 0; char* start{utf8_output}; while (pos < len) { - // try to convert the next block of 8 ASCII characters + // try to convert the next block of 8 bytes if (pos + 4 <= len) { // if it is safe to read 8 more bytes, check that they are ascii uint64_t v; ::memcpy(&v, data + pos, sizeof(uint64_t)); - if (!match_system(big_endian)) v = (v >> 8) | (v << (64 - 8)); + if (!match_system(big_endian)) { v = (v >> 8) | (v << (64 - 8)); } if ((v & 0xFF80FF80FF80FF80) == 0) { size_t final_pos = pos + 4; while(pos < final_pos) { @@ -10833,7 +11274,7 @@ inline result convert_with_errors(const char16_t* buf, size_t len, char* utf8_ou size_t pos = 0; char* start{utf8_output}; while (pos < len) { - // try to convert the next block of 8 ASCII characters + // try to convert the next block of 8 bytes if (pos + 4 <= len) { // if it is safe to read 8 more bytes, check that they are ascii uint64_t v; ::memcpy(&v, data + pos, sizeof(uint64_t)); @@ -10894,7 +11335,6 @@ inline result convert_with_errors(const char16_t* buf, size_t len, char* utf8_ou #endif /* end file src/scalar/utf16_to_utf8/utf16_to_utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf16_to_utf32/valid_utf16_to_utf32.h /* begin file src/scalar/utf16_to_utf32/valid_utf16_to_utf32.h */ #ifndef SIMDUTF_VALID_UTF16_TO_UTF32_H #define SIMDUTF_VALID_UTF16_TO_UTF32_H @@ -10936,7 +11376,6 @@ inline size_t convert_valid(const char16_t* buf, size_t len, char32_t* utf32_out #endif /* end file src/scalar/utf16_to_utf32/valid_utf16_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf16_to_utf32/utf16_to_utf32.h /* begin file src/scalar/utf16_to_utf32/utf16_to_utf32.h */ #ifndef SIMDUTF_UTF16_TO_UTF32_H #define SIMDUTF_UTF16_TO_UTF32_H @@ -11008,7 +11447,6 @@ inline result convert_with_errors(const char16_t* buf, size_t len, char32_t* utf #endif /* end file src/scalar/utf16_to_utf32/utf16_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf8_to_utf16/valid_utf8_to_utf16.h /* begin file src/scalar/utf8_to_utf16/valid_utf8_to_utf16.h */ #ifndef SIMDUTF_VALID_UTF8_TO_UTF16_H #define SIMDUTF_VALID_UTF8_TO_UTF16_H @@ -11093,7 +11531,6 @@ inline size_t convert_valid(const char* buf, size_t len, char16_t* utf16_output) #endif /* end file src/scalar/utf8_to_utf16/valid_utf8_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf8_to_utf16/utf8_to_utf16.h /* begin file src/scalar/utf8_to_utf16/utf8_to_utf16.h */ #ifndef SIMDUTF_UTF8_TO_UTF16_H #define SIMDUTF_UTF8_TO_UTF16_H @@ -11343,7 +11780,6 @@ inline result rewind_and_convert_with_errors(size_t prior_bytes, const char* buf #endif /* end file src/scalar/utf8_to_utf16/utf8_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf8_to_utf32/valid_utf8_to_utf32.h /* begin file src/scalar/utf8_to_utf32/valid_utf8_to_utf32.h */ #ifndef SIMDUTF_VALID_UTF8_TO_UTF32_H #define SIMDUTF_VALID_UTF8_TO_UTF32_H @@ -11409,7 +11845,6 @@ inline size_t convert_valid(const char* buf, size_t len, char32_t* utf32_output) #endif /* end file src/scalar/utf8_to_utf32/valid_utf8_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=scalar/utf8_to_utf32/utf8_to_utf32.h /* begin file src/scalar/utf8_to_utf32/utf8_to_utf32.h */ #ifndef SIMDUTF_UTF8_TO_UTF32_H #define SIMDUTF_UTF8_TO_UTF32_H @@ -11621,4345 +12056,5997 @@ inline result rewind_and_convert_with_errors(size_t prior_bytes, const char* buf #endif /* end file src/scalar/utf8_to_utf32/utf8_to_utf32.h */ -// - - -SIMDUTF_PUSH_DISABLE_WARNINGS -SIMDUTF_DISABLE_UNDESIRED_WARNINGS +/* begin file src/scalar/latin1_to_utf8/latin1_to_utf8.h */ +#ifndef SIMDUTF_LATIN1_TO_UTF8_H +#define SIMDUTF_LATIN1_TO_UTF8_H -#if SIMDUTF_IMPLEMENTATION_ARM64 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/implementation.cpp -/* begin file src/arm64/implementation.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/begin.h -/* begin file src/simdutf/arm64/begin.h */ -// redefining SIMDUTF_IMPLEMENTATION to "arm64" -// #define SIMDUTF_IMPLEMENTATION arm64 -/* end file src/simdutf/arm64/begin.h */ namespace simdutf { -namespace arm64 { +namespace scalar { namespace { -#ifndef SIMDUTF_ARM64_H -#error "arm64.h must be included" -#endif -using namespace simd; +namespace latin1_to_utf8 { -simdutf_really_inline bool is_ascii(const simd8x64& input) { - simd8 bits = input.reduce_or(); - return bits.max_val() < 0b10000000u; -} +inline size_t convert(const char* buf, size_t len, char* utf8_output) { + const unsigned char *data = reinterpret_cast(buf); + size_t pos = 0; + char* start{utf8_output}; + while (pos < len) { + // try to convert the next block of 16 ASCII bytes + if (pos + 16 <= len) { // if it is safe to read 16 more bytes, check that they are ascii + uint64_t v1; + ::memcpy(&v1, data + pos, sizeof(uint64_t)); + uint64_t v2; + ::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); + uint64_t v{v1 | v2}; // We are only interested in these bits: 1000 1000 1000 1000, so it makes sense to concatenate everything + if ((v & 0x8080808080808080) == 0) { // if NONE of these are set, e.g. all of them are zero, then everything is ASCII + size_t final_pos = pos + 16; + while(pos < final_pos) { + *utf8_output++ = char(buf[pos]); + pos++; + } + continue; + } + } -simdutf_unused simdutf_really_inline simd8 must_be_continuation(const simd8 prev1, const simd8 prev2, const simd8 prev3) { - simd8 is_second_byte = prev1 >= uint8_t(0b11000000u); - simd8 is_third_byte = prev2 >= uint8_t(0b11100000u); - simd8 is_fourth_byte = prev3 >= uint8_t(0b11110000u); - // Use ^ instead of | for is_*_byte, because ^ is commutative, and the caller is using ^ as well. - // This will work fine because we only have to report errors for cases with 0-1 lead bytes. - // Multiple lead bytes implies 2 overlapping multibyte characters, and if that happens, there is - // guaranteed to be at least *one* lead byte that is part of only 1 other multibyte character. - // The error will be detected there. - return is_second_byte ^ is_third_byte ^ is_fourth_byte; + unsigned char byte = data[pos]; + if((byte & 0x80) == 0) { // if ASCII + // will generate one UTF-8 bytes + *utf8_output++ = char(byte); + pos++; + } else { + // will generate two UTF-8 bytes + *utf8_output++ = char((byte>>6) | 0b11000000); + *utf8_output++ = char((byte & 0b111111) | 0b10000000); + pos++; + } + } + return utf8_output - start; } -simdutf_really_inline simd8 must_be_2_3_continuation(const simd8 prev2, const simd8 prev3) { - simd8 is_third_byte = prev2 >= uint8_t(0b11100000u); - simd8 is_fourth_byte = prev3 >= uint8_t(0b11110000u); - return is_third_byte ^ is_fourth_byte; -} +} // latin1_to_utf8 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_detect_encodings.cpp -/* begin file src/arm64/arm_detect_encodings.cpp */ -template -// len is known to be a multiple of 2 when this is called -int arm_detect_encodings(const char * buf, size_t len) { - const char* start = buf; - const char* end = buf + len; +#endif +/* end file src/scalar/latin1_to_utf8/latin1_to_utf8.h */ +/* begin file src/scalar/latin1_to_utf16/latin1_to_utf16.h */ +#ifndef SIMDUTF_LATIN1_TO_UTF16_H +#define SIMDUTF_LATIN1_TO_UTF16_H - bool is_utf8 = true; - bool is_utf16 = true; - bool is_utf32 = true; +namespace simdutf { +namespace scalar { +namespace { +namespace latin1_to_utf16 { - int out = 0; +template +inline size_t convert(const char* buf, size_t len, char16_t* utf16_output) { + const uint8_t* data = reinterpret_cast(buf); + size_t pos = 0; + char16_t* start{ utf16_output }; - const auto v_d8 = simd8::splat(0xd8); - const auto v_f8 = simd8::splat(0xf8); + while (pos < len) { + uint16_t word = uint16_t(data[pos]); // extend Latin-1 char to 16-bit Unicode code point + *utf16_output++ = char16_t(match_system(big_endian) ? word : utf16::swap_bytes(word)); + pos++; + } - uint32x4_t currentmax = vmovq_n_u32(0x0); + return utf16_output - start; +} - checker check{}; +template +inline result convert_with_errors(const char* buf, size_t len, char16_t* utf16_output) { + const uint8_t* data = reinterpret_cast(buf); + size_t pos = 0; + char16_t* start{ utf16_output }; - while(buf + 64 <= end) { - uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); - uint16x8_t secondin = vld1q_u16(reinterpret_cast(buf) + simd16::SIZE / sizeof(char16_t)); - uint16x8_t thirdin = vld1q_u16(reinterpret_cast(buf) + 2*simd16::SIZE / sizeof(char16_t)); - uint16x8_t fourthin = vld1q_u16(reinterpret_cast(buf) + 3*simd16::SIZE / sizeof(char16_t)); + while (pos < len) { + uint16_t word = uint16_t(data[pos]); // extend Latin-1 char to 16-bit Unicode code point + *utf16_output++ = char16_t(match_system(big_endian) ? word : utf16::swap_bytes(word)); + pos++; + } - const auto u0 = simd16(in); - const auto u1 = simd16(secondin); - const auto u2 = simd16(thirdin); - const auto u3 = simd16(fourthin); + return result(error_code::SUCCESS, utf16_output - start); +} - const auto v0 = u0.shr<8>(); - const auto v1 = u1.shr<8>(); - const auto v2 = u2.shr<8>(); - const auto v3 = u3.shr<8>(); +} // latin1_to_utf16 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf - const auto in16 = simd16::pack(v0, v1); - const auto nextin16 = simd16::pack(v2, v3); +#endif +/* end file src/scalar/latin1_to_utf16/latin1_to_utf16.h */ +/* begin file src/scalar/latin1_to_utf32/latin1_to_utf32.h */ +#ifndef SIMDUTF_LATIN1_TO_UTF32_H +#define SIMDUTF_LATIN1_TO_UTF32_H - const uint64_t surrogates_wordmask0 = ((in16 & v_f8) == v_d8).to_bitmask64(); - const uint64_t surrogates_wordmask1 = ((nextin16 & v_f8) == v_d8).to_bitmask64(); +namespace simdutf { +namespace scalar { +namespace { +namespace latin1_to_utf32 { - // Check for surrogates - if (surrogates_wordmask0 != 0 || surrogates_wordmask1 != 0) { - // Cannot be UTF8 - is_utf8 = false; - // Can still be either UTF-16LE or UTF-32 depending on the positions of the surrogates - // To be valid UTF-32, a surrogate cannot be in the two most significant bytes of any 32-bit word. - // On the other hand, to be valid UTF-16LE, at least one surrogate must be in the two most significant - // bytes of a 32-bit word since they always come in pairs in UTF-16LE. - // Note that we always proceed in multiple of 4 before this point so there is no offset in 32-bit words. - if (((surrogates_wordmask0 | surrogates_wordmask1) & 0xf0f0f0f0f0f0f0f0) != 0) { - is_utf32 = false; - // Code from arm_validate_utf16le.cpp - // Not efficient, we do not process surrogates_wordmask1 - const char16_t * input = reinterpret_cast(buf); - const char16_t* end16 = reinterpret_cast(start) + len/2; +inline size_t convert(const char *buf, size_t len, char32_t *utf32_output) { + const unsigned char *data = reinterpret_cast(buf); + char32_t* start{utf32_output}; + for (size_t i = 0; i < len; i++) { + *utf32_output++ = (char32_t)data[i]; + } + return utf32_output - start; +} - const auto v_fc = simd8::splat(0xfc); - const auto v_dc = simd8::splat(0xdc); +inline result convert_with_errors(const char32_t *buf, size_t len, char32_t *utf32_output) { + const uint32_t *data = reinterpret_cast(buf); + char32_t* start{utf32_output}; + for (size_t i = 0; i < len; i++) { + *utf32_output++ = (char32_t)data[i]; + } + return result(error_code::SUCCESS, utf32_output - start); +} - const uint64_t V0 = ~surrogates_wordmask0; +} // latin1_to_utf32 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf - const auto vH0 = ((in16 & v_fc) == v_dc); - const uint64_t H0 = vH0.to_bitmask64(); +#endif +/* end file src/scalar/latin1_to_utf32/latin1_to_utf32.h */ - const uint64_t L0 = ~H0 & surrogates_wordmask0; +/* begin file src/scalar/utf8_to_latin1/utf8_to_latin1.h */ +#ifndef SIMDUTF_UTF8_TO_LATIN1_H +#define SIMDUTF_UTF8_TO_LATIN1_H +#include - const uint64_t a0 = L0 & (H0 >> 4); +namespace simdutf { +namespace scalar { +namespace { +namespace utf8_to_latin1 { - const uint64_t b0 = a0 << 4; +inline size_t convert(const char* buf, size_t len, char* latin_output) { + const uint8_t *data = reinterpret_cast(buf); + size_t pos = 0; + char* start{latin_output}; - const uint64_t c0 = V0 | a0 | b0; - if (c0 == ~0ull) { - input += 16; - } else if (c0 == 0xfffffffffffffffull) { - input += 15; - } else { - is_utf16 = false; - break; - } + while (pos < len) { + // try to convert the next block of 16 ASCII bytes + if (pos + 16 <= len) { // if it is safe to read 16 more bytes, check that they are ascii + uint64_t v1; + ::memcpy(&v1, data + pos, sizeof(uint64_t)); + uint64_t v2; + ::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); + uint64_t v{v1 | v2}; // We are only interested in these bits: 1000 1000 1000 1000 .... etc + if ((v & 0x8080808080808080) == 0) { // if NONE of these are set, e.g. all of them are zero, then everything is ASCII + size_t final_pos = pos + 16; + while(pos < final_pos) { + *latin_output++ = char(buf[pos]); + pos++; + } + continue; + } + } - while (input + 16 < end16) { - const auto in0 = simd16(input); - const auto in1 = simd16(input + simd16::SIZE / sizeof(char16_t)); - const auto t0 = in0.shr<8>(); - const auto t1 = in1.shr<8>(); - const simd8 in_16 = simd16::pack(t0, t1); + // suppose it is not an all ASCII byte sequence + uint8_t leading_byte = data[pos]; // leading byte + if (leading_byte < 0b10000000) { + // converting one ASCII byte !!! + *latin_output++ = char(leading_byte); + pos++; + } else if ((leading_byte & 0b11100000) == 0b11000000) { // the first three bits indicate: + // We have a two-byte UTF-8 + if(pos + 1 >= len) { + return 0; + } // minimal bound checking + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return 0; } // checks if the next byte is a valid continuation byte in UTF-8. A valid continuation byte starts with 10. + // range check - + uint32_t code_point = (leading_byte & 0b00011111) << 6 | (data[pos + 1] & 0b00111111); // assembles the Unicode code point from the two bytes. It does this by discarding the leading 110 and 10 bits from the two bytes, shifting the remaining bits of the first byte, and then combining the results with a bitwise OR operation. + if (code_point < 0x80 || 0xFF < code_point) { + return 0; // We only care about the range 129-255 which is Non-ASCII latin1 characters. A code_point beneath 0x80 is invalid as it's already covered by bytes whose leading bit is zero. + } + *latin_output++ = char(code_point); + pos += 2; + } else { + return 0; + } + } + return latin_output - start; +} - const uint64_t surrogates_wordmask = ((in_16 & v_f8) == v_d8).to_bitmask64(); - if(surrogates_wordmask == 0) { - input += 16; - } else { - const uint64_t V = ~surrogates_wordmask; +inline result convert_with_errors(const char* buf, size_t len, char* latin_output) { + const uint8_t *data = reinterpret_cast(buf); + size_t pos = 0; + char* start{latin_output}; - const auto vH = ((in_16 & v_fc) == v_dc); - const uint64_t H = vH.to_bitmask64(); + while (pos < len) { + // try to convert the next block of 16 ASCII bytes + if (pos + 16 <= len) { // if it is safe to read 16 more bytes, check that they are ascii + uint64_t v1; + ::memcpy(&v1, data + pos, sizeof(uint64_t)); + uint64_t v2; + ::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); + uint64_t v{v1 | v2}; // We are only interested in these bits: 1000 1000 1000 1000...etc + if ((v & 0x8080808080808080) == 0) { // if NONE of these are set, e.g. all of them are zero, then everything is ASCII + size_t final_pos = pos + 16; + while(pos < final_pos) { + *latin_output++ = char(buf[pos]); + pos++; + } + continue; + } + } + // suppose it is not an all ASCII byte sequence + uint8_t leading_byte = data[pos]; // leading byte + if (leading_byte < 0b10000000) { + // converting one ASCII byte !!! + *latin_output++ = char(leading_byte); + pos++; + } else if ((leading_byte & 0b11100000) == 0b11000000) { // the first three bits indicate: + // We have a two-byte UTF-8 + if(pos + 1 >= len) { + return result(error_code::TOO_SHORT, pos); } // minimal bound checking + if ((data[pos + 1] & 0b11000000) != 0b10000000) { + return result(error_code::TOO_SHORT, pos); } // checks if the next byte is a valid continuation byte in UTF-8. A valid continuation byte starts with 10. + // range check - + uint32_t code_point = (leading_byte & 0b00011111) << 6 | (data[pos + 1] & 0b00111111); // assembles the Unicode code point from the two bytes. It does this by discarding the leading 110 and 10 bits from the two bytes, shifting the remaining bits of the first byte, and then combining the results with a bitwise OR operation. + if (code_point < 0x80) { + return result(error_code::OVERLONG, pos); + } + if (0xFF < code_point) { + return result(error_code::TOO_LARGE, pos); + } // We only care about the range 129-255 which is Non-ASCII latin1 characters + *latin_output++ = char(code_point); + pos += 2; + } else if ((leading_byte & 0b11110000) == 0b11100000) { + // We have a three-byte UTF-8 + return result(error_code::TOO_LARGE, pos); + } else if ((leading_byte & 0b11111000) == 0b11110000) { // 0b11110000 + // we have a 4-byte UTF-8 word. + return result(error_code::TOO_LARGE, pos); + } else { + // we either have too many continuation bytes or an invalid leading byte + if ((leading_byte & 0b11000000) == 0b10000000) { + return result(error_code::TOO_LONG, pos); + } - const uint64_t L = ~H & surrogates_wordmask; + return result(error_code::HEADER_BITS, pos); - const uint64_t a = L & (H >> 4); + } + } + return result(error_code::SUCCESS, latin_output - start); +} - const uint64_t b = a << 4; - const uint64_t c = V | a | b; - if (c == ~0ull) { - input += 16; - } else if (c == 0xfffffffffffffffull) { - input += 15; - } else { - is_utf16 = false; - break; - } - } - } - } else { - is_utf16 = false; - // Check for UTF-32 - if (len % 4 == 0) { - const char32_t * input = reinterpret_cast(buf); - const char32_t* end32 = reinterpret_cast(start) + len/4; +inline result rewind_and_convert_with_errors(size_t prior_bytes, const char* buf, size_t len, char* latin1_output) { + size_t extra_len{0}; + // We potentially need to go back in time and find a leading byte. + // In theory '3' would be sufficient, but sometimes the error can go back quite far. + size_t how_far_back = prior_bytes; + // size_t how_far_back = 3; // 3 bytes in the past + current position + // if(how_far_back >= prior_bytes) { how_far_back = prior_bytes; } + bool found_leading_bytes{false}; + // important: it is i <= how_far_back and not 'i < how_far_back'. + for(size_t i = 0; i <= how_far_back; i++) { + unsigned char byte = buf[0-i]; + found_leading_bytes = ((byte & 0b11000000) != 0b10000000); + if(found_leading_bytes) { + buf -= i; + extra_len = i; + break; + } + } + // + // It is possible for this function to return a negative count in its result. + // C++ Standard Section 18.1 defines size_t is in which is described in C Standard as . + // C Standard Section 4.1.5 defines size_t as an unsigned integral type of the result of the sizeof operator + // + // An unsigned type will simply wrap round arithmetically (well defined). + // + if(!found_leading_bytes) { + // If how_far_back == 3, we may have four consecutive continuation bytes!!! + // [....] [continuation] [continuation] [continuation] | [buf is continuation] + // Or we possibly have a stream that does not start with a leading byte. + return result(error_code::TOO_LONG, 0-how_far_back); + } + result res = convert_with_errors(buf, len + extra_len, latin1_output); + if (res.error) { + res.count -= extra_len; + } + return res; +} - // Must start checking for surrogates - uint32x4_t currentoffsetmax = vmovq_n_u32(0x0); - const uint32x4_t offset = vmovq_n_u32(0xffff2000); - const uint32x4_t standardoffsetmax = vmovq_n_u32(0xfffff7ff); - const uint32x4_t in32 = vreinterpretq_u32_u16(in); - const uint32x4_t secondin32 = vreinterpretq_u32_u16(secondin); - const uint32x4_t thirdin32 = vreinterpretq_u32_u16(thirdin); - const uint32x4_t fourthin32 = vreinterpretq_u32_u16(fourthin); +} // utf8_to_latin1 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf - currentmax = vmaxq_u32(in32,currentmax); - currentmax = vmaxq_u32(secondin32,currentmax); - currentmax = vmaxq_u32(thirdin32,currentmax); - currentmax = vmaxq_u32(fourthin32,currentmax); - - currentoffsetmax = vmaxq_u32(vaddq_u32(in32, offset), currentoffsetmax); - currentoffsetmax = vmaxq_u32(vaddq_u32(secondin32, offset), currentoffsetmax); - currentoffsetmax = vmaxq_u32(vaddq_u32(thirdin32, offset), currentoffsetmax); - currentoffsetmax = vmaxq_u32(vaddq_u32(fourthin32, offset), currentoffsetmax); - - while (input + 4 < end32) { - const uint32x4_t in_32 = vld1q_u32(reinterpret_cast(input)); - currentmax = vmaxq_u32(in_32,currentmax); - currentoffsetmax = vmaxq_u32(vaddq_u32(in_32, offset), currentoffsetmax); - input += 4; - } - - uint32x4_t forbidden_words = veorq_u32(vmaxq_u32(currentoffsetmax, standardoffsetmax), standardoffsetmax); - if(vmaxvq_u32(forbidden_words) != 0) { - is_utf32 = false; - } - } else { - is_utf32 = false; - } - } - break; - } - // If no surrogate, validate under other encodings as well - - // UTF-32 validation - currentmax = vmaxq_u32(vreinterpretq_u32_u16(in),currentmax); - currentmax = vmaxq_u32(vreinterpretq_u32_u16(secondin),currentmax); - currentmax = vmaxq_u32(vreinterpretq_u32_u16(thirdin),currentmax); - currentmax = vmaxq_u32(vreinterpretq_u32_u16(fourthin),currentmax); - - // UTF-8 validation - // Relies on ../generic/utf8_validation/utf8_lookup4_algorithm.h - simd::simd8x64 in8(vreinterpretq_u8_u16(in), vreinterpretq_u8_u16(secondin), vreinterpretq_u8_u16(thirdin), vreinterpretq_u8_u16(fourthin)); - check.check_next_input(in8); - - buf += 64; - } +#endif +/* end file src/scalar/utf8_to_latin1/utf8_to_latin1.h */ +/* begin file src/scalar/utf16_to_latin1/utf16_to_latin1.h */ +#ifndef SIMDUTF_UTF16_TO_LATIN1_H +#define SIMDUTF_UTF16_TO_LATIN1_H - // Check which encodings are possible +namespace simdutf { +namespace scalar { +namespace { +namespace utf16_to_latin1 { - if (is_utf8) { - if (static_cast(buf - start) != len) { - uint8_t block[64]{}; - std::memset(block, 0x20, 64); - std::memcpy(block, buf, len - (buf - start)); - simd::simd8x64 in(block); - check.check_next_input(in); - } - if (!check.errors()) { - out |= simdutf::encoding_type::UTF8; - } - } +#include // for std::memcpy - if (is_utf16 && scalar::utf16::validate(reinterpret_cast(buf), (len - (buf - start))/2)) { - out |= simdutf::encoding_type::UTF16_LE; - } +template +inline size_t convert(const char16_t* buf, size_t len, char* latin_output) { + const uint16_t *data = reinterpret_cast(buf); + size_t pos = 0; + std::vector temp_output(len); + char* current_write = temp_output.data(); + uint16_t word = 0; + uint16_t too_large = 0; - if (is_utf32 && (len % 4 == 0)) { - const uint32x4_t standardmax = vmovq_n_u32(0x10ffff); - uint32x4_t is_zero = veorq_u32(vmaxq_u32(currentmax, standardmax), standardmax); - if (vmaxvq_u32(is_zero) == 0 && scalar::utf32::validate(reinterpret_cast(buf), (len - (buf - start))/4)) { - out |= simdutf::encoding_type::UTF32_LE; - } - } + while (pos < len) { + word = !match_system(big_endian) ? utf16::swap_bytes(data[pos]) : data[pos]; + too_large |= word; + *current_write++ = char(word & 0xFF); + pos++; + } + if((too_large & 0xFF00) != 0) { return 0; } - return out; + // Only copy to latin_output if there were no errors + std::memcpy(latin_output, temp_output.data(), len); + + return current_write - temp_output.data(); } -/* end file src/arm64/arm_detect_encodings.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_validate_utf16.cpp -/* begin file src/arm64/arm_validate_utf16.cpp */ template -const char16_t* arm_validate_utf16(const char16_t* input, size_t size) { - const char16_t* end = input + size; - const auto v_d8 = simd8::splat(0xd8); - const auto v_f8 = simd8::splat(0xf8); - const auto v_fc = simd8::splat(0xfc); - const auto v_dc = simd8::splat(0xdc); - while (input + 16 < end) { - // 0. Load data: since the validation takes into account only higher - // byte of each word, we compress the two vectors into one which - // consists only the higher bytes. - auto in0 = simd16(input); - auto in1 = simd16(input + simd16::SIZE / sizeof(char16_t)); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - in0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in0), swap)); - in1 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in1), swap)); - } - const auto t0 = in0.shr<8>(); - const auto t1 = in1.shr<8>(); - const simd8 in = simd16::pack(t0, t1); - // 1. Check whether we have any 0xD800..DFFF word (0b1101'1xxx'yyyy'yyyy). - const uint64_t surrogates_wordmask = ((in & v_f8) == v_d8).to_bitmask64(); - if(surrogates_wordmask == 0) { - input += 16; - } else { - // 2. We have some surrogates that have to be distinguished: - // - low surrogates: 0b1101'10xx'yyyy'yyyy (0xD800..0xDBFF) - // - high surrogates: 0b1101'11xx'yyyy'yyyy (0xDC00..0xDFFF) - // - // Fact: high surrogate has 11th bit set (3rd bit in the higher word) - - // V - non-surrogate words - // V = not surrogates_wordmask - const uint64_t V = ~surrogates_wordmask; +inline result convert_with_errors(const char16_t* buf, size_t len, char* latin_output) { + const uint16_t *data = reinterpret_cast(buf); + size_t pos = 0; + char* start{latin_output}; + uint16_t word; - // H - word-mask for high surrogates: the six highest bits are 0b1101'11 - const auto vH = ((in & v_fc) == v_dc); - const uint64_t H = vH.to_bitmask64(); + while (pos < len) { + if (pos + 16 <= len) { // if it is safe to read 32 more bytes, check that they are Latin1 + uint64_t v1, v2, v3, v4; + ::memcpy(&v1, data + pos, sizeof(uint64_t)); + ::memcpy(&v2, data + pos + 4, sizeof(uint64_t)); + ::memcpy(&v3, data + pos + 8, sizeof(uint64_t)); + ::memcpy(&v4, data + pos + 12, sizeof(uint64_t)); - // L - word mask for low surrogates - // L = not H and surrogates_wordmask - const uint64_t L = ~H & surrogates_wordmask; + if (!match_system(big_endian)) { v1 = (v1 >> 8) | (v1 << (64 - 8)); } + if (!match_system(big_endian)) { v2 = (v2 >> 8) | (v2 << (64 - 8)); } + if (!match_system(big_endian)) { v3 = (v3 >> 8) | (v3 << (64 - 8)); } + if (!match_system(big_endian)) { v4 = (v1 >> 8) | (v4 << (64 - 8)); } - const uint64_t a = L & (H >> 4); // A low surrogate must be followed by high one. - // (A low surrogate placed in the 7th register's word - // is an exception we handle.) - const uint64_t b = a << 4; // Just mark that the opposite fact is hold, - // thanks to that we have only two masks for valid case. - const uint64_t c = V | a | b; // Combine all the masks into the final one. - if (c == ~0ull) { - // The whole input register contains valid UTF-16, i.e., - // either single words or proper surrogate pairs. - input += 16; - } else if (c == 0xfffffffffffffffull) { - // The 15 lower words of the input register contains valid UTF-16. - // The 15th word may be either a low or high surrogate. It the next - // iteration we 1) check if the low surrogate is followed by a high - // one, 2) reject sole high surrogate. - input += 15; - } else { - return nullptr; - } + if (((v1 | v2 | v3 | v4) & 0xFF00FF00FF00FF00) == 0) { + size_t final_pos = pos + 16; + while(pos < final_pos) { + *latin_output++ = !match_system(big_endian) ? char(utf16::swap_bytes(data[pos])) : char(data[pos]); + pos++; } + continue; + } } - return input; + word = !match_system(big_endian) ? utf16::swap_bytes(data[pos]) : data[pos]; + if((word & 0xFF00 ) == 0) { + *latin_output++ = char(word & 0xFF); + pos++; + } else { return result(error_code::TOO_LARGE, pos); } + } + return result(error_code::SUCCESS,latin_output - start); } -template -const result arm_validate_utf16_with_errors(const char16_t* input, size_t size) { - const char16_t* start = input; - const char16_t* end = input + size; - - const auto v_d8 = simd8::splat(0xd8); - const auto v_f8 = simd8::splat(0xf8); - const auto v_fc = simd8::splat(0xfc); - const auto v_dc = simd8::splat(0xdc); - while (input + 16 < end) { - // 0. Load data: since the validation takes into account only higher - // byte of each word, we compress the two vectors into one which - // consists only the higher bytes. - auto in0 = simd16(input); - auto in1 = simd16(input + simd16::SIZE / sizeof(char16_t)); +} // utf16_to_latin1 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - in0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in0), swap)); - in1 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in1), swap)); - } - const auto t0 = in0.shr<8>(); - const auto t1 = in1.shr<8>(); - const simd8 in = simd16::pack(t0, t1); - // 1. Check whether we have any 0xD800..DFFF word (0b1101'1xxx'yyyy'yyyy). - const uint64_t surrogates_wordmask = ((in & v_f8) == v_d8).to_bitmask64(); - if(surrogates_wordmask == 0) { - input += 16; - } else { - // 2. We have some surrogates that have to be distinguished: - // - low surrogates: 0b1101'10xx'yyyy'yyyy (0xD800..0xDBFF) - // - high surrogates: 0b1101'11xx'yyyy'yyyy (0xDC00..0xDFFF) - // - // Fact: high surrogate has 11th bit set (3rd bit in the higher word) +#endif +/* end file src/scalar/utf16_to_latin1/utf16_to_latin1.h */ +/* begin file src/scalar/utf32_to_latin1/utf32_to_latin1.h */ +#ifndef SIMDUTF_UTF32_TO_LATIN1_H +#define SIMDUTF_UTF32_TO_LATIN1_H - // V - non-surrogate words - // V = not surrogates_wordmask - const uint64_t V = ~surrogates_wordmask; +namespace simdutf { +namespace scalar { +namespace { +namespace utf32_to_latin1 { - // H - word-mask for high surrogates: the six highest bits are 0b1101'11 - const auto vH = ((in & v_fc) == v_dc); - const uint64_t H = vH.to_bitmask64(); +inline size_t convert(const char32_t *buf, size_t len, char *latin1_output) { + const uint32_t *data = reinterpret_cast(buf); + char* start = latin1_output; + uint32_t utf32_char; + size_t pos = 0; + uint32_t too_large = 0; - // L - word mask for low surrogates - // L = not H and surrogates_wordmask - const uint64_t L = ~H & surrogates_wordmask; + while (pos < len) { + utf32_char = (uint32_t)data[pos]; + too_large |= utf32_char; + *latin1_output++ = (char)(utf32_char & 0xFF); + pos++; + } + if((too_large & 0xFFFFFF00) != 0) { return 0; } + return latin1_output - start; +} - const uint64_t a = L & (H >> 4); // A low surrogate must be followed by high one. - // (A low surrogate placed in the 7th register's word - // is an exception we handle.) - const uint64_t b = a << 4; // Just mark that the opposite fact is hold, - // thanks to that we have only two masks for valid case. - const uint64_t c = V | a | b; // Combine all the masks into the final one. - if (c == ~0ull) { - // The whole input register contains valid UTF-16, i.e., - // either single words or proper surrogate pairs. - input += 16; - } else if (c == 0xfffffffffffffffull) { - // The 15 lower words of the input register contains valid UTF-16. - // The 15th word may be either a low or high surrogate. It the next - // iteration we 1) check if the low surrogate is followed by a high - // one, 2) reject sole high surrogate. - input += 15; - } else { - return result(error_code::SURROGATE, input - start); - } - } +inline result convert_with_errors(const char32_t *buf, size_t len, char *latin1_output) { + const uint32_t *data = reinterpret_cast(buf); + char* start{latin1_output}; + size_t pos = 0; + while (pos < len) { + if (pos + 2 <= len) { // if it is safe to read 8 more bytes, check that they are Latin1 + uint64_t v; + ::memcpy(&v, data + pos, sizeof(uint64_t)); + if ((v & 0xFFFFFF00FFFFFF00) == 0) { + *latin1_output++ = char(buf[pos]); + *latin1_output++ = char(buf[pos+1]); + pos += 2; + continue; + } } - return result(error_code::SUCCESS, input - start); + uint32_t utf32_char = data[pos]; + if ((utf32_char & 0xFFFFFF00) == 0) { // Check if the character can be represented in Latin-1 + *latin1_output++ = (char)(utf32_char & 0xFF); + pos++; + } else { return result(error_code::TOO_LARGE, pos); }; + } + return result(error_code::SUCCESS, latin1_output - start); } -/* end file src/arm64/arm_validate_utf16.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_validate_utf32le.cpp -/* begin file src/arm64/arm_validate_utf32le.cpp */ - -const char32_t* arm_validate_utf32le(const char32_t* input, size_t size) { - const char32_t* end = input + size; - const uint32x4_t standardmax = vmovq_n_u32(0x10ffff); - const uint32x4_t offset = vmovq_n_u32(0xffff2000); - const uint32x4_t standardoffsetmax = vmovq_n_u32(0xfffff7ff); - uint32x4_t currentmax = vmovq_n_u32(0x0); - uint32x4_t currentoffsetmax = vmovq_n_u32(0x0); +} // utf32_to_latin1 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf - while (input + 4 < end) { - const uint32x4_t in = vld1q_u32(reinterpret_cast(input)); - currentmax = vmaxq_u32(in,currentmax); - currentoffsetmax = vmaxq_u32(vaddq_u32(in, offset), currentoffsetmax); - input += 4; - } +#endif +/* end file src/scalar/utf32_to_latin1/utf32_to_latin1.h */ - uint32x4_t is_zero = veorq_u32(vmaxq_u32(currentmax, standardmax), standardmax); - if(vmaxvq_u32(is_zero) != 0) { - return nullptr; - } +/* begin file src/scalar/utf8_to_latin1/valid_utf8_to_latin1.h */ +#ifndef SIMDUTF_VALID_UTF8_TO_LATIN1_H +#define SIMDUTF_VALID_UTF8_TO_LATIN1_H - is_zero = veorq_u32(vmaxq_u32(currentoffsetmax, standardoffsetmax), standardoffsetmax); - if(vmaxvq_u32(is_zero) != 0) { - return nullptr; - } +namespace simdutf { +namespace scalar { +namespace { +namespace utf8_to_latin1 { - return input; -} +inline size_t convert_valid(const char* buf, size_t len, char* latin_output) { + const uint8_t *data = reinterpret_cast(buf); + size_t pos = 0; + char* start{latin_output}; -const result arm_validate_utf32le_with_errors(const char32_t* input, size_t size) { - const char32_t* start = input; - const char32_t* end = input + size; - - const uint32x4_t standardmax = vmovq_n_u32(0x10ffff); - const uint32x4_t offset = vmovq_n_u32(0xffff2000); - const uint32x4_t standardoffsetmax = vmovq_n_u32(0xfffff7ff); - uint32x4_t currentmax = vmovq_n_u32(0x0); - uint32x4_t currentoffsetmax = vmovq_n_u32(0x0); - - while (input + 4 < end) { - const uint32x4_t in = vld1q_u32(reinterpret_cast(input)); - currentmax = vmaxq_u32(in,currentmax); - currentoffsetmax = vmaxq_u32(vaddq_u32(in, offset), currentoffsetmax); - - uint32x4_t is_zero = veorq_u32(vmaxq_u32(currentmax, standardmax), standardmax); - if(vmaxvq_u32(is_zero) != 0) { - return result(error_code::TOO_LARGE, input - start); - } - - is_zero = veorq_u32(vmaxq_u32(currentoffsetmax, standardoffsetmax), standardoffsetmax); - if(vmaxvq_u32(is_zero) != 0) { - return result(error_code::SURROGATE, input - start); + while (pos < len) { + // try to convert the next block of 16 ASCII bytes + if (pos + 16 <= len) { // if it is safe to read 16 more bytes, check that they are ascii + uint64_t v1; + ::memcpy(&v1, data + pos, sizeof(uint64_t)); + uint64_t v2; + ::memcpy(&v2, data + pos + sizeof(uint64_t), sizeof(uint64_t)); + uint64_t v{v1 | v2}; // We are only interested in these bits: 1000 1000 1000 1000, so it makes sense to concatenate everything + if ((v & 0x8080808080808080) == 0) { // if NONE of these are set, e.g. all of them are zero, then everything is ASCII + size_t final_pos = pos + 16; + while(pos < final_pos) { + *latin_output++ = char(buf[pos]); + pos++; } - - input += 4; + continue; + } } - return result(error_code::SUCCESS, input - start); -} -/* end file src/arm64/arm_validate_utf32le.cpp */ - -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_convert_utf8_to_utf16.cpp -/* begin file src/arm64/arm_convert_utf8_to_utf16.cpp */ -// Convert up to 12 bytes from utf8 to utf16 using a mask indicating the -// end of the code points. Only the least significant 12 bits of the mask -// are accessed. -// It returns how many bytes were consumed (up to 12). -template -size_t convert_masked_utf8_to_utf16(const char *input, - uint64_t utf8_end_of_code_point_mask, - char16_t *&utf16_output) { - // we use an approach where we try to process up to 12 input bytes. - // Why 12 input bytes and not 16? Because we are concerned with the size of - // the lookup tables. Also 12 is nicely divisible by two and three. - // - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - uint8x16_t in = vld1q_u8(reinterpret_cast(input)); - const uint16_t input_utf8_end_of_code_point_mask = - utf8_end_of_code_point_mask & 0xfff; - // - // Optimization note: our main path below is load-latency dependent. Thus it is maybe - // beneficial to have fast paths that depend on branch prediction but have less latency. - // This results in more instructions but, potentially, also higher speeds. - // - // We first try a few fast paths. - if((utf8_end_of_code_point_mask & 0xffff) == 0xffff) { - // We process in chunks of 16 bytes - uint16x8_t ascii_first = vmovl_u8(vget_low_u8 (in)); - uint16x8_t ascii_second = vmovl_high_u8(in); - if (!match_system(big_endian)) { - ascii_first = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(ascii_first), swap)); - ascii_second = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(ascii_second), swap)); + // suppose it is not an all ASCII byte sequence + uint8_t leading_byte = data[pos]; // leading byte + if (leading_byte < 0b10000000) { + // converting one ASCII byte !!! + *latin_output++ = char(leading_byte); + pos++; + } else if ((leading_byte & 0b11100000) == 0b11000000) { // the first three bits indicate: + // We have a two-byte UTF-8 + if(pos + 1 >= len) { break; } // minimal bound checking + if ((data[pos + 1] & 0b11000000) != 0b10000000) { return 0; } // checks if the next byte is a valid continuation byte in UTF-8. A valid continuation byte starts with 10. + // range check - + uint32_t code_point = (leading_byte & 0b00011111) << 6 | (data[pos + 1] & 0b00111111); // assembles the Unicode code point from the two bytes. It does this by discarding the leading 110 and 10 bits from the two bytes, shifting the remaining bits of the first byte, and then combining the results with a bitwise OR operation. + *latin_output++ = char(code_point); + pos += 2; + } else { + // we may have a continuation but we do not do error checking + return 0; } - vst1q_u16(reinterpret_cast(utf16_output), ascii_first); - vst1q_u16(reinterpret_cast(utf16_output) + 8, ascii_second); - utf16_output += 16; // We wrote 16 16-bit characters. - return 16; // We consumed 16 bytes. - } - if((utf8_end_of_code_point_mask & 0xffff) == 0xaaaa) { - // We want to take 8 2-byte UTF-8 words and turn them into 8 2-byte UTF-16 words. - // There is probably a more efficient sequence, but the following might do. - uint8x16_t perm = vqtbl1q_u8(in, swap); - uint8x16_t ascii = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x7f))); - uint8x16_t highbyte = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x1f00))); - uint8x16_t composed = vorrq_u8(ascii, vreinterpretq_u8_u16(vshrq_n_u16(vreinterpretq_u16_u8(highbyte), 2))); - if (!match_system(big_endian)) composed = vqtbl1q_u8(composed, swap); - vst1q_u8(reinterpret_cast(utf16_output), composed); - utf16_output += 8; // We wrote 16 bytes, 8 code points. - return 16; } - if(input_utf8_end_of_code_point_mask == 0x924) { - // We want to take 4 3-byte UTF-8 words and turn them into 4 2-byte UTF-16 words. - // There is probably a more efficient sequence, but the following might do. -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t sh = make_uint8x16_t(2, 1, 0, 255, 5, 4, 3, 255, 8, 7, 6, 255, 11, 10, 9, 255); -#else - const uint8x16_t sh = {2, 1, 0, 255, 5, 4, 3, 255, 8, 7, 6, 255, 11, 10, 9, 255}; + return latin_output - start; +} + +} // utf8_to_latin1 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf + #endif - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x7f))); // 7 or 6 bits - uint8x16_t middlebyte = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f00))); // 5 or 6 bits - uint8x16_t middlebyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlebyte), 2)); - uint32x4_t highbyte = - vreinterpretq_u32_u8(vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x0f0000)))); // 4 bits - uint32x4_t highbyte_shifted = vshrq_n_u32(highbyte, 4); - uint32x4_t composed = - vorrq_u32(vorrq_u32(vreinterpretq_u32_u8(ascii), vreinterpretq_u32_u8(middlebyte_shifted)), highbyte_shifted); - uint16x8_t composed_repacked = vmovn_high_u32(vmovn_u32(composed), composed); - if (!match_system(big_endian)) composed_repacked = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(composed_repacked), swap)); - vst1q_u16(reinterpret_cast(utf16_output), composed_repacked); - utf16_output += 4; - return 12; - } - /// We do not have a fast path available, so we fallback. +/* end file src/scalar/utf8_to_latin1/valid_utf8_to_latin1.h */ +/* begin file src/scalar/utf16_to_latin1/valid_utf16_to_latin1.h */ +#ifndef SIMDUTF_VALID_UTF16_TO_LATIN1_H +#define SIMDUTF_VALID_UTF16_TO_LATIN1_H - const uint8_t idx = - simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][0]; - const uint8_t consumed = - simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; +namespace simdutf { +namespace scalar { +namespace { +namespace utf16_to_latin1 { +template +inline size_t convert_valid(const char16_t* buf, size_t len, char* latin_output) { + const uint16_t *data = reinterpret_cast(buf); + size_t pos = 0; + char* start{latin_output}; + uint16_t word = 0; - if (idx < 64) { - // SIX (6) input code-words - // this is a relatively easy scenario - // we process SIX (6) input code-words. The max length in bytes of six code - // words spanning between 1 and 2 bytes each is 12 bytes. - uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x7f))); - uint8x16_t highbyte = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x1f00))); - uint8x16_t composed = vorrq_u8(ascii, vreinterpretq_u8_u16(vshrq_n_u16(vreinterpretq_u16_u8(highbyte), 2))); - if (!match_system(big_endian)) composed = vqtbl1q_u8(composed, swap); - vst1q_u8(reinterpret_cast(utf16_output), composed); - utf16_output += 6; // We wrote 12 bytes, 6 code points. - } else if (idx < 145) { - // FOUR (4) input code-words - uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x7f))); // 7 or 6 bits - uint8x16_t middlebyte = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f00))); // 5 or 6 bits - uint8x16_t middlebyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlebyte), 2)); - uint32x4_t highbyte = - vreinterpretq_u32_u8(vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x0f0000)))); // 4 bits - uint32x4_t highbyte_shifted = vshrq_n_u32(highbyte, 4); - uint32x4_t composed = - vorrq_u32(vorrq_u32(vreinterpretq_u32_u8(ascii), vreinterpretq_u32_u8(middlebyte_shifted)), highbyte_shifted); - uint16x8_t composed_repacked = vmovn_high_u32(vmovn_u32(composed), composed); - if (!match_system(big_endian)) composed_repacked = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(composed_repacked), swap)); - vst1q_u16(reinterpret_cast(utf16_output), composed_repacked); - utf16_output += 4; - } else if (idx < 209) { - // TWO (2) input code-words - ////////////// - // There might be garbage inputs where a leading byte mascarades as a four-byte - // leading byte (by being followed by 3 continuation byte), but is not greater than - // 0xf0. This could trigger a buffer overflow if we only counted leading - // bytes of the form 0xf0 as generating surrogate pairs, without further UTF-8 validation. - // Thus we must be careful to ensure that only leading bytes at least as large as 0xf0 generate surrogate pairs. - // We do as at the cost of an extra mask. - ///////////// - uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x7f))); - uint8x16_t middlebyte = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f00))); - uint8x16_t middlebyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlebyte), 2)); - uint8x16_t middlehighbyte = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f0000))); - // correct for spurious high bit - uint8x16_t correct = - vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x400000)))), 1)); - middlehighbyte = veorq_u8(correct, middlehighbyte); - uint8x16_t middlehighbyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlehighbyte), 4)); - // We deliberately carry the leading four bits if they are present, we remove - // them later when computing hightenbits. - uint8x16_t highbyte = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0xff000000))); - uint8x16_t highbyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(highbyte), 6)); - // When we need to generate a surrogate pair (leading byte > 0xF0), then - // the corresponding 32-bit value in 'composed' will be greater than - // > (0xff00000>>6) or > 0x3c00000. This can be used later to identify the - // location of the surrogate pairs. - uint8x16_t composed = - vorrq_u8(vorrq_u8(ascii, middlebyte_shifted), - vorrq_u8(highbyte_shifted, middlehighbyte_shifted)); - uint32x4_t composedminus = - vsubq_u32(vreinterpretq_u32_u8(composed), vmovq_n_u32(0x10000)); - uint32x4_t lowtenbits = - vandq_u32(composedminus, vmovq_n_u32(0x3ff)); - // Notice the 0x3ff mask: - uint32x4_t hightenbits = vandq_u32(vshrq_n_u32(composedminus, 10), vmovq_n_u32(0x3ff)); - uint32x4_t lowtenbitsadd = - vaddq_u32(lowtenbits, vmovq_n_u32(0xDC00)); - uint32x4_t hightenbitsadd = - vaddq_u32(hightenbits, vmovq_n_u32(0xD800)); - uint32x4_t lowtenbitsaddshifted = vshlq_n_u32(lowtenbitsadd, 16); - uint32x4_t surrogates = - vorrq_u32(hightenbitsadd, lowtenbitsaddshifted); - uint32_t basic_buffer[4]; - uint32_t basic_buffer_swap[4]; - if (!match_system(big_endian)) { - vst1q_u32(basic_buffer_swap, vreinterpretq_u32_u8(vqtbl1q_u8(composed, swap))); - surrogates = vreinterpretq_u32_u8(vqtbl1q_u8(vreinterpretq_u8_u32(surrogates), swap)); - } - vst1q_u32(basic_buffer, vreinterpretq_u32_u8(composed)); - uint32_t surrogate_buffer[4]; - vst1q_u32(surrogate_buffer, surrogates); - for (size_t i = 0; i < 3; i++) { - if(basic_buffer[i] > 0x3c00000) { - utf16_output[0] = uint16_t(surrogate_buffer[i] & 0xffff); - utf16_output[1] = uint16_t(surrogate_buffer[i] >> 16); - utf16_output += 2; - } else { - utf16_output[0] = !match_system(big_endian) ? uint16_t(basic_buffer_swap[i]) : uint16_t(basic_buffer[i]); - utf16_output++; - } - } - } else { - // here we know that there is an error but we do not handle errors + while (pos < len) { + word = !match_system(big_endian) ? utf16::swap_bytes(data[pos]) : data[pos]; + *latin_output++ = char(word); + pos++; } - return consumed; + + return latin_output - start; } -/* end file src/arm64/arm_convert_utf8_to_utf16.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_convert_utf8_to_utf32.cpp -/* begin file src/arm64/arm_convert_utf8_to_utf32.cpp */ -// Convert up to 12 bytes from utf8 to utf32 using a mask indicating the -// end of the code points. Only the least significant 12 bits of the mask -// are accessed. -// It returns how many bytes were consumed (up to 12). -size_t convert_masked_utf8_to_utf32(const char *input, - uint64_t utf8_end_of_code_point_mask, - char32_t *&utf32_out) { - // we use an approach where we try to process up to 12 input bytes. - // Why 12 input bytes and not 16? Because we are concerned with the size of - // the lookup tables. Also 12 is nicely divisible by two and three. - // - uint32_t*& utf32_output = reinterpret_cast(utf32_out); - uint8x16_t in = vld1q_u8(reinterpret_cast(input)); - const uint16_t input_utf8_end_of_code_point_mask = - utf8_end_of_code_point_mask & 0xFFF; - // - // Optimization note: our main path below is load-latency dependent. Thus it is maybe - // beneficial to have fast paths that depend on branch prediction but have less latency. - // This results in more instructions but, potentially, also higher speeds. - // - // We first try a few fast paths. - if((utf8_end_of_code_point_mask & 0xffff) == 0xffff) { - // We process in chunks of 16 bytes - vst1q_u32(utf32_output, vmovl_u16(vget_low_u16(vmovl_u8(vget_low_u8 (in))))); - vst1q_u32(utf32_output + 4, vmovl_high_u16(vmovl_u8(vget_low_u8 (in)))); - vst1q_u32(utf32_output + 8, vmovl_u16(vget_low_u16(vmovl_high_u8(in)))); - vst1q_u32(utf32_output + 12, vmovl_high_u16(vmovl_high_u8(in))); - utf32_output += 16; // We wrote 16 16-bit characters. - return 16; // We consumed 16 bytes. - } - if((utf8_end_of_code_point_mask & 0xffff) == 0xaaaa) { - // We want to take 8 2-byte UTF-8 words and turn them into 8 4-byte UTF-32 words. - // There is probably a more efficient sequence, but the following might do. -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t sh = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); -#else - //const uint8x16_t sh = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - const uint8x16_t sh = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; -#endif - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x7f))); - uint8x16_t highbyte = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x1f00))); - uint8x16_t composed = vorrq_u8(ascii, vreinterpretq_u8_u16(vshrq_n_u16(vreinterpretq_u16_u8(highbyte), 2))); - vst1q_u32(utf32_output, vmovl_u16(vget_low_u16(vreinterpretq_u16_u8(composed)))); - vst1q_u32(utf32_output+4, vmovl_high_u16(vreinterpretq_u16_u8(composed))); - utf32_output += 8; // We wrote 32 bytes, 8 code points. - return 16; - } - if(input_utf8_end_of_code_point_mask == 0x924) { - // We want to take 4 3-byte UTF-8 words and turn them into 4 4-byte UTF-32 words. - // There is probably a more efficient sequence, but the following might do. -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t sh = make_uint8x16_t(2, 1, 0, 255, 5, 4, 3, 255, 8, 7, 6, 255, 11, 10, 9, 255); -#else - const uint8x16_t sh = {2, 1, 0, 255, 5, 4, 3, 255, 8, 7, 6, 255, 11, 10, 9, 255}; + +} // utf16_to_latin1 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf + #endif - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x7f))); // 7 or 6 bits - uint8x16_t middlebyte = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f00))); // 5 or 6 bits - uint8x16_t middlebyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlebyte), 2)); - uint32x4_t highbyte = - vreinterpretq_u32_u8(vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x0f0000)))); // 4 bits - uint32x4_t highbyte_shifted = vshrq_n_u32(highbyte, 4); - uint32x4_t composed = - vorrq_u32(vorrq_u32(vreinterpretq_u32_u8(ascii), vreinterpretq_u32_u8(middlebyte_shifted)), highbyte_shifted); - vst1q_u32(utf32_output, composed); - utf32_output += 4; - return 12; - } - /// We do not have a fast path available, so we fallback. +/* end file src/scalar/utf16_to_latin1/valid_utf16_to_latin1.h */ +/* begin file src/scalar/utf32_to_latin1/valid_utf32_to_latin1.h */ +#ifndef SIMDUTF_VALID_UTF32_TO_LATIN1_H +#define SIMDUTF_VALID_UTF32_TO_LATIN1_H - const uint8_t idx = - simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][0]; - const uint8_t consumed = - simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; +namespace simdutf { +namespace scalar { +namespace { +namespace utf32_to_latin1 { +inline size_t convert_valid(const char32_t *buf, size_t len, char *latin1_output) { + const uint32_t *data = reinterpret_cast(buf); + char* start = latin1_output; + uint32_t utf32_char; + size_t pos = 0; - if (idx < 64) { - // SIX (6) input code-words - // this is a relatively easy scenario - // we process SIX (6) input code-words. The max length in bytes of six code - // words spanning between 1 and 2 bytes each is 12 bytes. - uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x7f))); - uint8x16_t highbyte = vandq_u8(perm, vreinterpretq_u8_u16(vmovq_n_u16(0x1f00))); - uint8x16_t composed = vorrq_u8(ascii, vreinterpretq_u8_u16(vshrq_n_u16(vreinterpretq_u16_u8(highbyte), 2))); - vst1q_u32(utf32_output, vmovl_u16(vget_low_u16(vreinterpretq_u16_u8(composed)))); - vst1q_u32(utf32_output+4, vmovl_high_u16(vreinterpretq_u16_u8(composed))); - utf32_output += 6; // We wrote 12 bytes, 6 code points. - } else if (idx < 145) { - // FOUR (4) input code-words - uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x7f))); // 7 or 6 bits - uint8x16_t middlebyte = - vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f00))); // 5 or 6 bits - uint8x16_t middlebyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlebyte), 2)); - uint32x4_t highbyte = - vreinterpretq_u32_u8(vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x0f0000)))); // 4 bits - uint32x4_t highbyte_shifted = vshrq_n_u32(highbyte, 4); - uint32x4_t composed = - vorrq_u32(vorrq_u32(vreinterpretq_u32_u8(ascii), vreinterpretq_u32_u8(middlebyte_shifted)), highbyte_shifted); - vst1q_u32(utf32_output, composed); - utf32_output += 4; - } else if (idx < 209) { - // TWO (2) input code-words - uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); - uint8x16_t perm = vqtbl1q_u8(in, sh); - uint8x16_t ascii = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x7f))); - uint8x16_t middlebyte = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f00))); - uint8x16_t middlebyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlebyte), 2)); - uint8x16_t middlehighbyte = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x3f0000))); - // correct for spurious high bit - uint8x16_t correct = - vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x400000)))), 1)); - middlehighbyte = veorq_u8(correct, middlehighbyte); - uint8x16_t middlehighbyte_shifted = vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(middlehighbyte), 4)); - uint8x16_t highbyte = vandq_u8(perm, vreinterpretq_u8_u32(vmovq_n_u32(0x07000000))); - uint8x16_t highbyte_shifted =vreinterpretq_u8_u32(vshrq_n_u32(vreinterpretq_u32_u8(highbyte), 6)); - uint8x16_t composed = - vorrq_u8(vorrq_u8(ascii, middlebyte_shifted), - vorrq_u8(highbyte_shifted, middlehighbyte_shifted)); - vst1q_u32(utf32_output, vreinterpretq_u32_u8(composed)); - utf32_output += 3; - } else { - // here we know that there is an error but we do not handle errors + while (pos < len) { + utf32_char = (uint32_t)data[pos]; + + if (pos + 2 <= len) { // if it is safe to read 8 more bytes, check that they are Latin1 + uint64_t v; + ::memcpy(&v, data + pos, sizeof(uint64_t)); + if ((v & 0xFFFFFF00FFFFFF00) == 0) { + *latin1_output++ = char(buf[pos]); + *latin1_output++ = char(buf[pos+1]); + pos += 2; + continue; + } } - return consumed; -} -/* end file src/arm64/arm_convert_utf8_to_utf32.cpp */ + *latin1_output++ = (char)(utf32_char & 0xFF); + pos++; -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_convert_utf16_to_utf8.cpp -/* begin file src/arm64/arm_convert_utf16_to_utf8.cpp */ -/* - The vectorized algorithm works on single SSE register i.e., it - loads eight 16-bit words. + } + return latin1_output - start; +} - We consider three cases: - 1. an input register contains no surrogates and each value - is in range 0x0000 .. 0x07ff. - 2. an input register contains no surrogates and values are - is in range 0x0000 .. 0xffff. - 3. an input register contains surrogates --- i.e. codepoints - can have 16 or 32 bits. - Ad 1. +} // utf32_to_latin1 namespace +} // unnamed namespace +} // namespace scalar +} // namespace simdutf - When values are less than 0x0800, it means that a 16-bit words - can be converted into: 1) single UTF8 byte (when it's an ASCII - char) or 2) two UTF8 bytes. +#endif +/* end file src/scalar/utf32_to_latin1/valid_utf32_to_latin1.h */ - For this case we do only some shuffle to obtain these 2-byte - codes and finally compress the whole SSE register with a single - shuffle. - We need 256-entry lookup table to get a compression pattern - and the number of output bytes in the compressed vector register. - Each entry occupies 17 bytes. - Ad 2. - - When values fit in 16-bit words, but are above 0x07ff, then - a single word may produce one, two or three UTF8 bytes. - - We prepare data for all these three cases in two registers. - The first register contains lower two UTF8 bytes (used in all - cases), while the second one contains just the third byte for - the three-UTF8-bytes case. - - Finally these two registers are interleaved forming eight-element - array of 32-bit values. The array spans two SSE registers. - The bytes from the registers are compressed using two shuffles. - - We need 256-entry lookup table to get a compression pattern - and the number of output bytes in the compressed vector register. - Each entry occupies 17 bytes. +SIMDUTF_PUSH_DISABLE_WARNINGS +SIMDUTF_DISABLE_UNDESIRED_WARNINGS - To summarize: - - We need two 256-entry tables that have 8704 bytes in total. -*/ -/* - Returns a pair: the first unprocessed byte from buf and utf8_output - A scalar routing should carry on the conversion of the tail. -*/ -template -std::pair arm_convert_utf16_to_utf8(const char16_t* buf, size_t len, char* utf8_out) { - uint8_t * utf8_output = reinterpret_cast(utf8_out); - const char16_t* end = buf + len; +#if SIMDUTF_IMPLEMENTATION_ARM64 +/* begin file src/arm64/implementation.cpp */ +/* begin file src/simdutf/arm64/begin.h */ +// redefining SIMDUTF_IMPLEMENTATION to "arm64" +// #define SIMDUTF_IMPLEMENTATION arm64 +/* end file src/simdutf/arm64/begin.h */ +namespace simdutf { +namespace arm64 { +namespace { +#ifndef SIMDUTF_ARM64_H +#error "arm64.h must be included" +#endif +using namespace simd; - const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); - const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); - const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); +simdutf_really_inline bool is_ascii(const simd8x64& input) { + simd8 bits = input.reduce_or(); + return bits.max_val() < 0b10000000u; +} - while (buf + 16 <= end) { - uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - in = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), swap)); - } - if(vmaxvq_u16(in) <= 0x7F) { // ASCII fast path!!!! - // It is common enough that we have sequences of 16 consecutive ASCII characters. - uint16x8_t nextin = vld1q_u16(reinterpret_cast(buf) + 8); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - nextin = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(nextin), swap)); - } - if(vmaxvq_u16(nextin) > 0x7F) { - // 1. pack the bytes - // obviously suboptimal. - uint8x8_t utf8_packed = vmovn_u16(in); - // 2. store (8 bytes) - vst1_u8(utf8_output, utf8_packed); - // 3. adjust pointers - buf += 8; - utf8_output += 8; - in = nextin; - } else { - // 1. pack the bytes - // obviously suboptimal. - uint8x16_t utf8_packed = vmovn_high_u16(vmovn_u16(in), nextin); - // 2. store (16 bytes) - vst1q_u8(utf8_output, utf8_packed); - // 3. adjust pointers - buf += 16; - utf8_output += 16; - continue; // we are done for this round! - } - } +simdutf_unused simdutf_really_inline simd8 must_be_continuation(const simd8 prev1, const simd8 prev2, const simd8 prev3) { + simd8 is_second_byte = prev1 >= uint8_t(0b11000000u); + simd8 is_third_byte = prev2 >= uint8_t(0b11100000u); + simd8 is_fourth_byte = prev3 >= uint8_t(0b11110000u); + // Use ^ instead of | for is_*_byte, because ^ is commutative, and the caller is using ^ as well. + // This will work fine because we only have to report errors for cases with 0-1 lead bytes. + // Multiple lead bytes implies 2 overlapping multibyte characters, and if that happens, there is + // guaranteed to be at least *one* lead byte that is part of only 1 other multibyte character. + // The error will be detected there. + return is_second_byte ^ is_third_byte ^ is_fourth_byte; +} - if (vmaxvq_u16(in) <= 0x7FF) { - // 1. prepare 2-byte values - // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 - // expected output : [110a|aaaa|10bb|bbbb] x 8 - const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); - const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); +simdutf_really_inline simd8 must_be_2_3_continuation(const simd8 prev2, const simd8 prev3) { + simd8 is_third_byte = prev2 >= uint8_t(0b11100000u); + simd8 is_fourth_byte = prev3 >= uint8_t(0b11110000u); + return is_third_byte ^ is_fourth_byte; +} - // t0 = [000a|aaaa|bbbb|bb00] - const uint16x8_t t0 = vshlq_n_u16(in, 2); - // t1 = [000a|aaaa|0000|0000] - const uint16x8_t t1 = vandq_u16(t0, v_1f00); - // t2 = [0000|0000|00bb|bbbb] - const uint16x8_t t2 = vandq_u16(in, v_003f); - // t3 = [000a|aaaa|00bb|bbbb] - const uint16x8_t t3 = vorrq_u16(t1, t2); - // t4 = [110a|aaaa|10bb|bbbb] - const uint16x8_t t4 = vorrq_u16(t3, v_c080); - // 2. merge ASCII and 2-byte codewords - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); - const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, in, t4)); - // 3. prepare bitmask for 8-bit lookup +// common functions for utf8 conversions +simdutf_really_inline uint16x4_t convert_utf8_3_byte_to_utf16(uint8x16_t in) { + // Low half contains 10cccccc|1110aaaa + // High half contains 10bbbbbb|10bbbbbb #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080); + const uint8x16_t sh = make_uint8x16_t(0, 2, 3, 5, 6, 8, 9, 11, 1, 1, 4, 4, 7, 7, 10, 10); #else - const uint16x8_t mask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080 }; + const uint8x16_t sh = {0, 2, 3, 5, 6, 8, 9, 11, 1, 1, 4, 4, 7, 7, 10, 10}; #endif - uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); - // 4. pack the bytes - const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; - const uint8x16_t shuffle = vld1q_u8(row + 1); - const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); + uint8x16_t perm = vqtbl1q_u8(in, sh); + // Split into half vectors. + // 10cccccc|1110aaaa + uint8x8_t perm_low = vget_low_u8(perm); // no-op + // 10bbbbbb|10bbbbbb + uint8x8_t perm_high = vget_high_u8(perm); + // xxxxxxxx 10bbbbbb + uint16x4_t mid = vreinterpret_u16_u8(perm_high); // no-op + // xxxxxxxx 1110aaaa + uint16x4_t high = vreinterpret_u16_u8(perm_low); // no-op + // Assemble with shift left insert. + // xxxxxxaa aabbbbbb + uint16x4_t mid_high = vsli_n_u16(mid, high, 6); + // (perm_low << 8) | (perm_low >> 8) + // xxxxxxxx 10cccccc + uint16x4_t low = vreinterpret_u16_u8(vrev16_u8(perm_low)); + // Shift left insert into the low bits + // aaaabbbb bbcccccc + uint16x4_t composed = vsli_n_u16(low, mid_high, 6); + return composed; +} + +simdutf_really_inline uint16x8_t convert_utf8_2_byte_to_utf16(uint8x16_t in) { + // Converts 6 2 byte UTF-8 characters to 6 UTF-16 characters. + // Technically this calculates 8, but 6 does better and happens more often + // (The languages which use these codepoints use ASCII spaces so 8 would need to be + // in the middle of a very long word). + + // 10bbbbbb 110aaaaa + uint16x8_t upper = vreinterpretq_u16_u8(in); + // (in << 8) | (in >> 8) + // 110aaaaa 10bbbbbb + uint16x8_t lower = vreinterpretq_u16_u8(vrev16q_u8(in)); + // 00000000 000aaaaa + uint16x8_t upper_masked = vandq_u16(upper, vmovq_n_u16(0x1F)); + // Assemble with shift left insert. + // 00000aaa aabbbbbb + uint16x8_t composed = vsliq_n_u16(lower, upper_masked, 6); + return composed; +} + +simdutf_really_inline uint16x8_t convert_utf8_1_to_2_byte_to_utf16(uint8x16_t in, size_t shufutf8_idx) { + // Converts 6 1-2 byte UTF-8 characters to 6 UTF-16 characters. + // This is a relatively easy scenario + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. + uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[shufutf8_idx])); + // Shuffle + // 1 byte: 00000000 0bbbbbbb + // 2 byte: 110aaaaa 10bbbbbb + uint16x8_t perm = vreinterpretq_u16_u8(vqtbl1q_u8(in, sh)); + // Mask + // 1 byte: 00000000 0bbbbbbb + // 2 byte: 00000000 00bbbbbb + uint16x8_t ascii = vandq_u16(perm, vmovq_n_u16(0x7f)); // 6 or 7 bits + // 1 byte: 00000000 00000000 + // 2 byte: 000aaaaa 00000000 + uint16x8_t highbyte = vandq_u16(perm, vmovq_n_u16(0x1f00)); // 5 bits + // Combine with a shift right accumulate + // 1 byte: 00000000 0bbbbbbb + // 2 byte: 00000aaa aabbbbbb + uint16x8_t composed = vsraq_n_u16(ascii, highbyte, 2); + return composed; +} - // 5. store bytes - vst1q_u8(utf8_output, utf8_packed); +/* begin file src/arm64/arm_detect_encodings.cpp */ +template +// len is known to be a multiple of 2 when this is called +int arm_detect_encodings(const char * buf, size_t len) { + const char* start = buf; + const char* end = buf + len; - // 6. adjust pointers - buf += 8; - utf8_output += row[0]; - continue; + bool is_utf8 = true; + bool is_utf16 = true; + bool is_utf32 = true; - } - const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); - // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, - // it is likely an uncommon occurrence. - if (vmaxvq_u16(surrogates_bytemask) == 0) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); -#else - const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; -#endif - /* In this branch we handle three cases: - 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte - 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes - 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes + int out = 0; - We expand the input word (16-bit) into two words (32-bit), thus - we have room for four bytes. However, we need five distinct bit - layouts. Note that the last byte in cases #2 and #3 is the same. + const auto v_d8 = simd8::splat(0xd8); + const auto v_f8 = simd8::splat(0xf8); - We precompute byte 1 for case #1 and the common byte for cases #2 & #3 - in register t2. + uint32x4_t currentmax = vmovq_n_u32(0x0); - We precompute byte 1 for case #3 and -- **conditionally** -- precompute - either byte 1 for case #2 or byte 2 for case #3. Note that they - differ by exactly one bit. + checker check{}; - Finally from these two words we build proper UTF-8 sequence, taking - into account the case (i.e, the number of bytes to write). - */ - /** - * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: - * t2 => [0ccc|cccc] [10cc|cccc] - * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) - */ -#define simdutf_vec(x) vmovq_n_u16(static_cast(x)) - // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] - const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), vreinterpretq_u8_u16(dup_even))); - // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] - const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); - // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] - const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); + while(buf + 64 <= end) { + uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); + uint16x8_t secondin = vld1q_u16(reinterpret_cast(buf) + simd16::SIZE / sizeof(char16_t)); + uint16x8_t thirdin = vld1q_u16(reinterpret_cast(buf) + 2*simd16::SIZE / sizeof(char16_t)); + uint16x8_t fourthin = vld1q_u16(reinterpret_cast(buf) + 3*simd16::SIZE / sizeof(char16_t)); - // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] - const uint16x8_t s0 = vshrq_n_u16(in, 12); - // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] - const uint16x8_t s1 = vandq_u16(in, simdutf_vec(0b0000111111000000)); - // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] - const uint16x8_t s1s = vshlq_n_u16(s1, 2); - // [00bb|bbbb|0000|aaaa] - const uint16x8_t s2 = vorrq_u16(s0, s1s); - // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] - const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); - const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); - const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(in, v_07ff); - const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); - const uint16x8_t s4 = veorq_u16(s3, m0); -#undef simdutf_vec + const auto u0 = simd16(in); + const auto u1 = simd16(secondin); + const auto u2 = simd16(thirdin); + const auto u3 = simd16(fourthin); - // 4. expand words 16-bit => 32-bit - const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); - const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); + const auto v0 = u0.shr<8>(); + const auto v1 = u1.shr<8>(); + const auto v2 = u2.shr<8>(); + const auto v3 = u3.shr<8>(); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 ); - const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 ); -#else - const uint16x8_t onemask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 }; - const uint16x8_t twomask = { 0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 }; -#endif - const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); - const uint16_t mask = vaddvq_u16(combined); - // The following fast path may or may not be beneficial. - /*if(mask == 0) { - // We only have three-byte words. Use fast path. - const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); - vst1q_u8(utf8_output, utf8_0); - utf8_output += 12; - vst1q_u8(utf8_output, utf8_1); - utf8_output += 12; - buf += 8; - continue; - }*/ - const uint8_t mask0 = uint8_t(mask); + const auto in16 = simd16::pack(v0, v1); + const auto nextin16 = simd16::pack(v2, v3); - const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; - const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); + const uint64_t surrogates_wordmask0 = ((in16 & v_f8) == v_d8).to_bitmask64(); + const uint64_t surrogates_wordmask1 = ((nextin16 & v_f8) == v_d8).to_bitmask64(); - const uint8_t mask1 = static_cast(mask >> 8); - const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; - const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); + // Check for surrogates + if (surrogates_wordmask0 != 0 || surrogates_wordmask1 != 0) { + // Cannot be UTF8 + is_utf8 = false; + // Can still be either UTF-16LE or UTF-32 depending on the positions of the surrogates + // To be valid UTF-32, a surrogate cannot be in the two most significant bytes of any 32-bit word. + // On the other hand, to be valid UTF-16LE, at least one surrogate must be in the two most significant + // bytes of a 32-bit word since they always come in pairs in UTF-16LE. + // Note that we always proceed in multiple of 4 before this point so there is no offset in 32-bit code units. - vst1q_u8(utf8_output, utf8_0); - utf8_output += row0[0]; - vst1q_u8(utf8_output, utf8_1); - utf8_output += row1[0]; + if (((surrogates_wordmask0 | surrogates_wordmask1) & 0xf0f0f0f0f0f0f0f0) != 0) { + is_utf32 = false; + // Code from arm_validate_utf16le.cpp + // Not efficient, we do not process surrogates_wordmask1 + const char16_t * input = reinterpret_cast(buf); + const char16_t* end16 = reinterpret_cast(start) + len/2; - buf += 8; - // surrogate pair(s) in a register - } else { - // Let us do a scalar fallback. - // It may seem wasteful to use scalar code, but being efficient with SIMD - // in the presence of surrogate pairs may require non-trivial tables. - size_t forward = 15; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; - if((word & 0xFF80)==0) { - *utf8_output++ = char(word); - } else if((word & 0xF800)==0) { - *utf8_output++ = char((word>>6) | 0b11000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else if((word &0xF800 ) != 0xD800) { - *utf8_output++ = char((word>>12) | 0b11100000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else { - // must be a surrogate pair - uint16_t diff = uint16_t(word - 0xD800); - uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; - k++; - uint16_t diff2 = uint16_t(next_word - 0xDC00); - if((diff | diff2) > 0x3FF) { return std::make_pair(nullptr, reinterpret_cast(utf8_output)); } - uint32_t value = (diff << 10) + diff2 + 0x10000; - *utf8_output++ = char((value>>18) | 0b11110000); - *utf8_output++ = char(((value>>12) & 0b111111) | 0b10000000); - *utf8_output++ = char(((value>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((value & 0b111111) | 0b10000000); - } - } - buf += k; - } - } // while + const auto v_fc = simd8::splat(0xfc); + const auto v_dc = simd8::splat(0xdc); - return std::make_pair(buf, reinterpret_cast(utf8_output)); -} + const uint64_t V0 = ~surrogates_wordmask0; + const auto vH0 = ((in16 & v_fc) == v_dc); + const uint64_t H0 = vH0.to_bitmask64(); -/* - Returns a pair: a result struct and utf8_output. - If there is an error, the count field of the result is the position of the error. - Otherwise, it is the position of the first unprocessed byte in buf (even if finished). - A scalar routing should carry on the conversion of the tail if needed. -*/ -template -std::pair arm_convert_utf16_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_out) { - uint8_t * utf8_output = reinterpret_cast(utf8_out); - const char16_t* start = buf; - const char16_t* end = buf + len; + const uint64_t L0 = ~H0 & surrogates_wordmask0; - const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); - const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); - const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); + const uint64_t a0 = L0 & (H0 >> 4); - while (buf + 16 <= end) { - uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - in = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), swap)); - } - if(vmaxvq_u16(in) <= 0x7F) { // ASCII fast path!!!! - // It is common enough that we have sequences of 16 consecutive ASCII characters. - uint16x8_t nextin = vld1q_u16(reinterpret_cast(buf) + 8); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - nextin = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(nextin), swap)); - } - if(vmaxvq_u16(nextin) > 0x7F) { - // 1. pack the bytes - // obviously suboptimal. - uint8x8_t utf8_packed = vmovn_u16(in); - // 2. store (8 bytes) - vst1_u8(utf8_output, utf8_packed); - // 3. adjust pointers - buf += 8; - utf8_output += 8; - in = nextin; - } else { - // 1. pack the bytes - // obviously suboptimal. - uint8x16_t utf8_packed = vmovn_high_u16(vmovn_u16(in), nextin); - // 2. store (16 bytes) - vst1q_u8(utf8_output, utf8_packed); - // 3. adjust pointers - buf += 16; - utf8_output += 16; - continue; // we are done for this round! - } - } + const uint64_t b0 = a0 << 4; - if (vmaxvq_u16(in) <= 0x7FF) { - // 1. prepare 2-byte values - // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 - // expected output : [110a|aaaa|10bb|bbbb] x 8 - const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); - const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); + const uint64_t c0 = V0 | a0 | b0; + if (c0 == ~0ull) { + input += 16; + } else if (c0 == 0xfffffffffffffffull) { + input += 15; + } else { + is_utf16 = false; + break; + } - // t0 = [000a|aaaa|bbbb|bb00] - const uint16x8_t t0 = vshlq_n_u16(in, 2); - // t1 = [000a|aaaa|0000|0000] - const uint16x8_t t1 = vandq_u16(t0, v_1f00); - // t2 = [0000|0000|00bb|bbbb] - const uint16x8_t t2 = vandq_u16(in, v_003f); - // t3 = [000a|aaaa|00bb|bbbb] - const uint16x8_t t3 = vorrq_u16(t1, t2); - // t4 = [110a|aaaa|10bb|bbbb] - const uint16x8_t t4 = vorrq_u16(t3, v_c080); - // 2. merge ASCII and 2-byte codewords - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); - const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, in, t4)); - // 3. prepare bitmask for 8-bit lookup -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080); -#else - const uint16x8_t mask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080 }; -#endif - uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); - // 4. pack the bytes - const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; - const uint8x16_t shuffle = vld1q_u8(row + 1); - const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); + while (input + 16 < end16) { + const auto in0 = simd16(input); + const auto in1 = simd16(input + simd16::SIZE / sizeof(char16_t)); + const auto t0 = in0.shr<8>(); + const auto t1 = in1.shr<8>(); + const simd8 in_16 = simd16::pack(t0, t1); - // 5. store bytes - vst1q_u8(utf8_output, utf8_packed); + const uint64_t surrogates_wordmask = ((in_16 & v_f8) == v_d8).to_bitmask64(); + if(surrogates_wordmask == 0) { + input += 16; + } else { + const uint64_t V = ~surrogates_wordmask; - // 6. adjust pointers - buf += 8; - utf8_output += row[0]; - continue; + const auto vH = ((in_16 & v_fc) == v_dc); + const uint64_t H = vH.to_bitmask64(); - } - const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); - // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, - // it is likely an uncommon occurrence. - if (vmaxvq_u16(surrogates_bytemask) == 0) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); -#else - const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; -#endif - /* In this branch we handle three cases: - 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte - 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes - 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes + const uint64_t L = ~H & surrogates_wordmask; - We expand the input word (16-bit) into two words (32-bit), thus - we have room for four bytes. However, we need five distinct bit - layouts. Note that the last byte in cases #2 and #3 is the same. + const uint64_t a = L & (H >> 4); - We precompute byte 1 for case #1 and the common byte for cases #2 & #3 - in register t2. + const uint64_t b = a << 4; - We precompute byte 1 for case #3 and -- **conditionally** -- precompute - either byte 1 for case #2 or byte 2 for case #3. Note that they - differ by exactly one bit. + const uint64_t c = V | a | b; + if (c == ~0ull) { + input += 16; + } else if (c == 0xfffffffffffffffull) { + input += 15; + } else { + is_utf16 = false; + break; + } + } + } + } else { + is_utf16 = false; + // Check for UTF-32 + if (len % 4 == 0) { + const char32_t * input = reinterpret_cast(buf); + const char32_t* end32 = reinterpret_cast(start) + len/4; - Finally from these two words we build proper UTF-8 sequence, taking - into account the case (i.e, the number of bytes to write). - */ - /** - * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: - * t2 => [0ccc|cccc] [10cc|cccc] - * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) - */ -#define simdutf_vec(x) vmovq_n_u16(static_cast(x)) - // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] - const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), vreinterpretq_u8_u16(dup_even))); - // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] - const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); - // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] - const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); + // Must start checking for surrogates + uint32x4_t currentoffsetmax = vmovq_n_u32(0x0); + const uint32x4_t offset = vmovq_n_u32(0xffff2000); + const uint32x4_t standardoffsetmax = vmovq_n_u32(0xfffff7ff); - // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] - const uint16x8_t s0 = vshrq_n_u16(in, 12); - // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] - const uint16x8_t s1 = vandq_u16(in, simdutf_vec(0b0000111111000000)); - // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] - const uint16x8_t s1s = vshlq_n_u16(s1, 2); - // [00bb|bbbb|0000|aaaa] - const uint16x8_t s2 = vorrq_u16(s0, s1s); - // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] - const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); - const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); - const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(in, v_07ff); - const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); - const uint16x8_t s4 = veorq_u16(s3, m0); -#undef simdutf_vec + const uint32x4_t in32 = vreinterpretq_u32_u16(in); + const uint32x4_t secondin32 = vreinterpretq_u32_u16(secondin); + const uint32x4_t thirdin32 = vreinterpretq_u32_u16(thirdin); + const uint32x4_t fourthin32 = vreinterpretq_u32_u16(fourthin); - // 4. expand words 16-bit => 32-bit - const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); - const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); + currentmax = vmaxq_u32(in32,currentmax); + currentmax = vmaxq_u32(secondin32,currentmax); + currentmax = vmaxq_u32(thirdin32,currentmax); + currentmax = vmaxq_u32(fourthin32,currentmax); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); -#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 ); - const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 ); -#else - const uint16x8_t onemask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 }; - const uint16x8_t twomask = { 0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 }; -#endif - const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); - const uint16_t mask = vaddvq_u16(combined); - // The following fast path may or may not be beneficial. - /*if(mask == 0) { - // We only have three-byte words. Use fast path. - const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); - vst1q_u8(utf8_output, utf8_0); - utf8_output += 12; - vst1q_u8(utf8_output, utf8_1); - utf8_output += 12; - buf += 8; - continue; - }*/ - const uint8_t mask0 = uint8_t(mask); + currentoffsetmax = vmaxq_u32(vaddq_u32(in32, offset), currentoffsetmax); + currentoffsetmax = vmaxq_u32(vaddq_u32(secondin32, offset), currentoffsetmax); + currentoffsetmax = vmaxq_u32(vaddq_u32(thirdin32, offset), currentoffsetmax); + currentoffsetmax = vmaxq_u32(vaddq_u32(fourthin32, offset), currentoffsetmax); - const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; - const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); + while (input + 4 < end32) { + const uint32x4_t in_32 = vld1q_u32(reinterpret_cast(input)); + currentmax = vmaxq_u32(in_32,currentmax); + currentoffsetmax = vmaxq_u32(vaddq_u32(in_32, offset), currentoffsetmax); + input += 4; + } - const uint8_t mask1 = static_cast(mask >> 8); - const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; - const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); + uint32x4_t forbidden_words = veorq_u32(vmaxq_u32(currentoffsetmax, standardoffsetmax), standardoffsetmax); + if(vmaxvq_u32(forbidden_words) != 0) { + is_utf32 = false; + } + } else { + is_utf32 = false; + } + } + break; + } + // If no surrogate, validate under other encodings as well - vst1q_u8(utf8_output, utf8_0); - utf8_output += row0[0]; - vst1q_u8(utf8_output, utf8_1); - utf8_output += row1[0]; + // UTF-32 validation + currentmax = vmaxq_u32(vreinterpretq_u32_u16(in),currentmax); + currentmax = vmaxq_u32(vreinterpretq_u32_u16(secondin),currentmax); + currentmax = vmaxq_u32(vreinterpretq_u32_u16(thirdin),currentmax); + currentmax = vmaxq_u32(vreinterpretq_u32_u16(fourthin),currentmax); - buf += 8; - // surrogate pair(s) in a register - } else { - // Let us do a scalar fallback. - // It may seem wasteful to use scalar code, but being efficient with SIMD - // in the presence of surrogate pairs may require non-trivial tables. - size_t forward = 15; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; - if((word & 0xFF80)==0) { - *utf8_output++ = char(word); - } else if((word & 0xF800)==0) { - *utf8_output++ = char((word>>6) | 0b11000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else if((word &0xF800 ) != 0xD800) { - *utf8_output++ = char((word>>12) | 0b11100000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else { - // must be a surrogate pair - uint16_t diff = uint16_t(word - 0xD800); - uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; - k++; - uint16_t diff2 = uint16_t(next_word - 0xDC00); - if((diff | diff2) > 0x3FF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k - 1), reinterpret_cast(utf8_output)); } - uint32_t value = (diff << 10) + diff2 + 0x10000; - *utf8_output++ = char((value>>18) | 0b11110000); - *utf8_output++ = char(((value>>12) & 0b111111) | 0b10000000); - *utf8_output++ = char(((value>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((value & 0b111111) | 0b10000000); - } - } - buf += k; - } - } // while + // UTF-8 validation + // Relies on ../generic/utf8_validation/utf8_lookup4_algorithm.h + simd::simd8x64 in8(vreinterpretq_u8_u16(in), vreinterpretq_u8_u16(secondin), vreinterpretq_u8_u16(thirdin), vreinterpretq_u8_u16(fourthin)); + check.check_next_input(in8); - return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf8_output)); -} -/* end file src/arm64/arm_convert_utf16_to_utf8.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_convert_utf16_to_utf32.cpp -/* begin file src/arm64/arm_convert_utf16_to_utf32.cpp */ -/* - The vectorized algorithm works on single SSE register i.e., it - loads eight 16-bit words. + buf += 64; + } - We consider three cases: - 1. an input register contains no surrogates and each value - is in range 0x0000 .. 0x07ff. - 2. an input register contains no surrogates and values are - is in range 0x0000 .. 0xffff. - 3. an input register contains surrogates --- i.e. codepoints - can have 16 or 32 bits. + // Check which encodings are possible - Ad 1. + if (is_utf8) { + if (static_cast(buf - start) != len) { + uint8_t block[64]{}; + std::memset(block, 0x20, 64); + std::memcpy(block, buf, len - (buf - start)); + simd::simd8x64 in(block); + check.check_next_input(in); + } + if (!check.errors()) { + out |= simdutf::encoding_type::UTF8; + } + } - When values are less than 0x0800, it means that a 16-bit words - can be converted into: 1) single UTF8 byte (when it's an ASCII - char) or 2) two UTF8 bytes. + if (is_utf16 && scalar::utf16::validate(reinterpret_cast(buf), (len - (buf - start))/2)) { + out |= simdutf::encoding_type::UTF16_LE; + } - For this case we do only some shuffle to obtain these 2-byte - codes and finally compress the whole SSE register with a single - shuffle. + if (is_utf32 && (len % 4 == 0)) { + const uint32x4_t standardmax = vmovq_n_u32(0x10ffff); + uint32x4_t is_zero = veorq_u32(vmaxq_u32(currentmax, standardmax), standardmax); + if (vmaxvq_u32(is_zero) == 0 && scalar::utf32::validate(reinterpret_cast(buf), (len - (buf - start))/4)) { + out |= simdutf::encoding_type::UTF32_LE; + } + } - We need 256-entry lookup table to get a compression pattern - and the number of output bytes in the compressed vector register. - Each entry occupies 17 bytes. + return out; +} +/* end file src/arm64/arm_detect_encodings.cpp */ - Ad 2. +/* begin file src/arm64/arm_validate_utf16.cpp */ +template +const char16_t* arm_validate_utf16(const char16_t* input, size_t size) { + const char16_t* end = input + size; + const auto v_d8 = simd8::splat(0xd8); + const auto v_f8 = simd8::splat(0xf8); + const auto v_fc = simd8::splat(0xfc); + const auto v_dc = simd8::splat(0xdc); + while (input + 16 < end) { + // 0. Load data: since the validation takes into account only higher + // byte of each word, we compress the two vectors into one which + // consists only the higher bytes. + auto in0 = simd16(input); + auto in1 = simd16(input + simd16::SIZE / sizeof(char16_t)); + if (!match_system(big_endian)) { + in0 = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in0))); + in1 = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in1))); + } + const auto t0 = in0.shr<8>(); + const auto t1 = in1.shr<8>(); + const simd8 in = simd16::pack(t0, t1); + // 1. Check whether we have any 0xD800..DFFF word (0b1101'1xxx'yyyy'yyyy). + const uint64_t surrogates_wordmask = ((in & v_f8) == v_d8).to_bitmask64(); + if(surrogates_wordmask == 0) { + input += 16; + } else { + // 2. We have some surrogates that have to be distinguished: + // - low surrogates: 0b1101'10xx'yyyy'yyyy (0xD800..0xDBFF) + // - high surrogates: 0b1101'11xx'yyyy'yyyy (0xDC00..0xDFFF) + // + // Fact: high surrogate has 11th bit set (3rd bit in the higher word) - When values fit in 16-bit words, but are above 0x07ff, then - a single word may produce one, two or three UTF8 bytes. + // V - non-surrogate code units + // V = not surrogates_wordmask + const uint64_t V = ~surrogates_wordmask; - We prepare data for all these three cases in two registers. - The first register contains lower two UTF8 bytes (used in all - cases), while the second one contains just the third byte for - the three-UTF8-bytes case. + // H - word-mask for high surrogates: the six highest bits are 0b1101'11 + const auto vH = ((in & v_fc) == v_dc); + const uint64_t H = vH.to_bitmask64(); - Finally these two registers are interleaved forming eight-element - array of 32-bit values. The array spans two SSE registers. - The bytes from the registers are compressed using two shuffles. + // L - word mask for low surrogates + // L = not H and surrogates_wordmask + const uint64_t L = ~H & surrogates_wordmask; - We need 256-entry lookup table to get a compression pattern - and the number of output bytes in the compressed vector register. - Each entry occupies 17 bytes. + const uint64_t a = L & (H >> 4); // A low surrogate must be followed by high one. + // (A low surrogate placed in the 7th register's word + // is an exception we handle.) + const uint64_t b = a << 4; // Just mark that the opposite fact is hold, + // thanks to that we have only two masks for valid case. + const uint64_t c = V | a | b; // Combine all the masks into the final one. + if (c == ~0ull) { + // The whole input register contains valid UTF-16, i.e., + // either single code units or proper surrogate pairs. + input += 16; + } else if (c == 0xfffffffffffffffull) { + // The 15 lower code units of the input register contains valid UTF-16. + // The 15th word may be either a low or high surrogate. It the next + // iteration we 1) check if the low surrogate is followed by a high + // one, 2) reject sole high surrogate. + input += 15; + } else { + return nullptr; + } + } + } + return input; +} - To summarize: - - We need two 256-entry tables that have 8704 bytes in total. -*/ -/* - Returns a pair: the first unprocessed byte from buf and utf8_output - A scalar routing should carry on the conversion of the tail. -*/ template -std::pair arm_convert_utf16_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_out) { - uint32_t * utf32_output = reinterpret_cast(utf32_out); - const char16_t* end = buf + len; - - const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); - const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); +const result arm_validate_utf16_with_errors(const char16_t* input, size_t size) { + const char16_t* start = input; + const char16_t* end = input + size; - while (buf + 16 <= end) { - uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - in = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), swap)); - } + const auto v_d8 = simd8::splat(0xd8); + const auto v_f8 = simd8::splat(0xf8); + const auto v_fc = simd8::splat(0xfc); + const auto v_dc = simd8::splat(0xdc); + while (input + 16 < end) { + // 0. Load data: since the validation takes into account only higher + // byte of each word, we compress the two vectors into one which + // consists only the higher bytes. + auto in0 = simd16(input); + auto in1 = simd16(input + simd16::SIZE / sizeof(char16_t)); - const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); - // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, - // it is likely an uncommon occurrence. - if (vmaxvq_u16(surrogates_bytemask) == 0) { - // case: no surrogate pairs, extend all 16-bit words to 32-bit words - vst1q_u32(utf32_output, vmovl_u16(vget_low_u16(in))); - vst1q_u32(utf32_output+4, vmovl_high_u16(in)); - utf32_output += 8; - buf += 8; - // surrogate pair(s) in a register - } else { - // Let us do a scalar fallback. - // It may seem wasteful to use scalar code, but being efficient with SIMD - // in the presence of surrogate pairs may require non-trivial tables. - size_t forward = 15; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; - if((word &0xF800 ) != 0xD800) { - *utf32_output++ = char32_t(word); + if (!match_system(big_endian)) { + in0 = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in0))); + in1 = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in1))); + } + const auto t0 = in0.shr<8>(); + const auto t1 = in1.shr<8>(); + const simd8 in = simd16::pack(t0, t1); + // 1. Check whether we have any 0xD800..DFFF word (0b1101'1xxx'yyyy'yyyy). + const uint64_t surrogates_wordmask = ((in & v_f8) == v_d8).to_bitmask64(); + if(surrogates_wordmask == 0) { + input += 16; } else { - // must be a surrogate pair - uint16_t diff = uint16_t(word - 0xD800); - uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; - k++; - uint16_t diff2 = uint16_t(next_word - 0xDC00); - if((diff | diff2) > 0x3FF) { return std::make_pair(nullptr, reinterpret_cast(utf32_output)); } - uint32_t value = (diff << 10) + diff2 + 0x10000; - *utf32_output++ = char32_t(value); + // 2. We have some surrogates that have to be distinguished: + // - low surrogates: 0b1101'10xx'yyyy'yyyy (0xD800..0xDBFF) + // - high surrogates: 0b1101'11xx'yyyy'yyyy (0xDC00..0xDFFF) + // + // Fact: high surrogate has 11th bit set (3rd bit in the higher word) + + // V - non-surrogate code units + // V = not surrogates_wordmask + const uint64_t V = ~surrogates_wordmask; + + // H - word-mask for high surrogates: the six highest bits are 0b1101'11 + const auto vH = ((in & v_fc) == v_dc); + const uint64_t H = vH.to_bitmask64(); + + // L - word mask for low surrogates + // L = not H and surrogates_wordmask + const uint64_t L = ~H & surrogates_wordmask; + + const uint64_t a = L & (H >> 4); // A low surrogate must be followed by high one. + // (A low surrogate placed in the 7th register's word + // is an exception we handle.) + const uint64_t b = a << 4; // Just mark that the opposite fact is hold, + // thanks to that we have only two masks for valid case. + const uint64_t c = V | a | b; // Combine all the masks into the final one. + if (c == ~0ull) { + // The whole input register contains valid UTF-16, i.e., + // either single code units or proper surrogate pairs. + input += 16; + } else if (c == 0xfffffffffffffffull) { + // The 15 lower code units of the input register contains valid UTF-16. + // The 15th word may be either a low or high surrogate. It the next + // iteration we 1) check if the low surrogate is followed by a high + // one, 2) reject sole high surrogate. + input += 15; + } else { + return result(error_code::SURROGATE, input - start); + } } - } - buf += k; } - } // while - return std::make_pair(buf, reinterpret_cast(utf32_output)); + return result(error_code::SUCCESS, input - start); } +/* end file src/arm64/arm_validate_utf16.cpp */ +/* begin file src/arm64/arm_validate_utf32le.cpp */ +const char32_t* arm_validate_utf32le(const char32_t* input, size_t size) { + const char32_t* end = input + size; -/* - Returns a pair: a result struct and utf8_output. - If there is an error, the count field of the result is the position of the error. - Otherwise, it is the position of the first unprocessed byte in buf (even if finished). - A scalar routing should carry on the conversion of the tail if needed. -*/ -template -std::pair arm_convert_utf16_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_out) { - uint32_t * utf32_output = reinterpret_cast(utf32_out); - const char16_t* start = buf; - const char16_t* end = buf + len; + const uint32x4_t standardmax = vmovq_n_u32(0x10ffff); + const uint32x4_t offset = vmovq_n_u32(0xffff2000); + const uint32x4_t standardoffsetmax = vmovq_n_u32(0xfffff7ff); + uint32x4_t currentmax = vmovq_n_u32(0x0); + uint32x4_t currentoffsetmax = vmovq_n_u32(0x0); - const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); - const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); + while (input + 4 < end) { + const uint32x4_t in = vld1q_u32(reinterpret_cast(input)); + currentmax = vmaxq_u32(in,currentmax); + currentoffsetmax = vmaxq_u32(vaddq_u32(in, offset), currentoffsetmax); + input += 4; + } - while (buf + 16 <= end) { - uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x16_t swap = make_uint8x16_t(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - #else - const uint8x16_t swap = {1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14}; - #endif - in = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), swap)); + uint32x4_t is_zero = veorq_u32(vmaxq_u32(currentmax, standardmax), standardmax); + if(vmaxvq_u32(is_zero) != 0) { + return nullptr; } - const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); - // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, - // it is likely an uncommon occurrence. - if (vmaxvq_u16(surrogates_bytemask) == 0) { - // case: no surrogate pairs, extend all 16-bit words to 32-bit words - vst1q_u32(utf32_output, vmovl_u16(vget_low_u16(in))); - vst1q_u32(utf32_output+4, vmovl_high_u16(in)); - utf32_output += 8; - buf += 8; - // surrogate pair(s) in a register - } else { - // Let us do a scalar fallback. - // It may seem wasteful to use scalar code, but being efficient with SIMD - // in the presence of surrogate pairs may require non-trivial tables. - size_t forward = 15; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; - if((word &0xF800 ) != 0xD800) { - *utf32_output++ = char32_t(word); - } else { - // must be a surrogate pair - uint16_t diff = uint16_t(word - 0xD800); - uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; - k++; - uint16_t diff2 = uint16_t(next_word - 0xDC00); - if((diff | diff2) > 0x3FF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k - 1), reinterpret_cast(utf32_output)); } - uint32_t value = (diff << 10) + diff2 + 0x10000; - *utf32_output++ = char32_t(value); - } - } - buf += k; + is_zero = veorq_u32(vmaxq_u32(currentoffsetmax, standardoffsetmax), standardoffsetmax); + if(vmaxvq_u32(is_zero) != 0) { + return nullptr; } - } // while - return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf32_output)); + + return input; } -/* end file src/arm64/arm_convert_utf16_to_utf32.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_convert_utf32_to_utf8.cpp -/* begin file src/arm64/arm_convert_utf32_to_utf8.cpp */ -std::pair arm_convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_out) { - uint8_t * utf8_output = reinterpret_cast(utf8_out); - const char32_t* end = buf + len; - const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); +const result arm_validate_utf32le_with_errors(const char32_t* input, size_t size) { + const char32_t* start = input; + const char32_t* end = input + size; - uint16x8_t forbidden_bytemask = vmovq_n_u16(0x0); + const uint32x4_t standardmax = vmovq_n_u32(0x10ffff); + const uint32x4_t offset = vmovq_n_u32(0xffff2000); + const uint32x4_t standardoffsetmax = vmovq_n_u32(0xfffff7ff); + uint32x4_t currentmax = vmovq_n_u32(0x0); + uint32x4_t currentoffsetmax = vmovq_n_u32(0x0); - while (buf + 16 <= end) { - uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); - uint32x4_t nextin = vld1q_u32(reinterpret_cast(buf+4)); + while (input + 4 < end) { + const uint32x4_t in = vld1q_u32(reinterpret_cast(input)); + currentmax = vmaxq_u32(in,currentmax); + currentoffsetmax = vmaxq_u32(vaddq_u32(in, offset), currentoffsetmax); - // Check if no bits set above 16th - if(vmaxvq_u32(vorrq_u32(in, nextin)) <= 0xFFFF) { - // Pack UTF-32 to UTF-16 safely (without surrogate pairs) - // Apply UTF-16 => UTF-8 routine (arm_convert_utf16_to_utf8.cpp) - uint16x8_t utf16_packed = vcombine_u16(vmovn_u32(in), vmovn_u32(nextin)); - if(vmaxvq_u16(utf16_packed) <= 0x7F) { // ASCII fast path!!!! - // 1. pack the bytes - // obviously suboptimal. - uint8x8_t utf8_packed = vmovn_u16(utf16_packed); - // 2. store (8 bytes) - vst1_u8(utf8_output, utf8_packed); - // 3. adjust pointers - buf += 8; - utf8_output += 8; - continue; // we are done for this round! - } + uint32x4_t is_zero = veorq_u32(vmaxq_u32(currentmax, standardmax), standardmax); + if(vmaxvq_u32(is_zero) != 0) { + return result(error_code::TOO_LARGE, input - start); + } - if (vmaxvq_u16(utf16_packed) <= 0x7FF) { - // 1. prepare 2-byte values - // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 - // expected output : [110a|aaaa|10bb|bbbb] x 8 - const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); - const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); - - // t0 = [000a|aaaa|bbbb|bb00] - const uint16x8_t t0 = vshlq_n_u16(utf16_packed, 2); - // t1 = [000a|aaaa|0000|0000] - const uint16x8_t t1 = vandq_u16(t0, v_1f00); - // t2 = [0000|0000|00bb|bbbb] - const uint16x8_t t2 = vandq_u16(utf16_packed, v_003f); - // t3 = [000a|aaaa|00bb|bbbb] - const uint16x8_t t3 = vorrq_u16(t1, t2); - // t4 = [110a|aaaa|10bb|bbbb] - const uint16x8_t t4 = vorrq_u16(t3, v_c080); - // 2. merge ASCII and 2-byte codewords - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); - const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, utf16_packed, t4)); - // 3. prepare bitmask for 8-bit lookup - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080); - #else - const uint16x8_t mask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080 }; - #endif - uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); - // 4. pack the bytes - const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; - const uint8x16_t shuffle = vld1q_u8(row + 1); - const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); + is_zero = veorq_u32(vmaxq_u32(currentoffsetmax, standardoffsetmax), standardoffsetmax); + if(vmaxvq_u32(is_zero) != 0) { + return result(error_code::SURROGATE, input - start); + } - // 5. store bytes - vst1q_u8(utf8_output, utf8_packed); + input += 4; + } - // 6. adjust pointers - buf += 8; - utf8_output += row[0]; - continue; + return result(error_code::SUCCESS, input - start); +} +/* end file src/arm64/arm_validate_utf32le.cpp */ - } else { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes - const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); - const uint16x8_t v_dfff = vmovq_n_u16((uint16_t)0xdfff); - forbidden_bytemask = vorrq_u16(vandq_u16(vcleq_u16(utf16_packed, v_dfff), vcgeq_u16(utf16_packed, v_d800)), forbidden_bytemask); +/* begin file src/arm64/arm_convert_latin1_to_utf8.cpp */ +/* + Returns a pair: the first unprocessed byte from buf and utf8_output + A scalar routing should carry on the conversion of the tail. +*/ +std::pair +arm_convert_latin1_to_utf8(const char *latin1_input, size_t len, + char *utf8_out) { + uint8_t *utf8_output = reinterpret_cast(utf8_out); + const char *end = latin1_input + len; + const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); + while (latin1_input + 16 <= end) { + uint8x16_t in8 = vld1q_u8(reinterpret_cast(latin1_input)); + if (vmaxvq_u8(in8) <= 0x7F) { // ASCII fast path!!!! + vst1q_u8(utf8_output, in8); + utf8_output += 16; + latin1_input += 16; + continue; + } - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); - #else - const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; - #endif - /* In this branch we handle three cases: - 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte - 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes - 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes + // We just fallback on UTF-16 code. This could be optimized/simplified + // further. + uint16x8_t in16 = vmovl_u8(vget_low_u8(in8)); + // 1. prepare 2-byte values + // input 8-bit word : [aabb|bbbb] x 8 + // expected output : [1100|00aa|10bb|bbbb] x 8 + const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); + const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); + + // t0 = [0000|00aa|bbbb|bb00] + const uint16x8_t t0 = vshlq_n_u16(in16, 2); + // t1 = [0000|00aa|0000|0000] + const uint16x8_t t1 = vandq_u16(t0, v_1f00); + // t2 = [0000|0000|00bb|bbbb] + const uint16x8_t t2 = vandq_u16(in16, v_003f); + // t3 = [0000|00aa|00bb|bbbb] + const uint16x8_t t3 = vorrq_u16(t1, t2); + // t4 = [1100|00aa|10bb|bbbb] + const uint16x8_t t4 = vorrq_u16(t3, v_c080); + // 2. merge ASCII and 2-byte codewords + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(in16, v_007f); + const uint8x16_t utf8_unpacked = + vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, in16, t4)); + // 3. prepare bitmask for 8-bit lookup +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, 0x0010, 0x0040, + 0x0002, 0x0008, 0x0020, 0x0080); +#else + const uint16x8_t mask = {0x0001, 0x0004, 0x0010, 0x0040, + 0x0002, 0x0008, 0x0020, 0x0080}; +#endif + uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); + // 4. pack the bytes + const uint8_t *row = + &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; + const uint8x16_t shuffle = vld1q_u8(row + 1); + const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); + + // 5. store bytes + vst1q_u8(utf8_output, utf8_packed); + // 6. adjust pointers + latin1_input += 8; + utf8_output += row[0]; - We expand the input word (16-bit) into two words (32-bit), thus - we have room for four bytes. However, we need five distinct bit - layouts. Note that the last byte in cases #2 and #3 is the same. + } // while - We precompute byte 1 for case #1 and the common byte for cases #2 & #3 - in register t2. + return std::make_pair(latin1_input, reinterpret_cast(utf8_output)); +} +/* end file src/arm64/arm_convert_latin1_to_utf8.cpp */ +/* begin file src/arm64/arm_convert_latin1_to_utf16.cpp */ +template +std::pair arm_convert_latin1_to_utf16(const char* buf, size_t len, char16_t* utf16_output) { + const char* end = buf + len; - We precompute byte 1 for case #3 and -- **conditionally** -- precompute - either byte 1 for case #2 or byte 2 for case #3. Note that they - differ by exactly one bit. + while (buf + 16 <= end) { + uint8x16_t in8 = vld1q_u8(reinterpret_cast(buf)); + uint16x8_t inlow = vmovl_u8(vget_low_u8(in8)); + if (!match_system(big_endian)) { inlow = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(inlow))); } + vst1q_u16(reinterpret_cast(utf16_output), inlow); + uint16x8_t inhigh = vmovl_u8(vget_high_u8(in8)); + if (!match_system(big_endian)) { inhigh = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(inhigh))); } + vst1q_u16(reinterpret_cast(utf16_output+8), inhigh); + utf16_output += 16; + buf += 16; + } - Finally from these two words we build proper UTF-8 sequence, taking - into account the case (i.e, the number of bytes to write). - */ - /** - * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: - * t2 => [0ccc|cccc] [10cc|cccc] - * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) - */ - #define simdutf_vec(x) vmovq_n_u16(static_cast(x)) - // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] - const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(utf16_packed), vreinterpretq_u8_u16(dup_even))); - // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] - const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); - // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] - const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); + return std::make_pair(buf, utf16_output); +} +/* end file src/arm64/arm_convert_latin1_to_utf16.cpp */ +/* begin file src/arm64/arm_convert_latin1_to_utf32.cpp */ +std::pair arm_convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) { + const char* end = buf + len; - // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] - const uint16x8_t s0 = vshrq_n_u16(utf16_packed, 12); - // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] - const uint16x8_t s1 = vandq_u16(utf16_packed, simdutf_vec(0b0000111111000000)); - // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] - const uint16x8_t s1s = vshlq_n_u16(s1, 2); - // [00bb|bbbb|0000|aaaa] - const uint16x8_t s2 = vorrq_u16(s0, s1s); - // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] - const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); - const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); - const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(utf16_packed, v_07ff); - const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); - const uint16x8_t s4 = veorq_u16(s3, m0); - #undef simdutf_vec + while (buf + 16 <= end) { + uint8x16_t in8 = vld1q_u8(reinterpret_cast(buf)); + uint16x8_t in8low = vmovl_u8(vget_low_u8(in8)); + uint32x4_t in16lowlow = vmovl_u16(vget_low_u16(in8low)); + uint32x4_t in16lowhigh = vmovl_u16(vget_high_u16(in8low)); + uint16x8_t in8high = vmovl_u8(vget_high_u8(in8)); + uint32x4_t in8highlow = vmovl_u16(vget_low_u16(in8high)); + uint32x4_t in8highhigh = vmovl_u16(vget_high_u16(in8high)); + vst1q_u32(reinterpret_cast(utf32_output), in16lowlow); + vst1q_u32(reinterpret_cast(utf32_output+4), in16lowhigh); + vst1q_u32(reinterpret_cast(utf32_output+8), in8highlow); + vst1q_u32(reinterpret_cast(utf32_output+12), in8highhigh); - // 4. expand words 16-bit => 32-bit - const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); - const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); + utf32_output += 16; + buf += 16; + } - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 ); - const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 ); - #else - const uint16x8_t onemask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 }; - const uint16x8_t twomask = { 0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 }; - #endif - const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); - const uint16_t mask = vaddvq_u16(combined); - // The following fast path may or may not be beneficial. - /*if(mask == 0) { - // We only have three-byte words. Use fast path. - const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); - vst1q_u8(utf8_output, utf8_0); - utf8_output += 12; - vst1q_u8(utf8_output, utf8_1); - utf8_output += 12; - buf += 8; - continue; - }*/ - const uint8_t mask0 = uint8_t(mask); - const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; - const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); + return std::make_pair(buf, utf32_output); +} +/* end file src/arm64/arm_convert_latin1_to_utf32.cpp */ - const uint8_t mask1 = static_cast(mask >> 8); - const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; - const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); +/* begin file src/arm64/arm_convert_utf8_to_utf16.cpp */ +// Convert up to 16 bytes from utf8 to utf16 using a mask indicating the +// end of the code points. Only the least significant 12 bits of the mask +// are accessed. +// It returns how many bytes were consumed (up to 16, usually 12). +template +size_t convert_masked_utf8_to_utf16(const char *input, + uint64_t utf8_end_of_code_point_mask, + char16_t *&utf16_output) { + // we use an approach where we try to process up to 12 input bytes. + // Why 12 input bytes and not 16? Because we are concerned with the size of + // the lookup tables. Also 12 is nicely divisible by two and three. + // + uint8x16_t in = vld1q_u8(reinterpret_cast(input)); + const uint16_t input_utf8_end_of_code_point_mask = + utf8_end_of_code_point_mask & 0xfff; + // + // Optimization note: our main path below is load-latency dependent. Thus it is maybe + // beneficial to have fast paths that depend on branch prediction but have less latency. + // This results in more instructions but, potentially, also higher speeds. - vst1q_u8(utf8_output, utf8_0); - utf8_output += row0[0]; - vst1q_u8(utf8_output, utf8_1); - utf8_output += row1[0]; + // We first try a few fast paths. + // The obvious first test is ASCII, which actually consumes the full 16. + if((utf8_end_of_code_point_mask & 0xFFFF) == 0xffff) { + // We process in chunks of 16 bytes + // The routine in simd.h is reused. + simd8 temp{vreinterpretq_s8_u8(in)}; + temp.store_ascii_as_utf16(utf16_output); + utf16_output += 16; // We wrote 16 16-bit characters. + return 16; // We consumed 16 bytes. + } - buf += 8; - } - // At least one 32-bit word will produce a surrogate pair in UTF-16 <=> will produce four UTF-8 bytes. - } else { - // Let us do a scalar fallback. - // It may seem wasteful to use scalar code, but being efficient with SIMD - // in the presence of surrogate pairs may require non-trivial tables. - size_t forward = 15; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint32_t word = buf[k]; - if((word & 0xFFFFFF80)==0) { - *utf8_output++ = char(word); - } else if((word & 0xFFFFF800)==0) { - *utf8_output++ = char((word>>6) | 0b11000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else if((word & 0xFFFF0000)==0) { - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, reinterpret_cast(utf8_output)); } - *utf8_output++ = char((word>>12) | 0b11100000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else { - if (word > 0x10FFFF) { return std::make_pair(nullptr, reinterpret_cast(utf8_output)); } - *utf8_output++ = char((word>>18) | 0b11110000); - *utf8_output++ = char(((word>>12) & 0b111111) | 0b10000000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } - } - buf += k; + // 3 byte sequences are the next most common, as seen in CJK, which has long sequences + // of these. + if (input_utf8_end_of_code_point_mask == 0x924) { + // We want to take 4 3-byte UTF-8 code units and turn them into 4 2-byte UTF-16 code units. + uint16x4_t composed = convert_utf8_3_byte_to_utf16(in); + // Byte swap if necessary + if (!match_system(big_endian)) { + composed = vreinterpret_u16_u8(vrev16_u8(vreinterpret_u8_u16(composed))); } - } // while - - // check for invalid input - if (vmaxvq_u16(forbidden_bytemask) != 0) { - return std::make_pair(nullptr, reinterpret_cast(utf8_output)); + vst1_u16(reinterpret_cast(utf16_output), composed); + utf16_output += 4; // We wrote 4 16-bit characters. + return 12; // We consumed 12 bytes. } - return std::make_pair(buf, reinterpret_cast(utf8_output)); -} + // 2 byte sequences occur in short bursts in languages like Greek and Russian. + if ((utf8_end_of_code_point_mask & 0xFFF) == 0xaaa) { + // We want to take 6 2-byte UTF-8 code units and turn them into 6 2-byte UTF-16 code units. + uint16x8_t composed = convert_utf8_2_byte_to_utf16(in); + // Byte swap if necessary + if (!match_system(big_endian)) { + composed = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(composed))); + } + vst1q_u16(reinterpret_cast(utf16_output), composed); -std::pair arm_convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_out) { - uint8_t * utf8_output = reinterpret_cast(utf8_out); - const char32_t* start = buf; - const char32_t* end = buf + len; + utf16_output += 6; // We wrote 6 16-bit characters. + return 12; // We consumed 12 bytes. + } - const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); + /// We do not have a fast path available, or the fast path is unimportant, so we fallback. + const uint8_t idx = + simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][0]; - while (buf + 16 <= end) { - uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); - uint32x4_t nextin = vld1q_u32(reinterpret_cast(buf+4)); + const uint8_t consumed = + simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; - // Check if no bits set above 16th - if(vmaxvq_u32(vorrq_u32(in, nextin)) <= 0xFFFF) { - // Pack UTF-32 to UTF-16 safely (without surrogate pairs) - // Apply UTF-16 => UTF-8 routine (arm_convert_utf16_to_utf8.cpp) - uint16x8_t utf16_packed = vcombine_u16(vmovn_u32(in), vmovn_u32(nextin)); - if(vmaxvq_u16(utf16_packed) <= 0x7F) { // ASCII fast path!!!! - // 1. pack the bytes - // obviously suboptimal. - uint8x8_t utf8_packed = vmovn_u16(utf16_packed); - // 2. store (8 bytes) - vst1_u8(utf8_output, utf8_packed); - // 3. adjust pointers - buf += 8; - utf8_output += 8; - continue; // we are done for this round! + if (idx < 64) { + // SIX (6) input code-code units + // Convert to UTF-16 + uint16x8_t composed = convert_utf8_1_to_2_byte_to_utf16(in, idx); + // Byte swap if necessary + if (!match_system(big_endian)) { + composed = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(composed))); + } + // Store + vst1q_u16(reinterpret_cast(utf16_output), composed); + utf16_output += 6; // We wrote 6 16-bit characters. + return consumed; + } else if (idx < 145) { + // FOUR (4) input code-code units + // UTF-16 and UTF-32 use similar algorithms, but UTF-32 skips the narrowing. + uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); + // XXX: depending on the system scalar instructions might be faster. + // 1 byte: 00000000 00000000 0ccccccc + // 2 byte: 00000000 110bbbbb 10cccccc + // 3 byte: 1110aaaa 10bbbbbb 10cccccc + uint32x4_t perm = vreinterpretq_u32_u8(vqtbl1q_u8(in, sh)); + // 1 byte: 00000000 0ccccccc + // 2 byte: xx0bbbbb x0cccccc + // 3 byte: xxbbbbbb x0cccccc + uint16x4_t lowperm = vmovn_u32(perm); + // Partially mask with bic (doesn't require a temporary register unlike and) + // The shift left insert below will clear the top bits. + // 1 byte: 00000000 00000000 + // 2 byte: xx0bbbbb 00000000 + // 3 byte: xxbbbbbb 00000000 + uint16x4_t middlebyte = vbic_u16(lowperm, vmov_n_u16(uint16_t(~0xFF00))); + // ASCII + // 1 byte: 00000000 0ccccccc + // 2+byte: 00000000 00cccccc + uint16x4_t ascii = vand_u16(lowperm, vmov_n_u16(0x7F)); + // Split into narrow vectors. + // 2 byte: 00000000 00000000 + // 3 byte: 00000000 xxxxaaaa + uint16x4_t highperm = vshrn_n_u32(perm, 16); + // Shift right accumulate the middle byte + // 1 byte: 00000000 0ccccccc + // 2 byte: 00xx0bbb bbcccccc + // 3 byte: 00xxbbbb bbcccccc + uint16x4_t middlelow = vsra_n_u16(ascii, middlebyte, 2); + // Shift left and insert the top 4 bits, overwriting the garbage + // 1 byte: 00000000 0ccccccc + // 2 byte: 00000bbb bbcccccc + // 3 byte: aaaabbbb bbcccccc + uint16x4_t composed = vsli_n_u16(middlelow, highperm, 12); + // Byte swap if necessary + if (!match_system(big_endian)) { + composed = vreinterpret_u16_u8(vrev16_u8(vreinterpret_u8_u16(composed))); + } + vst1_u16(reinterpret_cast(utf16_output), composed); + + utf16_output += 4; // We wrote 4 16-bit codepoints + return consumed; + } else if (idx < 209) { + // THREE (3) input code-code units + if (input_utf8_end_of_code_point_mask == 0x888) { + // We want to take 3 4-byte UTF-8 code units and turn them into 3 4-byte UTF-16 pairs. + // Generating surrogate pairs is a little tricky though, but it is easier when we + // can assume they are all pairs. + // This version does not use the LUT, but 4 byte sequences are less common and the + // overhead of the extra memory access is less important than the early branch overhead + // in shorter sequences. + + // Swap byte pairs + // 10dddddd 10cccccc|10bbbbbb 11110aaa + // 10cccccc 10dddddd|11110aaa 10bbbbbb + uint8x16_t swap = vrev16q_u8(in); + // Shift left 2 bits + // cccccc00 dddddd00 xxxxxxxx bbbbbb00 + uint32x4_t shift = vreinterpretq_u32_u8(vshlq_n_u8(swap, 2)); + // Create a magic number containing the low 2 bits of the trail surrogate and all the + // corrections needed to create the pair. + // UTF-8 4b prefix = -0x0000|0xF000 + // surrogate offset = -0x0000|0x0040 (0x10000 << 6) + // surrogate high = +0x0000|0xD800 + // surrogate low = +0xDC00|0x0000 + // ------------------------------- + // = +0xDC00|0xE7C0 + uint32x4_t magic = vmovq_n_u32(0xDC00E7C0); + // Generate unadjusted trail surrogate minus lowest 2 bits + // xxxxxxxx xxxxxxxx|11110aaa bbbbbb00 + uint32x4_t trail = vbslq_u32(vmovq_n_u32(0x0000FF00), vreinterpretq_u32_u8(swap), shift); + // Insert low 2 bits of trail surrogate to magic number for later + // 11011100 00000000 11100111 110000cc + uint16x8_t magic_with_low_2 = vreinterpretq_u16_u32(vsraq_n_u32(magic, shift, 30)); + // Generate lead surrogate + // xxxxcccc ccdddddd|xxxxxxxx xxxxxxxx + uint32x4_t lead = vreinterpretq_u32_u16(vsliq_n_u16(vreinterpretq_u16_u8(swap), vreinterpretq_u16_u8(in), 6)); + // Mask out lead + // 000000cc ccdddddd|xxxxxxxx xxxxxxxx + lead = vbicq_u32(lead, vmovq_n_u32(uint32_t(~0x03FFFFFF))); + // Blend pairs + // 000000cc ccdddddd|11110aaa bbbbbb00 + uint16x8_t blend = vreinterpretq_u16_u32(vbslq_u32(vmovq_n_u32(0x0000FFFF), trail, lead)); + // Add magic number to finish the result + // 110111CC CCDDDDDD|110110AA BBBBBBCC + uint16x8_t composed = vaddq_u16(blend, magic_with_low_2); + // Byte swap if necessary + if (!match_system(big_endian)) { + composed = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(composed))); } + vst1q_u16(reinterpret_cast(utf16_output), composed); + utf16_output += 6; // We 3 32-bit surrogate pairs. + return 12; // We consumed 12 bytes. + } + // 3 1-4 byte sequences + uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); - if (vmaxvq_u16(utf16_packed) <= 0x7FF) { - // 1. prepare 2-byte values - // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 - // expected output : [110a|aaaa|10bb|bbbb] x 8 - const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); - const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); - - // t0 = [000a|aaaa|bbbb|bb00] - const uint16x8_t t0 = vshlq_n_u16(utf16_packed, 2); - // t1 = [000a|aaaa|0000|0000] - const uint16x8_t t1 = vandq_u16(t0, v_1f00); - // t2 = [0000|0000|00bb|bbbb] - const uint16x8_t t2 = vandq_u16(utf16_packed, v_003f); - // t3 = [000a|aaaa|00bb|bbbb] - const uint16x8_t t3 = vorrq_u16(t1, t2); - // t4 = [110a|aaaa|10bb|bbbb] - const uint16x8_t t4 = vorrq_u16(t3, v_c080); - // 2. merge ASCII and 2-byte codewords - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); - const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, utf16_packed, t4)); - // 3. prepare bitmask for 8-bit lookup - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080); - #else - const uint16x8_t mask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0002, 0x0008, - 0x0020, 0x0080 }; - #endif - uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); - // 4. pack the bytes - const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; - const uint8x16_t shuffle = vld1q_u8(row + 1); - const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); + // 1 byte: 00000000 00000000 00000000 0ddddddd + // 3 byte: 00000000 00000000 110ccccc 10dddddd + // 3 byte: 00000000 1110bbbb 10cccccc 10dddddd + // 4 byte: 11110aaa 10bbbbbb 10cccccc 10dddddd + uint32x4_t perm = vreinterpretq_u32_u8(vqtbl1q_u8(in, sh)); + // Mask the low and middle bytes + // 00000000 00000000 00000000 0ddddddd + uint32x4_t ascii = vandq_u32(perm, vmovq_n_u32(0x7f)); + // Because the surrogates need more work, the high surrogate is computed first. + uint32x4_t middlehigh = vshlq_n_u32(perm, 2); + // 00000000 00000000 00cccccc 00000000 + uint32x4_t middlebyte = vandq_u32(perm, vmovq_n_u32(0x3F00)); + // Start assembling the sequence. Since the 4th byte is in the same position as it + // would be in a surrogate and there is no dependency, shift left instead of right. + // 3 byte: 00000000 10bbbbxx xxxxxxxx xxxxxxxx + // 4 byte: 11110aaa bbbbbbxx xxxxxxxx xxxxxxxx + uint32x4_t ab = vbslq_u32(vmovq_n_u32(0xFF000000), perm, middlehigh); + // Top 16 bits contains the high ten bits of the surrogate pair before correction + // 3 byte: 00000000 10bbbbcc|cccc0000 00000000 + // 4 byte: 11110aaa bbbbbbcc|cccc0000 00000000 - high 10 bits correct w/o correction + uint32x4_t abc = vbslq_u32(vmovq_n_u32(0xFFFC0000), ab, vshlq_n_u32(middlebyte, 4)); + // Combine the low 6 or 7 bits by a shift right accumulate + // 3 byte: 00000000 00000010|bbbbcccc ccdddddd - low 16 bits correct + // 4 byte: 00000011 110aaabb|bbbbcccc ccdddddd - low 10 bits correct w/o correction + uint32x4_t composed = vsraq_n_u32(ascii, abc, 6); + // After this is for surrogates + // Blend the low and high surrogates + // 4 byte: 11110aaa bbbbbbcc|bbbbcccc ccdddddd + uint32x4_t mixed = vbslq_u32(vmovq_n_u32(0xFFFF0000), abc, composed); + // Clear the upper 6 bits of the low surrogate. Don't clear the upper bits yet as + // 0x10000 was not subtracted from the codepoint yet. + // 4 byte: 11110aaa bbbbbbcc|000000cc ccdddddd + uint16x8_t masked_pair = + vreinterpretq_u16_u32(vbicq_u32(mixed, vmovq_n_u32(uint32_t(~0xFFFF03FF)))); + // Correct the remaining UTF-8 prefix, surrogate offset, and add the surrogate prefixes + // in one magic 16-bit addition. + // similar magic number but without the continue byte adjust and halfword swapped + // UTF-8 4b prefix = -0xF000|0x0000 + // surrogate offset = -0x0040|0x0000 (0x10000 << 6) + // surrogate high = +0xD800|0x0000 + // surrogate low = +0x0000|0xDC00 + // ----------------------------------- + // = +0xE7C0|0xDC00 + uint16x8_t magic = vreinterpretq_u16_u32(vmovq_n_u32(0xE7C0DC00)); + // 4 byte: 110110AA BBBBBBCC|110111CC CCDDDDDD - surrogate pair complete + uint32x4_t surrogates = vreinterpretq_u32_u16(vaddq_u16(masked_pair, magic)); + // If the high bit is 1 (s32 less than zero), this needs a surrogate pair + uint32x4_t is_pair = vcltzq_s32(vreinterpretq_s32_u32(perm)); + + // Select either the 4 byte surrogate pair or the 2 byte solo codepoint + // 3 byte: 0xxxxxxx xxxxxxxx|bbbbcccc ccdddddd + // 4 byte: 110110AA BBBBBBCC|110111CC CCDDDDDD + uint32x4_t selected = vbslq_u32(is_pair, surrogates, composed); + // Byte swap if necessary + if (!match_system(big_endian)) { + selected = vreinterpretq_u32_u8(vrev16q_u8(vreinterpretq_u8_u32(selected))); + } + // Attempting to shuffle and store would be complex, just scalarize. + uint32_t buffer[4]; + vst1q_u32(buffer, selected); + // Test for the top bit of the surrogate mask. + const uint32_t SURROGATE_MASK = match_system(big_endian) ? 0x80000000 : 0x00800000; + for (size_t i = 0; i < 3; i++) { + // Surrogate + if (buffer[i] & SURROGATE_MASK) { + utf16_output[0] = uint16_t(buffer[i] >> 16); + utf16_output[1] = uint16_t(buffer[i] & 0xFFFF); + utf16_output += 2; + } else { + utf16_output[0] = uint16_t(buffer[i] & 0xFFFF); + utf16_output++; + } + } + return consumed; + } else { + // here we know that there is an error but we do not handle errors + return 12; + } +} - // 5. store bytes - vst1q_u8(utf8_output, utf8_packed); +/* end file src/arm64/arm_convert_utf8_to_utf16.cpp */ +/* begin file src/arm64/arm_convert_utf8_to_utf32.cpp */ +// Convert up to 12 bytes from utf8 to utf32 using a mask indicating the +// end of the code points. Only the least significant 12 bits of the mask +// are accessed. +// It returns how many bytes were consumed (up to 12). +size_t convert_masked_utf8_to_utf32(const char *input, + uint64_t utf8_end_of_code_point_mask, + char32_t *&utf32_out) { + // we use an approach where we try to process up to 12 input bytes. + // Why 12 input bytes and not 16? Because we are concerned with the size of + // the lookup tables. Also 12 is nicely divisible by two and three. + // + uint32_t*& utf32_output = reinterpret_cast(utf32_out); + uint8x16_t in = vld1q_u8(reinterpret_cast(input)); + const uint16_t input_utf8_end_of_code_point_mask = + utf8_end_of_code_point_mask & 0xFFF; + // + // Optimization note: our main path below is load-latency dependent. Thus it is maybe + // beneficial to have fast paths that depend on branch prediction but have less latency. + // This results in more instructions but, potentially, also higher speeds. + // + // We first try a few fast paths. + if((utf8_end_of_code_point_mask & 0xffff) == 0xffff) { + // We process in chunks of 16 bytes. + // use fast implementation in src/simdutf/arm64/simd.h + // Ideally the compiler can keep the tables in registers. + simd8 temp{vreinterpretq_s8_u8(in)}; + temp.store_ascii_as_utf32_tbl(utf32_out); + utf32_output += 16; // We wrote 16 32-bit characters. + return 16; // We consumed 16 bytes. + } + if(input_utf8_end_of_code_point_mask == 0x924) { + // We want to take 4 3-byte UTF-8 code units and turn them into 4 4-byte UTF-32 code units. + // Convert to UTF-16 + uint16x4_t composed_utf16 = convert_utf8_3_byte_to_utf16(in); + // Zero extend and store via ST2 with a zero. + uint16x4x2_t interleaver = {{ composed_utf16, vmov_n_u16(0) }}; + vst2_u16(reinterpret_cast(utf32_output), interleaver); + utf32_output += 4; // We wrote 4 32-bit characters. + return 12; // We consumed 12 bytes. + } + + // 2 byte sequences occur in short bursts in languages like Greek and Russian. + if(input_utf8_end_of_code_point_mask == 0xaaa) { + // We want to take 6 2-byte UTF-8 code units and turn them into 6 4-byte UTF-32 code units. + // Convert to UTF-16 + uint16x8_t composed_utf16 = convert_utf8_2_byte_to_utf16(in); + // Zero extend and store via ST2 with a zero. + uint16x8x2_t interleaver = {{ composed_utf16, vmovq_n_u16(0) }}; + vst2q_u16(reinterpret_cast(utf32_output), interleaver); + utf32_output += 6; // We wrote 6 32-bit characters. + return 12; // We consumed 12 bytes. + } + /// Either no fast path or an unimportant fast path. - // 6. adjust pointers - buf += 8; - utf8_output += row[0]; - continue; + const uint8_t idx = + simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][0]; + const uint8_t consumed = + simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; - } else { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes - // check for invalid input - const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); - const uint16x8_t v_dfff = vmovq_n_u16((uint16_t)0xdfff); - const uint16x8_t forbidden_bytemask = vandq_u16(vcleq_u16(utf16_packed, v_dfff), vcgeq_u16(utf16_packed, v_d800)); - if (vmaxvq_u16(forbidden_bytemask) != 0) { - return std::make_pair(result(error_code::SURROGATE, buf - start), reinterpret_cast(utf8_output)); - } - - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); - #else - const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, - 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; - #endif - /* In this branch we handle three cases: - 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte - 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes - 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - - We expand the input word (16-bit) into two words (32-bit), thus - we have room for four bytes. However, we need five distinct bit - layouts. Note that the last byte in cases #2 and #3 is the same. - - We precompute byte 1 for case #1 and the common byte for cases #2 & #3 - in register t2. - - We precompute byte 1 for case #3 and -- **conditionally** -- precompute - either byte 1 for case #2 or byte 2 for case #3. Note that they - differ by exactly one bit. - - Finally from these two words we build proper UTF-8 sequence, taking - into account the case (i.e, the number of bytes to write). - */ - /** - * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: - * t2 => [0ccc|cccc] [10cc|cccc] - * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) - */ - #define simdutf_vec(x) vmovq_n_u16(static_cast(x)) - // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] - const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(utf16_packed), vreinterpretq_u8_u16(dup_even))); - // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] - const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); - // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] - const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); - - // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] - const uint16x8_t s0 = vshrq_n_u16(utf16_packed, 12); - // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] - const uint16x8_t s1 = vandq_u16(utf16_packed, simdutf_vec(0b0000111111000000)); - // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] - const uint16x8_t s1s = vshlq_n_u16(s1, 2); - // [00bb|bbbb|0000|aaaa] - const uint16x8_t s2 = vorrq_u16(s0, s1s); - // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] - const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); - const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); - const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(utf16_packed, v_07ff); - const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); - const uint16x8_t s4 = veorq_u16(s3, m0); - #undef simdutf_vec + if (idx < 64) { + // SIX (6) input code-code units + // Convert to UTF-16 + uint16x8_t composed_utf16 = convert_utf8_1_to_2_byte_to_utf16(in, idx); + // Zero extend and store with ST2 and zero + uint16x8x2_t interleaver = {{ composed_utf16, vmovq_n_u16(0) }}; + vst2q_u16(reinterpret_cast(utf32_output), interleaver); + utf32_output += 6; // We wrote 6 32-bit characters. + return consumed; + } else if (idx < 145) { + // FOUR (4) input code-code units + // UTF-16 and UTF-32 use similar algorithms, but UTF-32 skips the narrowing. + uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); + // Shuffle + // 1 byte: 00000000 00000000 0ccccccc + // 2 byte: 00000000 110bbbbb 10cccccc + // 3 byte: 1110aaaa 10bbbbbb 10cccccc + uint32x4_t perm = vreinterpretq_u32_u8(vqtbl1q_u8(in, sh)); + // Split + // 00000000 00000000 0ccccccc + uint32x4_t ascii = vandq_u32(perm, vmovq_n_u32(0x7F)); // 6 or 7 bits + // Note: unmasked + // xxxxxxxx aaaaxxxx xxxxxxxx + uint32x4_t high = vshrq_n_u32(perm, 4); // 4 bits + // Use 16 bit bic instead of and. + // The top bits will be corrected later in the bsl + // 00000000 10bbbbbb 00000000 + uint32x4_t middle = + vreinterpretq_u32_u16(vbicq_u16(vreinterpretq_u16_u32(perm), vmovq_n_u16(uint16_t(~0xff00)))); // 5 or 6 bits + // Combine low and middle with shift right accumulate + // 00000000 00xxbbbb bbcccccc + uint32x4_t lowmid = vsraq_n_u32(ascii, middle, 2); + // Insert top 4 bits from high byte with bitwise select + // 00000000 aaaabbbb bbcccccc + uint32x4_t composed = vbslq_u32(vmovq_n_u32(0x0000F000), high, lowmid); + vst1q_u32(utf32_output, composed); + utf32_output += 4; // We wrote 4 32-bit characters. + return consumed; + } else if (idx < 209) { + // THREE (3) input code-code units + if (input_utf8_end_of_code_point_mask == 0x888) { + // We want to take 3 4-byte UTF-8 code units and turn them into 3 4-byte UTF-32 code units. + // This uses the same method as the fixed 3 byte version, reversing and shift left insert. + // However, there is no need for a shuffle mask now, just rev16 and rev32. + // + // This version does not use the LUT, but 4 byte sequences are less common and the + // overhead of the extra memory access is less important than the early branch overhead + // in shorter sequences, so it comes last. + + // Swap pairs of bytes + // 10dddddd|10cccccc|10bbbbbb|11110aaa + // 10cccccc 10dddddd|11110aaa 10bbbbbb + uint16x8_t swap1 = vreinterpretq_u16_u8(vrev16q_u8(in)); + // Shift left and insert + // xxxxcccc ccdddddd|xxxxxxxa aabbbbbb + uint16x8_t merge1 = vsliq_n_u16(swap1, vreinterpretq_u16_u8(in), 6); + // Swap 16-bit lanes + // xxxxcccc ccdddddd xxxxxxxa aabbbbbb + // xxxxxxxa aabbbbbb xxxxcccc ccdddddd + uint32x4_t swap2 = vreinterpretq_u32_u16(vrev32q_u16(merge1)); + // Shift insert again + // xxxxxxxx xxxaaabb bbbbcccc ccdddddd + uint32x4_t merge2 = vsliq_n_u32(swap2, vreinterpretq_u32_u16(merge1), 12); + // Clear the garbage + // 00000000 000aaabb bbbbcccc ccdddddd + uint32x4_t composed = vandq_u32(merge2, vmovq_n_u32(0x1FFFFF)); + // Store + vst1q_u32(utf32_output, composed); + + utf32_output += 3; // We wrote 3 32-bit characters. + return 12; // We consumed 12 bytes. + } + // Unlike UTF-16, doing a fast codepath doesn't have nearly as much benefit due to + // surrogates no longer being involved. + uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); + // 1 byte: 00000000 00000000 00000000 0ddddddd + // 2 byte: 00000000 00000000 110ccccc 10dddddd + // 3 byte: 00000000 1110bbbb 10cccccc 10dddddd + // 4 byte: 11110aaa 10bbbbbb 10cccccc 10dddddd + uint32x4_t perm = vreinterpretq_u32_u8(vqtbl1q_u8(in, sh)); + // Ascii + uint32x4_t ascii = vandq_u32(perm, vmovq_n_u32(0x7F)); + uint32x4_t middle = vandq_u32(perm, vmovq_n_u32(0x3f00)); + // When converting the way we do, the 3 byte prefix will be interpreted as the + // 18th bit being set, since the code would interpret the lead byte (0b1110bbbb) + // as a continuation byte (0b10bbbbbb). To fix this, we can either xor or do an + // 8 bit add of the 6th bit shifted right by 1. Since NEON has shift right accumulate, + // we use that. + // 4 byte 3 byte + // 10bbbbbb 1110bbbb + // 00000000 01000000 6th bit + // 00000000 00100000 shift right + // 10bbbbbb 0000bbbb add + // 00bbbbbb 0000bbbb mask + uint8x16_t correction = + vreinterpretq_u8_u32(vandq_u32(perm, vmovq_n_u32(0x00400000))); + uint32x4_t corrected = + vreinterpretq_u32_u8(vsraq_n_u8(vreinterpretq_u8_u32(perm), correction, 1)); + // 00000000 00000000 0000cccc ccdddddd + uint32x4_t cd = vsraq_n_u32(ascii, middle, 2); + // Insert twice + // xxxxxxxx xxxaaabb bbbbxxxx xxxxxxxx + uint32x4_t ab = vbslq_u32(vmovq_n_u32(0x01C0000), vshrq_n_u32(corrected, 6), vshrq_n_u32(corrected, 4)); + // 00000000 000aaabb bbbbcccc ccdddddd + uint32x4_t composed = vbslq_u32(vmovq_n_u32(0xFFE00FFF), cd, ab); + // Store + vst1q_u32(utf32_output, composed); + utf32_output += 3; // We wrote 3 32-bit characters. + return consumed; + } else { + // here we know that there is an error but we do not handle errors + return 12; + } +} +/* end file src/arm64/arm_convert_utf8_to_utf32.cpp */ +/* begin file src/arm64/arm_convert_utf8_to_latin1.cpp */ +// Convert up to 16 bytes from utf8 to utf16 using a mask indicating the +// end of the code points. Only the least significant 12 bits of the mask +// are accessed. +// It returns how many bytes were consumed (up to 16, usually 12). +size_t convert_masked_utf8_to_latin1(const char *input, + uint64_t utf8_end_of_code_point_mask, + char *&latin1_output) { + // we use an approach where we try to process up to 12 input bytes. + // Why 12 input bytes and not 16? Because we are concerned with the size of + // the lookup tables. Also 12 is nicely divisible by two and three. + // + uint8x16_t in = vld1q_u8(reinterpret_cast(input)); + const uint16_t input_utf8_end_of_code_point_mask = + utf8_end_of_code_point_mask & 0xfff; + // + // Optimization note: our main path below is load-latency dependent. Thus it is maybe + // beneficial to have fast paths that depend on branch prediction but have less latency. + // This results in more instructions but, potentially, also higher speeds. - // 4. expand words 16-bit => 32-bit - const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); - const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); + // We first try a few fast paths. + // The obvious first test is ASCII, which actually consumes the full 16. + if((utf8_end_of_code_point_mask & 0xFFFF) == 0xffff) { + // We process in chunks of 16 bytes + vst1q_u8(reinterpret_cast(latin1_output), in); + latin1_output += 16; // We wrote 16 18-bit characters. + return 16; // We consumed 16 bytes. + } + /// We do not have a fast path available, or the fast path is unimportant, so we fallback. + const uint8_t idx = + simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][0]; - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle - const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); - const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 ); - const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 ); - #else - const uint16x8_t onemask = { 0x0001, 0x0004, - 0x0010, 0x0040, - 0x0100, 0x0400, - 0x1000, 0x4000 }; - const uint16x8_t twomask = { 0x0002, 0x0008, - 0x0020, 0x0080, - 0x0200, 0x0800, - 0x2000, 0x8000 }; - #endif - const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); - const uint16_t mask = vaddvq_u16(combined); - // The following fast path may or may not be beneficial. - /*if(mask == 0) { - // We only have three-byte words. Use fast path. - const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); - vst1q_u8(utf8_output, utf8_0); - utf8_output += 12; - vst1q_u8(utf8_output, utf8_1); - utf8_output += 12; - buf += 8; - continue; - }*/ - const uint8_t mask0 = uint8_t(mask); + const uint8_t consumed = + simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; + // this indicates an invalid input: + if(idx >= 64) { return consumed; } + // Here we should have (idx < 64), if not, there is a bug in the validation or elsewhere. + // SIX (6) input code-code units + // this is a relatively easy scenario + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. + // Converts 6 1-2 byte UTF-8 characters to 6 UTF-16 characters. + // This is a relatively easy scenario + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. + uint8x16_t sh = vld1q_u8(reinterpret_cast(simdutf::tables::utf8_to_utf16::shufutf8[idx])); + // Shuffle + // 1 byte: 00000000 0bbbbbbb + // 2 byte: 110aaaaa 10bbbbbb + uint16x8_t perm = vreinterpretq_u16_u8(vqtbl1q_u8(in, sh)); + // Mask + // 1 byte: 00000000 0bbbbbbb + // 2 byte: 00000000 00bbbbbb + uint16x8_t ascii = vandq_u16(perm, vmovq_n_u16(0x7f)); // 6 or 7 bits + // 1 byte: 00000000 00000000 + // 2 byte: 000aaaaa 00000000 + uint16x8_t highbyte = vandq_u16(perm, vmovq_n_u16(0x1f00)); // 5 bits + // Combine with a shift right accumulate + // 1 byte: 00000000 0bbbbbbb + // 2 byte: 00000aaa aabbbbbb + uint16x8_t composed = vsraq_n_u16(ascii, highbyte, 2); + // writing 8 bytes even though we only care about the first 6 bytes. + uint8x8_t latin1_packed = vmovn_u16(composed); + vst1_u8(reinterpret_cast(latin1_output), latin1_packed); + latin1_output += 6; // We wrote 6 bytes. + return consumed; +} - const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; - const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); - const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); +/* end file src/arm64/arm_convert_utf8_to_latin1.cpp */ - const uint8_t mask1 = static_cast(mask >> 8); - const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; - const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); - const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); +/* begin file src/arm64/arm_convert_utf16_to_latin1.cpp */ - vst1q_u8(utf8_output, utf8_0); - utf8_output += row0[0]; - vst1q_u8(utf8_output, utf8_1); - utf8_output += row1[0]; +template +std::pair arm_convert_utf16_to_latin1(const char16_t* buf, size_t len, char* latin1_output) { + const char16_t* end = buf + len; + while (buf + 8 <= end) { + uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); + if (!match_system(big_endian)) { in = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in))); } + if (vmaxvq_u16(in) <= 0xff) { + // 1. pack the bytes + uint8x8_t latin1_packed = vmovn_u16(in); + // 2. store (8 bytes) + vst1_u8(reinterpret_cast(latin1_output), latin1_packed); + // 3. adjust pointers + buf += 8; + latin1_output += 8; + } else { + return std::make_pair(nullptr, reinterpret_cast(latin1_output)); + } + } // while + return std::make_pair(buf, latin1_output); +} - buf += 8; - } - // At least one 32-bit word will produce a surrogate pair in UTF-16 <=> will produce four UTF-8 bytes. +template +std::pair arm_convert_utf16_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) { + const char16_t* start = buf; + const char16_t* end = buf + len; + while (buf + 8 <= end) { + uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); + if (!match_system(big_endian)) { in = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in))); } + if (vmaxvq_u16(in) <= 0xff) { + // 1. pack the bytes + uint8x8_t latin1_packed = vmovn_u16(in); + // 2. store (8 bytes) + vst1_u8(reinterpret_cast(latin1_output), latin1_packed); + // 3. adjust pointers + buf += 8; + latin1_output += 8; } else { // Let us do a scalar fallback. - // It may seem wasteful to use scalar code, but being efficient with SIMD - // in the presence of surrogate pairs may require non-trivial tables. - size_t forward = 15; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint32_t word = buf[k]; - if((word & 0xFFFFFF80)==0) { - *utf8_output++ = char(word); - } else if((word & 0xFFFFF800)==0) { - *utf8_output++ = char((word>>6) | 0b11000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else if((word & 0xFFFF0000)==0) { - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), reinterpret_cast(utf8_output)); } - *utf8_output++ = char((word>>12) | 0b11100000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); + for(int k = 0; k < 8; k++) { + uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; + if(word <= 0xff) { + *latin1_output++ = char(word); } else { - if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), reinterpret_cast(utf8_output)); } - *utf8_output++ = char((word>>18) | 0b11110000); - *utf8_output++ = char(((word>>12) & 0b111111) | 0b10000000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); + return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), latin1_output); } } - buf += k; } } // while - - return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf8_output)); + return std::make_pair(result(error_code::SUCCESS, buf - start), latin1_output); } -/* end file src/arm64/arm_convert_utf32_to_utf8.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=arm64/arm_convert_utf32_to_utf16.cpp -/* begin file src/arm64/arm_convert_utf32_to_utf16.cpp */ -template -std::pair arm_convert_utf32_to_utf16(const char32_t* buf, size_t len, char16_t* utf16_out) { - uint16_t * utf16_output = reinterpret_cast(utf16_out); - const char32_t* end = buf + len; +/* end file src/arm64/arm_convert_utf16_to_latin1.cpp */ +/* begin file src/arm64/arm_convert_utf16_to_utf8.cpp */ +/* + The vectorized algorithm works on single SSE register i.e., it + loads eight 16-bit code units. - uint16x4_t forbidden_bytemask = vmov_n_u16(0x0); + We consider three cases: + 1. an input register contains no surrogates and each value + is in range 0x0000 .. 0x07ff. + 2. an input register contains no surrogates and values are + is in range 0x0000 .. 0xffff. + 3. an input register contains surrogates --- i.e. codepoints + can have 16 or 32 bits. - while(buf + 4 <= end) { - uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); + Ad 1. - // Check if no bits set above 16th - if(vmaxvq_u32(in) <= 0xFFFF) { - uint16x4_t utf16_packed = vmovn_u32(in); + When values are less than 0x0800, it means that a 16-bit code unit + can be converted into: 1) single UTF8 byte (when it's an ASCII + char) or 2) two UTF8 bytes. - const uint16x4_t v_d800 = vmov_n_u16((uint16_t)0xd800); - const uint16x4_t v_dfff = vmov_n_u16((uint16_t)0xdfff); - forbidden_bytemask = vorr_u16(vand_u16(vcle_u16(utf16_packed, v_dfff), vcge_u16(utf16_packed, v_d800)), forbidden_bytemask); + For this case we do only some shuffle to obtain these 2-byte + codes and finally compress the whole SSE register with a single + shuffle. - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x8_t swap = make_uint8x8_t(1, 0, 3, 2, 5, 4, 7, 6); - #else - const uint8x8_t swap = {1, 0, 3, 2, 5, 4, 7, 6}; - #endif - utf16_packed = vreinterpret_u16_u8(vtbl1_u8(vreinterpret_u8_u16(utf16_packed), swap)); - } - vst1_u16(utf16_output, utf16_packed); - utf16_output += 4; - buf += 4; - } else { - size_t forward = 3; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint32_t word = buf[k]; - if((word & 0xFFFF0000)==0) { - // will not generate a surrogate pair - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, reinterpret_cast(utf16_output)); } - *utf16_output++ = !match_system(big_endian) ? char16_t(word >> 8 | word << 8) : char16_t(word); - } else { - // will generate a surrogate pair - if (word > 0x10FFFF) { return std::make_pair(nullptr, reinterpret_cast(utf16_output)); } - word -= 0x10000; - uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); - uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); - if (!match_system(big_endian)) { - high_surrogate = uint16_t(high_surrogate >> 8 | high_surrogate << 8); - low_surrogate = uint16_t(low_surrogate << 8 | low_surrogate >> 8); - } - *utf16_output++ = char16_t(high_surrogate); - *utf16_output++ = char16_t(low_surrogate); - } - } - buf += k; - } - } + We need 256-entry lookup table to get a compression pattern + and the number of output bytes in the compressed vector register. + Each entry occupies 17 bytes. - // check for invalid input - if (vmaxv_u16(forbidden_bytemask) != 0) { - return std::make_pair(nullptr, reinterpret_cast(utf16_output)); - } + Ad 2. - return std::make_pair(buf, reinterpret_cast(utf16_output)); -} + When values fit in 16-bit code units, but are above 0x07ff, then + a single word may produce one, two or three UTF8 bytes. + We prepare data for all these three cases in two registers. + The first register contains lower two UTF8 bytes (used in all + cases), while the second one contains just the third byte for + the three-UTF8-bytes case. -template -std::pair arm_convert_utf32_to_utf16_with_errors(const char32_t* buf, size_t len, char16_t* utf16_out) { - uint16_t * utf16_output = reinterpret_cast(utf16_out); - const char32_t* start = buf; - const char32_t* end = buf + len; + Finally these two registers are interleaved forming eight-element + array of 32-bit values. The array spans two SSE registers. + The bytes from the registers are compressed using two shuffles. - while(buf + 4 <= end) { - uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); + We need 256-entry lookup table to get a compression pattern + and the number of output bytes in the compressed vector register. + Each entry occupies 17 bytes. - // Check if no bits set above 16th - if(vmaxvq_u32(in) <= 0xFFFF) { - uint16x4_t utf16_packed = vmovn_u32(in); - const uint16x4_t v_d800 = vmov_n_u16((uint16_t)0xd800); - const uint16x4_t v_dfff = vmov_n_u16((uint16_t)0xdfff); - const uint16x4_t forbidden_bytemask = vand_u16(vcle_u16(utf16_packed, v_dfff), vcge_u16(utf16_packed, v_d800)); - if (vmaxv_u16(forbidden_bytemask) != 0) { - return std::make_pair(result(error_code::SURROGATE, buf - start), reinterpret_cast(utf16_output)); - } + To summarize: + - We need two 256-entry tables that have 8704 bytes in total. +*/ +/* + Returns a pair: the first unprocessed byte from buf and utf8_output + A scalar routing should carry on the conversion of the tail. +*/ +template +std::pair arm_convert_utf16_to_utf8(const char16_t* buf, size_t len, char* utf8_out) { + uint8_t * utf8_output = reinterpret_cast(utf8_out); + const char16_t* end = buf + len; - if (!match_system(big_endian)) { - #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO - const uint8x8_t swap = make_uint8x8_t(1, 0, 3, 2, 5, 4, 7, 6); - #else - const uint8x8_t swap = {1, 0, 3, 2, 5, 4, 7, 6}; - #endif - utf16_packed = vreinterpret_u16_u8(vtbl1_u8(vreinterpret_u8_u16(utf16_packed), swap)); - } - vst1_u16(utf16_output, utf16_packed); - utf16_output += 4; - buf += 4; - } else { - size_t forward = 3; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint32_t word = buf[k]; - if((word & 0xFFFF0000)==0) { - // will not generate a surrogate pair - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), reinterpret_cast(utf16_output)); } - *utf16_output++ = !match_system(big_endian) ? char16_t(word >> 8 | word << 8) : char16_t(word); + const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); + const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); + const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); + + while (buf + 16 <= end) { + uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); + if (!match_system(big_endian)) { in = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in))); } + if(vmaxvq_u16(in) <= 0x7F) { // ASCII fast path!!!! + // It is common enough that we have sequences of 16 consecutive ASCII characters. + uint16x8_t nextin = vld1q_u16(reinterpret_cast(buf) + 8); + if (!match_system(big_endian)) { nextin = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(nextin))); } + if(vmaxvq_u16(nextin) > 0x7F) { + // 1. pack the bytes + // obviously suboptimal. + uint8x8_t utf8_packed = vmovn_u16(in); + // 2. store (8 bytes) + vst1_u8(utf8_output, utf8_packed); + // 3. adjust pointers + buf += 8; + utf8_output += 8; + in = nextin; } else { - // will generate a surrogate pair - if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), reinterpret_cast(utf16_output)); } - word -= 0x10000; - uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); - uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); - if (!match_system(big_endian)) { - high_surrogate = uint16_t(high_surrogate >> 8 | high_surrogate << 8); - low_surrogate = uint16_t(low_surrogate << 8 | low_surrogate >> 8); - } - *utf16_output++ = char16_t(high_surrogate); - *utf16_output++ = char16_t(low_surrogate); + // 1. pack the bytes + // obviously suboptimal. + uint8x16_t utf8_packed = vmovn_high_u16(vmovn_u16(in), nextin); + // 2. store (16 bytes) + vst1q_u8(utf8_output, utf8_packed); + // 3. adjust pointers + buf += 16; + utf8_output += 16; + continue; // we are done for this round! } - } - buf += k; } - } - return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf16_output)); -} -/* end file src/arm64/arm_convert_utf32_to_utf16.cpp */ -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/buf_block_reader.h -/* begin file src/generic/buf_block_reader.h */ -namespace simdutf { -namespace arm64 { -namespace { + if (vmaxvq_u16(in) <= 0x7FF) { + // 1. prepare 2-byte values + // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 + // expected output : [110a|aaaa|10bb|bbbb] x 8 + const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); + const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); -// Walks through a buffer in block-sized increments, loading the last part with spaces -template -struct buf_block_reader { -public: - simdutf_really_inline buf_block_reader(const uint8_t *_buf, size_t _len); - simdutf_really_inline size_t block_index(); - simdutf_really_inline bool has_full_block() const; - simdutf_really_inline const uint8_t *full_block() const; - /** - * Get the last block, padded with spaces. - * - * There will always be a last block, with at least 1 byte, unless len == 0 (in which case this - * function fills the buffer with spaces and returns 0. In particular, if len == STEP_SIZE there - * will be 0 full_blocks and 1 remainder block with STEP_SIZE bytes and no spaces for padding. - * - * @return the number of effective characters in the last block. - */ - simdutf_really_inline size_t get_remainder(uint8_t *dst) const; - simdutf_really_inline void advance(); -private: - const uint8_t *buf; - const size_t len; - const size_t lenminusstep; - size_t idx; -}; + // t0 = [000a|aaaa|bbbb|bb00] + const uint16x8_t t0 = vshlq_n_u16(in, 2); + // t1 = [000a|aaaa|0000|0000] + const uint16x8_t t1 = vandq_u16(t0, v_1f00); + // t2 = [0000|0000|00bb|bbbb] + const uint16x8_t t2 = vandq_u16(in, v_003f); + // t3 = [000a|aaaa|00bb|bbbb] + const uint16x8_t t3 = vorrq_u16(t1, t2); + // t4 = [110a|aaaa|10bb|bbbb] + const uint16x8_t t4 = vorrq_u16(t3, v_c080); + // 2. merge ASCII and 2-byte codewords + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); + const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, in, t4)); + // 3. prepare bitmask for 8-bit lookup +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080); +#else + const uint16x8_t mask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080 }; +#endif + uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); + // 4. pack the bytes + const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; + const uint8x16_t shuffle = vld1q_u8(row + 1); + const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); -// Routines to print masks and text for debugging bitmask operations -simdutf_unused static char * format_input_text_64(const uint8_t *text) { - static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); - for (size_t i=0; i); i++) { - buf[i] = int8_t(text[i]) < ' ' ? '_' : int8_t(text[i]); - } - buf[sizeof(simd8x64)] = '\0'; - return buf; -} + // 5. store bytes + vst1q_u8(utf8_output, utf8_packed); -// Routines to print masks and text for debugging bitmask operations -simdutf_unused static char * format_input_text(const simd8x64& in) { - static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); - in.store(reinterpret_cast(buf)); - for (size_t i=0; i); i++) { - if (buf[i] < ' ') { buf[i] = '_'; } - } - buf[sizeof(simd8x64)] = '\0'; - return buf; -} + // 6. adjust pointers + buf += 8; + utf8_output += row[0]; + continue; -simdutf_unused static char * format_mask(uint64_t mask) { - static char *buf = reinterpret_cast(malloc(64 + 1)); - for (size_t i=0; i<64; i++) { - buf[i] = (mask & (size_t(1) << i)) ? 'X' : ' '; - } - buf[64] = '\0'; - return buf; -} + } + const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); + // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, + // it is likely an uncommon occurrence. + if (vmaxvq_u16(surrogates_bytemask) == 0) { + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); +#else + const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; +#endif + /* In this branch we handle three cases: + 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte + 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes + 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes -template -simdutf_really_inline buf_block_reader::buf_block_reader(const uint8_t *_buf, size_t _len) : buf{_buf}, len{_len}, lenminusstep{len < STEP_SIZE ? 0 : len - STEP_SIZE}, idx{0} {} + We expand the input word (16-bit) into two code units (32-bit), thus + we have room for four bytes. However, we need five distinct bit + layouts. Note that the last byte in cases #2 and #3 is the same. -template -simdutf_really_inline size_t buf_block_reader::block_index() { return idx; } + We precompute byte 1 for case #1 and the common byte for cases #2 & #3 + in register t2. -template -simdutf_really_inline bool buf_block_reader::has_full_block() const { - return idx < lenminusstep; -} + We precompute byte 1 for case #3 and -- **conditionally** -- precompute + either byte 1 for case #2 or byte 2 for case #3. Note that they + differ by exactly one bit. -template -simdutf_really_inline const uint8_t *buf_block_reader::full_block() const { - return &buf[idx]; -} + Finally from these two code units we build proper UTF-8 sequence, taking + into account the case (i.e, the number of bytes to write). + */ + /** + * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: + * t2 => [0ccc|cccc] [10cc|cccc] + * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) + */ +#define simdutf_vec(x) vmovq_n_u16(static_cast(x)) + // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] + const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), vreinterpretq_u8_u16(dup_even))); + // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] + const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); + // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] + const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); -template -simdutf_really_inline size_t buf_block_reader::get_remainder(uint8_t *dst) const { - if(len == idx) { return 0; } // memcpy(dst, null, 0) will trigger an error with some sanitizers - std::memset(dst, 0x20, STEP_SIZE); // std::memset STEP_SIZE because it's more efficient to write out 8 or 16 bytes at once. - std::memcpy(dst, buf + idx, len - idx); - return len - idx; -} - -template -simdutf_really_inline void buf_block_reader::advance() { - idx += STEP_SIZE; -} + // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] + const uint16x8_t s0 = vshrq_n_u16(in, 12); + // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] + const uint16x8_t s1 = vandq_u16(in, simdutf_vec(0b0000111111000000)); + // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] + const uint16x8_t s1s = vshlq_n_u16(s1, 2); + // [00bb|bbbb|0000|aaaa] + const uint16x8_t s2 = vorrq_u16(s0, s1s); + // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] + const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); + const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); + const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(in, v_07ff); + const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); + const uint16x8_t s4 = veorq_u16(s3, m0); +#undef simdutf_vec -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/buf_block_reader.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_lookup4_algorithm.h -/* begin file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ -namespace simdutf { -namespace arm64 { -namespace { -namespace utf8_validation { + // 4. expand code units 16-bit => 32-bit + const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); + const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); -using namespace simd; + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 ); + const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 ); +#else + const uint16x8_t onemask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 }; + const uint16x8_t twomask = { 0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 }; +#endif + const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); + const uint16_t mask = vaddvq_u16(combined); + // The following fast path may or may not be beneficial. + /*if(mask == 0) { + // We only have three-byte code units. Use fast path. + const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); + vst1q_u8(utf8_output, utf8_0); + utf8_output += 12; + vst1q_u8(utf8_output, utf8_1); + utf8_output += 12; + buf += 8; + continue; + }*/ + const uint8_t mask0 = uint8_t(mask); - simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { -// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) -// Bit 1 = Too Long (ASCII followed by continuation) -// Bit 2 = Overlong 3-byte -// Bit 4 = Surrogate -// Bit 5 = Overlong 2-byte -// Bit 7 = Two Continuations - constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ - // 11______ 11______ - constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ - constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ - constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ - constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ - constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ - constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ - // 11110100 101_____ - // 11110101 1001____ - // 11110101 101_____ - // 1111011_ 1001____ - // 1111011_ 101_____ - // 11111___ 1001____ - // 11111___ 101_____ - constexpr const uint8_t TOO_LARGE_1000 = 1<<6; - // 11110101 1000____ - // 1111011_ 1000____ - // 11111___ 1000____ - constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; + const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); - const simd8 byte_1_high = prev1.shr<4>().lookup_16( - // 0_______ ________ - TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, - TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, - // 10______ ________ - TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, - // 1100____ ________ - TOO_SHORT | OVERLONG_2, - // 1101____ ________ - TOO_SHORT, - // 1110____ ________ - TOO_SHORT | OVERLONG_3 | SURROGATE, - // 1111____ ________ - TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 - ); - constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . - const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( - // ____0000 ________ - CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, - // ____0001 ________ - CARRY | OVERLONG_2, - // ____001_ ________ - CARRY, - CARRY, + const uint8_t mask1 = static_cast(mask >> 8); + const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; + const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); - // ____0100 ________ - CARRY | TOO_LARGE, - // ____0101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - // ____011_ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, + vst1q_u8(utf8_output, utf8_0); + utf8_output += row0[0]; + vst1q_u8(utf8_output, utf8_1); + utf8_output += row1[0]; - // ____1___ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - // ____1101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000 - ); - const simd8 byte_2_high = input.shr<4>().lookup_16( - // ________ 0_______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + buf += 8; + // surrogate pair(s) in a register + } else { + // Let us do a scalar fallback. + // It may seem wasteful to use scalar code, but being efficient with SIMD + // in the presence of surrogate pairs may require non-trivial tables. + size_t forward = 15; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; + if((word & 0xFF80)==0) { + *utf8_output++ = char(word); + } else if((word & 0xF800)==0) { + *utf8_output++ = char((word>>6) | 0b11000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else if((word &0xF800 ) != 0xD800) { + *utf8_output++ = char((word>>12) | 0b11100000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else { + // must be a surrogate pair + uint16_t diff = uint16_t(word - 0xD800); + uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; + k++; + uint16_t diff2 = uint16_t(next_word - 0xDC00); + if((diff | diff2) > 0x3FF) { return std::make_pair(nullptr, reinterpret_cast(utf8_output)); } + uint32_t value = (diff << 10) + diff2 + 0x10000; + *utf8_output++ = char((value>>18) | 0b11110000); + *utf8_output++ = char(((value>>12) & 0b111111) | 0b10000000); + *utf8_output++ = char(((value>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((value & 0b111111) | 0b10000000); + } + } + buf += k; + } + } // while - // ________ 1000____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, - // ________ 1001____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, - // ________ 101_____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + return std::make_pair(buf, reinterpret_cast(utf8_output)); +} - // ________ 11______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT - ); - return (byte_1_high & byte_1_low & byte_2_high); - } - simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, - const simd8 prev_input, const simd8 sc) { - simd8 prev2 = input.prev<2>(prev_input); - simd8 prev3 = input.prev<3>(prev_input); - simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); - simd8 must23_80 = must23 & uint8_t(0x80); - return must23_80 ^ sc; - } - // - // Return nonzero if there are incomplete multibyte characters at the end of the block: - // e.g. if there is a 4-byte character, but it's 3 bytes from the end. - // - simdutf_really_inline simd8 is_incomplete(const simd8 input) { - // If the previous input's last 3 bytes match this, they're too short (they ended at EOF): - // ... 1111____ 111_____ 11______ - static const uint8_t max_array[32] = { - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 0b11110000u-1, 0b11100000u-1, 0b11000000u-1 - }; - const simd8 max_value(&max_array[sizeof(max_array)-sizeof(simd8)]); - return input.gt_bits(max_value); - } +/* + Returns a pair: a result struct and utf8_output. + If there is an error, the count field of the result is the position of the error. + Otherwise, it is the position of the first unprocessed byte in buf (even if finished). + A scalar routing should carry on the conversion of the tail if needed. +*/ +template +std::pair arm_convert_utf16_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_out) { + uint8_t * utf8_output = reinterpret_cast(utf8_out); + const char16_t* start = buf; + const char16_t* end = buf + len; - struct utf8_checker { - // If this is nonzero, there has been a UTF-8 error. - simd8 error; - // The last input we received - simd8 prev_input_block; - // Whether the last input we received was incomplete (used for ASCII fast path) - simd8 prev_incomplete; + const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); + const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); + const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); - // - // Check whether the current bytes are valid UTF-8. - // - simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { - // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes - // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) - simd8 prev1 = input.prev<1>(prev_input); - simd8 sc = check_special_cases(input, prev1); - this->error |= check_multibyte_lengths(input, prev_input, sc); - } - - // The only problem that can happen at EOF is that a multibyte character is too short - // or a byte value too large in the last bytes: check_special_cases only checks for bytes - // too large in the first of two bytes. - simdutf_really_inline void check_eof() { - // If the previous block had incomplete UTF-8 characters at the end, an ASCII block can't - // possibly finish them. - this->error |= this->prev_incomplete; - } - - simdutf_really_inline void check_next_input(const simd8x64& input) { - if(simdutf_likely(is_ascii(input))) { - this->error |= this->prev_incomplete; - } else { - // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], this->prev_input_block); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], this->prev_input_block); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + while (buf + 16 <= end) { + uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); + if (!match_system(big_endian)) { in = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in))); } + if(vmaxvq_u16(in) <= 0x7F) { // ASCII fast path!!!! + // It is common enough that we have sequences of 16 consecutive ASCII characters. + uint16x8_t nextin = vld1q_u16(reinterpret_cast(buf) + 8); + if (!match_system(big_endian)) { nextin = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(nextin))); } + if(vmaxvq_u16(nextin) > 0x7F) { + // 1. pack the bytes + // obviously suboptimal. + uint8x8_t utf8_packed = vmovn_u16(in); + // 2. store (8 bytes) + vst1_u8(utf8_output, utf8_packed); + // 3. adjust pointers + buf += 8; + utf8_output += 8; + in = nextin; + } else { + // 1. pack the bytes + // obviously suboptimal. + uint8x16_t utf8_packed = vmovn_high_u16(vmovn_u16(in), nextin); + // 2. store (16 bytes) + vst1q_u8(utf8_output, utf8_packed); + // 3. adjust pointers + buf += 16; + utf8_output += 16; + continue; // we are done for this round! } - this->prev_incomplete = is_incomplete(input.chunks[simd8x64::NUM_CHUNKS-1]); - this->prev_input_block = input.chunks[simd8x64::NUM_CHUNKS-1]; - - } } - // do not forget to call check_eof! - simdutf_really_inline bool errors() const { - return this->error.any_bits_set_anywhere(); - } + if (vmaxvq_u16(in) <= 0x7FF) { + // 1. prepare 2-byte values + // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 + // expected output : [110a|aaaa|10bb|bbbb] x 8 + const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); + const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); - }; // struct utf8_checker -} // namespace utf8_validation + // t0 = [000a|aaaa|bbbb|bb00] + const uint16x8_t t0 = vshlq_n_u16(in, 2); + // t1 = [000a|aaaa|0000|0000] + const uint16x8_t t1 = vandq_u16(t0, v_1f00); + // t2 = [0000|0000|00bb|bbbb] + const uint16x8_t t2 = vandq_u16(in, v_003f); + // t3 = [000a|aaaa|00bb|bbbb] + const uint16x8_t t3 = vorrq_u16(t1, t2); + // t4 = [110a|aaaa|10bb|bbbb] + const uint16x8_t t4 = vorrq_u16(t3, v_c080); + // 2. merge ASCII and 2-byte codewords + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); + const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, in, t4)); + // 3. prepare bitmask for 8-bit lookup +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080); +#else + const uint16x8_t mask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080 }; +#endif + uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); + // 4. pack the bytes + const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; + const uint8x16_t shuffle = vld1q_u8(row + 1); + const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); -using utf8_validation::utf8_checker; + // 5. store bytes + vst1q_u8(utf8_output, utf8_packed); -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_validator.h -/* begin file src/generic/utf8_validation/utf8_validator.h */ -namespace simdutf { -namespace arm64 { -namespace { -namespace utf8_validation { + // 6. adjust pointers + buf += 8; + utf8_output += row[0]; + continue; -/** - * Validates that the string is actual UTF-8. - */ -template -bool generic_validate_utf8(const uint8_t * input, size_t length) { - checker c{}; - buf_block_reader<64> reader(input, length); - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - c.check_next_input(in); - reader.advance(); } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - c.check_next_input(in); - reader.advance(); - c.check_eof(); - return !c.errors(); -} + const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); + // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, + // it is likely an uncommon occurrence. + if (vmaxvq_u16(surrogates_bytemask) == 0) { + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); +#else + const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; +#endif + /* In this branch we handle three cases: + 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte + 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes + 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes -bool generic_validate_utf8(const char * input, size_t length) { - return generic_validate_utf8(reinterpret_cast(input),length); -} + We expand the input word (16-bit) into two code units (32-bit), thus + we have room for four bytes. However, we need five distinct bit + layouts. Note that the last byte in cases #2 and #3 is the same. -/** - * Validates that the string is actual UTF-8 and stops on errors. - */ -template -result generic_validate_utf8_with_errors(const uint8_t * input, size_t length) { - checker c{}; - buf_block_reader<64> reader(input, length); - size_t count{0}; - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - c.check_next_input(in); - if(c.errors()) { - if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk - result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input + count), length - count); - res.count += count; - return res; - } - reader.advance(); - count += 64; - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - c.check_next_input(in); - reader.advance(); - c.check_eof(); - if (c.errors()) { - if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk - result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input) + count, length - count); - res.count += count; - return res; - } else { - return result(error_code::SUCCESS, length); - } -} + We precompute byte 1 for case #1 and the common byte for cases #2 & #3 + in register t2. -result generic_validate_utf8_with_errors(const char * input, size_t length) { - return generic_validate_utf8_with_errors(reinterpret_cast(input),length); -} + We precompute byte 1 for case #3 and -- **conditionally** -- precompute + either byte 1 for case #2 or byte 2 for case #3. Note that they + differ by exactly one bit. -template -bool generic_validate_ascii(const uint8_t * input, size_t length) { - buf_block_reader<64> reader(input, length); - uint8_t blocks[64]{}; - simd::simd8x64 running_or(blocks); - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - running_or |= in; - reader.advance(); - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - running_or |= in; - return running_or.is_ascii(); -} + Finally from these two code units we build proper UTF-8 sequence, taking + into account the case (i.e, the number of bytes to write). + */ + /** + * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: + * t2 => [0ccc|cccc] [10cc|cccc] + * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) + */ +#define simdutf_vec(x) vmovq_n_u16(static_cast(x)) + // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] + const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(in), vreinterpretq_u8_u16(dup_even))); + // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] + const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); + // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] + const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); -bool generic_validate_ascii(const char * input, size_t length) { - return generic_validate_ascii(reinterpret_cast(input),length); -} + // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] + const uint16x8_t s0 = vshrq_n_u16(in, 12); + // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] + const uint16x8_t s1 = vandq_u16(in, simdutf_vec(0b0000111111000000)); + // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] + const uint16x8_t s1s = vshlq_n_u16(s1, 2); + // [00bb|bbbb|0000|aaaa] + const uint16x8_t s2 = vorrq_u16(s0, s1s); + // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] + const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); + const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); + const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(in, v_07ff); + const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); + const uint16x8_t s4 = veorq_u16(s3, m0); +#undef simdutf_vec -template -result generic_validate_ascii_with_errors(const uint8_t * input, size_t length) { - buf_block_reader<64> reader(input, length); - size_t count{0}; - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - if (!in.is_ascii()) { - result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); - return result(res.error, count + res.count); - } - reader.advance(); - - count += 64; - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - if (!in.is_ascii()) { - result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); - return result(res.error, count + res.count); - } else { - return result(error_code::SUCCESS, length); - } -} - -result generic_validate_ascii_with_errors(const char * input, size_t length) { - return generic_validate_ascii_with_errors(reinterpret_cast(input),length); -} + // 4. expand code units 16-bit => 32-bit + const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); + const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); -} // namespace utf8_validation -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf8_validation/utf8_validator.h */ -// transcoding from UTF-8 to UTF-16 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/valid_utf8_to_utf16.h -/* begin file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(in, v_007f); +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 ); + const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 ); +#else + const uint16x8_t onemask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 }; + const uint16x8_t twomask = { 0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 }; +#endif + const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); + const uint16_t mask = vaddvq_u16(combined); + // The following fast path may or may not be beneficial. + /*if(mask == 0) { + // We only have three-byte code units. Use fast path. + const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); + vst1q_u8(utf8_output, utf8_0); + utf8_output += 12; + vst1q_u8(utf8_output, utf8_1); + utf8_output += 12; + buf += 8; + continue; + }*/ + const uint8_t mask0 = uint8_t(mask); + const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; + const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); -namespace simdutf { -namespace arm64 { -namespace { -namespace utf8_to_utf16 { + const uint8_t mask1 = static_cast(mask >> 8); + const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; + const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); -using namespace simd; + vst1q_u8(utf8_output, utf8_0); + utf8_output += row0[0]; + vst1q_u8(utf8_output, utf8_1); + utf8_output += row1[0]; -template -simdutf_warn_unused size_t convert_valid(const char* input, size_t size, - char16_t* utf16_output) noexcept { - // The implementation is not specific to haswell and should be moved to the generic directory. - size_t pos = 0; - char16_t* start{utf16_output}; - const size_t safety_margin = 16; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - // this loop could be unrolled further. For example, we could process the mask - // far more than 64 bytes. - simd8x64 in(reinterpret_cast(input + pos)); - if(in.is_ascii()) { - in.store_ascii_as_utf16(utf16_output); - utf16_output += 64; - pos += 64; + buf += 8; + // surrogate pair(s) in a register } else { - // Slow path. We hope that the compiler will recognize that this is a slow path. - // Anything that is not a continuation mask is a 'leading byte', that is, the - // start of a new code point. - uint64_t utf8_continuation_mask = in.lt(-65 + 1); - // -65 is 0b10111111 in two-complement's, so largest possible continuation byte - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - // The *start* of code points is not so useful, rather, we want the *end* of code points. - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - // We process in blocks of up to 12 bytes except possibly - // for fast paths which may process up to 16 bytes. For the - // slow path to work, we should have at least 12 input bytes left. - size_t max_starting_point = (pos + 64) - 12; - // Next loop is going to run at least five times when using solely - // the slow/regular path, and at least four times if there are fast paths. - while(pos < max_starting_point) { - // Performance note: our ability to compute 'consumed' and - // then shift and recompute is critical. If there is a - // latency of, say, 4 cycles on getting 'consumed', then - // the inner loop might have a total latency of about 6 cycles. - // Yet we process between 6 to 12 inputs bytes, thus we get - // a speed limit between 1 cycle/byte and 0.5 cycle/byte - // for this section of the code. Hence, there is a limit - // to how much we can further increase this latency before - // it seriously harms performance. - // - // Thus we may allow convert_masked_utf8_to_utf16 to process - // more bytes at a time under a fast-path mode where 16 bytes - // are consumed at once (e.g., when encountering ASCII). - size_t consumed = convert_masked_utf8_to_utf16(input + pos, - utf8_end_of_code_point_mask, utf16_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; + // Let us do a scalar fallback. + // It may seem wasteful to use scalar code, but being efficient with SIMD + // in the presence of surrogate pairs may require non-trivial tables. + size_t forward = 15; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; + if((word & 0xFF80)==0) { + *utf8_output++ = char(word); + } else if((word & 0xF800)==0) { + *utf8_output++ = char((word>>6) | 0b11000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else if((word &0xF800 ) != 0xD800) { + *utf8_output++ = char((word>>12) | 0b11100000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else { + // must be a surrogate pair + uint16_t diff = uint16_t(word - 0xD800); + uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; + k++; + uint16_t diff2 = uint16_t(next_word - 0xDC00); + if((diff | diff2) > 0x3FF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k - 1), reinterpret_cast(utf8_output)); } + uint32_t value = (diff << 10) + diff2 + 0x10000; + *utf8_output++ = char((value>>18) | 0b11110000); + *utf8_output++ = char(((value>>12) & 0b111111) | 0b10000000); + *utf8_output++ = char(((value>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((value & 0b111111) | 0b10000000); + } } - // At this point there may remain between 0 and 12 bytes in the - // 64-byte block. These bytes will be processed again. So we have an - // 80% efficiency (in the worst case). In practice we expect an - // 85% to 90% efficiency. + buf += k; } - } - utf16_output += scalar::utf8_to_utf16::convert_valid(input + pos, size - pos, utf16_output); - return utf16_output - start; + } // while + + return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf8_output)); } +/* end file src/arm64/arm_convert_utf16_to_utf8.cpp */ +/* begin file src/arm64/arm_convert_utf16_to_utf32.cpp */ +/* + The vectorized algorithm works on single SSE register i.e., it + loads eight 16-bit code units. -} // namespace utf8_to_utf16 -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/utf8_to_utf16.h -/* begin file src/generic/utf8_to_utf16/utf8_to_utf16.h */ + We consider three cases: + 1. an input register contains no surrogates and each value + is in range 0x0000 .. 0x07ff. + 2. an input register contains no surrogates and values are + is in range 0x0000 .. 0xffff. + 3. an input register contains surrogates --- i.e. codepoints + can have 16 or 32 bits. + Ad 1. -namespace simdutf { -namespace arm64 { -namespace { -namespace utf8_to_utf16 { -using namespace simd; + When values are less than 0x0800, it means that a 16-bit code unit + can be converted into: 1) single UTF8 byte (when it's an ASCII + char) or 2) two UTF8 bytes. + For this case we do only some shuffle to obtain these 2-byte + codes and finally compress the whole SSE register with a single + shuffle. - simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { -// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) -// Bit 1 = Too Long (ASCII followed by continuation) -// Bit 2 = Overlong 3-byte -// Bit 4 = Surrogate -// Bit 5 = Overlong 2-byte -// Bit 7 = Two Continuations - constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ - // 11______ 11______ - constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ - constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ - constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ - constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ - constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ - constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ - // 11110100 101_____ - // 11110101 1001____ - // 11110101 101_____ - // 1111011_ 1001____ - // 1111011_ 101_____ - // 11111___ 1001____ - // 11111___ 101_____ - constexpr const uint8_t TOO_LARGE_1000 = 1<<6; - // 11110101 1000____ - // 1111011_ 1000____ - // 11111___ 1000____ - constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + We need 256-entry lookup table to get a compression pattern + and the number of output bytes in the compressed vector register. + Each entry occupies 17 bytes. - const simd8 byte_1_high = prev1.shr<4>().lookup_16( - // 0_______ ________ - TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, - TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, - // 10______ ________ - TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, - // 1100____ ________ - TOO_SHORT | OVERLONG_2, - // 1101____ ________ - TOO_SHORT, - // 1110____ ________ - TOO_SHORT | OVERLONG_3 | SURROGATE, - // 1111____ ________ - TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 - ); - constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . - const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( - // ____0000 ________ - CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, - // ____0001 ________ - CARRY | OVERLONG_2, - // ____001_ ________ - CARRY, - CARRY, + Ad 2. - // ____0100 ________ - CARRY | TOO_LARGE, - // ____0101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - // ____011_ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, + When values fit in 16-bit code units, but are above 0x07ff, then + a single word may produce one, two or three UTF8 bytes. - // ____1___ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - // ____1101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000 - ); - const simd8 byte_2_high = input.shr<4>().lookup_16( - // ________ 0_______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + We prepare data for all these three cases in two registers. + The first register contains lower two UTF8 bytes (used in all + cases), while the second one contains just the third byte for + the three-UTF8-bytes case. - // ________ 1000____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, - // ________ 1001____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, - // ________ 101_____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + Finally these two registers are interleaved forming eight-element + array of 32-bit values. The array spans two SSE registers. + The bytes from the registers are compressed using two shuffles. - // ________ 11______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT - ); - return (byte_1_high & byte_1_low & byte_2_high); - } - simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, - const simd8 prev_input, const simd8 sc) { - simd8 prev2 = input.prev<2>(prev_input); - simd8 prev3 = input.prev<3>(prev_input); - simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); - simd8 must23_80 = must23 & uint8_t(0x80); - return must23_80 ^ sc; - } + We need 256-entry lookup table to get a compression pattern + and the number of output bytes in the compressed vector register. + Each entry occupies 17 bytes. - struct validating_transcoder { - // If this is nonzero, there has been a UTF-8 error. - simd8 error; + To summarize: + - We need two 256-entry tables that have 8704 bytes in total. +*/ +/* + Returns a pair: the first unprocessed byte from buf and utf8_output + A scalar routing should carry on the conversion of the tail. +*/ +template +std::pair arm_convert_utf16_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_out) { + uint32_t * utf32_output = reinterpret_cast(utf32_out); + const char16_t* end = buf + len; - validating_transcoder() : error(uint8_t(0)) {} - // - // Check whether the current bytes are valid UTF-8. - // - simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { - // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes - // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) - simd8 prev1 = input.prev<1>(prev_input); - simd8 sc = check_special_cases(input, prev1); - this->error |= check_multibyte_lengths(input, prev_input, sc); - } + const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); + const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); + while (buf + 8 <= end) { + uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); + if (!match_system(big_endian)) { in = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in))); } - template - simdutf_really_inline size_t convert(const char* in, size_t size, char16_t* utf16_output) { - size_t pos = 0; - char16_t* start{utf16_output}; - // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, - // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate - // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, - // to give us a good margin. - size_t leading_byte = 0; - size_t margin = size; - for(; margin > 0 && leading_byte < 8; margin--) { - leading_byte += (int8_t(in[margin-1]) > -65); - } - // If the input is long enough, then we have that margin-1 is the eight last leading byte. - const size_t safety_margin = size - margin + 1; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - simd8x64 input(reinterpret_cast(in + pos)); - if(input.is_ascii()) { - input.store_ascii_as_utf16(utf16_output); - utf16_output += 64; - pos += 64; + const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); + // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, + // it is likely an uncommon occurrence. + if (vmaxvq_u16(surrogates_bytemask) == 0) { + // case: no surrogate pairs, extend all 16-bit code units to 32-bit code units + vst1q_u32(utf32_output, vmovl_u16(vget_low_u16(in))); + vst1q_u32(utf32_output+4, vmovl_high_u16(in)); + utf32_output += 8; + buf += 8; + // surrogate pair(s) in a register + } else { + // Let us do a scalar fallback. + // It may seem wasteful to use scalar code, but being efficient with SIMD + // in the presence of surrogate pairs may require non-trivial tables. + size_t forward = 15; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; + if((word &0xF800 ) != 0xD800) { + *utf32_output++ = char32_t(word); } else { - // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - auto zero = simd8{uint8_t(0)}; - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); - } - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - // We process in blocks of up to 12 bytes except possibly - // for fast paths which may process up to 16 bytes. For the - // slow path to work, we should have at least 12 input bytes left. - size_t max_starting_point = (pos + 64) - 12; - // Next loop is going to run at least five times. - while(pos < max_starting_point) { - // Performance note: our ability to compute 'consumed' and - // then shift and recompute is critical. If there is a - // latency of, say, 4 cycles on getting 'consumed', then - // the inner loop might have a total latency of about 6 cycles. - // Yet we process between 6 to 12 inputs bytes, thus we get - // a speed limit between 1 cycle/byte and 0.5 cycle/byte - // for this section of the code. Hence, there is a limit - // to how much we can further increase this latency before - // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf16(in + pos, - utf8_end_of_code_point_mask, utf16_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; - } - // At this point there may remain between 0 and 12 bytes in the - // 64-byte block. These bytes will be processed again. So we have an - // 80% efficiency (in the worst case). In practice we expect an - // 85% to 90% efficiency. + // must be a surrogate pair + uint16_t diff = uint16_t(word - 0xD800); + uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; + k++; + uint16_t diff2 = uint16_t(next_word - 0xDC00); + if((diff | diff2) > 0x3FF) { return std::make_pair(nullptr, reinterpret_cast(utf32_output)); } + uint32_t value = (diff << 10) + diff2 + 0x10000; + *utf32_output++ = char32_t(value); } } - if(errors()) { return 0; } - if(pos < size) { - size_t howmany = scalar::utf8_to_utf16::convert(in + pos, size - pos, utf16_output); - if(howmany == 0) { return 0; } - utf16_output += howmany; - } - return utf16_output - start; + buf += k; } + } // while + return std::make_pair(buf, reinterpret_cast(utf32_output)); +} - template - simdutf_really_inline result convert_with_errors(const char* in, size_t size, char16_t* utf16_output) { - size_t pos = 0; - char16_t* start{utf16_output}; - // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, - // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate - // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, - // to give us a good margin. - size_t leading_byte = 0; - size_t margin = size; - for(; margin > 0 && leading_byte < 8; margin--) { - leading_byte += (int8_t(in[margin-1]) > -65); - } - // If the input is long enough, then we have that margin-1 is the eight last leading byte. - const size_t safety_margin = size - margin + 1; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - simd8x64 input(reinterpret_cast(in + pos)); - if(input.is_ascii()) { - input.store_ascii_as_utf16(utf16_output); - utf16_output += 64; - pos += 64; + +/* + Returns a pair: a result struct and utf8_output. + If there is an error, the count field of the result is the position of the error. + Otherwise, it is the position of the first unprocessed byte in buf (even if finished). + A scalar routing should carry on the conversion of the tail if needed. +*/ +template +std::pair arm_convert_utf16_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_out) { + uint32_t * utf32_output = reinterpret_cast(utf32_out); + const char16_t* start = buf; + const char16_t* end = buf + len; + + const uint16x8_t v_f800 = vmovq_n_u16((uint16_t)0xf800); + const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); + + while (buf + 8 <= end) { + uint16x8_t in = vld1q_u16(reinterpret_cast(buf)); + if (!match_system(big_endian)) { in = vreinterpretq_u16_u8(vrev16q_u8(vreinterpretq_u8_u16(in))); } + + const uint16x8_t surrogates_bytemask = vceqq_u16(vandq_u16(in, v_f800), v_d800); + // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, + // it is likely an uncommon occurrence. + if (vmaxvq_u16(surrogates_bytemask) == 0) { + // case: no surrogate pairs, extend all 16-bit code units to 32-bit code units + vst1q_u32(utf32_output, vmovl_u16(vget_low_u16(in))); + vst1q_u32(utf32_output+4, vmovl_high_u16(in)); + utf32_output += 8; + buf += 8; + // surrogate pair(s) in a register + } else { + // Let us do a scalar fallback. + // It may seem wasteful to use scalar code, but being efficient with SIMD + // in the presence of surrogate pairs may require non-trivial tables. + size_t forward = 15; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; + if((word &0xF800 ) != 0xD800) { + *utf32_output++ = char32_t(word); } else { - // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - auto zero = simd8{uint8_t(0)}; - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); - } - if (errors()) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); - res.count += pos; - return res; - } - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - // We process in blocks of up to 12 bytes except possibly - // for fast paths which may process up to 16 bytes. For the - // slow path to work, we should have at least 12 input bytes left. - size_t max_starting_point = (pos + 64) - 12; - // Next loop is going to run at least five times. - while(pos < max_starting_point) { - // Performance note: our ability to compute 'consumed' and - // then shift and recompute is critical. If there is a - // latency of, say, 4 cycles on getting 'consumed', then - // the inner loop might have a total latency of about 6 cycles. - // Yet we process between 6 to 12 inputs bytes, thus we get - // a speed limit between 1 cycle/byte and 0.5 cycle/byte - // for this section of the code. Hence, there is a limit - // to how much we can further increase this latency before - // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf16(in + pos, - utf8_end_of_code_point_mask, utf16_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; - } - // At this point there may remain between 0 and 12 bytes in the - // 64-byte block. These bytes will be processed again. So we have an - // 80% efficiency (in the worst case). In practice we expect an - // 85% to 90% efficiency. - } - } - if(errors()) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); - res.count += pos; - return res; - } - if(pos < size) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); - if (res.error) { // In case of error, we want the error position - res.count += pos; - return res; - } else { // In case of success, we want the number of word written - utf16_output += res.count; + // must be a surrogate pair + uint16_t diff = uint16_t(word - 0xD800); + uint16_t next_word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k + 1]) : buf[k + 1]; + k++; + uint16_t diff2 = uint16_t(next_word - 0xDC00); + if((diff | diff2) > 0x3FF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k - 1), reinterpret_cast(utf32_output)); } + uint32_t value = (diff << 10) + diff2 + 0x10000; + *utf32_output++ = char32_t(value); } } - return result(error_code::SUCCESS, utf16_output - start); + buf += k; } + } // while + return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf32_output)); +} +/* end file src/arm64/arm_convert_utf16_to_utf32.cpp */ - simdutf_really_inline bool errors() const { - return this->error.any_bits_set_anywhere(); +/* begin file src/arm64/arm_convert_utf32_to_latin1.cpp */ +std::pair arm_convert_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) { + const char32_t* end = buf + len; + while (buf + 8 <= end) { + uint32x4_t in1 = vld1q_u32(reinterpret_cast(buf)); + uint32x4_t in2 = vld1q_u32(reinterpret_cast(buf+4)); + + uint16x8_t utf16_packed = vcombine_u16(vqmovn_u32(in1), vqmovn_u32(in2)); + if (vmaxvq_u16(utf16_packed) <= 0xff) { + // 1. pack the bytes + uint8x8_t latin1_packed = vmovn_u16(utf16_packed); + // 2. store (8 bytes) + vst1_u8(reinterpret_cast(latin1_output), latin1_packed); + // 3. adjust pointers + buf += 8; + latin1_output += 8; + } else { + return std::make_pair(nullptr, reinterpret_cast(latin1_output)); } + } // while + return std::make_pair(buf, latin1_output); +} - }; // struct utf8_checker -} // utf8_to_utf16 namespace -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf8_to_utf16/utf8_to_utf16.h */ -// transcoding from UTF-8 to UTF-32 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/valid_utf8_to_utf32.h -/* begin file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ -namespace simdutf { -namespace arm64 { -namespace { -namespace utf8_to_utf32 { +std::pair arm_convert_utf32_to_latin1_with_errors(const char32_t* buf, size_t len, char* latin1_output) { + const char32_t* start = buf; + const char32_t* end = buf + len; -using namespace simd; + while (buf + 8 <= end) { + uint32x4_t in1 = vld1q_u32(reinterpret_cast(buf)); + uint32x4_t in2 = vld1q_u32(reinterpret_cast(buf+4)); + uint16x8_t utf16_packed = vcombine_u16(vqmovn_u32(in1), vqmovn_u32(in2)); -simdutf_warn_unused size_t convert_valid(const char* input, size_t size, - char32_t* utf32_output) noexcept { - size_t pos = 0; - char32_t* start{utf32_output}; - const size_t safety_margin = 16; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - simd8x64 in(reinterpret_cast(input + pos)); - if(in.is_ascii()) { - in.store_ascii_as_utf32(utf32_output); - utf32_output += 64; - pos += 64; + if (vmaxvq_u16(utf16_packed) <= 0xff) { + // 1. pack the bytes + uint8x8_t latin1_packed = vmovn_u16(utf16_packed); + // 2. store (8 bytes) + vst1_u8(reinterpret_cast(latin1_output), latin1_packed); + // 3. adjust pointers + buf += 8; + latin1_output += 8; } else { - // -65 is 0b10111111 in two-complement's, so largest possible continuation byte - uint64_t utf8_continuation_mask = in.lt(-65 + 1); - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - size_t max_starting_point = (pos + 64) - 12; - while(pos < max_starting_point) { - size_t consumed = convert_masked_utf8_to_utf32(input + pos, - utf8_end_of_code_point_mask, utf32_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; + // Let us do a scalar fallback. + for(int k = 0; k < 8; k++) { + uint32_t word = buf[k]; + if(word <= 0xff) { + *latin1_output++ = char(word); + } else { + return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), latin1_output); + } } } - } - utf32_output += scalar::utf8_to_utf32::convert_valid(input + pos, size - pos, utf32_output); - return utf32_output - start; + } // while + return std::make_pair(result(error_code::SUCCESS, buf - start), latin1_output); } +/* end file src/arm64/arm_convert_utf32_to_latin1.cpp */ +/* begin file src/arm64/arm_convert_utf32_to_utf8.cpp */ +std::pair arm_convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_out) { + uint8_t * utf8_output = reinterpret_cast(utf8_out); + const char32_t* end = buf + len; + const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); -} // namespace utf8_to_utf32 -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/utf8_to_utf32.h -/* begin file src/generic/utf8_to_utf32/utf8_to_utf32.h */ + uint16x8_t forbidden_bytemask = vmovq_n_u16(0x0); + while (buf + 8 < end) { + uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); + uint32x4_t nextin = vld1q_u32(reinterpret_cast(buf+4)); -namespace simdutf { -namespace arm64 { -namespace { -namespace utf8_to_utf32 { -using namespace simd; + // Check if no bits set above 16th + if(vmaxvq_u32(vorrq_u32(in, nextin)) <= 0xFFFF) { + // Pack UTF-32 to UTF-16 safely (without surrogate pairs) + // Apply UTF-16 => UTF-8 routine (arm_convert_utf16_to_utf8.cpp) + uint16x8_t utf16_packed = vcombine_u16(vmovn_u32(in), vmovn_u32(nextin)); + if(vmaxvq_u16(utf16_packed) <= 0x7F) { // ASCII fast path!!!! + // 1. pack the bytes + // obviously suboptimal. + uint8x8_t utf8_packed = vmovn_u16(utf16_packed); + // 2. store (8 bytes) + vst1_u8(utf8_output, utf8_packed); + // 3. adjust pointers + buf += 8; + utf8_output += 8; + continue; // we are done for this round! + } + if (vmaxvq_u16(utf16_packed) <= 0x7FF) { + // 1. prepare 2-byte values + // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 + // expected output : [110a|aaaa|10bb|bbbb] x 8 + const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); + const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); + + // t0 = [000a|aaaa|bbbb|bb00] + const uint16x8_t t0 = vshlq_n_u16(utf16_packed, 2); + // t1 = [000a|aaaa|0000|0000] + const uint16x8_t t1 = vandq_u16(t0, v_1f00); + // t2 = [0000|0000|00bb|bbbb] + const uint16x8_t t2 = vandq_u16(utf16_packed, v_003f); + // t3 = [000a|aaaa|00bb|bbbb] + const uint16x8_t t3 = vorrq_u16(t1, t2); + // t4 = [110a|aaaa|10bb|bbbb] + const uint16x8_t t4 = vorrq_u16(t3, v_c080); + // 2. merge ASCII and 2-byte codewords + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); + const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, utf16_packed, t4)); + // 3. prepare bitmask for 8-bit lookup + #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080); + #else + const uint16x8_t mask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080 }; + #endif + uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); + // 4. pack the bytes + const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; + const uint8x16_t shuffle = vld1q_u8(row + 1); + const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); - simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { -// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) -// Bit 1 = Too Long (ASCII followed by continuation) -// Bit 2 = Overlong 3-byte -// Bit 4 = Surrogate -// Bit 5 = Overlong 2-byte -// Bit 7 = Two Continuations - constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ - // 11______ 11______ - constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ - constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ - constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ - constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ - constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ - constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ - // 11110100 101_____ - // 11110101 1001____ - // 11110101 101_____ - // 1111011_ 1001____ - // 1111011_ 101_____ - // 11111___ 1001____ - // 11111___ 101_____ - constexpr const uint8_t TOO_LARGE_1000 = 1<<6; - // 11110101 1000____ - // 1111011_ 1000____ - // 11111___ 1000____ - constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + // 5. store bytes + vst1q_u8(utf8_output, utf8_packed); - const simd8 byte_1_high = prev1.shr<4>().lookup_16( - // 0_______ ________ - TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, - TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, - // 10______ ________ - TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, - // 1100____ ________ - TOO_SHORT | OVERLONG_2, - // 1101____ ________ - TOO_SHORT, - // 1110____ ________ - TOO_SHORT | OVERLONG_3 | SURROGATE, - // 1111____ ________ - TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 - ); - constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . - const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( - // ____0000 ________ - CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, - // ____0001 ________ - CARRY | OVERLONG_2, - // ____001_ ________ - CARRY, - CARRY, + // 6. adjust pointers + buf += 8; + utf8_output += row[0]; + continue; + } else { + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes + const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); + const uint16x8_t v_dfff = vmovq_n_u16((uint16_t)0xdfff); + forbidden_bytemask = vorrq_u16(vandq_u16(vcleq_u16(utf16_packed, v_dfff), vcgeq_u16(utf16_packed, v_d800)), forbidden_bytemask); - // ____0100 ________ - CARRY | TOO_LARGE, - // ____0101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - // ____011_ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, + #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); + #else + const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; + #endif + /* In this branch we handle three cases: + 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte + 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes + 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - // ____1___ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - // ____1101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000 - ); - const simd8 byte_2_high = input.shr<4>().lookup_16( - // ________ 0_______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + We expand the input word (16-bit) into two code units (32-bit), thus + we have room for four bytes. However, we need five distinct bit + layouts. Note that the last byte in cases #2 and #3 is the same. - // ________ 1000____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, - // ________ 1001____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, - // ________ 101_____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + We precompute byte 1 for case #1 and the common byte for cases #2 & #3 + in register t2. - // ________ 11______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT - ); - return (byte_1_high & byte_1_low & byte_2_high); - } - simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, - const simd8 prev_input, const simd8 sc) { - simd8 prev2 = input.prev<2>(prev_input); - simd8 prev3 = input.prev<3>(prev_input); - simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); - simd8 must23_80 = must23 & uint8_t(0x80); - return must23_80 ^ sc; - } + We precompute byte 1 for case #3 and -- **conditionally** -- precompute + either byte 1 for case #2 or byte 2 for case #3. Note that they + differ by exactly one bit. + Finally from these two code units we build proper UTF-8 sequence, taking + into account the case (i.e, the number of bytes to write). + */ + /** + * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: + * t2 => [0ccc|cccc] [10cc|cccc] + * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) + */ + #define simdutf_vec(x) vmovq_n_u16(static_cast(x)) + // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] + const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(utf16_packed), vreinterpretq_u8_u16(dup_even))); + // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] + const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); + // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] + const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); - struct validating_transcoder { - // If this is nonzero, there has been a UTF-8 error. - simd8 error; + // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] + const uint16x8_t s0 = vshrq_n_u16(utf16_packed, 12); + // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] + const uint16x8_t s1 = vandq_u16(utf16_packed, simdutf_vec(0b0000111111000000)); + // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] + const uint16x8_t s1s = vshlq_n_u16(s1, 2); + // [00bb|bbbb|0000|aaaa] + const uint16x8_t s2 = vorrq_u16(s0, s1s); + // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] + const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); + const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); + const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(utf16_packed, v_07ff); + const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); + const uint16x8_t s4 = veorq_u16(s3, m0); + #undef simdutf_vec - validating_transcoder() : error(uint8_t(0)) {} - // - // Check whether the current bytes are valid UTF-8. - // - simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { - // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes - // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) - simd8 prev1 = input.prev<1>(prev_input); - simd8 sc = check_special_cases(input, prev1); - this->error |= check_multibyte_lengths(input, prev_input, sc); - } + // 4. expand code units 16-bit => 32-bit + const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); + const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); + #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 ); + const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 ); + #else + const uint16x8_t onemask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 }; + const uint16x8_t twomask = { 0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 }; + #endif + const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); + const uint16_t mask = vaddvq_u16(combined); + // The following fast path may or may not be beneficial. + /*if(mask == 0) { + // We only have three-byte code units. Use fast path. + const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); + vst1q_u8(utf8_output, utf8_0); + utf8_output += 12; + vst1q_u8(utf8_output, utf8_1); + utf8_output += 12; + buf += 8; + continue; + }*/ + const uint8_t mask0 = uint8_t(mask); + const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; + const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); + const uint8_t mask1 = static_cast(mask >> 8); + const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; + const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); - simdutf_really_inline size_t convert(const char* in, size_t size, char32_t* utf32_output) { - size_t pos = 0; - char32_t* start{utf32_output}; - // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, - // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate - // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, - // to give us a good margin. - size_t leading_byte = 0; - size_t margin = size; - for(; margin > 0 && leading_byte < 4; margin--) { - leading_byte += (int8_t(in[margin-1]) > -65); + vst1q_u8(utf8_output, utf8_0); + utf8_output += row0[0]; + vst1q_u8(utf8_output, utf8_1); + utf8_output += row1[0]; + + buf += 8; } - // If the input is long enough, then we have that margin-1 is the fourth last leading byte. - const size_t safety_margin = size - margin + 1; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - simd8x64 input(reinterpret_cast(in + pos)); - if(input.is_ascii()) { - input.store_ascii_as_utf32(utf32_output); - utf32_output += 64; - pos += 64; + // At least one 32-bit word will produce a surrogate pair in UTF-16 <=> will produce four UTF-8 bytes. + } else { + // Let us do a scalar fallback. + // It may seem wasteful to use scalar code, but being efficient with SIMD + // in the presence of surrogate pairs may require non-trivial tables. + size_t forward = 15; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint32_t word = buf[k]; + if((word & 0xFFFFFF80)==0) { + *utf8_output++ = char(word); + } else if((word & 0xFFFFF800)==0) { + *utf8_output++ = char((word>>6) | 0b11000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else if((word & 0xFFFF0000)==0) { + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, reinterpret_cast(utf8_output)); } + *utf8_output++ = char((word>>12) | 0b11100000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); } else { - // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - auto zero = simd8{uint8_t(0)}; - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); - } - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - // We process in blocks of up to 12 bytes except possibly - // for fast paths which may process up to 16 bytes. For the - // slow path to work, we should have at least 12 input bytes left. - size_t max_starting_point = (pos + 64) - 12; - // Next loop is going to run at least five times. - while(pos < max_starting_point) { - // Performance note: our ability to compute 'consumed' and - // then shift and recompute is critical. If there is a - // latency of, say, 4 cycles on getting 'consumed', then - // the inner loop might have a total latency of about 6 cycles. - // Yet we process between 6 to 12 inputs bytes, thus we get - // a speed limit between 1 cycle/byte and 0.5 cycle/byte - // for this section of the code. Hence, there is a limit - // to how much we can further increase this latency before - // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf32(in + pos, - utf8_end_of_code_point_mask, utf32_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; - } - // At this point there may remain between 0 and 12 bytes in the - // 64-byte block. These bytes will be processed again. So we have an - // 80% efficiency (in the worst case). In practice we expect an - // 85% to 90% efficiency. + if (word > 0x10FFFF) { return std::make_pair(nullptr, reinterpret_cast(utf8_output)); } + *utf8_output++ = char((word>>18) | 0b11110000); + *utf8_output++ = char(((word>>12) & 0b111111) | 0b10000000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); } } - if(errors()) { return 0; } - if(pos < size) { - size_t howmany = scalar::utf8_to_utf32::convert(in + pos, size - pos, utf32_output); - if(howmany == 0) { return 0; } - utf32_output += howmany; - } - return utf32_output - start; + buf += k; } + } // while - simdutf_really_inline result convert_with_errors(const char* in, size_t size, char32_t* utf32_output) { - size_t pos = 0; - char32_t* start{utf32_output}; - // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, - // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate - // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, - // to give us a good margin. - size_t leading_byte = 0; - size_t margin = size; - for(; margin > 0 && leading_byte < 4; margin--) { - leading_byte += (int8_t(in[margin-1]) > -65); - } - // If the input is long enough, then we have that margin-1 is the fourth last leading byte. - const size_t safety_margin = size - margin + 1; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - simd8x64 input(reinterpret_cast(in + pos)); - if(input.is_ascii()) { - input.store_ascii_as_utf32(utf32_output); - utf32_output += 64; - pos += 64; - } else { - // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - auto zero = simd8{uint8_t(0)}; - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); - } - if (errors()) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); - res.count += pos; - return res; - } - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - // We process in blocks of up to 12 bytes except possibly - // for fast paths which may process up to 16 bytes. For the - // slow path to work, we should have at least 12 input bytes left. - size_t max_starting_point = (pos + 64) - 12; - // Next loop is going to run at least five times. - while(pos < max_starting_point) { - // Performance note: our ability to compute 'consumed' and - // then shift and recompute is critical. If there is a - // latency of, say, 4 cycles on getting 'consumed', then - // the inner loop might have a total latency of about 6 cycles. - // Yet we process between 6 to 12 inputs bytes, thus we get - // a speed limit between 1 cycle/byte and 0.5 cycle/byte - // for this section of the code. Hence, there is a limit - // to how much we can further increase this latency before - // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf32(in + pos, - utf8_end_of_code_point_mask, utf32_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; - } - // At this point there may remain between 0 and 12 bytes in the - // 64-byte block. These bytes will be processed again. So we have an - // 80% efficiency (in the worst case). In practice we expect an - // 85% to 90% efficiency. - } - } - if(errors()) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); - res.count += pos; - return res; - } - if(pos < size) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); - if (res.error) { // In case of error, we want the error position - res.count += pos; - return res; - } else { // In case of success, we want the number of word written - utf32_output += res.count; - } - } - return result(error_code::SUCCESS, utf32_output - start); - } - - simdutf_really_inline bool errors() const { - return this->error.any_bits_set_anywhere(); - } - - }; // struct utf8_checker -} // utf8_to_utf32 namespace -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf8_to_utf32/utf8_to_utf32.h */ -// other functions -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8.h -/* begin file src/generic/utf8.h */ + // check for invalid input + if (vmaxvq_u16(forbidden_bytemask) != 0) { + return std::make_pair(nullptr, reinterpret_cast(utf8_output)); + } + return std::make_pair(buf, reinterpret_cast(utf8_output)); +} -namespace simdutf { -namespace arm64 { -namespace { -namespace utf8 { -using namespace simd; +std::pair arm_convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_out) { + uint8_t * utf8_output = reinterpret_cast(utf8_out); + const char32_t* start = buf; + const char32_t* end = buf + len; -simdutf_really_inline size_t count_code_points(const char* in, size_t size) { - size_t pos = 0; - size_t count = 0; - for(;pos + 64 <= size; pos += 64) { - simd8x64 input(reinterpret_cast(in + pos)); - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - count += 64 - count_ones(utf8_continuation_mask); - } - return count + scalar::utf8::count_code_points(in + pos, size - pos); -} + const uint16x8_t v_c080 = vmovq_n_u16((uint16_t)0xc080); + while (buf + 8 < end) { + uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); + uint32x4_t nextin = vld1q_u32(reinterpret_cast(buf+4)); -simdutf_really_inline size_t utf16_length_from_utf8(const char* in, size_t size) { - size_t pos = 0; - size_t count = 0; - // This algorithm could no doubt be improved! - for(;pos + 64 <= size; pos += 64) { - simd8x64 input(reinterpret_cast(in + pos)); - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - // We count one word for anything that is not a continuation (so - // leading bytes). - count += 64 - count_ones(utf8_continuation_mask); - int64_t utf8_4byte = input.gteq_unsigned(240); - count += count_ones(utf8_4byte); - } - return count + scalar::utf8::utf16_length_from_utf8(in + pos, size - pos); -} + // Check if no bits set above 16th + if(vmaxvq_u32(vorrq_u32(in, nextin)) <= 0xFFFF) { + // Pack UTF-32 to UTF-16 safely (without surrogate pairs) + // Apply UTF-16 => UTF-8 routine (arm_convert_utf16_to_utf8.cpp) + uint16x8_t utf16_packed = vcombine_u16(vmovn_u32(in), vmovn_u32(nextin)); + if(vmaxvq_u16(utf16_packed) <= 0x7F) { // ASCII fast path!!!! + // 1. pack the bytes + // obviously suboptimal. + uint8x8_t utf8_packed = vmovn_u16(utf16_packed); + // 2. store (8 bytes) + vst1_u8(utf8_output, utf8_packed); + // 3. adjust pointers + buf += 8; + utf8_output += 8; + continue; // we are done for this round! + } + if (vmaxvq_u16(utf16_packed) <= 0x7FF) { + // 1. prepare 2-byte values + // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 + // expected output : [110a|aaaa|10bb|bbbb] x 8 + const uint16x8_t v_1f00 = vmovq_n_u16((int16_t)0x1f00); + const uint16x8_t v_003f = vmovq_n_u16((int16_t)0x003f); + + // t0 = [000a|aaaa|bbbb|bb00] + const uint16x8_t t0 = vshlq_n_u16(utf16_packed, 2); + // t1 = [000a|aaaa|0000|0000] + const uint16x8_t t1 = vandq_u16(t0, v_1f00); + // t2 = [0000|0000|00bb|bbbb] + const uint16x8_t t2 = vandq_u16(utf16_packed, v_003f); + // t3 = [000a|aaaa|00bb|bbbb] + const uint16x8_t t3 = vorrq_u16(t1, t2); + // t4 = [110a|aaaa|10bb|bbbb] + const uint16x8_t t4 = vorrq_u16(t3, v_c080); + // 2. merge ASCII and 2-byte codewords + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); + const uint8x16_t utf8_unpacked = vreinterpretq_u8_u16(vbslq_u16(one_byte_bytemask, utf16_packed, t4)); + // 3. prepare bitmask for 8-bit lookup + #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t mask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080); + #else + const uint16x8_t mask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0002, 0x0008, + 0x0020, 0x0080 }; + #endif + uint16_t m2 = vaddvq_u16(vandq_u16(one_byte_bytemask, mask)); + // 4. pack the bytes + const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; + const uint8x16_t shuffle = vld1q_u8(row + 1); + const uint8x16_t utf8_packed = vqtbl1q_u8(utf8_unpacked, shuffle); -simdutf_really_inline size_t utf32_length_from_utf8(const char* in, size_t size) { - return count_code_points(in, size); -} -} // utf8 namespace -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf16.h -/* begin file src/generic/utf16.h */ -namespace simdutf { -namespace arm64 { -namespace { -namespace utf16 { + // 5. store bytes + vst1q_u8(utf8_output, utf8_packed); -template -simdutf_really_inline size_t count_code_points(const char16_t* in, size_t size) { - size_t pos = 0; - size_t count = 0; - for(;pos + 32 <= size; pos += 32) { - simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); - uint64_t not_pair = input.not_in_range(0xDC00, 0xDFFF); - count += count_ones(not_pair) / 2; - } - return count + scalar::utf16::count_code_points(in + pos, size - pos); -} + // 6. adjust pointers + buf += 8; + utf8_output += row[0]; + continue; + } else { + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes -template -simdutf_really_inline size_t utf8_length_from_utf16(const char16_t* in, size_t size) { - size_t pos = 0; - size_t count = 0; - // This algorithm could no doubt be improved! - for(;pos + 32 <= size; pos += 32) { - simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); - uint64_t ascii_mask = input.lteq(0x7F); - uint64_t twobyte_mask = input.lteq(0x7FF); - uint64_t not_pair_mask = input.not_in_range(0xD800, 0xDFFF); + // check for invalid input + const uint16x8_t v_d800 = vmovq_n_u16((uint16_t)0xd800); + const uint16x8_t v_dfff = vmovq_n_u16((uint16_t)0xdfff); + const uint16x8_t forbidden_bytemask = vandq_u16(vcleq_u16(utf16_packed, v_dfff), vcgeq_u16(utf16_packed, v_d800)); + if (vmaxvq_u16(forbidden_bytemask) != 0) { + return std::make_pair(result(error_code::SURROGATE, buf - start), reinterpret_cast(utf8_output)); + } - size_t ascii_count = count_ones(ascii_mask) / 2; - size_t twobyte_count = count_ones(twobyte_mask & ~ ascii_mask) / 2; - size_t threebyte_count = count_ones(not_pair_mask & ~ twobyte_mask) / 2; - size_t fourbyte_count = 32 - count_ones(not_pair_mask) / 2; - count += 2 * fourbyte_count + 3 * threebyte_count + 2 * twobyte_count + ascii_count; - } - return count + scalar::utf16::utf8_length_from_utf16(in + pos, size - pos); -} + #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t dup_even = make_uint16x8_t(0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); + #else + const uint16x8_t dup_even = {0x0000, 0x0202, 0x0404, 0x0606, + 0x0808, 0x0a0a, 0x0c0c, 0x0e0e}; + #endif + /* In this branch we handle three cases: + 1. [0000|0000|0ccc|cccc] => [0ccc|cccc] - single UFT-8 byte + 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes + 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes -template -simdutf_really_inline size_t utf32_length_from_utf16(const char16_t* in, size_t size) { - return count_code_points(in, size); -} + We expand the input word (16-bit) into two code units (32-bit), thus + we have room for four bytes. However, we need five distinct bit + layouts. Note that the last byte in cases #2 and #3 is the same. -simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* output) { - size_t pos = 0; + We precompute byte 1 for case #1 and the common byte for cases #2 & #3 + in register t2. - while (pos + 32 <= size) { - simd16x32 input(reinterpret_cast(in + pos)); - input.swap_bytes(); - input.store(reinterpret_cast(output)); - pos += 32; - output += 32; - } + We precompute byte 1 for case #3 and -- **conditionally** -- precompute + either byte 1 for case #2 or byte 2 for case #3. Note that they + differ by exactly one bit. - scalar::utf16::change_endianness_utf16(in + pos, size - pos, output); -} + Finally from these two code units we build proper UTF-8 sequence, taking + into account the case (i.e, the number of bytes to write). + */ + /** + * Given [aaaa|bbbb|bbcc|cccc] our goal is to produce: + * t2 => [0ccc|cccc] [10cc|cccc] + * s4 => [1110|aaaa] ([110b|bbbb] OR [10bb|bbbb]) + */ + #define simdutf_vec(x) vmovq_n_u16(static_cast(x)) + // [aaaa|bbbb|bbcc|cccc] => [bbcc|cccc|bbcc|cccc] + const uint16x8_t t0 = vreinterpretq_u16_u8(vqtbl1q_u8(vreinterpretq_u8_u16(utf16_packed), vreinterpretq_u8_u16(dup_even))); + // [bbcc|cccc|bbcc|cccc] => [00cc|cccc|0bcc|cccc] + const uint16x8_t t1 = vandq_u16(t0, simdutf_vec(0b0011111101111111)); + // [00cc|cccc|0bcc|cccc] => [10cc|cccc|0bcc|cccc] + const uint16x8_t t2 = vorrq_u16 (t1, simdutf_vec(0b1000000000000000)); -} // utf16 -} // unnamed namespace -} // namespace arm64 -} // namespace simdutf -/* end file src/generic/utf16.h */ -// -// Implementation-specific overrides -// -namespace simdutf { -namespace arm64 { + // s0: [aaaa|bbbb|bbcc|cccc] => [0000|0000|0000|aaaa] + const uint16x8_t s0 = vshrq_n_u16(utf16_packed, 12); + // s1: [aaaa|bbbb|bbcc|cccc] => [0000|bbbb|bb00|0000] + const uint16x8_t s1 = vandq_u16(utf16_packed, simdutf_vec(0b0000111111000000)); + // [0000|bbbb|bb00|0000] => [00bb|bbbb|0000|0000] + const uint16x8_t s1s = vshlq_n_u16(s1, 2); + // [00bb|bbbb|0000|aaaa] + const uint16x8_t s2 = vorrq_u16(s0, s1s); + // s3: [00bb|bbbb|0000|aaaa] => [11bb|bbbb|1110|aaaa] + const uint16x8_t s3 = vorrq_u16(s2, simdutf_vec(0b1100000011100000)); + const uint16x8_t v_07ff = vmovq_n_u16((uint16_t)0x07FF); + const uint16x8_t one_or_two_bytes_bytemask = vcleq_u16(utf16_packed, v_07ff); + const uint16x8_t m0 = vbicq_u16(simdutf_vec(0b0100000000000000), one_or_two_bytes_bytemask); + const uint16x8_t s4 = veorq_u16(s3, m0); + #undef simdutf_vec -simdutf_warn_unused int implementation::detect_encodings(const char * input, size_t length) const noexcept { - // If there is a BOM, then we trust it. - auto bom_encoding = simdutf::BOM::check_bom(input, length); - if(bom_encoding != encoding_type::unspecified) { return bom_encoding; } - if (length % 2 == 0) { - return arm_detect_encodings(input, length); - } else { - if (implementation::validate_utf8(input, length)) { - return simdutf::encoding_type::UTF8; - } else { - return simdutf::encoding_type::unspecified; - } - } -} + // 4. expand code units 16-bit => 32-bit + const uint8x16_t out0 = vreinterpretq_u8_u16(vzip1q_u16(t2, s4)); + const uint8x16_t out1 = vreinterpretq_u8_u16(vzip2q_u16(t2, s4)); -simdutf_warn_unused bool implementation::validate_utf8(const char *buf, size_t len) const noexcept { - return arm64::utf8_validation::generic_validate_utf8(buf,len); -} - -simdutf_warn_unused result implementation::validate_utf8_with_errors(const char *buf, size_t len) const noexcept { - return arm64::utf8_validation::generic_validate_utf8_with_errors(buf,len); -} + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle + const uint16x8_t v_007f = vmovq_n_u16((uint16_t)0x007F); + const uint16x8_t one_byte_bytemask = vcleq_u16(utf16_packed, v_007f); + #ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + const uint16x8_t onemask = make_uint16x8_t(0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 ); + const uint16x8_t twomask = make_uint16x8_t(0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 ); + #else + const uint16x8_t onemask = { 0x0001, 0x0004, + 0x0010, 0x0040, + 0x0100, 0x0400, + 0x1000, 0x4000 }; + const uint16x8_t twomask = { 0x0002, 0x0008, + 0x0020, 0x0080, + 0x0200, 0x0800, + 0x2000, 0x8000 }; + #endif + const uint16x8_t combined = vorrq_u16(vandq_u16(one_byte_bytemask, onemask), vandq_u16(one_or_two_bytes_bytemask, twomask)); + const uint16_t mask = vaddvq_u16(combined); + // The following fast path may or may not be beneficial. + /*if(mask == 0) { + // We only have three-byte code units. Use fast path. + const uint8x16_t shuffle = {2,3,1,6,7,5,10,11,9,14,15,13,0,0,0,0}; + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle); + vst1q_u8(utf8_output, utf8_0); + utf8_output += 12; + vst1q_u8(utf8_output, utf8_1); + utf8_output += 12; + buf += 8; + continue; + }*/ + const uint8_t mask0 = uint8_t(mask); -simdutf_warn_unused bool implementation::validate_ascii(const char *buf, size_t len) const noexcept { - return arm64::utf8_validation::generic_validate_ascii(buf,len); -} + const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; + const uint8x16_t shuffle0 = vld1q_u8(row0 + 1); + const uint8x16_t utf8_0 = vqtbl1q_u8(out0, shuffle0); -simdutf_warn_unused result implementation::validate_ascii_with_errors(const char *buf, size_t len) const noexcept { - return arm64::utf8_validation::generic_validate_ascii_with_errors(buf,len); -} + const uint8_t mask1 = static_cast(mask >> 8); + const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; + const uint8x16_t shuffle1 = vld1q_u8(row1 + 1); + const uint8x16_t utf8_1 = vqtbl1q_u8(out1, shuffle1); -simdutf_warn_unused bool implementation::validate_utf16le(const char16_t *buf, size_t len) const noexcept { - const char16_t* tail = arm_validate_utf16(buf, len); - if (tail) { - return scalar::utf16::validate(tail, len - (tail - buf)); - } else { - return false; - } -} + vst1q_u8(utf8_output, utf8_0); + utf8_output += row0[0]; + vst1q_u8(utf8_output, utf8_1); + utf8_output += row1[0]; -simdutf_warn_unused bool implementation::validate_utf16be(const char16_t *buf, size_t len) const noexcept { - const char16_t* tail = arm_validate_utf16(buf, len); - if (tail) { - return scalar::utf16::validate(tail, len - (tail - buf)); - } else { - return false; - } -} + buf += 8; + } + // At least one 32-bit word will produce a surrogate pair in UTF-16 <=> will produce four UTF-8 bytes. + } else { + // Let us do a scalar fallback. + // It may seem wasteful to use scalar code, but being efficient with SIMD + // in the presence of surrogate pairs may require non-trivial tables. + size_t forward = 15; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint32_t word = buf[k]; + if((word & 0xFFFFFF80)==0) { + *utf8_output++ = char(word); + } else if((word & 0xFFFFF800)==0) { + *utf8_output++ = char((word>>6) | 0b11000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else if((word & 0xFFFF0000)==0) { + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), reinterpret_cast(utf8_output)); } + *utf8_output++ = char((word>>12) | 0b11100000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else { + if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), reinterpret_cast(utf8_output)); } + *utf8_output++ = char((word>>18) | 0b11110000); + *utf8_output++ = char(((word>>12) & 0b111111) | 0b10000000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } + } + buf += k; + } + } // while -simdutf_warn_unused result implementation::validate_utf16le_with_errors(const char16_t *buf, size_t len) const noexcept { - result res = arm_validate_utf16_with_errors(buf, len); - if (res.count != len) { - result scalar_res = scalar::utf16::validate_with_errors(buf + res.count, len - res.count); - return result(scalar_res.error, res.count + scalar_res.count); - } else { - return res; - } + return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf8_output)); } +/* end file src/arm64/arm_convert_utf32_to_utf8.cpp */ +/* begin file src/arm64/arm_convert_utf32_to_utf16.cpp */ +template +std::pair arm_convert_utf32_to_utf16(const char32_t* buf, size_t len, char16_t* utf16_out) { + uint16_t * utf16_output = reinterpret_cast(utf16_out); + const char32_t* end = buf + len; -simdutf_warn_unused result implementation::validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept { - result res = arm_validate_utf16_with_errors(buf, len); - if (res.count != len) { - result scalar_res = scalar::utf16::validate_with_errors(buf + res.count, len - res.count); - return result(scalar_res.error, res.count + scalar_res.count); - } else { - return res; - } -} + uint16x4_t forbidden_bytemask = vmov_n_u16(0x0); -simdutf_warn_unused bool implementation::validate_utf32(const char32_t *buf, size_t len) const noexcept { - const char32_t* tail = arm_validate_utf32le(buf, len); - if (tail) { - return scalar::utf32::validate(tail, len - (tail - buf)); - } else { - return false; - } -} + while(buf + 4 <= end) { + uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); -simdutf_warn_unused result implementation::validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept { - result res = arm_validate_utf32le_with_errors(buf, len); - if (res.count != len) { - result scalar_res = scalar::utf32::validate_with_errors(buf + res.count, len - res.count); - return result(scalar_res.error, res.count + scalar_res.count); - } else { - return res; - } -} + // Check if no bits set above 16th + if(vmaxvq_u32(in) <= 0xFFFF) { + uint16x4_t utf16_packed = vmovn_u32(in); -simdutf_warn_unused size_t implementation::convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - utf8_to_utf16::validating_transcoder converter; - return converter.convert(buf, len, utf16_output); -} + const uint16x4_t v_d800 = vmov_n_u16((uint16_t)0xd800); + const uint16x4_t v_dfff = vmov_n_u16((uint16_t)0xdfff); + forbidden_bytemask = vorr_u16(vand_u16(vcle_u16(utf16_packed, v_dfff), vcge_u16(utf16_packed, v_d800)), forbidden_bytemask); -simdutf_warn_unused size_t implementation::convert_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - utf8_to_utf16::validating_transcoder converter; - return converter.convert(buf, len, utf16_output); -} + if (!match_system(big_endian)) { utf16_packed = vreinterpret_u16_u8(vrev16_u8(vreinterpret_u8_u16(utf16_packed))); } + vst1_u16(utf16_output, utf16_packed); + utf16_output += 4; + buf += 4; + } else { + size_t forward = 3; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint32_t word = buf[k]; + if((word & 0xFFFF0000)==0) { + // will not generate a surrogate pair + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, reinterpret_cast(utf16_output)); } + *utf16_output++ = !match_system(big_endian) ? char16_t(word >> 8 | word << 8) : char16_t(word); + } else { + // will generate a surrogate pair + if (word > 0x10FFFF) { return std::make_pair(nullptr, reinterpret_cast(utf16_output)); } + word -= 0x10000; + uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); + uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); + if (!match_system(big_endian)) { + high_surrogate = uint16_t(high_surrogate >> 8 | high_surrogate << 8); + low_surrogate = uint16_t(low_surrogate << 8 | low_surrogate >> 8); + } + *utf16_output++ = char16_t(high_surrogate); + *utf16_output++ = char16_t(low_surrogate); + } + } + buf += k; + } + } -simdutf_warn_unused result implementation::convert_utf8_to_utf16le_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - utf8_to_utf16::validating_transcoder converter; - return converter.convert_with_errors(buf, len, utf16_output); -} + // check for invalid input + if (vmaxv_u16(forbidden_bytemask) != 0) { + return std::make_pair(nullptr, reinterpret_cast(utf16_output)); + } -simdutf_warn_unused result implementation::convert_utf8_to_utf16be_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - utf8_to_utf16::validating_transcoder converter; - return converter.convert_with_errors(buf, len, utf16_output); + return std::make_pair(buf, reinterpret_cast(utf16_output)); } -simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16le(const char* input, size_t size, - char16_t* utf16_output) const noexcept { - return utf8_to_utf16::convert_valid(input, size, utf16_output); -} -simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16be(const char* input, size_t size, - char16_t* utf16_output) const noexcept { - return utf8_to_utf16::convert_valid(input, size, utf16_output); -} +template +std::pair arm_convert_utf32_to_utf16_with_errors(const char32_t* buf, size_t len, char16_t* utf16_out) { + uint16_t * utf16_output = reinterpret_cast(utf16_out); + const char32_t* start = buf; + const char32_t* end = buf + len; -simdutf_warn_unused size_t implementation::convert_utf8_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { - utf8_to_utf32::validating_transcoder converter; - return converter.convert(buf, len, utf32_output); -} + while(buf + 4 <= end) { + uint32x4_t in = vld1q_u32(reinterpret_cast(buf)); -simdutf_warn_unused result implementation::convert_utf8_to_utf32_with_errors(const char* buf, size_t len, char32_t* utf32_output) const noexcept { - utf8_to_utf32::validating_transcoder converter; - return converter.convert_with_errors(buf, len, utf32_output); -} + // Check if no bits set above 16th + if(vmaxvq_u32(in) <= 0xFFFF) { + uint16x4_t utf16_packed = vmovn_u32(in); -simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf32(const char* input, size_t size, - char32_t* utf32_output) const noexcept { - return utf8_to_utf32::convert_valid(input, size, utf32_output); -} + const uint16x4_t v_d800 = vmov_n_u16((uint16_t)0xd800); + const uint16x4_t v_dfff = vmov_n_u16((uint16_t)0xdfff); + const uint16x4_t forbidden_bytemask = vand_u16(vcle_u16(utf16_packed, v_dfff), vcge_u16(utf16_packed, v_d800)); + if (vmaxv_u16(forbidden_bytemask) != 0) { + return std::make_pair(result(error_code::SURROGATE, buf - start), reinterpret_cast(utf16_output)); + } -simdutf_warn_unused size_t implementation::convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - std::pair ret = arm_convert_utf16_to_utf8(buf, len, utf8_output); - if (ret.first == nullptr) { return 0; } - size_t saved_bytes = ret.second - utf8_output; - if (ret.first != buf + len) { - const size_t scalar_saved_bytes = scalar::utf16_to_utf8::convert( - ret.first, len - (ret.first - buf), ret.second); - if (scalar_saved_bytes == 0) { return 0; } - saved_bytes += scalar_saved_bytes; - } - return saved_bytes; -} - -simdutf_warn_unused size_t implementation::convert_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - std::pair ret = arm_convert_utf16_to_utf8(buf, len, utf8_output); - if (ret.first == nullptr) { return 0; } - size_t saved_bytes = ret.second - utf8_output; - if (ret.first != buf + len) { - const size_t scalar_saved_bytes = scalar::utf16_to_utf8::convert( - ret.first, len - (ret.first - buf), ret.second); - if (scalar_saved_bytes == 0) { return 0; } - saved_bytes += scalar_saved_bytes; - } - return saved_bytes; -} - -simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished - std::pair ret = arm_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); - if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count - if (ret.first.count != len) { // All good so far, but not finished - result scalar_res = scalar::utf16_to_utf8::convert_with_errors( - buf + ret.first.count, len - ret.first.count, ret.second); - if (scalar_res.error) { - scalar_res.count += ret.first.count; - return scalar_res; - } else { - ret.second += scalar_res.count; - } - } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written - return ret.first; -} - -simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished - std::pair ret = arm_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); - if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count - if (ret.first.count != len) { // All good so far, but not finished - result scalar_res = scalar::utf16_to_utf8::convert_with_errors( - buf + ret.first.count, len - ret.first.count, ret.second); - if (scalar_res.error) { - scalar_res.count += ret.first.count; - return scalar_res; + if (!match_system(big_endian)) { utf16_packed = vreinterpret_u16_u8(vrev16_u8(vreinterpret_u8_u16(utf16_packed))); } + vst1_u16(utf16_output, utf16_packed); + utf16_output += 4; + buf += 4; } else { - ret.second += scalar_res.count; + size_t forward = 3; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint32_t word = buf[k]; + if((word & 0xFFFF0000)==0) { + // will not generate a surrogate pair + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), reinterpret_cast(utf16_output)); } + *utf16_output++ = !match_system(big_endian) ? char16_t(word >> 8 | word << 8) : char16_t(word); + } else { + // will generate a surrogate pair + if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), reinterpret_cast(utf16_output)); } + word -= 0x10000; + uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); + uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); + if (!match_system(big_endian)) { + high_surrogate = uint16_t(high_surrogate >> 8 | high_surrogate << 8); + low_surrogate = uint16_t(low_surrogate << 8 | low_surrogate >> 8); + } + *utf16_output++ = char16_t(high_surrogate); + *utf16_output++ = char16_t(low_surrogate); + } + } + buf += k; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written - return ret.first; -} -simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return convert_utf16le_to_utf8(buf, len, utf8_output); + return std::make_pair(result(error_code::SUCCESS, buf - start), reinterpret_cast(utf16_output)); } +/* end file src/arm64/arm_convert_utf32_to_utf16.cpp */ +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* begin file src/generic/buf_block_reader.h */ +namespace simdutf { +namespace arm64 { +namespace { -simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return convert_utf16be_to_utf8(buf, len, utf8_output); -} +// Walks through a buffer in block-sized increments, loading the last part with spaces +template +struct buf_block_reader { +public: + simdutf_really_inline buf_block_reader(const uint8_t *_buf, size_t _len); + simdutf_really_inline size_t block_index(); + simdutf_really_inline bool has_full_block() const; + simdutf_really_inline const uint8_t *full_block() const; + /** + * Get the last block, padded with spaces. + * + * There will always be a last block, with at least 1 byte, unless len == 0 (in which case this + * function fills the buffer with spaces and returns 0. In particular, if len == STEP_SIZE there + * will be 0 full_blocks and 1 remainder block with STEP_SIZE bytes and no spaces for padding. + * + * @return the number of effective characters in the last block. + */ + simdutf_really_inline size_t get_remainder(uint8_t *dst) const; + simdutf_really_inline void advance(); +private: + const uint8_t *buf; + const size_t len; + const size_t lenminusstep; + size_t idx; +}; -simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - std::pair ret = arm_convert_utf32_to_utf8(buf, len, utf8_output); - if (ret.first == nullptr) { return 0; } - size_t saved_bytes = ret.second - utf8_output; - if (ret.first != buf + len) { - const size_t scalar_saved_bytes = scalar::utf32_to_utf8::convert( - ret.first, len - (ret.first - buf), ret.second); - if (scalar_saved_bytes == 0) { return 0; } - saved_bytes += scalar_saved_bytes; +// Routines to print masks and text for debugging bitmask operations +simdutf_unused static char * format_input_text_64(const uint8_t *text) { + static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); + for (size_t i=0; i); i++) { + buf[i] = int8_t(text[i]) < ' ' ? '_' : int8_t(text[i]); } - return saved_bytes; + buf[sizeof(simd8x64)] = '\0'; + return buf; } -simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished - std::pair ret = arm_convert_utf32_to_utf8_with_errors(buf, len, utf8_output); - if (ret.first.count != len) { - result scalar_res = scalar::utf32_to_utf8::convert_with_errors( - buf + ret.first.count, len - ret.first.count, ret.second); - if (scalar_res.error) { - scalar_res.count += ret.first.count; - return scalar_res; - } else { - ret.second += scalar_res.count; - } +// Routines to print masks and text for debugging bitmask operations +simdutf_unused static char * format_input_text(const simd8x64& in) { + static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); + in.store(reinterpret_cast(buf)); + for (size_t i=0; i); i++) { + if (buf[i] < ' ') { buf[i] = '_'; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written - return ret.first; + buf[sizeof(simd8x64)] = '\0'; + return buf; } -simdutf_warn_unused size_t implementation::convert_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - std::pair ret = arm_convert_utf16_to_utf32(buf, len, utf32_output); - if (ret.first == nullptr) { return 0; } - size_t saved_bytes = ret.second - utf32_output; - if (ret.first != buf + len) { - const size_t scalar_saved_bytes = scalar::utf16_to_utf32::convert( - ret.first, len - (ret.first - buf), ret.second); - if (scalar_saved_bytes == 0) { return 0; } - saved_bytes += scalar_saved_bytes; +simdutf_unused static char * format_mask(uint64_t mask) { + static char *buf = reinterpret_cast(malloc(64 + 1)); + for (size_t i=0; i<64; i++) { + buf[i] = (mask & (size_t(1) << i)) ? 'X' : ' '; } - return saved_bytes; + buf[64] = '\0'; + return buf; } -simdutf_warn_unused size_t implementation::convert_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - std::pair ret = arm_convert_utf16_to_utf32(buf, len, utf32_output); - if (ret.first == nullptr) { return 0; } - size_t saved_bytes = ret.second - utf32_output; - if (ret.first != buf + len) { - const size_t scalar_saved_bytes = scalar::utf16_to_utf32::convert( - ret.first, len - (ret.first - buf), ret.second); - if (scalar_saved_bytes == 0) { return 0; } - saved_bytes += scalar_saved_bytes; - } - return saved_bytes; -} +template +simdutf_really_inline buf_block_reader::buf_block_reader(const uint8_t *_buf, size_t _len) : buf{_buf}, len{_len}, lenminusstep{len < STEP_SIZE ? 0 : len - STEP_SIZE}, idx{0} {} -simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished - std::pair ret = arm_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); - if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count - if (ret.first.count != len) { // All good so far, but not finished - result scalar_res = scalar::utf16_to_utf32::convert_with_errors( - buf + ret.first.count, len - ret.first.count, ret.second); - if (scalar_res.error) { - scalar_res.count += ret.first.count; - return scalar_res; - } else { - ret.second += scalar_res.count; - } - } - ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit words written - return ret.first; -} +template +simdutf_really_inline size_t buf_block_reader::block_index() { return idx; } -simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished - std::pair ret = arm_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); - if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count - if (ret.first.count != len) { // All good so far, but not finished - result scalar_res = scalar::utf16_to_utf32::convert_with_errors( - buf + ret.first.count, len - ret.first.count, ret.second); - if (scalar_res.error) { - scalar_res.count += ret.first.count; - return scalar_res; - } else { - ret.second += scalar_res.count; - } - } - ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit words written - return ret.first; +template +simdutf_really_inline bool buf_block_reader::has_full_block() const { + return idx < lenminusstep; } -simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - return convert_utf32_to_utf8(buf, len, utf8_output); +template +simdutf_really_inline const uint8_t *buf_block_reader::full_block() const { + return &buf[idx]; } -simdutf_warn_unused size_t implementation::convert_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - std::pair ret = arm_convert_utf32_to_utf16(buf, len, utf16_output); - if (ret.first == nullptr) { return 0; } - size_t saved_bytes = ret.second - utf16_output; - if (ret.first != buf + len) { - const size_t scalar_saved_bytes = scalar::utf32_to_utf16::convert( - ret.first, len - (ret.first - buf), ret.second); - if (scalar_saved_bytes == 0) { return 0; } - saved_bytes += scalar_saved_bytes; - } - return saved_bytes; +template +simdutf_really_inline size_t buf_block_reader::get_remainder(uint8_t *dst) const { + if(len == idx) { return 0; } // memcpy(dst, null, 0) will trigger an error with some sanitizers + std::memset(dst, 0x20, STEP_SIZE); // std::memset STEP_SIZE because it's more efficient to write out 8 or 16 bytes at once. + std::memcpy(dst, buf + idx, len - idx); + return len - idx; } -simdutf_warn_unused size_t implementation::convert_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - std::pair ret = arm_convert_utf32_to_utf16(buf, len, utf16_output); - if (ret.first == nullptr) { return 0; } - size_t saved_bytes = ret.second - utf16_output; - if (ret.first != buf + len) { - const size_t scalar_saved_bytes = scalar::utf32_to_utf16::convert( - ret.first, len - (ret.first - buf), ret.second); - if (scalar_saved_bytes == 0) { return 0; } - saved_bytes += scalar_saved_bytes; - } - return saved_bytes; +template +simdutf_really_inline void buf_block_reader::advance() { + idx += STEP_SIZE; } -simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished - std::pair ret = arm_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); - if (ret.first.count != len) { - result scalar_res = scalar::utf32_to_utf16::convert_with_errors( - buf + ret.first.count, len - ret.first.count, ret.second); - if (scalar_res.error) { - scalar_res.count += ret.first.count; - return scalar_res; - } else { - ret.second += scalar_res.count; - } - } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written - return ret.first; -} +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/buf_block_reader.h */ +/* begin file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8_validation { -simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished - std::pair ret = arm_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); - if (ret.first.count != len) { - result scalar_res = scalar::utf32_to_utf16::convert_with_errors( - buf + ret.first.count, len - ret.first.count, ret.second); - if (scalar_res.error) { - scalar_res.count += ret.first.count; - return scalar_res; - } else { - ret.second += scalar_res.count; - } - } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written - return ret.first; -} +using namespace simd; -simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return convert_utf32_to_utf16le(buf, len, utf16_output); -} + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) +// Bit 1 = Too Long (ASCII followed by continuation) +// Bit 2 = Overlong 3-byte +// Bit 4 = Surrogate +// Bit 5 = Overlong 2-byte +// Bit 7 = Two Continuations + constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ + // 11______ 11______ + constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ + constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ + constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ + constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ + constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ + constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ + // 11110100 101_____ + // 11110101 1001____ + // 11110101 101_____ + // 1111011_ 1001____ + // 1111011_ 101_____ + // 11111___ 1001____ + // 11111___ 101_____ + constexpr const uint8_t TOO_LARGE_1000 = 1<<6; + // 11110101 1000____ + // 1111011_ 1000____ + // 11111___ 1000____ + constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ -simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return convert_utf32_to_utf16be(buf, len, utf16_output); -} + const simd8 byte_1_high = prev1.shr<4>().lookup_16( + // 0_______ ________ + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + // 10______ ________ + TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, + // 1100____ ________ + TOO_SHORT | OVERLONG_2, + // 1101____ ________ + TOO_SHORT, + // 1110____ ________ + TOO_SHORT | OVERLONG_3 | SURROGATE, + // 1111____ ________ + TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 + ); + constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . + const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( + // ____0000 ________ + CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, + // ____0001 ________ + CARRY | OVERLONG_2, + // ____001_ ________ + CARRY, + CARRY, -simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return convert_utf16le_to_utf32(buf, len, utf32_output); -} + // ____0100 ________ + CARRY | TOO_LARGE, + // ____0101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____011_ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, -simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return convert_utf16be_to_utf32(buf, len, utf32_output); -} + // ____1___ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____1101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000 + ); + const simd8 byte_2_high = input.shr<4>().lookup_16( + // ________ 0_______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, -void implementation::change_endianness_utf16(const char16_t * input, size_t length, char16_t * output) const noexcept { - utf16::change_endianness_utf16(input, length, output); -} + // ________ 1000____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, + // ________ 1001____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, + // ________ 101_____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, -simdutf_warn_unused size_t implementation::count_utf16le(const char16_t * input, size_t length) const noexcept { - return utf16::count_code_points(input, length); -} + // ________ 11______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT + ); + return (byte_1_high & byte_1_low & byte_2_high); + } + simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, + const simd8 prev_input, const simd8 sc) { + simd8 prev2 = input.prev<2>(prev_input); + simd8 prev3 = input.prev<3>(prev_input); + simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); + simd8 must23_80 = must23 & uint8_t(0x80); + return must23_80 ^ sc; + } -simdutf_warn_unused size_t implementation::count_utf16be(const char16_t * input, size_t length) const noexcept { - return utf16::count_code_points(input, length); -} + // + // Return nonzero if there are incomplete multibyte characters at the end of the block: + // e.g. if there is a 4-byte character, but it's 3 bytes from the end. + // + simdutf_really_inline simd8 is_incomplete(const simd8 input) { + // If the previous input's last 3 bytes match this, they're too short (they ended at EOF): + // ... 1111____ 111_____ 11______ + static const uint8_t max_array[32] = { + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 0b11110000u-1, 0b11100000u-1, 0b11000000u-1 + }; + const simd8 max_value(&max_array[sizeof(max_array)-sizeof(simd8)]); + return input.gt_bits(max_value); + } -simdutf_warn_unused size_t implementation::count_utf8(const char * input, size_t length) const noexcept { - return utf8::count_code_points(input, length); -} + struct utf8_checker { + // If this is nonzero, there has been a UTF-8 error. + simd8 error; + // The last input we received + simd8 prev_input_block; + // Whether the last input we received was incomplete (used for ASCII fast path) + simd8 prev_incomplete; -simdutf_warn_unused size_t implementation::utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept { - return utf16::utf8_length_from_utf16(input, length); -} + // + // Check whether the current bytes are valid UTF-8. + // + simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { + // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes + // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) + simd8 prev1 = input.prev<1>(prev_input); + simd8 sc = check_special_cases(input, prev1); + this->error |= check_multibyte_lengths(input, prev_input, sc); + } -simdutf_warn_unused size_t implementation::utf8_length_from_utf16be(const char16_t * input, size_t length) const noexcept { - return utf16::utf8_length_from_utf16(input, length); -} + // The only problem that can happen at EOF is that a multibyte character is too short + // or a byte value too large in the last bytes: check_special_cases only checks for bytes + // too large in the first of two bytes. + simdutf_really_inline void check_eof() { + // If the previous block had incomplete UTF-8 characters at the end, an ASCII block can't + // possibly finish them. + this->error |= this->prev_incomplete; + } -simdutf_warn_unused size_t implementation::utf32_length_from_utf16le(const char16_t * input, size_t length) const noexcept { - return utf16::utf32_length_from_utf16(input, length); -} + simdutf_really_inline void check_next_input(const simd8x64& input) { + if(simdutf_likely(is_ascii(input))) { + this->error |= this->prev_incomplete; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], this->prev_input_block); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], this->prev_input_block); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + this->prev_incomplete = is_incomplete(input.chunks[simd8x64::NUM_CHUNKS-1]); + this->prev_input_block = input.chunks[simd8x64::NUM_CHUNKS-1]; -simdutf_warn_unused size_t implementation::utf32_length_from_utf16be(const char16_t * input, size_t length) const noexcept { - return utf16::utf32_length_from_utf16(input, length); -} + } + } -simdutf_warn_unused size_t implementation::utf16_length_from_utf8(const char * input, size_t length) const noexcept { - return utf8::utf16_length_from_utf8(input, length); -} + // do not forget to call check_eof! + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); + } -simdutf_warn_unused size_t implementation::utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept { - const uint32x4_t v_7f = vmovq_n_u32((uint32_t)0x7f); - const uint32x4_t v_7ff = vmovq_n_u32((uint32_t)0x7ff); - const uint32x4_t v_ffff = vmovq_n_u32((uint32_t)0xffff); - const uint32x4_t v_1 = vmovq_n_u32((uint32_t)0x1); - size_t pos = 0; - size_t count = 0; - for(;pos + 4 <= length; pos += 4) { - uint32x4_t in = vld1q_u32(reinterpret_cast(input + pos)); - const uint32x4_t ascii_bytes_bytemask = vcleq_u32(in, v_7f); - const uint32x4_t one_two_bytes_bytemask = vcleq_u32(in, v_7ff); - const uint32x4_t two_bytes_bytemask = veorq_u32(one_two_bytes_bytemask, ascii_bytes_bytemask); - const uint32x4_t three_bytes_bytemask = veorq_u32(vcleq_u32(in, v_ffff), one_two_bytes_bytemask); + }; // struct utf8_checker +} // namespace utf8_validation - const uint16x8_t reduced_ascii_bytes_bytemask = vreinterpretq_u16_u32(vandq_u32(ascii_bytes_bytemask, v_1)); - const uint16x8_t reduced_two_bytes_bytemask = vreinterpretq_u16_u32(vandq_u32(two_bytes_bytemask, v_1)); - const uint16x8_t reduced_three_bytes_bytemask = vreinterpretq_u16_u32(vandq_u32(three_bytes_bytemask, v_1)); +using utf8_validation::utf8_checker; - const uint16x8_t compressed_bytemask0 = vpaddq_u16(reduced_ascii_bytes_bytemask, reduced_two_bytes_bytemask); - const uint16x8_t compressed_bytemask1 = vpaddq_u16(reduced_three_bytes_bytemask, reduced_three_bytes_bytemask); +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +/* begin file src/generic/utf8_validation/utf8_validator.h */ +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8_validation { - size_t ascii_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask0), 0)); - size_t two_bytes_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask0), 1)); - size_t three_bytes_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask1), 0)); - - count += 16 - 3*ascii_count - 2*two_bytes_count - three_bytes_count; - } - return count + scalar::utf32::utf8_length_from_utf32(input + pos, length - pos); +/** + * Validates that the string is actual UTF-8. + */ +template +bool generic_validate_utf8(const uint8_t * input, size_t length) { + checker c{}; + buf_block_reader<64> reader(input, length); + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + c.check_next_input(in); + reader.advance(); + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + c.check_next_input(in); + reader.advance(); + c.check_eof(); + return !c.errors(); } -simdutf_warn_unused size_t implementation::utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept { - const uint32x4_t v_ffff = vmovq_n_u32((uint32_t)0xffff); - const uint32x4_t v_1 = vmovq_n_u32((uint32_t)0x1); - size_t pos = 0; - size_t count = 0; - for(;pos + 4 <= length; pos += 4) { - uint32x4_t in = vld1q_u32(reinterpret_cast(input + pos)); - const uint32x4_t surrogate_bytemask = vcgtq_u32(in, v_ffff); - const uint16x8_t reduced_bytemask = vreinterpretq_u16_u32(vandq_u32(surrogate_bytemask, v_1)); - const uint16x8_t compressed_bytemask = vpaddq_u16(reduced_bytemask, reduced_bytemask); - size_t surrogate_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask), 0)); - count += 4 + surrogate_count; - } - return count + scalar::utf32::utf16_length_from_utf32(input + pos, length - pos); +bool generic_validate_utf8(const char * input, size_t length) { + return generic_validate_utf8(reinterpret_cast(input),length); } -simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * input, size_t length) const noexcept { - return utf8::utf32_length_from_utf8(input, length); +/** + * Validates that the string is actual UTF-8 and stops on errors. + */ +template +result generic_validate_utf8_with_errors(const uint8_t * input, size_t length) { + checker c{}; + buf_block_reader<64> reader(input, length); + size_t count{0}; + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + c.check_next_input(in); + if(c.errors()) { + if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk + result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input + count), length - count); + res.count += count; + return res; + } + reader.advance(); + count += 64; + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + c.check_next_input(in); + reader.advance(); + c.check_eof(); + if (c.errors()) { + if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk + result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input) + count, length - count); + res.count += count; + return res; + } else { + return result(error_code::SUCCESS, length); + } } -} // namespace arm64 -} // namespace simdutf - -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/arm64/end.h -/* begin file src/simdutf/arm64/end.h */ -/* end file src/simdutf/arm64/end.h */ -/* end file src/arm64/implementation.cpp */ -#endif -#if SIMDUTF_IMPLEMENTATION_FALLBACK -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=fallback/implementation.cpp -/* begin file src/fallback/implementation.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/fallback/begin.h -/* begin file src/simdutf/fallback/begin.h */ -// redefining SIMDUTF_IMPLEMENTATION to "fallback" -// #define SIMDUTF_IMPLEMENTATION fallback -/* end file src/simdutf/fallback/begin.h */ - - - - - +result generic_validate_utf8_with_errors(const char * input, size_t length) { + return generic_validate_utf8_with_errors(reinterpret_cast(input),length); +} +template +bool generic_validate_ascii(const uint8_t * input, size_t length) { + buf_block_reader<64> reader(input, length); + uint8_t blocks[64]{}; + simd::simd8x64 running_or(blocks); + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + running_or |= in; + reader.advance(); + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + running_or |= in; + return running_or.is_ascii(); +} +bool generic_validate_ascii(const char * input, size_t length) { + return generic_validate_ascii(reinterpret_cast(input),length); +} -namespace simdutf { -namespace fallback { +template +result generic_validate_ascii_with_errors(const uint8_t * input, size_t length) { + buf_block_reader<64> reader(input, length); + size_t count{0}; + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + if (!in.is_ascii()) { + result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); + return result(res.error, count + res.count); + } + reader.advance(); -simdutf_warn_unused int implementation::detect_encodings(const char * input, size_t length) const noexcept { - // If there is a BOM, then we trust it. - auto bom_encoding = simdutf::BOM::check_bom(input, length); - if(bom_encoding != encoding_type::unspecified) { return bom_encoding; } - int out = 0; - if(validate_utf8(input, length)) { out |= encoding_type::UTF8; } - if((length % 2) == 0) { - if(validate_utf16le(reinterpret_cast(input), length/2)) { out |= encoding_type::UTF16_LE; } + count += 64; } - if((length % 4) == 0) { - if(validate_utf32(reinterpret_cast(input), length/4)) { out |= encoding_type::UTF32_LE; } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + if (!in.is_ascii()) { + result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); + return result(res.error, count + res.count); + } else { + return result(error_code::SUCCESS, length); } - - return out; -} - -simdutf_warn_unused bool implementation::validate_utf8(const char *buf, size_t len) const noexcept { - return scalar::utf8::validate(buf, len); } -simdutf_warn_unused result implementation::validate_utf8_with_errors(const char *buf, size_t len) const noexcept { - return scalar::utf8::validate_with_errors(buf, len); +result generic_validate_ascii_with_errors(const char * input, size_t length) { + return generic_validate_ascii_with_errors(reinterpret_cast(input),length); } -simdutf_warn_unused bool implementation::validate_ascii(const char *buf, size_t len) const noexcept { - return scalar::ascii::validate(buf, len); -} +} // namespace utf8_validation +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf8_validation/utf8_validator.h */ +// transcoding from UTF-8 to UTF-16 +/* begin file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ -simdutf_warn_unused result implementation::validate_ascii_with_errors(const char *buf, size_t len) const noexcept { - return scalar::ascii::validate_with_errors(buf, len); -} -simdutf_warn_unused bool implementation::validate_utf16le(const char16_t *buf, size_t len) const noexcept { - return scalar::utf16::validate(buf, len); -} +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8_to_utf16 { -simdutf_warn_unused bool implementation::validate_utf16be(const char16_t *buf, size_t len) const noexcept { - return scalar::utf16::validate(buf, len); -} +using namespace simd; -simdutf_warn_unused result implementation::validate_utf16le_with_errors(const char16_t *buf, size_t len) const noexcept { - return scalar::utf16::validate_with_errors(buf, len); +template +simdutf_warn_unused size_t convert_valid(const char* input, size_t size, + char16_t* utf16_output) noexcept { + // The implementation is not specific to haswell and should be moved to the generic directory. + size_t pos = 0; + char16_t* start{utf16_output}; + const size_t safety_margin = 16; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + // this loop could be unrolled further. For example, we could process the mask + // far more than 64 bytes. + simd8x64 in(reinterpret_cast(input + pos)); + if(in.is_ascii()) { + in.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // Slow path. We hope that the compiler will recognize that this is a slow path. + // Anything that is not a continuation mask is a 'leading byte', that is, the + // start of a new code point. + uint64_t utf8_continuation_mask = in.lt(-65 + 1); + // -65 is 0b10111111 in two-complement's, so largest possible continuation byte + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + // The *start* of code points is not so useful, rather, we want the *end* of code points. + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times when using solely + // the slow/regular path, and at least four times if there are fast paths. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + // + // Thus we may allow convert_masked_utf8_to_utf16 to process + // more bytes at a time under a fast-path mode where 16 bytes + // are consumed at once (e.g., when encountering ASCII). + size_t consumed = convert_masked_utf8_to_utf16(input + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + utf16_output += scalar::utf8_to_utf16::convert_valid(input + pos, size - pos, utf16_output); + return utf16_output - start; } -simdutf_warn_unused result implementation::validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept { - return scalar::utf16::validate_with_errors(buf, len); -} +} // namespace utf8_to_utf16 +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ +/* begin file src/generic/utf8_to_utf16/utf8_to_utf16.h */ -simdutf_warn_unused bool implementation::validate_utf32(const char32_t *buf, size_t len) const noexcept { - return scalar::utf32::validate(buf, len); -} -simdutf_warn_unused result implementation::validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept { - return scalar::utf32::validate_with_errors(buf, len); -} +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8_to_utf16 { +using namespace simd; -simdutf_warn_unused size_t implementation::convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf8_to_utf16::convert(buf, len, utf16_output); -} -simdutf_warn_unused size_t implementation::convert_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf8_to_utf16::convert(buf, len, utf16_output); -} - -simdutf_warn_unused result implementation::convert_utf8_to_utf16le_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf8_to_utf16::convert_with_errors(buf, len, utf16_output); -} - -simdutf_warn_unused result implementation::convert_utf8_to_utf16be_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf8_to_utf16::convert_with_errors(buf, len, utf16_output); -} - -simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf8_to_utf16::convert_valid(buf, len, utf16_output); -} - -simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf8_to_utf16::convert_valid(buf, len, utf16_output); -} - -simdutf_warn_unused size_t implementation::convert_utf8_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf8_to_utf32::convert(buf, len, utf32_output); -} - -simdutf_warn_unused result implementation::convert_utf8_to_utf32_with_errors(const char* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf8_to_utf32::convert_with_errors(buf, len, utf32_output); -} - -simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf32(const char* input, size_t size, - char32_t* utf32_output) const noexcept { - return scalar::utf8_to_utf32::convert_valid(input, size, utf32_output); -} - -simdutf_warn_unused size_t implementation::convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf16_to_utf8::convert(buf, len, utf8_output); -} - -simdutf_warn_unused size_t implementation::convert_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf16_to_utf8::convert(buf, len, utf8_output); -} - -simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf16_to_utf8::convert_with_errors(buf, len, utf8_output); -} - -simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf16_to_utf8::convert_with_errors(buf, len, utf8_output); -} - -simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf16_to_utf8::convert_valid(buf, len, utf8_output); -} + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) +// Bit 1 = Too Long (ASCII followed by continuation) +// Bit 2 = Overlong 3-byte +// Bit 4 = Surrogate +// Bit 5 = Overlong 2-byte +// Bit 7 = Two Continuations + constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ + // 11______ 11______ + constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ + constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ + constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ + constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ + constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ + constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ + // 11110100 101_____ + // 11110101 1001____ + // 11110101 101_____ + // 1111011_ 1001____ + // 1111011_ 101_____ + // 11111___ 1001____ + // 11111___ 101_____ + constexpr const uint8_t TOO_LARGE_1000 = 1<<6; + // 11110101 1000____ + // 1111011_ 1000____ + // 11111___ 1000____ + constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ -simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf16_to_utf8::convert_valid(buf, len, utf8_output); -} + const simd8 byte_1_high = prev1.shr<4>().lookup_16( + // 0_______ ________ + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + // 10______ ________ + TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, + // 1100____ ________ + TOO_SHORT | OVERLONG_2, + // 1101____ ________ + TOO_SHORT, + // 1110____ ________ + TOO_SHORT | OVERLONG_3 | SURROGATE, + // 1111____ ________ + TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 + ); + constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . + const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( + // ____0000 ________ + CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, + // ____0001 ________ + CARRY | OVERLONG_2, + // ____001_ ________ + CARRY, + CARRY, -simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf32_to_utf8::convert(buf, len, utf8_output); -} + // ____0100 ________ + CARRY | TOO_LARGE, + // ____0101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____011_ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, -simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf32_to_utf8::convert_with_errors(buf, len, utf8_output); -} + // ____1___ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____1101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000 + ); + const simd8 byte_2_high = input.shr<4>().lookup_16( + // ________ 0_______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, -simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - return scalar::utf32_to_utf8::convert_valid(buf, len, utf8_output); -} + // ________ 1000____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, + // ________ 1001____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, + // ________ 101_____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, -simdutf_warn_unused size_t implementation::convert_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf32_to_utf16::convert(buf, len, utf16_output); -} + // ________ 11______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT + ); + return (byte_1_high & byte_1_low & byte_2_high); + } + simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, + const simd8 prev_input, const simd8 sc) { + simd8 prev2 = input.prev<2>(prev_input); + simd8 prev3 = input.prev<3>(prev_input); + simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); + simd8 must23_80 = must23 & uint8_t(0x80); + return must23_80 ^ sc; + } -simdutf_warn_unused size_t implementation::convert_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf32_to_utf16::convert(buf, len, utf16_output); -} -simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf32_to_utf16::convert_with_errors(buf, len, utf16_output); -} + struct validating_transcoder { + // If this is nonzero, there has been a UTF-8 error. + simd8 error; -simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf32_to_utf16::convert_with_errors(buf, len, utf16_output); -} + validating_transcoder() : error(uint8_t(0)) {} + // + // Check whether the current bytes are valid UTF-8. + // + simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { + // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes + // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) + simd8 prev1 = input.prev<1>(prev_input); + simd8 sc = check_special_cases(input, prev1); + this->error |= check_multibyte_lengths(input, prev_input, sc); + } -simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf32_to_utf16::convert_valid(buf, len, utf16_output); -} -simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - return scalar::utf32_to_utf16::convert_valid(buf, len, utf16_output); -} + template + simdutf_really_inline size_t convert(const char* in, size_t size, char16_t* utf16_output) { + size_t pos = 0; + char16_t* start{utf16_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf16(in + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { return 0; } + if(pos < size) { + size_t howmany = scalar::utf8_to_utf16::convert(in + pos, size - pos, utf16_output); + if(howmany == 0) { return 0; } + utf16_output += howmany; + } + return utf16_output - start; + } -simdutf_warn_unused size_t implementation::convert_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf16_to_utf32::convert(buf, len, utf32_output); -} - -simdutf_warn_unused size_t implementation::convert_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf16_to_utf32::convert(buf, len, utf32_output); -} - -simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf16_to_utf32::convert_with_errors(buf, len, utf32_output); -} - -simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf16_to_utf32::convert_with_errors(buf, len, utf32_output); -} - -simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf16_to_utf32::convert_valid(buf, len, utf32_output); -} - -simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - return scalar::utf16_to_utf32::convert_valid(buf, len, utf32_output); -} - -void implementation::change_endianness_utf16(const char16_t * input, size_t length, char16_t * output) const noexcept { - scalar::utf16::change_endianness_utf16(input, length, output); -} - -simdutf_warn_unused size_t implementation::count_utf16le(const char16_t * input, size_t length) const noexcept { - return scalar::utf16::count_code_points(input, length); -} - -simdutf_warn_unused size_t implementation::count_utf16be(const char16_t * input, size_t length) const noexcept { - return scalar::utf16::count_code_points(input, length); -} - -simdutf_warn_unused size_t implementation::count_utf8(const char * input, size_t length) const noexcept { - return scalar::utf8::count_code_points(input, length); -} - -simdutf_warn_unused size_t implementation::utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept { - return scalar::utf16::utf8_length_from_utf16(input, length); -} + template + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char16_t* utf16_output) { + size_t pos = 0; + char16_t* start{utf16_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + if (errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + res.count += pos; + return res; + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf16(in + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + res.count += pos; + return res; + } + if(pos < size) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + if (res.error) { // In case of error, we want the error position + res.count += pos; + return res; + } else { // In case of success, we want the number of word written + utf16_output += res.count; + } + } + return result(error_code::SUCCESS, utf16_output - start); + } -simdutf_warn_unused size_t implementation::utf8_length_from_utf16be(const char16_t * input, size_t length) const noexcept { - return scalar::utf16::utf8_length_from_utf16(input, length); -} + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); + } -simdutf_warn_unused size_t implementation::utf32_length_from_utf16le(const char16_t * input, size_t length) const noexcept { - return scalar::utf16::utf32_length_from_utf16(input, length); -} + }; // struct utf8_checker +} // utf8_to_utf16 namespace +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf8_to_utf16/utf8_to_utf16.h */ +// transcoding from UTF-8 to UTF-32 +/* begin file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ -simdutf_warn_unused size_t implementation::utf32_length_from_utf16be(const char16_t * input, size_t length) const noexcept { - return scalar::utf16::utf32_length_from_utf16(input, length); -} +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8_to_utf32 { -simdutf_warn_unused size_t implementation::utf16_length_from_utf8(const char * input, size_t length) const noexcept { - return scalar::utf8::utf16_length_from_utf8(input, length); -} +using namespace simd; -simdutf_warn_unused size_t implementation::utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept { - return scalar::utf32::utf8_length_from_utf32(input, length); -} -simdutf_warn_unused size_t implementation::utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept { - return scalar::utf32::utf16_length_from_utf32(input, length); +simdutf_warn_unused size_t convert_valid(const char* input, size_t size, + char32_t* utf32_output) noexcept { + size_t pos = 0; + char32_t* start{utf32_output}; + const size_t safety_margin = 16; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 in(reinterpret_cast(input + pos)); + if(in.is_ascii()) { + in.store_ascii_as_utf32(utf32_output); + utf32_output += 64; + pos += 64; + } else { + // -65 is 0b10111111 in two-complement's, so largest possible continuation byte + uint64_t utf8_continuation_mask = in.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + size_t max_starting_point = (pos + 64) - 12; + while(pos < max_starting_point) { + size_t consumed = convert_masked_utf8_to_utf32(input + pos, + utf8_end_of_code_point_mask, utf32_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + } + } + utf32_output += scalar::utf8_to_utf32::convert_valid(input + pos, size - pos, utf32_output); + return utf32_output - start; } -simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * input, size_t length) const noexcept { - return scalar::utf8::count_code_points(input, length); -} -} // namespace fallback +} // namespace utf8_to_utf32 +} // unnamed namespace +} // namespace arm64 } // namespace simdutf +/* end file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ +/* begin file src/generic/utf8_to_utf32/utf8_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/fallback/end.h -/* begin file src/simdutf/fallback/end.h */ -/* end file src/simdutf/fallback/end.h */ -/* end file src/fallback/implementation.cpp */ -#endif -#if SIMDUTF_IMPLEMENTATION_ICELAKE -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/implementation.cpp -/* begin file src/icelake/implementation.cpp */ - - -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake/begin.h -/* begin file src/simdutf/icelake/begin.h */ -// redefining SIMDUTF_IMPLEMENTATION to "icelake" -// #define SIMDUTF_IMPLEMENTATION icelake - -#if SIMDUTF_CAN_ALWAYS_RUN_ICELAKE -// nothing needed. -#else -SIMDUTF_TARGET_ICELAKE -#endif -#if SIMDUTF_GCC11ORMORE // workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105593 -SIMDUTF_DISABLE_GCC_WARNING(-Wmaybe-uninitialized) -#endif // end of workaround -/* end file src/simdutf/icelake/begin.h */ namespace simdutf { -namespace icelake { +namespace arm64 { namespace { -#ifndef SIMDUTF_ICELAKE_H -#error "icelake.h must be included" -#endif -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_utf8_common.inl.cpp -/* begin file src/icelake/icelake_utf8_common.inl.cpp */ -// Common procedures for both validating and non-validating conversions from UTF-8. -enum block_processing_mode { SIMDUTF_FULL, SIMDUTF_TAIL}; - -using utf8_to_utf16_result = std::pair; -using utf8_to_utf32_result = std::pair; - -/* - process_block_utf8_to_utf16 converts up to 64 bytes from 'in' from UTF-8 - to UTF-16. When tail = SIMDUTF_FULL, then the full input buffer (64 bytes) - might be used. When tail = SIMDUTF_TAIL, we take into account 'gap' which - indicates how many input bytes are relevant. +namespace utf8_to_utf32 { +using namespace simd; - Returns true when the result is correct, otherwise it returns false. - The provided in and out pointers are advanced according to how many input - bytes have been processed, upon success. -*/ -template -simdutf_really_inline bool process_block_utf8_to_utf16(const char *&in, char16_t *&out, size_t gap) { - // constants - __m512i mask_identity = _mm512_set_epi8(63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0); - __m512i mask_c0c0c0c0 = _mm512_set1_epi32(0xc0c0c0c0); - __m512i mask_80808080 = _mm512_set1_epi32(0x80808080); - __m512i mask_f0f0f0f0 = _mm512_set1_epi32(0xf0f0f0f0); - __m512i mask_dfdfdfdf_tail = _mm512_set_epi64(0xffffdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf); - __m512i mask_c2c2c2c2 = _mm512_set1_epi32(0xc2c2c2c2); - __m512i mask_ffffffff = _mm512_set1_epi32(0xffffffff); - __m512i mask_d7c0d7c0 = _mm512_set1_epi32(0xd7c0d7c0); - __m512i mask_dc00dc00 = _mm512_set1_epi32(0xdc00dc00); - __m512i byteflip = _mm512_setr_epi64( - 0x0607040502030001, - 0x0e0f0c0d0a0b0809, - 0x0607040502030001, - 0x0e0f0c0d0a0b0809, - 0x0607040502030001, - 0x0e0f0c0d0a0b0809, - 0x0607040502030001, - 0x0e0f0c0d0a0b0809 - ); - // Note that 'tail' is a compile-time constant ! - __mmask64 b = (tail == SIMDUTF_FULL) ? 0xFFFFFFFFFFFFFFFF : (uint64_t(1) << gap) - 1; - __m512i input = (tail == SIMDUTF_FULL) ? _mm512_loadu_si512(in) : _mm512_maskz_loadu_epi8(b, in); - __mmask64 m1 = (tail == SIMDUTF_FULL) ? _mm512_cmplt_epu8_mask(input, mask_80808080) : _mm512_mask_cmplt_epu8_mask(b, input, mask_80808080); - if(_ktestc_mask64_u8(m1, b)) {// NOT(m1) AND b -- if all zeroes, then all ASCII - // alternatively, we could do 'if (m1 == b) { ' - if (tail == SIMDUTF_FULL) { - in += 64; // consumed 64 bytes - // we convert a full 64-byte block, writing 128 bytes. - __m512i input1 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(input)); - if(big_endian) { input1 = _mm512_shuffle_epi8(input1, byteflip); } - _mm512_storeu_si512(out, input1); - out += 32; - __m512i input2 = _mm512_cvtepu8_epi16(_mm512_extracti64x4_epi64(input, 1)); - if(big_endian) { input2 = _mm512_shuffle_epi8(input2, byteflip); } - _mm512_storeu_si512(out, input2); - out += 32; - return true; // we are done - } else { - in += gap; - if (gap <= 32) { - __m512i input1 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(input)); - if(big_endian) { input1 = _mm512_shuffle_epi8(input1, byteflip); } - _mm512_mask_storeu_epi16(out, __mmask32((uint64_t(1) << (gap)) - 1), input1); - out += gap; - } else { - __m512i input1 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(input)); - if(big_endian) { input1 = _mm512_shuffle_epi8(input1, byteflip); } - _mm512_storeu_si512(out, input1); - out += 32; - __m512i input2 = _mm512_cvtepu8_epi16(_mm512_extracti64x4_epi64(input, 1)); - if(big_endian) { input2 = _mm512_shuffle_epi8(input2, byteflip); } - _mm512_mask_storeu_epi16(out, __mmask32((uint32_t(1) << (gap - 32)) - 1), input2); - out += gap - 32; - } - return true; // we are done - } - } - // classify characters further - __mmask64 m234 = _mm512_cmp_epu8_mask(mask_c0c0c0c0, input, - _MM_CMPINT_LE); // 0xc0 <= input, 2, 3, or 4 leading byte - __mmask64 m34 = _mm512_cmp_epu8_mask(mask_dfdfdfdf_tail, input, - _MM_CMPINT_LT); // 0xdf < input, 3 or 4 leading byte + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) +// Bit 1 = Too Long (ASCII followed by continuation) +// Bit 2 = Overlong 3-byte +// Bit 4 = Surrogate +// Bit 5 = Overlong 2-byte +// Bit 7 = Two Continuations + constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ + // 11______ 11______ + constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ + constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ + constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ + constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ + constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ + constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ + // 11110100 101_____ + // 11110101 1001____ + // 11110101 101_____ + // 1111011_ 1001____ + // 1111011_ 101_____ + // 11111___ 1001____ + // 11111___ 101_____ + constexpr const uint8_t TOO_LARGE_1000 = 1<<6; + // 11110101 1000____ + // 1111011_ 1000____ + // 11111___ 1000____ + constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ - __mmask64 milltwobytes = _mm512_mask_cmp_epu8_mask(m234, input, mask_c2c2c2c2, - _MM_CMPINT_LT); // 0xc0 <= input < 0xc2 (illegal two byte sequence) - // Overlong 2-byte sequence - if (_ktestz_mask64_u8(milltwobytes, milltwobytes) == 0) { - // Overlong 2-byte sequence - return false; - } - if (_ktestz_mask64_u8(m34, m34) == 0) { - // We have a 3-byte sequence and/or a 2-byte sequence, or possibly even a 4-byte sequence! - __mmask64 m4 = _mm512_cmp_epu8_mask(input, mask_f0f0f0f0, - _MM_CMPINT_NLT); // 0xf0 <= zmm0 (4 byte start bytes) + const simd8 byte_1_high = prev1.shr<4>().lookup_16( + // 0_______ ________ + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + // 10______ ________ + TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, + // 1100____ ________ + TOO_SHORT | OVERLONG_2, + // 1101____ ________ + TOO_SHORT, + // 1110____ ________ + TOO_SHORT | OVERLONG_3 | SURROGATE, + // 1111____ ________ + TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 + ); + constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . + const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( + // ____0000 ________ + CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, + // ____0001 ________ + CARRY | OVERLONG_2, + // ____001_ ________ + CARRY, + CARRY, - __mmask64 mask_not_ascii = (tail == SIMDUTF_FULL) ? _knot_mask64(m1) : _kand_mask64(_knot_mask64(m1), b); + // ____0100 ________ + CARRY | TOO_LARGE, + // ____0101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____011_ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, - __mmask64 mp1 = _kshiftli_mask64(m234, 1); - __mmask64 mp2 = _kshiftli_mask64(m34, 2); - // We could do it as follows... - // if (_kortestz_mask64_u8(m4,m4)) { // compute the bitwise OR of the 64-bit masks a and b and return 1 if all zeroes - // but GCC generates better code when we do: - if (m4 == 0) { // compute the bitwise OR of the 64-bit masks a and b and return 1 if all zeroes - // Fast path with 1,2,3 bytes - __mmask64 mc = _kor_mask64(mp1, mp2); // expected continuation bytes - __mmask64 m1234 = _kor_mask64(m1, m234); - // mismatched continuation bytes: - if (tail == SIMDUTF_FULL) { - __mmask64 xnormcm1234 = _kxnor_mask64(mc, m1234); // XNOR of mc and m1234 should be all zero if they differ - // the presence of a 1 bit indicates that they overlap. - // _kortestz_mask64_u8: compute the bitwise OR of 64-bit masksand return 1 if all zeroes. - if (!_kortestz_mask64_u8(xnormcm1234, xnormcm1234)) { return false; } - } else { - __mmask64 bxorm1234 = _kxor_mask64(b, m1234); - if (mc != bxorm1234) { return false; } - } - // mend: identifying the last bytes of each sequence to be decoded - __mmask64 mend = _kshiftri_mask64(m1234, 1); - if (tail != SIMDUTF_FULL) { - mend = _kor_mask64(mend, (uint64_t(1) << (gap - 1))); - } + // ____1___ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____1101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000 + ); + const simd8 byte_2_high = input.shr<4>().lookup_16( + // ________ 0_______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + // ________ 1000____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, + // ________ 1001____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, + // ________ 101_____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, - __m512i last_and_third = _mm512_maskz_compress_epi8(mend, mask_identity); - __m512i last_and_thirdu16 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(last_and_third)); + // ________ 11______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT + ); + return (byte_1_high & byte_1_low & byte_2_high); + } + simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, + const simd8 prev_input, const simd8 sc) { + simd8 prev2 = input.prev<2>(prev_input); + simd8 prev3 = input.prev<3>(prev_input); + simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); + simd8 must23_80 = must23 & uint8_t(0x80); + return must23_80 ^ sc; + } - __m512i nonasciitags = _mm512_maskz_mov_epi8(mask_not_ascii, mask_c0c0c0c0); // ASCII: 00000000 other: 11000000 - __m512i clearedbytes = _mm512_andnot_si512(nonasciitags, input); // high two bits cleared where not ASCII - __m512i lastbytes = _mm512_maskz_permutexvar_epi8(0x5555555555555555, last_and_thirdu16, - clearedbytes); // the last byte of each character - __mmask64 mask_before_non_ascii = _kshiftri_mask64(mask_not_ascii, 1); // bytes that precede non-ASCII bytes - __m512i indexofsecondlastbytes = _mm512_add_epi16(mask_ffffffff, last_and_thirdu16); // indices of the second last bytes - __m512i beforeasciibytes = _mm512_maskz_mov_epi8(mask_before_non_ascii, clearedbytes); - __m512i secondlastbytes = _mm512_maskz_permutexvar_epi8(0x5555555555555555, indexofsecondlastbytes, - beforeasciibytes); // the second last bytes (of two, three byte seq, - // surrogates) - secondlastbytes = _mm512_slli_epi16(secondlastbytes, 6); // shifted into position + struct validating_transcoder { + // If this is nonzero, there has been a UTF-8 error. + simd8 error; - __m512i indexofthirdlastbytes = _mm512_add_epi16(mask_ffffffff, - indexofsecondlastbytes); // indices of the second last bytes - __m512i thirdlastbyte = _mm512_maskz_mov_epi8(m34, - clearedbytes); // only those that are the third last byte of a sequece - __m512i thirdlastbytes = _mm512_maskz_permutexvar_epi8(0x5555555555555555, indexofthirdlastbytes, - thirdlastbyte); // the third last bytes (of three byte sequences, hi - // surrogate) - thirdlastbytes = _mm512_slli_epi16(thirdlastbytes, 12); // shifted into position - __m512i Wout = _mm512_ternarylogic_epi32(lastbytes, secondlastbytes, thirdlastbytes, 254); - // the elements of Wout excluding the last element if it happens to be a high surrogate: + validating_transcoder() : error(uint8_t(0)) {} + // + // Check whether the current bytes are valid UTF-8. + // + simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { + // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes + // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) + simd8 prev1 = input.prev<1>(prev_input); + simd8 sc = check_special_cases(input, prev1); + this->error |= check_multibyte_lengths(input, prev_input, sc); + } - __mmask64 mprocessed = (tail == SIMDUTF_FULL) ? _pdep_u64(0xFFFFFFFF, mend) : _pdep_u64(0xFFFFFFFF, _kand_mask64(mend, b)); // we adjust mend at the end of the output. - // Encodings out of range... - { - // the location of 3-byte sequence start bytes in the input - __mmask64 m3 = m34 & (b ^ m4); - // words in Wout corresponding to 3-byte sequences. - __mmask32 M3 = __mmask32(_pext_u64(m3 << 2, mend)); - __m512i mask_08000800 = _mm512_set1_epi32(0x08000800); - __mmask32 Msmall800 = _mm512_mask_cmplt_epu16_mask(M3, Wout, mask_08000800); - __m512i mask_d800d800 = _mm512_set1_epi32(0xd800d800); - __m512i Moutminusd800 = _mm512_sub_epi16(Wout, mask_d800d800); - __mmask32 M3s = _mm512_mask_cmplt_epu16_mask(M3, Moutminusd800, mask_08000800); - if (_kor_mask32(Msmall800, M3s)) { return false; } + simdutf_really_inline size_t convert(const char* in, size_t size, char32_t* utf32_output) { + size_t pos = 0; + char32_t* start{utf32_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 4; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); } - int64_t nout = _mm_popcnt_u64(mprocessed); - in += 64 - _lzcnt_u64(mprocessed); - if(big_endian) { Wout = _mm512_shuffle_epi8(Wout, byteflip); } - _mm512_mask_storeu_epi16(out, __mmask32((uint64_t(1) << nout) - 1), Wout); - out += nout; - return true; // ok - } - // - // We have a 4-byte sequence, this is the general case. + // If the input is long enough, then we have that margin-1 is the fourth last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf32(utf32_output); + utf32_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf32(in + pos, + utf8_end_of_code_point_mask, utf32_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { return 0; } + if(pos < size) { + size_t howmany = scalar::utf8_to_utf32::convert(in + pos, size - pos, utf32_output); + if(howmany == 0) { return 0; } + utf32_output += howmany; + } + return utf32_output - start; + } + + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char32_t* utf32_output) { + size_t pos = 0; + char32_t* start{utf32_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 4; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); + } + // If the input is long enough, then we have that margin-1 is the fourth last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf32(utf32_output); + utf32_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + if (errors()) { + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); + res.count += pos; + return res; + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf32(in + pos, + utf8_end_of_code_point_mask, utf32_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); + res.count += pos; + return res; + } + if(pos < size) { + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); + if (res.error) { // In case of error, we want the error position + res.count += pos; + return res; + } else { // In case of success, we want the number of word written + utf32_output += res.count; + } + } + return result(error_code::SUCCESS, utf32_output - start); + } + + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); + } + + }; // struct utf8_checker +} // utf8_to_utf32 namespace +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf8_to_utf32/utf8_to_utf32.h */ +// other functions +/* begin file src/generic/utf8.h */ + +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8 { + +using namespace simd; + +simdutf_really_inline size_t count_code_points(const char* in, size_t size) { + size_t pos = 0; + size_t count = 0; + for(;pos + 64 <= size; pos += 64) { + simd8x64 input(reinterpret_cast(in + pos)); + uint64_t utf8_continuation_mask = input.gt(-65); + count += count_ones(utf8_continuation_mask); + } + return count + scalar::utf8::count_code_points(in + pos, size - pos); +} + +simdutf_really_inline size_t utf16_length_from_utf8(const char* in, size_t size) { + size_t pos = 0; + size_t count = 0; + // This algorithm could no doubt be improved! + for(;pos + 64 <= size; pos += 64) { + simd8x64 input(reinterpret_cast(in + pos)); + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + // We count one word for anything that is not a continuation (so + // leading bytes). + count += 64 - count_ones(utf8_continuation_mask); + int64_t utf8_4byte = input.gteq_unsigned(240); + count += count_ones(utf8_4byte); + } + return count + scalar::utf8::utf16_length_from_utf8(in + pos, size - pos); +} + + +simdutf_really_inline size_t utf32_length_from_utf8(const char* in, size_t size) { + return count_code_points(in, size); +} +} // utf8 namespace +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf8.h */ +/* begin file src/generic/utf16.h */ +namespace simdutf { +namespace arm64 { +namespace { +namespace utf16 { + +template +simdutf_really_inline size_t count_code_points(const char16_t* in, size_t size) { + size_t pos = 0; + size_t count = 0; + for(;pos < size/32*32; pos += 32) { + simd16x32 input(reinterpret_cast(in + pos)); + if (!match_system(big_endian)) { input.swap_bytes(); } + uint64_t not_pair = input.not_in_range(0xDC00, 0xDFFF); + count += count_ones(not_pair) / 2; + } + return count + scalar::utf16::count_code_points(in + pos, size - pos); +} + +template +simdutf_really_inline size_t utf8_length_from_utf16(const char16_t* in, size_t size) { + size_t pos = 0; + size_t count = 0; + // This algorithm could no doubt be improved! + for(;pos < size/32*32; pos += 32) { + simd16x32 input(reinterpret_cast(in + pos)); + if (!match_system(big_endian)) { input.swap_bytes(); } + uint64_t ascii_mask = input.lteq(0x7F); + uint64_t twobyte_mask = input.lteq(0x7FF); + uint64_t not_pair_mask = input.not_in_range(0xD800, 0xDFFF); + + size_t ascii_count = count_ones(ascii_mask) / 2; + size_t twobyte_count = count_ones(twobyte_mask & ~ ascii_mask) / 2; + size_t threebyte_count = count_ones(not_pair_mask & ~ twobyte_mask) / 2; + size_t fourbyte_count = 32 - count_ones(not_pair_mask) / 2; + count += 2 * fourbyte_count + 3 * threebyte_count + 2 * twobyte_count + ascii_count; + } + return count + scalar::utf16::utf8_length_from_utf16(in + pos, size - pos); +} + +template +simdutf_really_inline size_t utf32_length_from_utf16(const char16_t* in, size_t size) { + return count_code_points(in, size); +} + +simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* output) { + size_t pos = 0; + + while (pos < size/32*32) { + simd16x32 input(reinterpret_cast(in + pos)); + input.swap_bytes(); + input.store(reinterpret_cast(output)); + pos += 32; + output += 32; + } + + scalar::utf16::change_endianness_utf16(in + pos, size - pos, output); +} + +} // utf16 +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf16.h */ +// transcoding from UTF-8 to Latin 1 +/* begin file src/generic/utf8_to_latin1/utf8_to_latin1.h */ + + +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8_to_latin1 { +using namespace simd; + + + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// For UTF-8 to Latin 1, we can allow any ASCII character, and any continuation byte, +// but the non-ASCII leading bytes must be 0b11000011 or 0b11000010 and nothing else. +// +// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) +// Bit 1 = Too Long (ASCII followed by continuation) +// Bit 2 = Overlong 3-byte +// Bit 4 = Surrogate +// Bit 5 = Overlong 2-byte +// Bit 7 = Two Continuations + constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ + // 11______ 11______ + constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ + constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ + constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ + constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ + constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ + constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ + // 11110100 101_____ + // 11110101 1001____ + // 11110101 101_____ + // 1111011_ 1001____ + // 1111011_ 101_____ + // 11111___ 1001____ + // 11111___ 101_____ + constexpr const uint8_t TOO_LARGE_1000 = 1<<6; + // 11110101 1000____ + // 1111011_ 1000____ + // 11111___ 1000____ + constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + constexpr const uint8_t FORBIDDEN = 0xff; + + const simd8 byte_1_high = prev1.shr<4>().lookup_16( + // 0_______ ________ + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + // 10______ ________ + TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, + // 1100____ ________ + TOO_SHORT | OVERLONG_2, + // 1101____ ________ + FORBIDDEN, + // 1110____ ________ + FORBIDDEN, + // 1111____ ________ + FORBIDDEN + ); + constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . + const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( + // ____0000 ________ + CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, + // ____0001 ________ + CARRY | OVERLONG_2, + // ____001_ ________ + CARRY, + CARRY, + + // ____0100 ________ + FORBIDDEN, + // ____0101 ________ + FORBIDDEN, + // ____011_ ________ + FORBIDDEN, + FORBIDDEN, + + // ____1___ ________ + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, + // ____1101 ________ + FORBIDDEN, + FORBIDDEN, + FORBIDDEN + ); + const simd8 byte_2_high = input.shr<4>().lookup_16( + // ________ 0_______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + + // ________ 1000____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, + // ________ 1001____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, + // ________ 101_____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + + // ________ 11______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT + ); + return (byte_1_high & byte_1_low & byte_2_high); + } + + struct validating_transcoder { + // If this is nonzero, there has been a UTF-8 error. + simd8 error; + + validating_transcoder() : error(uint8_t(0)) {} + // + // Check whether the current bytes are valid UTF-8. + // + simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { + // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes + // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) + simd8 prev1 = input.prev<1>(prev_input); + this->error |= check_special_cases(input, prev1); + } + + + simdutf_really_inline size_t convert(const char* in, size_t size, char* latin1_output) { + size_t pos = 0; + char* start{latin1_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); //twos complement of -65 is 1011 1111 ... + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store((int8_t*)latin1_output); + latin1_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in this case, we also have ASCII to account for. + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { return 0; } + if(pos < size) { + size_t howmany = scalar::utf8_to_latin1::convert(in + pos, size - pos, latin1_output); + if(howmany == 0) { return 0; } + latin1_output += howmany; + } + return latin1_output - start; + } + + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char* latin1_output) { + size_t pos = 0; + char* start{latin1_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store((int8_t*)latin1_output); + latin1_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + if (errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); + res.count += pos; + return res; + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); + res.count += pos; + return res; + } + if(pos < size) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); + if (res.error) { // In case of error, we want the error position + res.count += pos; + return res; + } else { // In case of success, we want the number of word written + latin1_output += res.count; + } + } + return result(error_code::SUCCESS, latin1_output - start); + } + + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); + } + + }; // struct utf8_checker +} // utf8_to_latin1 namespace +} // unnamed namespace +} // namespace arm64 +} // namespace simdutf +/* end file src/generic/utf8_to_latin1/utf8_to_latin1.h */ +/* begin file src/generic/utf8_to_latin1/valid_utf8_to_latin1.h */ + + +namespace simdutf { +namespace arm64 { +namespace { +namespace utf8_to_latin1 { +using namespace simd; + + + simdutf_really_inline size_t convert_valid(const char* in, size_t size, char* latin1_output) { + size_t pos = 0; + char* start{latin1_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); //twos complement of -65 is 1011 1111 ... + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store((int8_t*)latin1_output); + latin1_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in this case, we also have ASCII to account for. + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(pos < size) { + size_t howmany = scalar::utf8_to_latin1::convert(in + pos, size - pos, latin1_output); + if(howmany == 0) { return 0; } + latin1_output += howmany; + } + return latin1_output - start; + } + + }; +} // utf8_to_latin1 namespace +} // unnamed namespace +} // namespace arm64 + // namespace simdutf +/* end file src/generic/utf8_to_latin1/valid_utf8_to_latin1.h */ + +// placeholder scalars + +// +// Implementation-specific overrides +// +namespace simdutf { +namespace arm64 { + +simdutf_warn_unused int implementation::detect_encodings(const char * input, size_t length) const noexcept { + // If there is a BOM, then we trust it. + auto bom_encoding = simdutf::BOM::check_bom(input, length); + if(bom_encoding != encoding_type::unspecified) { return bom_encoding; } + if (length % 2 == 0) { + return arm_detect_encodings(input, length); + } else { + if (implementation::validate_utf8(input, length)) { + return simdutf::encoding_type::UTF8; + } else { + return simdutf::encoding_type::unspecified; + } + } +} + +simdutf_warn_unused bool implementation::validate_utf8(const char *buf, size_t len) const noexcept { + return arm64::utf8_validation::generic_validate_utf8(buf,len); +} + +simdutf_warn_unused result implementation::validate_utf8_with_errors(const char *buf, size_t len) const noexcept { + return arm64::utf8_validation::generic_validate_utf8_with_errors(buf,len); +} + +simdutf_warn_unused bool implementation::validate_ascii(const char *buf, size_t len) const noexcept { + return arm64::utf8_validation::generic_validate_ascii(buf,len); +} + +simdutf_warn_unused result implementation::validate_ascii_with_errors(const char *buf, size_t len) const noexcept { + return arm64::utf8_validation::generic_validate_ascii_with_errors(buf,len); +} + +simdutf_warn_unused bool implementation::validate_utf16le(const char16_t *buf, size_t len) const noexcept { + const char16_t* tail = arm_validate_utf16(buf, len); + if (tail) { + return scalar::utf16::validate(tail, len - (tail - buf)); + } else { + return false; + } +} + +simdutf_warn_unused bool implementation::validate_utf16be(const char16_t *buf, size_t len) const noexcept { + const char16_t* tail = arm_validate_utf16(buf, len); + if (tail) { + return scalar::utf16::validate(tail, len - (tail - buf)); + } else { + return false; + } +} + +simdutf_warn_unused result implementation::validate_utf16le_with_errors(const char16_t *buf, size_t len) const noexcept { + result res = arm_validate_utf16_with_errors(buf, len); + if (res.count != len) { + result scalar_res = scalar::utf16::validate_with_errors(buf + res.count, len - res.count); + return result(scalar_res.error, res.count + scalar_res.count); + } else { + return res; + } +} + +simdutf_warn_unused result implementation::validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept { + result res = arm_validate_utf16_with_errors(buf, len); + if (res.count != len) { + result scalar_res = scalar::utf16::validate_with_errors(buf + res.count, len - res.count); + return result(scalar_res.error, res.count + scalar_res.count); + } else { + return res; + } +} + +simdutf_warn_unused bool implementation::validate_utf32(const char32_t *buf, size_t len) const noexcept { + const char32_t* tail = arm_validate_utf32le(buf, len); + if (tail) { + return scalar::utf32::validate(tail, len - (tail - buf)); + } else { + return false; + } +} + +simdutf_warn_unused result implementation::validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept { + result res = arm_validate_utf32le_with_errors(buf, len); + if (res.count != len) { + result scalar_res = scalar::utf32::validate_with_errors(buf + res.count, len - res.count); + return result(scalar_res.error, res.count + scalar_res.count); + } else { + return res; + } +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept { + std::pair ret = arm_convert_latin1_to_utf8(buf, len, utf8_output); + size_t converted_chars = ret.second - utf8_output; + + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf8::convert( + ret.first, len - (ret.first - buf), ret.second); + converted_chars += scalar_converted_chars; + } + + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = arm_convert_latin1_to_utf16(buf, len, utf16_output); + size_t converted_chars = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = arm_convert_latin1_to_utf16(buf, len, utf16_output); + size_t converted_chars = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + std::pair ret = arm_convert_latin1_to_utf32(buf, len, utf32_output); + size_t converted_chars = ret.second - utf32_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf32::convert( + ret.first, len - (ret.first - buf), ret.second); + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + utf8_to_latin1::validating_transcoder converter; + return converter.convert(buf, len, latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_latin1_with_errors(const char* buf, size_t len, char* latin1_output) const noexcept { + utf8_to_latin1::validating_transcoder converter; + return converter.convert_with_errors(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + return arm64::utf8_to_latin1::convert_valid(buf,len,latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + utf8_to_utf16::validating_transcoder converter; + return converter.convert(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + utf8_to_utf16::validating_transcoder converter; + return converter.convert(buf, len, utf16_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_utf16le_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + utf8_to_utf16::validating_transcoder converter; + return converter.convert_with_errors(buf, len, utf16_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_utf16be_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + utf8_to_utf16::validating_transcoder converter; + return converter.convert_with_errors(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16le(const char* input, size_t size, + char16_t* utf16_output) const noexcept { + return utf8_to_utf16::convert_valid(input, size, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16be(const char* input, size_t size, + char16_t* utf16_output) const noexcept { + return utf8_to_utf16::convert_valid(input, size, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + utf8_to_utf32::validating_transcoder converter; + return converter.convert(buf, len, utf32_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_utf32_with_errors(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + utf8_to_utf32::validating_transcoder converter; + return converter.convert_with_errors(buf, len, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf32(const char* input, size_t size, + char32_t* utf32_output) const noexcept { + return utf8_to_utf32::convert_valid(input, size, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = arm_convert_utf16_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = arm_convert_utf16_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf16le_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = arm_convert_utf16_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused result implementation::convert_utf16be_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = arm_convert_utf16_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: implement a custom function. + return convert_utf16be_to_latin1(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: implement a custom function. + return convert_utf16le_to_latin1(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + std::pair ret = arm_convert_utf16_to_utf8(buf, len, utf8_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - utf8_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_utf8::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + std::pair ret = arm_convert_utf16_to_utf8(buf, len, utf8_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - utf8_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_utf8::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = arm_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_utf8::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = arm_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_utf8::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return convert_utf16le_to_utf8(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return convert_utf16be_to_utf8(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { + std::pair ret = arm_convert_utf32_to_utf8(buf, len, utf8_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - utf8_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf32_to_utf8::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = arm_convert_utf32_to_utf8_with_errors(buf, len, utf8_output); + if (ret.first.count != len) { + result scalar_res = scalar::utf32_to_utf8::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + std::pair ret = arm_convert_utf16_to_utf32(buf, len, utf32_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - utf32_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_utf32::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + std::pair ret = arm_convert_utf16_to_utf32(buf, len, utf32_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - utf32_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_utf32::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = arm_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_utf32::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = arm_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_utf32::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = arm_convert_utf32_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf32_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf32_to_latin1_with_errors(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = arm_convert_utf32_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf32_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: implement a custom function. + return convert_utf32_to_latin1(buf,len,latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { + // optimization opportunity: implement a custom function. + return convert_utf32_to_utf8(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = arm_convert_utf32_to_utf16(buf, len, utf16_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf32_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = arm_convert_utf32_to_utf16(buf, len, utf16_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf32_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = arm_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); + if (ret.first.count != len) { + result scalar_res = scalar::utf32_to_utf16::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = arm_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); + if (ret.first.count != len) { + result scalar_res = scalar::utf32_to_utf16::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return convert_utf32_to_utf16le(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return convert_utf32_to_utf16be(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return convert_utf16le_to_utf32(buf, len, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return convert_utf16be_to_utf32(buf, len, utf32_output); +} + +void implementation::change_endianness_utf16(const char16_t * input, size_t length, char16_t * output) const noexcept { + utf16::change_endianness_utf16(input, length, output); +} + +simdutf_warn_unused size_t implementation::count_utf16le(const char16_t * input, size_t length) const noexcept { + return utf16::count_code_points(input, length); +} + +simdutf_warn_unused size_t implementation::count_utf16be(const char16_t * input, size_t length) const noexcept { + return utf16::count_code_points(input, length); +} + +simdutf_warn_unused size_t implementation::count_utf8(const char * input, size_t length) const noexcept { + return utf8::count_code_points(input, length); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf8(const char* buf, size_t len) const noexcept { + return count_utf8(buf,len); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf16(size_t length) const noexcept { + return scalar::utf16::latin1_length_from_utf16(length); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf32(size_t length) const noexcept { + return scalar::utf32::latin1_length_from_utf32(length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_latin1(const char * input, size_t length) const noexcept { + // See https://lemire.me/blog/2023/05/15/computing-the-utf-8-size-of-a-latin-1-string-quickly-arm-neon-edition/ + // credit to Pete Cawley + const uint8_t *data = reinterpret_cast(input); + uint64_t result = 0; + const int lanes = sizeof(uint8x16_t); + uint8_t rem = length % lanes; + const uint8_t *simd_end = data + (length / lanes) * lanes; + const uint8x16_t threshold = vdupq_n_u8(0x80); + for (; data < simd_end; data += lanes) { + // load 16 bytes + uint8x16_t input_vec = vld1q_u8(data); + // compare to threshold (0x80) + uint8x16_t withhighbit = vcgeq_u8(input_vec, threshold); + // vertical addition + result -= vaddvq_s8(vreinterpretq_s8_u8(withhighbit)); + } + // scalar tail + for (uint8_t j = 0; j < rem; j++) { + result += (simd_end[j] >> 7); + } + return result + length; +} + +simdutf_warn_unused size_t implementation::utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept { + return utf16::utf8_length_from_utf16(input, length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_utf16be(const char16_t * input, size_t length) const noexcept { + return utf16::utf8_length_from_utf16(input, length); +} + + +simdutf_warn_unused size_t implementation::utf16_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf16_length_from_latin1(length); +} + + +simdutf_warn_unused size_t implementation::utf32_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf32_length_from_latin1(length); +} + + + +simdutf_warn_unused size_t implementation::utf32_length_from_utf16le(const char16_t * input, size_t length) const noexcept { + return utf16::utf32_length_from_utf16(input, length); +} + +simdutf_warn_unused size_t implementation::utf32_length_from_utf16be(const char16_t * input, size_t length) const noexcept { + return utf16::utf32_length_from_utf16(input, length); +} + +simdutf_warn_unused size_t implementation::utf16_length_from_utf8(const char * input, size_t length) const noexcept { + return utf8::utf16_length_from_utf8(input, length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept { + const uint32x4_t v_7f = vmovq_n_u32((uint32_t)0x7f); + const uint32x4_t v_7ff = vmovq_n_u32((uint32_t)0x7ff); + const uint32x4_t v_ffff = vmovq_n_u32((uint32_t)0xffff); + const uint32x4_t v_1 = vmovq_n_u32((uint32_t)0x1); + size_t pos = 0; + size_t count = 0; + for(;pos + 4 <= length; pos += 4) { + uint32x4_t in = vld1q_u32(reinterpret_cast(input + pos)); + const uint32x4_t ascii_bytes_bytemask = vcleq_u32(in, v_7f); + const uint32x4_t one_two_bytes_bytemask = vcleq_u32(in, v_7ff); + const uint32x4_t two_bytes_bytemask = veorq_u32(one_two_bytes_bytemask, ascii_bytes_bytemask); + const uint32x4_t three_bytes_bytemask = veorq_u32(vcleq_u32(in, v_ffff), one_two_bytes_bytemask); + + const uint16x8_t reduced_ascii_bytes_bytemask = vreinterpretq_u16_u32(vandq_u32(ascii_bytes_bytemask, v_1)); + const uint16x8_t reduced_two_bytes_bytemask = vreinterpretq_u16_u32(vandq_u32(two_bytes_bytemask, v_1)); + const uint16x8_t reduced_three_bytes_bytemask = vreinterpretq_u16_u32(vandq_u32(three_bytes_bytemask, v_1)); + + const uint16x8_t compressed_bytemask0 = vpaddq_u16(reduced_ascii_bytes_bytemask, reduced_two_bytes_bytemask); + const uint16x8_t compressed_bytemask1 = vpaddq_u16(reduced_three_bytes_bytemask, reduced_three_bytes_bytemask); + + size_t ascii_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask0), 0)); + size_t two_bytes_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask0), 1)); + size_t three_bytes_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask1), 0)); + + count += 16 - 3*ascii_count - 2*two_bytes_count - three_bytes_count; + } + return count + scalar::utf32::utf8_length_from_utf32(input + pos, length - pos); +} + +simdutf_warn_unused size_t implementation::utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept { + const uint32x4_t v_ffff = vmovq_n_u32((uint32_t)0xffff); + const uint32x4_t v_1 = vmovq_n_u32((uint32_t)0x1); + size_t pos = 0; + size_t count = 0; + for(;pos + 4 <= length; pos += 4) { + uint32x4_t in = vld1q_u32(reinterpret_cast(input + pos)); + const uint32x4_t surrogate_bytemask = vcgtq_u32(in, v_ffff); + const uint16x8_t reduced_bytemask = vreinterpretq_u16_u32(vandq_u32(surrogate_bytemask, v_1)); + const uint16x8_t compressed_bytemask = vpaddq_u16(reduced_bytemask, reduced_bytemask); + size_t surrogate_count = count_ones(vgetq_lane_u64(vreinterpretq_u64_u16(compressed_bytemask), 0)); + count += 4 + surrogate_count; + } + return count + scalar::utf32::utf16_length_from_utf32(input + pos, length - pos); +} + +simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * input, size_t length) const noexcept { + return utf8::utf32_length_from_utf8(input, length); +} + +} // namespace arm64 +} // namespace simdutf + +/* begin file src/simdutf/arm64/end.h */ +/* end file src/simdutf/arm64/end.h */ +/* end file src/arm64/implementation.cpp */ +#endif +#if SIMDUTF_IMPLEMENTATION_FALLBACK +/* begin file src/fallback/implementation.cpp */ +/* begin file src/simdutf/fallback/begin.h */ +// redefining SIMDUTF_IMPLEMENTATION to "fallback" +// #define SIMDUTF_IMPLEMENTATION fallback +/* end file src/simdutf/fallback/begin.h */ + + + + + + + + + +namespace simdutf { +namespace fallback { + +simdutf_warn_unused int implementation::detect_encodings(const char * input, size_t length) const noexcept { + // If there is a BOM, then we trust it. + auto bom_encoding = simdutf::BOM::check_bom(input, length); + if(bom_encoding != encoding_type::unspecified) { return bom_encoding; } + int out = 0; + if(validate_utf8(input, length)) { out |= encoding_type::UTF8; } + if((length % 2) == 0) { + if(validate_utf16le(reinterpret_cast(input), length/2)) { out |= encoding_type::UTF16_LE; } + } + if((length % 4) == 0) { + if(validate_utf32(reinterpret_cast(input), length/4)) { out |= encoding_type::UTF32_LE; } + } + + return out; +} + +simdutf_warn_unused bool implementation::validate_utf8(const char *buf, size_t len) const noexcept { + return scalar::utf8::validate(buf, len); +} + +simdutf_warn_unused result implementation::validate_utf8_with_errors(const char *buf, size_t len) const noexcept { + return scalar::utf8::validate_with_errors(buf, len); +} + +simdutf_warn_unused bool implementation::validate_ascii(const char *buf, size_t len) const noexcept { + return scalar::ascii::validate(buf, len); +} + +simdutf_warn_unused result implementation::validate_ascii_with_errors(const char *buf, size_t len) const noexcept { + return scalar::ascii::validate_with_errors(buf, len); +} + +simdutf_warn_unused bool implementation::validate_utf16le(const char16_t *buf, size_t len) const noexcept { + return scalar::utf16::validate(buf, len); +} + +simdutf_warn_unused bool implementation::validate_utf16be(const char16_t *buf, size_t len) const noexcept { + return scalar::utf16::validate(buf, len); +} + +simdutf_warn_unused result implementation::validate_utf16le_with_errors(const char16_t *buf, size_t len) const noexcept { + return scalar::utf16::validate_with_errors(buf, len); +} + +simdutf_warn_unused result implementation::validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept { + return scalar::utf16::validate_with_errors(buf, len); +} + +simdutf_warn_unused bool implementation::validate_utf32(const char32_t *buf, size_t len) const noexcept { + return scalar::utf32::validate(buf, len); +} + +simdutf_warn_unused result implementation::validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept { + return scalar::utf32::validate_with_errors(buf, len); +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept { + return scalar::latin1_to_utf8::convert(buf,len,utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::latin1_to_utf16::convert(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::latin1_to_utf16::convert(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf32(const char * buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::latin1_to_utf32::convert(buf,len,utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf8_to_latin1::convert(buf, len, latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_latin1_with_errors(const char* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf8_to_latin1::convert_with_errors(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf8_to_latin1::convert_valid(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf8_to_utf16::convert(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf8_to_utf16::convert(buf, len, utf16_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_utf16le_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf8_to_utf16::convert_with_errors(buf, len, utf16_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_utf16be_with_errors(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf8_to_utf16::convert_with_errors(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf8_to_utf16::convert_valid(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf8_to_utf16::convert_valid(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf8_to_utf32::convert(buf, len, utf32_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_utf32_with_errors(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf8_to_utf32::convert_with_errors(buf, len, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf32(const char* input, size_t size, + char32_t* utf32_output) const noexcept { + return scalar::utf8_to_utf32::convert_valid(input, size, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf16_to_latin1::convert(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf16_to_latin1::convert(buf, len, latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf16le_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf16_to_latin1::convert_with_errors(buf, len, latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf16be_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf16_to_latin1::convert_with_errors(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf16_to_latin1::convert_valid(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf16_to_latin1::convert_valid(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf16_to_utf8::convert(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf16_to_utf8::convert(buf, len, utf8_output); +} + +simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf16_to_utf8::convert_with_errors(buf, len, utf8_output); +} + +simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf16_to_utf8::convert_with_errors(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf16_to_utf8::convert_valid(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf16_to_utf8::convert_valid(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf32_to_latin1::convert(buf, len, latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf32_to_latin1_with_errors(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf32_to_latin1::convert_with_errors(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf32_to_latin1::convert_valid(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf32_to_utf8::convert(buf, len, utf8_output); +} + +simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf32_to_utf8::convert_with_errors(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { + return scalar::utf32_to_utf8::convert_valid(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf32_to_utf16::convert(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf32_to_utf16::convert(buf, len, utf16_output); +} + +simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf32_to_utf16::convert_with_errors(buf, len, utf16_output); +} + +simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf32_to_utf16::convert_with_errors(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16le(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf32_to_utf16::convert_valid(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_utf16be(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { + return scalar::utf32_to_utf16::convert_valid(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf16_to_utf32::convert(buf, len, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf16_to_utf32::convert(buf, len, utf32_output); +} + +simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf16_to_utf32::convert_with_errors(buf, len, utf32_output); +} + +simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf16_to_utf32::convert_with_errors(buf, len, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf16_to_utf32::convert_valid(buf, len, utf32_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf32(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { + return scalar::utf16_to_utf32::convert_valid(buf, len, utf32_output); +} + +void implementation::change_endianness_utf16(const char16_t * input, size_t length, char16_t * output) const noexcept { + scalar::utf16::change_endianness_utf16(input, length, output); +} + +simdutf_warn_unused size_t implementation::count_utf16le(const char16_t * input, size_t length) const noexcept { + return scalar::utf16::count_code_points(input, length); +} + +simdutf_warn_unused size_t implementation::count_utf16be(const char16_t * input, size_t length) const noexcept { + return scalar::utf16::count_code_points(input, length); +} + +simdutf_warn_unused size_t implementation::count_utf8(const char * input, size_t length) const noexcept { + return scalar::utf8::count_code_points(input, length); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf8(const char* buf, size_t len) const noexcept { + return scalar::utf8::latin1_length_from_utf8(buf,len); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf16(size_t length) const noexcept { + return scalar::utf16::latin1_length_from_utf16(length); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf32(size_t length) const noexcept { + return length; +} + +simdutf_warn_unused size_t implementation::utf8_length_from_latin1(const char * input, size_t length) const noexcept { + return scalar::latin1::utf8_length_from_latin1(input,length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept { + return scalar::utf16::utf8_length_from_utf16(input, length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_utf16be(const char16_t * input, size_t length) const noexcept { + return scalar::utf16::utf8_length_from_utf16(input, length); +} + +simdutf_warn_unused size_t implementation::utf32_length_from_utf16le(const char16_t * input, size_t length) const noexcept { + return scalar::utf16::utf32_length_from_utf16(input, length); +} + +simdutf_warn_unused size_t implementation::utf32_length_from_utf16be(const char16_t * input, size_t length) const noexcept { + return scalar::utf16::utf32_length_from_utf16(input, length); +} + +simdutf_warn_unused size_t implementation::utf16_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf16_length_from_latin1(length); +} + +simdutf_warn_unused size_t implementation::utf16_length_from_utf8(const char * input, size_t length) const noexcept { + return scalar::utf8::utf16_length_from_utf8(input, length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept { + return scalar::utf32::utf8_length_from_utf32(input, length); +} + +simdutf_warn_unused size_t implementation::utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept { + return scalar::utf32::utf16_length_from_utf32(input, length); +} + +simdutf_warn_unused size_t implementation::utf32_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf32_length_from_latin1(length); +} + +simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * input, size_t length) const noexcept { + return scalar::utf8::count_code_points(input, length); +} + +} // namespace fallback +} // namespace simdutf + +/* begin file src/simdutf/fallback/end.h */ +/* end file src/simdutf/fallback/end.h */ +/* end file src/fallback/implementation.cpp */ +#endif +#if SIMDUTF_IMPLEMENTATION_ICELAKE +/* begin file src/icelake/implementation.cpp */ + + +/* begin file src/simdutf/icelake/begin.h */ +// redefining SIMDUTF_IMPLEMENTATION to "icelake" +// #define SIMDUTF_IMPLEMENTATION icelake + +#if SIMDUTF_CAN_ALWAYS_RUN_ICELAKE +// nothing needed. +#else +SIMDUTF_TARGET_ICELAKE +#endif + +#if SIMDUTF_GCC11ORMORE // workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105593 +SIMDUTF_DISABLE_GCC_WARNING(-Wmaybe-uninitialized) +#endif // end of workaround +/* end file src/simdutf/icelake/begin.h */ +namespace simdutf { +namespace icelake { +namespace { +#ifndef SIMDUTF_ICELAKE_H +#error "icelake.h must be included" +#endif +/* begin file src/icelake/icelake_utf8_common.inl.cpp */ +// Common procedures for both validating and non-validating conversions from UTF-8. +enum block_processing_mode { SIMDUTF_FULL, SIMDUTF_TAIL}; + +using utf8_to_utf16_result = std::pair; +using utf8_to_utf32_result = std::pair; + +/* + process_block_utf8_to_utf16 converts up to 64 bytes from 'in' from UTF-8 + to UTF-16. When tail = SIMDUTF_FULL, then the full input buffer (64 bytes) + might be used. When tail = SIMDUTF_TAIL, we take into account 'gap' which + indicates how many input bytes are relevant. + + Returns true when the result is correct, otherwise it returns false. + + The provided in and out pointers are advanced according to how many input + bytes have been processed, upon success. +*/ +template +simdutf_really_inline bool process_block_utf8_to_utf16(const char *&in, char16_t *&out, size_t gap) { + // constants + __m512i mask_identity = _mm512_set_epi8(63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0); + __m512i mask_c0c0c0c0 = _mm512_set1_epi32(0xc0c0c0c0); + __m512i mask_80808080 = _mm512_set1_epi32(0x80808080); + __m512i mask_f0f0f0f0 = _mm512_set1_epi32(0xf0f0f0f0); + __m512i mask_dfdfdfdf_tail = _mm512_set_epi64(0xffffdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf, 0xdfdfdfdfdfdfdfdf); + __m512i mask_c2c2c2c2 = _mm512_set1_epi32(0xc2c2c2c2); + __m512i mask_ffffffff = _mm512_set1_epi32(0xffffffff); + __m512i mask_d7c0d7c0 = _mm512_set1_epi32(0xd7c0d7c0); + __m512i mask_dc00dc00 = _mm512_set1_epi32(0xdc00dc00); + __m512i byteflip = _mm512_setr_epi64( + 0x0607040502030001, + 0x0e0f0c0d0a0b0809, + 0x0607040502030001, + 0x0e0f0c0d0a0b0809, + 0x0607040502030001, + 0x0e0f0c0d0a0b0809, + 0x0607040502030001, + 0x0e0f0c0d0a0b0809 + ); + // Note that 'tail' is a compile-time constant ! + __mmask64 b = (tail == SIMDUTF_FULL) ? 0xFFFFFFFFFFFFFFFF : (uint64_t(1) << gap) - 1; + __m512i input = (tail == SIMDUTF_FULL) ? _mm512_loadu_si512(in) : _mm512_maskz_loadu_epi8(b, in); + __mmask64 m1 = (tail == SIMDUTF_FULL) ? _mm512_cmplt_epu8_mask(input, mask_80808080) : _mm512_mask_cmplt_epu8_mask(b, input, mask_80808080); + if(_ktestc_mask64_u8(m1, b)) {// NOT(m1) AND b -- if all zeroes, then all ASCII + // alternatively, we could do 'if (m1 == b) { ' + if (tail == SIMDUTF_FULL) { + in += 64; // consumed 64 bytes + // we convert a full 64-byte block, writing 128 bytes. + __m512i input1 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(input)); + if(big_endian) { input1 = _mm512_shuffle_epi8(input1, byteflip); } + _mm512_storeu_si512(out, input1); + out += 32; + __m512i input2 = _mm512_cvtepu8_epi16(_mm512_extracti64x4_epi64(input, 1)); + if(big_endian) { input2 = _mm512_shuffle_epi8(input2, byteflip); } + _mm512_storeu_si512(out, input2); + out += 32; + return true; // we are done + } else { + in += gap; + if (gap <= 32) { + __m512i input1 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(input)); + if(big_endian) { input1 = _mm512_shuffle_epi8(input1, byteflip); } + _mm512_mask_storeu_epi16(out, __mmask32((uint64_t(1) << (gap)) - 1), input1); + out += gap; + } else { + __m512i input1 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(input)); + if(big_endian) { input1 = _mm512_shuffle_epi8(input1, byteflip); } + _mm512_storeu_si512(out, input1); + out += 32; + __m512i input2 = _mm512_cvtepu8_epi16(_mm512_extracti64x4_epi64(input, 1)); + if(big_endian) { input2 = _mm512_shuffle_epi8(input2, byteflip); } + _mm512_mask_storeu_epi16(out, __mmask32((uint32_t(1) << (gap - 32)) - 1), input2); + out += gap - 32; + } + return true; // we are done + } + } + // classify characters further + __mmask64 m234 = _mm512_cmp_epu8_mask(mask_c0c0c0c0, input, + _MM_CMPINT_LE); // 0xc0 <= input, 2, 3, or 4 leading byte + __mmask64 m34 = _mm512_cmp_epu8_mask(mask_dfdfdfdf_tail, input, + _MM_CMPINT_LT); // 0xdf < input, 3 or 4 leading byte + + __mmask64 milltwobytes = _mm512_mask_cmp_epu8_mask(m234, input, mask_c2c2c2c2, + _MM_CMPINT_LT); // 0xc0 <= input < 0xc2 (illegal two byte sequence) + // Overlong 2-byte sequence + if (_ktestz_mask64_u8(milltwobytes, milltwobytes) == 0) { + // Overlong 2-byte sequence + return false; + } + if (_ktestz_mask64_u8(m34, m34) == 0) { + // We have a 3-byte sequence and/or a 2-byte sequence, or possibly even a 4-byte sequence! + __mmask64 m4 = _mm512_cmp_epu8_mask(input, mask_f0f0f0f0, + _MM_CMPINT_NLT); // 0xf0 <= zmm0 (4 byte start bytes) + + __mmask64 mask_not_ascii = (tail == SIMDUTF_FULL) ? _knot_mask64(m1) : _kand_mask64(_knot_mask64(m1), b); + + __mmask64 mp1 = _kshiftli_mask64(m234, 1); + __mmask64 mp2 = _kshiftli_mask64(m34, 2); + // We could do it as follows... + // if (_kortestz_mask64_u8(m4,m4)) { // compute the bitwise OR of the 64-bit masks a and b and return 1 if all zeroes + // but GCC generates better code when we do: + if (m4 == 0) { // compute the bitwise OR of the 64-bit masks a and b and return 1 if all zeroes + // Fast path with 1,2,3 bytes + __mmask64 mc = _kor_mask64(mp1, mp2); // expected continuation bytes + __mmask64 m1234 = _kor_mask64(m1, m234); + // mismatched continuation bytes: + if (tail == SIMDUTF_FULL) { + __mmask64 xnormcm1234 = _kxnor_mask64(mc, m1234); // XNOR of mc and m1234 should be all zero if they differ + // the presence of a 1 bit indicates that they overlap. + // _kortestz_mask64_u8: compute the bitwise OR of 64-bit masksand return 1 if all zeroes. + if (!_kortestz_mask64_u8(xnormcm1234, xnormcm1234)) { return false; } + } else { + __mmask64 bxorm1234 = _kxor_mask64(b, m1234); + if (mc != bxorm1234) { return false; } + } + // mend: identifying the last bytes of each sequence to be decoded + __mmask64 mend = _kshiftri_mask64(m1234, 1); + if (tail != SIMDUTF_FULL) { + mend = _kor_mask64(mend, (uint64_t(1) << (gap - 1))); + } + + + __m512i last_and_third = _mm512_maskz_compress_epi8(mend, mask_identity); + __m512i last_and_thirdu16 = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(last_and_third)); + + __m512i nonasciitags = _mm512_maskz_mov_epi8(mask_not_ascii, mask_c0c0c0c0); // ASCII: 00000000 other: 11000000 + __m512i clearedbytes = _mm512_andnot_si512(nonasciitags, input); // high two bits cleared where not ASCII + __m512i lastbytes = _mm512_maskz_permutexvar_epi8(0x5555555555555555, last_and_thirdu16, + clearedbytes); // the last byte of each character + + __mmask64 mask_before_non_ascii = _kshiftri_mask64(mask_not_ascii, 1); // bytes that precede non-ASCII bytes + __m512i indexofsecondlastbytes = _mm512_add_epi16(mask_ffffffff, last_and_thirdu16); // indices of the second last bytes + __m512i beforeasciibytes = _mm512_maskz_mov_epi8(mask_before_non_ascii, clearedbytes); + __m512i secondlastbytes = _mm512_maskz_permutexvar_epi8(0x5555555555555555, indexofsecondlastbytes, + beforeasciibytes); // the second last bytes (of two, three byte seq, + // surrogates) + secondlastbytes = _mm512_slli_epi16(secondlastbytes, 6); // shifted into position + + __m512i indexofthirdlastbytes = _mm512_add_epi16(mask_ffffffff, + indexofsecondlastbytes); // indices of the second last bytes + __m512i thirdlastbyte = _mm512_maskz_mov_epi8(m34, + clearedbytes); // only those that are the third last byte of a sequece + __m512i thirdlastbytes = _mm512_maskz_permutexvar_epi8(0x5555555555555555, indexofthirdlastbytes, + thirdlastbyte); // the third last bytes (of three byte sequences, hi + // surrogate) + thirdlastbytes = _mm512_slli_epi16(thirdlastbytes, 12); // shifted into position + __m512i Wout = _mm512_ternarylogic_epi32(lastbytes, secondlastbytes, thirdlastbytes, 254); + // the elements of Wout excluding the last element if it happens to be a high surrogate: + + __mmask64 mprocessed = (tail == SIMDUTF_FULL) ? _pdep_u64(0xFFFFFFFF, mend) : _pdep_u64(0xFFFFFFFF, _kand_mask64(mend, b)); // we adjust mend at the end of the output. + + + // Encodings out of range... + { + // the location of 3-byte sequence start bytes in the input + __mmask64 m3 = m34 & (b ^ m4); + // code units in Wout corresponding to 3-byte sequences. + __mmask32 M3 = __mmask32(_pext_u64(m3 << 2, mend)); + __m512i mask_08000800 = _mm512_set1_epi32(0x08000800); + __mmask32 Msmall800 = _mm512_mask_cmplt_epu16_mask(M3, Wout, mask_08000800); + __m512i mask_d800d800 = _mm512_set1_epi32(0xd800d800); + __m512i Moutminusd800 = _mm512_sub_epi16(Wout, mask_d800d800); + __mmask32 M3s = _mm512_mask_cmplt_epu16_mask(M3, Moutminusd800, mask_08000800); + if (_kor_mask32(Msmall800, M3s)) { return false; } + } + int64_t nout = _mm_popcnt_u64(mprocessed); + in += 64 - _lzcnt_u64(mprocessed); + if(big_endian) { Wout = _mm512_shuffle_epi8(Wout, byteflip); } + _mm512_mask_storeu_epi16(out, __mmask32((uint64_t(1) << nout) - 1), Wout); + out += nout; + return true; // ok + } + // + // We have a 4-byte sequence, this is the general case. // Slow! __mmask64 mp3 = _kshiftli_mask64(m4, 3); __mmask64 mc = _kor_mask64(_kor_mask64(mp1, mp2), mp3); // expected continuation bytes @@ -16025,7 +18112,7 @@ simdutf_really_inline bool process_block_utf8_to_utf16(const char *&in, char16_t { // the location of 3-byte sequence start bytes in the input __mmask64 m3 = m34 & (b ^ m4); - // words in Wout corresponding to 3-byte sequences. + // code units in Wout corresponding to 3-byte sequences. __mmask32 M3 = __mmask32(_pext_u64(m3 << 2, mend)); __m512i mask_08000800 = _mm512_set1_epi32(0x08000800); __mmask32 Msmall800 = _mm512_mask_cmplt_epu16_mask(M3, Wout, mask_08000800); @@ -16075,9 +18162,9 @@ simdutf_really_inline bool process_block_utf8_to_utf16(const char *&in, char16_t in += 64 - _lzcnt_u64(_pdep_u64(0xFFFFFFFF, continuation_or_ascii)); } __m512i lead = _mm512_maskz_compress_epi8(leading, leading2byte); // will contain zero for ascii, and the data - lead = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(lead)); // ... zero extended into words + lead = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(lead)); // ... zero extended into code units __m512i follow = _mm512_maskz_compress_epi8(continuation_or_ascii, input); // the last bytes of each sequence - follow = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(follow)); // ... zero extended into words + follow = _mm512_cvtepu8_epi16(_mm512_castsi512_si256(follow)); // ... zero extended into code units lead = _mm512_slli_epi16(lead, 6); // shifted into position __m512i final = _mm512_add_epi16(follow, lead); // combining lead and follow @@ -16100,13 +18187,13 @@ simdutf_really_inline bool process_block_utf8_to_utf16(const char *&in, char16_t /* - utf32_to_utf16_masked converts `count` lower UTF-32 words + utf32_to_utf16_masked converts `count` lower UTF-32 code units from input `utf32` into UTF-16. It differs from utf32_to_utf16 in that it 'masks' the writes. - Returns how many 16-bit words were stored. + Returns how many 16-bit code units were stored. - byteflip is used for flipping 16-bit words, and it should be + byteflip is used for flipping 16-bit code units, and it should be __m512i byteflip = _mm512_setr_epi64( 0x0607040502030001, 0x0e0f0c0d0a0b0809, @@ -16139,7 +18226,7 @@ simdutf_really_inline size_t utf32_to_utf16_masked(const __m512i byteflip, __m51 } { - // build surrogate pair words in 32-bit lanes + // build surrogate pair code units in 32-bit lanes // t0 = 8 x [000000000000aaaa|aaaaaabbbbbbbbbb] const __m512i v_0001_0000 = _mm512_set1_epi32(0x00010000); @@ -16160,7 +18247,7 @@ simdutf_really_inline size_t utf32_to_utf16_masked(const __m512i byteflip, __m51 const __m512i t3 = _mm512_ternarylogic_epi32(t2, v_fc00_fc00, v_d800_dc00, 0xba); const __m512i t4 = _mm512_mask_blend_epi32(sp_mask, utf32, t3); __m512i t5 = _mm512_ror_epi32(t4, 16); - // Here we want to trim all of the upper 16-bit words from the 2-byte + // Here we want to trim all of the upper 16-bit code units from the 2-byte // characters represented as 4-byte values. We can compute it from // sp_mask or the following... It can be more optimized! const __mmask32 nonzero = _kor_mask32(0xaaaaaaaa,_mm512_cmpneq_epi16_mask(t5, _mm512_setzero_si512())); @@ -16176,12 +18263,12 @@ simdutf_really_inline size_t utf32_to_utf16_masked(const __m512i byteflip, __m51 } /* - utf32_to_utf16 converts `count` lower UTF-32 words + utf32_to_utf16 converts `count` lower UTF-32 code units from input `utf32` into UTF-16. It may overflow. - Returns how many 16-bit words were stored. + Returns how many 16-bit code units were stored. - byteflip is used for flipping 16-bit words, and it should be + byteflip is used for flipping 16-bit code units, and it should be __m512i byteflip = _mm512_setr_epi64( 0x0607040502030001, 0x0e0f0c0d0a0b0809, @@ -16212,7 +18299,7 @@ simdutf_really_inline size_t utf32_to_utf16(const __m512i byteflip, __m512i utf3 } { - // build surrogate pair words in 32-bit lanes + // build surrogate pair code units in 32-bit lanes // t0 = 8 x [000000000000aaaa|aaaaaabbbbbbbbbb] const __m512i v_0001_0000 = _mm512_set1_epi32(0x00010000); @@ -16299,8 +18386,8 @@ __m512i rotate_by_N_epi8(const __m512i input) { simdutf_really_inline __m512i expanded_utf8_to_utf32(__m512i char_class, __m512i utf8) { /* Input: - - utf8: bytes stored at separate 32-bit words - - valid: which words have valid UTF-8 characters + - utf8: bytes stored at separate 32-bit code units + - valid: which code units have valid UTF-8 characters Bit layout of single word. We show 4 cases for each possible UTF-8 character encoding. The `?` denotes bits we must not @@ -16448,7 +18535,6 @@ simdutf_really_inline __m512i expand_utf8_to_utf32(__m512i input) { return expanded_utf8_to_utf32(char_class, input); } /* end file src/icelake/icelake_utf8_common.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_macros.inl.cpp /* begin file src/icelake/icelake_macros.inl.cpp */ /* @@ -16584,7 +18670,6 @@ simdutf_really_inline __m512i expand_utf8_to_utf32(__m512i input) { } \ } /* end file src/icelake/icelake_macros.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_from_valid_utf8.inl.cpp /* begin file src/icelake/icelake_from_valid_utf8.inl.cpp */ // file included directly @@ -16723,7 +18808,6 @@ std::pair valid_utf8_to_fixed_length(const char* str, size using utf8_to_utf16_result = std::pair; /* end file src/icelake/icelake_from_valid_utf8.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_utf8_validation.inl.cpp /* begin file src/icelake/icelake_utf8_validation.inl.cpp */ // file included directly @@ -16853,14 +18937,13 @@ simdutf_really_inline __m512i check_special_cases(__m512i input, const __m512i p }; // struct avx512_utf8_checker /* end file src/icelake/icelake_utf8_validation.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_from_utf8.inl.cpp /* begin file src/icelake/icelake_from_utf8.inl.cpp */ // file included directly // File contains conversion procedure from possibly invalid UTF-8 strings. /** - * Attempts to convert up to len 1-byte words from in (in UTF-8 format) to + * Attempts to convert up to len 1-byte code units from in (in UTF-8 format) to * out. * Returns the position of the input and output after the processing is * completed. Upon error, the output is set to null. @@ -17138,25 +19221,496 @@ std::tuple validating_utf8_to_fixed_length_with_cons SIMDUTF_ICELAKE_WRITE_UTF16_OR_UTF32(vec1, valid_count1, true) } - const __m512i lane3 = broadcast_epi128<3>(utf8); - SIMDUTF_ICELAKE_TRANSCODE16(lane2, lane3, true) + const __m512i lane3 = broadcast_epi128<3>(utf8); + SIMDUTF_ICELAKE_TRANSCODE16(lane2, lane3, true) + + ptr += 3*16; + } + validatedptr += 4*16; + } + { + const __m512i utf8 = _mm512_maskz_loadu_epi8((1ULL<<(end - validatedptr))-1, (const __m512i*)validatedptr); + checker.check_next_input(utf8); + } + checker.check_eof(); + if(checker.errors()) { + return {ptr, output, false}; // We found an error. + } + return {ptr, output, true}; +} +/* end file src/icelake/icelake_from_utf8.inl.cpp */ +/* begin file src/icelake/icelake_convert_utf8_to_latin1.inl.cpp */ +// file included directly + +// File contains conversion procedure from possibly invalid UTF-8 strings. + +// template +template +simdutf_really_inline size_t process_block_from_utf8_to_latin1(const char *buf, size_t len, + char *latin_output, __m512i minus64, + __m512i one, + __mmask64 *next_leading_ptr, + __mmask64 *next_bit6_ptr) { + __mmask64 load_mask = + is_remaining ? _bzhi_u64(~0ULL, (unsigned int)len) : ~0ULL; + __m512i input = _mm512_maskz_loadu_epi8(load_mask, (__m512i *)buf); + __mmask64 nonascii = _mm512_movepi8_mask(input); + + if (nonascii == 0) { + is_remaining + ? _mm512_mask_storeu_epi8((__m512i *)latin_output, load_mask, input) + : _mm512_storeu_si512((__m512i *)latin_output, input); + return len; + } + + __mmask64 leading = _mm512_cmpge_epu8_mask(input, minus64); + + __m512i highbits = _mm512_xor_si512(input, _mm512_set1_epi8(-62)); + __mmask64 invalid_leading_bytes = + _mm512_mask_cmpgt_epu8_mask(leading, highbits, one); + + if (invalid_leading_bytes) { + return 0; // Indicates error + } + + __mmask64 leading_shift = (leading << 1) | *next_leading_ptr; + *next_leading_ptr = leading >> 63; + + if ((nonascii ^ leading) != leading_shift) { + return 0; // Indicates error + } + + __mmask64 bit6 = _mm512_cmpeq_epi8_mask(highbits, one); + input = + _mm512_mask_sub_epi8(input, (bit6 << 1) | *next_bit6_ptr, input, minus64); + *next_bit6_ptr = bit6 >> 63; + + __mmask64 retain = ~leading & load_mask; + __m512i output = _mm512_maskz_compress_epi8(retain, input); + int64_t written_out = count_ones(retain); + __mmask64 store_mask = (1ULL << written_out) - 1; + + // *************************** + // Possible optimization? (Nick Nuon) + // This commented out line is 5% faster but sadly it'll also write past + // memory bounds for latin1_output: is_remaining ? + // _mm512_mask_storeu_epi8((__m512i *)latin_output, store_mask, output) : + // _mm512_storeu_si512((__m512i *)latin_output, output); I tried using + // _mm512_storeu_si512 and have the next process_block start from the + // "written_out" point but the compiler shuffles memory in such a way that it + // is signifcantly slower... + // **************************** + _mm512_mask_storeu_epi8((__m512i *)latin_output, store_mask, output); + + return written_out; +} + +size_t utf8_to_latin1_avx512(const char *buf, size_t len, char *latin_output) { + char *start = latin_output; + size_t pos = 0; + __m512i minus64 = _mm512_set1_epi8(-64); // 11111111111 ... 1100 0000 + __m512i one = _mm512_set1_epi8(1); + __mmask64 next_leading = 0; + __mmask64 next_bit6 = 0; + + while (pos + 64 <= len) { + size_t written = process_block_from_utf8_to_latin1(buf + pos, 64, latin_output, minus64, + one, &next_leading, &next_bit6); + if (written == 0) { + return 0; // Indicates error + } + latin_output += written; + pos += 64; + } + + if (pos < len) { + size_t remaining = len - pos; + size_t written = + process_block_from_utf8_to_latin1(buf + pos, remaining, latin_output, minus64, one, + &next_leading, &next_bit6); + if (written == 0) { + return 0; // Indicates error + } + latin_output += written; + } + + return (size_t)(latin_output - start); +} +/* end file src/icelake/icelake_convert_utf8_to_latin1.inl.cpp */ +/* begin file src/icelake/icelake_convert_valid_utf8_to_latin1.inl.cpp */ +// file included directly + +// File contains conversion procedure from valid UTF-8 strings. + +template +simdutf_really_inline size_t process_valid_block_from_utf8_to_latin1(const char *buf, size_t len, + char *latin_output, + __m512i minus64, __m512i one, + __mmask64 *next_leading_ptr, + __mmask64 *next_bit6_ptr) { + __mmask64 load_mask = + is_remaining ? _bzhi_u64(~0ULL, (unsigned int)len) : ~0ULL; + __m512i input = _mm512_maskz_loadu_epi8(load_mask, (__m512i *)buf); + __mmask64 nonascii = _mm512_movepi8_mask(input); + + if (nonascii == 0) { + is_remaining + ? _mm512_mask_storeu_epi8((__m512i *)latin_output, load_mask, input) + : _mm512_storeu_si512((__m512i *)latin_output, input); + return len; + } + + __mmask64 leading = _mm512_cmpge_epu8_mask(input, minus64); + + __m512i highbits = _mm512_xor_si512(input, _mm512_set1_epi8(-62)); + + *next_leading_ptr = leading >> 63; + + __mmask64 bit6 = _mm512_cmpeq_epi8_mask(highbits, one); + input = + _mm512_mask_sub_epi8(input, (bit6 << 1) | *next_bit6_ptr, input, minus64); + *next_bit6_ptr = bit6 >> 63; + + __mmask64 retain = ~leading & load_mask; + __m512i output = _mm512_maskz_compress_epi8(retain, input); + int64_t written_out = count_ones(retain); + __mmask64 store_mask = (1ULL << written_out) - 1; + // Optimization opportunity: sometimes, masked writes are not needed. + _mm512_mask_storeu_epi8((__m512i *)latin_output, store_mask, output); + return written_out; +} + +size_t valid_utf8_to_latin1_avx512(const char *buf, size_t len, + char *latin_output) { + char *start = latin_output; + size_t pos = 0; + __m512i minus64 = _mm512_set1_epi8(-64); // 11111111111 ... 1100 0000 + __m512i one = _mm512_set1_epi8(1); + __mmask64 next_leading = 0; + __mmask64 next_bit6 = 0; + + while (pos + 64 <= len) { + size_t written = process_valid_block_from_utf8_to_latin1( + buf + pos, 64, latin_output, minus64, one, &next_leading, &next_bit6); + latin_output += written; + pos += 64; + } + + if (pos < len) { + size_t remaining = len - pos; + size_t written = + process_valid_block_from_utf8_to_latin1(buf + pos, remaining, latin_output, minus64, + one, &next_leading, &next_bit6); + latin_output += written; + } + + return (size_t)(latin_output - start); +} +/* end file src/icelake/icelake_convert_valid_utf8_to_latin1.inl.cpp */ +/* begin file src/icelake/icelake_convert_utf16_to_latin1.inl.cpp */ +// file included directly +template +size_t icelake_convert_utf16_to_latin1(const char16_t *buf, size_t len, + char *latin1_output) { + const char16_t *end = buf + len; + __m512i v_0xFF = _mm512_set1_epi16(0xff); + __m512i byteflip = _mm512_setr_epi64(0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809); + __m512i shufmask = _mm512_set_epi8( + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 62, 60, 58, 56, 54, 52, 50, 48, 46, 44, 42, 40, 38, + 36, 34, 32, 30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2, 0); + while (buf + 32 <= end) { + __m512i in = _mm512_loadu_si512((__m512i *)buf); + if (big_endian) { + in = _mm512_shuffle_epi8(in, byteflip); + } + if (_mm512_cmpgt_epu16_mask(in, v_0xFF)) { + return 0; + } + _mm256_storeu_si256( + (__m256i *)latin1_output, + _mm512_castsi512_si256(_mm512_permutexvar_epi8(shufmask, in))); + latin1_output += 32; + buf += 32; + } + if (buf < end) { + uint32_t mask(uint32_t(1 << (end - buf)) - 1); + __m512i in = _mm512_maskz_loadu_epi16(mask, buf); + if (big_endian) { + in = _mm512_shuffle_epi8(in, byteflip); + } + if (_mm512_cmpgt_epu16_mask(in, v_0xFF)) { + return 0; + } + _mm256_mask_storeu_epi8( + latin1_output, mask, + _mm512_castsi512_si256(_mm512_permutexvar_epi8(shufmask, in))); + } + return len; +} + +template +std::pair +icelake_convert_utf16_to_latin1_with_errors(const char16_t *buf, size_t len, + char *latin1_output) { + const char16_t *end = buf + len; + const char16_t *start = buf; + __m512i byteflip = _mm512_setr_epi64(0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809); + __m512i v_0xFF = _mm512_set1_epi16(0xff); + __m512i shufmask = _mm512_set_epi8( + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 62, 60, 58, 56, 54, 52, 50, 48, 46, 44, 42, 40, 38, + 36, 34, 32, 30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2, 0); + while (buf + 32 <= end) { + __m512i in = _mm512_loadu_si512((__m512i *)buf); + if (big_endian) { + in = _mm512_shuffle_epi8(in, byteflip); + } + if (_mm512_cmpgt_epu16_mask(in, v_0xFF)) { + uint16_t word; + while ((word = (big_endian ? scalar::utf16::swap_bytes(uint16_t(*buf)) + : uint16_t(*buf))) <= 0xff) { + *latin1_output++ = uint8_t(word); + buf++; + } + return std::make_pair(result(error_code::TOO_LARGE, buf - start), + latin1_output); + } + _mm256_storeu_si256( + (__m256i *)latin1_output, + _mm512_castsi512_si256(_mm512_permutexvar_epi8(shufmask, in))); + latin1_output += 32; + buf += 32; + } + if (buf < end) { + uint32_t mask(uint32_t(1 << (end - buf)) - 1); + __m512i in = _mm512_maskz_loadu_epi16(mask, buf); + if (big_endian) { + in = _mm512_shuffle_epi8(in, byteflip); + } + if (_mm512_cmpgt_epu16_mask(in, v_0xFF)) { + + uint16_t word; + while ((word = (big_endian ? scalar::utf16::swap_bytes(uint16_t(*buf)) + : uint16_t(*buf))) <= 0xff) { + *latin1_output++ = uint8_t(word); + buf++; + } + return std::make_pair(result(error_code::TOO_LARGE, buf - start), + latin1_output); + } + _mm256_mask_storeu_epi8( + latin1_output, mask, + _mm512_castsi512_si256(_mm512_permutexvar_epi8(shufmask, in))); + } + return std::make_pair(result(error_code::SUCCESS, len), latin1_output); +} +/* end file src/icelake/icelake_convert_utf16_to_latin1.inl.cpp */ +/* begin file src/icelake/icelake_convert_utf16_to_utf8.inl.cpp */ +// file included directly + +/** + * This function converts the input (inbuf, inlen), assumed to be valid + * UTF16 (little endian) into UTF-8 (to outbuf). The number of code units written + * is written to 'outlen' and the function reports the number of input word + * consumed. + */ +template +size_t utf16_to_utf8_avx512i(const char16_t *inbuf, size_t inlen, + unsigned char *outbuf, size_t *outlen) { + __m512i in; + __mmask32 inmask = _cvtu32_mask32(0x7fffffff); + __m512i byteflip = _mm512_setr_epi64( + 0x0607040502030001, + 0x0e0f0c0d0a0b0809, + 0x0607040502030001, + 0x0e0f0c0d0a0b0809, + 0x0607040502030001, + 0x0e0f0c0d0a0b0809, + 0x0607040502030001, + 0x0e0f0c0d0a0b0809 + ); + const char16_t * const inbuf_orig = inbuf; + const unsigned char * const outbuf_orig = outbuf; + size_t adjust = 0; + int carry = 0; + + while (inlen >= 32) { + in = _mm512_loadu_si512(inbuf); + if(big_endian) { in = _mm512_shuffle_epi8(in, byteflip); } + inlen -= 31; + lastiteration: + inbuf += 31; + + failiteration: + const __mmask32 is234byte = _mm512_mask_cmp_epu16_mask( + inmask, in, _mm512_set1_epi16(0x0080), _MM_CMPINT_NLT); + + if (_ktestz_mask32_u8(inmask, is234byte)) { + // fast path for ASCII only + _mm512_mask_cvtepi16_storeu_epi8(outbuf, inmask, in); + outbuf += 31; + carry = 0; + + if (inlen < 32) { + goto tail; + } else { + continue; + } + } + + const __mmask32 is12byte = + _mm512_cmp_epu16_mask(in, _mm512_set1_epi16(0x0800), _MM_CMPINT_LT); + + if (_ktestc_mask32_u8(is12byte, inmask)) { + // fast path for 1 and 2 byte only + + const __m512i twobytes = _mm512_ternarylogic_epi32( + _mm512_slli_epi16(in, 8), _mm512_srli_epi16(in, 6), + _mm512_set1_epi16(0x3f3f), 0xa8); // (A|B)&C + in = _mm512_mask_add_epi16(in, is234byte, twobytes, + _mm512_set1_epi16(int16_t(0x80c0))); + const __m512i cmpmask = + _mm512_mask_blend_epi16(inmask, _mm512_set1_epi16(int16_t(0xffff)), + _mm512_set1_epi16(0x0800)); + const __mmask64 smoosh = _mm512_cmp_epu8_mask(in, cmpmask, _MM_CMPINT_NLT); + const __m512i out = _mm512_maskz_compress_epi8(smoosh, in); + _mm512_mask_storeu_epi8(outbuf, _cvtu64_mask64(_pext_u64(_cvtmask64_u64(smoosh), _cvtmask64_u64(smoosh))), + out); + outbuf += 31 + _mm_popcnt_u32(_cvtmask32_u32(is234byte)); + carry = 0; + + if (inlen < 32) { + goto tail; + } else { + continue; + } + } + __m512i lo = _mm512_cvtepu16_epi32(_mm512_castsi512_si256(in)); + __m512i hi = _mm512_cvtepu16_epi32(_mm512_extracti32x8_epi32(in, 1)); + + + __m512i taglo = _mm512_set1_epi32(0x8080e000); + __m512i taghi = taglo; + + const __m512i fc00masked = _mm512_and_epi32(in, _mm512_set1_epi16(int16_t(0xfc00))); + const __mmask32 hisurr = _mm512_mask_cmp_epu16_mask( + inmask, fc00masked, _mm512_set1_epi16(int16_t(0xd800)), _MM_CMPINT_EQ); + const __mmask32 losurr = _mm512_cmp_epu16_mask( + fc00masked, _mm512_set1_epi16(int16_t(0xdc00)), _MM_CMPINT_EQ); + + int carryout = 0; + if (!_kortestz_mask32_u8(hisurr, losurr)) { + // handle surrogates + + __m512i los = _mm512_alignr_epi32(hi, lo, 1); + __m512i his = _mm512_alignr_epi32(lo, hi, 1); + + const __mmask32 hisurrhi = _kshiftri_mask32(hisurr, 16); + taglo = + _mm512_mask_mov_epi32(taglo,__mmask16(hisurr), _mm512_set1_epi32(0x808080f0)); + taghi = + _mm512_mask_mov_epi32(taghi, __mmask16(hisurrhi), _mm512_set1_epi32(0x808080f0)); + + lo = _mm512_mask_slli_epi32(lo, __mmask16(hisurr), lo, 10); + hi = _mm512_mask_slli_epi32(hi, __mmask16(hisurrhi), hi, 10); + los = _mm512_add_epi32(los, _mm512_set1_epi32(0xfca02400)); + his = _mm512_add_epi32(his, _mm512_set1_epi32(0xfca02400)); + lo = _mm512_mask_add_epi32(lo, __mmask16(hisurr), lo, los); + hi = _mm512_mask_add_epi32(hi, __mmask16(hisurrhi), hi, his); + + carryout = _cvtu32_mask32(_kshiftri_mask32(hisurr, 30)); + + const uint32_t h = _cvtmask32_u32(hisurr); + const uint32_t l = _cvtmask32_u32(losurr); + // check for mismatched surrogates + if ((h + h + carry) ^ l) { + const uint32_t lonohi = l & ~(h + h + carry); + const uint32_t hinolo = h & ~(l >> 1); + inlen = _tzcnt_u32(hinolo | lonohi); + inmask = __mmask32(0x7fffffff & ((1 << inlen) - 1)); + in = _mm512_maskz_mov_epi16(inmask, in); + adjust = (int)inlen - 31; + inlen = 0; + goto failiteration; + } + } + + hi = _mm512_maskz_mov_epi32(_cvtu32_mask16(0x7fff),hi); + carry = carryout; + + __m512i mslo = + _mm512_multishift_epi64_epi8(_mm512_set1_epi64(0x20262c3200060c12), lo); + + __m512i mshi = + _mm512_multishift_epi64_epi8(_mm512_set1_epi64(0x20262c3200060c12), hi); + + const __mmask32 outmask = __mmask32(_kandn_mask64(losurr, inmask)); + const __mmask64 outmhi = _kshiftri_mask64(outmask, 16); + + const __mmask32 is1byte = __mmask32(_knot_mask64(is234byte)); + const __mmask64 is1bhi = _kshiftri_mask64(is1byte, 16); + const __mmask64 is12bhi = _kshiftri_mask64(is12byte, 16); + + taglo = + _mm512_mask_mov_epi32(taglo, __mmask16(is12byte), _mm512_set1_epi32(0x80c00000)); + taghi = + _mm512_mask_mov_epi32(taghi, __mmask16(is12bhi), _mm512_set1_epi32(0x80c00000)); + __m512i magiclo = _mm512_mask_blend_epi32(__mmask16(outmask), _mm512_set1_epi32(0xffffffff), + _mm512_set1_epi32(0x00010101)); + __m512i magichi = _mm512_mask_blend_epi32(__mmask16(outmhi), _mm512_set1_epi32(0xffffffff), + _mm512_set1_epi32(0x00010101)); + - ptr += 3*16; - } - validatedptr += 4*16; - } - { - const __m512i utf8 = _mm512_maskz_loadu_epi8((1ULL<<(end - validatedptr))-1, (const __m512i*)validatedptr); - checker.check_next_input(utf8); - } - checker.check_eof(); - if(checker.errors()) { - return {ptr, output, false}; // We found an error. - } - return {ptr, output, true}; + magiclo = _mm512_mask_blend_epi32(__mmask16(outmask), _mm512_set1_epi32(0xffffffff), + _mm512_set1_epi32(0x00010101)); + magichi = _mm512_mask_blend_epi32(__mmask16(outmhi), _mm512_set1_epi32(0xffffffff), + _mm512_set1_epi32(0x00010101)); + + mslo = _mm512_ternarylogic_epi32(mslo, _mm512_set1_epi32(0x3f3f3f3f), taglo, + 0xea); // A&B|C + mshi = _mm512_ternarylogic_epi32(mshi, _mm512_set1_epi32(0x3f3f3f3f), taghi, + 0xea); + mslo = _mm512_mask_slli_epi32(mslo, __mmask16(is1byte), lo, 24); + + mshi = _mm512_mask_slli_epi32(mshi, __mmask16(is1bhi), hi, 24); + + const __mmask64 wantlo = _mm512_cmp_epu8_mask(mslo, magiclo, _MM_CMPINT_NLT); + const __mmask64 wanthi = _mm512_cmp_epu8_mask(mshi, magichi, _MM_CMPINT_NLT); + const __m512i outlo = _mm512_maskz_compress_epi8(wantlo, mslo); + const __m512i outhi = _mm512_maskz_compress_epi8(wanthi, mshi); + const uint64_t wantlo_uint64 = _cvtmask64_u64(wantlo); + const uint64_t wanthi_uint64 = _cvtmask64_u64(wanthi); + + uint64_t advlo = _mm_popcnt_u64(wantlo_uint64); + uint64_t advhi = _mm_popcnt_u64(wanthi_uint64); + + _mm512_mask_storeu_epi8(outbuf, _cvtu64_mask64(_pext_u64(wantlo_uint64, wantlo_uint64)), outlo); + _mm512_mask_storeu_epi8(outbuf + advlo, _cvtu64_mask64(_pext_u64(wanthi_uint64, wanthi_uint64)), outhi); + outbuf += advlo + advhi; + } + outbuf -= adjust; + +tail: + if (inlen != 0) { + // We must have inlen < 31. + inmask = _cvtu32_mask32((1 << inlen) - 1); + in = _mm512_maskz_loadu_epi16(inmask, inbuf); + if(big_endian) { in = _mm512_shuffle_epi8(in, byteflip); } + adjust = inlen - 31; + inlen = 0; + goto lastiteration; + } + *outlen = (outbuf - outbuf_orig) + adjust; + return ((inbuf - inbuf_orig) + adjust); } -/* end file src/icelake/icelake_from_utf8.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_convert_utf16_to_utf32.inl.cpp +/* end file src/icelake/icelake_convert_utf16_to_utf8.inl.cpp */ /* begin file src/icelake/icelake_convert_utf16_to_utf32.inl.cpp */ // file included directly @@ -17181,7 +19735,7 @@ std::tuple convert_utf16_to_utf32(const char16 0x0607040502030001, 0x0e0f0c0d0a0b0809 ); - while (buf + 32 <= end) { + while (std::distance(buf,end) >= 32) { // Always safe because buf + 32 <= end so that end - buf >= 32 bytes: __m512i in = _mm512_loadu_si512((__m512i*)buf); if(big_endian) { in = _mm512_shuffle_epi8(in, byteflip); } @@ -17203,7 +19757,7 @@ std::tuple convert_utf16_to_utf32(const char16 |1101.11aa.aaaa.aaaa|1101.10bb.bbbb.bbbb| low surrogate high surrogate */ - /* 1. Expand all words to 32-bit words + /* 1. Expand all code units to 32-bit code units in |0000.0000.0000.0000.1101.11aa.aaaa.aaaa|0000.0000.0000.0000.1101.10bb.bbbb.bbbb| */ const __m512i first = _mm512_cvtepu16_epi32(_mm512_castsi512_si256(in)); @@ -17234,7 +19788,7 @@ std::tuple convert_utf16_to_utf32(const char16 const __m512i added_second = _mm512_mask_add_epi32(aligned_second, (__mmask16)(H>>16), aligned_second, shifted_second); const __m512i utf32_second = _mm512_mask_add_epi32(added_second, (__mmask16)(H>>16), added_second, constant); - // 5. Store all valid UTF-32 words (low surrogate positions and 32nd word are invalid) + // 5. Store all valid UTF-32 code units (low surrogate positions and 32nd word are invalid) const __mmask32 valid = ~L & 0x7fffffff; // We deliberately do a _mm512_maskz_compress_epi32 followed by storeu_epi32 // to ease performance portability to Zen 4. @@ -17248,7 +19802,7 @@ std::tuple convert_utf16_to_utf32(const char16 //_mm512_storeu_epi32((__m512i *) utf32_output, compressed_second); _mm512_mask_storeu_epi32((__m512i *) utf32_output, __mmask16((1<> 30) & 0x1; } else { @@ -17257,7 +19811,7 @@ std::tuple convert_utf16_to_utf32(const char16 } } else { // no surrogates - // extend all thirty-two 16-bit words to thirty-two 32-bit words + // extend all thirty-two 16-bit code units to thirty-two 32-bit code units _mm512_storeu_si512((__m512i *)(utf32_output), _mm512_cvtepu16_epi32(_mm512_castsi512_si256(in))); _mm512_storeu_si512((__m512i *)(utf32_output) + 1, _mm512_cvtepu16_epi32(_mm512_extracti32x8_epi32(in,1))); utf32_output += 32; @@ -17268,7 +19822,80 @@ std::tuple convert_utf16_to_utf32(const char16 return std::make_tuple(buf+carry, utf32_output, true); } /* end file src/icelake/icelake_convert_utf16_to_utf32.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_convert_utf32_to_utf8.inl.cpp +/* begin file src/icelake/icelake_convert_utf32_to_latin1.inl.cpp */ +// file included directly +size_t icelake_convert_utf32_to_latin1(const char32_t *buf, size_t len, + char *latin1_output) { + const char32_t *end = buf + len; + __m512i v_0xFF = _mm512_set1_epi32(0xff); + __m512i shufmask = _mm512_set_epi8( + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, + 56, 52, 48, 44, 40, 36, 32, 28, 24, 20, 16, 12, 8, 4, 0); + while (buf + 16 <= end) { + __m512i in = _mm512_loadu_si512((__m512i *)buf); + if (_mm512_cmpgt_epu32_mask(in, v_0xFF)) { + return 0; + } + _mm_storeu_si128((__m128i *)latin1_output, + _mm512_castsi512_si128(_mm512_permutexvar_epi8(shufmask, in))); + latin1_output += 16; + buf += 16; + } + if (buf < end) { + uint16_t mask = uint16_t((1 << (end - buf)) - 1); + __m512i in = _mm512_maskz_loadu_epi32(mask, buf); + if (_mm512_cmpgt_epu32_mask(in, v_0xFF)) { + return 0; + } + _mm_mask_storeu_epi8( + latin1_output, mask, + _mm512_castsi512_si128(_mm512_permutexvar_epi8(shufmask, in))); + } + return len; +} + +std::pair +icelake_convert_utf32_to_latin1_with_errors(const char32_t *buf, size_t len, + char *latin1_output) { + const char32_t *end = buf + len; + const char32_t *start = buf; + __m512i v_0xFF = _mm512_set1_epi32(0xff); + __m512i shufmask = _mm512_set_epi8( + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, + 56, 52, 48, 44, 40, 36, 32, 28, 24, 20, 16, 12, 8, 4, 0); + while (buf + 16 <= end) { + __m512i in = _mm512_loadu_si512((__m512i *)buf); + if (_mm512_cmpgt_epu32_mask(in, v_0xFF)) { + while (uint32_t(*buf) <= 0xff) { + *latin1_output++ = uint8_t(*buf++); + } + return std::make_pair(result(error_code::TOO_LARGE, buf - start), + latin1_output); + } + _mm_storeu_si128((__m128i *)latin1_output, + _mm512_castsi512_si128(_mm512_permutexvar_epi8(shufmask, in))); + latin1_output += 16; + buf += 16; + } + if (buf < end) { + uint16_t mask = uint16_t((1 << (end - buf)) - 1); + __m512i in = _mm512_maskz_loadu_epi32(mask, buf); + if (_mm512_cmpgt_epu32_mask(in, v_0xFF)) { + while (uint32_t(*buf) <= 0xff) { + *latin1_output++ = uint8_t(*buf++); + } + return std::make_pair(result(error_code::TOO_LARGE, buf - start), + latin1_output); + } + _mm_mask_storeu_epi8( + latin1_output, mask, + _mm512_castsi512_si128(_mm512_permutexvar_epi8(shufmask, in))); + } + return std::make_pair(result(error_code::SUCCESS, len), latin1_output); +} +/* end file src/icelake/icelake_convert_utf32_to_latin1.inl.cpp */ /* begin file src/icelake/icelake_convert_utf32_to_utf8.inl.cpp */ // file included directly @@ -17291,7 +19918,7 @@ std::pair avx512_convert_utf32_to_utf8(const char32_t* b __m256i nextin = _mm256_loadu_si256((__m256i*)buf+1); running_max = _mm256_max_epu32(_mm256_max_epu32(in, running_max), nextin); - // Pack 32-bit UTF-32 words to 16-bit UTF-16 words with unsigned saturation + // Pack 32-bit UTF-32 code units to 16-bit UTF-16 code units with unsigned saturation __m256i in_16 = _mm256_packus_epi32(_mm256_and_si256(in, v_7fffffff), _mm256_and_si256(nextin, v_7fffffff)); in_16 = _mm256_permute4x64_epi64(in_16, 0b11011000); @@ -17362,7 +19989,7 @@ std::pair avx512_convert_utf32_to_utf8(const char32_t* b const __m256i saturation_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(_mm256_or_si256(in, nextin), v_ffff0000), v_0000); const uint32_t saturation_bitmask = static_cast(_mm256_movemask_epi8(saturation_bytemask)); if (saturation_bitmask == 0xffffffff) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes const __m256i v_d800 = _mm256_set1_epi16((uint16_t)0xd800); forbidden_bytemask = _mm256_or_si256(forbidden_bytemask, _mm256_cmpeq_epi16(_mm256_and_si256(in_16, v_f800), v_d800)); @@ -17376,7 +20003,7 @@ std::pair avx512_convert_utf32_to_utf8(const char32_t* b 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -17387,7 +20014,7 @@ std::pair avx512_convert_utf32_to_utf8(const char32_t* b either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -17415,16 +20042,16 @@ std::pair avx512_convert_utf32_to_utf8(const char32_t* b const __m256i s4 = _mm256_xor_si256(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m256i out0 = _mm256_unpacklo_epi16(t2, s4); const __m256i out1 = _mm256_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint32_t mask = (one_byte_bitmask & 0x55555555) | (one_or_two_bytes_bitmask & 0xaaaaaaaa); // Due to the wider registers, the following path is less likely to be useful. /*if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m256i shuffle = _mm256_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1, 2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m256i utf8_0 = _mm256_shuffle_epi8(out0, shuffle); const __m256i utf8_1 = _mm256_shuffle_epi8(out1, shuffle); @@ -17536,7 +20163,7 @@ std::pair avx512_convert_utf32_to_utf8_with_errors(const char32_t return std::make_pair(result(error_code::TOO_LARGE, buf - start), utf8_output); } - // Pack 32-bit UTF-32 words to 16-bit UTF-16 words with unsigned saturation + // Pack 32-bit UTF-32 code units to 16-bit UTF-16 code units with unsigned saturation __m256i in_16 = _mm256_packus_epi32(_mm256_and_si256(in, v_7fffffff), _mm256_and_si256(nextin, v_7fffffff)); in_16 = _mm256_permute4x64_epi64(in_16, 0b11011000); @@ -17607,9 +20234,9 @@ std::pair avx512_convert_utf32_to_utf8_with_errors(const char32_t const __m256i saturation_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(_mm256_or_si256(in, nextin), v_ffff0000), v_0000); const uint32_t saturation_bitmask = static_cast(_mm256_movemask_epi8(saturation_bytemask)); if (saturation_bitmask == 0xffffffff) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes - // Check for illegal surrogate words + // Check for illegal surrogate code units const __m256i v_d800 = _mm256_set1_epi16((uint16_t)0xd800); const __m256i forbidden_bytemask = _mm256_cmpeq_epi16(_mm256_and_si256(in_16, v_f800), v_d800); if (static_cast(_mm256_movemask_epi8(forbidden_bytemask)) != 0x0) { @@ -17626,7 +20253,7 @@ std::pair avx512_convert_utf32_to_utf8_with_errors(const char32_t 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -17637,7 +20264,7 @@ std::pair avx512_convert_utf32_to_utf8_with_errors(const char32_t either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -17665,16 +20292,16 @@ std::pair avx512_convert_utf32_to_utf8_with_errors(const char32_t const __m256i s4 = _mm256_xor_si256(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m256i out0 = _mm256_unpacklo_epi16(t2, s4); const __m256i out1 = _mm256_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint32_t mask = (one_byte_bitmask & 0x55555555) | (one_or_two_bytes_bitmask & 0xaaaaaaaa); // Due to the wider registers, the following path is less likely to be useful. /*if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m256i shuffle = _mm256_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1, 2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m256i utf8_0 = _mm256_shuffle_epi8(out0, shuffle); const __m256i utf8_1 = _mm256_shuffle_epi8(out1, shuffle); @@ -17754,7 +20381,6 @@ std::pair avx512_convert_utf32_to_utf8_with_errors(const char32_t return std::make_pair(result(error_code::SUCCESS, buf - start), utf8_output); } /* end file src/icelake/icelake_convert_utf32_to_utf8.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_convert_utf32_to_utf16.inl.cpp /* begin file src/icelake/icelake_convert_utf32_to_utf16.inl.cpp */ // file included directly @@ -17889,7 +20515,6 @@ std::pair avx512_convert_utf32_to_utf16_with_errors(const cha return std::make_pair(result(error_code::SUCCESS, buf - start), utf16_output); } /* end file src/icelake/icelake_convert_utf32_to_utf16.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_ascii_validation.inl.cpp /* begin file src/icelake/icelake_ascii_validation.inl.cpp */ // file included directly @@ -17908,7 +20533,6 @@ bool validate_ascii(const char* buf, size_t len) { return (_mm512_test_epi8_mask(running_or, running_or) == 0); } /* end file src/icelake/icelake_ascii_validation.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_utf32_validation.inl.cpp /* begin file src/icelake/icelake_utf32_validation.inl.cpp */ // file included directly @@ -17935,211 +20559,178 @@ const char32_t* validate_utf32(const char32_t* buf, size_t len) { is_zero = _mm512_xor_si512(_mm512_max_epu32(currentoffsetmax, standardoffsetmax), standardoffsetmax); if (_mm512_test_epi8_mask(is_zero, is_zero) != 0) { return nullptr; - } - - return buf; -} -/* end file src/icelake/icelake_utf32_validation.inl.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=icelake/icelake_convert_utf16_to_utf8.inl.cpp -/* begin file src/icelake/icelake_convert_utf16_to_utf8.inl.cpp */ -// file included directly - -/** - * This function converts the input (inbuf, inlen), assumed to be valid - * UTF16 (little endian) into UTF-8 (to outbuf). The number of words written - * is written to 'outlen' and the function reports the number of input word - * consumed. - */ -template -size_t utf16_to_utf8_avx512i(const char16_t *inbuf, size_t inlen, - unsigned char *outbuf, size_t *outlen) { - __m512i in; - __mmask32 inmask = _cvtu32_mask32(0x7fffffff); - __m512i byteflip = _mm512_setr_epi64( - 0x0607040502030001, - 0x0e0f0c0d0a0b0809, - 0x0607040502030001, - 0x0e0f0c0d0a0b0809, - 0x0607040502030001, - 0x0e0f0c0d0a0b0809, - 0x0607040502030001, - 0x0e0f0c0d0a0b0809 - ); - const char16_t * const inbuf_orig = inbuf; - const unsigned char * const outbuf_orig = outbuf; - size_t adjust = 0; - int carry = 0; - - while (inlen >= 32) { - in = _mm512_loadu_si512(inbuf); - if(big_endian) { in = _mm512_shuffle_epi8(in, byteflip); } - inlen -= 31; - lastiteration: - inbuf += 31; - - failiteration: - const __mmask32 is234byte = _mm512_mask_cmp_epu16_mask( - inmask, in, _mm512_set1_epi16(0x0080), _MM_CMPINT_NLT); - - if (_ktestz_mask32_u8(inmask, is234byte)) { - // fast path for ASCII only - _mm512_mask_cvtepi16_storeu_epi8(outbuf, inmask, in); - outbuf += 31; - carry = 0; - - if (inlen < 32) { - goto tail; - } else { - continue; - } - } - - const __mmask32 is12byte = - _mm512_cmp_epu16_mask(in, _mm512_set1_epi16(0x0800), _MM_CMPINT_LT); - - if (_ktestc_mask32_u8(is12byte, inmask)) { - // fast path for 1 and 2 byte only - - const __m512i twobytes = _mm512_ternarylogic_epi32( - _mm512_slli_epi16(in, 8), _mm512_srli_epi16(in, 6), - _mm512_set1_epi16(0x3f3f), 0xa8); // (A|B)&C - in = _mm512_mask_add_epi16(in, is234byte, twobytes, - _mm512_set1_epi16(int16_t(0x80c0))); - const __m512i cmpmask = - _mm512_mask_blend_epi16(inmask, _mm512_set1_epi16(int16_t(0xffff)), - _mm512_set1_epi16(0x0800)); - const __mmask64 smoosh = _mm512_cmp_epu8_mask(in, cmpmask, _MM_CMPINT_NLT); - const __m512i out = _mm512_maskz_compress_epi8(smoosh, in); - _mm512_mask_storeu_epi8(outbuf, _cvtu64_mask64(_pext_u64(_cvtmask64_u64(smoosh), _cvtmask64_u64(smoosh))), - out); - outbuf += 31 + _mm_popcnt_u32(_cvtmask32_u32(is234byte)); - carry = 0; - - if (inlen < 32) { - goto tail; - } else { - continue; - } - } - __m512i lo = _mm512_cvtepu16_epi32(_mm512_castsi512_si256(in)); - __m512i hi = _mm512_cvtepu16_epi32(_mm512_extracti32x8_epi32(in, 1)); - - - __m512i taglo = _mm512_set1_epi32(0x8080e000); - __m512i taghi = taglo; - - const __m512i fc00masked = _mm512_and_epi32(in, _mm512_set1_epi16(int16_t(0xfc00))); - const __mmask32 hisurr = _mm512_mask_cmp_epu16_mask( - inmask, fc00masked, _mm512_set1_epi16(int16_t(0xd800)), _MM_CMPINT_EQ); - const __mmask32 losurr = _mm512_cmp_epu16_mask( - fc00masked, _mm512_set1_epi16(int16_t(0xdc00)), _MM_CMPINT_EQ); - - int carryout = 0; - if (!_kortestz_mask32_u8(hisurr, losurr)) { - // handle surrogates - - __m512i los = _mm512_alignr_epi32(hi, lo, 1); - __m512i his = _mm512_alignr_epi32(lo, hi, 1); - - const __mmask32 hisurrhi = _kshiftri_mask32(hisurr, 16); - taglo = - _mm512_mask_mov_epi32(taglo,__mmask16(hisurr), _mm512_set1_epi32(0x808080f0)); - taghi = - _mm512_mask_mov_epi32(taghi, __mmask16(hisurrhi), _mm512_set1_epi32(0x808080f0)); - - lo = _mm512_mask_slli_epi32(lo, __mmask16(hisurr), lo, 10); - hi = _mm512_mask_slli_epi32(hi, __mmask16(hisurrhi), hi, 10); - los = _mm512_add_epi32(los, _mm512_set1_epi32(0xfca02400)); - his = _mm512_add_epi32(his, _mm512_set1_epi32(0xfca02400)); - lo = _mm512_mask_add_epi32(lo, __mmask16(hisurr), lo, los); - hi = _mm512_mask_add_epi32(hi, __mmask16(hisurrhi), hi, his); - - carryout = _cvtu32_mask32(_kshiftri_mask32(hisurr, 30)); - - const uint32_t h = _cvtmask32_u32(hisurr); - const uint32_t l = _cvtmask32_u32(losurr); - // check for mismatched surrogates - if ((h + h + carry) ^ l) { - const uint32_t lonohi = l & ~(h + h + carry); - const uint32_t hinolo = h & ~(l >> 1); - inlen = _tzcnt_u32(hinolo | lonohi); - inmask = __mmask32(0x7fffffff & ((1 << inlen) - 1)); - in = _mm512_maskz_mov_epi16(inmask, in); - adjust = (int)inlen - 31; - inlen = 0; - goto failiteration; - } - } - - hi = _mm512_maskz_mov_epi32(_cvtu32_mask16(0x7fff),hi); - carry = carryout; - - __m512i mslo = - _mm512_multishift_epi64_epi8(_mm512_set1_epi64(0x20262c3200060c12), lo); - - __m512i mshi = - _mm512_multishift_epi64_epi8(_mm512_set1_epi64(0x20262c3200060c12), hi); - - const __mmask32 outmask = __mmask32(_kandn_mask64(losurr, inmask)); - const __mmask64 outmhi = _kshiftri_mask64(outmask, 16); - - const __mmask32 is1byte = __mmask32(_knot_mask64(is234byte)); - const __mmask64 is1bhi = _kshiftri_mask64(is1byte, 16); - const __mmask64 is12bhi = _kshiftri_mask64(is12byte, 16); - - taglo = - _mm512_mask_mov_epi32(taglo, __mmask16(is12byte), _mm512_set1_epi32(0x80c00000)); - taghi = - _mm512_mask_mov_epi32(taghi, __mmask16(is12bhi), _mm512_set1_epi32(0x80c00000)); - __m512i magiclo = _mm512_mask_blend_epi32(__mmask16(outmask), _mm512_set1_epi32(0xffffffff), - _mm512_set1_epi32(0x00010101)); - __m512i magichi = _mm512_mask_blend_epi32(__mmask16(outmhi), _mm512_set1_epi32(0xffffffff), - _mm512_set1_epi32(0x00010101)); - - - magiclo = _mm512_mask_blend_epi32(__mmask16(outmask), _mm512_set1_epi32(0xffffffff), - _mm512_set1_epi32(0x00010101)); - magichi = _mm512_mask_blend_epi32(__mmask16(outmhi), _mm512_set1_epi32(0xffffffff), - _mm512_set1_epi32(0x00010101)); - - mslo = _mm512_ternarylogic_epi32(mslo, _mm512_set1_epi32(0x3f3f3f3f), taglo, - 0xea); // A&B|C - mshi = _mm512_ternarylogic_epi32(mshi, _mm512_set1_epi32(0x3f3f3f3f), taghi, - 0xea); - mslo = _mm512_mask_slli_epi32(mslo, __mmask16(is1byte), lo, 24); - - mshi = _mm512_mask_slli_epi32(mshi, __mmask16(is1bhi), hi, 24); - - const __mmask64 wantlo = _mm512_cmp_epu8_mask(mslo, magiclo, _MM_CMPINT_NLT); - const __mmask64 wanthi = _mm512_cmp_epu8_mask(mshi, magichi, _MM_CMPINT_NLT); - const __m512i outlo = _mm512_maskz_compress_epi8(wantlo, mslo); - const __m512i outhi = _mm512_maskz_compress_epi8(wanthi, mshi); - const uint64_t wantlo_uint64 = _cvtmask64_u64(wantlo); - const uint64_t wanthi_uint64 = _cvtmask64_u64(wanthi); + } - uint64_t advlo = _mm_popcnt_u64(wantlo_uint64); - uint64_t advhi = _mm_popcnt_u64(wanthi_uint64); + return buf; +} +/* end file src/icelake/icelake_utf32_validation.inl.cpp */ +/* begin file src/icelake/icelake_convert_latin1_to_utf8.inl.cpp */ +// file included directly - _mm512_mask_storeu_epi8(outbuf, _cvtu64_mask64(_pext_u64(wantlo_uint64, wantlo_uint64)), outlo); - _mm512_mask_storeu_epi8(outbuf + advlo, _cvtu64_mask64(_pext_u64(wanthi_uint64, wanthi_uint64)), outhi); - outbuf += advlo + advhi; +static inline size_t latin1_to_utf8_avx512_vec(__m512i input, size_t input_len, char *utf8_output, int mask_output) { + __mmask64 nonascii = _mm512_movepi8_mask(input); + size_t output_size = input_len + (size_t)count_ones(nonascii); + + // Mask to denote whether the byte is a leading byte that is not ascii + __mmask64 sixth = + _mm512_cmpge_epu8_mask(input, _mm512_set1_epi8(-64)); //binary representation of -64: 1100 0000 + + const uint64_t alternate_bits = UINT64_C(0x5555555555555555); + uint64_t ascii = ~nonascii; + // the bits in ascii are inverted and zeros are interspersed in between them + uint64_t maskA = ~_pdep_u64(ascii, alternate_bits); + uint64_t maskB = ~_pdep_u64(ascii>>32, alternate_bits); + + // interleave bytes from top and bottom halves (abcd...ABCD -> aAbBcCdD) + __m512i input_interleaved = _mm512_permutexvar_epi8(_mm512_set_epi32( + 0x3f1f3e1e, 0x3d1d3c1c, 0x3b1b3a1a, 0x39193818, + 0x37173616, 0x35153414, 0x33133212, 0x31113010, + 0x2f0f2e0e, 0x2d0d2c0c, 0x2b0b2a0a, 0x29092808, + 0x27072606, 0x25052404, 0x23032202, 0x21012000 + ), input); + + // double size of each byte, and insert the leading byte 1100 0010 + +/* +upscale the bytes to 16-bit value, adding the 0b11000000 leading byte in the process. +We adjust for the bytes that have their two most significant bits. This takes care of the first 32 bytes, assuming we interleaved the bytes. */ + __m512i outputA = _mm512_shldi_epi16(input_interleaved, _mm512_set1_epi8(-62), 8); + outputA = _mm512_mask_add_epi16( + outputA, + (__mmask32)sixth, + outputA, + _mm512_set1_epi16(1 - 0x4000)); // 1- 0x4000 = 1100 0000 0000 0001???? + + // in the second 32-bit half, set first or second option based on whether original input is leading byte (second case) or not (first case) + __m512i leadingB = _mm512_mask_blend_epi16( + (__mmask32)(sixth>>32), + _mm512_set1_epi16(0x00c2), // 0000 0000 1101 0010 + _mm512_set1_epi16(0x40c3));// 0100 0000 1100 0011 + __m512i outputB = _mm512_ternarylogic_epi32( + input_interleaved, + leadingB, + _mm512_set1_epi16((short)0xff00), + (240 & 170) ^ 204); // (input_interleaved & 0xff00) ^ leadingB + + // prune redundant bytes + outputA = _mm512_maskz_compress_epi8(maskA, outputA); + outputB = _mm512_maskz_compress_epi8(maskB, outputB); + + + size_t output_sizeA = (size_t)count_ones((uint32_t)nonascii) + 32; + + if(mask_output) { + if(input_len > 32) { // is the second half of the input vector used? + __mmask64 write_mask = _bzhi_u64(~0ULL, (unsigned int)output_sizeA); + _mm512_mask_storeu_epi8(utf8_output, write_mask, outputA); + utf8_output += output_sizeA; + write_mask = _bzhi_u64(~0ULL, (unsigned int)(output_size - output_sizeA)); + _mm512_mask_storeu_epi8(utf8_output, write_mask, outputB); + } else { + __mmask64 write_mask = _bzhi_u64(~0ULL, (unsigned int)output_size); + _mm512_mask_storeu_epi8(utf8_output, write_mask, outputA); + } + } else { + _mm512_storeu_si512(utf8_output, outputA); + utf8_output += output_sizeA; + _mm512_storeu_si512(utf8_output, outputB); } - outbuf -= adjust; + return output_size; +} + +static inline size_t latin1_to_utf8_avx512_branch(__m512i input, char *utf8_output) { + __mmask64 nonascii = _mm512_movepi8_mask(input); + if(nonascii) { + return latin1_to_utf8_avx512_vec(input, 64, utf8_output, 0); + } else { + _mm512_storeu_si512(utf8_output, input); + return 64; + } +} + +size_t latin1_to_utf8_avx512_start(const char *buf, size_t len, char *utf8_output) { + char *start = utf8_output; + size_t pos = 0; + // if there's at least 128 bytes remaining, we don't need to mask the output + for (; pos + 128 <= len; pos += 64) { + __m512i input = _mm512_loadu_si512((__m512i *)(buf + pos)); + utf8_output += latin1_to_utf8_avx512_branch(input, utf8_output); + } + // in the last 128 bytes, the first 64 may require masking the output + if (pos + 64 <= len) { + __m512i input = _mm512_loadu_si512((__m512i *)(buf + pos)); + utf8_output += latin1_to_utf8_avx512_vec(input, 64, utf8_output, 1); + pos += 64; + } + // with the last 64 bytes, the input also needs to be masked + if (pos < len) { + __mmask64 load_mask = _bzhi_u64(~0ULL, (unsigned int)(len - pos)); + __m512i input = _mm512_maskz_loadu_epi8(load_mask, (__m512i *)(buf + pos)); + utf8_output += latin1_to_utf8_avx512_vec(input, len - pos, utf8_output, 1); + } + return (size_t)(utf8_output - start); +} +/* end file src/icelake/icelake_convert_latin1_to_utf8.inl.cpp */ +/* begin file src/icelake/icelake_convert_latin1_to_utf16.inl.cpp */ +// file included directly +template +size_t icelake_convert_latin1_to_utf16(const char *latin1_input, size_t len, + char16_t *utf16_output) { + size_t rounded_len = len & ~0x1F; // Round down to nearest multiple of 32 + + __m512i byteflip = _mm512_setr_epi64(0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809, + 0x0607040502030001, 0x0e0f0c0d0a0b0809); + for (size_t i = 0; i < rounded_len; i += 32) { + // Load 32 Latin1 characters into a 256-bit register + __m256i in = _mm256_loadu_si256((__m256i *)&latin1_input[i]); + // Zero extend each set of 8 Latin1 characters to 32 16-bit integers + __m512i out = _mm512_cvtepu8_epi16(in); + if (big_endian) { + out = _mm512_shuffle_epi8(out, byteflip); + } + // Store the results back to memory + _mm512_storeu_si512((__m512i *)&utf16_output[i], out); + } + if (rounded_len != len) { + uint32_t mask = uint32_t(1 << (len - rounded_len)) - 1; + __m256i in = _mm256_maskz_loadu_epi8(mask, latin1_input + rounded_len); -tail: - if (inlen != 0) { - // We must have inlen < 31. - inmask = _cvtu32_mask32((1 << inlen) - 1); - in = _mm512_maskz_loadu_epi16(inmask, inbuf); - if(big_endian) { in = _mm512_shuffle_epi8(in, byteflip); } - adjust = inlen - 31; - inlen = 0; - goto lastiteration; + // Zero extend each set of 8 Latin1 characters to 32 16-bit integers + __m512i out = _mm512_cvtepu8_epi16(in); + if (big_endian) { + out = _mm512_shuffle_epi8(out, byteflip); + } + // Store the results back to memory + _mm512_mask_storeu_epi16(utf16_output + rounded_len, mask, out); } - *outlen = (outbuf - outbuf_orig) + adjust; - return ((inbuf - inbuf_orig) + adjust); + + return len; } -/* end file src/icelake/icelake_convert_utf16_to_utf8.inl.cpp */ +/* end file src/icelake/icelake_convert_latin1_to_utf16.inl.cpp */ +/* begin file src/icelake/icelake_convert_latin1_to_utf32.inl.cpp */ +std::pair avx512_convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) { + size_t rounded_len = len & ~0xF; // Round down to nearest multiple of 16 + + for (size_t i = 0; i < rounded_len; i += 16) { + // Load 16 Latin1 characters into a 128-bit register + __m128i in = _mm_loadu_si128((__m128i*)&buf[i]); + + // Zero extend each set of 8 Latin1 characters to 16 32-bit integers using vpmovzxbd + __m512i out = _mm512_cvtepu8_epi32(in); + + // Store the results back to memory + _mm512_storeu_si512((__m512i*)&utf32_output[i], out); + } + + // Return pointers pointing to where we left off + return std::make_pair(buf + rounded_len, utf32_output + rounded_len); +} +/* end file src/icelake/icelake_convert_latin1_to_utf32.inl.cpp */ + + +#include } // namespace } // namespace icelake @@ -18148,7 +20739,6 @@ size_t utf16_to_utf8_avx512i(const char16_t *inbuf, size_t inlen, namespace simdutf { namespace icelake { - simdutf_warn_unused int implementation::detect_encodings(const char *input, size_t length) const noexcept { @@ -18183,7 +20773,7 @@ implementation::detect_encodings(const char *input, // be valid UTF-16LE, at least one surrogate must be in the two most // significant bytes of a 32-bit word since they always come in pairs in // UTF-16LE. Note that we always proceed in multiple of 4 before this - // point so there is no offset in 32-bit words. + // point so there is no offset in 32-bit code units. if ((surrogates & 0xaaaaaaaa) != 0) { is_utf32 = false; @@ -18199,7 +20789,7 @@ implementation::detect_encodings(const char *input, if (ends_with_high) { buf += 31 * - sizeof(char16_t); // advance only by 31 words so that we start + sizeof(char16_t); // advance only by 31 code units so that we start // with the high surrogate on the next round. } else { buf += 32 * sizeof(char16_t); @@ -18368,7 +20958,7 @@ simdutf_warn_unused bool implementation::validate_utf16le(const char16_t *buf, s } bool ends_with_high = ((highsurrogates & 0x80000000) != 0); if(ends_with_high) { - buf += 31; // advance only by 31 words so that we start with the high surrogate on the next round. + buf += 31; // advance only by 31 code units so that we start with the high surrogate on the next round. } else { buf += 32; } @@ -18417,7 +21007,7 @@ simdutf_warn_unused bool implementation::validate_utf16be(const char16_t *buf, s } bool ends_with_high = ((highsurrogates & 0x80000000) != 0); if(ends_with_high) { - buf += 31; // advance only by 31 words so that we start with the high surrogate on the next round. + buf += 31; // advance only by 31 code units so that we start with the high surrogate on the next round. } else { buf += 32; } @@ -18459,7 +21049,7 @@ simdutf_warn_unused result implementation::validate_utf16le_with_errors(const ch } bool ends_with_high = ((highsurrogates & 0x80000000) != 0); if(ends_with_high) { - buf += 31; // advance only by 31 words so that we start with the high surrogate on the next round. + buf += 31; // advance only by 31 code units so that we start with the high surrogate on the next round. } else { buf += 32; } @@ -18513,7 +21103,7 @@ simdutf_warn_unused result implementation::validate_utf16be_with_errors(const ch } bool ends_with_high = ((highsurrogates & 0x80000000) != 0); if(ends_with_high) { - buf += 31; // advance only by 31 words so that we start with the high surrogate on the next round. + buf += 31; // advance only by 31 code units so that we start with the high surrogate on the next round. } else { buf += 32; } @@ -18588,6 +21178,63 @@ simdutf_warn_unused result implementation::validate_utf32_with_errors(const char return result(error_code::SUCCESS, len); } +simdutf_warn_unused size_t implementation::convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept { + return icelake::latin1_to_utf8_avx512_start(buf, len, utf8_output); +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return icelake_convert_latin1_to_utf16(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + return icelake_convert_latin1_to_utf16(buf, len, utf16_output); +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + std::pair ret = avx512_convert_latin1_to_utf32(buf, len, utf32_output); + if (ret.first == nullptr) { return 0; } + size_t converted_chars = ret.second - utf32_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf32::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_converted_chars == 0) { return 0; } + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + return icelake::utf8_to_latin1_avx512(buf, len, latin1_output); +} + + +simdutf_warn_unused result implementation::convert_utf8_to_latin1_with_errors(const char* buf, size_t len, char* latin1_output) const noexcept { + // Initialize output length and input length counters + size_t inlen = 0; + + // First, try to convert as much as possible using the SIMD implementation. + inlen = icelake::utf8_to_latin1_avx512(buf, len, latin1_output); + + // If we have completely converted the string + if(inlen == len) { + return {simdutf::SUCCESS, len}; + } + + // Else if there are remaining bytes, use the scalar function to process them. + // Note: This is assuming scalar::utf8_to_latin1::convert_with_errors is a function that takes + // the input buffer, length, and output buffer, and returns a result object with an error code + // and the number of characters processed. + result res = scalar::utf8_to_latin1::convert_with_errors(buf + inlen, len - inlen, latin1_output + inlen); + res.count += inlen; // Add the number of characters processed by the SIMD implementation + + return res; +} + + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + return icelake::valid_utf8_to_latin1_avx512(buf, len, latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { utf8_to_utf16_result ret = fast_avx512_convert_utf8_to_utf16(buf, len, utf16_output); if (ret.second == nullptr) { @@ -18767,6 +21414,33 @@ simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf32(const cha return saved_bytes; } + +simdutf_warn_unused size_t implementation::convert_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return icelake_convert_utf16_to_latin1(buf,len,latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return icelake_convert_utf16_to_latin1(buf,len,latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf16le_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return icelake_convert_utf16_to_latin1_with_errors(buf,len,latin1_output).first; +} + +simdutf_warn_unused result implementation::convert_utf16be_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + return icelake_convert_utf16_to_latin1_with_errors(buf,len,latin1_output).first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: implement custom function + return convert_utf16be_to_latin1(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: implement custom function + return convert_utf16le_to_latin1(buf, len, latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { size_t outlen; size_t inlen = utf16_to_utf8_avx512i(buf, len, (unsigned char*)utf8_output, &outlen); @@ -18811,6 +21485,18 @@ simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf8(const c return convert_utf16be_to_utf8(buf, len, utf8_output); } +simdutf_warn_unused size_t implementation::convert_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return icelake_convert_utf32_to_latin1(buf,len,latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf32_to_latin1_with_errors(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return icelake_convert_utf32_to_latin1_with_errors(buf,len,latin1_output).first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return icelake_convert_utf32_to_latin1(buf,len,latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { std::pair ret = avx512_convert_utf32_to_utf8(buf, len, utf8_output); @@ -18826,7 +21512,7 @@ simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* } simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = icelake::avx512_convert_utf32_to_utf8_with_errors(buf, len, utf8_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf8::convert_with_errors( @@ -18838,7 +21524,7 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(con ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -18873,7 +21559,7 @@ simdutf_warn_unused size_t implementation::convert_utf32_to_utf16be(const char32 } simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = avx512_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf16::convert_with_errors( @@ -18885,12 +21571,12 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written return ret.first; } simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = avx512_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf16::convert_with_errors( @@ -18902,7 +21588,7 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -19088,23 +21774,75 @@ simdutf_warn_unused size_t implementation::count_utf16be(const char16_t * input, simdutf_warn_unused size_t implementation::count_utf8(const char * input, size_t length) const noexcept { - const char* end = length >= 64 ? input + length - 64 : nullptr; - const char* ptr = input; + const uint8_t *str = reinterpret_cast(input); + size_t answer = length / sizeof(__m512i) * sizeof(__m512i); // Number of 512-bit chunks that fits into the length. + size_t i = 0; + __m512i unrolled_popcount{0}; const __m512i continuation = _mm512_set1_epi8(char(0b10111111)); - size_t count{0}; + while (i + sizeof(__m512i) <= length) { + size_t iterations = (length - i) / sizeof(__m512i); - while (ptr <= end) { - __m512i utf8 = _mm512_loadu_si512((const __m512i*)ptr); - ptr += 64; - uint64_t continuation_bitmask = static_cast(_mm512_cmple_epi8_mask(utf8, continuation)); - count += 64 - count_ones(continuation_bitmask); + size_t max_i = i + iterations * sizeof(__m512i) - sizeof(__m512i); + for (; i + 8*sizeof(__m512i) <= max_i; i += 8*sizeof(__m512i)) { + __m512i input1 = _mm512_loadu_si512((const __m512i *)(str + i)); + __m512i input2 = _mm512_loadu_si512((const __m512i *)(str + i + sizeof(__m512i))); + __m512i input3 = _mm512_loadu_si512((const __m512i *)(str + i + 2*sizeof(__m512i))); + __m512i input4 = _mm512_loadu_si512((const __m512i *)(str + i + 3*sizeof(__m512i))); + __m512i input5 = _mm512_loadu_si512((const __m512i *)(str + i + 4*sizeof(__m512i))); + __m512i input6 = _mm512_loadu_si512((const __m512i *)(str + i + 5*sizeof(__m512i))); + __m512i input7 = _mm512_loadu_si512((const __m512i *)(str + i + 6*sizeof(__m512i))); + __m512i input8 = _mm512_loadu_si512((const __m512i *)(str + i + 7*sizeof(__m512i))); + + + __mmask64 mask1 = _mm512_cmple_epi8_mask(input1, continuation); + __mmask64 mask2 = _mm512_cmple_epi8_mask(input2, continuation); + __mmask64 mask3 = _mm512_cmple_epi8_mask(input3, continuation); + __mmask64 mask4 = _mm512_cmple_epi8_mask(input4, continuation); + __mmask64 mask5 = _mm512_cmple_epi8_mask(input5, continuation); + __mmask64 mask6 = _mm512_cmple_epi8_mask(input6, continuation); + __mmask64 mask7 = _mm512_cmple_epi8_mask(input7, continuation); + __mmask64 mask8 = _mm512_cmple_epi8_mask(input8, continuation); + + __m512i mask_register = _mm512_set_epi64(mask8, mask7, mask6, mask5, mask4, mask3, mask2, mask1); + + + unrolled_popcount = _mm512_add_epi64(unrolled_popcount, _mm512_popcnt_epi64(mask_register)); + } + + for (; i <= max_i; i += sizeof(__m512i)) { + __m512i more_input = _mm512_loadu_si512((const __m512i *)(str + i)); + uint64_t continuation_bitmask = static_cast(_mm512_cmple_epi8_mask(more_input, continuation)); + answer -= count_ones(continuation_bitmask); + } } - return count + scalar::utf8::count_code_points(ptr, length - (ptr - input)); + __m256i first_half = _mm512_extracti64x4_epi64(unrolled_popcount, 0); + __m256i second_half = _mm512_extracti64x4_epi64(unrolled_popcount, 1); + answer -= (size_t)_mm256_extract_epi64(first_half, 0) + + (size_t)_mm256_extract_epi64(first_half, 1) + + (size_t)_mm256_extract_epi64(first_half, 2) + + (size_t)_mm256_extract_epi64(first_half, 3) + + (size_t)_mm256_extract_epi64(second_half, 0) + + (size_t)_mm256_extract_epi64(second_half, 1) + + (size_t)_mm256_extract_epi64(second_half, 2) + + (size_t)_mm256_extract_epi64(second_half, 3); + + return answer + scalar::utf8::count_code_points(reinterpret_cast(str + i), length - i); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf8(const char* buf, size_t len) const noexcept { + return count_utf8(buf,len); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf16(size_t length) const noexcept { + return scalar::utf16::latin1_length_from_utf16(length); } +simdutf_warn_unused size_t implementation::latin1_length_from_utf32(size_t length) const noexcept { + return scalar::utf32::latin1_length_from_utf32(length); +} simdutf_warn_unused size_t implementation::utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept { const char16_t* end = length >= 32 ? input + length - 32 : nullptr; @@ -19183,6 +21921,76 @@ simdutf_warn_unused size_t implementation::utf32_length_from_utf16be(const char1 return implementation::count_utf16be(input, length); } +simdutf_warn_unused size_t implementation::utf16_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf16_length_from_latin1(length); +} + + +simdutf_warn_unused size_t implementation::utf32_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf32_length_from_latin1(length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_latin1(const char * input, size_t length) const noexcept { + const uint8_t *str = reinterpret_cast(input); + size_t answer = length / sizeof(__m512i) * sizeof(__m512i); + size_t i = 0; + unsigned char v_0xFF = 0xff; + __m512i eight_64bits = _mm512_setzero_si512(); + while (i + sizeof(__m512i) <= length) { + __m512i runner = _mm512_setzero_si512(); + size_t iterations = (length - i) / sizeof(__m512i); + if (iterations > 255) { + iterations = 255; + } + size_t max_i = i + iterations * sizeof(__m512i) - sizeof(__m512i); + for (; i + 4*sizeof(__m512i) <= max_i; i += 4*sizeof(__m512i)) { + // Load four __m512i vectors + __m512i input1 = _mm512_loadu_si512((const __m512i *)(str + i)); + __m512i input2 = _mm512_loadu_si512((const __m512i *)(str + i + sizeof(__m512i))); + __m512i input3 = _mm512_loadu_si512((const __m512i *)(str + i + 2*sizeof(__m512i))); + __m512i input4 = _mm512_loadu_si512((const __m512i *)(str + i + 3*sizeof(__m512i))); + + // Generate four masks + __mmask64 mask1 = _mm512_cmpgt_epi8_mask(_mm512_setzero_si512(), input1); + __mmask64 mask2 = _mm512_cmpgt_epi8_mask(_mm512_setzero_si512(), input2); + __mmask64 mask3 = _mm512_cmpgt_epi8_mask(_mm512_setzero_si512(), input3); + __mmask64 mask4 = _mm512_cmpgt_epi8_mask(_mm512_setzero_si512(), input4); + // Apply the masks and subtract from the runner + __m512i not_ascii1 = _mm512_mask_set1_epi8(_mm512_setzero_si512(), mask1, v_0xFF); + __m512i not_ascii2 = _mm512_mask_set1_epi8(_mm512_setzero_si512(), mask2, v_0xFF); + __m512i not_ascii3 = _mm512_mask_set1_epi8(_mm512_setzero_si512(), mask3, v_0xFF); + __m512i not_ascii4 = _mm512_mask_set1_epi8(_mm512_setzero_si512(), mask4, v_0xFF); + + runner = _mm512_sub_epi8(runner, not_ascii1); + runner = _mm512_sub_epi8(runner, not_ascii2); + runner = _mm512_sub_epi8(runner, not_ascii3); + runner = _mm512_sub_epi8(runner, not_ascii4); + } + + for (; i <= max_i; i += sizeof(__m512i)) { + __m512i more_input = _mm512_loadu_si512((const __m512i *)(str + i)); + + __mmask64 mask = _mm512_cmpgt_epi8_mask(_mm512_setzero_si512(), more_input); + __m512i not_ascii = _mm512_mask_set1_epi8(_mm512_setzero_si512(), mask, v_0xFF); + runner = _mm512_sub_epi8(runner, not_ascii); + } + + eight_64bits = _mm512_add_epi64(eight_64bits, _mm512_sad_epu8(runner, _mm512_setzero_si512())); + } + + __m256i first_half = _mm512_extracti64x4_epi64(eight_64bits, 0); + __m256i second_half = _mm512_extracti64x4_epi64(eight_64bits, 1); + answer += (size_t)_mm256_extract_epi64(first_half, 0) + + (size_t)_mm256_extract_epi64(first_half, 1) + + (size_t)_mm256_extract_epi64(first_half, 2) + + (size_t)_mm256_extract_epi64(first_half, 3) + + (size_t)_mm256_extract_epi64(second_half, 0) + + (size_t)_mm256_extract_epi64(second_half, 1) + + (size_t)_mm256_extract_epi64(second_half, 2) + + (size_t)_mm256_extract_epi64(second_half, 3); + return answer + scalar::latin1::utf8_length_from_latin1(reinterpret_cast(str + i), length - i); +} + simdutf_warn_unused size_t implementation::utf16_length_from_utf8(const char * input, size_t length) const noexcept { size_t pos = 0; size_t count = 0; @@ -19252,7 +22060,6 @@ simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * i } // namespace icelake } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/icelake/end.h /* begin file src/simdutf/icelake/end.h */ #if SIMDUTF_CAN_ALWAYS_RUN_ICELAKE // nothing needed. @@ -19268,10 +22075,8 @@ SIMDUTF_POP_DISABLE_WARNINGS /* end file src/icelake/implementation.cpp */ #endif #if SIMDUTF_IMPLEMENTATION_HASWELL -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/implementation.cpp /* begin file src/haswell/implementation.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/begin.h /* begin file src/simdutf/haswell/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "haswell" // #define SIMDUTF_IMPLEMENTATION haswell @@ -19314,7 +22119,6 @@ simdutf_really_inline simd8 must_be_2_3_continuation(const simd8 return simd8(is_third_byte | is_fourth_byte) > int8_t(0); } -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_detect_encodings.cpp /* begin file src/haswell/avx2_detect_encodings.cpp */ template // len is known to be a multiple of 2 when this is called @@ -19358,7 +22162,7 @@ int avx2_detect_encodings(const char * buf, size_t len) { // To be valid UTF-32, a surrogate cannot be in the two most significant bytes of any 32-bit word. // On the other hand, to be valid UTF-16LE, at least one surrogate must be in the two most significant // bytes of a 32-bit word since they always come in pairs in UTF-16LE. - // Note that we always proceed in multiple of 4 before this point so there is no offset in 32-bit words. + // Note that we always proceed in multiple of 4 before this point so there is no offset in 32-bit code units. if ((surrogates_bitmask0 & 0xaaaaaaaa) != 0) { is_utf32 = false; @@ -19504,10 +22308,9 @@ int avx2_detect_encodings(const char * buf, size_t len) { } /* end file src/haswell/avx2_detect_encodings.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_validate_utf16.cpp /* begin file src/haswell/avx2_validate_utf16.cpp */ /* - In UTF-16 words in range 0xD800 to 0xDFFF have special meaning. + In UTF-16 code units in range 0xD800 to 0xDFFF have special meaning. In a vectorized algorithm we want to examine the most significant nibble in order to select a fast path. If none of highest nibbles @@ -19543,7 +22346,7 @@ int avx2_detect_encodings(const char * buf, size_t len) { 0 0 1 0 1 0 0 0 b = a << 1 1 1 1 1 1 1 1 0 c = V | a | b ^ - the last bit can be zero, we just consume 7 words + the last bit can be zero, we just consume 7 code units and recheck this word in the next iteration */ @@ -19589,7 +22392,7 @@ const char16_t* avx2_validate_utf16(const char16_t* input, size_t size) { // // Fact: high surrogate has 11th bit set (3rd bit in the higher word) - // V - non-surrogate words + // V - non-surrogate code units // V = not surrogates_wordmask const uint32_t V = ~surrogates_bitmask; @@ -19610,10 +22413,10 @@ const char16_t* avx2_validate_utf16(const char16_t* input, size_t size) { if (c == 0xffffffff) { // The whole input register contains valid UTF-16, i.e., - // either single words or proper surrogate pairs. + // either single code units or proper surrogate pairs. input += simd16::ELEMENTS * 2; } else if (c == 0x7fffffff) { - // The 31 lower words of the input register contains valid UTF-16. + // The 31 lower code units of the input register contains valid UTF-16. // The 31 word may be either a low or high surrogate. It the next // iteration we 1) check if the low surrogate is followed by a high // one, 2) reject sole high surrogate. @@ -19667,7 +22470,7 @@ const result avx2_validate_utf16_with_errors(const char16_t* input, size_t size) // // Fact: high surrogate has 11th bit set (3rd bit in the higher word) - // V - non-surrogate words + // V - non-surrogate code units // V = not surrogates_wordmask const uint32_t V = ~surrogates_bitmask; @@ -19688,10 +22491,10 @@ const result avx2_validate_utf16_with_errors(const char16_t* input, size_t size) if (c == 0xffffffff) { // The whole input register contains valid UTF-16, i.e., - // either single words or proper surrogate pairs. + // either single code units or proper surrogate pairs. input += simd16::ELEMENTS * 2; } else if (c == 0x7fffffff) { - // The 31 lower words of the input register contains valid UTF-16. + // The 31 lower code units of the input register contains valid UTF-16. // The 31 word may be either a low or high surrogate. It the next // iteration we 1) check if the low surrogate is followed by a high // one, 2) reject sole high surrogate. @@ -19705,7 +22508,6 @@ const result avx2_validate_utf16_with_errors(const char16_t* input, size_t size) return result(error_code::SUCCESS, input - start); } /* end file src/haswell/avx2_validate_utf16.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_validate_utf32le.cpp /* begin file src/haswell/avx2_validate_utf32le.cpp */ /* Returns: - pointer to the last unprocessed character (a scalar fallback should check the rest); @@ -19771,7 +22573,145 @@ const result avx2_validate_utf32le_with_errors(const char32_t* input, size_t siz } /* end file src/haswell/avx2_validate_utf32le.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_convert_utf8_to_utf16.cpp +/* begin file src/haswell/avx2_convert_latin1_to_utf8.cpp */ +std::pair avx2_convert_latin1_to_utf8(const char *latin1_input, size_t len, + char *utf8_output) { + const char *end = latin1_input + len; + const __m256i v_0000 = _mm256_setzero_si256(); + const __m256i v_c080 = _mm256_set1_epi16((int16_t)0xc080); + const __m256i v_ff80 = _mm256_set1_epi16((int16_t)0xff80); + const size_t safety_margin = 12; + + while (latin1_input + 16 + safety_margin <= end) { + __m128i in8 = _mm_loadu_si128((__m128i *)latin1_input); + // a single 16-bit UTF-16 word can yield 1, 2 or 3 UTF-8 bytes + const __m128i v_80 = _mm_set1_epi8((char)0x80); + if (_mm_testz_si128(in8, v_80)) { // ASCII fast path!!!! + // 1. store (16 bytes) + _mm_storeu_si128((__m128i *)utf8_output, in8); + // 2. adjust pointers + latin1_input += 16; + utf8_output += 16; + continue; // we are done for this round! + } + // We proceed only with the first 16 bytes. + const __m256i in = _mm256_cvtepu8_epi16((in8)); + + // 1. prepare 2-byte values + // input 16-bit word : [0000|0000|aabb|bbbb] x 8 + // expected output : [1100|00aa|10bb|bbbb] x 8 + const __m256i v_1f00 = _mm256_set1_epi16((int16_t)0x1f00); + const __m256i v_003f = _mm256_set1_epi16((int16_t)0x003f); + + // t0 = [0000|00aa|bbbb|bb00] + const __m256i t0 = _mm256_slli_epi16(in, 2); + // t1 = [0000|00aa|0000|0000] + const __m256i t1 = _mm256_and_si256(t0, v_1f00); + // t2 = [0000|0000|00bb|bbbb] + const __m256i t2 = _mm256_and_si256(in, v_003f); + // t3 = [000a|aaaa|00bb|bbbb] + const __m256i t3 = _mm256_or_si256(t1, t2); + // t4 = [1100|00aa|10bb|bbbb] + const __m256i t4 = _mm256_or_si256(t3, v_c080); + + // 2. merge ASCII and 2-byte codewords + + // no bits set above 7th bit + const __m256i one_byte_bytemask = _mm256_cmpeq_epi16(_mm256_and_si256(in, v_ff80), v_0000); + const uint32_t one_byte_bitmask = static_cast(_mm256_movemask_epi8(one_byte_bytemask)); + + const __m256i utf8_unpacked = _mm256_blendv_epi8(t4, in, one_byte_bytemask); + + // 3. prepare bitmask for 8-bit lookup + const uint32_t M0 = one_byte_bitmask & 0x55555555; + const uint32_t M1 = M0 >> 7; + const uint32_t M2 = (M1 | M0) & 0x00ff00ff; + // 4. pack the bytes + + const uint8_t *row = + &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[uint8_t(M2)][0]; + const uint8_t *row_2 = + &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[uint8_t(M2 >> 16)] + [0]; + + const __m128i shuffle = _mm_loadu_si128((__m128i *)(row + 1)); + const __m128i shuffle_2 = _mm_loadu_si128((__m128i *)(row_2 + 1)); + + const __m256i utf8_packed = _mm256_shuffle_epi8( + utf8_unpacked, _mm256_setr_m128i(shuffle, shuffle_2)); + // 5. store bytes + _mm_storeu_si128((__m128i *)utf8_output, + _mm256_castsi256_si128(utf8_packed)); + utf8_output += row[0]; + _mm_storeu_si128((__m128i *)utf8_output, + _mm256_extractf128_si256(utf8_packed, 1)); + utf8_output += row_2[0]; + + // 6. adjust pointers + latin1_input += 16; + continue; + + } // while + return std::make_pair(latin1_input, utf8_output); +} +/* end file src/haswell/avx2_convert_latin1_to_utf8.cpp */ +/* begin file src/haswell/avx2_convert_latin1_to_utf16.cpp */ +template +std::pair avx2_convert_latin1_to_utf16(const char* latin1_input, size_t len, char16_t* utf16_output) { + size_t rounded_len = len & ~0xF; // Round down to nearest multiple of 32 + + size_t i = 0; + for (; i < rounded_len; i += 16) { + // Load 16 bytes from the address (input + i) into a xmm register + __m128i xmm0 = _mm_loadu_si128(reinterpret_cast(latin1_input + i)); + + // Zero extend each byte in xmm0 to word and put it in another xmm register + __m128i xmm1 = _mm_cvtepu8_epi16(xmm0); + + // Shift xmm0 to the right by 8 bytes + xmm0 = _mm_srli_si128(xmm0, 8); + + // Zero extend each byte in the shifted xmm0 to word in xmm0 + xmm0 = _mm_cvtepu8_epi16(xmm0); + + if (big_endian) { + const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); + xmm0 = _mm_shuffle_epi8(xmm0, swap); + xmm1 = _mm_shuffle_epi8(xmm1, swap); + } + + // Store the contents of xmm1 into the address pointed by (output + i) + _mm_storeu_si128(reinterpret_cast<__m128i*>(utf16_output + i), xmm1); + + // Store the contents of xmm0 into the address pointed by (output + i + 8) + _mm_storeu_si128(reinterpret_cast<__m128i*>(utf16_output + i + 8), xmm0); + } + + return std::make_pair(latin1_input + rounded_len, utf16_output + rounded_len); + +} +/* end file src/haswell/avx2_convert_latin1_to_utf16.cpp */ +/* begin file src/haswell/avx2_convert_latin1_to_utf32.cpp */ +std::pair avx2_convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) { + size_t rounded_len = ((len | 7) ^ 7); // Round down to nearest multiple of 8 + + for (size_t i = 0; i < rounded_len; i += 8) { + // Load 8 Latin1 characters into a 64-bit register + __m128i in = _mm_loadl_epi64((__m128i*)&buf[i]); + + // Zero extend each set of 8 Latin1 characters to 8 32-bit integers using vpmovzxbd + __m256i out = _mm256_cvtepu8_epi32(in); + + // Store the results back to memory + _mm256_storeu_si256((__m256i*)&utf32_output[i], out); + } + + // return pointers pointing to where we left off + return std::make_pair(buf + rounded_len, utf32_output + rounded_len); +} + +/* end file src/haswell/avx2_convert_latin1_to_utf32.cpp */ + /* begin file src/haswell/avx2_convert_utf8_to_utf16.cpp */ // depends on "tables/utf8_to_utf16_tables.h" @@ -19811,7 +22751,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, return 16; // We consumed 16 bytes. } if(((utf8_end_of_code_point_mask & 0xffff) == 0xaaaa)) { - // We want to take 8 2-byte UTF-8 words and turn them into 8 2-byte UTF-16 words. + // We want to take 8 2-byte UTF-8 code units and turn them into 8 2-byte UTF-16 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -19824,7 +22764,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, return 16; } if(input_utf8_end_of_code_point_mask == 0x924) { - // We want to take 4 3-byte UTF-8 words and turn them into 4 2-byte UTF-16 words. + // We want to take 4 3-byte UTF-8 code units and turn them into 4 2-byte UTF-16 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(2, 1, 0, -1, 5, 4, 3, -1, 8, 7, 6, -1, 11, 10, 9, -1); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -19850,10 +22790,10 @@ size_t convert_masked_utf8_to_utf16(const char *input, const uint8_t consumed = simdutf::tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; if (idx < 64) { - // SIX (6) input code-words + // SIX (6) input code-code units // this is a relatively easy scenario - // we process SIX (6) input code-words. The max length in bytes of six code - // words spanning between 1 and 2 bytes each is 12 bytes. On processors + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. On processors // where pdep/pext is fast, we might be able to use a small lookup table. const __m128i sh = _mm_loadu_si128((const __m128i *)simdutf::tables::utf8_to_utf16::shufutf8[idx]); @@ -19865,7 +22805,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, _mm_storeu_si128((__m128i *)utf16_output, composed); utf16_output += 6; // We wrote 12 bytes, 6 code points. There is a potential overflow of 4 bytes. } else if (idx < 145) { - // FOUR (4) input code-words + // FOUR (4) input code-code units const __m128i sh = _mm_loadu_si128((const __m128i *)simdutf::tables::utf8_to_utf16::shufutf8[idx]); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -19884,7 +22824,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, _mm_storeu_si128((__m128i *)utf16_output, composed_repacked); utf16_output += 4; // Here we overflow by 8 bytes. } else if (idx < 209) { - // TWO (2) input code-words + // TWO (2) input code-code units ////////////// // There might be garbage inputs where a leading byte mascarades as a four-byte // leading byte (by being followed by 3 continuation byte), but is not greater than @@ -19954,7 +22894,6 @@ size_t convert_masked_utf8_to_utf16(const char *input, return consumed; } /* end file src/haswell/avx2_convert_utf8_to_utf16.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_convert_utf8_to_utf32.cpp /* begin file src/haswell/avx2_convert_utf8_to_utf32.cpp */ // depends on "tables/utf8_to_utf16_tables.h" @@ -19987,7 +22926,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, return 16; // We consumed 16 bytes. } if(((utf8_end_of_code_point_mask & 0xffff) == 0xaaaa)) { - // We want to take 8 2-byte UTF-8 words and turn them into 8 4-byte UTF-32 words. + // We want to take 8 2-byte UTF-8 code units and turn them into 8 4-byte UTF-32 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -19999,7 +22938,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, return 16; } if(input_utf8_end_of_code_point_mask == 0x924) { - // We want to take 4 3-byte UTF-8 words and turn them into 4 4-byte UTF-32 words. + // We want to take 4 3-byte UTF-8 code units and turn them into 4 4-byte UTF-32 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(2, 1, 0, -1, 5, 4, 3, -1, 8, 7, 6, -1, 11, 10, 9, -1); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -20024,10 +22963,10 @@ size_t convert_masked_utf8_to_utf32(const char *input, const uint8_t consumed = tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; if (idx < 64) { - // SIX (6) input code-words + // SIX (6) input code-code units // this is a relatively easy scenario - // we process SIX (6) input code-words. The max length in bytes of six code - // words spanning between 1 and 2 bytes each is 12 bytes. On processors + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. On processors // where pdep/pext is fast, we might be able to use a small lookup table. const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); @@ -20039,7 +22978,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, utf32_output += 6; // We wrote 24 bytes, 6 code points. There is a potential // overflow of 32 - 24 = 8 bytes. } else if (idx < 145) { - // FOUR (4) input code-words + // FOUR (4) input code-code units const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -20056,7 +22995,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, _mm_storeu_si128((__m128i *)utf32_output, composed); utf32_output += 4; } else if (idx < 209) { - // TWO (2) input code-words + // TWO (2) input code-code units const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -20083,11 +23022,97 @@ size_t convert_masked_utf8_to_utf32(const char *input, } /* end file src/haswell/avx2_convert_utf8_to_utf32.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_convert_utf16_to_utf8.cpp +/* begin file src/haswell/avx2_convert_utf16_to_latin1.cpp */ +template +std::pair +avx2_convert_utf16_to_latin1(const char16_t *buf, size_t len, + char *latin1_output) { + const char16_t *end = buf + len; + while (buf + 16 <= end) { + // Load 16 UTF-16 characters into 256-bit AVX2 register + __m256i in = _mm256_loadu_si256(reinterpret_cast(buf)); + + if (!match_system(big_endian)) { + const __m256i swap = _mm256_setr_epi8( + 1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14, 17, 16, 19, 18, + 21, 20, 23, 22, 25, 24, 27, 26, 29, 28, 31, 30); + in = _mm256_shuffle_epi8(in, swap); + } + + __m256i high_byte_mask = _mm256_set1_epi16((int16_t)0xFF00); + if (_mm256_testz_si256(in, high_byte_mask)) { + // Pack 16-bit characters into 8-bit and store in latin1_output + __m128i lo = _mm256_extractf128_si256(in, 0); + __m128i hi = _mm256_extractf128_si256(in, 1); + __m128i latin1_packed_lo = _mm_packus_epi16(lo, lo); + __m128i latin1_packed_hi = _mm_packus_epi16(hi, hi); + _mm_storel_epi64(reinterpret_cast<__m128i *>(latin1_output), + latin1_packed_lo); + _mm_storel_epi64(reinterpret_cast<__m128i *>(latin1_output + 8), + latin1_packed_hi); + // Adjust pointers for next iteration + buf += 16; + latin1_output += 16; + } else { + return std::make_pair(nullptr, reinterpret_cast(latin1_output)); + } + } // while + return std::make_pair(buf, latin1_output); +} + +template +std::pair +avx2_convert_utf16_to_latin1_with_errors(const char16_t *buf, size_t len, + char *latin1_output) { + const char16_t *start = buf; + const char16_t *end = buf + len; + while (buf + 16 <= end) { + __m256i in = _mm256_loadu_si256(reinterpret_cast(buf)); + + if (!big_endian) { + const __m256i swap = _mm256_setr_epi8( + 1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14, 17, 16, 19, 18, + 21, 20, 23, 22, 25, 24, 27, 26, 29, 28, 31, 30); + in = _mm256_shuffle_epi8(in, swap); + } + + __m256i high_byte_mask = _mm256_set1_epi16((int16_t)0xFF00); + if (_mm256_testz_si256(in, high_byte_mask)) { + __m128i lo = _mm256_extractf128_si256(in, 0); + __m128i hi = _mm256_extractf128_si256(in, 1); + __m128i latin1_packed_lo = _mm_packus_epi16(lo, lo); + __m128i latin1_packed_hi = _mm_packus_epi16(hi, hi); + _mm_storel_epi64(reinterpret_cast<__m128i *>(latin1_output), + latin1_packed_lo); + _mm_storel_epi64(reinterpret_cast<__m128i *>(latin1_output + 8), + latin1_packed_hi); + buf += 16; + latin1_output += 16; + } else { + // Fallback to scalar code for handling errors + for (int k = 0; k < 16; k++) { + uint16_t word = !match_system(big_endian) + ? scalar::utf16::swap_bytes(buf[k]) + : buf[k]; + if (word <= 0xff) { + *latin1_output++ = char(word); + } else { + return std::make_pair( + result{error_code::TOO_LARGE, (size_t)(buf - start + k)}, + latin1_output); + } + } + buf += 16; + } + } // while + return std::make_pair(result{error_code::SUCCESS, (size_t)(buf - start)}, + latin1_output); +} +/* end file src/haswell/avx2_convert_utf16_to_latin1.cpp */ /* begin file src/haswell/avx2_convert_utf16_to_utf8.cpp */ /* The vectorized algorithm works on single SSE register i.e., it - loads eight 16-bit words. + loads eight 16-bit code units. We consider three cases: 1. an input register contains no surrogates and each value @@ -20099,7 +23124,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, Ad 1. - When values are less than 0x0800, it means that a 16-bit words + When values are less than 0x0800, it means that a 16-bit code unit can be converted into: 1) single UTF8 byte (when it's an ASCII char) or 2) two UTF8 bytes. @@ -20113,7 +23138,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, Ad 2. - When values fit in 16-bit words, but are above 0x07ff, then + When values fit in 16-bit code units, but are above 0x07ff, then a single word may produce one, two or three UTF8 bytes. We prepare data for all these three cases in two registers. @@ -20230,7 +23255,7 @@ std::pair avx2_convert_utf16_to_utf8(const char16_t* buf // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x00000000) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes const __m256i dup_even = _mm256_setr_epi16(0x0000, 0x0202, 0x0404, 0x0606, 0x0808, 0x0a0a, 0x0c0c, 0x0e0e, 0x0000, 0x0202, 0x0404, 0x0606, @@ -20241,7 +23266,7 @@ std::pair avx2_convert_utf16_to_utf8(const char16_t* buf 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -20252,7 +23277,7 @@ std::pair avx2_convert_utf16_to_utf8(const char16_t* buf either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -20280,16 +23305,16 @@ std::pair avx2_convert_utf16_to_utf8(const char16_t* buf const __m256i s4 = _mm256_xor_si256(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m256i out0 = _mm256_unpacklo_epi16(t2, s4); const __m256i out1 = _mm256_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint32_t mask = (one_byte_bitmask & 0x55555555) | (one_or_two_bytes_bitmask & 0xaaaaaaaa); // Due to the wider registers, the following path is less likely to be useful. /*if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m256i shuffle = _mm256_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1, 2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m256i utf8_0 = _mm256_shuffle_epi8(out0, shuffle); const __m256i utf8_1 = _mm256_shuffle_epi8(out1, shuffle); @@ -20473,7 +23498,7 @@ std::pair avx2_convert_utf16_to_utf8_with_errors(const char16_t* // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x00000000) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes const __m256i dup_even = _mm256_setr_epi16(0x0000, 0x0202, 0x0404, 0x0606, 0x0808, 0x0a0a, 0x0c0c, 0x0e0e, 0x0000, 0x0202, 0x0404, 0x0606, @@ -20484,7 +23509,7 @@ std::pair avx2_convert_utf16_to_utf8_with_errors(const char16_t* 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -20495,7 +23520,7 @@ std::pair avx2_convert_utf16_to_utf8_with_errors(const char16_t* either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -20523,16 +23548,16 @@ std::pair avx2_convert_utf16_to_utf8_with_errors(const char16_t* const __m256i s4 = _mm256_xor_si256(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m256i out0 = _mm256_unpacklo_epi16(t2, s4); const __m256i out1 = _mm256_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint32_t mask = (one_byte_bitmask & 0x55555555) | (one_or_two_bytes_bitmask & 0xaaaaaaaa); // Due to the wider registers, the following path is less likely to be useful. /*if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m256i shuffle = _mm256_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1, 2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m256i utf8_0 = _mm256_shuffle_epi8(out0, shuffle); const __m256i utf8_1 = _mm256_shuffle_epi8(out1, shuffle); @@ -20616,11 +23641,10 @@ std::pair avx2_convert_utf16_to_utf8_with_errors(const char16_t* return std::make_pair(result(error_code::SUCCESS, buf - start), utf8_output); } /* end file src/haswell/avx2_convert_utf16_to_utf8.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_convert_utf16_to_utf32.cpp /* begin file src/haswell/avx2_convert_utf16_to_utf32.cpp */ /* The vectorized algorithm works on single SSE register i.e., it - loads eight 16-bit words. + loads eight 16-bit code units. We consider three cases: 1. an input register contains no surrogates and each value @@ -20632,7 +23656,7 @@ std::pair avx2_convert_utf16_to_utf8_with_errors(const char16_t* Ad 1. - When values are less than 0x0800, it means that a 16-bit words + When values are less than 0x0800, it means that a 16-bit code unit can be converted into: 1) single UTF8 byte (when it's an ASCII char) or 2) two UTF8 bytes. @@ -20646,7 +23670,7 @@ std::pair avx2_convert_utf16_to_utf8_with_errors(const char16_t* Ad 2. - When values fit in 16-bit words, but are above 0x07ff, then + When values fit in 16-bit code units, but are above 0x07ff, then a single word may produce one, two or three UTF8 bytes. We prepare data for all these three cases in two registers. @@ -20697,7 +23721,7 @@ std::pair avx2_convert_utf16_to_utf32(const char16_t // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x00000000) { - // case: we extend all sixteen 16-bit words to sixteen 32-bit words + // case: we extend all sixteen 16-bit code units to sixteen 32-bit code units _mm256_storeu_si256(reinterpret_cast<__m256i *>(utf32_output), _mm256_cvtepu16_epi32(_mm256_castsi256_si128(in))); _mm256_storeu_si256(reinterpret_cast<__m256i *>(utf32_output + 8), _mm256_cvtepu16_epi32(_mm256_extractf128_si256(in,1))); utf32_output += 16; @@ -20765,7 +23789,7 @@ std::pair avx2_convert_utf16_to_utf32_with_errors(const char1 // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x00000000) { - // case: we extend all sixteen 16-bit words to sixteen 32-bit words + // case: we extend all sixteen 16-bit code units to sixteen 32-bit code units _mm256_storeu_si256(reinterpret_cast<__m256i *>(utf32_output), _mm256_cvtepu16_epi32(_mm256_castsi256_si128(in))); _mm256_storeu_si256(reinterpret_cast<__m256i *>(utf32_output + 8), _mm256_cvtepu16_epi32(_mm256_extractf128_si256(in,1))); utf32_output += 16; @@ -20801,7 +23825,100 @@ std::pair avx2_convert_utf16_to_utf32_with_errors(const char1 } /* end file src/haswell/avx2_convert_utf16_to_utf32.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_convert_utf32_to_utf8.cpp +/* begin file src/haswell/avx2_convert_utf32_to_latin1.cpp */ +std::pair +avx2_convert_utf32_to_latin1(const char32_t *buf, size_t len, + char *latin1_output) { + const size_t rounded_len = + len & ~0x1F; // Round down to nearest multiple of 32 + + __m256i high_bytes_mask = _mm256_set1_epi32(0xFFFFFF00); + + __m256i shufmask = _mm256_set_epi8(-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 12, 8, 4, 0, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 12, 8, 4, 0); + + for (size_t i = 0; i < rounded_len; i += 16) { + __m256i in1 = _mm256_loadu_si256((__m256i *)buf); + __m256i in2 = _mm256_loadu_si256((__m256i *)(buf + 8)); + + __m256i check_combined = _mm256_or_si256(in1, in2); + + if (!_mm256_testz_si256(check_combined, high_bytes_mask)) { + return std::make_pair(nullptr, latin1_output); + } + + //Turn UTF32 bytes into latin 1 bytes + __m256i shuffled1 = _mm256_shuffle_epi8(in1, shufmask); + __m256i shuffled2 = _mm256_shuffle_epi8(in2, shufmask); + + //move Latin1 bytes to their correct spot + __m256i idx1 = _mm256_set_epi32(-1, -1,-1,-1,-1,-1,4,0); + __m256i idx2 = _mm256_set_epi32(-1, -1,-1,-1,4,0,-1,-1); + __m256i reshuffled1 = _mm256_permutevar8x32_epi32(shuffled1, idx1); + __m256i reshuffled2 = _mm256_permutevar8x32_epi32(shuffled2, idx2); + + __m256i result = _mm256_or_si256(reshuffled1, reshuffled2); + _mm_storeu_si128((__m128i *)latin1_output, + _mm256_castsi256_si128(result)); + + latin1_output += 16; + buf += 16; + } + + return std::make_pair(buf, latin1_output); +} +std::pair +avx2_convert_utf32_to_latin1_with_errors(const char32_t *buf, size_t len, + char *latin1_output) { + const size_t rounded_len = + len & ~0x1F; // Round down to nearest multiple of 32 + + __m256i high_bytes_mask = _mm256_set1_epi32(0xFFFFFF00); + __m256i shufmask = _mm256_set_epi8(-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 12, 8, 4, 0, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 12, 8, 4, 0); + + const char32_t *start = buf; + + for (size_t i = 0; i < rounded_len; i += 16) { + __m256i in1 = _mm256_loadu_si256((__m256i *)buf); + __m256i in2 = _mm256_loadu_si256((__m256i *)(buf + 8)); + + __m256i check_combined = _mm256_or_si256(in1, in2); + + if (!_mm256_testz_si256(check_combined, high_bytes_mask)) { + // Fallback to scalar code for handling errors + for (int k = 0; k < 8; k++) { + char32_t codepoint = buf[k]; + if (codepoint <= 0xFF) { + *latin1_output++ = static_cast(codepoint); + } else { + return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), + latin1_output); + } + } + buf += 8; + } else { + __m256i shuffled1 = _mm256_shuffle_epi8(in1, shufmask); + __m256i shuffled2 = _mm256_shuffle_epi8(in2, shufmask); + + __m256i idx1 = _mm256_set_epi32(-1, -1, -1, -1, -1, -1, 4, 0); + __m256i idx2 = _mm256_set_epi32(-1, -1, -1, -1, 4, 0, -1, -1); + __m256i reshuffled1 = _mm256_permutevar8x32_epi32(shuffled1, idx1); + __m256i reshuffled2 = _mm256_permutevar8x32_epi32(shuffled2, idx2); + + __m256i result = _mm256_or_si256(reshuffled1, reshuffled2); + _mm_storeu_si128((__m128i *)latin1_output, _mm256_castsi256_si128(result)); + + latin1_output += 16; + buf += 16; + } + } + + return std::make_pair(result(error_code::SUCCESS, buf - start), latin1_output); +} +/* end file src/haswell/avx2_convert_utf32_to_latin1.cpp */ /* begin file src/haswell/avx2_convert_utf32_to_utf8.cpp */ std::pair avx2_convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) { const char32_t* end = buf + len; @@ -20821,7 +23938,7 @@ std::pair avx2_convert_utf32_to_utf8(const char32_t* buf __m256i nextin = _mm256_loadu_si256((__m256i*)buf+1); running_max = _mm256_max_epu32(_mm256_max_epu32(in, running_max), nextin); - // Pack 32-bit UTF-32 words to 16-bit UTF-16 words with unsigned saturation + // Pack 32-bit UTF-32 code units to 16-bit UTF-16 code units with unsigned saturation __m256i in_16 = _mm256_packus_epi32(_mm256_and_si256(in, v_7fffffff), _mm256_and_si256(nextin, v_7fffffff)); in_16 = _mm256_permute4x64_epi64(in_16, 0b11011000); @@ -20892,7 +24009,7 @@ std::pair avx2_convert_utf32_to_utf8(const char32_t* buf const __m256i saturation_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(_mm256_or_si256(in, nextin), v_ffff0000), v_0000); const uint32_t saturation_bitmask = static_cast(_mm256_movemask_epi8(saturation_bytemask)); if (saturation_bitmask == 0xffffffff) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes const __m256i v_d800 = _mm256_set1_epi16((uint16_t)0xd800); forbidden_bytemask = _mm256_or_si256(forbidden_bytemask, _mm256_cmpeq_epi16(_mm256_and_si256(in_16, v_f800), v_d800)); @@ -20906,7 +24023,7 @@ std::pair avx2_convert_utf32_to_utf8(const char32_t* buf 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -20917,7 +24034,7 @@ std::pair avx2_convert_utf32_to_utf8(const char32_t* buf either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -20945,16 +24062,16 @@ std::pair avx2_convert_utf32_to_utf8(const char32_t* buf const __m256i s4 = _mm256_xor_si256(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m256i out0 = _mm256_unpacklo_epi16(t2, s4); const __m256i out1 = _mm256_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint32_t mask = (one_byte_bitmask & 0x55555555) | (one_or_two_bytes_bitmask & 0xaaaaaaaa); // Due to the wider registers, the following path is less likely to be useful. /*if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m256i shuffle = _mm256_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1, 2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m256i utf8_0 = _mm256_shuffle_epi8(out0, shuffle); const __m256i utf8_1 = _mm256_shuffle_epi8(out1, shuffle); @@ -21066,7 +24183,7 @@ std::pair avx2_convert_utf32_to_utf8_with_errors(const char32_t* return std::make_pair(result(error_code::TOO_LARGE, buf - start), utf8_output); } - // Pack 32-bit UTF-32 words to 16-bit UTF-16 words with unsigned saturation + // Pack 32-bit UTF-32 code units to 16-bit UTF-16 code units with unsigned saturation __m256i in_16 = _mm256_packus_epi32(_mm256_and_si256(in, v_7fffffff), _mm256_and_si256(nextin, v_7fffffff)); in_16 = _mm256_permute4x64_epi64(in_16, 0b11011000); @@ -21137,9 +24254,9 @@ std::pair avx2_convert_utf32_to_utf8_with_errors(const char32_t* const __m256i saturation_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(_mm256_or_si256(in, nextin), v_ffff0000), v_0000); const uint32_t saturation_bitmask = static_cast(_mm256_movemask_epi8(saturation_bytemask)); if (saturation_bitmask == 0xffffffff) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes - // Check for illegal surrogate words + // Check for illegal surrogate code units const __m256i v_d800 = _mm256_set1_epi16((uint16_t)0xd800); const __m256i forbidden_bytemask = _mm256_cmpeq_epi16(_mm256_and_si256(in_16, v_f800), v_d800); if (static_cast(_mm256_movemask_epi8(forbidden_bytemask)) != 0x0) { @@ -21156,7 +24273,7 @@ std::pair avx2_convert_utf32_to_utf8_with_errors(const char32_t* 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -21167,7 +24284,7 @@ std::pair avx2_convert_utf32_to_utf8_with_errors(const char32_t* either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -21195,16 +24312,16 @@ std::pair avx2_convert_utf32_to_utf8_with_errors(const char32_t* const __m256i s4 = _mm256_xor_si256(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m256i out0 = _mm256_unpacklo_epi16(t2, s4); const __m256i out1 = _mm256_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint32_t mask = (one_byte_bitmask & 0x55555555) | (one_or_two_bytes_bitmask & 0xaaaaaaaa); // Due to the wider registers, the following path is less likely to be useful. /*if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m256i shuffle = _mm256_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1, 2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m256i utf8_0 = _mm256_shuffle_epi8(out0, shuffle); const __m256i utf8_1 = _mm256_shuffle_epi8(out1, shuffle); @@ -21279,20 +24396,84 @@ std::pair avx2_convert_utf32_to_utf8_with_errors(const char32_t* } buf += k; } - } // while + } // while + + return std::make_pair(result(error_code::SUCCESS, buf - start), utf8_output); +} +/* end file src/haswell/avx2_convert_utf32_to_utf8.cpp */ +/* begin file src/haswell/avx2_convert_utf32_to_utf16.cpp */ +template +std::pair avx2_convert_utf32_to_utf16(const char32_t* buf, size_t len, char16_t* utf16_output) { + const char32_t* end = buf + len; + + const size_t safety_margin = 12; // to avoid overruns, see issue https://github.com/simdutf/simdutf/issues/92 + __m256i forbidden_bytemask = _mm256_setzero_si256(); + + + while (buf + 8 + safety_margin <= end) { + __m256i in = _mm256_loadu_si256((__m256i*)buf); + + const __m256i v_00000000 = _mm256_setzero_si256(); + const __m256i v_ffff0000 = _mm256_set1_epi32((int32_t)0xffff0000); + + // no bits set above 16th bit <=> can pack to UTF16 without surrogate pairs + const __m256i saturation_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(in, v_ffff0000), v_00000000); + const uint32_t saturation_bitmask = static_cast(_mm256_movemask_epi8(saturation_bytemask)); + + if (saturation_bitmask == 0xffffffff) { + const __m256i v_f800 = _mm256_set1_epi32((uint32_t)0xf800); + const __m256i v_d800 = _mm256_set1_epi32((uint32_t)0xd800); + forbidden_bytemask = _mm256_or_si256(forbidden_bytemask, _mm256_cmpeq_epi32(_mm256_and_si256(in, v_f800), v_d800)); + + __m128i utf16_packed = _mm_packus_epi32(_mm256_castsi256_si128(in),_mm256_extractf128_si256(in,1)); + if (big_endian) { + const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); + utf16_packed = _mm_shuffle_epi8(utf16_packed, swap); + } + _mm_storeu_si128((__m128i*)utf16_output, utf16_packed); + utf16_output += 8; + buf += 8; + } else { + size_t forward = 7; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint32_t word = buf[k]; + if((word & 0xFFFF0000)==0) { + // will not generate a surrogate pair + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, utf16_output); } + *utf16_output++ = big_endian ? char16_t((uint16_t(word) >> 8) | (uint16_t(word) << 8)) : char16_t(word); + } else { + // will generate a surrogate pair + if (word > 0x10FFFF) { return std::make_pair(nullptr, utf16_output); } + word -= 0x10000; + uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); + uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); + if (big_endian) { + high_surrogate = uint16_t((high_surrogate >> 8) | (high_surrogate << 8)); + low_surrogate = uint16_t((low_surrogate >> 8) | (low_surrogate << 8)); + } + *utf16_output++ = char16_t(high_surrogate); + *utf16_output++ = char16_t(low_surrogate); + } + } + buf += k; + } + } - return std::make_pair(result(error_code::SUCCESS, buf - start), utf8_output); + // check for invalid input + if (static_cast(_mm256_movemask_epi8(forbidden_bytemask)) != 0) { return std::make_pair(nullptr, utf16_output); } + + return std::make_pair(buf, utf16_output); } -/* end file src/haswell/avx2_convert_utf32_to_utf8.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=haswell/avx2_convert_utf32_to_utf16.cpp -/* begin file src/haswell/avx2_convert_utf32_to_utf16.cpp */ + + template -std::pair avx2_convert_utf32_to_utf16(const char32_t* buf, size_t len, char16_t* utf16_output) { +std::pair avx2_convert_utf32_to_utf16_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) { + const char32_t* start = buf; const char32_t* end = buf + len; const size_t safety_margin = 12; // to avoid overruns, see issue https://github.com/simdutf/simdutf/issues/92 - __m256i forbidden_bytemask = _mm256_setzero_si256(); - while (buf + 8 + safety_margin <= end) { __m256i in = _mm256_loadu_si256((__m256i*)buf); @@ -21307,7 +24488,10 @@ std::pair avx2_convert_utf32_to_utf16(const char32_t if (saturation_bitmask == 0xffffffff) { const __m256i v_f800 = _mm256_set1_epi32((uint32_t)0xf800); const __m256i v_d800 = _mm256_set1_epi32((uint32_t)0xd800); - forbidden_bytemask = _mm256_or_si256(forbidden_bytemask, _mm256_cmpeq_epi32(_mm256_and_si256(in, v_f800), v_d800)); + const __m256i forbidden_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(in, v_f800), v_d800); + if (static_cast(_mm256_movemask_epi8(forbidden_bytemask)) != 0x0) { + return std::make_pair(result(error_code::SURROGATE, buf - start), utf16_output); + } __m128i utf16_packed = _mm_packus_epi32(_mm256_castsi256_si128(in),_mm256_extractf128_si256(in,1)); if (big_endian) { @@ -21325,11 +24509,11 @@ std::pair avx2_convert_utf32_to_utf16(const char32_t uint32_t word = buf[k]; if((word & 0xFFFF0000)==0) { // will not generate a surrogate pair - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, utf16_output); } + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), utf16_output); } *utf16_output++ = big_endian ? char16_t((uint16_t(word) >> 8) | (uint16_t(word) << 8)) : char16_t(word); } else { // will generate a surrogate pair - if (word > 0x10FFFF) { return std::make_pair(nullptr, utf16_output); } + if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), utf16_output); } word -= 0x10000; uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); @@ -21345,185 +24529,580 @@ std::pair avx2_convert_utf32_to_utf16(const char32_t } } - // check for invalid input - if (static_cast(_mm256_movemask_epi8(forbidden_bytemask)) != 0) { return std::make_pair(nullptr, utf16_output); } + return std::make_pair(result(error_code::SUCCESS, buf - start), utf16_output); +} +/* end file src/haswell/avx2_convert_utf32_to_utf16.cpp */ + +/* begin file src/haswell/avx2_convert_utf8_to_latin1.cpp */ +// depends on "tables/utf8_to_utf16_tables.h" + +// Convert up to 12 bytes from utf8 to latin1 using a mask indicating the +// end of the code points. Only the least significant 12 bits of the mask +// are accessed. +// It returns how many bytes were consumed (up to 12). +size_t convert_masked_utf8_to_latin1(const char *input, + uint64_t utf8_end_of_code_point_mask, + char *&latin1_output) { + // we use an approach where we try to process up to 12 input bytes. + // Why 12 input bytes and not 16? Because we are concerned with the size of + // the lookup tables. Also 12 is nicely divisible by two and three. + // + // + // Optimization note: our main path below is load-latency dependent. Thus it is maybe + // beneficial to have fast paths that depend on branch prediction but have less latency. + // This results in more instructions but, potentially, also higher speeds. + // + const __m128i in = _mm_loadu_si128((__m128i *)input); + const __m128i in_second_half = _mm_loadu_si128((__m128i *)(input + 16)); + + const uint16_t input_utf8_end_of_code_point_mask = + utf8_end_of_code_point_mask & 0xfff; //we're only processing 12 bytes in case it`s not all ASCII + + if((input_utf8_end_of_code_point_mask & 0xffffffff) == 0xffffffff) { + // Load the next 128 bits. + + // Combine the two 128-bit registers into a single 256-bit register. + __m256i in_combined = _mm256_set_m128i(in_second_half, in); + + // We process the data in chunks of 32 bytes. + _mm256_storeu_si256(reinterpret_cast<__m256i *>(latin1_output), in_combined); + + latin1_output += 32; // We wrote 32 characters. + return 32; // We consumed 32 bytes. + } + + + if(((utf8_end_of_code_point_mask & 0xffff) == 0xffff)) { + // We process the data in chunks of 16 bytes. + _mm_storeu_si128(reinterpret_cast<__m128i *>(latin1_output), in); + latin1_output += 16; // We wrote 16 characters. + return 16; // We consumed 16 bytes. + } + /// We do not have a fast path available, so we fallback. + const uint8_t idx = + tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][0]; + const uint8_t consumed = + tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; + // this indicates an invalid input: + if(idx >= 64) { return consumed; } + // Here we should have (idx < 64), if not, there is a bug in the validation or elsewhere. + // SIX (6) input code-code units + // this is a relatively easy scenario + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. On processors + // where pdep/pext is fast, we might be able to use a small lookup table. + const __m128i sh = + _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); + const __m128i perm = _mm_shuffle_epi8(in, sh); + const __m128i ascii = _mm_and_si128(perm, _mm_set1_epi16(0x7f)); + const __m128i highbyte = _mm_and_si128(perm, _mm_set1_epi16(0x1f00)); + __m128i composed = _mm_or_si128(ascii, _mm_srli_epi16(highbyte, 2)); + const __m128i latin1_packed = _mm_packus_epi16(composed,composed); + // writing 8 bytes even though we only care about the first 6 bytes. + // performance note: it would be faster to use _mm_storeu_si128, we should investigate. + _mm_storel_epi64((__m128i *)latin1_output, latin1_packed); + latin1_output += 6; // We wrote 6 bytes. + return consumed; +} +/* end file src/haswell/avx2_convert_utf8_to_latin1.cpp */ + +} // unnamed namespace +} // namespace haswell +} // namespace simdutf + +/* begin file src/generic/buf_block_reader.h */ +namespace simdutf { +namespace haswell { +namespace { + +// Walks through a buffer in block-sized increments, loading the last part with spaces +template +struct buf_block_reader { +public: + simdutf_really_inline buf_block_reader(const uint8_t *_buf, size_t _len); + simdutf_really_inline size_t block_index(); + simdutf_really_inline bool has_full_block() const; + simdutf_really_inline const uint8_t *full_block() const; + /** + * Get the last block, padded with spaces. + * + * There will always be a last block, with at least 1 byte, unless len == 0 (in which case this + * function fills the buffer with spaces and returns 0. In particular, if len == STEP_SIZE there + * will be 0 full_blocks and 1 remainder block with STEP_SIZE bytes and no spaces for padding. + * + * @return the number of effective characters in the last block. + */ + simdutf_really_inline size_t get_remainder(uint8_t *dst) const; + simdutf_really_inline void advance(); +private: + const uint8_t *buf; + const size_t len; + const size_t lenminusstep; + size_t idx; +}; + +// Routines to print masks and text for debugging bitmask operations +simdutf_unused static char * format_input_text_64(const uint8_t *text) { + static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); + for (size_t i=0; i); i++) { + buf[i] = int8_t(text[i]) < ' ' ? '_' : int8_t(text[i]); + } + buf[sizeof(simd8x64)] = '\0'; + return buf; +} + +// Routines to print masks and text for debugging bitmask operations +simdutf_unused static char * format_input_text(const simd8x64& in) { + static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); + in.store(reinterpret_cast(buf)); + for (size_t i=0; i); i++) { + if (buf[i] < ' ') { buf[i] = '_'; } + } + buf[sizeof(simd8x64)] = '\0'; + return buf; +} + +simdutf_unused static char * format_mask(uint64_t mask) { + static char *buf = reinterpret_cast(malloc(64 + 1)); + for (size_t i=0; i<64; i++) { + buf[i] = (mask & (size_t(1) << i)) ? 'X' : ' '; + } + buf[64] = '\0'; + return buf; +} + +template +simdutf_really_inline buf_block_reader::buf_block_reader(const uint8_t *_buf, size_t _len) : buf{_buf}, len{_len}, lenminusstep{len < STEP_SIZE ? 0 : len - STEP_SIZE}, idx{0} {} + +template +simdutf_really_inline size_t buf_block_reader::block_index() { return idx; } + +template +simdutf_really_inline bool buf_block_reader::has_full_block() const { + return idx < lenminusstep; +} + +template +simdutf_really_inline const uint8_t *buf_block_reader::full_block() const { + return &buf[idx]; +} + +template +simdutf_really_inline size_t buf_block_reader::get_remainder(uint8_t *dst) const { + if(len == idx) { return 0; } // memcpy(dst, null, 0) will trigger an error with some sanitizers + std::memset(dst, 0x20, STEP_SIZE); // std::memset STEP_SIZE because it's more efficient to write out 8 or 16 bytes at once. + std::memcpy(dst, buf + idx, len - idx); + return len - idx; +} + +template +simdutf_really_inline void buf_block_reader::advance() { + idx += STEP_SIZE; +} + +} // unnamed namespace +} // namespace haswell +} // namespace simdutf +/* end file src/generic/buf_block_reader.h */ +/* begin file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +namespace simdutf { +namespace haswell { +namespace { +namespace utf8_validation { + +using namespace simd; + + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) +// Bit 1 = Too Long (ASCII followed by continuation) +// Bit 2 = Overlong 3-byte +// Bit 4 = Surrogate +// Bit 5 = Overlong 2-byte +// Bit 7 = Two Continuations + constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ + // 11______ 11______ + constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ + constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ + constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ + constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ + constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ + constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ + // 11110100 101_____ + // 11110101 1001____ + // 11110101 101_____ + // 1111011_ 1001____ + // 1111011_ 101_____ + // 11111___ 1001____ + // 11111___ 101_____ + constexpr const uint8_t TOO_LARGE_1000 = 1<<6; + // 11110101 1000____ + // 1111011_ 1000____ + // 11111___ 1000____ + constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + + const simd8 byte_1_high = prev1.shr<4>().lookup_16( + // 0_______ ________ + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + // 10______ ________ + TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, + // 1100____ ________ + TOO_SHORT | OVERLONG_2, + // 1101____ ________ + TOO_SHORT, + // 1110____ ________ + TOO_SHORT | OVERLONG_3 | SURROGATE, + // 1111____ ________ + TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 + ); + constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . + const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( + // ____0000 ________ + CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, + // ____0001 ________ + CARRY | OVERLONG_2, + // ____001_ ________ + CARRY, + CARRY, + + // ____0100 ________ + CARRY | TOO_LARGE, + // ____0101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____011_ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + + // ____1___ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____1101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000 + ); + const simd8 byte_2_high = input.shr<4>().lookup_16( + // ________ 0_______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - return std::make_pair(buf, utf16_output); -} + // ________ 1000____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, + // ________ 1001____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, + // ________ 101_____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + // ________ 11______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT + ); + return (byte_1_high & byte_1_low & byte_2_high); + } + simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, + const simd8 prev_input, const simd8 sc) { + simd8 prev2 = input.prev<2>(prev_input); + simd8 prev3 = input.prev<3>(prev_input); + simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); + simd8 must23_80 = must23 & uint8_t(0x80); + return must23_80 ^ sc; + } -template -std::pair avx2_convert_utf32_to_utf16_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) { - const char32_t* start = buf; - const char32_t* end = buf + len; + // + // Return nonzero if there are incomplete multibyte characters at the end of the block: + // e.g. if there is a 4-byte character, but it's 3 bytes from the end. + // + simdutf_really_inline simd8 is_incomplete(const simd8 input) { + // If the previous input's last 3 bytes match this, they're too short (they ended at EOF): + // ... 1111____ 111_____ 11______ + static const uint8_t max_array[32] = { + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 0b11110000u-1, 0b11100000u-1, 0b11000000u-1 + }; + const simd8 max_value(&max_array[sizeof(max_array)-sizeof(simd8)]); + return input.gt_bits(max_value); + } - const size_t safety_margin = 12; // to avoid overruns, see issue https://github.com/simdutf/simdutf/issues/92 + struct utf8_checker { + // If this is nonzero, there has been a UTF-8 error. + simd8 error; + // The last input we received + simd8 prev_input_block; + // Whether the last input we received was incomplete (used for ASCII fast path) + simd8 prev_incomplete; - while (buf + 8 + safety_margin <= end) { - __m256i in = _mm256_loadu_si256((__m256i*)buf); + // + // Check whether the current bytes are valid UTF-8. + // + simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { + // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes + // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) + simd8 prev1 = input.prev<1>(prev_input); + simd8 sc = check_special_cases(input, prev1); + this->error |= check_multibyte_lengths(input, prev_input, sc); + } - const __m256i v_00000000 = _mm256_setzero_si256(); - const __m256i v_ffff0000 = _mm256_set1_epi32((int32_t)0xffff0000); + // The only problem that can happen at EOF is that a multibyte character is too short + // or a byte value too large in the last bytes: check_special_cases only checks for bytes + // too large in the first of two bytes. + simdutf_really_inline void check_eof() { + // If the previous block had incomplete UTF-8 characters at the end, an ASCII block can't + // possibly finish them. + this->error |= this->prev_incomplete; + } - // no bits set above 16th bit <=> can pack to UTF16 without surrogate pairs - const __m256i saturation_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(in, v_ffff0000), v_00000000); - const uint32_t saturation_bitmask = static_cast(_mm256_movemask_epi8(saturation_bytemask)); + simdutf_really_inline void check_next_input(const simd8x64& input) { + if(simdutf_likely(is_ascii(input))) { + this->error |= this->prev_incomplete; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], this->prev_input_block); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], this->prev_input_block); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + this->prev_incomplete = is_incomplete(input.chunks[simd8x64::NUM_CHUNKS-1]); + this->prev_input_block = input.chunks[simd8x64::NUM_CHUNKS-1]; - if (saturation_bitmask == 0xffffffff) { - const __m256i v_f800 = _mm256_set1_epi32((uint32_t)0xf800); - const __m256i v_d800 = _mm256_set1_epi32((uint32_t)0xd800); - const __m256i forbidden_bytemask = _mm256_cmpeq_epi32(_mm256_and_si256(in, v_f800), v_d800); - if (static_cast(_mm256_movemask_epi8(forbidden_bytemask)) != 0x0) { - return std::make_pair(result(error_code::SURROGATE, buf - start), utf16_output); } + } - __m128i utf16_packed = _mm_packus_epi32(_mm256_castsi256_si128(in),_mm256_extractf128_si256(in,1)); - if (big_endian) { - const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - utf16_packed = _mm_shuffle_epi8(utf16_packed, swap); - } - _mm_storeu_si128((__m128i*)utf16_output, utf16_packed); - utf16_output += 8; - buf += 8; - } else { - size_t forward = 7; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint32_t word = buf[k]; - if((word & 0xFFFF0000)==0) { - // will not generate a surrogate pair - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), utf16_output); } - *utf16_output++ = big_endian ? char16_t((uint16_t(word) >> 8) | (uint16_t(word) << 8)) : char16_t(word); - } else { - // will generate a surrogate pair - if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), utf16_output); } - word -= 0x10000; - uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); - uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); - if (big_endian) { - high_surrogate = uint16_t((high_surrogate >> 8) | (high_surrogate << 8)); - low_surrogate = uint16_t((low_surrogate >> 8) | (low_surrogate << 8)); - } - *utf16_output++ = char16_t(high_surrogate); - *utf16_output++ = char16_t(low_surrogate); - } - } - buf += k; + // do not forget to call check_eof! + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); } - } - return std::make_pair(result(error_code::SUCCESS, buf - start), utf16_output); -} -/* end file src/haswell/avx2_convert_utf32_to_utf16.cpp */ + }; // struct utf8_checker +} // namespace utf8_validation + +using utf8_validation::utf8_checker; + } // unnamed namespace } // namespace haswell } // namespace simdutf - -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/buf_block_reader.h -/* begin file src/generic/buf_block_reader.h */ +/* end file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +/* begin file src/generic/utf8_validation/utf8_validator.h */ namespace simdutf { namespace haswell { namespace { +namespace utf8_validation { -// Walks through a buffer in block-sized increments, loading the last part with spaces -template -struct buf_block_reader { -public: - simdutf_really_inline buf_block_reader(const uint8_t *_buf, size_t _len); - simdutf_really_inline size_t block_index(); - simdutf_really_inline bool has_full_block() const; - simdutf_really_inline const uint8_t *full_block() const; - /** - * Get the last block, padded with spaces. - * - * There will always be a last block, with at least 1 byte, unless len == 0 (in which case this - * function fills the buffer with spaces and returns 0. In particular, if len == STEP_SIZE there - * will be 0 full_blocks and 1 remainder block with STEP_SIZE bytes and no spaces for padding. - * - * @return the number of effective characters in the last block. - */ - simdutf_really_inline size_t get_remainder(uint8_t *dst) const; - simdutf_really_inline void advance(); -private: - const uint8_t *buf; - const size_t len; - const size_t lenminusstep; - size_t idx; -}; +/** + * Validates that the string is actual UTF-8. + */ +template +bool generic_validate_utf8(const uint8_t * input, size_t length) { + checker c{}; + buf_block_reader<64> reader(input, length); + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + c.check_next_input(in); + reader.advance(); + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + c.check_next_input(in); + reader.advance(); + c.check_eof(); + return !c.errors(); +} -// Routines to print masks and text for debugging bitmask operations -simdutf_unused static char * format_input_text_64(const uint8_t *text) { - static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); - for (size_t i=0; i); i++) { - buf[i] = int8_t(text[i]) < ' ' ? '_' : int8_t(text[i]); - } - buf[sizeof(simd8x64)] = '\0'; - return buf; +bool generic_validate_utf8(const char * input, size_t length) { + return generic_validate_utf8(reinterpret_cast(input),length); +} + +/** + * Validates that the string is actual UTF-8 and stops on errors. + */ +template +result generic_validate_utf8_with_errors(const uint8_t * input, size_t length) { + checker c{}; + buf_block_reader<64> reader(input, length); + size_t count{0}; + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + c.check_next_input(in); + if(c.errors()) { + if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk + result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input + count), length - count); + res.count += count; + return res; + } + reader.advance(); + count += 64; + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + c.check_next_input(in); + reader.advance(); + c.check_eof(); + if (c.errors()) { + if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk + result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input) + count, length - count); + res.count += count; + return res; + } else { + return result(error_code::SUCCESS, length); + } +} + +result generic_validate_utf8_with_errors(const char * input, size_t length) { + return generic_validate_utf8_with_errors(reinterpret_cast(input),length); +} + +template +bool generic_validate_ascii(const uint8_t * input, size_t length) { + buf_block_reader<64> reader(input, length); + uint8_t blocks[64]{}; + simd::simd8x64 running_or(blocks); + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + running_or |= in; + reader.advance(); + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + running_or |= in; + return running_or.is_ascii(); } -// Routines to print masks and text for debugging bitmask operations -simdutf_unused static char * format_input_text(const simd8x64& in) { - static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); - in.store(reinterpret_cast(buf)); - for (size_t i=0; i); i++) { - if (buf[i] < ' ') { buf[i] = '_'; } - } - buf[sizeof(simd8x64)] = '\0'; - return buf; +bool generic_validate_ascii(const char * input, size_t length) { + return generic_validate_ascii(reinterpret_cast(input),length); } -simdutf_unused static char * format_mask(uint64_t mask) { - static char *buf = reinterpret_cast(malloc(64 + 1)); - for (size_t i=0; i<64; i++) { - buf[i] = (mask & (size_t(1) << i)) ? 'X' : ' '; +template +result generic_validate_ascii_with_errors(const uint8_t * input, size_t length) { + buf_block_reader<64> reader(input, length); + size_t count{0}; + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + if (!in.is_ascii()) { + result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); + return result(res.error, count + res.count); + } + reader.advance(); + + count += 64; + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + if (!in.is_ascii()) { + result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); + return result(res.error, count + res.count); + } else { + return result(error_code::SUCCESS, length); } - buf[64] = '\0'; - return buf; } -template -simdutf_really_inline buf_block_reader::buf_block_reader(const uint8_t *_buf, size_t _len) : buf{_buf}, len{_len}, lenminusstep{len < STEP_SIZE ? 0 : len - STEP_SIZE}, idx{0} {} +result generic_validate_ascii_with_errors(const char * input, size_t length) { + return generic_validate_ascii_with_errors(reinterpret_cast(input),length); +} -template -simdutf_really_inline size_t buf_block_reader::block_index() { return idx; } +} // namespace utf8_validation +} // unnamed namespace +} // namespace haswell +} // namespace simdutf +/* end file src/generic/utf8_validation/utf8_validator.h */ +// transcoding from UTF-8 to UTF-16 +/* begin file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ -template -simdutf_really_inline bool buf_block_reader::has_full_block() const { - return idx < lenminusstep; -} -template -simdutf_really_inline const uint8_t *buf_block_reader::full_block() const { - return &buf[idx]; -} +namespace simdutf { +namespace haswell { +namespace { +namespace utf8_to_utf16 { -template -simdutf_really_inline size_t buf_block_reader::get_remainder(uint8_t *dst) const { - if(len == idx) { return 0; } // memcpy(dst, null, 0) will trigger an error with some sanitizers - std::memset(dst, 0x20, STEP_SIZE); // std::memset STEP_SIZE because it's more efficient to write out 8 or 16 bytes at once. - std::memcpy(dst, buf + idx, len - idx); - return len - idx; -} +using namespace simd; -template -simdutf_really_inline void buf_block_reader::advance() { - idx += STEP_SIZE; +template +simdutf_warn_unused size_t convert_valid(const char* input, size_t size, + char16_t* utf16_output) noexcept { + // The implementation is not specific to haswell and should be moved to the generic directory. + size_t pos = 0; + char16_t* start{utf16_output}; + const size_t safety_margin = 16; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + // this loop could be unrolled further. For example, we could process the mask + // far more than 64 bytes. + simd8x64 in(reinterpret_cast(input + pos)); + if(in.is_ascii()) { + in.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // Slow path. We hope that the compiler will recognize that this is a slow path. + // Anything that is not a continuation mask is a 'leading byte', that is, the + // start of a new code point. + uint64_t utf8_continuation_mask = in.lt(-65 + 1); + // -65 is 0b10111111 in two-complement's, so largest possible continuation byte + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + // The *start* of code points is not so useful, rather, we want the *end* of code points. + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times when using solely + // the slow/regular path, and at least four times if there are fast paths. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + // + // Thus we may allow convert_masked_utf8_to_utf16 to process + // more bytes at a time under a fast-path mode where 16 bytes + // are consumed at once (e.g., when encountering ASCII). + size_t consumed = convert_masked_utf8_to_utf16(input + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + utf16_output += scalar::utf8_to_utf16::convert_valid(input + pos, size - pos, utf16_output); + return utf16_output - start; } +} // namespace utf8_to_utf16 } // unnamed namespace } // namespace haswell } // namespace simdutf -/* end file src/generic/buf_block_reader.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_lookup4_algorithm.h -/* begin file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +/* end file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ +/* begin file src/generic/utf8_to_utf16/utf8_to_utf16.h */ + + namespace simdutf { namespace haswell { namespace { -namespace utf8_validation { - +namespace utf8_to_utf16 { using namespace simd; + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { // Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) // Bit 1 = Too Long (ASCII followed by continuation) @@ -21598,323 +25177,281 @@ using namespace simd; ); const simd8 byte_2_high = input.shr<4>().lookup_16( // ________ 0_______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - - // ________ 1000____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, - // ________ 1001____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, - // ________ 101_____ - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, - TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, - - // ________ 11______ - TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT - ); - return (byte_1_high & byte_1_low & byte_2_high); - } - simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, - const simd8 prev_input, const simd8 sc) { - simd8 prev2 = input.prev<2>(prev_input); - simd8 prev3 = input.prev<3>(prev_input); - simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); - simd8 must23_80 = must23 & uint8_t(0x80); - return must23_80 ^ sc; - } - - // - // Return nonzero if there are incomplete multibyte characters at the end of the block: - // e.g. if there is a 4-byte character, but it's 3 bytes from the end. - // - simdutf_really_inline simd8 is_incomplete(const simd8 input) { - // If the previous input's last 3 bytes match this, they're too short (they ended at EOF): - // ... 1111____ 111_____ 11______ - static const uint8_t max_array[32] = { - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 0b11110000u-1, 0b11100000u-1, 0b11000000u-1 - }; - const simd8 max_value(&max_array[sizeof(max_array)-sizeof(simd8)]); - return input.gt_bits(max_value); - } - - struct utf8_checker { - // If this is nonzero, there has been a UTF-8 error. - simd8 error; - // The last input we received - simd8 prev_input_block; - // Whether the last input we received was incomplete (used for ASCII fast path) - simd8 prev_incomplete; - - // - // Check whether the current bytes are valid UTF-8. - // - simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { - // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes - // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) - simd8 prev1 = input.prev<1>(prev_input); - simd8 sc = check_special_cases(input, prev1); - this->error |= check_multibyte_lengths(input, prev_input, sc); - } - - // The only problem that can happen at EOF is that a multibyte character is too short - // or a byte value too large in the last bytes: check_special_cases only checks for bytes - // too large in the first of two bytes. - simdutf_really_inline void check_eof() { - // If the previous block had incomplete UTF-8 characters at the end, an ASCII block can't - // possibly finish them. - this->error |= this->prev_incomplete; - } - - simdutf_really_inline void check_next_input(const simd8x64& input) { - if(simdutf_likely(is_ascii(input))) { - this->error |= this->prev_incomplete; - } else { - // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], this->prev_input_block); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], this->prev_input_block); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); - } - this->prev_incomplete = is_incomplete(input.chunks[simd8x64::NUM_CHUNKS-1]); - this->prev_input_block = input.chunks[simd8x64::NUM_CHUNKS-1]; - - } - } - - // do not forget to call check_eof! - simdutf_really_inline bool errors() const { - return this->error.any_bits_set_anywhere(); - } + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - }; // struct utf8_checker -} // namespace utf8_validation + // ________ 1000____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, + // ________ 1001____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, + // ________ 101_____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, -using utf8_validation::utf8_checker; + // ________ 11______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT + ); + return (byte_1_high & byte_1_low & byte_2_high); + } + simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, + const simd8 prev_input, const simd8 sc) { + simd8 prev2 = input.prev<2>(prev_input); + simd8 prev3 = input.prev<3>(prev_input); + simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); + simd8 must23_80 = must23 & uint8_t(0x80); + return must23_80 ^ sc; + } -} // unnamed namespace -} // namespace haswell -} // namespace simdutf -/* end file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_validator.h -/* begin file src/generic/utf8_validation/utf8_validator.h */ -namespace simdutf { -namespace haswell { -namespace { -namespace utf8_validation { -/** - * Validates that the string is actual UTF-8. - */ -template -bool generic_validate_utf8(const uint8_t * input, size_t length) { - checker c{}; - buf_block_reader<64> reader(input, length); - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - c.check_next_input(in); - reader.advance(); + struct validating_transcoder { + // If this is nonzero, there has been a UTF-8 error. + simd8 error; + + validating_transcoder() : error(uint8_t(0)) {} + // + // Check whether the current bytes are valid UTF-8. + // + simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { + // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes + // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) + simd8 prev1 = input.prev<1>(prev_input); + simd8 sc = check_special_cases(input, prev1); + this->error |= check_multibyte_lengths(input, prev_input, sc); } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - c.check_next_input(in); - reader.advance(); - c.check_eof(); - return !c.errors(); -} -bool generic_validate_utf8(const char * input, size_t length) { - return generic_validate_utf8(reinterpret_cast(input),length); -} -/** - * Validates that the string is actual UTF-8 and stops on errors. - */ -template -result generic_validate_utf8_with_errors(const uint8_t * input, size_t length) { - checker c{}; - buf_block_reader<64> reader(input, length); - size_t count{0}; - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - c.check_next_input(in); - if(c.errors()) { - if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk - result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input + count), length - count); - res.count += count; - return res; + template + simdutf_really_inline size_t convert(const char* in, size_t size, char16_t* utf16_output) { + size_t pos = 0; + char16_t* start{utf16_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); } - reader.advance(); - count += 64; - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - c.check_next_input(in); - reader.advance(); - c.check_eof(); - if (c.errors()) { - if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk - result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input) + count, length - count); - res.count += count; - return res; - } else { - return result(error_code::SUCCESS, length); + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf16(in + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { return 0; } + if(pos < size) { + size_t howmany = scalar::utf8_to_utf16::convert(in + pos, size - pos, utf16_output); + if(howmany == 0) { return 0; } + utf16_output += howmany; + } + return utf16_output - start; } -} - -result generic_validate_utf8_with_errors(const char * input, size_t length) { - return generic_validate_utf8_with_errors(reinterpret_cast(input),length); -} -template -bool generic_validate_ascii(const uint8_t * input, size_t length) { - buf_block_reader<64> reader(input, length); - uint8_t blocks[64]{}; - simd::simd8x64 running_or(blocks); - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - running_or |= in; - reader.advance(); + template + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char16_t* utf16_output) { + size_t pos = 0; + char16_t* start{utf16_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + if (errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + res.count += pos; + return res; + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf16(in + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + res.count += pos; + return res; + } + if(pos < size) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + if (res.error) { // In case of error, we want the error position + res.count += pos; + return res; + } else { // In case of success, we want the number of word written + utf16_output += res.count; + } + } + return result(error_code::SUCCESS, utf16_output - start); } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - running_or |= in; - return running_or.is_ascii(); -} - -bool generic_validate_ascii(const char * input, size_t length) { - return generic_validate_ascii(reinterpret_cast(input),length); -} -template -result generic_validate_ascii_with_errors(const uint8_t * input, size_t length) { - buf_block_reader<64> reader(input, length); - size_t count{0}; - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - if (!in.is_ascii()) { - result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); - return result(res.error, count + res.count); + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); } - reader.advance(); - - count += 64; - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - if (!in.is_ascii()) { - result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); - return result(res.error, count + res.count); - } else { - return result(error_code::SUCCESS, length); - } -} - -result generic_validate_ascii_with_errors(const char * input, size_t length) { - return generic_validate_ascii_with_errors(reinterpret_cast(input),length); -} -} // namespace utf8_validation + }; // struct utf8_checker +} // utf8_to_utf16 namespace } // unnamed namespace } // namespace haswell } // namespace simdutf -/* end file src/generic/utf8_validation/utf8_validator.h */ -// transcoding from UTF-8 to UTF-16 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/valid_utf8_to_utf16.h -/* begin file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ - +/* end file src/generic/utf8_to_utf16/utf8_to_utf16.h */ +// transcoding from UTF-8 to UTF-32 +/* begin file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ namespace simdutf { namespace haswell { namespace { -namespace utf8_to_utf16 { +namespace utf8_to_utf32 { using namespace simd; -template + simdutf_warn_unused size_t convert_valid(const char* input, size_t size, - char16_t* utf16_output) noexcept { - // The implementation is not specific to haswell and should be moved to the generic directory. + char32_t* utf32_output) noexcept { size_t pos = 0; - char16_t* start{utf16_output}; + char32_t* start{utf32_output}; const size_t safety_margin = 16; // to avoid overruns! while(pos + 64 + safety_margin <= size) { - // this loop could be unrolled further. For example, we could process the mask - // far more than 64 bytes. simd8x64 in(reinterpret_cast(input + pos)); if(in.is_ascii()) { - in.store_ascii_as_utf16(utf16_output); - utf16_output += 64; + in.store_ascii_as_utf32(utf32_output); + utf32_output += 64; pos += 64; } else { - // Slow path. We hope that the compiler will recognize that this is a slow path. - // Anything that is not a continuation mask is a 'leading byte', that is, the - // start of a new code point. - uint64_t utf8_continuation_mask = in.lt(-65 + 1); - // -65 is 0b10111111 in two-complement's, so largest possible continuation byte - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - // The *start* of code points is not so useful, rather, we want the *end* of code points. - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - // We process in blocks of up to 12 bytes except possibly - // for fast paths which may process up to 16 bytes. For the - // slow path to work, we should have at least 12 input bytes left. - size_t max_starting_point = (pos + 64) - 12; - // Next loop is going to run at least five times when using solely - // the slow/regular path, and at least four times if there are fast paths. - while(pos < max_starting_point) { - // Performance note: our ability to compute 'consumed' and - // then shift and recompute is critical. If there is a - // latency of, say, 4 cycles on getting 'consumed', then - // the inner loop might have a total latency of about 6 cycles. - // Yet we process between 6 to 12 inputs bytes, thus we get - // a speed limit between 1 cycle/byte and 0.5 cycle/byte - // for this section of the code. Hence, there is a limit - // to how much we can further increase this latency before - // it seriously harms performance. - // - // Thus we may allow convert_masked_utf8_to_utf16 to process - // more bytes at a time under a fast-path mode where 16 bytes - // are consumed at once (e.g., when encountering ASCII). - size_t consumed = convert_masked_utf8_to_utf16(input + pos, - utf8_end_of_code_point_mask, utf16_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; + // -65 is 0b10111111 in two-complement's, so largest possible continuation byte + uint64_t utf8_continuation_mask = in.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + size_t max_starting_point = (pos + 64) - 12; + while(pos < max_starting_point) { + size_t consumed = convert_masked_utf8_to_utf32(input + pos, + utf8_end_of_code_point_mask, utf32_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; } - // At this point there may remain between 0 and 12 bytes in the - // 64-byte block. These bytes will be processed again. So we have an - // 80% efficiency (in the worst case). In practice we expect an - // 85% to 90% efficiency. } } - utf16_output += scalar::utf8_to_utf16::convert_valid(input + pos, size - pos, utf16_output); - return utf16_output - start; + utf32_output += scalar::utf8_to_utf32::convert_valid(input + pos, size - pos, utf32_output); + return utf32_output - start; } -} // namespace utf8_to_utf16 + +} // namespace utf8_to_utf32 } // unnamed namespace } // namespace haswell } // namespace simdutf -/* end file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/utf8_to_utf16.h -/* begin file src/generic/utf8_to_utf16/utf8_to_utf16.h */ +/* end file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ +/* begin file src/generic/utf8_to_utf32/utf8_to_utf32.h */ namespace simdutf { namespace haswell { namespace { -namespace utf8_to_utf16 { +namespace utf8_to_utf32 { using namespace simd; @@ -22035,28 +25572,28 @@ using namespace simd; } - template - simdutf_really_inline size_t convert(const char* in, size_t size, char16_t* utf16_output) { + + simdutf_really_inline size_t convert(const char* in, size_t size, char32_t* utf32_output) { size_t pos = 0; - char16_t* start{utf16_output}; + char32_t* start{utf32_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 8; margin--) { + for(; margin > 0 && leading_byte < 4; margin--) { leading_byte += (int8_t(in[margin-1]) > -65); } - // If the input is long enough, then we have that margin-1 is the eight last leading byte. + // If the input is long enough, then we have that margin-1 is the fourth last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf16(utf16_output); - utf16_output += 64; + input.store_ascii_as_utf32(utf32_output); + utf32_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. @@ -22090,8 +25627,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf16(in + pos, - utf8_end_of_code_point_mask, utf16_output); + size_t consumed = convert_masked_utf8_to_utf32(in + pos, + utf8_end_of_code_point_mask, utf32_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -22103,35 +25640,34 @@ using namespace simd; } if(errors()) { return 0; } if(pos < size) { - size_t howmany = scalar::utf8_to_utf16::convert(in + pos, size - pos, utf16_output); + size_t howmany = scalar::utf8_to_utf32::convert(in + pos, size - pos, utf32_output); if(howmany == 0) { return 0; } - utf16_output += howmany; + utf32_output += howmany; } - return utf16_output - start; + return utf32_output - start; } - template - simdutf_really_inline result convert_with_errors(const char* in, size_t size, char16_t* utf16_output) { + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char32_t* utf32_output) { size_t pos = 0; - char16_t* start{utf16_output}; + char32_t* start{utf32_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 8; margin--) { + for(; margin > 0 && leading_byte < 4; margin--) { leading_byte += (int8_t(in[margin-1]) > -65); } - // If the input is long enough, then we have that margin-1 is the eight last leading byte. + // If the input is long enough, then we have that margin-1 is the fourth last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf16(utf16_output); - utf16_output += 64; + input.store_ascii_as_utf32(utf32_output); + utf32_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. @@ -22148,9 +25684,7 @@ using namespace simd; this->check_utf8_bytes(input.chunks[3], input.chunks[2]); } if (errors()) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); res.count += pos; return res; } @@ -22172,8 +25706,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf16(in + pos, - utf8_end_of_code_point_mask, utf16_output); + size_t consumed = convert_masked_utf8_to_utf32(in + pos, + utf8_end_of_code_point_mask, utf32_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -22184,24 +25718,20 @@ using namespace simd; } } if(errors()) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); res.count += pos; return res; } if(pos < size) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); if (res.error) { // In case of error, we want the error position res.count += pos; return res; } else { // In case of success, we want the number of word written - utf16_output += res.count; + utf32_output += res.count; } } - return result(error_code::SUCCESS, utf16_output - start); + return result(error_code::SUCCESS, utf32_output - start); } simdutf_really_inline bool errors() const { @@ -22209,70 +25739,138 @@ using namespace simd; } }; // struct utf8_checker -} // utf8_to_utf16 namespace +} // utf8_to_utf32 namespace +} // unnamed namespace +} // namespace haswell +} // namespace simdutf +/* end file src/generic/utf8_to_utf32/utf8_to_utf32.h */ +// other functions +/* begin file src/generic/utf8.h */ + +namespace simdutf { +namespace haswell { +namespace { +namespace utf8 { + +using namespace simd; + +simdutf_really_inline size_t count_code_points(const char* in, size_t size) { + size_t pos = 0; + size_t count = 0; + for(;pos + 64 <= size; pos += 64) { + simd8x64 input(reinterpret_cast(in + pos)); + uint64_t utf8_continuation_mask = input.gt(-65); + count += count_ones(utf8_continuation_mask); + } + return count + scalar::utf8::count_code_points(in + pos, size - pos); +} + +simdutf_really_inline size_t utf16_length_from_utf8(const char* in, size_t size) { + size_t pos = 0; + size_t count = 0; + // This algorithm could no doubt be improved! + for(;pos + 64 <= size; pos += 64) { + simd8x64 input(reinterpret_cast(in + pos)); + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + // We count one word for anything that is not a continuation (so + // leading bytes). + count += 64 - count_ones(utf8_continuation_mask); + int64_t utf8_4byte = input.gteq_unsigned(240); + count += count_ones(utf8_4byte); + } + return count + scalar::utf8::utf16_length_from_utf8(in + pos, size - pos); +} + + +simdutf_really_inline size_t utf32_length_from_utf8(const char* in, size_t size) { + return count_code_points(in, size); +} +} // utf8 namespace } // unnamed namespace } // namespace haswell } // namespace simdutf -/* end file src/generic/utf8_to_utf16/utf8_to_utf16.h */ -// transcoding from UTF-8 to UTF-32 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/valid_utf8_to_utf32.h -/* begin file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ - +/* end file src/generic/utf8.h */ +/* begin file src/generic/utf16.h */ namespace simdutf { namespace haswell { namespace { -namespace utf8_to_utf32 { +namespace utf16 { -using namespace simd; +template +simdutf_really_inline size_t count_code_points(const char16_t* in, size_t size) { + size_t pos = 0; + size_t count = 0; + for(;pos < size/32*32; pos += 32) { + simd16x32 input(reinterpret_cast(in + pos)); + if (!match_system(big_endian)) { input.swap_bytes(); } + uint64_t not_pair = input.not_in_range(0xDC00, 0xDFFF); + count += count_ones(not_pair) / 2; + } + return count + scalar::utf16::count_code_points(in + pos, size - pos); +} +template +simdutf_really_inline size_t utf8_length_from_utf16(const char16_t* in, size_t size) { + size_t pos = 0; + size_t count = 0; + // This algorithm could no doubt be improved! + for(;pos < size/32*32; pos += 32) { + simd16x32 input(reinterpret_cast(in + pos)); + if (!match_system(big_endian)) { input.swap_bytes(); } + uint64_t ascii_mask = input.lteq(0x7F); + uint64_t twobyte_mask = input.lteq(0x7FF); + uint64_t not_pair_mask = input.not_in_range(0xD800, 0xDFFF); -simdutf_warn_unused size_t convert_valid(const char* input, size_t size, - char32_t* utf32_output) noexcept { - size_t pos = 0; - char32_t* start{utf32_output}; - const size_t safety_margin = 16; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - simd8x64 in(reinterpret_cast(input + pos)); - if(in.is_ascii()) { - in.store_ascii_as_utf32(utf32_output); - utf32_output += 64; - pos += 64; - } else { - // -65 is 0b10111111 in two-complement's, so largest possible continuation byte - uint64_t utf8_continuation_mask = in.lt(-65 + 1); - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - size_t max_starting_point = (pos + 64) - 12; - while(pos < max_starting_point) { - size_t consumed = convert_masked_utf8_to_utf32(input + pos, - utf8_end_of_code_point_mask, utf32_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; - } + size_t ascii_count = count_ones(ascii_mask) / 2; + size_t twobyte_count = count_ones(twobyte_mask & ~ ascii_mask) / 2; + size_t threebyte_count = count_ones(not_pair_mask & ~ twobyte_mask) / 2; + size_t fourbyte_count = 32 - count_ones(not_pair_mask) / 2; + count += 2 * fourbyte_count + 3 * threebyte_count + 2 * twobyte_count + ascii_count; } - } - utf32_output += scalar::utf8_to_utf32::convert_valid(input + pos, size - pos, utf32_output); - return utf32_output - start; + return count + scalar::utf16::utf8_length_from_utf16(in + pos, size - pos); +} + +template +simdutf_really_inline size_t utf32_length_from_utf16(const char16_t* in, size_t size) { + return count_code_points(in, size); } +simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* output) { + size_t pos = 0; -} // namespace utf8_to_utf32 + while (pos < size/32*32) { + simd16x32 input(reinterpret_cast(in + pos)); + input.swap_bytes(); + input.store(reinterpret_cast(output)); + pos += 32; + output += 32; + } + + scalar::utf16::change_endianness_utf16(in + pos, size - pos, output); +} + +} // utf16 } // unnamed namespace } // namespace haswell } // namespace simdutf -/* end file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/utf8_to_utf32.h -/* begin file src/generic/utf8_to_utf32/utf8_to_utf32.h */ +/* end file src/generic/utf16.h */ + + +// transcoding from UTF-8 to Latin 1 +/* begin file src/generic/utf8_to_latin1/utf8_to_latin1.h */ namespace simdutf { namespace haswell { namespace { -namespace utf8_to_utf32 { +namespace utf8_to_latin1 { using namespace simd; simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// For UTF-8 to Latin 1, we can allow any ASCII character, and any continuation byte, +// but the non-ASCII leading bytes must be 0b11000011 or 0b11000010 and nothing else. +// // Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) // Bit 1 = Too Long (ASCII followed by continuation) // Bit 2 = Overlong 3-byte @@ -22299,6 +25897,7 @@ using namespace simd; // 1111011_ 1000____ // 11111___ 1000____ constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + constexpr const uint8_t FORBIDDEN = 0xff; const simd8 byte_1_high = prev1.shr<4>().lookup_16( // 0_______ ________ @@ -22309,11 +25908,11 @@ using namespace simd; // 1100____ ________ TOO_SHORT | OVERLONG_2, // 1101____ ________ - TOO_SHORT, + FORBIDDEN, // 1110____ ________ - TOO_SHORT | OVERLONG_3 | SURROGATE, + FORBIDDEN, // 1111____ ________ - TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 + FORBIDDEN ); constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( @@ -22326,23 +25925,23 @@ using namespace simd; CARRY, // ____0100 ________ - CARRY | TOO_LARGE, + FORBIDDEN, // ____0101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, + FORBIDDEN, // ____011_ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, + FORBIDDEN, + FORBIDDEN, // ____1___ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, // ____1101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000 + FORBIDDEN, + FORBIDDEN, + FORBIDDEN ); const simd8 byte_2_high = input.shr<4>().lookup_16( // ________ 0_______ @@ -22362,15 +25961,6 @@ using namespace simd; ); return (byte_1_high & byte_1_low & byte_2_high); } - simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, - const simd8 prev_input, const simd8 sc) { - simd8 prev2 = input.prev<2>(prev_input); - simd8 prev3 = input.prev<3>(prev_input); - simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); - simd8 must23_80 = must23 & uint8_t(0x80); - return must23_80 ^ sc; - } - struct validating_transcoder { // If this is nonzero, there has been a UTF-8 error. @@ -22384,33 +25974,31 @@ using namespace simd; // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) simd8 prev1 = input.prev<1>(prev_input); - simd8 sc = check_special_cases(input, prev1); - this->error |= check_multibyte_lengths(input, prev_input, sc); + this->error |= check_special_cases(input, prev1); } - - simdutf_really_inline size_t convert(const char* in, size_t size, char32_t* utf32_output) { + simdutf_really_inline size_t convert(const char* in, size_t size, char* latin1_output) { size_t pos = 0; - char32_t* start{utf32_output}; + char* start{latin1_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 4; margin--) { - leading_byte += (int8_t(in[margin-1]) > -65); + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); //twos complement of -65 is 1011 1111 ... } - // If the input is long enough, then we have that margin-1 is the fourth last leading byte. + // If the input is long enough, then we have that margin-1 is the eight last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf32(utf32_output); - utf32_output += 64; + input.store((int8_t*)latin1_output); + latin1_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. @@ -22426,7 +26014,7 @@ using namespace simd; this->check_utf8_bytes(input.chunks[2], input.chunks[1]); this->check_utf8_bytes(input.chunks[3], input.chunks[2]); } - uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in this case, we also have ASCII to account for. uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; // We process in blocks of up to 12 bytes except possibly @@ -22444,8 +26032,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf32(in + pos, - utf8_end_of_code_point_mask, utf32_output); + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -22457,34 +26045,34 @@ using namespace simd; } if(errors()) { return 0; } if(pos < size) { - size_t howmany = scalar::utf8_to_utf32::convert(in + pos, size - pos, utf32_output); + size_t howmany = scalar::utf8_to_latin1::convert(in + pos, size - pos, latin1_output); if(howmany == 0) { return 0; } - utf32_output += howmany; + latin1_output += howmany; } - return utf32_output - start; + return latin1_output - start; } - simdutf_really_inline result convert_with_errors(const char* in, size_t size, char32_t* utf32_output) { + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char* latin1_output) { size_t pos = 0; - char32_t* start{utf32_output}; + char* start{latin1_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 4; margin--) { + for(; margin > 0 && leading_byte < 8; margin--) { leading_byte += (int8_t(in[margin-1]) > -65); } - // If the input is long enough, then we have that margin-1 is the fourth last leading byte. + // If the input is long enough, then we have that margin-1 is the eight last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf32(utf32_output); - utf32_output += 64; + input.store((int8_t*)latin1_output); + latin1_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. @@ -22501,7 +26089,9 @@ using namespace simd; this->check_utf8_bytes(input.chunks[3], input.chunks[2]); } if (errors()) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); res.count += pos; return res; } @@ -22523,8 +26113,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf32(in + pos, - utf8_end_of_code_point_mask, utf32_output); + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -22535,20 +26125,24 @@ using namespace simd; } } if(errors()) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); res.count += pos; return res; } if(pos < size) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); if (res.error) { // In case of error, we want the error position res.count += pos; return res; } else { // In case of success, we want the number of word written - utf32_output += res.count; + latin1_output += res.count; } } - return result(error_code::SUCCESS, utf32_output - start); + return result(error_code::SUCCESS, latin1_output - start); } simdutf_really_inline bool errors() const { @@ -22556,124 +26150,88 @@ using namespace simd; } }; // struct utf8_checker -} // utf8_to_utf32 namespace +} // utf8_to_latin1 namespace } // unnamed namespace } // namespace haswell } // namespace simdutf -/* end file src/generic/utf8_to_utf32/utf8_to_utf32.h */ -// other functions -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8.h -/* begin file src/generic/utf8.h */ - -namespace simdutf { -namespace haswell { -namespace { -namespace utf8 { - -using namespace simd; - -simdutf_really_inline size_t count_code_points(const char* in, size_t size) { - size_t pos = 0; - size_t count = 0; - for(;pos + 64 <= size; pos += 64) { - simd8x64 input(reinterpret_cast(in + pos)); - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - count += 64 - count_ones(utf8_continuation_mask); - } - return count + scalar::utf8::count_code_points(in + pos, size - pos); -} - - -simdutf_really_inline size_t utf16_length_from_utf8(const char* in, size_t size) { - size_t pos = 0; - size_t count = 0; - // This algorithm could no doubt be improved! - for(;pos + 64 <= size; pos += 64) { - simd8x64 input(reinterpret_cast(in + pos)); - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - // We count one word for anything that is not a continuation (so - // leading bytes). - count += 64 - count_ones(utf8_continuation_mask); - int64_t utf8_4byte = input.gteq_unsigned(240); - count += count_ones(utf8_4byte); - } - return count + scalar::utf8::utf16_length_from_utf8(in + pos, size - pos); -} +/* end file src/generic/utf8_to_latin1/utf8_to_latin1.h */ +/* begin file src/generic/utf8_to_latin1/valid_utf8_to_latin1.h */ -simdutf_really_inline size_t utf32_length_from_utf8(const char* in, size_t size) { - return count_code_points(in, size); -} -} // utf8 namespace -} // unnamed namespace -} // namespace haswell -} // namespace simdutf -/* end file src/generic/utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf16.h -/* begin file src/generic/utf16.h */ namespace simdutf { namespace haswell { namespace { -namespace utf16 { - -template -simdutf_really_inline size_t count_code_points(const char16_t* in, size_t size) { - size_t pos = 0; - size_t count = 0; - for(;pos + 32 <= size; pos += 32) { - simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); - uint64_t not_pair = input.not_in_range(0xDC00, 0xDFFF); - count += count_ones(not_pair) / 2; - } - return count + scalar::utf16::count_code_points(in + pos, size - pos); -} +namespace utf8_to_latin1 { +using namespace simd; -template -simdutf_really_inline size_t utf8_length_from_utf16(const char16_t* in, size_t size) { - size_t pos = 0; - size_t count = 0; - // This algorithm could no doubt be improved! - for(;pos + 32 <= size; pos += 32) { - simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); - uint64_t ascii_mask = input.lteq(0x7F); - uint64_t twobyte_mask = input.lteq(0x7FF); - uint64_t not_pair_mask = input.not_in_range(0xD800, 0xDFFF); - size_t ascii_count = count_ones(ascii_mask) / 2; - size_t twobyte_count = count_ones(twobyte_mask & ~ ascii_mask) / 2; - size_t threebyte_count = count_ones(not_pair_mask & ~ twobyte_mask) / 2; - size_t fourbyte_count = 32 - count_ones(not_pair_mask) / 2; - count += 2 * fourbyte_count + 3 * threebyte_count + 2 * twobyte_count + ascii_count; + simdutf_really_inline size_t convert_valid(const char* in, size_t size, char* latin1_output) { + size_t pos = 0; + char* start{latin1_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); //twos complement of -65 is 1011 1111 ... + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store((int8_t*)latin1_output); + latin1_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in this case, we also have ASCII to account for. + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(pos < size) { + size_t howmany = scalar::utf8_to_latin1::convert(in + pos, size - pos, latin1_output); + if(howmany == 0) { return 0; } + latin1_output += howmany; + } + return latin1_output - start; } - return count + scalar::utf16::utf8_length_from_utf16(in + pos, size - pos); -} - -template -simdutf_really_inline size_t utf32_length_from_utf16(const char16_t* in, size_t size) { - return count_code_points(in, size); -} - -simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* output) { - size_t pos = 0; - - while (pos + 32 <= size) { - simd16x32 input(reinterpret_cast(in + pos)); - input.swap_bytes(); - input.store(reinterpret_cast(output)); - pos += 32; - output += 32; - } - scalar::utf16::change_endianness_utf16(in + pos, size - pos, output); -} - -} // utf16 -} // unnamed namespace -} // namespace haswell -} // namespace simdutf -/* end file src/generic/utf16.h */ + }; +} // utf8_to_latin1 namespace +} // unnamed namespace +} // namespace haswell + // namespace simdutf +/* end file src/generic/utf8_to_latin1/valid_utf8_to_latin1.h */ namespace simdutf { namespace haswell { @@ -22766,6 +26324,73 @@ simdutf_warn_unused result implementation::validate_utf32_with_errors(const char } } +simdutf_warn_unused size_t implementation::convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept { + std::pair ret = avx2_convert_latin1_to_utf8(buf, len, utf8_output); + size_t converted_chars = ret.second - utf8_output; + + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf8::convert( + ret.first, len - (ret.first - buf), ret.second); + converted_chars += scalar_converted_chars; + } + + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = avx2_convert_latin1_to_utf16(buf, len, utf16_output); + if (ret.first == nullptr) { return 0; } + size_t converted_chars = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_converted_chars == 0) { return 0; } + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = avx2_convert_latin1_to_utf16(buf, len, utf16_output); + if (ret.first == nullptr) { return 0; } + size_t converted_chars = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_converted_chars == 0) { return 0; } + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + std::pair ret = avx2_convert_latin1_to_utf32(buf, len, utf32_output); + if (ret.first == nullptr) { return 0; } + size_t converted_chars = ret.second - utf32_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf32::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_converted_chars == 0) { return 0; } + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + utf8_to_latin1::validating_transcoder converter; + return converter.convert(buf, len, latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_latin1_with_errors(const char* buf, size_t len, char* latin1_output) const noexcept { + utf8_to_latin1::validating_transcoder converter; + return converter.convert_with_errors(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_latin1(const char* input, size_t size, + char* latin1_output) const noexcept { + return utf8_to_latin1::convert_valid(input, size, latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { utf8_to_utf16::validating_transcoder converter; return converter.convert(buf, len, utf16_output); @@ -22811,6 +26436,77 @@ simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf32(const cha return utf8_to_utf32::convert_valid(input, size, utf32_output); } + +simdutf_warn_unused size_t implementation::convert_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = haswell::avx2_convert_utf16_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = haswell::avx2_convert_utf16_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf16le_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = avx2_convert_utf16_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused result implementation::convert_utf16be_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = avx2_convert_utf16_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: implement a custom function + return convert_utf16be_to_latin1(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: implement a custom function + return convert_utf16le_to_latin1(buf, len, latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { std::pair ret = haswell::avx2_convert_utf16_to_utf8(buf, len, utf8_output); if (ret.first == nullptr) { return 0; } @@ -22838,7 +26534,7 @@ simdutf_warn_unused size_t implementation::convert_utf16be_to_utf8(const char16_ } simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = haswell::avx2_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -22851,12 +26547,12 @@ simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(c ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written return ret.first; } simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = haswell::avx2_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -22869,7 +26565,7 @@ simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(c ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -22894,8 +26590,43 @@ simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* return saved_bytes; } +simdutf_warn_unused size_t implementation::convert_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = avx2_convert_utf32_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf32_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf32_to_latin1_with_errors(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return scalar::utf32_to_latin1::convert_with_errors(buf,len,latin1_output); + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = avx2_convert_utf32_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.count != len) { + result scalar_res = scalar::utf32_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + return convert_utf32_to_latin1(buf,len,latin1_output); +} + simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = haswell::avx2_convert_utf32_to_utf8_with_errors(buf, len, utf8_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf8::convert_with_errors( @@ -22907,7 +26638,7 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(con ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -22938,7 +26669,7 @@ simdutf_warn_unused size_t implementation::convert_utf16be_to_utf32(const char16 } simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = haswell::avx2_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -22951,12 +26682,12 @@ simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit code units written return ret.first; } simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = haswell::avx2_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -22969,7 +26700,7 @@ simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -23004,7 +26735,7 @@ simdutf_warn_unused size_t implementation::convert_utf32_to_utf16be(const char32 } simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = haswell::avx2_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf16::convert_with_errors( @@ -23016,12 +26747,12 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written return ret.first; } simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = haswell::avx2_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf16::convert_with_errors( @@ -23033,7 +26764,7 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -23069,6 +26800,18 @@ simdutf_warn_unused size_t implementation::count_utf8(const char * input, size_t return utf8::count_code_points(input, length); } +simdutf_warn_unused size_t implementation::latin1_length_from_utf8(const char* buf, size_t len) const noexcept { + return count_utf8(buf,len); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf16(size_t length) const noexcept { + return scalar::utf16::latin1_length_from_utf16(length); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf32(size_t length) const noexcept { + return scalar::utf32::latin1_length_from_utf32(length); +} + simdutf_warn_unused size_t implementation::utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept { return utf16::utf8_length_from_utf16(input, length); } @@ -23085,10 +26828,61 @@ simdutf_warn_unused size_t implementation::utf32_length_from_utf16be(const char1 return utf16::utf32_length_from_utf16(input, length); } + +simdutf_warn_unused size_t implementation::utf16_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf16_length_from_latin1(length); +} + simdutf_warn_unused size_t implementation::utf16_length_from_utf8(const char * input, size_t length) const noexcept { return utf8::utf16_length_from_utf8(input, length); } + +simdutf_warn_unused size_t implementation::utf32_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf32_length_from_latin1(length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_latin1(const char *input, size_t len) const noexcept { + const uint8_t *data = reinterpret_cast(input); + size_t answer = len / sizeof(__m256i) * sizeof(__m256i); + size_t i = 0; + __m256i four_64bits = _mm256_setzero_si256(); + while (i + sizeof(__m256i) <= len) { + __m256i runner = _mm256_setzero_si256(); + // We can do up to 255 loops without overflow. + size_t iterations = (len - i) / sizeof(__m256i); + if (iterations > 255) { + iterations = 255; + } + size_t max_i = i + iterations * sizeof(__m256i) - sizeof(__m256i); + for (; i + 4*sizeof(__m256i) <= max_i; i += 4*sizeof(__m256i)) { + __m256i input1 = _mm256_loadu_si256((const __m256i *)(data + i)); + __m256i input2 = _mm256_loadu_si256((const __m256i *)(data + i + sizeof(__m256i))); + __m256i input3 = _mm256_loadu_si256((const __m256i *)(data + i + 2*sizeof(__m256i))); + __m256i input4 = _mm256_loadu_si256((const __m256i *)(data + i + 3*sizeof(__m256i))); + __m256i input12 = _mm256_add_epi8(_mm256_cmpgt_epi8(_mm256_setzero_si256(), input1), + _mm256_cmpgt_epi8(_mm256_setzero_si256(), input2)); + __m256i input23 = _mm256_add_epi8(_mm256_cmpgt_epi8(_mm256_setzero_si256(), input3), + _mm256_cmpgt_epi8(_mm256_setzero_si256(), input4)); + __m256i input1234 = _mm256_add_epi8(input12, input23); + runner = _mm256_sub_epi8( + runner, input1234); + } + for (; i <= max_i; i += sizeof(__m256i)) { + __m256i input_256_chunk = _mm256_loadu_si256((const __m256i *)(data + i)); + runner = _mm256_sub_epi8( + runner, _mm256_cmpgt_epi8(_mm256_setzero_si256(), input_256_chunk)); + } + four_64bits = _mm256_add_epi64( + four_64bits, _mm256_sad_epu8(runner, _mm256_setzero_si256())); + } + answer += _mm256_extract_epi64(four_64bits, 0) + + _mm256_extract_epi64(four_64bits, 1) + + _mm256_extract_epi64(four_64bits, 2) + + _mm256_extract_epi64(four_64bits, 3); + return answer + scalar::latin1::utf8_length_from_latin1(reinterpret_cast(data + i), len - i); +} + simdutf_warn_unused size_t implementation::utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept { const __m256i v_00000000 = _mm256_setzero_si256(); const __m256i v_ffffff80 = _mm256_set1_epi32((uint32_t)0xffffff80); @@ -23131,13 +26925,12 @@ simdutf_warn_unused size_t implementation::utf16_length_from_utf32(const char32_ } simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * input, size_t length) const noexcept { - return scalar::utf8::count_code_points(input, length); + return utf8::count_code_points(input, length); } } // namespace haswell } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/haswell/end.h /* begin file src/simdutf/haswell/end.h */ #if SIMDUTF_CAN_ALWAYS_RUN_HASWELL // nothing needed. @@ -23153,14 +26946,12 @@ SIMDUTF_POP_DISABLE_WARNINGS /* end file src/haswell/implementation.cpp */ #endif #if SIMDUTF_IMPLEMENTATION_PPC64 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=ppc64/implementation.cpp /* begin file src/ppc64/implementation.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/begin.h /* begin file src/simdutf/ppc64/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "ppc64" // #define SIMDUTF_IMPLEMENTATION ppc64 @@ -23198,7 +26989,6 @@ simdutf_really_inline simd8 must_be_2_3_continuation(const simd8 } // namespace ppc64 } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/buf_block_reader.h /* begin file src/generic/buf_block_reader.h */ namespace simdutf { namespace ppc64 { @@ -23293,7 +27083,6 @@ simdutf_really_inline void buf_block_reader::advance() { } // namespace ppc64 } // namespace simdutf /* end file src/generic/buf_block_reader.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_lookup4_algorithm.h /* begin file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ namespace simdutf { namespace ppc64 { @@ -23482,7 +27271,6 @@ using utf8_validation::utf8_checker; } // namespace ppc64 } // namespace simdutf /* end file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_validator.h /* begin file src/generic/utf8_validation/utf8_validator.h */ namespace simdutf { namespace ppc64 { @@ -23610,7 +27398,6 @@ result generic_validate_ascii_with_errors(const char * input, size_t length) { } // namespace simdutf /* end file src/generic/utf8_validation/utf8_validator.h */ // transcoding from UTF-8 to UTF-16 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/valid_utf8_to_utf16.h /* begin file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ @@ -23685,7 +27472,6 @@ simdutf_warn_unused size_t convert_valid(const char* input, size_t size, } // namespace ppc64 } // namespace simdutf /* end file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/utf8_to_utf16.h /* begin file src/generic/utf8_to_utf16/utf8_to_utf16.h */ @@ -23993,7 +27779,6 @@ using namespace simd; } // namespace simdutf /* end file src/generic/utf8_to_utf16/utf8_to_utf16.h */ // transcoding from UTF-8 to UTF-32 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/valid_utf8_to_utf32.h /* begin file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ namespace simdutf { @@ -24039,7 +27824,6 @@ simdutf_warn_unused size_t convert_valid(const char* input, size_t size, } // namespace ppc64 } // namespace simdutf /* end file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/utf8_to_utf32.h /* begin file src/generic/utf8_to_utf32/utf8_to_utf32.h */ @@ -24340,7 +28124,6 @@ using namespace simd; } // namespace simdutf /* end file src/generic/utf8_to_utf32/utf8_to_utf32.h */ // other functions -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8.h /* begin file src/generic/utf8.h */ namespace simdutf { @@ -24355,13 +28138,12 @@ simdutf_really_inline size_t count_code_points(const char* in, size_t size) { size_t count = 0; for(;pos + 64 <= size; pos += 64) { simd8x64 input(reinterpret_cast(in + pos)); - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - count += 64 - count_ones(utf8_continuation_mask); + uint64_t utf8_continuation_mask = input.gt(-65); + count += count_ones(utf8_continuation_mask); } return count + scalar::utf8::count_code_points(in + pos, size - pos); } - simdutf_really_inline size_t utf16_length_from_utf8(const char* in, size_t size) { size_t pos = 0; size_t count = 0; @@ -24387,7 +28169,6 @@ simdutf_really_inline size_t utf32_length_from_utf8(const char* in, size_t size) } // namespace ppc64 } // namespace simdutf /* end file src/generic/utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf16.h /* begin file src/generic/utf16.h */ namespace simdutf { namespace ppc64 { @@ -24398,9 +28179,9 @@ template simdutf_really_inline size_t count_code_points(const char16_t* in, size_t size) { size_t pos = 0; size_t count = 0; - for(;pos + 32 <= size; pos += 32) { + for(;pos < size/32*32; pos += 32) { simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); + if (!match_system(big_endian)) { input.swap_bytes(); } uint64_t not_pair = input.not_in_range(0xDC00, 0xDFFF); count += count_ones(not_pair) / 2; } @@ -24412,9 +28193,9 @@ simdutf_really_inline size_t utf8_length_from_utf16(const char16_t* in, size_t s size_t pos = 0; size_t count = 0; // This algorithm could no doubt be improved! - for(;pos + 32 <= size; pos += 32) { + for(;pos < size/32*32; pos += 32) { simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); + if (!match_system(big_endian)) { input.swap_bytes(); } uint64_t ascii_mask = input.lteq(0x7F); uint64_t twobyte_mask = input.lteq(0x7FF); uint64_t not_pair_mask = input.not_in_range(0xD800, 0xDFFF); @@ -24436,7 +28217,7 @@ simdutf_really_inline size_t utf32_length_from_utf16(const char16_t* in, size_t simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* output) { size_t pos = 0; - while (pos + 32 <= size) { + while (pos < size/32*32) { simd16x32 input(reinterpret_cast(in + pos)); input.swap_bytes(); input.store(reinterpret_cast(output)); @@ -24686,15 +28467,12 @@ simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * i } // namespace ppc64 } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/ppc64/end.h /* begin file src/simdutf/ppc64/end.h */ /* end file src/simdutf/ppc64/end.h */ /* end file src/ppc64/implementation.cpp */ #endif #if SIMDUTF_IMPLEMENTATION_WESTMERE -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/implementation.cpp /* begin file src/westmere/implementation.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/begin.h /* begin file src/simdutf/westmere/begin.h */ // redefining SIMDUTF_IMPLEMENTATION to "westmere" // #define SIMDUTF_IMPLEMENTATION westmere @@ -24732,7 +28510,84 @@ simdutf_really_inline simd8 must_be_2_3_continuation(const simd8 return simd8(is_third_byte | is_fourth_byte) > int8_t(0); } -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_detect_encodings.cpp +/* begin file src/westmere/internal/loader.cpp */ +namespace internal { +namespace westmere { + +/* begin file src/westmere/internal/write_v_u16_11bits_to_utf8.cpp */ +/* +* reads a vector of uint16 values +* bits after 11th are ignored +* first 11 bits are encoded into utf8 +* !important! utf8_output must have at least 16 writable bytes +*/ + +inline void write_v_u16_11bits_to_utf8( + const __m128i v_u16, + char*& utf8_output, + const __m128i one_byte_bytemask, + const uint16_t one_byte_bitmask +) { + // 0b1100_0000_1000_0000 + const __m128i v_c080 = _mm_set1_epi16((int16_t)0xc080); + // 0b0001_1111_0000_0000 + const __m128i v_1f00 = _mm_set1_epi16((int16_t)0x1f00); + // 0b0000_0000_0011_1111 + const __m128i v_003f = _mm_set1_epi16((int16_t)0x003f); + + // 1. prepare 2-byte values + // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 + // expected output : [110a|aaaa|10bb|bbbb] x 8 + + // t0 = [000a|aaaa|bbbb|bb00] + const __m128i t0 = _mm_slli_epi16(v_u16, 2); + // t1 = [000a|aaaa|0000|0000] + const __m128i t1 = _mm_and_si128(t0, v_1f00); + // t2 = [0000|0000|00bb|bbbb] + const __m128i t2 = _mm_and_si128(v_u16, v_003f); + // t3 = [000a|aaaa|00bb|bbbb] + const __m128i t3 = _mm_or_si128(t1, t2); + // t4 = [110a|aaaa|10bb|bbbb] + const __m128i t4 = _mm_or_si128(t3, v_c080); + + // 2. merge ASCII and 2-byte codewords + const __m128i utf8_unpacked = _mm_blendv_epi8(t4, v_u16, one_byte_bytemask); + + // 3. prepare bitmask for 8-bit lookup + // one_byte_bitmask = hhggffeeddccbbaa -- the bits are doubled (h - MSB, a - LSB) + const uint16_t m0 = one_byte_bitmask & 0x5555; // m0 = 0h0g0f0e0d0c0b0a + const uint16_t m1 = static_cast(m0 >> 7); // m1 = 00000000h0g0f0e0 + const uint8_t m2 = static_cast((m0 | m1) & 0xff); // m2 = hdgcfbea + // 4. pack the bytes + const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; + const __m128i shuffle = _mm_loadu_si128((__m128i*)(row + 1)); + const __m128i utf8_packed = _mm_shuffle_epi8(utf8_unpacked, shuffle); + + // 5. store bytes + _mm_storeu_si128((__m128i*)utf8_output, utf8_packed); + + // 6. adjust pointers + utf8_output += row[0]; +}; + +inline void write_v_u16_11bits_to_utf8( + const __m128i v_u16, + char*& utf8_output, + const __m128i v_0000, + const __m128i v_ff80 +) { + // no bits set above 7th bit + const __m128i one_byte_bytemask = _mm_cmpeq_epi16(_mm_and_si128(v_u16, v_ff80), v_0000); + const uint16_t one_byte_bitmask = static_cast(_mm_movemask_epi8(one_byte_bytemask)); + + write_v_u16_11bits_to_utf8( + v_u16, utf8_output, one_byte_bytemask, one_byte_bitmask); +}; +/* end file src/westmere/internal/write_v_u16_11bits_to_utf8.cpp */ + +} // namespace westmere +} // namespace internal +/* end file src/westmere/internal/loader.cpp */ /* begin file src/westmere/sse_detect_encodings.cpp */ template // len is known to be a multiple of 2 when this is called @@ -24785,7 +28640,7 @@ int sse_detect_encodings(const char * buf, size_t len) { // To be valid UTF-32, a surrogate cannot be in the two most significant bytes of any 32-bit word. // On the other hand, to be valid UTF-16LE, at least one surrogate must be in the two most significant // bytes of a 32-bit word since they always come in pairs in UTF-16LE. - // Note that we always proceed in multiple of 4 before this point so there is no offset in 32-bit words. + // Note that we always proceed in multiple of 4 before this point so there is no offset in 32-bit code units. if (((surrogates_bitmask0 | surrogates_bitmask1) & 0xaaaa) != 0) { is_utf32 = false; @@ -24942,10 +28797,9 @@ int sse_detect_encodings(const char * buf, size_t len) { } /* end file src/westmere/sse_detect_encodings.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_validate_utf16.cpp /* begin file src/westmere/sse_validate_utf16.cpp */ /* - In UTF-16 words in range 0xD800 to 0xDFFF have special meaning. + In UTF-16 code units in range 0xD800 to 0xDFFF have special meaning. In a vectorized algorithm we want to examine the most significant nibble in order to select a fast path. If none of highest nibbles @@ -24981,7 +28835,7 @@ int sse_detect_encodings(const char * buf, size_t len) { 0 0 1 0 1 0 0 0 b = a << 1 1 1 1 1 1 1 1 0 c = V | a | b ^ - the last bit can be zero, we just consume 7 words + the last bit can be zero, we just consume 7 code units and recheck this word in the next iteration */ @@ -25026,7 +28880,7 @@ const char16_t* sse_validate_utf16(const char16_t* input, size_t size) { // // Fact: high surrogate has 11th bit set (3rd bit in the higher word) - // V - non-surrogate words + // V - non-surrogate code units // V = not surrogates_wordmask const uint16_t V = static_cast(~surrogates_bitmask); @@ -25047,10 +28901,10 @@ const char16_t* sse_validate_utf16(const char16_t* input, size_t size) { if (c == 0xffff) { // The whole input register contains valid UTF-16, i.e., - // either single words or proper surrogate pairs. + // either single code units or proper surrogate pairs. input += 16; } else if (c == 0x7fff) { - // The 15 lower words of the input register contains valid UTF-16. + // The 15 lower code units of the input register contains valid UTF-16. // The 15th word may be either a low or high surrogate. It the next // iteration we 1) check if the low surrogate is followed by a high // one, 2) reject sole high surrogate. @@ -25104,7 +28958,7 @@ const result sse_validate_utf16_with_errors(const char16_t* input, size_t size) // // Fact: high surrogate has 11th bit set (3rd bit in the higher word) - // V - non-surrogate words + // V - non-surrogate code units // V = not surrogates_wordmask const uint16_t V = static_cast(~surrogates_bitmask); @@ -25125,10 +28979,10 @@ const result sse_validate_utf16_with_errors(const char16_t* input, size_t size) if (c == 0xffff) { // The whole input register contains valid UTF-16, i.e., - // either single words or proper surrogate pairs. + // either single code units or proper surrogate pairs. input += 16; } else if (c == 0x7fff) { - // The 15 lower words of the input register contains valid UTF-16. + // The 15 lower code units of the input register contains valid UTF-16. // The 15th word may be either a low or high surrogate. It the next // iteration we 1) check if the low surrogate is followed by a high // one, 2) reject sole high surrogate. @@ -25142,7 +28996,6 @@ const result sse_validate_utf16_with_errors(const char16_t* input, size_t size) return result(error_code::SUCCESS, input - start); } /* end file src/westmere/sse_validate_utf16.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_validate_utf32le.cpp /* begin file src/westmere/sse_validate_utf32le.cpp */ /* Returns: - pointer to the last unprocessed character (a scalar fallback should check the rest); @@ -25208,7 +29061,144 @@ const result sse_validate_utf32le_with_errors(const char32_t* input, size_t size } /* end file src/westmere/sse_validate_utf32le.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_convert_utf8_to_utf16.cpp +/* begin file src/westmere/sse_convert_latin1_to_utf8.cpp */ +std::pair sse_convert_latin1_to_utf8( + const char* latin_input, + const size_t latin_input_length, + char* utf8_output) { + const char* end = latin_input + latin_input_length; + + const __m128i v_0000 = _mm_setzero_si128(); + // 0b1000_0000 + const __m128i v_80 = _mm_set1_epi8((uint8_t)0x80); + // 0b1111_1111_1000_0000 + const __m128i v_ff80 = _mm_set1_epi16((uint16_t)0xff80); + + const __m128i latin_1_half_into_u16_byte_mask = _mm_setr_epi8( + 0, '\x80', + 1, '\x80', + 2, '\x80', + 3, '\x80', + 4, '\x80', + 5, '\x80', + 6, '\x80', + 7, '\x80' + ); + + const __m128i latin_2_half_into_u16_byte_mask = _mm_setr_epi8( + 8, '\x80', + 9, '\x80', + 10, '\x80', + 11, '\x80', + 12, '\x80', + 13, '\x80', + 14, '\x80', + 15, '\x80' + ); + + // each latin1 takes 1-2 utf8 bytes + // slow path writes useful 8-15 bytes twice (eagerly writes 16 bytes and then adjust the pointer) + // so the last write can exceed the utf8_output size by 8-1 bytes + // by reserving 8 extra input bytes, we expect the output to have 8-16 bytes free + while (latin_input + 16 + 8 <= end) { + // Load 16 Latin1 characters (16 bytes) into a 128-bit register + __m128i v_latin = _mm_loadu_si128((__m128i*)latin_input); + + + if (_mm_testz_si128(v_latin, v_80)) {// ASCII fast path!!!! + _mm_storeu_si128((__m128i*)utf8_output, v_latin); + latin_input += 16; + utf8_output += 16; + continue; + } + + + // assuming a/b are bytes and A/B are uint16 of the same value + // aaaa_aaaa_bbbb_bbbb -> AAAA_AAAA + __m128i v_u16_latin_1_half = _mm_shuffle_epi8(v_latin, latin_1_half_into_u16_byte_mask); + // aaaa_aaaa_bbbb_bbbb -> BBBB_BBBB + __m128i v_u16_latin_2_half = _mm_shuffle_epi8(v_latin, latin_2_half_into_u16_byte_mask); + + + internal::westmere::write_v_u16_11bits_to_utf8(v_u16_latin_1_half, utf8_output, v_0000, v_ff80); + internal::westmere::write_v_u16_11bits_to_utf8(v_u16_latin_2_half, utf8_output, v_0000, v_ff80); + latin_input += 16; + } + + if (latin_input + 16 <= end) { + // Load 16 Latin1 characters (16 bytes) into a 128-bit register + __m128i v_latin = _mm_loadu_si128((__m128i*)latin_input); + + if (_mm_testz_si128(v_latin, v_80)) {// ASCII fast path!!!! + _mm_storeu_si128((__m128i*)utf8_output, v_latin); + latin_input += 16; + utf8_output += 16; + } else { + // assuming a/b are bytes and A/B are uint16 of the same value + // aaaa_aaaa_bbbb_bbbb -> AAAA_AAAA + __m128i v_u16_latin_1_half = _mm_shuffle_epi8(v_latin, latin_1_half_into_u16_byte_mask); + internal::westmere::write_v_u16_11bits_to_utf8(v_u16_latin_1_half, utf8_output, v_0000, v_ff80); + latin_input += 8; + } + } + + return std::make_pair(latin_input, utf8_output); +}; +/* end file src/westmere/sse_convert_latin1_to_utf8.cpp */ +/* begin file src/westmere/sse_convert_latin1_to_utf16.cpp */ +template +std::pair sse_convert_latin1_to_utf16(const char *latin1_input, size_t len, + char16_t *utf16_output) { + size_t rounded_len = len & ~0xF; // Round down to nearest multiple of 16 + for (size_t i = 0; i < rounded_len; i += 16) { + // Load 16 Latin1 characters into a 128-bit register + __m128i in = _mm_loadu_si128(reinterpret_cast(&latin1_input[i])); + __m128i out1 = big_endian ? _mm_unpacklo_epi8(_mm_setzero_si128(), in) + : _mm_unpacklo_epi8(in, _mm_setzero_si128()); + __m128i out2 = big_endian ? _mm_unpackhi_epi8(_mm_setzero_si128(), in) + : _mm_unpackhi_epi8(in, _mm_setzero_si128()); + // Zero extend each Latin1 character to 16-bit integers and store the results back to memory + _mm_storeu_si128(reinterpret_cast<__m128i*>(&utf16_output[i]), out1); + _mm_storeu_si128(reinterpret_cast<__m128i*>(&utf16_output[i + 8]), out2); + } + // return pointers pointing to where we left off + return std::make_pair(latin1_input + rounded_len, utf16_output + rounded_len); +} +/* end file src/westmere/sse_convert_latin1_to_utf16.cpp */ +/* begin file src/westmere/sse_convert_latin1_to_utf32.cpp */ +std::pair sse_convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) { + const char* end = buf + len; + + while (buf + 16 <= end) { + // Load 16 Latin1 characters (16 bytes) into a 128-bit register + __m128i in = _mm_loadu_si128((__m128i*)buf); + + // Shift input to process next 4 bytes + __m128i in_shifted1 = _mm_srli_si128(in, 4); + __m128i in_shifted2 = _mm_srli_si128(in, 8); + __m128i in_shifted3 = _mm_srli_si128(in, 12); + + // expand 8-bit to 32-bit unit + __m128i out1 = _mm_cvtepu8_epi32(in); + __m128i out2 = _mm_cvtepu8_epi32(in_shifted1); + __m128i out3 = _mm_cvtepu8_epi32(in_shifted2); + __m128i out4 = _mm_cvtepu8_epi32(in_shifted3); + + _mm_storeu_si128((__m128i*)utf32_output, out1); + _mm_storeu_si128((__m128i*)(utf32_output + 4), out2); + _mm_storeu_si128((__m128i*)(utf32_output + 8), out3); + _mm_storeu_si128((__m128i*)(utf32_output + 12), out4); + + utf32_output += 16; + buf += 16; + } + + return std::make_pair(buf, utf32_output); +} + +/* end file src/westmere/sse_convert_latin1_to_utf32.cpp */ + + /* begin file src/westmere/sse_convert_utf8_to_utf16.cpp */ // depends on "tables/utf8_to_utf16_tables.h" @@ -25249,7 +29239,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, return 16; // We consumed 16 bytes. } if(((utf8_end_of_code_point_mask & 0xFFFF) == 0xaaaa)) { - // We want to take 8 2-byte UTF-8 words and turn them into 8 2-byte UTF-16 words. + // We want to take 8 2-byte UTF-8 code units and turn them into 8 2-byte UTF-16 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -25262,7 +29252,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, return 16; } if(input_utf8_end_of_code_point_mask == 0x924) { - // We want to take 4 3-byte UTF-8 words and turn them into 4 2-byte UTF-16 words. + // We want to take 4 3-byte UTF-8 code units and turn them into 4 2-byte UTF-16 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(2, 1, 0, -1, 5, 4, 3, -1, 8, 7, 6, -1, 11, 10, 9, -1); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -25289,10 +29279,10 @@ size_t convert_masked_utf8_to_utf16(const char *input, const uint8_t consumed = tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; if (idx < 64) { - // SIX (6) input code-words + // SIX (6) input code-code units // this is a relatively easy scenario - // we process SIX (6) input code-words. The max length in bytes of six code - // words spanning between 1 and 2 bytes each is 12 bytes. On processors + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. On processors // where pdep/pext is fast, we might be able to use a small lookup table. const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); @@ -25304,7 +29294,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, _mm_storeu_si128((__m128i *)utf16_output, composed); utf16_output += 6; // We wrote 12 bytes, 6 code points. } else if (idx < 145) { - // FOUR (4) input code-words + // FOUR (4) input code-code units const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -25323,7 +29313,7 @@ size_t convert_masked_utf8_to_utf16(const char *input, _mm_storeu_si128((__m128i *)utf16_output, composed_repacked); utf16_output += 4; } else if (idx < 209) { - // TWO (2) input code-words + // TWO (2) input code-code units ////////////// // There might be garbage inputs where a leading byte mascarades as a four-byte // leading byte (by being followed by 3 continuation byte), but is not greater than @@ -25393,7 +29383,6 @@ size_t convert_masked_utf8_to_utf16(const char *input, return consumed; } /* end file src/westmere/sse_convert_utf8_to_utf16.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_convert_utf8_to_utf32.cpp /* begin file src/westmere/sse_convert_utf8_to_utf32.cpp */ // depends on "tables/utf8_to_utf16_tables.h" @@ -25428,7 +29417,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, return 16; // We consumed 16 bytes. } if(((utf8_end_of_code_point_mask & 0xffff) == 0xaaaa)) { - // We want to take 8 2-byte UTF-8 words and turn them into 8 4-byte UTF-32 words. + // We want to take 8 2-byte UTF-8 code units and turn them into 8 4-byte UTF-32 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -25441,7 +29430,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, return 16; } if(input_utf8_end_of_code_point_mask == 0x924) { - // We want to take 4 3-byte UTF-8 words and turn them into 4 4-byte UTF-32 words. + // We want to take 4 3-byte UTF-8 code units and turn them into 4 4-byte UTF-32 code units. // There is probably a more efficient sequence, but the following might do. const __m128i sh = _mm_setr_epi8(2, 1, 0, -1, 5, 4, 3, -1, 8, 7, 6, -1, 11, 10, 9, -1); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -25466,10 +29455,10 @@ size_t convert_masked_utf8_to_utf32(const char *input, const uint8_t consumed = tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; if (idx < 64) { - // SIX (6) input code-words + // SIX (6) input code-code units // this is a relatively easy scenario - // we process SIX (6) input code-words. The max length in bytes of six code - // words spanning between 1 and 2 bytes each is 12 bytes. On processors + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. On processors // where pdep/pext is fast, we might be able to use a small lookup table. const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); @@ -25481,7 +29470,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, _mm_storeu_si128(reinterpret_cast<__m128i *>(utf32_output+4), _mm_cvtepu16_epi32(_mm_srli_si128(composed,8))); utf32_output += 6; // We wrote 12 bytes, 6 code points. } else if (idx < 145) { - // FOUR (4) input code-words + // FOUR (4) input code-code units const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -25498,7 +29487,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, _mm_storeu_si128((__m128i *)utf32_output, composed); utf32_output += 4; } else if (idx < 209) { - // TWO (2) input code-words + // TWO (2) input code-code units const __m128i sh = _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); const __m128i perm = _mm_shuffle_epi8(in, sh); @@ -25523,13 +29512,130 @@ size_t convert_masked_utf8_to_utf32(const char *input, } return consumed; } -/* end file src/westmere/sse_convert_utf8_to_utf32.cpp */ +/* end file src/westmere/sse_convert_utf8_to_utf32.cpp */ +/* begin file src/westmere/sse_convert_utf8_to_latin1.cpp */ +// depends on "tables/utf8_to_utf16_tables.h" + + +// Convert up to 12 bytes from utf8 to latin1 using a mask indicating the +// end of the code points. Only the least significant 12 bits of the mask +// are accessed. +// It returns how many bytes were consumed (up to 12). +size_t convert_masked_utf8_to_latin1(const char *input, + uint64_t utf8_end_of_code_point_mask, + char *&latin1_output) { + // we use an approach where we try to process up to 12 input bytes. + // Why 12 input bytes and not 16? Because we are concerned with the size of + // the lookup tables. Also 12 is nicely divisible by two and three. + // + // + // Optimization note: our main path below is load-latency dependent. Thus it is maybe + // beneficial to have fast paths that depend on branch prediction but have less latency. + // This results in more instructions but, potentially, also higher speeds. + // + const __m128i in = _mm_loadu_si128((__m128i *)input); + const uint16_t input_utf8_end_of_code_point_mask = + utf8_end_of_code_point_mask & 0xfff; //we're only processing 12 bytes in case it`s not all ASCII + if(((utf8_end_of_code_point_mask & 0xffff) == 0xffff)) { + // We process the data in chunks of 16 bytes. + _mm_storeu_si128(reinterpret_cast<__m128i *>(latin1_output), in); + latin1_output += 16; // We wrote 16 characters. + return 16; // We consumed 16 bytes. + } + /// We do not have a fast path available, so we fallback. + const uint8_t idx = + tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][0]; + const uint8_t consumed = + tables::utf8_to_utf16::utf8bigindex[input_utf8_end_of_code_point_mask][1]; + // this indicates an invalid input: + if(idx >= 64) { return consumed; } + // Here we should have (idx < 64), if not, there is a bug in the validation or elsewhere. + // SIX (6) input code-code units + // this is a relatively easy scenario + // we process SIX (6) input code-code units. The max length in bytes of six code + // code units spanning between 1 and 2 bytes each is 12 bytes. On processors + // where pdep/pext is fast, we might be able to use a small lookup table. + const __m128i sh = + _mm_loadu_si128((const __m128i *)tables::utf8_to_utf16::shufutf8[idx]); + const __m128i perm = _mm_shuffle_epi8(in, sh); + const __m128i ascii = _mm_and_si128(perm, _mm_set1_epi16(0x7f)); + const __m128i highbyte = _mm_and_si128(perm, _mm_set1_epi16(0x1f00)); + __m128i composed = _mm_or_si128(ascii, _mm_srli_epi16(highbyte, 2)); + const __m128i latin1_packed = _mm_packus_epi16(composed,composed); + // writing 8 bytes even though we only care about the first 6 bytes. + // performance note: it would be faster to use _mm_storeu_si128, we should investigate. + _mm_storel_epi64((__m128i *)latin1_output, latin1_packed); + latin1_output += 6; // We wrote 6 bytes. + return consumed; +} +/* end file src/westmere/sse_convert_utf8_to_latin1.cpp */ + +/* begin file src/westmere/sse_convert_utf16_to_latin1.cpp */ +template +std::pair sse_convert_utf16_to_latin1(const char16_t* buf, size_t len, char* latin1_output) { + const char16_t* end = buf + len; + while (buf + 8 <= end) { + // Load 8 UTF-16 characters into 128-bit SSE register + __m128i in = _mm_loadu_si128(reinterpret_cast(buf)); + + if (!match_system(big_endian)) { + const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); + in = _mm_shuffle_epi8(in, swap); + } + + __m128i high_byte_mask = _mm_set1_epi16((int16_t)0xFF00); + if (_mm_testz_si128(in, high_byte_mask)) { + // Pack 16-bit characters into 8-bit and store in latin1_output + __m128i latin1_packed = _mm_packus_epi16(in, in); + _mm_storel_epi64(reinterpret_cast<__m128i*>(latin1_output), latin1_packed); + // Adjust pointers for next iteration + buf += 8; + latin1_output += 8; + } else { + return std::make_pair(nullptr, reinterpret_cast(latin1_output)); + } + } // while + return std::make_pair(buf, latin1_output); +} + +template +std::pair sse_convert_utf16_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) { + const char16_t* start = buf; + const char16_t* end = buf + len; + while (buf + 8 <= end) { + __m128i in = _mm_loadu_si128(reinterpret_cast(buf)); + + if (!big_endian) { + const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); + in = _mm_shuffle_epi8(in, swap); + } -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_convert_utf16_to_utf8.cpp + __m128i high_byte_mask = _mm_set1_epi16((int16_t)0xFF00); + if (_mm_testz_si128(in, high_byte_mask)) { + __m128i latin1_packed = _mm_packus_epi16(in, in); + _mm_storel_epi64(reinterpret_cast<__m128i*>(latin1_output), latin1_packed); + buf += 8; + latin1_output += 8; + } else { + // Fallback to scalar code for handling errors + for(int k = 0; k < 8; k++) { + uint16_t word = !match_system(big_endian) ? scalar::utf16::swap_bytes(buf[k]) : buf[k]; + if(word <= 0xff) { + *latin1_output++ = char(word); + } else { + return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), latin1_output); + } + } + buf += 8; + } + } // while + return std::make_pair(result(error_code::SUCCESS, buf - start), latin1_output); +} +/* end file src/westmere/sse_convert_utf16_to_latin1.cpp */ /* begin file src/westmere/sse_convert_utf16_to_utf8.cpp */ /* The vectorized algorithm works on single SSE register i.e., it - loads eight 16-bit words. + loads eight 16-bit code units. We consider three cases: 1. an input register contains no surrogates and each value @@ -25541,7 +29647,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, Ad 1. - When values are less than 0x0800, it means that a 16-bit words + When values are less than 0x0800, it means that a 16-bit code unit can be converted into: 1) single UTF8 byte (when it's an ASCII char) or 2) two UTF8 bytes. @@ -25555,7 +29661,7 @@ size_t convert_masked_utf8_to_utf32(const char *input, Ad 2. - When values fit in 16-bit words, but are above 0x07ff, then + When values fit in 16-bit code units, but are above 0x07ff, then a single word may produce one, two or three UTF8 bytes. We prepare data for all these three cases in two registers. @@ -25588,7 +29694,6 @@ std::pair sse_convert_utf16_to_utf8(const char16_t* buf, const __m128i v_0000 = _mm_setzero_si128(); const __m128i v_f800 = _mm_set1_epi16((int16_t)0xf800); const __m128i v_d800 = _mm_set1_epi16((int16_t)0xd800); - const __m128i v_c080 = _mm_set1_epi16((int16_t)0xc080); const size_t safety_margin = 12; // to avoid overruns, see issue https://github.com/simdutf/simdutf/issues/92 while (buf + 16 + safety_margin <= end) { @@ -25637,44 +29742,9 @@ std::pair sse_convert_utf16_to_utf8(const char16_t* buf, const uint16_t one_or_two_bytes_bitmask = static_cast(_mm_movemask_epi8(one_or_two_bytes_bytemask)); if (one_or_two_bytes_bitmask == 0xffff) { - // 1. prepare 2-byte values - // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 - // expected output : [110a|aaaa|10bb|bbbb] x 8 - const __m128i v_1f00 = _mm_set1_epi16((int16_t)0x1f00); - const __m128i v_003f = _mm_set1_epi16((int16_t)0x003f); - - // t0 = [000a|aaaa|bbbb|bb00] - const __m128i t0 = _mm_slli_epi16(in, 2); - // t1 = [000a|aaaa|0000|0000] - const __m128i t1 = _mm_and_si128(t0, v_1f00); - // t2 = [0000|0000|00bb|bbbb] - const __m128i t2 = _mm_and_si128(in, v_003f); - // t3 = [000a|aaaa|00bb|bbbb] - const __m128i t3 = _mm_or_si128(t1, t2); - // t4 = [110a|aaaa|10bb|bbbb] - const __m128i t4 = _mm_or_si128(t3, v_c080); - - // 2. merge ASCII and 2-byte codewords - const __m128i utf8_unpacked = _mm_blendv_epi8(t4, in, one_byte_bytemask); - - // 3. prepare bitmask for 8-bit lookup - // one_byte_bitmask = hhggffeeddccbbaa -- the bits are doubled (h - MSB, a - LSB) - const uint16_t m0 = one_byte_bitmask & 0x5555; // m0 = 0h0g0f0e0d0c0b0a - const uint16_t m1 = static_cast(m0 >> 7); // m1 = 00000000h0g0f0e0 - const uint8_t m2 = static_cast((m0 | m1) & 0xff); // m2 = hdgcfbea - // 4. pack the bytes - const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; - const __m128i shuffle = _mm_loadu_si128((__m128i*)(row + 1)); - const __m128i utf8_packed = _mm_shuffle_epi8(utf8_unpacked, shuffle); - - // 5. store bytes - _mm_storeu_si128((__m128i*)utf8_output, utf8_packed); - - // 6. adjust pointers - buf += 8; - utf8_output += row[0]; - continue; - + internal::westmere::write_v_u16_11bits_to_utf8(in, utf8_output, one_byte_bytemask, one_byte_bitmask); + buf += 8; + continue; } // 1. Check if there are any surrogate word in the input chunk. @@ -25688,7 +29758,7 @@ std::pair sse_convert_utf16_to_utf8(const char16_t* buf, // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x0000) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes const __m128i dup_even = _mm_setr_epi16(0x0000, 0x0202, 0x0404, 0x0606, 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); @@ -25697,7 +29767,7 @@ std::pair sse_convert_utf16_to_utf8(const char16_t* buf, 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -25708,7 +29778,7 @@ std::pair sse_convert_utf16_to_utf8(const char16_t* buf, either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -25736,15 +29806,15 @@ std::pair sse_convert_utf16_to_utf8(const char16_t* buf, const __m128i s4 = _mm_xor_si128(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m128i out0 = _mm_unpacklo_epi16(t2, s4); const __m128i out1 = _mm_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint16_t mask = (one_byte_bitmask & 0x5555) | (one_or_two_bytes_bitmask & 0xaaaa); if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m128i shuffle = _mm_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m128i utf8_0 = _mm_shuffle_epi8(out0, shuffle); const __m128i utf8_1 = _mm_shuffle_epi8(out1, shuffle); @@ -25828,7 +29898,6 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b const __m128i v_0000 = _mm_setzero_si128(); const __m128i v_f800 = _mm_set1_epi16((int16_t)0xf800); const __m128i v_d800 = _mm_set1_epi16((int16_t)0xd800); - const __m128i v_c080 = _mm_set1_epi16((int16_t)0xc080); const size_t safety_margin = 12; // to avoid overruns, see issue https://github.com/simdutf/simdutf/issues/92 while (buf + 16 + safety_margin <= end) { @@ -25877,44 +29946,9 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b const uint16_t one_or_two_bytes_bitmask = static_cast(_mm_movemask_epi8(one_or_two_bytes_bytemask)); if (one_or_two_bytes_bitmask == 0xffff) { - // 1. prepare 2-byte values - // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 - // expected output : [110a|aaaa|10bb|bbbb] x 8 - const __m128i v_1f00 = _mm_set1_epi16((int16_t)0x1f00); - const __m128i v_003f = _mm_set1_epi16((int16_t)0x003f); - - // t0 = [000a|aaaa|bbbb|bb00] - const __m128i t0 = _mm_slli_epi16(in, 2); - // t1 = [000a|aaaa|0000|0000] - const __m128i t1 = _mm_and_si128(t0, v_1f00); - // t2 = [0000|0000|00bb|bbbb] - const __m128i t2 = _mm_and_si128(in, v_003f); - // t3 = [000a|aaaa|00bb|bbbb] - const __m128i t3 = _mm_or_si128(t1, t2); - // t4 = [110a|aaaa|10bb|bbbb] - const __m128i t4 = _mm_or_si128(t3, v_c080); - - // 2. merge ASCII and 2-byte codewords - const __m128i utf8_unpacked = _mm_blendv_epi8(t4, in, one_byte_bytemask); - - // 3. prepare bitmask for 8-bit lookup - // one_byte_bitmask = hhggffeeddccbbaa -- the bits are doubled (h - MSB, a - LSB) - const uint16_t m0 = one_byte_bitmask & 0x5555; // m0 = 0h0g0f0e0d0c0b0a - const uint16_t m1 = static_cast(m0 >> 7); // m1 = 00000000h0g0f0e0 - const uint8_t m2 = static_cast((m0 | m1) & 0xff); // m2 = hdgcfbea - // 4. pack the bytes - const uint8_t* row = &simdutf::tables::utf16_to_utf8::pack_1_2_utf8_bytes[m2][0]; - const __m128i shuffle = _mm_loadu_si128((__m128i*)(row + 1)); - const __m128i utf8_packed = _mm_shuffle_epi8(utf8_unpacked, shuffle); - - // 5. store bytes - _mm_storeu_si128((__m128i*)utf8_output, utf8_packed); - - // 6. adjust pointers - buf += 8; - utf8_output += row[0]; - continue; - + internal::westmere::write_v_u16_11bits_to_utf8(in, utf8_output, one_byte_bytemask, one_byte_bitmask); + buf += 8; + continue; } // 1. Check if there are any surrogate word in the input chunk. @@ -25928,7 +29962,7 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x0000) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes const __m128i dup_even = _mm_setr_epi16(0x0000, 0x0202, 0x0404, 0x0606, 0x0808, 0x0a0a, 0x0c0c, 0x0e0e); @@ -25937,7 +29971,7 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -25948,7 +29982,7 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -25976,15 +30010,15 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b const __m128i s4 = _mm_xor_si128(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m128i out0 = _mm_unpacklo_epi16(t2, s4); const __m128i out1 = _mm_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint16_t mask = (one_byte_bitmask & 0x5555) | (one_or_two_bytes_bitmask & 0xaaaa); if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m128i shuffle = _mm_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m128i utf8_0 = _mm_shuffle_epi8(out0, shuffle); const __m128i utf8_1 = _mm_shuffle_epi8(out1, shuffle); @@ -26053,11 +30087,10 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b return std::make_pair(result(error_code::SUCCESS, buf - start), utf8_output); } /* end file src/westmere/sse_convert_utf16_to_utf8.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_convert_utf16_to_utf32.cpp /* begin file src/westmere/sse_convert_utf16_to_utf32.cpp */ /* The vectorized algorithm works on single SSE register i.e., it - loads eight 16-bit words. + loads eight 16-bit code units. We consider three cases: 1. an input register contains no surrogates and each value @@ -26069,7 +30102,7 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b Ad 1. - When values are less than 0x0800, it means that a 16-bit words + When values are less than 0x0800, it means that a 16-bit code unit can be converted into: 1) single UTF8 byte (when it's an ASCII char) or 2) two UTF8 bytes. @@ -26083,7 +30116,7 @@ std::pair sse_convert_utf16_to_utf8_with_errors(const char16_t* b Ad 2. - When values fit in 16-bit words, but are above 0x07ff, then + When values fit in 16-bit code units, but are above 0x07ff, then a single word may produce one, two or three UTF8 bytes. We prepare data for all these three cases in two registers. @@ -26115,7 +30148,7 @@ std::pair sse_convert_utf16_to_utf32(const char16_t* const __m128i v_f800 = _mm_set1_epi16((int16_t)0xf800); const __m128i v_d800 = _mm_set1_epi16((int16_t)0xd800); - while (buf + 16 <= end) { + while (buf + 8 <= end) { __m128i in = _mm_loadu_si128((__m128i*)buf); if (big_endian) { @@ -26134,7 +30167,7 @@ std::pair sse_convert_utf16_to_utf32(const char16_t* // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x0000) { - // case: no surrogate pair, extend 16-bit words to 32-bit words + // case: no surrogate pair, extend 16-bit code units to 32-bit code units _mm_storeu_si128(reinterpret_cast<__m128i *>(utf32_output), _mm_cvtepu16_epi32(in)); _mm_storeu_si128(reinterpret_cast<__m128i *>(utf32_output+4), _mm_cvtepu16_epi32(_mm_srli_si128(in,8))); utf32_output += 8; @@ -26183,7 +30216,7 @@ std::pair sse_convert_utf16_to_utf32_with_errors(const char16 const __m128i v_f800 = _mm_set1_epi16((int16_t)0xf800); const __m128i v_d800 = _mm_set1_epi16((int16_t)0xd800); - while (buf + 16 <= end) { + while (buf + 8 <= end) { __m128i in = _mm_loadu_si128((__m128i*)buf); if (big_endian) { @@ -26202,7 +30235,7 @@ std::pair sse_convert_utf16_to_utf32_with_errors(const char16 // It might seem like checking for surrogates_bitmask == 0xc000 could help. However, // it is likely an uncommon occurrence. if (surrogates_bitmask == 0x0000) { - // case: no surrogate pair, extend 16-bit words to 32-bit words + // case: no surrogate pair, extend 16-bit code units to 32-bit code units _mm_storeu_si128(reinterpret_cast<__m128i *>(utf32_output), _mm_cvtepu16_epi32(in)); _mm_storeu_si128(reinterpret_cast<__m128i *>(utf32_output+4), _mm_cvtepu16_epi32(_mm_srli_si128(in,8))); utf32_output += 8; @@ -26237,51 +30270,139 @@ std::pair sse_convert_utf16_to_utf32_with_errors(const char16 } /* end file src/westmere/sse_convert_utf16_to_utf32.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_convert_utf32_to_utf8.cpp +/* begin file src/westmere/sse_convert_utf32_to_latin1.cpp */ +std::pair +sse_convert_utf32_to_latin1(const char32_t *buf, size_t len, + char *latin1_output) { + const size_t rounded_len = len & ~0xF; // Round down to nearest multiple of 16 + + __m128i high_bytes_mask = _mm_set1_epi32(0xFFFFFF00); + __m128i shufmask = + _mm_set_epi8(-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 12, 8, 4, 0); + + for (size_t i = 0; i < rounded_len; i += 16) { + __m128i in1 = _mm_loadu_si128((__m128i *)buf); + __m128i in2 = _mm_loadu_si128((__m128i *)(buf + 4)); + __m128i in3 = _mm_loadu_si128((__m128i *)(buf + 8)); + __m128i in4 = _mm_loadu_si128((__m128i *)(buf + 12)); + + __m128i check_combined = _mm_or_si128(in1, in2); + check_combined = _mm_or_si128(check_combined, in3); + check_combined = _mm_or_si128(check_combined, in4); + + if (!_mm_testz_si128(check_combined, high_bytes_mask)) { + return std::make_pair(nullptr, latin1_output); + } + __m128i pack1 = _mm_unpacklo_epi32(_mm_shuffle_epi8(in1, shufmask), _mm_shuffle_epi8(in2, shufmask)); + __m128i pack2 = _mm_unpacklo_epi32(_mm_shuffle_epi8(in3, shufmask), _mm_shuffle_epi8(in4, shufmask)); + __m128i pack = _mm_unpacklo_epi64(pack1, pack2); + _mm_storeu_si128((__m128i *)latin1_output, pack); + latin1_output += 16; + buf += 16; + } + + return std::make_pair(buf, latin1_output); +} + +std::pair +sse_convert_utf32_to_latin1_with_errors(const char32_t *buf, size_t len, + char *latin1_output) { + const char32_t *start = buf; + const size_t rounded_len = len & ~0xF; // Round down to nearest multiple of 16 + + __m128i high_bytes_mask = _mm_set1_epi32(0xFFFFFF00); + __m128i shufmask = + _mm_set_epi8(-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 12, 8, 4, 0); + + for (size_t i = 0; i < rounded_len; i += 16) { + __m128i in1 = _mm_loadu_si128((__m128i *)buf); + __m128i in2 = _mm_loadu_si128((__m128i *)(buf + 4)); + __m128i in3 = _mm_loadu_si128((__m128i *)(buf + 8)); + __m128i in4 = _mm_loadu_si128((__m128i *)(buf + 12)); + + __m128i check_combined = _mm_or_si128(in1, in2); + check_combined = _mm_or_si128(check_combined, in3); + check_combined = _mm_or_si128(check_combined, in4); + + if (!_mm_testz_si128(check_combined, high_bytes_mask)) { + // Fallback to scalar code for handling errors + for (int k = 0; k < 16; k++) { + char32_t codepoint = buf[k]; + if (codepoint <= 0xff) { + *latin1_output++ = char(codepoint); + } else { + return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), + latin1_output); + } + } + buf += 16; + continue; + } + __m128i pack1 = _mm_unpacklo_epi32(_mm_shuffle_epi8(in1, shufmask), _mm_shuffle_epi8(in2, shufmask)); + __m128i pack2 = _mm_unpacklo_epi32(_mm_shuffle_epi8(in3, shufmask), _mm_shuffle_epi8(in4, shufmask)); + __m128i pack = _mm_unpacklo_epi64(pack1, pack2); + _mm_storeu_si128((__m128i *)latin1_output, pack); + latin1_output += 16; + buf += 16; + } + + return std::make_pair(result(error_code::SUCCESS, buf - start), + latin1_output); +} +/* end file src/westmere/sse_convert_utf32_to_latin1.cpp */ /* begin file src/westmere/sse_convert_utf32_to_utf8.cpp */ std::pair sse_convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) { const char32_t* end = buf + len; - const __m128i v_0000 = _mm_setzero_si128(); - const __m128i v_f800 = _mm_set1_epi16((uint16_t)0xf800); - const __m128i v_c080 = _mm_set1_epi16((uint16_t)0xc080); - const __m128i v_ff80 = _mm_set1_epi16((uint16_t)0xff80); - const __m128i v_ffff0000 = _mm_set1_epi32((uint32_t)0xffff0000); - const __m128i v_7fffffff = _mm_set1_epi32((uint32_t)0x7fffffff); + const __m128i v_0000 = _mm_setzero_si128();//__m128 = 128 bits + const __m128i v_f800 = _mm_set1_epi16((uint16_t)0xf800); //1111 1000 0000 0000 + const __m128i v_c080 = _mm_set1_epi16((uint16_t)0xc080); //1100 0000 1000 0000 + const __m128i v_ff80 = _mm_set1_epi16((uint16_t)0xff80); //1111 1111 1000 0000 + const __m128i v_ffff0000 = _mm_set1_epi32((uint32_t)0xffff0000); //1111 1111 1111 1111 0000 0000 0000 0000 + const __m128i v_7fffffff = _mm_set1_epi32((uint32_t)0x7fffffff); //0111 1111 1111 1111 1111 1111 1111 1111 __m128i running_max = _mm_setzero_si128(); __m128i forbidden_bytemask = _mm_setzero_si128(); const size_t safety_margin = 12; // to avoid overruns, see issue https://github.com/simdutf/simdutf/issues/92 - while (buf + 16 + safety_margin <= end) { + while (buf + 16 + safety_margin <= end) { //buf is a char32_t pointer, each char32_t has 4 bytes or 32 bits, thus buf + 16 * char_32t = 512 bits = 64 bytes // We load two 16 bytes registers for a total of 32 bytes or 16 characters. __m128i in = _mm_loadu_si128((__m128i*)buf); - __m128i nextin = _mm_loadu_si128((__m128i*)buf+1); - running_max = _mm_max_epu32(_mm_max_epu32(in, running_max), nextin); - - // Pack 32-bit UTF-32 words to 16-bit UTF-16 words with unsigned saturation - __m128i in_16 = _mm_packus_epi32(_mm_and_si128(in, v_7fffffff), _mm_and_si128(nextin, v_7fffffff)); + __m128i nextin = _mm_loadu_si128((__m128i*)buf+1);//These two values can hold only 8 UTF32 chars + running_max = _mm_max_epu32( + _mm_max_epu32(in, running_max), //take element-wise max char32_t from in and running_max vector + nextin); //and take element-wise max element from nextin and running_max vector + + // Pack 32-bit UTF-32 code units to 16-bit UTF-16 code units with unsigned saturation + __m128i in_16 = _mm_packus_epi32( + _mm_and_si128(in, v_7fffffff), + _mm_and_si128(nextin, v_7fffffff) + );//in this context pack the two __m128 into a single + //By ensuring the highest bit is set to 0(&v_7fffffff), we're making sure all values are interpreted as non-negative, or specifically, the values are within the range of valid Unicode code points. + //remember : having leading byte 0 means a positive number by the two complements system. Unicode is well beneath the range where you'll start getting issues so that's OK. // Try to apply UTF-16 => UTF-8 from ./sse_convert_utf16_to_utf8.cpp - // Check for ASCII fast path - if(_mm_testz_si128(in_16, v_ff80)) { // ASCII fast path!!!! + // Check for ASCII fast path + + // ASCII fast path!!!! // We eagerly load another 32 bytes, hoping that they will be ASCII too. // The intuition is that we try to collect 16 ASCII characters which requires // a total of 64 bytes of input. If we fail, we just pass thirdin and fourthin // as our new inputs. + if(_mm_testz_si128(in_16, v_ff80)) { //if the first two blocks are ASCII __m128i thirdin = _mm_loadu_si128((__m128i*)buf+2); __m128i fourthin = _mm_loadu_si128((__m128i*)buf+3); - running_max = _mm_max_epu32(_mm_max_epu32(thirdin, running_max), fourthin); - __m128i nextin_16 = _mm_packus_epi32(_mm_and_si128(thirdin, v_7fffffff), _mm_and_si128(fourthin, v_7fffffff)); - if(!_mm_testz_si128(nextin_16, v_ff80)) { + running_max = _mm_max_epu32(_mm_max_epu32(thirdin, running_max), fourthin);//take the running max of all 4 vectors thus far + __m128i nextin_16 = _mm_packus_epi32(_mm_and_si128(thirdin, v_7fffffff), _mm_and_si128(fourthin, v_7fffffff));//pack into 1 vector, now you have two + if(!_mm_testz_si128(nextin_16, v_ff80)) { //checks if the second packed vector is ASCII, if not: // 1. pack the bytes // obviously suboptimal. - const __m128i utf8_packed = _mm_packus_epi16(in_16,in_16); + const __m128i utf8_packed = _mm_packus_epi16(in_16,in_16); //creates two copy of in_16 in 1 vector // 2. store (16 bytes) - _mm_storeu_si128((__m128i*)utf8_output, utf8_packed); + _mm_storeu_si128((__m128i*)utf8_output, utf8_packed); //put them into the output // 3. adjust pointers - buf += 8; - utf8_output += 8; + buf += 8; //the char32_t buffer pointer goes up 8 char32_t chars* 32 bits = 256 bits + utf8_output += 8; //same with output, e.g. lift the first two blocks alone. // Proceed with next input in_16 = nextin_16; // We need to update in and nextin because they are used later. @@ -26299,32 +30420,36 @@ std::pair sse_convert_utf32_to_utf8(const char32_t* buf, } } - // no bits set above 7th bit - const __m128i one_byte_bytemask = _mm_cmpeq_epi16(_mm_and_si128(in_16, v_ff80), v_0000); - const uint16_t one_byte_bitmask = static_cast(_mm_movemask_epi8(one_byte_bytemask)); + // no bits set above 7th bit -- find out all the ASCII characters + const __m128i one_byte_bytemask = _mm_cmpeq_epi16( // this takes four bytes at a time and compares: + _mm_and_si128(in_16, v_ff80), // the vector that get only the first 9 bits of each 16-bit/2-byte units + v_0000 // + ); // they should be all zero if they are ASCII. E.g. ASCII in UTF32 is of format 0000 0000 0000 0XXX XXXX + // _mm_cmpeq_epi16 should now return a 1111 1111 1111 1111 for equals, and 0000 0000 0000 0000 if not for each 16-bit/2-byte units + const uint16_t one_byte_bitmask = static_cast(_mm_movemask_epi8(one_byte_bytemask)); // collect the MSB from previous vector and put them into uint16_t mas // no bits set above 11th bit const __m128i one_or_two_bytes_bytemask = _mm_cmpeq_epi16(_mm_and_si128(in_16, v_f800), v_0000); const uint16_t one_or_two_bytes_bitmask = static_cast(_mm_movemask_epi8(one_or_two_bytes_bytemask)); if (one_or_two_bytes_bitmask == 0xffff) { - // case: all words either produce 1 or 2 UTF-8 bytes (at least one produces 2 bytes) + // case: all code units either produce 1 or 2 UTF-8 bytes (at least one produces 2 bytes) // 1. prepare 2-byte values // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 // expected output : [110a|aaaa|10bb|bbbb] x 8 - const __m128i v_1f00 = _mm_set1_epi16((int16_t)0x1f00); - const __m128i v_003f = _mm_set1_epi16((int16_t)0x003f); + const __m128i v_1f00 = _mm_set1_epi16((int16_t)0x1f00); // 0001 1111 0000 0000 + const __m128i v_003f = _mm_set1_epi16((int16_t)0x003f); // 0000 0000 0011 1111 // t0 = [000a|aaaa|bbbb|bb00] - const __m128i t0 = _mm_slli_epi16(in_16, 2); + const __m128i t0 = _mm_slli_epi16(in_16, 2); // shift packed vector by two // t1 = [000a|aaaa|0000|0000] - const __m128i t1 = _mm_and_si128(t0, v_1f00); + const __m128i t1 = _mm_and_si128(t0, v_1f00); // potentital first utf8 byte // t2 = [0000|0000|00bb|bbbb] - const __m128i t2 = _mm_and_si128(in_16, v_003f); + const __m128i t2 = _mm_and_si128(in_16, v_003f);// potential second utf8 byte // t3 = [000a|aaaa|00bb|bbbb] - const __m128i t3 = _mm_or_si128(t1, t2); + const __m128i t3 = _mm_or_si128(t1, t2); // first and second potential utf8 byte together // t4 = [110a|aaaa|10bb|bbbb] - const __m128i t4 = _mm_or_si128(t3, v_c080); + const __m128i t4 = _mm_or_si128(t3, v_c080); // t3 | 1100 0000 1000 0000 = full potential 2-byte utf8 unit // 2. merge ASCII and 2-byte codewords const __m128i utf8_unpacked = _mm_blendv_epi8(t4, in_16, one_byte_bytemask); @@ -26353,7 +30478,7 @@ std::pair sse_convert_utf32_to_utf8(const char32_t* buf, const __m128i saturation_bytemask = _mm_cmpeq_epi32(_mm_and_si128(_mm_or_si128(in, nextin), v_ffff0000), v_0000); const uint32_t saturation_bitmask = static_cast(_mm_movemask_epi8(saturation_bytemask)); if (saturation_bitmask == 0xffff) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes const __m128i v_d800 = _mm_set1_epi16((uint16_t)0xd800); forbidden_bytemask = _mm_or_si128(forbidden_bytemask, _mm_cmpeq_epi16(_mm_and_si128(in_16, v_f800), v_d800)); @@ -26365,7 +30490,7 @@ std::pair sse_convert_utf32_to_utf8(const char32_t* buf, 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -26376,7 +30501,7 @@ std::pair sse_convert_utf32_to_utf8(const char32_t* buf, either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -26404,15 +30529,15 @@ std::pair sse_convert_utf32_to_utf8(const char32_t* buf, const __m128i s4 = _mm_xor_si128(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit + // 4. expand code units 16-bit => 32-bit const __m128i out0 = _mm_unpacklo_epi16(t2, s4); const __m128i out1 = _mm_unpackhi_epi16(t2, s4); - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle const uint16_t mask = (one_byte_bitmask & 0x5555) | (one_or_two_bytes_bitmask & 0xaaaa); if(mask == 0) { - // We only have three-byte words. Use fast path. + // We only have three-byte code units. Use fast path. const __m128i shuffle = _mm_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); const __m128i utf8_0 = _mm_shuffle_epi8(out0, shuffle); const __m128i utf8_1 = _mm_shuffle_epi8(out1, shuffle); @@ -26511,7 +30636,7 @@ std::pair sse_convert_utf32_to_utf8_with_errors(const char32_t* b return std::make_pair(result(error_code::TOO_LARGE, buf - start), utf8_output); } - // Pack 32-bit UTF-32 words to 16-bit UTF-16 words with unsigned saturation + // Pack 32-bit UTF-32 code units to 16-bit UTF-16 code units with unsigned saturation __m128i in_16 = _mm_packus_epi32(_mm_and_si128(in, v_7fffffff), _mm_and_si128(nextin, v_7fffffff)); // Try to apply UTF-16 => UTF-8 from ./sse_convert_utf16_to_utf8.cpp @@ -26564,7 +30689,7 @@ std::pair sse_convert_utf32_to_utf8_with_errors(const char32_t* b const uint16_t one_or_two_bytes_bitmask = static_cast(_mm_movemask_epi8(one_or_two_bytes_bytemask)); if (one_or_two_bytes_bitmask == 0xffff) { - // case: all words either produce 1 or 2 UTF-8 bytes (at least one produces 2 bytes) + // case: all code units either produce 1 or 2 UTF-8 bytes (at least one produces 2 bytes) // 1. prepare 2-byte values // input 16-bit word : [0000|0aaa|aabb|bbbb] x 8 // expected output : [110a|aaaa|10bb|bbbb] x 8 @@ -26610,9 +30735,9 @@ std::pair sse_convert_utf32_to_utf8_with_errors(const char32_t* b const uint32_t saturation_bitmask = static_cast(_mm_movemask_epi8(saturation_bytemask)); if (saturation_bitmask == 0xffff) { - // case: words from register produce either 1, 2 or 3 UTF-8 bytes + // case: code units from register produce either 1, 2 or 3 UTF-8 bytes - // Check for illegal surrogate words + // Check for illegal surrogate code units const __m128i v_d800 = _mm_set1_epi16((uint16_t)0xd800); const __m128i forbidden_bytemask = _mm_cmpeq_epi16(_mm_and_si128(in_16, v_f800), v_d800); if (static_cast(_mm_movemask_epi8(forbidden_bytemask)) != 0) { @@ -26627,7 +30752,7 @@ std::pair sse_convert_utf32_to_utf8_with_errors(const char32_t* b 2. [0000|0bbb|bbcc|cccc] => [110b|bbbb], [10cc|cccc] - two UTF-8 bytes 3. [aaaa|bbbb|bbcc|cccc] => [1110|aaaa], [10bb|bbbb], [10cc|cccc] - three UTF-8 bytes - We expand the input word (16-bit) into two words (32-bit), thus + We expand the input word (16-bit) into two code units (32-bit), thus we have room for four bytes. However, we need five distinct bit layouts. Note that the last byte in cases #2 and #3 is the same. @@ -26638,7 +30763,7 @@ std::pair sse_convert_utf32_to_utf8_with_errors(const char32_t* b either byte 1 for case #2 or byte 2 for case #3. Note that they differ by exactly one bit. - Finally from these two words we build proper UTF-8 sequence, taking + Finally from these two code units we build proper UTF-8 sequence, taking into account the case (i.e, the number of bytes to write). */ /** @@ -26666,321 +30791,709 @@ std::pair sse_convert_utf32_to_utf8_with_errors(const char32_t* b const __m128i s4 = _mm_xor_si128(s3, m0); #undef simdutf_vec - // 4. expand words 16-bit => 32-bit - const __m128i out0 = _mm_unpacklo_epi16(t2, s4); - const __m128i out1 = _mm_unpackhi_epi16(t2, s4); + // 4. expand code units 16-bit => 32-bit + const __m128i out0 = _mm_unpacklo_epi16(t2, s4); + const __m128i out1 = _mm_unpackhi_epi16(t2, s4); + + // 5. compress 32-bit code units into 1, 2 or 3 bytes -- 2 x shuffle + const uint16_t mask = (one_byte_bitmask & 0x5555) | + (one_or_two_bytes_bitmask & 0xaaaa); + if(mask == 0) { + // We only have three-byte code units. Use fast path. + const __m128i shuffle = _mm_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); + const __m128i utf8_0 = _mm_shuffle_epi8(out0, shuffle); + const __m128i utf8_1 = _mm_shuffle_epi8(out1, shuffle); + _mm_storeu_si128((__m128i*)utf8_output, utf8_0); + utf8_output += 12; + _mm_storeu_si128((__m128i*)utf8_output, utf8_1); + utf8_output += 12; + buf += 8; + continue; + } + const uint8_t mask0 = uint8_t(mask); + + const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; + const __m128i shuffle0 = _mm_loadu_si128((__m128i*)(row0 + 1)); + const __m128i utf8_0 = _mm_shuffle_epi8(out0, shuffle0); + + const uint8_t mask1 = static_cast(mask >> 8); + + const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; + const __m128i shuffle1 = _mm_loadu_si128((__m128i*)(row1 + 1)); + const __m128i utf8_1 = _mm_shuffle_epi8(out1, shuffle1); + + _mm_storeu_si128((__m128i*)utf8_output, utf8_0); + utf8_output += row0[0]; + _mm_storeu_si128((__m128i*)utf8_output, utf8_1); + utf8_output += row1[0]; + + buf += 8; + } else { + // case: at least one 32-bit word produce a surrogate pair in UTF-16 <=> will produce four UTF-8 bytes + // Let us do a scalar fallback. + // It may seem wasteful to use scalar code, but being efficient with SIMD + // in the presence of surrogate pairs may require non-trivial tables. + size_t forward = 15; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint32_t word = buf[k]; + if((word & 0xFFFFFF80)==0) { + *utf8_output++ = char(word); + } else if((word & 0xFFFFF800)==0) { + *utf8_output++ = char((word>>6) | 0b11000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else if((word &0xFFFF0000 )==0) { + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), utf8_output); } + *utf8_output++ = char((word>>12) | 0b11100000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } else { + if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf- start + k), utf8_output); } + *utf8_output++ = char((word>>18) | 0b11110000); + *utf8_output++ = char(((word>>12) & 0b111111) | 0b10000000); + *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); + *utf8_output++ = char((word & 0b111111) | 0b10000000); + } + } + buf += k; + } + } // while + + return std::make_pair(result(error_code::SUCCESS, buf - start), utf8_output); +} +/* end file src/westmere/sse_convert_utf32_to_utf8.cpp */ +/* begin file src/westmere/sse_convert_utf32_to_utf16.cpp */ +template +std::pair sse_convert_utf32_to_utf16(const char32_t* buf, size_t len, char16_t* utf16_output) { + + const char32_t* end = buf + len; + + const __m128i v_0000 = _mm_setzero_si128(); + const __m128i v_ffff0000 = _mm_set1_epi32((int32_t)0xffff0000); + __m128i forbidden_bytemask = _mm_setzero_si128(); + + while (buf + 8 <= end) { + __m128i in = _mm_loadu_si128((__m128i*)buf); + __m128i nextin = _mm_loadu_si128((__m128i*)buf+1); + const __m128i saturation_bytemask = _mm_cmpeq_epi32(_mm_and_si128(_mm_or_si128(in, nextin), v_ffff0000), v_0000); + const uint32_t saturation_bitmask = static_cast(_mm_movemask_epi8(saturation_bytemask)); + + // Check if no bits set above 16th + if (saturation_bitmask == 0xffff) { + // Pack UTF-32 to UTF-16 + __m128i utf16_packed = _mm_packus_epi32(in, nextin); + + const __m128i v_f800 = _mm_set1_epi16((uint16_t)0xf800); + const __m128i v_d800 = _mm_set1_epi16((uint16_t)0xd800); + forbidden_bytemask = _mm_or_si128(forbidden_bytemask, _mm_cmpeq_epi16(_mm_and_si128(utf16_packed, v_f800), v_d800)); + + if (big_endian) { + const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); + utf16_packed = _mm_shuffle_epi8(utf16_packed, swap); + } + + _mm_storeu_si128((__m128i*)utf16_output, utf16_packed); + utf16_output += 8; + buf += 8; + } else { + size_t forward = 7; + size_t k = 0; + if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} + for(; k < forward; k++) { + uint32_t word = buf[k]; + if((word & 0xFFFF0000)==0) { + // will not generate a surrogate pair + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, utf16_output); } + *utf16_output++ = big_endian ? char16_t((uint16_t(word) >> 8) | (uint16_t(word) << 8)) : char16_t(word); + } else { + // will generate a surrogate pair + if (word > 0x10FFFF) { return std::make_pair(nullptr, utf16_output); } + word -= 0x10000; + uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); + uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); + if (big_endian) { + high_surrogate = uint16_t((high_surrogate >> 8) | (high_surrogate << 8)); + low_surrogate = uint16_t((low_surrogate >> 8) | (low_surrogate << 8)); + } + *utf16_output++ = char16_t(high_surrogate); + *utf16_output++ = char16_t(low_surrogate); + } + } + buf += k; + } + } + + // check for invalid input + if (static_cast(_mm_movemask_epi8(forbidden_bytemask)) != 0) { return std::make_pair(nullptr, utf16_output); } + + return std::make_pair(buf, utf16_output); +} - // 5. compress 32-bit words into 1, 2 or 3 bytes -- 2 x shuffle - const uint16_t mask = (one_byte_bitmask & 0x5555) | - (one_or_two_bytes_bitmask & 0xaaaa); - if(mask == 0) { - // We only have three-byte words. Use fast path. - const __m128i shuffle = _mm_setr_epi8(2,3,1,6,7,5,10,11,9,14,15,13,-1,-1,-1,-1); - const __m128i utf8_0 = _mm_shuffle_epi8(out0, shuffle); - const __m128i utf8_1 = _mm_shuffle_epi8(out1, shuffle); - _mm_storeu_si128((__m128i*)utf8_output, utf8_0); - utf8_output += 12; - _mm_storeu_si128((__m128i*)utf8_output, utf8_1); - utf8_output += 12; - buf += 8; - continue; - } - const uint8_t mask0 = uint8_t(mask); - const uint8_t* row0 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask0][0]; - const __m128i shuffle0 = _mm_loadu_si128((__m128i*)(row0 + 1)); - const __m128i utf8_0 = _mm_shuffle_epi8(out0, shuffle0); +template +std::pair sse_convert_utf32_to_utf16_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) { + const char32_t* start = buf; + const char32_t* end = buf + len; - const uint8_t mask1 = static_cast(mask >> 8); + const __m128i v_0000 = _mm_setzero_si128(); + const __m128i v_ffff0000 = _mm_set1_epi32((int32_t)0xffff0000); - const uint8_t* row1 = &simdutf::tables::utf16_to_utf8::pack_1_2_3_utf8_bytes[mask1][0]; - const __m128i shuffle1 = _mm_loadu_si128((__m128i*)(row1 + 1)); - const __m128i utf8_1 = _mm_shuffle_epi8(out1, shuffle1); + while (buf + 8 <= end) { + __m128i in = _mm_loadu_si128((__m128i*)buf); + __m128i nextin = _mm_loadu_si128((__m128i*)buf+1); + const __m128i saturation_bytemask = _mm_cmpeq_epi32(_mm_and_si128(_mm_or_si128(in, nextin), v_ffff0000), v_0000); + const uint32_t saturation_bitmask = static_cast(_mm_movemask_epi8(saturation_bytemask)); - _mm_storeu_si128((__m128i*)utf8_output, utf8_0); - utf8_output += row0[0]; - _mm_storeu_si128((__m128i*)utf8_output, utf8_1); - utf8_output += row1[0]; + // Check if no bits set above 16th + if (saturation_bitmask == 0xffff) { + // Pack UTF-32 to UTF-16 + __m128i utf16_packed = _mm_packus_epi32(in, nextin); + + const __m128i v_f800 = _mm_set1_epi16((uint16_t)0xf800); + const __m128i v_d800 = _mm_set1_epi16((uint16_t)0xd800); + const __m128i forbidden_bytemask = _mm_cmpeq_epi16(_mm_and_si128(utf16_packed, v_f800), v_d800); + if (static_cast(_mm_movemask_epi8(forbidden_bytemask)) != 0) { + return std::make_pair(result(error_code::SURROGATE, buf - start), utf16_output); + } + + if (big_endian) { + const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); + utf16_packed = _mm_shuffle_epi8(utf16_packed, swap); + } + _mm_storeu_si128((__m128i*)utf16_output, utf16_packed); + utf16_output += 8; buf += 8; } else { - // case: at least one 32-bit word produce a surrogate pair in UTF-16 <=> will produce four UTF-8 bytes - // Let us do a scalar fallback. - // It may seem wasteful to use scalar code, but being efficient with SIMD - // in the presence of surrogate pairs may require non-trivial tables. - size_t forward = 15; + size_t forward = 7; size_t k = 0; if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} for(; k < forward; k++) { uint32_t word = buf[k]; - if((word & 0xFFFFFF80)==0) { - *utf8_output++ = char(word); - } else if((word & 0xFFFFF800)==0) { - *utf8_output++ = char((word>>6) | 0b11000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); - } else if((word &0xFFFF0000 )==0) { - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), utf8_output); } - *utf8_output++ = char((word>>12) | 0b11100000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); + if((word & 0xFFFF0000)==0) { + // will not generate a surrogate pair + if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), utf16_output); } + *utf16_output++ = big_endian ? char16_t((uint16_t(word) >> 8) | (uint16_t(word) << 8)) : char16_t(word); } else { - if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf- start + k), utf8_output); } - *utf8_output++ = char((word>>18) | 0b11110000); - *utf8_output++ = char(((word>>12) & 0b111111) | 0b10000000); - *utf8_output++ = char(((word>>6) & 0b111111) | 0b10000000); - *utf8_output++ = char((word & 0b111111) | 0b10000000); + // will generate a surrogate pair + if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), utf16_output); } + word -= 0x10000; + uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); + uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); + if (big_endian) { + high_surrogate = uint16_t((high_surrogate >> 8) | (high_surrogate << 8)); + low_surrogate = uint16_t((low_surrogate >> 8) | (low_surrogate << 8)); + } + *utf16_output++ = char16_t(high_surrogate); + *utf16_output++ = char16_t(low_surrogate); } } buf += k; } - } // while + } - return std::make_pair(result(error_code::SUCCESS, buf - start), utf8_output); + return std::make_pair(result(error_code::SUCCESS, buf - start), utf16_output); } -/* end file src/westmere/sse_convert_utf32_to_utf8.cpp */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=westmere/sse_convert_utf32_to_utf16.cpp -/* begin file src/westmere/sse_convert_utf32_to_utf16.cpp */ -template -std::pair sse_convert_utf32_to_utf16(const char32_t* buf, size_t len, char16_t* utf16_output) { +/* end file src/westmere/sse_convert_utf32_to_utf16.cpp */ + +} // unnamed namespace +} // namespace westmere +} // namespace simdutf + +/* begin file src/generic/buf_block_reader.h */ +namespace simdutf { +namespace westmere { +namespace { + +// Walks through a buffer in block-sized increments, loading the last part with spaces +template +struct buf_block_reader { +public: + simdutf_really_inline buf_block_reader(const uint8_t *_buf, size_t _len); + simdutf_really_inline size_t block_index(); + simdutf_really_inline bool has_full_block() const; + simdutf_really_inline const uint8_t *full_block() const; + /** + * Get the last block, padded with spaces. + * + * There will always be a last block, with at least 1 byte, unless len == 0 (in which case this + * function fills the buffer with spaces and returns 0. In particular, if len == STEP_SIZE there + * will be 0 full_blocks and 1 remainder block with STEP_SIZE bytes and no spaces for padding. + * + * @return the number of effective characters in the last block. + */ + simdutf_really_inline size_t get_remainder(uint8_t *dst) const; + simdutf_really_inline void advance(); +private: + const uint8_t *buf; + const size_t len; + const size_t lenminusstep; + size_t idx; +}; + +// Routines to print masks and text for debugging bitmask operations +simdutf_unused static char * format_input_text_64(const uint8_t *text) { + static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); + for (size_t i=0; i); i++) { + buf[i] = int8_t(text[i]) < ' ' ? '_' : int8_t(text[i]); + } + buf[sizeof(simd8x64)] = '\0'; + return buf; +} + +// Routines to print masks and text for debugging bitmask operations +simdutf_unused static char * format_input_text(const simd8x64& in) { + static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); + in.store(reinterpret_cast(buf)); + for (size_t i=0; i); i++) { + if (buf[i] < ' ') { buf[i] = '_'; } + } + buf[sizeof(simd8x64)] = '\0'; + return buf; +} + +simdutf_unused static char * format_mask(uint64_t mask) { + static char *buf = reinterpret_cast(malloc(64 + 1)); + for (size_t i=0; i<64; i++) { + buf[i] = (mask & (size_t(1) << i)) ? 'X' : ' '; + } + buf[64] = '\0'; + return buf; +} + +template +simdutf_really_inline buf_block_reader::buf_block_reader(const uint8_t *_buf, size_t _len) : buf{_buf}, len{_len}, lenminusstep{len < STEP_SIZE ? 0 : len - STEP_SIZE}, idx{0} {} + +template +simdutf_really_inline size_t buf_block_reader::block_index() { return idx; } + +template +simdutf_really_inline bool buf_block_reader::has_full_block() const { + return idx < lenminusstep; +} + +template +simdutf_really_inline const uint8_t *buf_block_reader::full_block() const { + return &buf[idx]; +} + +template +simdutf_really_inline size_t buf_block_reader::get_remainder(uint8_t *dst) const { + if(len == idx) { return 0; } // memcpy(dst, null, 0) will trigger an error with some sanitizers + std::memset(dst, 0x20, STEP_SIZE); // std::memset STEP_SIZE because it's more efficient to write out 8 or 16 bytes at once. + std::memcpy(dst, buf + idx, len - idx); + return len - idx; +} + +template +simdutf_really_inline void buf_block_reader::advance() { + idx += STEP_SIZE; +} + +} // unnamed namespace +} // namespace westmere +} // namespace simdutf +/* end file src/generic/buf_block_reader.h */ +/* begin file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +namespace simdutf { +namespace westmere { +namespace { +namespace utf8_validation { + +using namespace simd; + + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) +// Bit 1 = Too Long (ASCII followed by continuation) +// Bit 2 = Overlong 3-byte +// Bit 4 = Surrogate +// Bit 5 = Overlong 2-byte +// Bit 7 = Two Continuations + constexpr const uint8_t TOO_SHORT = 1<<0; // 11______ 0_______ + // 11______ 11______ + constexpr const uint8_t TOO_LONG = 1<<1; // 0_______ 10______ + constexpr const uint8_t OVERLONG_3 = 1<<2; // 11100000 100_____ + constexpr const uint8_t SURROGATE = 1<<4; // 11101101 101_____ + constexpr const uint8_t OVERLONG_2 = 1<<5; // 1100000_ 10______ + constexpr const uint8_t TWO_CONTS = 1<<7; // 10______ 10______ + constexpr const uint8_t TOO_LARGE = 1<<3; // 11110100 1001____ + // 11110100 101_____ + // 11110101 1001____ + // 11110101 101_____ + // 1111011_ 1001____ + // 1111011_ 101_____ + // 11111___ 1001____ + // 11111___ 101_____ + constexpr const uint8_t TOO_LARGE_1000 = 1<<6; + // 11110101 1000____ + // 1111011_ 1000____ + // 11111___ 1000____ + constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + + const simd8 byte_1_high = prev1.shr<4>().lookup_16( + // 0_______ ________ + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + TOO_LONG, TOO_LONG, TOO_LONG, TOO_LONG, + // 10______ ________ + TWO_CONTS, TWO_CONTS, TWO_CONTS, TWO_CONTS, + // 1100____ ________ + TOO_SHORT | OVERLONG_2, + // 1101____ ________ + TOO_SHORT, + // 1110____ ________ + TOO_SHORT | OVERLONG_3 | SURROGATE, + // 1111____ ________ + TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 + ); + constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . + const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( + // ____0000 ________ + CARRY | OVERLONG_3 | OVERLONG_2 | OVERLONG_4, + // ____0001 ________ + CARRY | OVERLONG_2, + // ____001_ ________ + CARRY, + CARRY, - const char32_t* end = buf + len; + // ____0100 ________ + CARRY | TOO_LARGE, + // ____0101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____011_ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, - const __m128i v_0000 = _mm_setzero_si128(); - const __m128i v_ffff0000 = _mm_set1_epi32((int32_t)0xffff0000); - __m128i forbidden_bytemask = _mm_setzero_si128(); + // ____1___ ________ + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000, + // ____1101 ________ + CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, + CARRY | TOO_LARGE | TOO_LARGE_1000, + CARRY | TOO_LARGE | TOO_LARGE_1000 + ); + const simd8 byte_2_high = input.shr<4>().lookup_16( + // ________ 0_______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT, - while (buf + 8 <= end) { - __m128i in = _mm_loadu_si128((__m128i*)buf); - __m128i nextin = _mm_loadu_si128((__m128i*)buf+1); - const __m128i saturation_bytemask = _mm_cmpeq_epi32(_mm_and_si128(_mm_or_si128(in, nextin), v_ffff0000), v_0000); - const uint32_t saturation_bitmask = static_cast(_mm_movemask_epi8(saturation_bytemask)); + // ________ 1000____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE_1000 | OVERLONG_4, + // ________ 1001____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | OVERLONG_3 | TOO_LARGE, + // ________ 101_____ + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, + TOO_LONG | OVERLONG_2 | TWO_CONTS | SURROGATE | TOO_LARGE, - // Check if no bits set above 16th - if (saturation_bitmask == 0xffff) { - // Pack UTF-32 to UTF-16 - __m128i utf16_packed = _mm_packus_epi32(in, nextin); + // ________ 11______ + TOO_SHORT, TOO_SHORT, TOO_SHORT, TOO_SHORT + ); + return (byte_1_high & byte_1_low & byte_2_high); + } + simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, + const simd8 prev_input, const simd8 sc) { + simd8 prev2 = input.prev<2>(prev_input); + simd8 prev3 = input.prev<3>(prev_input); + simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); + simd8 must23_80 = must23 & uint8_t(0x80); + return must23_80 ^ sc; + } - const __m128i v_f800 = _mm_set1_epi16((uint16_t)0xf800); - const __m128i v_d800 = _mm_set1_epi16((uint16_t)0xd800); - forbidden_bytemask = _mm_or_si128(forbidden_bytemask, _mm_cmpeq_epi16(_mm_and_si128(utf16_packed, v_f800), v_d800)); + // + // Return nonzero if there are incomplete multibyte characters at the end of the block: + // e.g. if there is a 4-byte character, but it's 3 bytes from the end. + // + simdutf_really_inline simd8 is_incomplete(const simd8 input) { + // If the previous input's last 3 bytes match this, they're too short (they ended at EOF): + // ... 1111____ 111_____ 11______ + static const uint8_t max_array[32] = { + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 0b11110000u-1, 0b11100000u-1, 0b11000000u-1 + }; + const simd8 max_value(&max_array[sizeof(max_array)-sizeof(simd8)]); + return input.gt_bits(max_value); + } - if (big_endian) { - const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - utf16_packed = _mm_shuffle_epi8(utf16_packed, swap); - } + struct utf8_checker { + // If this is nonzero, there has been a UTF-8 error. + simd8 error; + // The last input we received + simd8 prev_input_block; + // Whether the last input we received was incomplete (used for ASCII fast path) + simd8 prev_incomplete; - _mm_storeu_si128((__m128i*)utf16_output, utf16_packed); - utf16_output += 8; - buf += 8; - } else { - size_t forward = 7; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint32_t word = buf[k]; - if((word & 0xFFFF0000)==0) { - // will not generate a surrogate pair - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(nullptr, utf16_output); } - *utf16_output++ = big_endian ? char16_t((uint16_t(word) >> 8) | (uint16_t(word) << 8)) : char16_t(word); - } else { - // will generate a surrogate pair - if (word > 0x10FFFF) { return std::make_pair(nullptr, utf16_output); } - word -= 0x10000; - uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); - uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); - if (big_endian) { - high_surrogate = uint16_t((high_surrogate >> 8) | (high_surrogate << 8)); - low_surrogate = uint16_t((low_surrogate >> 8) | (low_surrogate << 8)); - } - *utf16_output++ = char16_t(high_surrogate); - *utf16_output++ = char16_t(low_surrogate); - } - } - buf += k; + // + // Check whether the current bytes are valid UTF-8. + // + simdutf_really_inline void check_utf8_bytes(const simd8 input, const simd8 prev_input) { + // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes + // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) + simd8 prev1 = input.prev<1>(prev_input); + simd8 sc = check_special_cases(input, prev1); + this->error |= check_multibyte_lengths(input, prev_input, sc); } - } - // check for invalid input - if (static_cast(_mm_movemask_epi8(forbidden_bytemask)) != 0) { return std::make_pair(nullptr, utf16_output); } + // The only problem that can happen at EOF is that a multibyte character is too short + // or a byte value too large in the last bytes: check_special_cases only checks for bytes + // too large in the first of two bytes. + simdutf_really_inline void check_eof() { + // If the previous block had incomplete UTF-8 characters at the end, an ASCII block can't + // possibly finish them. + this->error |= this->prev_incomplete; + } - return std::make_pair(buf, utf16_output); -} + simdutf_really_inline void check_next_input(const simd8x64& input) { + if(simdutf_likely(is_ascii(input))) { + this->error |= this->prev_incomplete; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], this->prev_input_block); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], this->prev_input_block); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + this->prev_incomplete = is_incomplete(input.chunks[simd8x64::NUM_CHUNKS-1]); + this->prev_input_block = input.chunks[simd8x64::NUM_CHUNKS-1]; + } + } -template -std::pair sse_convert_utf32_to_utf16_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) { - const char32_t* start = buf; - const char32_t* end = buf + len; + // do not forget to call check_eof! + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); + } - const __m128i v_0000 = _mm_setzero_si128(); - const __m128i v_ffff0000 = _mm_set1_epi32((int32_t)0xffff0000); + }; // struct utf8_checker +} // namespace utf8_validation - while (buf + 8 <= end) { - __m128i in = _mm_loadu_si128((__m128i*)buf); - __m128i nextin = _mm_loadu_si128((__m128i*)buf+1); - const __m128i saturation_bytemask = _mm_cmpeq_epi32(_mm_and_si128(_mm_or_si128(in, nextin), v_ffff0000), v_0000); - const uint32_t saturation_bitmask = static_cast(_mm_movemask_epi8(saturation_bytemask)); +using utf8_validation::utf8_checker; - // Check if no bits set above 16th - if (saturation_bitmask == 0xffff) { - // Pack UTF-32 to UTF-16 - __m128i utf16_packed = _mm_packus_epi32(in, nextin); +} // unnamed namespace +} // namespace westmere +} // namespace simdutf +/* end file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +/* begin file src/generic/utf8_validation/utf8_validator.h */ +namespace simdutf { +namespace westmere { +namespace { +namespace utf8_validation { - const __m128i v_f800 = _mm_set1_epi16((uint16_t)0xf800); - const __m128i v_d800 = _mm_set1_epi16((uint16_t)0xd800); - const __m128i forbidden_bytemask = _mm_cmpeq_epi16(_mm_and_si128(utf16_packed, v_f800), v_d800); - if (static_cast(_mm_movemask_epi8(forbidden_bytemask)) != 0) { - return std::make_pair(result(error_code::SURROGATE, buf - start), utf16_output); - } +/** + * Validates that the string is actual UTF-8. + */ +template +bool generic_validate_utf8(const uint8_t * input, size_t length) { + checker c{}; + buf_block_reader<64> reader(input, length); + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + c.check_next_input(in); + reader.advance(); + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + c.check_next_input(in); + reader.advance(); + c.check_eof(); + return !c.errors(); +} - if (big_endian) { - const __m128i swap = _mm_setr_epi8(1, 0, 3, 2, 5, 4, 7, 6, 9, 8, 11, 10, 13, 12, 15, 14); - utf16_packed = _mm_shuffle_epi8(utf16_packed, swap); - } +bool generic_validate_utf8(const char * input, size_t length) { + return generic_validate_utf8(reinterpret_cast(input),length); +} - _mm_storeu_si128((__m128i*)utf16_output, utf16_packed); - utf16_output += 8; - buf += 8; - } else { - size_t forward = 7; - size_t k = 0; - if(size_t(end - buf) < forward + 1) { forward = size_t(end - buf - 1);} - for(; k < forward; k++) { - uint32_t word = buf[k]; - if((word & 0xFFFF0000)==0) { - // will not generate a surrogate pair - if (word >= 0xD800 && word <= 0xDFFF) { return std::make_pair(result(error_code::SURROGATE, buf - start + k), utf16_output); } - *utf16_output++ = big_endian ? char16_t((uint16_t(word) >> 8) | (uint16_t(word) << 8)) : char16_t(word); - } else { - // will generate a surrogate pair - if (word > 0x10FFFF) { return std::make_pair(result(error_code::TOO_LARGE, buf - start + k), utf16_output); } - word -= 0x10000; - uint16_t high_surrogate = uint16_t(0xD800 + (word >> 10)); - uint16_t low_surrogate = uint16_t(0xDC00 + (word & 0x3FF)); - if (big_endian) { - high_surrogate = uint16_t((high_surrogate >> 8) | (high_surrogate << 8)); - low_surrogate = uint16_t((low_surrogate >> 8) | (low_surrogate << 8)); - } - *utf16_output++ = char16_t(high_surrogate); - *utf16_output++ = char16_t(low_surrogate); - } +/** + * Validates that the string is actual UTF-8 and stops on errors. + */ +template +result generic_validate_utf8_with_errors(const uint8_t * input, size_t length) { + checker c{}; + buf_block_reader<64> reader(input, length); + size_t count{0}; + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + c.check_next_input(in); + if(c.errors()) { + if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk + result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input + count), length - count); + res.count += count; + return res; } - buf += k; + reader.advance(); + count += 64; } - } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + c.check_next_input(in); + reader.advance(); + c.check_eof(); + if (c.errors()) { + if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk + result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input) + count, length - count); + res.count += count; + return res; + } else { + return result(error_code::SUCCESS, length); + } +} - return std::make_pair(result(error_code::SUCCESS, buf - start), utf16_output); +result generic_validate_utf8_with_errors(const char * input, size_t length) { + return generic_validate_utf8_with_errors(reinterpret_cast(input),length); } -/* end file src/westmere/sse_convert_utf32_to_utf16.cpp */ -} // unnamed namespace -} // namespace westmere -} // namespace simdutf +template +bool generic_validate_ascii(const uint8_t * input, size_t length) { + buf_block_reader<64> reader(input, length); + uint8_t blocks[64]{}; + simd::simd8x64 running_or(blocks); + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + running_or |= in; + reader.advance(); + } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + running_or |= in; + return running_or.is_ascii(); +} -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/buf_block_reader.h -/* begin file src/generic/buf_block_reader.h */ -namespace simdutf { -namespace westmere { -namespace { +bool generic_validate_ascii(const char * input, size_t length) { + return generic_validate_ascii(reinterpret_cast(input),length); +} -// Walks through a buffer in block-sized increments, loading the last part with spaces -template -struct buf_block_reader { -public: - simdutf_really_inline buf_block_reader(const uint8_t *_buf, size_t _len); - simdutf_really_inline size_t block_index(); - simdutf_really_inline bool has_full_block() const; - simdutf_really_inline const uint8_t *full_block() const; - /** - * Get the last block, padded with spaces. - * - * There will always be a last block, with at least 1 byte, unless len == 0 (in which case this - * function fills the buffer with spaces and returns 0. In particular, if len == STEP_SIZE there - * will be 0 full_blocks and 1 remainder block with STEP_SIZE bytes and no spaces for padding. - * - * @return the number of effective characters in the last block. - */ - simdutf_really_inline size_t get_remainder(uint8_t *dst) const; - simdutf_really_inline void advance(); -private: - const uint8_t *buf; - const size_t len; - const size_t lenminusstep; - size_t idx; -}; +template +result generic_validate_ascii_with_errors(const uint8_t * input, size_t length) { + buf_block_reader<64> reader(input, length); + size_t count{0}; + while (reader.has_full_block()) { + simd::simd8x64 in(reader.full_block()); + if (!in.is_ascii()) { + result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); + return result(res.error, count + res.count); + } + reader.advance(); -// Routines to print masks and text for debugging bitmask operations -simdutf_unused static char * format_input_text_64(const uint8_t *text) { - static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); - for (size_t i=0; i); i++) { - buf[i] = int8_t(text[i]) < ' ' ? '_' : int8_t(text[i]); + count += 64; } - buf[sizeof(simd8x64)] = '\0'; - return buf; -} - -// Routines to print masks and text for debugging bitmask operations -simdutf_unused static char * format_input_text(const simd8x64& in) { - static char *buf = reinterpret_cast(malloc(sizeof(simd8x64) + 1)); - in.store(reinterpret_cast(buf)); - for (size_t i=0; i); i++) { - if (buf[i] < ' ') { buf[i] = '_'; } + uint8_t block[64]{}; + reader.get_remainder(block); + simd::simd8x64 in(block); + if (!in.is_ascii()) { + result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); + return result(res.error, count + res.count); + } else { + return result(error_code::SUCCESS, length); } - buf[sizeof(simd8x64)] = '\0'; - return buf; } -simdutf_unused static char * format_mask(uint64_t mask) { - static char *buf = reinterpret_cast(malloc(64 + 1)); - for (size_t i=0; i<64; i++) { - buf[i] = (mask & (size_t(1) << i)) ? 'X' : ' '; - } - buf[64] = '\0'; - return buf; +result generic_validate_ascii_with_errors(const char * input, size_t length) { + return generic_validate_ascii_with_errors(reinterpret_cast(input),length); } -template -simdutf_really_inline buf_block_reader::buf_block_reader(const uint8_t *_buf, size_t _len) : buf{_buf}, len{_len}, lenminusstep{len < STEP_SIZE ? 0 : len - STEP_SIZE}, idx{0} {} - -template -simdutf_really_inline size_t buf_block_reader::block_index() { return idx; } +} // namespace utf8_validation +} // unnamed namespace +} // namespace westmere +} // namespace simdutf +/* end file src/generic/utf8_validation/utf8_validator.h */ +// transcoding from UTF-8 to UTF-16 +/* begin file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ -template -simdutf_really_inline bool buf_block_reader::has_full_block() const { - return idx < lenminusstep; -} -template -simdutf_really_inline const uint8_t *buf_block_reader::full_block() const { - return &buf[idx]; -} +namespace simdutf { +namespace westmere { +namespace { +namespace utf8_to_utf16 { -template -simdutf_really_inline size_t buf_block_reader::get_remainder(uint8_t *dst) const { - if(len == idx) { return 0; } // memcpy(dst, null, 0) will trigger an error with some sanitizers - std::memset(dst, 0x20, STEP_SIZE); // std::memset STEP_SIZE because it's more efficient to write out 8 or 16 bytes at once. - std::memcpy(dst, buf + idx, len - idx); - return len - idx; -} +using namespace simd; -template -simdutf_really_inline void buf_block_reader::advance() { - idx += STEP_SIZE; +template +simdutf_warn_unused size_t convert_valid(const char* input, size_t size, + char16_t* utf16_output) noexcept { + // The implementation is not specific to haswell and should be moved to the generic directory. + size_t pos = 0; + char16_t* start{utf16_output}; + const size_t safety_margin = 16; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + // this loop could be unrolled further. For example, we could process the mask + // far more than 64 bytes. + simd8x64 in(reinterpret_cast(input + pos)); + if(in.is_ascii()) { + in.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // Slow path. We hope that the compiler will recognize that this is a slow path. + // Anything that is not a continuation mask is a 'leading byte', that is, the + // start of a new code point. + uint64_t utf8_continuation_mask = in.lt(-65 + 1); + // -65 is 0b10111111 in two-complement's, so largest possible continuation byte + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + // The *start* of code points is not so useful, rather, we want the *end* of code points. + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times when using solely + // the slow/regular path, and at least four times if there are fast paths. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + // + // Thus we may allow convert_masked_utf8_to_utf16 to process + // more bytes at a time under a fast-path mode where 16 bytes + // are consumed at once (e.g., when encountering ASCII). + size_t consumed = convert_masked_utf8_to_utf16(input + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + utf16_output += scalar::utf8_to_utf16::convert_valid(input + pos, size - pos, utf16_output); + return utf16_output - start; } +} // namespace utf8_to_utf16 } // unnamed namespace } // namespace westmere } // namespace simdutf -/* end file src/generic/buf_block_reader.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_lookup4_algorithm.h -/* begin file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ +/* end file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ +/* begin file src/generic/utf8_to_utf16/utf8_to_utf16.h */ + + namespace simdutf { namespace westmere { namespace { -namespace utf8_validation { - +namespace utf8_to_utf16 { using namespace simd; + simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { // Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) // Bit 1 = Too Long (ASCII followed by continuation) @@ -27074,37 +31587,18 @@ using namespace simd; simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, const simd8 prev_input, const simd8 sc) { simd8 prev2 = input.prev<2>(prev_input); - simd8 prev3 = input.prev<3>(prev_input); - simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); - simd8 must23_80 = must23 & uint8_t(0x80); - return must23_80 ^ sc; - } - - // - // Return nonzero if there are incomplete multibyte characters at the end of the block: - // e.g. if there is a 4-byte character, but it's 3 bytes from the end. - // - simdutf_really_inline simd8 is_incomplete(const simd8 input) { - // If the previous input's last 3 bytes match this, they're too short (they ended at EOF): - // ... 1111____ 111_____ 11______ - static const uint8_t max_array[32] = { - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 0b11110000u-1, 0b11100000u-1, 0b11000000u-1 - }; - const simd8 max_value(&max_array[sizeof(max_array)-sizeof(simd8)]); - return input.gt_bits(max_value); + simd8 prev3 = input.prev<3>(prev_input); + simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); + simd8 must23_80 = must23 & uint8_t(0x80); + return must23_80 ^ sc; } - struct utf8_checker { + + struct validating_transcoder { // If this is nonzero, there has been a UTF-8 error. simd8 error; - // The last input we received - simd8 prev_input_block; - // Whether the last input we received was incomplete (used for ASCII fast path) - simd8 prev_incomplete; + validating_transcoder() : error(uint8_t(0)) {} // // Check whether the current bytes are valid UTF-8. // @@ -27116,262 +31610,239 @@ using namespace simd; this->error |= check_multibyte_lengths(input, prev_input, sc); } - // The only problem that can happen at EOF is that a multibyte character is too short - // or a byte value too large in the last bytes: check_special_cases only checks for bytes - // too large in the first of two bytes. - simdutf_really_inline void check_eof() { - // If the previous block had incomplete UTF-8 characters at the end, an ASCII block can't - // possibly finish them. - this->error |= this->prev_incomplete; - } - simdutf_really_inline void check_next_input(const simd8x64& input) { - if(simdutf_likely(is_ascii(input))) { - this->error |= this->prev_incomplete; - } else { - // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], this->prev_input_block); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], this->prev_input_block); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + template + simdutf_really_inline size_t convert(const char* in, size_t size, char16_t* utf16_output) { + size_t pos = 0; + char16_t* start{utf16_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf16(in + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. } - this->prev_incomplete = is_incomplete(input.chunks[simd8x64::NUM_CHUNKS-1]); - this->prev_input_block = input.chunks[simd8x64::NUM_CHUNKS-1]; - } + if(errors()) { return 0; } + if(pos < size) { + size_t howmany = scalar::utf8_to_utf16::convert(in + pos, size - pos, utf16_output); + if(howmany == 0) { return 0; } + utf16_output += howmany; + } + return utf16_output - start; } - // do not forget to call check_eof! - simdutf_really_inline bool errors() const { - return this->error.any_bits_set_anywhere(); - } - - }; // struct utf8_checker -} // namespace utf8_validation - -using utf8_validation::utf8_checker; - -} // unnamed namespace -} // namespace westmere -} // namespace simdutf -/* end file src/generic/utf8_validation/utf8_lookup4_algorithm.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_validation/utf8_validator.h -/* begin file src/generic/utf8_validation/utf8_validator.h */ -namespace simdutf { -namespace westmere { -namespace { -namespace utf8_validation { - -/** - * Validates that the string is actual UTF-8. - */ -template -bool generic_validate_utf8(const uint8_t * input, size_t length) { - checker c{}; - buf_block_reader<64> reader(input, length); - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - c.check_next_input(in); - reader.advance(); - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - c.check_next_input(in); - reader.advance(); - c.check_eof(); - return !c.errors(); -} - -bool generic_validate_utf8(const char * input, size_t length) { - return generic_validate_utf8(reinterpret_cast(input),length); -} - -/** - * Validates that the string is actual UTF-8 and stops on errors. - */ -template -result generic_validate_utf8_with_errors(const uint8_t * input, size_t length) { - checker c{}; - buf_block_reader<64> reader(input, length); - size_t count{0}; - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - c.check_next_input(in); - if(c.errors()) { - if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk - result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input + count), length - count); - res.count += count; + template + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char16_t* utf16_output) { + size_t pos = 0; + char16_t* start{utf16_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store_ascii_as_utf16(utf16_output); + utf16_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + if (errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + res.count += pos; + return res; + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_utf16(in + pos, + utf8_end_of_code_point_mask, utf16_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + res.count += pos; return res; } - reader.advance(); - count += 64; - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - c.check_next_input(in); - reader.advance(); - c.check_eof(); - if (c.errors()) { - if (count != 0) { count--; } // Sometimes the error is only detected in the next chunk - result res = scalar::utf8::rewind_and_validate_with_errors(reinterpret_cast(input), reinterpret_cast(input) + count, length - count); - res.count += count; - return res; - } else { - return result(error_code::SUCCESS, length); - } -} - -result generic_validate_utf8_with_errors(const char * input, size_t length) { - return generic_validate_utf8_with_errors(reinterpret_cast(input),length); -} - -template -bool generic_validate_ascii(const uint8_t * input, size_t length) { - buf_block_reader<64> reader(input, length); - uint8_t blocks[64]{}; - simd::simd8x64 running_or(blocks); - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - running_or |= in; - reader.advance(); + if(pos < size) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + if (res.error) { // In case of error, we want the error position + res.count += pos; + return res; + } else { // In case of success, we want the number of word written + utf16_output += res.count; + } + } + return result(error_code::SUCCESS, utf16_output - start); } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - running_or |= in; - return running_or.is_ascii(); -} - -bool generic_validate_ascii(const char * input, size_t length) { - return generic_validate_ascii(reinterpret_cast(input),length); -} -template -result generic_validate_ascii_with_errors(const uint8_t * input, size_t length) { - buf_block_reader<64> reader(input, length); - size_t count{0}; - while (reader.has_full_block()) { - simd::simd8x64 in(reader.full_block()); - if (!in.is_ascii()) { - result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); - return result(res.error, count + res.count); + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); } - reader.advance(); - - count += 64; - } - uint8_t block[64]{}; - reader.get_remainder(block); - simd::simd8x64 in(block); - if (!in.is_ascii()) { - result res = scalar::ascii::validate_with_errors(reinterpret_cast(input + count), length - count); - return result(res.error, count + res.count); - } else { - return result(error_code::SUCCESS, length); - } -} - -result generic_validate_ascii_with_errors(const char * input, size_t length) { - return generic_validate_ascii_with_errors(reinterpret_cast(input),length); -} -} // namespace utf8_validation + }; // struct utf8_checker +} // utf8_to_utf16 namespace } // unnamed namespace } // namespace westmere } // namespace simdutf -/* end file src/generic/utf8_validation/utf8_validator.h */ -// transcoding from UTF-8 to UTF-16 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/valid_utf8_to_utf16.h -/* begin file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ - +/* end file src/generic/utf8_to_utf16/utf8_to_utf16.h */ +// transcoding from UTF-8 to UTF-32 +/* begin file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ namespace simdutf { namespace westmere { namespace { -namespace utf8_to_utf16 { +namespace utf8_to_utf32 { using namespace simd; -template + simdutf_warn_unused size_t convert_valid(const char* input, size_t size, - char16_t* utf16_output) noexcept { - // The implementation is not specific to haswell and should be moved to the generic directory. + char32_t* utf32_output) noexcept { size_t pos = 0; - char16_t* start{utf16_output}; + char32_t* start{utf32_output}; const size_t safety_margin = 16; // to avoid overruns! while(pos + 64 + safety_margin <= size) { - // this loop could be unrolled further. For example, we could process the mask - // far more than 64 bytes. simd8x64 in(reinterpret_cast(input + pos)); if(in.is_ascii()) { - in.store_ascii_as_utf16(utf16_output); - utf16_output += 64; + in.store_ascii_as_utf32(utf32_output); + utf32_output += 64; pos += 64; } else { - // Slow path. We hope that the compiler will recognize that this is a slow path. - // Anything that is not a continuation mask is a 'leading byte', that is, the - // start of a new code point. - uint64_t utf8_continuation_mask = in.lt(-65 + 1); - // -65 is 0b10111111 in two-complement's, so largest possible continuation byte - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - // The *start* of code points is not so useful, rather, we want the *end* of code points. - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - // We process in blocks of up to 12 bytes except possibly - // for fast paths which may process up to 16 bytes. For the - // slow path to work, we should have at least 12 input bytes left. - size_t max_starting_point = (pos + 64) - 12; - // Next loop is going to run at least five times when using solely - // the slow/regular path, and at least four times if there are fast paths. - while(pos < max_starting_point) { - // Performance note: our ability to compute 'consumed' and - // then shift and recompute is critical. If there is a - // latency of, say, 4 cycles on getting 'consumed', then - // the inner loop might have a total latency of about 6 cycles. - // Yet we process between 6 to 12 inputs bytes, thus we get - // a speed limit between 1 cycle/byte and 0.5 cycle/byte - // for this section of the code. Hence, there is a limit - // to how much we can further increase this latency before - // it seriously harms performance. - // - // Thus we may allow convert_masked_utf8_to_utf16 to process - // more bytes at a time under a fast-path mode where 16 bytes - // are consumed at once (e.g., when encountering ASCII). - size_t consumed = convert_masked_utf8_to_utf16(input + pos, - utf8_end_of_code_point_mask, utf16_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; + // -65 is 0b10111111 in two-complement's, so largest possible continuation byte + uint64_t utf8_continuation_mask = in.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + size_t max_starting_point = (pos + 64) - 12; + while(pos < max_starting_point) { + size_t consumed = convert_masked_utf8_to_utf32(input + pos, + utf8_end_of_code_point_mask, utf32_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; } - // At this point there may remain between 0 and 12 bytes in the - // 64-byte block. These bytes will be processed again. So we have an - // 80% efficiency (in the worst case). In practice we expect an - // 85% to 90% efficiency. } } - utf16_output += scalar::utf8_to_utf16::convert_valid(input + pos, size - pos, utf16_output); - return utf16_output - start; + utf32_output += scalar::utf8_to_utf32::convert_valid(input + pos, size - pos, utf32_output); + return utf32_output - start; } -} // namespace utf8_to_utf16 + +} // namespace utf8_to_utf32 } // unnamed namespace } // namespace westmere } // namespace simdutf -/* end file src/generic/utf8_to_utf16/valid_utf8_to_utf16.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf16/utf8_to_utf16.h -/* begin file src/generic/utf8_to_utf16/utf8_to_utf16.h */ +/* end file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ +/* begin file src/generic/utf8_to_utf32/utf8_to_utf32.h */ namespace simdutf { namespace westmere { namespace { -namespace utf8_to_utf16 { +namespace utf8_to_utf32 { using namespace simd; @@ -27492,28 +31963,28 @@ using namespace simd; } - template - simdutf_really_inline size_t convert(const char* in, size_t size, char16_t* utf16_output) { + + simdutf_really_inline size_t convert(const char* in, size_t size, char32_t* utf32_output) { size_t pos = 0; - char16_t* start{utf16_output}; + char32_t* start{utf32_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 8; margin--) { + for(; margin > 0 && leading_byte < 4; margin--) { leading_byte += (int8_t(in[margin-1]) > -65); } - // If the input is long enough, then we have that margin-1 is the eight last leading byte. + // If the input is long enough, then we have that margin-1 is the fourth last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf16(utf16_output); - utf16_output += 64; + input.store_ascii_as_utf32(utf32_output); + utf32_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. @@ -27547,8 +32018,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf16(in + pos, - utf8_end_of_code_point_mask, utf16_output); + size_t consumed = convert_masked_utf8_to_utf32(in + pos, + utf8_end_of_code_point_mask, utf32_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -27560,35 +32031,34 @@ using namespace simd; } if(errors()) { return 0; } if(pos < size) { - size_t howmany = scalar::utf8_to_utf16::convert(in + pos, size - pos, utf16_output); + size_t howmany = scalar::utf8_to_utf32::convert(in + pos, size - pos, utf32_output); if(howmany == 0) { return 0; } - utf16_output += howmany; + utf32_output += howmany; } - return utf16_output - start; + return utf32_output - start; } - template - simdutf_really_inline result convert_with_errors(const char* in, size_t size, char16_t* utf16_output) { + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char32_t* utf32_output) { size_t pos = 0; - char16_t* start{utf16_output}; + char32_t* start{utf32_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf16. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 8; margin--) { + for(; margin > 0 && leading_byte < 4; margin--) { leading_byte += (int8_t(in[margin-1]) > -65); } - // If the input is long enough, then we have that margin-1 is the eight last leading byte. + // If the input is long enough, then we have that margin-1 is the fourth last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf16(utf16_output); - utf16_output += 64; + input.store_ascii_as_utf32(utf32_output); + utf32_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. @@ -27605,9 +32075,7 @@ using namespace simd; this->check_utf8_bytes(input.chunks[3], input.chunks[2]); } if (errors()) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); res.count += pos; return res; } @@ -27629,8 +32097,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf16(in + pos, - utf8_end_of_code_point_mask, utf16_output); + size_t consumed = convert_masked_utf8_to_utf32(in + pos, + utf8_end_of_code_point_mask, utf32_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -27641,95 +32109,157 @@ using namespace simd; } } if(errors()) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); res.count += pos; return res; } if(pos < size) { - // rewind_and_convert_with_errors will seek a potential error from in+pos onward, - // with the ability to go back up to pos bytes, and read size-pos bytes forward. - result res = scalar::utf8_to_utf16::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf16_output); + result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); if (res.error) { // In case of error, we want the error position res.count += pos; return res; } else { // In case of success, we want the number of word written - utf16_output += res.count; + utf32_output += res.count; } } - return result(error_code::SUCCESS, utf16_output - start); + return result(error_code::SUCCESS, utf32_output - start); + } + + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); + } + + }; // struct utf8_checker +} // utf8_to_utf32 namespace +} // unnamed namespace +} // namespace westmere +} // namespace simdutf +/* end file src/generic/utf8_to_utf32/utf8_to_utf32.h */ +// other functions +/* begin file src/generic/utf8.h */ + +namespace simdutf { +namespace westmere { +namespace { +namespace utf8 { + +using namespace simd; + +simdutf_really_inline size_t count_code_points(const char* in, size_t size) { + size_t pos = 0; + size_t count = 0; + for(;pos + 64 <= size; pos += 64) { + simd8x64 input(reinterpret_cast(in + pos)); + uint64_t utf8_continuation_mask = input.gt(-65); + count += count_ones(utf8_continuation_mask); + } + return count + scalar::utf8::count_code_points(in + pos, size - pos); +} + +simdutf_really_inline size_t utf16_length_from_utf8(const char* in, size_t size) { + size_t pos = 0; + size_t count = 0; + // This algorithm could no doubt be improved! + for(;pos + 64 <= size; pos += 64) { + simd8x64 input(reinterpret_cast(in + pos)); + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + // We count one word for anything that is not a continuation (so + // leading bytes). + count += 64 - count_ones(utf8_continuation_mask); + int64_t utf8_4byte = input.gteq_unsigned(240); + count += count_ones(utf8_4byte); } + return count + scalar::utf8::utf16_length_from_utf8(in + pos, size - pos); +} - simdutf_really_inline bool errors() const { - return this->error.any_bits_set_anywhere(); - } - }; // struct utf8_checker -} // utf8_to_utf16 namespace +simdutf_really_inline size_t utf32_length_from_utf8(const char* in, size_t size) { + return count_code_points(in, size); +} +} // utf8 namespace } // unnamed namespace } // namespace westmere } // namespace simdutf -/* end file src/generic/utf8_to_utf16/utf8_to_utf16.h */ -// transcoding from UTF-8 to UTF-32 -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/valid_utf8_to_utf32.h -/* begin file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ - +/* end file src/generic/utf8.h */ +/* begin file src/generic/utf16.h */ namespace simdutf { namespace westmere { namespace { -namespace utf8_to_utf32 { +namespace utf16 { -using namespace simd; +template +simdutf_really_inline size_t count_code_points(const char16_t* in, size_t size) { + size_t pos = 0; + size_t count = 0; + for(;pos < size/32*32; pos += 32) { + simd16x32 input(reinterpret_cast(in + pos)); + if (!match_system(big_endian)) { input.swap_bytes(); } + uint64_t not_pair = input.not_in_range(0xDC00, 0xDFFF); + count += count_ones(not_pair) / 2; + } + return count + scalar::utf16::count_code_points(in + pos, size - pos); +} +template +simdutf_really_inline size_t utf8_length_from_utf16(const char16_t* in, size_t size) { + size_t pos = 0; + size_t count = 0; + // This algorithm could no doubt be improved! + for(;pos < size/32*32; pos += 32) { + simd16x32 input(reinterpret_cast(in + pos)); + if (!match_system(big_endian)) { input.swap_bytes(); } + uint64_t ascii_mask = input.lteq(0x7F); + uint64_t twobyte_mask = input.lteq(0x7FF); + uint64_t not_pair_mask = input.not_in_range(0xD800, 0xDFFF); -simdutf_warn_unused size_t convert_valid(const char* input, size_t size, - char32_t* utf32_output) noexcept { - size_t pos = 0; - char32_t* start{utf32_output}; - const size_t safety_margin = 16; // to avoid overruns! - while(pos + 64 + safety_margin <= size) { - simd8x64 in(reinterpret_cast(input + pos)); - if(in.is_ascii()) { - in.store_ascii_as_utf32(utf32_output); - utf32_output += 64; - pos += 64; - } else { - // -65 is 0b10111111 in two-complement's, so largest possible continuation byte - uint64_t utf8_continuation_mask = in.lt(-65 + 1); - uint64_t utf8_leading_mask = ~utf8_continuation_mask; - uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; - size_t max_starting_point = (pos + 64) - 12; - while(pos < max_starting_point) { - size_t consumed = convert_masked_utf8_to_utf32(input + pos, - utf8_end_of_code_point_mask, utf32_output); - pos += consumed; - utf8_end_of_code_point_mask >>= consumed; - } + size_t ascii_count = count_ones(ascii_mask) / 2; + size_t twobyte_count = count_ones(twobyte_mask & ~ ascii_mask) / 2; + size_t threebyte_count = count_ones(not_pair_mask & ~ twobyte_mask) / 2; + size_t fourbyte_count = 32 - count_ones(not_pair_mask) / 2; + count += 2 * fourbyte_count + 3 * threebyte_count + 2 * twobyte_count + ascii_count; } - } - utf32_output += scalar::utf8_to_utf32::convert_valid(input + pos, size - pos, utf32_output); - return utf32_output - start; + return count + scalar::utf16::utf8_length_from_utf16(in + pos, size - pos); } +template +simdutf_really_inline size_t utf32_length_from_utf16(const char16_t* in, size_t size) { + return count_code_points(in, size); +} -} // namespace utf8_to_utf32 +simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* output) { + size_t pos = 0; + + while (pos < size/32*32) { + simd16x32 input(reinterpret_cast(in + pos)); + input.swap_bytes(); + input.store(reinterpret_cast(output)); + pos += 32; + output += 32; + } + + scalar::utf16::change_endianness_utf16(in + pos, size - pos, output); +} + +} // utf16 } // unnamed namespace } // namespace westmere } // namespace simdutf -/* end file src/generic/utf8_to_utf32/valid_utf8_to_utf32.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8_to_utf32/utf8_to_utf32.h -/* begin file src/generic/utf8_to_utf32/utf8_to_utf32.h */ +/* end file src/generic/utf16.h */ +// transcoding from UTF-8 to Latin 1 +/* begin file src/generic/utf8_to_latin1/utf8_to_latin1.h */ namespace simdutf { namespace westmere { namespace { -namespace utf8_to_utf32 { +namespace utf8_to_latin1 { using namespace simd; simdutf_really_inline simd8 check_special_cases(const simd8 input, const simd8 prev1) { +// For UTF-8 to Latin 1, we can allow any ASCII character, and any continuation byte, +// but the non-ASCII leading bytes must be 0b11000011 or 0b11000010 and nothing else. +// // Bit 0 = Too Short (lead byte/ASCII followed by lead byte/ASCII) // Bit 1 = Too Long (ASCII followed by continuation) // Bit 2 = Overlong 3-byte @@ -27756,6 +32286,7 @@ using namespace simd; // 1111011_ 1000____ // 11111___ 1000____ constexpr const uint8_t OVERLONG_4 = 1<<6; // 11110000 1000____ + constexpr const uint8_t FORBIDDEN = 0xff; const simd8 byte_1_high = prev1.shr<4>().lookup_16( // 0_______ ________ @@ -27766,11 +32297,11 @@ using namespace simd; // 1100____ ________ TOO_SHORT | OVERLONG_2, // 1101____ ________ - TOO_SHORT, + FORBIDDEN, // 1110____ ________ - TOO_SHORT | OVERLONG_3 | SURROGATE, + FORBIDDEN, // 1111____ ________ - TOO_SHORT | TOO_LARGE | TOO_LARGE_1000 | OVERLONG_4 + FORBIDDEN ); constexpr const uint8_t CARRY = TOO_SHORT | TOO_LONG | TWO_CONTS; // These all have ____ in byte 1 . const simd8 byte_1_low = (prev1 & 0x0F).lookup_16( @@ -27783,23 +32314,23 @@ using namespace simd; CARRY, // ____0100 ________ - CARRY | TOO_LARGE, + FORBIDDEN, // ____0101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, + FORBIDDEN, // ____011_ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, + FORBIDDEN, + FORBIDDEN, // ____1___ ________ - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, + FORBIDDEN, // ____1101 ________ - CARRY | TOO_LARGE | TOO_LARGE_1000 | SURROGATE, - CARRY | TOO_LARGE | TOO_LARGE_1000, - CARRY | TOO_LARGE | TOO_LARGE_1000 + FORBIDDEN, + FORBIDDEN, + FORBIDDEN ); const simd8 byte_2_high = input.shr<4>().lookup_16( // ________ 0_______ @@ -27819,15 +32350,6 @@ using namespace simd; ); return (byte_1_high & byte_1_low & byte_2_high); } - simdutf_really_inline simd8 check_multibyte_lengths(const simd8 input, - const simd8 prev_input, const simd8 sc) { - simd8 prev2 = input.prev<2>(prev_input); - simd8 prev3 = input.prev<3>(prev_input); - simd8 must23 = simd8(must_be_2_3_continuation(prev2, prev3)); - simd8 must23_80 = must23 & uint8_t(0x80); - return must23_80 ^ sc; - } - struct validating_transcoder { // If this is nonzero, there has been a UTF-8 error. @@ -27841,33 +32363,31 @@ using namespace simd; // Flip prev1...prev3 so we can easily determine if they are 2+, 3+ or 4+ lead bytes // (2, 3, 4-byte leads become large positive numbers instead of small negative numbers) simd8 prev1 = input.prev<1>(prev_input); - simd8 sc = check_special_cases(input, prev1); - this->error |= check_multibyte_lengths(input, prev_input, sc); + this->error |= check_special_cases(input, prev1); } - - simdutf_really_inline size_t convert(const char* in, size_t size, char32_t* utf32_output) { + simdutf_really_inline size_t convert(const char* in, size_t size, char* latin1_output) { size_t pos = 0; - char32_t* start{utf32_output}; + char* start{latin1_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 4; margin--) { - leading_byte += (int8_t(in[margin-1]) > -65); + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); //twos complement of -65 is 1011 1111 ... } - // If the input is long enough, then we have that margin-1 is the fourth last leading byte. + // If the input is long enough, then we have that margin-1 is the eight last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf32(utf32_output); - utf32_output += 64; + input.store((int8_t*)latin1_output); + latin1_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. @@ -27883,7 +32403,7 @@ using namespace simd; this->check_utf8_bytes(input.chunks[2], input.chunks[1]); this->check_utf8_bytes(input.chunks[3], input.chunks[2]); } - uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in this case, we also have ASCII to account for. uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; // We process in blocks of up to 12 bytes except possibly @@ -27901,8 +32421,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf32(in + pos, - utf8_end_of_code_point_mask, utf32_output); + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -27914,55 +32434,151 @@ using namespace simd; } if(errors()) { return 0; } if(pos < size) { - size_t howmany = scalar::utf8_to_utf32::convert(in + pos, size - pos, utf32_output); + size_t howmany = scalar::utf8_to_latin1::convert(in + pos, size - pos, latin1_output); if(howmany == 0) { return 0; } - utf32_output += howmany; + latin1_output += howmany; } - return utf32_output - start; + return latin1_output - start; } - simdutf_really_inline result convert_with_errors(const char* in, size_t size, char32_t* utf32_output) { + simdutf_really_inline result convert_with_errors(const char* in, size_t size, char* latin1_output) { size_t pos = 0; - char32_t* start{utf32_output}; + char* start{latin1_output}; // In the worst case, we have the haswell kernel which can cause an overflow of - // 8 bytes when calling convert_masked_utf8_to_utf32. If you skip the last 16 bytes, + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate // much more than 8 bytes. However, you cannot generally assume that you have valid - // UTF-8 input, so we are going to go back from the end counting 4 leading bytes, + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, // to give us a good margin. size_t leading_byte = 0; size_t margin = size; - for(; margin > 0 && leading_byte < 4; margin--) { + for(; margin > 0 && leading_byte < 8; margin--) { leading_byte += (int8_t(in[margin-1]) > -65); } - // If the input is long enough, then we have that margin-1 is the fourth last leading byte. + // If the input is long enough, then we have that margin-1 is the eight last leading byte. const size_t safety_margin = size - margin + 1; // to avoid overruns! while(pos + 64 + safety_margin <= size) { simd8x64 input(reinterpret_cast(in + pos)); if(input.is_ascii()) { - input.store_ascii_as_utf32(utf32_output); - utf32_output += 64; + input.store((int8_t*)latin1_output); + latin1_output += 64; + pos += 64; + } else { + // you might think that a for-loop would work, but under Visual Studio, it is not good enough. + static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), + "We support either two or four chunks per 64-byte block."); + auto zero = simd8{uint8_t(0)}; + if(simd8x64::NUM_CHUNKS == 2) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + } else if(simd8x64::NUM_CHUNKS == 4) { + this->check_utf8_bytes(input.chunks[0], zero); + this->check_utf8_bytes(input.chunks[1], input.chunks[0]); + this->check_utf8_bytes(input.chunks[2], input.chunks[1]); + this->check_utf8_bytes(input.chunks[3], input.chunks[2]); + } + if (errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); + res.count += pos; + return res; + } + uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_leading_mask = ~utf8_continuation_mask; + uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; + // We process in blocks of up to 12 bytes except possibly + // for fast paths which may process up to 16 bytes. For the + // slow path to work, we should have at least 12 input bytes left. + size_t max_starting_point = (pos + 64) - 12; + // Next loop is going to run at least five times. + while(pos < max_starting_point) { + // Performance note: our ability to compute 'consumed' and + // then shift and recompute is critical. If there is a + // latency of, say, 4 cycles on getting 'consumed', then + // the inner loop might have a total latency of about 6 cycles. + // Yet we process between 6 to 12 inputs bytes, thus we get + // a speed limit between 1 cycle/byte and 0.5 cycle/byte + // for this section of the code. Hence, there is a limit + // to how much we can further increase this latency before + // it seriously harms performance. + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); + pos += consumed; + utf8_end_of_code_point_mask >>= consumed; + } + // At this point there may remain between 0 and 12 bytes in the + // 64-byte block. These bytes will be processed again. So we have an + // 80% efficiency (in the worst case). In practice we expect an + // 85% to 90% efficiency. + } + } + if(errors()) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); + res.count += pos; + return res; + } + if(pos < size) { + // rewind_and_convert_with_errors will seek a potential error from in+pos onward, + // with the ability to go back up to pos bytes, and read size-pos bytes forward. + result res = scalar::utf8_to_latin1::rewind_and_convert_with_errors(pos, in + pos, size - pos, latin1_output); + if (res.error) { // In case of error, we want the error position + res.count += pos; + return res; + } else { // In case of success, we want the number of word written + latin1_output += res.count; + } + } + return result(error_code::SUCCESS, latin1_output - start); + } + + simdutf_really_inline bool errors() const { + return this->error.any_bits_set_anywhere(); + } + + }; // struct utf8_checker +} // utf8_to_latin1 namespace +} // unnamed namespace +} // namespace westmere +} // namespace simdutf +/* end file src/generic/utf8_to_latin1/utf8_to_latin1.h */ +/* begin file src/generic/utf8_to_latin1/valid_utf8_to_latin1.h */ + + +namespace simdutf { +namespace westmere { +namespace { +namespace utf8_to_latin1 { +using namespace simd; + + + simdutf_really_inline size_t convert_valid(const char* in, size_t size, char* latin1_output) { + size_t pos = 0; + char* start{latin1_output}; + // In the worst case, we have the haswell kernel which can cause an overflow of + // 8 bytes when calling convert_masked_utf8_to_latin1. If you skip the last 16 bytes, + // and if the data is valid, then it is entirely safe because 16 UTF-8 bytes generate + // much more than 8 bytes. However, you cannot generally assume that you have valid + // UTF-8 input, so we are going to go back from the end counting 8 leading bytes, + // to give us a good margin. + size_t leading_byte = 0; + size_t margin = size; + for(; margin > 0 && leading_byte < 8; margin--) { + leading_byte += (int8_t(in[margin-1]) > -65); //twos complement of -65 is 1011 1111 ... + } + // If the input is long enough, then we have that margin-1 is the eight last leading byte. + const size_t safety_margin = size - margin + 1; // to avoid overruns! + while(pos + 64 + safety_margin <= size) { + simd8x64 input(reinterpret_cast(in + pos)); + if(input.is_ascii()) { + input.store((int8_t*)latin1_output); + latin1_output += 64; pos += 64; } else { // you might think that a for-loop would work, but under Visual Studio, it is not good enough. - static_assert((simd8x64::NUM_CHUNKS == 2) || (simd8x64::NUM_CHUNKS == 4), - "We support either two or four chunks per 64-byte block."); - auto zero = simd8{uint8_t(0)}; - if(simd8x64::NUM_CHUNKS == 2) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - } else if(simd8x64::NUM_CHUNKS == 4) { - this->check_utf8_bytes(input.chunks[0], zero); - this->check_utf8_bytes(input.chunks[1], input.chunks[0]); - this->check_utf8_bytes(input.chunks[2], input.chunks[1]); - this->check_utf8_bytes(input.chunks[3], input.chunks[2]); - } - if (errors()) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); - res.count += pos; - return res; - } - uint64_t utf8_continuation_mask = input.lt(-65 + 1); + uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in this case, we also have ASCII to account for. uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask>>1; // We process in blocks of up to 12 bytes except possibly @@ -27980,8 +32596,8 @@ using namespace simd; // for this section of the code. Hence, there is a limit // to how much we can further increase this latency before // it seriously harms performance. - size_t consumed = convert_masked_utf8_to_utf32(in + pos, - utf8_end_of_code_point_mask, utf32_output); + size_t consumed = convert_masked_utf8_to_latin1(in + pos, + utf8_end_of_code_point_mask, latin1_output); pos += consumed; utf8_end_of_code_point_mask >>= consumed; } @@ -27991,146 +32607,22 @@ using namespace simd; // 85% to 90% efficiency. } } - if(errors()) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); - res.count += pos; - return res; - } if(pos < size) { - result res = scalar::utf8_to_utf32::rewind_and_convert_with_errors(pos, in + pos, size - pos, utf32_output); - if (res.error) { // In case of error, we want the error position - res.count += pos; - return res; - } else { // In case of success, we want the number of word written - utf32_output += res.count; - } + size_t howmany = scalar::utf8_to_latin1::convert(in + pos, size - pos, latin1_output); + if(howmany == 0) { return 0; } + latin1_output += howmany; } - return result(error_code::SUCCESS, utf32_output - start); - } - - simdutf_really_inline bool errors() const { - return this->error.any_bits_set_anywhere(); - } - - }; // struct utf8_checker -} // utf8_to_utf32 namespace -} // unnamed namespace -} // namespace westmere -} // namespace simdutf -/* end file src/generic/utf8_to_utf32/utf8_to_utf32.h */ -// other functions -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf8.h -/* begin file src/generic/utf8.h */ - -namespace simdutf { -namespace westmere { -namespace { -namespace utf8 { - -using namespace simd; - -simdutf_really_inline size_t count_code_points(const char* in, size_t size) { - size_t pos = 0; - size_t count = 0; - for(;pos + 64 <= size; pos += 64) { - simd8x64 input(reinterpret_cast(in + pos)); - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - count += 64 - count_ones(utf8_continuation_mask); + return latin1_output - start; } - return count + scalar::utf8::count_code_points(in + pos, size - pos); -} - - -simdutf_really_inline size_t utf16_length_from_utf8(const char* in, size_t size) { - size_t pos = 0; - size_t count = 0; - // This algorithm could no doubt be improved! - for(;pos + 64 <= size; pos += 64) { - simd8x64 input(reinterpret_cast(in + pos)); - uint64_t utf8_continuation_mask = input.lt(-65 + 1); - // We count one word for anything that is not a continuation (so - // leading bytes). - count += 64 - count_ones(utf8_continuation_mask); - int64_t utf8_4byte = input.gteq_unsigned(240); - count += count_ones(utf8_4byte); - } - return count + scalar::utf8::utf16_length_from_utf8(in + pos, size - pos); -} - - -simdutf_really_inline size_t utf32_length_from_utf8(const char* in, size_t size) { - return count_code_points(in, size); -} -} // utf8 namespace -} // unnamed namespace -} // namespace westmere -} // namespace simdutf -/* end file src/generic/utf8.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=generic/utf16.h -/* begin file src/generic/utf16.h */ -namespace simdutf { -namespace westmere { -namespace { -namespace utf16 { - -template -simdutf_really_inline size_t count_code_points(const char16_t* in, size_t size) { - size_t pos = 0; - size_t count = 0; - for(;pos + 32 <= size; pos += 32) { - simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); - uint64_t not_pair = input.not_in_range(0xDC00, 0xDFFF); - count += count_ones(not_pair) / 2; - } - return count + scalar::utf16::count_code_points(in + pos, size - pos); -} - -template -simdutf_really_inline size_t utf8_length_from_utf16(const char16_t* in, size_t size) { - size_t pos = 0; - size_t count = 0; - // This algorithm could no doubt be improved! - for(;pos + 32 <= size; pos += 32) { - simd16x32 input(reinterpret_cast(in + pos)); - if (!match_system(big_endian)) input.swap_bytes(); - uint64_t ascii_mask = input.lteq(0x7F); - uint64_t twobyte_mask = input.lteq(0x7FF); - uint64_t not_pair_mask = input.not_in_range(0xD800, 0xDFFF); - - size_t ascii_count = count_ones(ascii_mask) / 2; - size_t twobyte_count = count_ones(twobyte_mask & ~ ascii_mask) / 2; - size_t threebyte_count = count_ones(not_pair_mask & ~ twobyte_mask) / 2; - size_t fourbyte_count = 32 - count_ones(not_pair_mask) / 2; - count += 2 * fourbyte_count + 3 * threebyte_count + 2 * twobyte_count + ascii_count; - } - return count + scalar::utf16::utf8_length_from_utf16(in + pos, size - pos); -} -template -simdutf_really_inline size_t utf32_length_from_utf16(const char16_t* in, size_t size) { - return count_code_points(in, size); -} - -simdutf_really_inline void change_endianness_utf16(const char16_t* in, size_t size, char16_t* output) { - size_t pos = 0; - - while (pos + 32 <= size) { - simd16x32 input(reinterpret_cast(in + pos)); - input.swap_bytes(); - input.store(reinterpret_cast(output)); - pos += 32; - output += 32; - } + }; +} // utf8_to_latin1 namespace +} // unnamed namespace +} // namespace westmere + // namespace simdutf +/* end file src/generic/utf8_to_latin1/valid_utf8_to_latin1.h */ - scalar::utf16::change_endianness_utf16(in + pos, size - pos, output); -} -} // utf16 -} // unnamed namespace -} // namespace westmere -} // namespace simdutf -/* end file src/generic/utf16.h */ // // Implementation-specific overrides // @@ -28226,6 +32718,74 @@ simdutf_warn_unused result implementation::validate_utf32_with_errors(const char } } +simdutf_warn_unused size_t implementation::convert_latin1_to_utf8(const char * buf, size_t len, char* utf8_output) const noexcept { + + std::pair ret = sse_convert_latin1_to_utf8(buf, len, utf8_output); + size_t converted_chars = ret.second - utf8_output; + + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf8::convert( + ret.first, len - (ret.first - buf), ret.second); + converted_chars += scalar_converted_chars; + } + + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = sse_convert_latin1_to_utf16(buf, len, utf16_output); + if (ret.first == nullptr) { return 0; } + size_t converted_chars = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_converted_chars == 0) { return 0; } + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf16be(const char* buf, size_t len, char16_t* utf16_output) const noexcept { + std::pair ret = sse_convert_latin1_to_utf16(buf, len, utf16_output); + if (ret.first == nullptr) { return 0; } + size_t converted_chars = ret.second - utf16_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf16::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_converted_chars == 0) { return 0; } + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + +simdutf_warn_unused size_t implementation::convert_latin1_to_utf32(const char* buf, size_t len, char32_t* utf32_output) const noexcept { + std::pair ret = sse_convert_latin1_to_utf32(buf, len, utf32_output); + if (ret.first == nullptr) { return 0; } + size_t converted_chars = ret.second - utf32_output; + if (ret.first != buf + len) { + const size_t scalar_converted_chars = scalar::latin1_to_utf32::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_converted_chars == 0) { return 0; } + converted_chars += scalar_converted_chars; + } + return converted_chars; +} + + +simdutf_warn_unused size_t implementation::convert_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + utf8_to_latin1::validating_transcoder converter; + return converter.convert(buf, len, latin1_output); +} + +simdutf_warn_unused result implementation::convert_utf8_to_latin1_with_errors(const char* buf, size_t len, char* latin1_output) const noexcept { + utf8_to_latin1::validating_transcoder converter; + return converter.convert_with_errors(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf8_to_latin1(const char* buf, size_t len, char* latin1_output) const noexcept { + return westmere::utf8_to_latin1::convert_valid(buf,len,latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf8_to_utf16le(const char* buf, size_t len, char16_t* utf16_output) const noexcept { utf8_to_utf16::validating_transcoder converter; return converter.convert(buf, len, utf16_output); @@ -28272,6 +32832,79 @@ simdutf_warn_unused size_t implementation::convert_valid_utf8_to_utf32(const cha return utf8_to_utf32::convert_valid(input, size, utf32_output); } +simdutf_warn_unused size_t implementation::convert_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = sse_convert_utf16_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused size_t implementation::convert_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = sse_convert_utf16_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + + if (ret.first != buf + len) { + const size_t scalar_saved_bytes = scalar::utf16_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + +simdutf_warn_unused result implementation::convert_utf16le_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = sse_convert_utf16_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused result implementation::convert_utf16be_to_latin1_with_errors(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = sse_convert_utf16_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count + if (ret.first.count != len) { // All good so far, but not finished + result scalar_res = scalar::utf16_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + + +simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: we could provide an optimized function. + return convert_utf16be_to_latin1(buf, len, latin1_output); +} + +simdutf_warn_unused size_t implementation::convert_valid_utf16le_to_latin1(const char16_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: we could provide an optimized function. + return convert_utf16le_to_latin1(buf, len, latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf16le_to_utf8(const char16_t* buf, size_t len, char* utf8_output) const noexcept { std::pair ret = sse_convert_utf16_to_utf8(buf, len, utf8_output); if (ret.first == nullptr) { return 0; } @@ -28299,7 +32932,7 @@ simdutf_warn_unused size_t implementation::convert_utf16be_to_utf8(const char16_ } simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = westmere::sse_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -28312,12 +32945,12 @@ simdutf_warn_unused result implementation::convert_utf16le_to_utf8_with_errors(c ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written return ret.first; } simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(const char16_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = westmere::sse_convert_utf16_to_utf8_with_errors(buf, len, utf8_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -28330,7 +32963,7 @@ simdutf_warn_unused result implementation::convert_utf16be_to_utf8_with_errors(c ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -28342,6 +32975,43 @@ simdutf_warn_unused size_t implementation::convert_valid_utf16be_to_utf8(const c return convert_utf16be_to_utf8(buf, len, utf8_output); } +simdutf_warn_unused size_t implementation::convert_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + std::pair ret = sse_convert_utf32_to_latin1(buf, len, latin1_output); + if (ret.first == nullptr) { return 0; } + size_t saved_bytes = ret.second - latin1_output; + // if (ret.first != buf + len) { + if (ret.first < buf + len) { + const size_t scalar_saved_bytes = scalar::utf32_to_latin1::convert( + ret.first, len - (ret.first - buf), ret.second); + if (scalar_saved_bytes == 0) { return 0; } + saved_bytes += scalar_saved_bytes; + } + return saved_bytes; +} + + +simdutf_warn_unused result implementation::convert_utf32_to_latin1_with_errors(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + // ret.first.count is always the position in the buffer, not the number of code units written even if finished + std::pair ret = westmere::sse_convert_utf32_to_latin1_with_errors(buf, len, latin1_output); + if (ret.first.count != len) { + result scalar_res = scalar::utf32_to_latin1::convert_with_errors( + buf + ret.first.count, len - ret.first.count, ret.second); + if (scalar_res.error) { + scalar_res.count += ret.first.count; + return scalar_res; + } else { + ret.second += scalar_res.count; + } + } + ret.first.count = ret.second - latin1_output; // Set count to the number of 8-bit code units written + return ret.first; +} + +simdutf_warn_unused size_t implementation::convert_valid_utf32_to_latin1(const char32_t* buf, size_t len, char* latin1_output) const noexcept { + // optimization opportunity: we could provide an optimized function. + return convert_utf32_to_latin1(buf,len,latin1_output); +} + simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* buf, size_t len, char* utf8_output) const noexcept { std::pair ret = sse_convert_utf32_to_utf8(buf, len, utf8_output); if (ret.first == nullptr) { return 0; } @@ -28356,7 +33026,7 @@ simdutf_warn_unused size_t implementation::convert_utf32_to_utf8(const char32_t* } simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(const char32_t* buf, size_t len, char* utf8_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = westmere::sse_convert_utf32_to_utf8_with_errors(buf, len, utf8_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf8::convert_with_errors( @@ -28368,7 +33038,7 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf8_with_errors(con ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf8_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -28399,7 +33069,7 @@ simdutf_warn_unused size_t implementation::convert_utf16be_to_utf32(const char16 } simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = westmere::sse_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -28412,12 +33082,12 @@ simdutf_warn_unused result implementation::convert_utf16le_to_utf32_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit code units written return ret.first; } simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors(const char16_t* buf, size_t len, char32_t* utf32_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = westmere::sse_convert_utf16_to_utf32_with_errors(buf, len, utf32_output); if (ret.first.error) { return ret.first; } // Can return directly since scalar fallback already found correct ret.first.count if (ret.first.count != len) { // All good so far, but not finished @@ -28430,7 +33100,7 @@ simdutf_warn_unused result implementation::convert_utf16be_to_utf32_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf32_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -28465,7 +33135,7 @@ simdutf_warn_unused size_t implementation::convert_utf32_to_utf16be(const char32 } simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = westmere::sse_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf16::convert_with_errors( @@ -28477,12 +33147,12 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf16le_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written return ret.first; } simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors(const char32_t* buf, size_t len, char16_t* utf16_output) const noexcept { - // ret.first.count is always the position in the buffer, not the number of words written even if finished + // ret.first.count is always the position in the buffer, not the number of code units written even if finished std::pair ret = westmere::sse_convert_utf32_to_utf16_with_errors(buf, len, utf16_output); if (ret.first.count != len) { result scalar_res = scalar::utf32_to_utf16::convert_with_errors( @@ -28494,7 +33164,7 @@ simdutf_warn_unused result implementation::convert_utf32_to_utf16be_with_errors( ret.second += scalar_res.count; } } - ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit words written + ret.first.count = ret.second - utf16_output; // Set count to the number of 8-bit code units written return ret.first; } @@ -28530,6 +33200,18 @@ simdutf_warn_unused size_t implementation::count_utf8(const char * input, size_t return utf8::count_code_points(input, length); } +simdutf_warn_unused size_t implementation::latin1_length_from_utf8(const char* buf, size_t len) const noexcept { + return count_utf8(buf,len); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf16(size_t length) const noexcept { + return scalar::utf16::latin1_length_from_utf16(length); +} + +simdutf_warn_unused size_t implementation::latin1_length_from_utf32(size_t length) const noexcept { + return scalar::utf32::latin1_length_from_utf32(length); +} + simdutf_warn_unused size_t implementation::utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept { return utf16::utf8_length_from_utf16(input, length); } @@ -28538,6 +33220,61 @@ simdutf_warn_unused size_t implementation::utf8_length_from_utf16be(const char16 return utf16::utf8_length_from_utf16(input, length); } +simdutf_warn_unused size_t implementation::utf16_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf16_length_from_latin1(length); +} + +simdutf_warn_unused size_t implementation::utf32_length_from_latin1(size_t length) const noexcept { + return scalar::latin1::utf32_length_from_latin1(length); +} + +simdutf_warn_unused size_t implementation::utf8_length_from_latin1(const char * input, size_t len) const noexcept { + const uint8_t *str = reinterpret_cast(input); + size_t answer = len / sizeof(__m128i) * sizeof(__m128i); + size_t i = 0; + __m128i two_64bits = _mm_setzero_si128(); + while (i + sizeof(__m128i) <= len) { + __m128i runner = _mm_setzero_si128(); + size_t iterations = (len - i) / sizeof(__m128i); + if (iterations > 255) { + iterations = 255; + } + size_t max_i = i + iterations * sizeof(__m128i) - sizeof(__m128i); + for (; i + 4*sizeof(__m128i) <= max_i; i += 4*sizeof(__m128i)) { + __m128i input1 = _mm_loadu_si128((const __m128i *)(str + i)); + __m128i input2 = _mm_loadu_si128((const __m128i *)(str + i + sizeof(__m128i))); + __m128i input3 = _mm_loadu_si128((const __m128i *)(str + i + 2*sizeof(__m128i))); + __m128i input4 = _mm_loadu_si128((const __m128i *)(str + i + 3*sizeof(__m128i))); + __m128i input12 = _mm_add_epi8( + _mm_cmpgt_epi8( + _mm_setzero_si128(), + input1), + _mm_cmpgt_epi8( + _mm_setzero_si128(), + input2)); + __m128i input34 = _mm_add_epi8( + _mm_cmpgt_epi8( + _mm_setzero_si128(), + input3), + _mm_cmpgt_epi8( + _mm_setzero_si128(), + input4)); + __m128i input1234 = _mm_add_epi8(input12, input34); + runner = _mm_sub_epi8(runner, input1234); + } + for (; i <= max_i; i += sizeof(__m128i)) { + __m128i more_input = _mm_loadu_si128((const __m128i *)(str + i)); + runner = _mm_sub_epi8( + runner, _mm_cmpgt_epi8(_mm_setzero_si128(), more_input)); + } + two_64bits = _mm_add_epi64( + two_64bits, _mm_sad_epu8(runner, _mm_setzero_si128())); + } + answer += _mm_extract_epi64(two_64bits, 0) + + _mm_extract_epi64(two_64bits, 1); + return answer + scalar::latin1::utf8_length_from_latin1(reinterpret_cast(str + i), len - i); +} + simdutf_warn_unused size_t implementation::utf32_length_from_utf16le(const char16_t * input, size_t length) const noexcept { return utf16::utf32_length_from_utf16(input, length); } @@ -28592,13 +33329,12 @@ simdutf_warn_unused size_t implementation::utf16_length_from_utf32(const char32_ } simdutf_warn_unused size_t implementation::utf32_length_from_utf8(const char * input, size_t length) const noexcept { - return scalar::utf8::count_code_points(input, length); + return utf8::count_code_points(input, length); } } // namespace westmere } // namespace simdutf -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/src, filename=simdutf/westmere/end.h /* begin file src/simdutf/westmere/end.h */ #if SIMDUTF_CAN_ALWAYS_RUN_WESTMERE // nothing needed. diff --git a/deps/simdutf/simdutf.h b/deps/simdutf/simdutf.h index 6ab1c34d7b30a7..6b40666f0170f8 100644 --- a/deps/simdutf/simdutf.h +++ b/deps/simdutf/simdutf.h @@ -1,11 +1,9 @@ -/* auto-generated on 2023-10-08 13:48:09 -0400. Do not edit! */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf.h +/* auto-generated on 2023-11-15 17:34:03 -0500. Do not edit! */ /* begin file include/simdutf.h */ #ifndef SIMDUTF_H #define SIMDUTF_H #include -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/compiler_check.h /* begin file include/simdutf/compiler_check.h */ #ifndef SIMDUTF_COMPILER_CHECK_H #define SIMDUTF_COMPILER_CHECK_H @@ -43,13 +41,11 @@ #endif // SIMDUTF_COMPILER_CHECK_H /* end file include/simdutf/compiler_check.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/common_defs.h /* begin file include/simdutf/common_defs.h */ #ifndef SIMDUTF_COMMON_DEFS_H #define SIMDUTF_COMMON_DEFS_H #include -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/portability.h /* begin file include/simdutf/portability.h */ #ifndef SIMDUTF_PORTABILITY_H #define SIMDUTF_PORTABILITY_H @@ -167,11 +163,8 @@ #ifdef SIMDUTF_IS_32BITS #ifndef SIMDUTF_NO_PORTABILITY_WARNING -#pragma message("The simdutf library is designed \ -for 64-bit processors and it seems that you are not \ -compiling for a known 64-bit platform. All fast kernels \ -will be disabled and performance may be poor. Please \ -use a 64-bit target such as x64, 64-bit ARM or 64-bit PPC.") +// In the future, we may want to warn users of 32-bit systems that +// the simdutf does not support accelerated kernels for such systems. #endif // SIMDUTF_NO_PORTABILITY_WARNING #endif // SIMDUTF_IS_32BITS @@ -280,7 +273,6 @@ use a 64-bit target such as x64, 64-bit ARM or 64-bit PPC.") #endif // SIMDUTF_PORTABILITY_H /* end file include/simdutf/portability.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/avx512.h /* begin file include/simdutf/avx512.h */ #ifndef SIMDUTF_AVX512_H_ #define SIMDUTF_AVX512_H_ @@ -483,7 +475,6 @@ use a 64-bit target such as x64, 64-bit ARM or 64-bit PPC.") #endif // SIMDUTF_COMMON_DEFS_H /* end file include/simdutf/common_defs.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/encoding_types.h /* begin file include/simdutf/encoding_types.h */ #include @@ -495,13 +486,14 @@ enum encoding_type { UTF16_BE = 4, // BOM 0xfe 0xff UTF32_LE = 8, // BOM 0xff 0xfe 0x00 0x00 UTF32_BE = 16, // BOM 0x00 0x00 0xfe 0xff + Latin1 = 32, unspecified = 0 }; enum endianness { - LITTLE, - BIG + LITTLE = 0, + BIG = 1 }; bool match_system(endianness e); @@ -514,7 +506,7 @@ namespace BOM { /** * Checks for a BOM. If not, returns unspecified * @param input the string to process - * @param length the length of the string in words + * @param length the length of the string in code units * @return the corresponding encoding */ @@ -531,7 +523,6 @@ size_t bom_byte_size(encoding_type bom); } // BOM namespace } // simdutf namespace /* end file include/simdutf/encoding_types.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/error.h /* begin file include/simdutf/error.h */ #ifndef ERROR_H #define ERROR_H @@ -545,15 +536,16 @@ enum error_code { TOO_LONG, // We either have too many consecutive continuation bytes or the string starts with a continuation byte. OVERLONG, // The decoded character must be above U+7F for two-byte characters, U+7FF for three-byte characters, // and U+FFFF for four-byte characters. - TOO_LARGE, // The decoded character must be less than or equal to U+10FFFF OR less than or equal than U+7F for ASCII. + TOO_LARGE, // The decoded character must be less than or equal to U+10FFFF,less than or equal than U+7F for ASCII OR less than equal than U+FF for Latin1 SURROGATE, // The decoded character must be not be in U+D800...DFFF (UTF-8 or UTF-32) OR - // a high surrogate must be followed by a low surrogate and a low surrogate must be preceded by a high surrogate (UTF-16) + // a high surrogate must be followed by a low surrogate and a low surrogate must be preceded by a high surrogate (UTF-16) OR + // there must be no surrogate at all (Latin1) OTHER // Not related to validation/transcoding. }; struct result { error_code error; - size_t count; // In case of error, indicates the position of the error. In case of success, indicates the number of words validated/written. + size_t count; // In case of error, indicates the position of the error. In case of success, indicates the number of code units validated/written. simdutf_really_inline result(); @@ -568,7 +560,6 @@ SIMDUTF_PUSH_DISABLE_WARNINGS SIMDUTF_DISABLE_UNDESIRED_WARNINGS // Public API -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/simdutf_version.h /* begin file include/simdutf/simdutf_version.h */ // /include/simdutf/simdutf_version.h automatically generated by release.py, // do not change by hand @@ -576,28 +567,27 @@ SIMDUTF_DISABLE_UNDESIRED_WARNINGS #define SIMDUTF_SIMDUTF_VERSION_H /** The version of simdutf being used (major.minor.revision) */ -#define SIMDUTF_VERSION "3.2.18" +#define SIMDUTF_VERSION "4.0.4" namespace simdutf { enum { /** * The major version (MAJOR.minor.revision) of simdutf being used. */ - SIMDUTF_VERSION_MAJOR = 3, + SIMDUTF_VERSION_MAJOR = 4, /** * The minor version (major.MINOR.revision) of simdutf being used. */ - SIMDUTF_VERSION_MINOR = 2, + SIMDUTF_VERSION_MINOR = 0, /** * The revision (major.minor.REVISION) of simdutf being used. */ - SIMDUTF_VERSION_REVISION = 18 + SIMDUTF_VERSION_REVISION = 4 }; } // namespace simdutf #endif // SIMDUTF_SIMDUTF_VERSION_H /* end file include/simdutf/simdutf_version.h */ -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/implementation.h /* begin file include/simdutf/implementation.h */ #ifndef SIMDUTF_IMPLEMENTATION_H #define SIMDUTF_IMPLEMENTATION_H @@ -607,7 +597,6 @@ enum { #endif #include #include -// dofile: invoked with prepath=/Users/dlemire/CVS/github/simdutf/include, filename=simdutf/internal/isadetection.h /* begin file include/simdutf/internal/isadetection.h */ /* From https://github.com/endorno/pytorch/blob/master/torch/lib/TH/generic/simd/simd.h @@ -685,7 +674,8 @@ enum instruction_set { AVX512CD = 0x2000, AVX512BW = 0x4000, AVX512VL = 0x8000, - AVX512VBMI2 = 0x10000 + AVX512VBMI2 = 0x10000, + AVX512VPOPCNTDQ = 0x2000 }; #if defined(__PPC64__) @@ -840,6 +830,9 @@ static inline uint32_t detect_supported_architectures() { if (ecx & cpuid_bit::ecx::avx512vbmi2) { host_isa |= instruction_set::AVX512VBMI2; } + if (ecx & cpuid_bit::ecx::avx512vpopcnt) { + host_isa |= instruction_set::AVX512VPOPCNTDQ; + } return host_isa; } #else // fallback @@ -892,7 +885,6 @@ simdutf_really_inline simdutf_warn_unused int detect_encodings(const uint8_t * i return detect_encodings(reinterpret_cast(input), length); } - /** * Validate the UTF-8 string. This function may be best when you expect * the input to be almost always valid. Otherwise, consider using @@ -913,7 +905,7 @@ simdutf_warn_unused bool validate_utf8(const char *buf, size_t len) noexcept; * * @param buf the UTF-8 string to validate. * @param len the length of the string in bytes. - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused result validate_utf8_with_errors(const char *buf, size_t len) noexcept; @@ -936,7 +928,7 @@ simdutf_warn_unused bool validate_ascii(const char *buf, size_t len) noexcept; * * @param buf the ASCII string to validate. * @param len the length of the string in bytes. - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused result validate_ascii_with_errors(const char *buf, size_t len) noexcept; @@ -950,7 +942,7 @@ simdutf_warn_unused result validate_ascii_with_errors(const char *buf, size_t le * This function is not BOM-aware. * * @param buf the UTF-16 string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). + * @param len the length of the string in number of 2-byte code units (char16_t). * @return true if and only if the string is valid UTF-16. */ simdutf_warn_unused bool validate_utf16(const char16_t *buf, size_t len) noexcept; @@ -965,7 +957,7 @@ simdutf_warn_unused bool validate_utf16(const char16_t *buf, size_t len) noexcep * This function is not BOM-aware. * * @param buf the UTF-16LE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). + * @param len the length of the string in number of 2-byte code units (char16_t). * @return true if and only if the string is valid UTF-16LE. */ simdutf_warn_unused bool validate_utf16le(const char16_t *buf, size_t len) noexcept; @@ -980,7 +972,7 @@ simdutf_warn_unused bool validate_utf16le(const char16_t *buf, size_t len) noexc * This function is not BOM-aware. * * @param buf the UTF-16BE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). + * @param len the length of the string in number of 2-byte code units (char16_t). * @return true if and only if the string is valid UTF-16BE. */ simdutf_warn_unused bool validate_utf16be(const char16_t *buf, size_t len) noexcept; @@ -994,8 +986,8 @@ simdutf_warn_unused bool validate_utf16be(const char16_t *buf, size_t len) noexc * This function is not BOM-aware. * * @param buf the UTF-16 string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @param len the length of the string in number of 2-byte code units (char16_t). + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused result validate_utf16_with_errors(const char16_t *buf, size_t len) noexcept; @@ -1008,8 +1000,8 @@ simdutf_warn_unused result validate_utf16_with_errors(const char16_t *buf, size_ * This function is not BOM-aware. * * @param buf the UTF-16LE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @param len the length of the string in number of 2-byte code units (char16_t). + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused result validate_utf16le_with_errors(const char16_t *buf, size_t len) noexcept; @@ -1022,8 +1014,8 @@ simdutf_warn_unused result validate_utf16le_with_errors(const char16_t *buf, siz * This function is not BOM-aware. * * @param buf the UTF-16BE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @param len the length of the string in number of 2-byte code units (char16_t). + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, size_t len) noexcept; @@ -1037,7 +1029,7 @@ simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, siz * This function is not BOM-aware. * * @param buf the UTF-32 string to validate. - * @param len the length of the string in number of 4-byte words (char32_t). + * @param len the length of the string in number of 4-byte code units (char32_t). * @return true if and only if the string is valid UTF-32. */ simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) noexcept; @@ -1051,13 +1043,75 @@ simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) noexcep * This function is not BOM-aware. * * @param buf the UTF-32 string to validate. - * @param len the length of the string in number of 4-byte words (char32_t). - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @param len the length of the string in number of 4-byte code units (char32_t). + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_t len) noexcept; + /** + * Convert Latin1 string into UTF8 string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return the number of written char; 0 if conversion is not possible + */ + simdutf_warn_unused size_t convert_latin1_to_utf8(const char * input, size_t length, char* utf8_output) noexcept; + + + /** + * Convert possibly Latin1 string into UTF-16LE string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param utf16_buffer the pointer to buffer that can hold conversion result + * @return the number of written char16_t; 0 if conversion is not possible + */ + simdutf_warn_unused size_t convert_latin1_to_utf16le(const char * input, size_t length, char16_t* utf16_output) noexcept; + + /** + * Convert Latin1 string into UTF-16BE string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param utf16_buffer the pointer to buffer that can hold conversion result + * @return the number of written char16_t; 0 if conversion is not possible + */ + simdutf_warn_unused size_t convert_latin1_to_utf16be(const char * input, size_t length, char16_t* utf16_output) noexcept; + + /** + * Convert Latin1 string into UTF-32 string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param utf32_buffer the pointer to buffer that can hold conversion result + * @return the number of written char32_t; 0 if conversion is not possible + */ + simdutf_warn_unused size_t convert_latin1_to_utf32(const char * input, size_t length, char32_t* utf32_buffer) noexcept; + + /** + * Convert possibly broken UTF-8 string into latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return the number of written char; 0 if the input was not valid UTF-8 string + */ + simdutf_warn_unused size_t convert_utf8_to_latin1(const char * input, size_t length, char* latin1_output) noexcept; + /** - * Using native endianness; Convert possibly broken UTF-8 string into UTF-16 string. + * Using native endianness, convert possibly broken UTF-8 string into a UTF-16 string. * * During the conversion also validation of the input string is done. * This function is suitable to work with inputs from untrusted sources. @@ -1069,6 +1123,17 @@ simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_ */ simdutf_warn_unused size_t convert_utf8_to_utf16(const char * input, size_t length, char16_t* utf16_output) noexcept; + +/** + * Using native endianness, convert a Latin1 string into a UTF-16 string. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in bytes + * @param utf16_buffer the pointer to buffer that can hold conversion result + * @return the number of written char16_t. + */ +simdutf_warn_unused size_t convert_latin1_to_utf16(const char * input, size_t length, char16_t* utf16_output) noexcept; + /** * Convert possibly broken UTF-8 string into UTF-16LE string. * @@ -1095,8 +1160,22 @@ simdutf_warn_unused size_t convert_utf8_to_utf16le(const char * input, size_t le */ simdutf_warn_unused size_t convert_utf8_to_utf16be(const char * input, size_t length, char16_t* utf16_output) noexcept; + + /** + * Convert possibly broken UTF-8 string into latin1 string with errors. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. + */ + simdutf_warn_unused result convert_utf8_to_latin1_with_errors(const char * input, size_t length, char* latin1_output) noexcept; + /** - * Using native endianness; Convert possibly broken UTF-8 string into UTF-16 + * Using native endianness, convert possibly broken UTF-8 string into UTF-16 * string and stop on error. * * During the conversion also validation of the input string is done. @@ -1105,7 +1184,7 @@ simdutf_warn_unused size_t convert_utf8_to_utf16be(const char * input, size_t le * @param input the UTF-8 string to convert * @param length the length of the string in bytes * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused result convert_utf8_to_utf16_with_errors(const char * input, size_t length, char16_t* utf16_output) noexcept; @@ -1118,7 +1197,7 @@ simdutf_warn_unused result convert_utf8_to_utf16_with_errors(const char * input, * @param input the UTF-8 string to convert * @param length the length of the string in bytes * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused result convert_utf8_to_utf16le_with_errors(const char * input, size_t length, char16_t* utf16_output) noexcept; @@ -1131,7 +1210,7 @@ simdutf_warn_unused result convert_utf8_to_utf16le_with_errors(const char * inpu * @param input the UTF-8 string to convert * @param length the length of the string in bytes * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused result convert_utf8_to_utf16be_with_errors(const char * input, size_t length, char16_t* utf16_output) noexcept; @@ -1157,12 +1236,27 @@ simdutf_warn_unused size_t convert_utf8_to_utf32(const char * input, size_t leng * @param input the UTF-8 string to convert * @param length the length of the string in bytes * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char32_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char32_t written if successful. */ simdutf_warn_unused result convert_utf8_to_utf32_with_errors(const char * input, size_t length, char32_t* utf32_output) noexcept; + /** + * Convert valid UTF-8 string into latin1 string. + * + * This function assumes that the input string is valid UTF-8. + * + * This function is not BOM-aware. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return the number of written char; 0 if the input was not valid UTF-8 string + */ + simdutf_warn_unused size_t convert_valid_utf8_to_latin1(const char * input, size_t length, char* latin1_output) noexcept; + + /** - * Using native endianness; Convert valid UTF-8 string into UTF-16 string. + * Using native endianness, convert valid UTF-8 string into a UTF-16 string. * * This function assumes that the input string is valid UTF-8. * @@ -1209,8 +1303,31 @@ simdutf_warn_unused size_t convert_valid_utf8_to_utf16be(const char * input, siz */ simdutf_warn_unused size_t convert_valid_utf8_to_utf32(const char * input, size_t length, char32_t* utf32_buffer) noexcept; + +/** + * Return the number of bytes that this Latin1 string would require in UTF-8 format. + * + * @param input the Latin1 string to convert + * @param length the length of the string bytes + * @return the number of bytes required to encode the Latin1 string as UTF-8 + */ +simdutf_warn_unused size_t utf8_length_from_latin1(const char * input, size_t length) noexcept; + /** - * Compute the number of 2-byte words that this UTF-8 string would require in UTF-16LE format. + * Compute the number of bytes that this UTF-8 string would require in Latin1 format. + * + * This function does not validate the input. + * + * This function is not BOM-aware. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in byte + * @return the number of bytes required to encode the UTF-8 string as Latin1 + */ +simdutf_warn_unused size_t latin1_length_from_utf8(const char * input, size_t length) noexcept; + +/** + * Compute the number of 2-byte code units that this UTF-8 string would require in UTF-16LE format. * * This function does not validate the input. * @@ -1218,12 +1335,12 @@ simdutf_warn_unused size_t convert_valid_utf8_to_utf32(const char * input, size_ * * @param input the UTF-8 string to process * @param length the length of the string in bytes - * @return the number of char16_t words required to encode the UTF-8 string as UTF-16LE + * @return the number of char16_t code units required to encode the UTF-8 string as UTF-16LE */ simdutf_warn_unused size_t utf16_length_from_utf8(const char * input, size_t length) noexcept; /** - * Compute the number of 4-byte words that this UTF-8 string would require in UTF-32 format. + * Compute the number of 4-byte code units that this UTF-8 string would require in UTF-32 format. * * This function is equivalent to count_utf8 * @@ -1233,12 +1350,12 @@ simdutf_warn_unused size_t utf16_length_from_utf8(const char * input, size_t len * * @param input the UTF-8 string to process * @param length the length of the string in bytes - * @return the number of char32_t words required to encode the UTF-8 string as UTF-32 + * @return the number of char32_t code units required to encode the UTF-8 string as UTF-32 */ simdutf_warn_unused size_t utf32_length_from_utf8(const char * input, size_t length) noexcept; /** - * Using native endianness; Convert possibly broken UTF-16 string into UTF-8 string. + * Using native endianness, convert possibly broken UTF-16 string into UTF-8 string. * * During the conversion also validation of the input string is done. * This function is suitable to work with inputs from untrusted sources. @@ -1246,12 +1363,60 @@ simdutf_warn_unused size_t utf32_length_from_utf8(const char * input, size_t len * This function is not BOM-aware. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused size_t convert_utf16_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) noexcept; + + +/** + * Using native endianness, convert possibly broken UTF-16 string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-16 string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if input is not a valid UTF-16LE string + */ +simdutf_warn_unused size_t convert_utf16_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + +/** + * Convert possibly broken UTF-16LE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-16LE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if input is not a valid UTF-16LE string + */ +simdutf_warn_unused size_t convert_utf16le_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + +/** + * Convert possibly broken UTF-16BE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-16BE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ +simdutf_warn_unused size_t convert_utf16be_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + + /** * Convert possibly broken UTF-16LE string into UTF-8 string. * @@ -1261,9 +1426,9 @@ simdutf_warn_unused size_t convert_utf16_to_utf8(const char16_t * input, size_t * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) noexcept; @@ -1276,14 +1441,57 @@ simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t * input, size_ * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) noexcept; /** - * Using native endianness; Convert possibly broken UTF-16 string into UTF-8 string and stop on error. + * Using native endianness, convert possibly broken UTF-16 string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * This function is not BOM-aware. + * + * @param input the UTF-16 string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ +simdutf_warn_unused result convert_utf16_to_latin1_with_errors(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + +/** + * Convert possibly broken UTF-16LE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * This function is not BOM-aware. + * + * @param input the UTF-16LE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ +simdutf_warn_unused result convert_utf16le_to_latin1_with_errors(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + +/** + * Convert possibly broken UTF-16BE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * This function is not BOM-aware. + * + * @param input the UTF-16BE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ +simdutf_warn_unused result convert_utf16be_to_latin1_with_errors(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + + +/** + * Using native endianness, convert possibly broken UTF-16 string into UTF-8 string and stop on error. * * During the conversion also validation of the input string is done. * This function is suitable to work with inputs from untrusted sources. @@ -1291,9 +1499,9 @@ simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t * input, size_ * This function is not BOM-aware. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. */ simdutf_warn_unused result convert_utf16_to_utf8_with_errors(const char16_t * input, size_t length, char* utf8_buffer) noexcept; @@ -1306,9 +1514,9 @@ simdutf_warn_unused result convert_utf16_to_utf8_with_errors(const char16_t * in * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. */ simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * input, size_t length, char* utf8_buffer) noexcept; @@ -1321,26 +1529,70 @@ simdutf_warn_unused result convert_utf16le_to_utf8_with_errors(const char16_t * * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. */ simdutf_warn_unused result convert_utf16be_to_utf8_with_errors(const char16_t * input, size_t length, char* utf8_buffer) noexcept; /** - * Using native endianness; Convert valid UTF-16 string into UTF-8 string. + * Using native endianness, convert valid UTF-16 string into UTF-8 string. * * This function assumes that the input string is valid UTF-16LE. * * This function is not BOM-aware. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf16_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) noexcept; + +/** + * Using native endianness, convert UTF-16 string into Latin1 string. + * + * This function assumes that the input string is valid UTF-8. + * + * This function is not BOM-aware. + * + * @param input the UTF-16 string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if conversion is not possible + */ +simdutf_warn_unused size_t convert_valid_utf16_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + +/** + * Convert valid UTF-16LE string into Latin1 string. + * + * This function assumes that the input string is valid UTF-16LE. + * + * This function is not BOM-aware. + * + * @param input the UTF-16LE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if conversion is not possible + */ +simdutf_warn_unused size_t convert_valid_utf16le_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + +/** + * Convert valid UTF-16BE string into Latin1 string. + * + * This function assumes that the input string is valid UTF-16BE. + * + * This function is not BOM-aware. + * + * @param input the UTF-16BE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if conversion is not possible + */ +simdutf_warn_unused size_t convert_valid_utf16be_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) noexcept; + + /** * Convert valid UTF-16LE string into UTF-8 string. * @@ -1349,9 +1601,9 @@ simdutf_warn_unused size_t convert_valid_utf16_to_utf8(const char16_t * input, s * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf16le_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) noexcept; @@ -1363,14 +1615,14 @@ simdutf_warn_unused size_t convert_valid_utf16le_to_utf8(const char16_t * input, * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf16be_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) noexcept; /** - * Using native endianness; Convert possibly broken UTF-16 string into UTF-32 string. + * Using native endianness, convert possibly broken UTF-16 string into UTF-32 string. * * During the conversion also validation of the input string is done. * This function is suitable to work with inputs from untrusted sources. @@ -1378,9 +1630,9 @@ simdutf_warn_unused size_t convert_valid_utf16be_to_utf8(const char16_t * input, * This function is not BOM-aware. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused size_t convert_utf16_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; @@ -1393,9 +1645,9 @@ simdutf_warn_unused size_t convert_utf16_to_utf32(const char16_t * input, size_t * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused size_t convert_utf16le_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; @@ -1408,14 +1660,14 @@ simdutf_warn_unused size_t convert_utf16le_to_utf32(const char16_t * input, size * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused size_t convert_utf16be_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; /** - * Using native endianness; Convert possibly broken UTF-16 string into + * Using native endianness, convert possibly broken UTF-16 string into * UTF-32 string and stop on error. * * During the conversion also validation of the input string is done. @@ -1424,9 +1676,9 @@ simdutf_warn_unused size_t convert_utf16be_to_utf32(const char16_t * input, size * This function is not BOM-aware. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char32_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char32_t written if successful. */ simdutf_warn_unused result convert_utf16_to_utf32_with_errors(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; @@ -1439,9 +1691,9 @@ simdutf_warn_unused result convert_utf16_to_utf32_with_errors(const char16_t * i * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char32_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char32_t written if successful. */ simdutf_warn_unused result convert_utf16le_to_utf32_with_errors(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; @@ -1454,23 +1706,23 @@ simdutf_warn_unused result convert_utf16le_to_utf32_with_errors(const char16_t * * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char32_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char32_t written if successful. */ simdutf_warn_unused result convert_utf16be_to_utf32_with_errors(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; /** - * Using native endianness; Convert valid UTF-16 string into UTF-32 string. + * Using native endianness, convert valid UTF-16 string into UTF-32 string. * * This function assumes that the input string is valid UTF-16 (native endianness). * * This function is not BOM-aware. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf16_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; @@ -1482,9 +1734,9 @@ simdutf_warn_unused size_t convert_valid_utf16_to_utf32(const char16_t * input, * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf16le_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; @@ -1496,12 +1748,26 @@ simdutf_warn_unused size_t convert_valid_utf16le_to_utf32(const char16_t * input * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf16be_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) noexcept; + +/* + * Compute the number of bytes that this UTF-16LE/BE string would require in Latin1 format. + * + * This function does not validate the input. + * + * This function is not BOM-aware. + * + * @param length the length of the string in 2-byte code units (char16_t) + * @return the number of bytes required to encode the UTF-16LE string as Latin1 + */ +simdutf_warn_unused size_t latin1_length_from_utf16(size_t length) noexcept; + + /** * Using native endianness; Compute the number of bytes that this UTF-16 * string would require in UTF-8 format. @@ -1509,7 +1775,7 @@ simdutf_warn_unused size_t convert_valid_utf16be_to_utf32(const char16_t * input * This function does not validate the input. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16LE string as UTF-8 */ simdutf_warn_unused size_t utf8_length_from_utf16(const char16_t * input, size_t length) noexcept; @@ -1520,7 +1786,7 @@ simdutf_warn_unused size_t utf8_length_from_utf16(const char16_t * input, size_t * This function does not validate the input. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16LE string as UTF-8 */ simdutf_warn_unused size_t utf8_length_from_utf16le(const char16_t * input, size_t length) noexcept; @@ -1531,7 +1797,7 @@ simdutf_warn_unused size_t utf8_length_from_utf16le(const char16_t * input, size * This function does not validate the input. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16BE string as UTF-8 */ simdutf_warn_unused size_t utf8_length_from_utf16be(const char16_t * input, size_t length) noexcept; @@ -1545,9 +1811,9 @@ simdutf_warn_unused size_t utf8_length_from_utf16be(const char16_t * input, size * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-32 string + * @return number of written code units; 0 if input is not a valid UTF-32 string */ simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * input, size_t length, char* utf8_buffer) noexcept; @@ -1560,9 +1826,9 @@ simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t * input, size_t * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. */ simdutf_warn_unused result convert_utf32_to_utf8_with_errors(const char32_t * input, size_t length, char* utf8_buffer) noexcept; @@ -1574,14 +1840,14 @@ simdutf_warn_unused result convert_utf32_to_utf8_with_errors(const char32_t * in * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf8_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf32_to_utf8(const char32_t * input, size_t length, char* utf8_buffer) noexcept; /** - * Using native endianness; Convert possibly broken UTF-32 string into UTF-16 string. + * Using native endianness, convert possibly broken UTF-32 string into a UTF-16 string. * * During the conversion also validation of the input string is done. * This function is suitable to work with inputs from untrusted sources. @@ -1589,9 +1855,9 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf8(const char32_t * input, s * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-32 string + * @return number of written code units; 0 if input is not a valid UTF-32 string */ simdutf_warn_unused size_t convert_utf32_to_utf16(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; @@ -1604,12 +1870,57 @@ simdutf_warn_unused size_t convert_utf32_to_utf16(const char32_t * input, size_t * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-32 string + * @return number of written code units; 0 if input is not a valid UTF-32 string */ simdutf_warn_unused size_t convert_utf32_to_utf16le(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; +/** + * Convert possibly broken UTF-32 string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-32 string to convert + * @param length the length of the string in 4-byte code units (char32_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if input is not a valid UTF-32 string + */ +simdutf_warn_unused size_t convert_utf32_to_latin1(const char32_t * input, size_t length, char* latin1_buffer) noexcept; + + +/** + * Convert possibly broken UTF-32 string into Latin1 string and stop on error. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-32 string to convert + * @param length the length of the string in 4-byte code units (char32_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ +simdutf_warn_unused result convert_utf32_to_latin1_with_errors(const char32_t * input, size_t length, char* latin1_buffer) noexcept; + +/** + * Convert valid UTF-32 string into Latin1 string. + * + * This function assumes that the input string is valid UTF-32. + * + * This function is not BOM-aware. + * + * @param input the UTF-32 string to convert + * @param length the length of the string in 4-byte code units (char32_t) + * @param latin1_buffer the pointer to buffer that can hold the conversion result + * @return number of written code units; 0 if conversion is not possible + */ +simdutf_warn_unused size_t convert_valid_utf32_to_latin1(const char32_t * input, size_t length, char* latin1_buffer) noexcept; + /** * Convert possibly broken UTF-32 string into UTF-16BE string. * @@ -1619,14 +1930,14 @@ simdutf_warn_unused size_t convert_utf32_to_utf16le(const char32_t * input, size * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-32 string + * @return number of written code units; 0 if input is not a valid UTF-32 string */ simdutf_warn_unused size_t convert_utf32_to_utf16be(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; /** - * Using native endianness; Convert possibly broken UTF-32 string into UTF-16 + * Using native endianness, convert possibly broken UTF-32 string into UTF-16 * string and stop on error. * * During the conversion also validation of the input string is done. @@ -1635,9 +1946,9 @@ simdutf_warn_unused size_t convert_utf32_to_utf16be(const char32_t * input, size * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused result convert_utf32_to_utf16_with_errors(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; @@ -1650,9 +1961,9 @@ simdutf_warn_unused result convert_utf32_to_utf16_with_errors(const char32_t * i * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused result convert_utf32_to_utf16le_with_errors(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; @@ -1665,23 +1976,23 @@ simdutf_warn_unused result convert_utf32_to_utf16le_with_errors(const char32_t * * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused result convert_utf32_to_utf16be_with_errors(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; /** - * Using native endianness; Convert valid UTF-32 string into UTF-16 string. + * Using native endianness, convert valid UTF-32 string into a UTF-16 string. * * This function assumes that the input string is valid UTF-32. * * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf32_to_utf16(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; @@ -1693,9 +2004,9 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf16(const char32_t * input, * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf32_to_utf16le(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; @@ -1707,9 +2018,9 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf16le(const char32_t * input * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused size_t convert_valid_utf32_to_utf16be(const char32_t * input, size_t length, char16_t* utf16_buffer) noexcept; @@ -1722,7 +2033,7 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf16be(const char32_t * input * This function is not BOM-aware. * * @param input the UTF-16 string to process - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param output the pointer to buffer that can hold the conversion result */ void change_endianness_utf16(const char16_t * input, size_t length, char16_t * output) noexcept; @@ -1733,18 +2044,18 @@ void change_endianness_utf16(const char16_t * input, size_t length, char16_t * o * This function does not validate the input. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @return the number of bytes required to encode the UTF-32 string as UTF-8 */ simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t * input, size_t length) noexcept; /** - * Compute the number of two-byte words that this UTF-32 string would require in UTF-16 format. + * Compute the number of two-byte code units that this UTF-32 string would require in UTF-16 format. * * This function does not validate the input. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @return the number of bytes required to encode the UTF-32 string as UTF-16 */ simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t * input, size_t length) noexcept; @@ -1760,7 +2071,7 @@ simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t * input, size_ * This function is not BOM-aware. * * @param input the UTF-16 string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16LE string as UTF-32 */ simdutf_warn_unused size_t utf32_length_from_utf16(const char16_t * input, size_t length) noexcept; @@ -1775,7 +2086,7 @@ simdutf_warn_unused size_t utf32_length_from_utf16(const char16_t * input, size_ * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16LE string as UTF-32 */ simdutf_warn_unused size_t utf32_length_from_utf16le(const char16_t * input, size_t length) noexcept; @@ -1790,7 +2101,7 @@ simdutf_warn_unused size_t utf32_length_from_utf16le(const char16_t * input, siz * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16BE string as UTF-32 */ simdutf_warn_unused size_t utf32_length_from_utf16be(const char16_t * input, size_t length) noexcept; @@ -1804,7 +2115,7 @@ simdutf_warn_unused size_t utf32_length_from_utf16be(const char16_t * input, siz * This function is not BOM-aware. * * @param input the UTF-16 string to process - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return number of code points */ simdutf_warn_unused size_t count_utf16(const char16_t * input, size_t length) noexcept; @@ -1818,7 +2129,7 @@ simdutf_warn_unused size_t count_utf16(const char16_t * input, size_t length) no * This function is not BOM-aware. * * @param input the UTF-16LE string to process - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return number of code points */ simdutf_warn_unused size_t count_utf16le(const char16_t * input, size_t length) noexcept; @@ -1832,7 +2143,7 @@ simdutf_warn_unused size_t count_utf16le(const char16_t * input, size_t length) * This function is not BOM-aware. * * @param input the UTF-16BE string to process - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return number of code points */ simdutf_warn_unused size_t count_utf16be(const char16_t * input, size_t length) noexcept; @@ -1849,6 +2160,68 @@ simdutf_warn_unused size_t count_utf16be(const char16_t * input, size_t length) */ simdutf_warn_unused size_t count_utf8(const char * input, size_t length) noexcept; +/** + * Given a valid UTF-8 string having a possibly truncated last character, + * this function checks the end of string. If the last character is truncated (or partial), + * then it returns a shorter length (shorter by 1 to 3 bytes) so that the short UTF-8 + * strings only contain complete characters. If there is no truncated character, + * the original length is returned. + * + * This function assumes that the input string is valid UTF-8, but possibly truncated. + * + * @param input the UTF-8 string to process + * @param length the length of the string in bytes + * @return the length of the string in bytes, possibly shorter by 1 to 3 bytes + */ +simdutf_warn_unused size_t trim_partial_utf8(const char *input, size_t length); + +/** + * Given a valid UTF-16BE string having a possibly truncated last character, + * this function checks the end of string. If the last character is truncated (or partial), + * then it returns a shorter length (shorter by 1 unit) so that the short UTF-16BE + * strings only contain complete characters. If there is no truncated character, + * the original length is returned. + * + * This function assumes that the input string is valid UTF-16BE, but possibly truncated. + * + * @param input the UTF-16BE string to process + * @param length the length of the string in bytes + * @return the length of the string in bytes, possibly shorter by 1 unit + */ +simdutf_warn_unused size_t trim_partial_utf16be(const char16_t* input, size_t length); + +/** + * Given a valid UTF-16LE string having a possibly truncated last character, + * this function checks the end of string. If the last character is truncated (or partial), + * then it returns a shorter length (shorter by 1 unit) so that the short UTF-16LE + * strings only contain complete characters. If there is no truncated character, + * the original length is returned. + * + * This function assumes that the input string is valid UTF-16LE, but possibly truncated. + * + * @param input the UTF-16LE string to process + * @param length the length of the string in bytes + * @return the length of the string in unit, possibly shorter by 1 unit + */ +simdutf_warn_unused size_t trim_partial_utf16le(const char16_t* input, size_t length); + + +/** + * Given a valid UTF-16 string having a possibly truncated last character, + * this function checks the end of string. If the last character is truncated (or partial), + * then it returns a shorter length (shorter by 1 unit) so that the short UTF-16 + * strings only contain complete characters. If there is no truncated character, + * the original length is returned. + * + * This function assumes that the input string is valid UTF-16, but possibly truncated. + * We use the native endianness. + * + * @param input the UTF-16 string to process + * @param length the length of the string in bytes + * @return the length of the string in unit, possibly shorter by 1 unit + */ +simdutf_warn_unused size_t trim_partial_utf16(const char16_t* input, size_t length); + /** * An implementation of simdutf for a particular CPU architecture. * @@ -1932,7 +2305,7 @@ class implementation { * * @param buf the UTF-8 string to validate. * @param len the length of the string in bytes. - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused virtual result validate_utf8_with_errors(const char *buf, size_t len) const noexcept = 0; @@ -1954,7 +2327,7 @@ class implementation { * * @param buf the ASCII string to validate. * @param len the length of the string in bytes. - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused virtual result validate_ascii_with_errors(const char *buf, size_t len) const noexcept = 0; @@ -1968,7 +2341,7 @@ class implementation { * This function is not BOM-aware. * * @param buf the UTF-16LE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). + * @param len the length of the string in number of 2-byte code units (char16_t). * @return true if and only if the string is valid UTF-16LE. */ simdutf_warn_unused virtual bool validate_utf16le(const char16_t *buf, size_t len) const noexcept = 0; @@ -1983,7 +2356,7 @@ class implementation { * This function is not BOM-aware. * * @param buf the UTF-16BE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). + * @param len the length of the string in number of 2-byte code units (char16_t). * @return true if and only if the string is valid UTF-16BE. */ simdutf_warn_unused virtual bool validate_utf16be(const char16_t *buf, size_t len) const noexcept = 0; @@ -1997,8 +2370,8 @@ class implementation { * This function is not BOM-aware. * * @param buf the UTF-16LE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @param len the length of the string in number of 2-byte code units (char16_t). + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused virtual result validate_utf16le_with_errors(const char16_t *buf, size_t len) const noexcept = 0; @@ -2011,8 +2384,8 @@ class implementation { * This function is not BOM-aware. * * @param buf the UTF-16BE string to validate. - * @param len the length of the string in number of 2-byte words (char16_t). - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @param len the length of the string in number of 2-byte code units (char16_t). + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused virtual result validate_utf16be_with_errors(const char16_t *buf, size_t len) const noexcept = 0; @@ -2024,7 +2397,7 @@ class implementation { * This function is not BOM-aware. * * @param buf the UTF-32 string to validate. - * @param len the length of the string in number of 4-byte words (char32_t). + * @param len the length of the string in number of 4-byte code units (char32_t). * @return true if and only if the string is valid UTF-32. */ simdutf_warn_unused virtual bool validate_utf32(const char32_t *buf, size_t len) const noexcept = 0; @@ -2037,11 +2410,101 @@ class implementation { * This function is not BOM-aware. * * @param buf the UTF-32 string to validate. - * @param len the length of the string in number of 4-byte words (char32_t). - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @param len the length of the string in number of 4-byte code units (char32_t). + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused virtual result validate_utf32_with_errors(const char32_t *buf, size_t len) const noexcept = 0; + /** + * Convert Latin1 string into UTF8 string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return the number of written char; 0 if conversion is not possible + */ + simdutf_warn_unused virtual size_t convert_latin1_to_utf8(const char * input, size_t length, char* utf8_output) const noexcept = 0; + + + /** + * Convert possibly Latin1 string into UTF-16LE string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param utf16_buffer the pointer to buffer that can hold conversion result + * @return the number of written char16_t; 0 if conversion is not possible + */ + simdutf_warn_unused virtual size_t convert_latin1_to_utf16le(const char * input, size_t length, char16_t* utf16_output) const noexcept = 0; + + /** + * Convert Latin1 string into UTF-16BE string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param utf16_buffer the pointer to buffer that can hold conversion result + * @return the number of written char16_t; 0 if conversion is not possible + */ + simdutf_warn_unused virtual size_t convert_latin1_to_utf16be(const char * input, size_t length, char16_t* utf16_output) const noexcept = 0; + + /** + * Convert Latin1 string into UTF-32 string. + * + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the Latin1 string to convert + * @param length the length of the string in bytes + * @param utf32_buffer the pointer to buffer that can hold conversion result + * @return the number of written char32_t; 0 if conversion is not possible + */ + simdutf_warn_unused virtual size_t convert_latin1_to_utf32(const char * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; + + /** + * Convert possibly broken UTF-8 string into latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return the number of written char; 0 if the input was not valid UTF-8 string + */ + simdutf_warn_unused virtual size_t convert_utf8_to_latin1(const char * input, size_t length, char* latin1_output) const noexcept = 0; + + /** + * Convert possibly broken UTF-8 string into latin1 string with errors + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. + */ + simdutf_warn_unused virtual result convert_utf8_to_latin1_with_errors(const char * input, size_t length, char* latin1_output) const noexcept = 0; + + /** + * Convert valid UTF-8 string into latin1 string. + * + * This function assumes that the input string is valid UTF-8. + * + * This function is not BOM-aware. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in bytes + * @param latin1_output the pointer to buffer that can hold conversion result + * @return the number of written char; 0 if the input was not valid UTF-8 string + */ + simdutf_warn_unused virtual size_t convert_valid_utf8_to_latin1(const char * input, size_t length, char* latin1_output) const noexcept = 0; + + /** * Convert possibly broken UTF-8 string into UTF-16LE string. * @@ -2077,7 +2540,7 @@ class implementation { * @param input the UTF-8 string to convert * @param length the length of the string in bytes * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused virtual result convert_utf8_to_utf16le_with_errors(const char * input, size_t length, char16_t* utf16_output) const noexcept = 0; @@ -2090,7 +2553,7 @@ class implementation { * @param input the UTF-8 string to convert * @param length the length of the string in bytes * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of words validated if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of code units validated if successful. */ simdutf_warn_unused virtual result convert_utf8_to_utf16be_with_errors(const char * input, size_t length, char16_t* utf16_output) const noexcept = 0; @@ -2116,7 +2579,7 @@ class implementation { * @param input the UTF-8 string to convert * @param length the length of the string in bytes * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char32_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char32_t written if successful. */ simdutf_warn_unused virtual result convert_utf8_to_utf32_with_errors(const char * input, size_t length, char32_t* utf32_output) const noexcept = 0; @@ -2157,18 +2620,18 @@ class implementation { simdutf_warn_unused virtual size_t convert_valid_utf8_to_utf32(const char * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; /** - * Compute the number of 2-byte words that this UTF-8 string would require in UTF-16LE format. + * Compute the number of 2-byte code units that this UTF-8 string would require in UTF-16LE format. * * This function does not validate the input. * * @param input the UTF-8 string to process * @param length the length of the string in bytes - * @return the number of char16_t words required to encode the UTF-8 string as UTF-16LE + * @return the number of char16_t code units required to encode the UTF-8 string as UTF-16LE */ simdutf_warn_unused virtual size_t utf16_length_from_utf8(const char * input, size_t length) const noexcept = 0; /** - * Compute the number of 4-byte words that this UTF-8 string would require in UTF-32 format. + * Compute the number of 4-byte code units that this UTF-8 string would require in UTF-32 format. * * This function is equivalent to count_utf8. * @@ -2176,10 +2639,96 @@ class implementation { * * @param input the UTF-8 string to process * @param length the length of the string in bytes - * @return the number of char32_t words required to encode the UTF-8 string as UTF-32 + * @return the number of char32_t code units required to encode the UTF-8 string as UTF-32 */ simdutf_warn_unused virtual size_t utf32_length_from_utf8(const char * input, size_t length) const noexcept = 0; + /** + * Convert possibly broken UTF-16LE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-16LE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if input is not a valid UTF-16LE string + */ + simdutf_warn_unused virtual size_t convert_utf16le_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + + /** + * Convert possibly broken UTF-16BE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-16BE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ + simdutf_warn_unused virtual size_t convert_utf16be_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + + /** + * Convert possibly broken UTF-16LE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * This function is not BOM-aware. + * + * @param input the UTF-16LE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ + simdutf_warn_unused virtual result convert_utf16le_to_latin1_with_errors(const char16_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + + /** + * Convert possibly broken UTF-16BE string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * This function is not BOM-aware. + * + * @param input the UTF-16BE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ + simdutf_warn_unused virtual result convert_utf16be_to_latin1_with_errors(const char16_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + + /** + * Convert valid UTF-16LE string into Latin1 string. + * + * This function assumes that the input string is valid UTF-8. + + * This function is not BOM-aware. + * + * @param input the UTF-16LE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if conversion is not possible + */ + simdutf_warn_unused virtual size_t convert_valid_utf16le_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + + /** + * Convert valid UTF-16BE string into Latin1 string. + * + * This function assumes that the input string is valid UTF-8. + * + * This function is not BOM-aware. + * + * @param input the UTF-16BE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if conversion is not possible + */ + simdutf_warn_unused virtual size_t convert_valid_utf16be_to_latin1(const char16_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + /** * Convert possibly broken UTF-16LE string into UTF-8 string. * @@ -2189,9 +2738,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused virtual size_t convert_utf16le_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2204,9 +2753,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16BE string + * @return number of written code units; 0 if input is not a valid UTF-16BE string */ simdutf_warn_unused virtual size_t convert_utf16be_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2219,9 +2768,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. */ simdutf_warn_unused virtual result convert_utf16le_to_utf8_with_errors(const char16_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2234,9 +2783,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. */ simdutf_warn_unused virtual result convert_utf16be_to_utf8_with_errors(const char16_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2248,9 +2797,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused virtual size_t convert_valid_utf16le_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2262,9 +2811,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf8_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused virtual size_t convert_valid_utf16be_to_utf8(const char16_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2277,9 +2826,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16LE string + * @return number of written code units; 0 if input is not a valid UTF-16LE string */ simdutf_warn_unused virtual size_t convert_utf16le_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; @@ -2292,9 +2841,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-16BE string + * @return number of written code units; 0 if input is not a valid UTF-16BE string */ simdutf_warn_unused virtual size_t convert_utf16be_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; @@ -2307,9 +2856,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char32_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char32_t written if successful. */ simdutf_warn_unused virtual result convert_utf16le_to_utf32_with_errors(const char16_t * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; @@ -2322,9 +2871,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char32_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char32_t written if successful. */ simdutf_warn_unused virtual result convert_utf16be_to_utf32_with_errors(const char16_t * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; @@ -2336,9 +2885,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused virtual size_t convert_valid_utf16le_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; @@ -2350,9 +2899,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param utf32_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused virtual size_t convert_valid_utf16be_to_utf32(const char16_t * input, size_t length, char32_t* utf32_buffer) const noexcept = 0; @@ -2364,7 +2913,7 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16LE string as UTF-8 */ simdutf_warn_unused virtual size_t utf8_length_from_utf16le(const char16_t * input, size_t length) const noexcept = 0; @@ -2377,11 +2926,57 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16BE string as UTF-8 */ simdutf_warn_unused virtual size_t utf8_length_from_utf16be(const char16_t * input, size_t length) const noexcept = 0; + /** + * Convert possibly broken UTF-32 string into Latin1 string. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-32 string to convert + * @param length the length of the string in 4-byte code units (char32_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return number of written code units; 0 if input is not a valid UTF-32 string + */ + + simdutf_warn_unused virtual size_t convert_utf32_to_latin1(const char32_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + + /** + * Convert possibly broken UTF-32 string into Latin1 string and stop on error. + * + * During the conversion also validation of the input string is done. + * This function is suitable to work with inputs from untrusted sources. + * + * This function is not BOM-aware. + * + * @param input the UTF-32 string to convert + * @param length the length of the string in 4-byte code units (char32_t) + * @param latin1_buffer the pointer to buffer that can hold conversion result + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. + */ + + simdutf_warn_unused virtual result convert_utf32_to_latin1_with_errors(const char32_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + + /** + * Convert valid UTF-32 string into Latin1 string. + * + * This function assumes that the input string is valid UTF-32. + * + * This function is not BOM-aware. + * + * @param input the UTF-32 string to convert + * @param length the length of the string in 4-byte code units (char32_t) + * @param latin1_buffer the pointer to buffer that can hold the conversion result + * @return number of written code units; 0 if conversion is not possible + */ + simdutf_warn_unused virtual size_t convert_valid_utf32_to_latin1(const char32_t * input, size_t length, char* latin1_buffer) const noexcept = 0; + /** * Convert possibly broken UTF-32 string into UTF-8 string. * @@ -2391,9 +2986,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-32 string + * @return number of written code units; 0 if input is not a valid UTF-32 string */ simdutf_warn_unused virtual size_t convert_utf32_to_utf8(const char32_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2406,9 +3001,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf8_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char written if successful. */ simdutf_warn_unused virtual result convert_utf32_to_utf8_with_errors(const char32_t * input, size_t length, char* utf8_buffer) const noexcept = 0; @@ -2420,12 +3015,23 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf8_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused virtual size_t convert_valid_utf32_to_utf8(const char32_t * input, size_t length, char* utf8_buffer) const noexcept = 0; + + /** + * Return the number of bytes that this UTF-16 string would require in Latin1 format. + * + * + * @param input the UTF-16 string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @return the number of bytes required to encode the UTF-16 string as Latin1 + */ + simdutf_warn_unused virtual size_t utf16_length_from_latin1(size_t length) const noexcept = 0; + /** * Convert possibly broken UTF-32 string into UTF-16LE string. * @@ -2435,9 +3041,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-32 string + * @return number of written code units; 0 if input is not a valid UTF-32 string */ simdutf_warn_unused virtual size_t convert_utf32_to_utf16le(const char32_t * input, size_t length, char16_t* utf16_buffer) const noexcept = 0; @@ -2450,9 +3056,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return number of written words; 0 if input is not a valid UTF-32 string + * @return number of written code units; 0 if input is not a valid UTF-32 string */ simdutf_warn_unused virtual size_t convert_utf32_to_utf16be(const char32_t * input, size_t length, char16_t* utf16_buffer) const noexcept = 0; @@ -2465,9 +3071,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused virtual result convert_utf32_to_utf16le_with_errors(const char32_t * input, size_t length, char16_t* utf16_buffer) const noexcept = 0; @@ -2480,9 +3086,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold conversion result - * @return a result pair struct with an error code and either the position of the error if any or the number of char16_t written if successful. + * @return a result pair struct (of type simdutf::error containing the two fields error and count) with an error code and either position of the error (in the input in code units) if any, or the number of char16_t written if successful. */ simdutf_warn_unused virtual result convert_utf32_to_utf16be_with_errors(const char32_t * input, size_t length, char16_t* utf16_buffer) const noexcept = 0; @@ -2494,9 +3100,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused virtual size_t convert_valid_utf32_to_utf16le(const char32_t * input, size_t length, char16_t* utf16_buffer) const noexcept = 0; @@ -2508,9 +3114,9 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @param utf16_buffer the pointer to buffer that can hold the conversion result - * @return number of written words; 0 if conversion is not possible + * @return number of written code units; 0 if conversion is not possible */ simdutf_warn_unused virtual size_t convert_valid_utf32_to_utf16be(const char32_t * input, size_t length, char16_t* utf16_buffer) const noexcept = 0; @@ -2523,33 +3129,88 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16 string to process - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @param output the pointer to buffer that can hold the conversion result */ virtual void change_endianness_utf16(const char16_t * input, size_t length, char16_t * output) const noexcept = 0; + /** + * Return the number of bytes that this Latin1 string would require in UTF-8 format. + * + * @param input the Latin1 string to convert + * @param length the length of the string bytes + * @return the number of bytes required to encode the Latin1 string as UTF-8 + */ + simdutf_warn_unused virtual size_t utf8_length_from_latin1(const char * input, size_t length) const noexcept = 0; + /** * Compute the number of bytes that this UTF-32 string would require in UTF-8 format. * * This function does not validate the input. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @return the number of bytes required to encode the UTF-32 string as UTF-8 */ simdutf_warn_unused virtual size_t utf8_length_from_utf32(const char32_t * input, size_t length) const noexcept = 0; /** - * Compute the number of two-byte words that this UTF-32 string would require in UTF-16 format. + * Compute the number of bytes that this UTF-32 string would require in Latin1 format. + * + * This function does not validate the input. + * + * @param length the length of the string in 4-byte code units (char32_t) + * @return the number of bytes required to encode the UTF-32 string as Latin1 + */ + simdutf_warn_unused virtual size_t latin1_length_from_utf32(size_t length) const noexcept = 0; + + /** + * Compute the number of bytes that this UTF-8 string would require in Latin1 format. + * + * This function does not validate the input. + * + * @param input the UTF-8 string to convert + * @param length the length of the string in byte + * @return the number of bytes required to encode the UTF-8 string as Latin1 + */ + simdutf_warn_unused virtual size_t latin1_length_from_utf8(const char * input, size_t length) const noexcept = 0; + + /* + * Compute the number of bytes that this UTF-16LE/BE string would require in Latin1 format. + * + * This function does not validate the input. + * + * This function is not BOM-aware. + * + * @param input the UTF-16LE string to convert + * @param length the length of the string in 2-byte code units (char16_t) + * @return the number of bytes required to encode the UTF-16LE string as Latin1 + */ + simdutf_warn_unused virtual size_t latin1_length_from_utf16(size_t length) const noexcept = 0; + + /** + * Compute the number of two-byte code units that this UTF-32 string would require in UTF-16 format. * * This function does not validate the input. * * @param input the UTF-32 string to convert - * @param length the length of the string in 4-byte words (char32_t) + * @param length the length of the string in 4-byte code units (char32_t) * @return the number of bytes required to encode the UTF-32 string as UTF-16 */ simdutf_warn_unused virtual size_t utf16_length_from_utf32(const char32_t * input, size_t length) const noexcept = 0; + + /** + * Return the number of bytes that this UTF-32 string would require in Latin1 format. + * + * This function does not validate the input. + * + * @param input the UTF-32 string to convert + * @param length the length of the string in 4-byte code units (char32_t) + * @return the number of bytes required to encode the UTF-32 string as Latin1 + */ + simdutf_warn_unused virtual size_t utf32_length_from_latin1(size_t length) const noexcept = 0; + /* * Compute the number of bytes that this UTF-16LE string would require in UTF-32 format. * @@ -2560,7 +3221,7 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16LE string as UTF-32 */ simdutf_warn_unused virtual size_t utf32_length_from_utf16le(const char16_t * input, size_t length) const noexcept = 0; @@ -2575,7 +3236,7 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to convert - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return the number of bytes required to encode the UTF-16BE string as UTF-32 */ simdutf_warn_unused virtual size_t utf32_length_from_utf16be(const char16_t * input, size_t length) const noexcept = 0; @@ -2589,7 +3250,7 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16LE string to process - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return number of code points */ simdutf_warn_unused virtual size_t count_utf16le(const char16_t * input, size_t length) const noexcept = 0; @@ -2603,7 +3264,7 @@ class implementation { * This function is not BOM-aware. * * @param input the UTF-16BE string to process - * @param length the length of the string in 2-byte words (char16_t) + * @param length the length of the string in 2-byte code units (char16_t) * @return number of code points */ simdutf_warn_unused virtual size_t count_utf16be(const char16_t * input, size_t length) const noexcept = 0; diff --git a/doc/contributing/maintaining/maintaining-dependencies.md b/doc/contributing/maintaining/maintaining-dependencies.md index dc78a9dd2b533c..49c738b52005ed 100644 --- a/doc/contributing/maintaining/maintaining-dependencies.md +++ b/doc/contributing/maintaining/maintaining-dependencies.md @@ -27,7 +27,7 @@ This a list of all the dependencies: * [npm 9.6.7][] * [openssl 3.0.8][] * [postject 1.0.0-alpha.6][] -* [simdutf 3.2.18][] +* [simdutf 4.0.4][] * [undici 5.27.0][] * [uvwasi 0.0.19][] * [V8 11.8.172.12][] @@ -286,7 +286,7 @@ See [maintaining-openssl][] for more informations. The [postject](https://github.com/nodejs/postject) dependency is used for the [Single Executable strategic initiative](https://github.com/nodejs/single-executable). -### simdutf 3.2.18 +### simdutf 4.0.4 The [simdutf](https://github.com/simdutf/simdutf) dependency is a C++ library for fast UTF-8 decoding and encoding. @@ -344,7 +344,7 @@ performance improvements not currently available in standard zlib. [npm 9.6.7]: #npm-967 [openssl 3.0.8]: #openssl-308 [postject 1.0.0-alpha.6]: #postject-100-alpha6 -[simdutf 3.2.18]: #simdutf-3218 +[simdutf 4.0.4]: #simdutf-404 [undici 5.27.0]: #undici-5270 [update-openssl-action]: ../../../.github/workflows/update-openssl.yml [uvwasi 0.0.19]: #uvwasi-0019 From b4935dde60b32136818405c28e1fe4d80e08797b Mon Sep 17 00:00:00 2001 From: Ryan Zimmerman Date: Sat, 18 Nov 2023 13:25:48 -0500 Subject: [PATCH 045/114] doc: fix fs.writeFileSync return value documentation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In https://github.com/nodejs/node/pull/50009, the return value was accidentally made part of `flush` option bullet point. PR-URL: https://github.com/nodejs/node/pull/50760 Reviewed-By: Luigi Pinca Reviewed-By: Vinícius Lourenço Claro Cardoso Reviewed-By: Deokjin Kim --- doc/api/fs.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/api/fs.md b/doc/api/fs.md index 243ab75ca72541..50abf3678b6300 100644 --- a/doc/api/fs.md +++ b/doc/api/fs.md @@ -6256,7 +6256,8 @@ changes: * `flag` {string} See [support of file system `flags`][]. **Default:** `'w'`. * `flush` {boolean} If all data is successfully written to the file, and `flush` is `true`, `fs.fsyncSync()` is used to flush the data. - Returns `undefined`. + +Returns `undefined`. The `mode` option only affects the newly created file. See [`fs.open()`][] for more details. From f2e0fce389790da07d98cac2fa7d23e68b42e70b Mon Sep 17 00:00:00 2001 From: Jan Date: Sat, 18 Nov 2023 20:09:30 +0100 Subject: [PATCH 046/114] test: replace forEach() with for-loop PR-URL: https://github.com/nodejs/node/pull/50596 Reviewed-By: Marco Ippolito Reviewed-By: Rafael Gonzaga Reviewed-By: Luigi Pinca Reviewed-By: James M Snell --- test/parallel/test-trace-events-vm.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/parallel/test-trace-events-vm.js b/test/parallel/test-trace-events-vm.js index b52d22368d07d2..d85a2cefd645af 100644 --- a/test/parallel/test-trace-events-vm.js +++ b/test/parallel/test-trace-events-vm.js @@ -32,10 +32,10 @@ if (process.argv[2] === 'child') { fs.readFile(file, common.mustCall((err, data) => { const traces = JSON.parse(data.toString()).traceEvents .filter((trace) => trace.cat !== '__metadata'); - traces.forEach((trace) => { + for (const trace of traces) { assert.strictEqual(trace.pid, proc.pid); assert(names.includes(trace.name)); - }); + } })); })); } From 36380eb53dd6b48678a70a69aba0bccfd368e108 Mon Sep 17 00:00:00 2001 From: Lei Shi Date: Sun, 19 Nov 2023 14:33:59 +0800 Subject: [PATCH 047/114] benchmark: increase the iteration number to an appropriate value MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Current iteration number is too small that fwrite occupies large portion of execution time which made crypo execution time measured inaccurate. The iteration above 1e5 makes 50% higher and stable score. PR-URL: https://github.com/nodejs/node/pull/50766 Reviewed-By: Debadree Chatterjee Reviewed-By: Filip Skokan Reviewed-By: Vinícius Lourenço Claro Cardoso --- benchmark/crypto/webcrypto-digest.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/benchmark/crypto/webcrypto-digest.js b/benchmark/crypto/webcrypto-digest.js index e2e6f55c6fdd1f..f5ef8e6bc49385 100644 --- a/benchmark/crypto/webcrypto-digest.js +++ b/benchmark/crypto/webcrypto-digest.js @@ -8,7 +8,7 @@ const bench = common.createBenchmark(main, { sync: ['createHash', 'subtle'], data: [10, 20, 50, 100], method: ['SHA-1', 'SHA-256', 'SHA-384', 'SHA-512'], - n: [1e3], + n: [1e5], }); const kMethods = { From a275155e815d031356092a843d1752d12aca60b9 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 13 Nov 2023 13:47:46 +0100 Subject: [PATCH 048/114] stream: add Symbol.toStringTag to Compression Streams PR-URL: https://github.com/nodejs/node/pull/50712 Reviewed-By: Yagiz Nizipli Reviewed-By: Matteo Collina --- lib/internal/webstreams/compression.js | 11 +++++++++++ test/parallel/test-whatwg-webstreams-compression.js | 3 +++ 2 files changed, 14 insertions(+) diff --git a/lib/internal/webstreams/compression.js b/lib/internal/webstreams/compression.js index 32f3f9b4605032..ac10d093dcefcc 100644 --- a/lib/internal/webstreams/compression.js +++ b/lib/internal/webstreams/compression.js @@ -2,6 +2,7 @@ const { ObjectDefineProperties, + SymbolToStringTag, } = primordials; const { @@ -137,11 +138,21 @@ class DecompressionStream { ObjectDefineProperties(CompressionStream.prototype, { readable: kEnumerableProperty, writable: kEnumerableProperty, + [SymbolToStringTag]: { + __proto__: null, + configurable: true, + value: 'CompressionStream', + }, }); ObjectDefineProperties(DecompressionStream.prototype, { readable: kEnumerableProperty, writable: kEnumerableProperty, + [SymbolToStringTag]: { + __proto__: null, + configurable: true, + value: 'DecompressionStream', + }, }); module.exports = { diff --git a/test/parallel/test-whatwg-webstreams-compression.js b/test/parallel/test-whatwg-webstreams-compression.js index fb20801543bff6..c144a0a2e3d43d 100644 --- a/test/parallel/test-whatwg-webstreams-compression.js +++ b/test/parallel/test-whatwg-webstreams-compression.js @@ -15,6 +15,9 @@ async function test(format) { const gzip = new CompressionStream(format); const gunzip = new DecompressionStream(format); + assert.strictEqual(gzip[Symbol.toStringTag], 'CompressionStream'); + assert.strictEqual(gunzip[Symbol.toStringTag], 'DecompressionStream'); + gzip.readable.pipeTo(gunzip.writable).then(common.mustCall()); const reader = gunzip.readable.getReader(); From 2e0abed973c61a377e80912fd6c453835ce490ae Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 13 Nov 2023 14:30:50 +0100 Subject: [PATCH 049/114] stream: yield expected Error class on zlib errors PR-URL: https://github.com/nodejs/node/pull/50712 Reviewed-By: Yagiz Nizipli Reviewed-By: Matteo Collina --- lib/internal/webstreams/adapters.js | 50 +++++++++++++++++++++++------ test/wpt/status/compression.json | 15 +-------- 2 files changed, 42 insertions(+), 23 deletions(-) diff --git a/lib/internal/webstreams/adapters.js b/lib/internal/webstreams/adapters.js index 878fd0a0d4d76b..cffa549eafd683 100644 --- a/lib/internal/webstreams/adapters.js +++ b/lib/internal/webstreams/adapters.js @@ -1,13 +1,19 @@ 'use strict'; const { + ArrayPrototypeFilter, + ArrayPrototypeMap, + Boolean, + ObjectEntries, PromisePrototypeThen, PromiseResolve, SafePromiseAll, SafePromisePrototypeFinally, + SafeSet, TypedArrayPrototypeGetBuffer, - TypedArrayPrototypeGetByteOffset, TypedArrayPrototypeGetByteLength, + TypedArrayPrototypeGetByteOffset, + TypeError, Uint8Array, } = primordials; @@ -82,6 +88,38 @@ const { UV_EOF } = internalBinding('uv'); const encoder = new TextEncoder(); +// Collect all negative (error) ZLIB codes and Z_NEED_DICT +const ZLIB_FAILURES = new SafeSet([ + ...ArrayPrototypeFilter( + ArrayPrototypeMap( + ObjectEntries(internalBinding('constants').zlib), + ({ 0: code, 1: value }) => (value < 0 ? code : null), + ), + Boolean, + ), + 'Z_NEED_DICT', +]); + +/** + * @param {Error|null} cause + * @returns {Error|null} + */ +function handleKnownInternalErrors(cause) { + switch (true) { + case cause?.code === 'ERR_STREAM_PREMATURE_CLOSE': { + return new AbortError(undefined, { cause }); + } + case ZLIB_FAILURES.has(cause?.code): { + // eslint-disable-next-line no-restricted-syntax + const error = new TypeError(undefined, { cause }); + error.code = cause.code; + return error; + } + default: + return cause; + } +} + /** * @typedef {import('../../stream').Writable} Writable * @typedef {import('../../stream').Readable} Readable @@ -137,10 +175,7 @@ function newWritableStreamFromStreamWritable(streamWritable) { } const cleanup = finished(streamWritable, (error) => { - if (error?.code === 'ERR_STREAM_PREMATURE_CLOSE') { - const err = new AbortError(undefined, { cause: error }); - error = err; - } + error = handleKnownInternalErrors(error); cleanup(); // This is a protection against non-standard, legacy streams @@ -440,10 +475,7 @@ function newReadableStreamFromStreamReadable(streamReadable, options = kEmptyObj streamReadable.pause(); const cleanup = finished(streamReadable, (error) => { - if (error?.code === 'ERR_STREAM_PREMATURE_CLOSE') { - const err = new AbortError(undefined, { cause: error }); - error = err; - } + error = handleKnownInternalErrors(error); cleanup(); // This is a protection against non-standard, legacy streams diff --git a/test/wpt/status/compression.json b/test/wpt/status/compression.json index cf979345ea87cb..31a5a78b69ddc0 100644 --- a/test/wpt/status/compression.json +++ b/test/wpt/status/compression.json @@ -14,21 +14,8 @@ "decompression-corrupt-input.tentative.any.js": { "fail": { "expected": [ - "truncating the input for 'deflate' should give an error", "trailing junk for 'deflate' should give an error", - "format 'deflate' field CMF should be error for 0", - "format 'deflate' field FLG should be error for 157", - "format 'deflate' field DATA should be error for 5", - "format 'deflate' field ADLER should be error for 255", - "truncating the input for 'gzip' should give an error", - "trailing junk for 'gzip' should give an error", - "format 'gzip' field ID should be error for 255", - "format 'gzip' field CM should be error for 0", - "format 'gzip' field FLG should be error for 2", - "format 'gzip' field DATA should be error for 3", - "format 'gzip' field CRC should be error for 0", - "format 'gzip' field ISIZE should be error for 1", - "the deflate input compressed with dictionary should give an error" + "trailing junk for 'gzip' should give an error" ] } }, From f25637b5c9b34250bd7b0b9f0d54be4ece10ab89 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 13 Nov 2023 15:32:53 +0100 Subject: [PATCH 050/114] test: update WPT files for WebIDL tests PR-URL: https://github.com/nodejs/node/pull/50712 Reviewed-By: Yagiz Nizipli Reviewed-By: Matteo Collina --- test/fixtures/wpt/README.md | 4 +- test/fixtures/wpt/interfaces/compression.idl | 22 + test/fixtures/wpt/interfaces/dom.idl | 3 +- test/fixtures/wpt/interfaces/encoding.idl | 2 +- test/fixtures/wpt/interfaces/hr-time.idl | 2 +- test/fixtures/wpt/interfaces/html.idl | 264 ++++++++-- .../wpt/interfaces/performance-timeline.idl | 8 +- .../wpt/interfaces/resource-timing.idl | 12 +- test/fixtures/wpt/interfaces/streams.idl | 2 + test/fixtures/wpt/interfaces/url.idl | 8 +- test/fixtures/wpt/interfaces/user-timing.idl | 4 +- test/fixtures/wpt/interfaces/webidl.idl | 5 +- .../declarative-shadow-dom-polyfill.js | 3 +- test/fixtures/wpt/resources/idlharness.js | 7 +- test/fixtures/wpt/resources/testdriver.js | 481 ++++++++++++++++-- test/fixtures/wpt/resources/testharness.js | 36 +- test/fixtures/wpt/versions.json | 4 +- test/wpt/status/compression.json | 3 - test/wpt/status/resource-timing.json | 17 + test/wpt/status/streams.json | 3 +- test/wpt/test-compression.js | 2 + 21 files changed, 762 insertions(+), 130 deletions(-) create mode 100644 test/fixtures/wpt/interfaces/compression.idl diff --git a/test/fixtures/wpt/README.md b/test/fixtures/wpt/README.md index 1c7121feb30c9e..26dd520f8f3eed 100644 --- a/test/fixtures/wpt/README.md +++ b/test/fixtures/wpt/README.md @@ -23,10 +23,10 @@ Last update: - html/webappapis/microtask-queuing: https://github.com/web-platform-tests/wpt/tree/2c5c3c4c27/html/webappapis/microtask-queuing - html/webappapis/structured-clone: https://github.com/web-platform-tests/wpt/tree/47d3fb280c/html/webappapis/structured-clone - html/webappapis/timers: https://github.com/web-platform-tests/wpt/tree/5873f2d8f1/html/webappapis/timers -- interfaces: https://github.com/web-platform-tests/wpt/tree/df731dab88/interfaces +- interfaces: https://github.com/web-platform-tests/wpt/tree/727995f043/interfaces - performance-timeline: https://github.com/web-platform-tests/wpt/tree/17ebc3aea0/performance-timeline - resource-timing: https://github.com/web-platform-tests/wpt/tree/22d38586d0/resource-timing -- resources: https://github.com/web-platform-tests/wpt/tree/919874f84f/resources +- resources: https://github.com/web-platform-tests/wpt/tree/1e140d63ec/resources - streams: https://github.com/web-platform-tests/wpt/tree/517e945bbf/streams - url: https://github.com/web-platform-tests/wpt/tree/c2d7e70b52/url - user-timing: https://github.com/web-platform-tests/wpt/tree/5ae85bf826/user-timing diff --git a/test/fixtures/wpt/interfaces/compression.idl b/test/fixtures/wpt/interfaces/compression.idl new file mode 100644 index 00000000000000..7525d7c9847b74 --- /dev/null +++ b/test/fixtures/wpt/interfaces/compression.idl @@ -0,0 +1,22 @@ +// GENERATED CONTENT - DO NOT EDIT +// Content was automatically extracted by Reffy into webref +// (https://github.com/w3c/webref) +// Source: Compression Streams (https://wicg.github.io/compression/) + +enum CompressionFormat { + "deflate", + "deflate-raw", + "gzip", +}; + +[Exposed=*] +interface CompressionStream { + constructor(CompressionFormat format); +}; +CompressionStream includes GenericTransformStream; + +[Exposed=*] +interface DecompressionStream { + constructor(CompressionFormat format); +}; +DecompressionStream includes GenericTransformStream; diff --git a/test/fixtures/wpt/interfaces/dom.idl b/test/fixtures/wpt/interfaces/dom.idl index 96acfc6a717fb2..c2def872fa23eb 100644 --- a/test/fixtures/wpt/interfaces/dom.idl +++ b/test/fixtures/wpt/interfaces/dom.idl @@ -95,6 +95,7 @@ interface AbortController { interface AbortSignal : EventTarget { [NewObject] static AbortSignal abort(optional any reason); [Exposed=(Window,Worker), NewObject] static AbortSignal timeout([EnforceRange] unsigned long long milliseconds); + [NewObject] static AbortSignal _any(sequence signals); readonly attribute boolean aborted; readonly attribute any reason; @@ -618,7 +619,7 @@ callback interface XPathNSResolver { interface mixin XPathEvaluatorBase { [NewObject] XPathExpression createExpression(DOMString expression, optional XPathNSResolver? resolver = null); - XPathNSResolver createNSResolver(Node nodeResolver); + Node createNSResolver(Node nodeResolver); // legacy // XPathResult.ANY_TYPE = 0 XPathResult evaluate(DOMString expression, Node contextNode, optional XPathNSResolver? resolver = null, optional unsigned short type = 0, optional XPathResult? result = null); }; diff --git a/test/fixtures/wpt/interfaces/encoding.idl b/test/fixtures/wpt/interfaces/encoding.idl index a8cbe4431a2dc7..a9499f62378dd9 100644 --- a/test/fixtures/wpt/interfaces/encoding.idl +++ b/test/fixtures/wpt/interfaces/encoding.idl @@ -22,7 +22,7 @@ dictionary TextDecodeOptions { interface TextDecoder { constructor(optional DOMString label = "utf-8", optional TextDecoderOptions options = {}); - USVString decode(optional [AllowShared] BufferSource input, optional TextDecodeOptions options = {}); + USVString decode(optional AllowSharedBufferSource input, optional TextDecodeOptions options = {}); }; TextDecoder includes TextDecoderCommon; diff --git a/test/fixtures/wpt/interfaces/hr-time.idl b/test/fixtures/wpt/interfaces/hr-time.idl index 13aa109b6c764c..835ee8a65c84c0 100644 --- a/test/fixtures/wpt/interfaces/hr-time.idl +++ b/test/fixtures/wpt/interfaces/hr-time.idl @@ -7,7 +7,7 @@ typedef double DOMHighResTimeStamp; typedef unsigned long long EpochTimeStamp; -[Exposed=*] +[Exposed=(Window,Worker)] interface Performance : EventTarget { DOMHighResTimeStamp now(); readonly attribute DOMHighResTimeStamp timeOrigin; diff --git a/test/fixtures/wpt/interfaces/html.idl b/test/fixtures/wpt/interfaces/html.idl index d9068b4ad1e550..c7f744ccbe601b 100644 --- a/test/fixtures/wpt/interfaces/html.idl +++ b/test/fixtures/wpt/interfaces/html.idl @@ -98,7 +98,6 @@ partial interface Document { // also has obsolete members }; Document includes GlobalEventHandlers; -Document includes DocumentAndElementEventHandlers; partial interface mixin DocumentOrShadowRoot { readonly attribute Element? activeElement; @@ -128,10 +127,15 @@ interface HTMLElement : Element { [CEReactions] attribute [LegacyNullToEmptyString] DOMString outerText; ElementInternals attachInternals(); + + // The popover API + undefined showPopover(); + undefined hidePopover(); + boolean togglePopover(optional boolean force); + [CEReactions] attribute DOMString? popover; }; HTMLElement includes GlobalEventHandlers; -HTMLElement includes DocumentAndElementEventHandlers; HTMLElement includes ElementContentEditable; HTMLElement includes HTMLOrSVGElement; @@ -204,6 +208,7 @@ interface HTMLLinkElement : HTMLElement { [CEReactions] attribute DOMString referrerPolicy; [SameObject, PutForwards=value] readonly attribute DOMTokenList blocking; [CEReactions] attribute boolean disabled; + [CEReactions] attribute DOMString fetchPriority; // also has obsolete members }; @@ -432,6 +437,7 @@ interface HTMLImageElement : HTMLElement { [CEReactions] attribute DOMString referrerPolicy; [CEReactions] attribute DOMString decoding; [CEReactions] attribute DOMString loading; + [CEReactions] attribute DOMString fetchPriority; Promise decode(); @@ -886,7 +892,7 @@ interface HTMLInputElement : HTMLElement { [CEReactions] attribute DOMString formTarget; [CEReactions] attribute unsigned long height; attribute boolean indeterminate; - readonly attribute HTMLElement? list; + readonly attribute HTMLDataListElement? list; [CEReactions] attribute DOMString max; [CEReactions] attribute long maxLength; [CEReactions] attribute DOMString min; @@ -931,6 +937,7 @@ interface HTMLInputElement : HTMLElement { // also has obsolete members }; +HTMLInputElement includes PopoverInvokerElement; [Exposed=Window] interface HTMLButtonElement : HTMLElement { @@ -956,6 +963,7 @@ interface HTMLButtonElement : HTMLElement { readonly attribute NodeList labels; }; +HTMLButtonElement includes PopoverInvokerElement; [Exposed=Window] interface HTMLSelectElement : HTMLElement { @@ -1216,6 +1224,7 @@ interface HTMLScriptElement : HTMLElement { [CEReactions] attribute DOMString integrity; [CEReactions] attribute DOMString referrerPolicy; [SameObject, PutForwards=value] readonly attribute DOMTokenList blocking; + [CEReactions] attribute DOMString fetchPriority; static boolean supports(DOMString type); @@ -1364,14 +1373,7 @@ interface mixin CanvasShadowStyles { interface mixin CanvasFilters { // filters - attribute (DOMString or CanvasFilter) filter; // (default "none") -}; - -typedef record CanvasFilterInput; - -[Exposed=(Window,Worker,PaintWorklet)] -interface CanvasFilter { - constructor(optional (CanvasFilterInput or sequence) filters); + attribute DOMString filter; // (default "none") }; interface mixin CanvasRect { @@ -1592,6 +1594,7 @@ OffscreenCanvasRenderingContext2D includes CanvasPath; interface CustomElementRegistry { [CEReactions] undefined define(DOMString name, CustomElementConstructor constructor, optional ElementDefinitionOptions options = {}); (CustomElementConstructor or undefined) get(DOMString name); + DOMString? getName(CustomElementConstructor constructor); Promise whenDefined(DOMString name); [CEReactions] undefined upgrade(Node root); }; @@ -1641,8 +1644,39 @@ dictionary ValidityStateFlags { boolean customError = false; }; +[Exposed=(Window)] +interface VisibilityStateEntry : PerformanceEntry { + readonly attribute DOMString name; // shadows inherited name + readonly attribute DOMString entryType; // shadows inherited entryType + readonly attribute DOMHighResTimeStamp startTime; // shadows inherited startTime + readonly attribute unsigned long duration; // shadows inherited duration +}; + +[Exposed=Window] +interface UserActivation { + readonly attribute boolean hasBeenActive; + readonly attribute boolean isActive; +}; + +partial interface Navigator { + [SameObject] readonly attribute UserActivation userActivation; +}; + +[Exposed=Window] +interface ToggleEvent : Event { + constructor(DOMString type, optional ToggleEventInit eventInitDict = {}); + readonly attribute DOMString oldState; + readonly attribute DOMString newState; +}; + +dictionary ToggleEventInit : EventInit { + DOMString oldState = ""; + DOMString newState = ""; +}; + dictionary FocusOptions { boolean preventScroll = false; + boolean focusVisible; }; interface mixin ElementContentEditable { @@ -1702,6 +1736,11 @@ dictionary DragEventInit : MouseEventInit { DataTransfer? dataTransfer = null; }; +interface mixin PopoverInvokerElement { + [CEReactions] attribute Element? popoverTargetElement; + [CEReactions] attribute DOMString popoverTargetAction; +}; + [Global=Window, Exposed=Window, LegacyUnenumerableNamedProperties] @@ -1713,6 +1752,7 @@ interface Window : EventTarget { attribute DOMString name; [PutForwards=href, LegacyUnforgeable] readonly attribute Location location; readonly attribute History history; + readonly attribute Navigation navigation; readonly attribute CustomElementRegistry customElements; [Replaceable] readonly attribute BarProp locationbar; [Replaceable] readonly attribute BarProp menubar; @@ -1735,14 +1775,15 @@ interface Window : EventTarget { [Replaceable] readonly attribute WindowProxy? parent; readonly attribute Element? frameElement; WindowProxy? open(optional USVString url = "", optional DOMString target = "_blank", optional [LegacyNullToEmptyString] DOMString features = ""); - getter object (DOMString name); + // Since this is the global object, the IDL named getter adds a NamedPropertiesObject exotic // object on the prototype chain. Indeed, this does not make the global object an exotic object. // Indexed access is taken care of by the WindowProxy exotic object. + getter object (DOMString name); // the user agent readonly attribute Navigator navigator; - readonly attribute Navigator clientInformation; // legacy alias of .navigator + [Replaceable] readonly attribute Navigator clientInformation; // legacy alias of .navigator readonly attribute boolean originAgentCluster; // user prompts @@ -1769,20 +1810,6 @@ interface BarProp { readonly attribute boolean visible; }; -enum ScrollRestoration { "auto", "manual" }; - -[Exposed=Window] -interface History { - readonly attribute unsigned long length; - attribute ScrollRestoration scrollRestoration; - readonly attribute any state; - undefined go(optional long delta = 0); - undefined back(); - undefined forward(); - undefined pushState(any data, DOMString unused, optional USVString? url = null); - undefined replaceState(any data, DOMString unused, optional USVString? url = null); -}; - [Exposed=Window] interface Location { // but see also additional creation steps and overridden internal methods [LegacyUnforgeable] stringifier attribute USVString href; @@ -1802,15 +1829,183 @@ interface Location { // but see also additional creation steps and overridden in [LegacyUnforgeable, SameObject] readonly attribute DOMStringList ancestorOrigins; }; +enum ScrollRestoration { "auto", "manual" }; + +[Exposed=Window] +interface History { + readonly attribute unsigned long length; + attribute ScrollRestoration scrollRestoration; + readonly attribute any state; + undefined go(optional long delta = 0); + undefined back(); + undefined forward(); + undefined pushState(any data, DOMString unused, optional USVString? url = null); + undefined replaceState(any data, DOMString unused, optional USVString? url = null); +}; + +[Exposed=Window] +interface Navigation : EventTarget { + sequence entries(); + readonly attribute NavigationHistoryEntry? currentEntry; + undefined updateCurrentEntry(NavigationUpdateCurrentEntryOptions options); + readonly attribute NavigationTransition? transition; + + readonly attribute boolean canGoBack; + readonly attribute boolean canGoForward; + + NavigationResult navigate(USVString url, optional NavigationNavigateOptions options = {}); + NavigationResult reload(optional NavigationReloadOptions options = {}); + + NavigationResult traverseTo(DOMString key, optional NavigationOptions options = {}); + NavigationResult back(optional NavigationOptions options = {}); + NavigationResult forward(optional NavigationOptions options = {}); + + attribute EventHandler onnavigate; + attribute EventHandler onnavigatesuccess; + attribute EventHandler onnavigateerror; + attribute EventHandler oncurrententrychange; +}; + +dictionary NavigationUpdateCurrentEntryOptions { + required any state; +}; + +dictionary NavigationOptions { + any info; +}; + +dictionary NavigationNavigateOptions : NavigationOptions { + any state; + NavigationHistoryBehavior history = "auto"; +}; + +dictionary NavigationReloadOptions : NavigationOptions { + any state; +}; + +dictionary NavigationResult { + Promise committed; + Promise finished; +}; + +enum NavigationHistoryBehavior { + "auto", + "push", + "replace" +}; + +enum NavigationType { + "push", + "replace", + "reload", + "traverse" +}; + +[Exposed=Window] +interface NavigationHistoryEntry : EventTarget { + readonly attribute USVString? url; + readonly attribute DOMString key; + readonly attribute DOMString id; + readonly attribute long long index; + readonly attribute boolean sameDocument; + + any getState(); + + attribute EventHandler ondispose; +}; + +[Exposed=Window] +interface NavigationTransition { + readonly attribute NavigationType navigationType; + readonly attribute NavigationHistoryEntry from; + readonly attribute Promise finished; +}; + +[Exposed=Window] +interface NavigateEvent : Event { + constructor(DOMString type, NavigateEventInit eventInitDict); + + readonly attribute NavigationType navigationType; + readonly attribute NavigationDestination destination; + readonly attribute boolean canIntercept; + readonly attribute boolean userInitiated; + readonly attribute boolean hashChange; + readonly attribute AbortSignal signal; + readonly attribute FormData? formData; + readonly attribute DOMString? downloadRequest; + readonly attribute any info; + readonly attribute boolean hasUAVisualTransition; + + undefined intercept(optional NavigationInterceptOptions options = {}); + undefined scroll(); +}; + +dictionary NavigateEventInit : EventInit { + NavigationType navigationType = "push"; + required NavigationDestination destination; + boolean canIntercept = false; + boolean userInitiated = false; + boolean hashChange = false; + required AbortSignal signal; + FormData? formData = null; + DOMString? downloadRequest = null; + any info; + boolean hasUAVisualTransition = false; +}; + +dictionary NavigationInterceptOptions { + NavigationInterceptHandler handler; + NavigationFocusReset focusReset; + NavigationScrollBehavior scroll; +}; + +enum NavigationFocusReset { + "after-transition", + "manual" +}; + +enum NavigationScrollBehavior { + "after-transition", + "manual" +}; + +callback NavigationInterceptHandler = Promise (); + +[Exposed=Window] +interface NavigationDestination { + readonly attribute USVString url; + readonly attribute DOMString key; + readonly attribute DOMString id; + readonly attribute long long index; + readonly attribute boolean sameDocument; + + any getState(); +}; + +[Exposed=Window] +interface NavigationCurrentEntryChangeEvent : Event { + constructor(DOMString type, NavigationCurrentEntryChangeEventInit eventInitDict); + + readonly attribute NavigationType? navigationType; + readonly attribute NavigationHistoryEntry from; +}; + +dictionary NavigationCurrentEntryChangeEventInit : EventInit { + NavigationType? navigationType = null; + required NavigationHistoryEntry from; +}; + [Exposed=Window] interface PopStateEvent : Event { constructor(DOMString type, optional PopStateEventInit eventInitDict = {}); readonly attribute any state; + readonly attribute boolean hasUAVisualTransition; }; dictionary PopStateEventInit : EventInit { any state = null; + boolean hasUAVisualTransition = false; }; [Exposed=Window] @@ -1891,6 +2086,7 @@ interface mixin GlobalEventHandlers { attribute EventHandler onauxclick; attribute EventHandler onbeforeinput; attribute EventHandler onbeforematch; + attribute EventHandler onbeforetoggle; attribute EventHandler onblur; attribute EventHandler oncancel; attribute EventHandler oncanplay; @@ -1901,7 +2097,9 @@ interface mixin GlobalEventHandlers { attribute EventHandler oncontextlost; attribute EventHandler oncontextmenu; attribute EventHandler oncontextrestored; + attribute EventHandler oncopy; attribute EventHandler oncuechange; + attribute EventHandler oncut; attribute EventHandler ondblclick; attribute EventHandler ondrag; attribute EventHandler ondragend; @@ -1932,6 +2130,7 @@ interface mixin GlobalEventHandlers { attribute EventHandler onmouseout; attribute EventHandler onmouseover; attribute EventHandler onmouseup; + attribute EventHandler onpaste; attribute EventHandler onpause; attribute EventHandler onplay; attribute EventHandler onplaying; @@ -1940,6 +2139,7 @@ interface mixin GlobalEventHandlers { attribute EventHandler onreset; attribute EventHandler onresize; attribute EventHandler onscroll; + attribute EventHandler onscrollend; attribute EventHandler onsecuritypolicyviolation; attribute EventHandler onseeked; attribute EventHandler onseeking; @@ -1978,12 +2178,6 @@ interface mixin WindowEventHandlers { attribute EventHandler onunload; }; -interface mixin DocumentAndElementEventHandlers { - attribute EventHandler oncopy; - attribute EventHandler oncut; - attribute EventHandler onpaste; -}; - typedef (DOMString or Function) TimerHandler; interface mixin WindowOrWorkerGlobalScope { @@ -2132,13 +2326,13 @@ typedef (CanvasImageSource or Blob or ImageData) ImageBitmapSource; -enum ImageOrientation { "none", "flipY" }; +enum ImageOrientation { "from-image", "flipY" }; enum PremultiplyAlpha { "none", "premultiply", "default" }; enum ColorSpaceConversion { "none", "default" }; enum ResizeQuality { "pixelated", "low", "medium", "high" }; dictionary ImageBitmapOptions { - ImageOrientation imageOrientation = "none"; + ImageOrientation imageOrientation = "from-image"; PremultiplyAlpha premultiplyAlpha = "default"; ColorSpaceConversion colorSpaceConversion = "default"; [EnforceRange] unsigned long resizeWidth; diff --git a/test/fixtures/wpt/interfaces/performance-timeline.idl b/test/fixtures/wpt/interfaces/performance-timeline.idl index 9f6cc5e2e902dc..cdd8fafd8c64e6 100644 --- a/test/fixtures/wpt/interfaces/performance-timeline.idl +++ b/test/fixtures/wpt/interfaces/performance-timeline.idl @@ -1,7 +1,7 @@ // GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into webref // (https://github.com/w3c/webref) -// Source: Performance Timeline Level 2 (https://w3c.github.io/performance-timeline/) +// Source: Performance Timeline (https://w3c.github.io/performance-timeline/) partial interface Performance { PerformanceEntryList getEntries (); @@ -10,7 +10,7 @@ partial interface Performance { }; typedef sequence PerformanceEntryList; -[Exposed=*] +[Exposed=(Window,Worker)] interface PerformanceEntry { readonly attribute DOMString name; readonly attribute DOMString entryType; @@ -22,7 +22,7 @@ interface PerformanceEntry { callback PerformanceObserverCallback = undefined (PerformanceObserverEntryList entries, PerformanceObserver observer, optional PerformanceObserverCallbackOptions options = {}); -[Exposed=*] +[Exposed=(Window,Worker)] interface PerformanceObserver { constructor(PerformanceObserverCallback callback); undefined observe (optional PerformanceObserverInit options = {}); @@ -41,7 +41,7 @@ dictionary PerformanceObserverInit { boolean buffered; }; -[Exposed=*] +[Exposed=(Window,Worker)] interface PerformanceObserverEntryList { PerformanceEntryList getEntries(); PerformanceEntryList getEntriesByType (DOMString type); diff --git a/test/fixtures/wpt/interfaces/resource-timing.idl b/test/fixtures/wpt/interfaces/resource-timing.idl index 235963b804bf9a..33fed05b756838 100644 --- a/test/fixtures/wpt/interfaces/resource-timing.idl +++ b/test/fixtures/wpt/interfaces/resource-timing.idl @@ -1,11 +1,12 @@ // GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into webref // (https://github.com/w3c/webref) -// Source: Resource Timing Level 2 (https://w3c.github.io/resource-timing/) +// Source: Resource Timing (https://w3c.github.io/resource-timing/) [Exposed=(Window,Worker)] interface PerformanceResourceTiming : PerformanceEntry { readonly attribute DOMString initiatorType; + readonly attribute DOMString deliveryType; readonly attribute ByteString nextHopProtocol; readonly attribute DOMHighResTimeStamp workerStart; readonly attribute DOMHighResTimeStamp redirectStart; @@ -17,14 +18,23 @@ interface PerformanceResourceTiming : PerformanceEntry { readonly attribute DOMHighResTimeStamp connectEnd; readonly attribute DOMHighResTimeStamp secureConnectionStart; readonly attribute DOMHighResTimeStamp requestStart; + readonly attribute DOMHighResTimeStamp firstInterimResponseStart; readonly attribute DOMHighResTimeStamp responseStart; readonly attribute DOMHighResTimeStamp responseEnd; readonly attribute unsigned long long transferSize; readonly attribute unsigned long long encodedBodySize; readonly attribute unsigned long long decodedBodySize; + readonly attribute unsigned short responseStatus; + readonly attribute RenderBlockingStatusType renderBlockingStatus; + readonly attribute DOMString contentType; [Default] object toJSON(); }; +enum RenderBlockingStatusType { + "blocking", + "non-blocking" +}; + partial interface Performance { undefined clearResourceTimings (); undefined setResourceTimingBufferSize (unsigned long maxSize); diff --git a/test/fixtures/wpt/interfaces/streams.idl b/test/fixtures/wpt/interfaces/streams.idl index fd5420f16a0967..838bf39c6d6df5 100644 --- a/test/fixtures/wpt/interfaces/streams.idl +++ b/test/fixtures/wpt/interfaces/streams.idl @@ -7,6 +7,8 @@ interface ReadableStream { constructor(optional object underlyingSource, optional QueuingStrategy strategy = {}); + static ReadableStream from(any asyncIterable); + readonly attribute boolean locked; Promise cancel(optional any reason); diff --git a/test/fixtures/wpt/interfaces/url.idl b/test/fixtures/wpt/interfaces/url.idl index 360c9adcfa1104..a5e4d1eb492e82 100644 --- a/test/fixtures/wpt/interfaces/url.idl +++ b/test/fixtures/wpt/interfaces/url.idl @@ -8,6 +8,8 @@ interface URL { constructor(USVString url, optional USVString base); + static boolean canParse(USVString url, optional USVString base); + stringifier attribute USVString href; readonly attribute USVString origin; attribute USVString protocol; @@ -28,11 +30,13 @@ interface URL { interface URLSearchParams { constructor(optional (sequence> or record or USVString) init = ""); + readonly attribute unsigned long size; + undefined append(USVString name, USVString value); - undefined delete(USVString name); + undefined delete(USVString name, optional USVString value); USVString? get(USVString name); sequence getAll(USVString name); - boolean has(USVString name); + boolean has(USVString name, optional USVString value); undefined set(USVString name, USVString value); undefined sort(); diff --git a/test/fixtures/wpt/interfaces/user-timing.idl b/test/fixtures/wpt/interfaces/user-timing.idl index a0b8f94710ec33..28ee8aac2b19a6 100644 --- a/test/fixtures/wpt/interfaces/user-timing.idl +++ b/test/fixtures/wpt/interfaces/user-timing.idl @@ -22,13 +22,13 @@ partial interface Performance { undefined clearMeasures(optional DOMString measureName); }; -[Exposed=*] +[Exposed=(Window,Worker)] interface PerformanceMark : PerformanceEntry { constructor(DOMString markName, optional PerformanceMarkOptions markOptions = {}); readonly attribute any detail; }; -[Exposed=*] +[Exposed=(Window,Worker)] interface PerformanceMeasure : PerformanceEntry { readonly attribute any detail; }; diff --git a/test/fixtures/wpt/interfaces/webidl.idl b/test/fixtures/wpt/interfaces/webidl.idl index 43748c5ac4c889..4d0dfaa106275f 100644 --- a/test/fixtures/wpt/interfaces/webidl.idl +++ b/test/fixtures/wpt/interfaces/webidl.idl @@ -9,7 +9,8 @@ typedef (Int8Array or Int16Array or Int32Array or Float32Array or Float64Array or DataView) ArrayBufferView; typedef (ArrayBufferView or ArrayBuffer) BufferSource; -[Exposed=(Window,Worker), +typedef (ArrayBuffer or SharedArrayBuffer or [AllowShared] ArrayBufferView) AllowSharedBufferSource; +[Exposed=*, Serializable] interface DOMException { // but see below note about ECMAScript binding constructor(optional DOMString message = "", optional DOMString name = "Error"); @@ -46,5 +47,3 @@ interface DOMException { // but see below note about ECMAScript binding callback Function = any (any... arguments); callback VoidFunction = undefined (); - -typedef unsigned long long DOMTimeStamp; diff --git a/test/fixtures/wpt/resources/declarative-shadow-dom-polyfill.js b/test/fixtures/wpt/resources/declarative-shadow-dom-polyfill.js index 8ab08b0294c297..99a3e911eb6336 100644 --- a/test/fixtures/wpt/resources/declarative-shadow-dom-polyfill.js +++ b/test/fixtures/wpt/resources/declarative-shadow-dom-polyfill.js @@ -16,7 +16,8 @@ function polyfill_declarative_shadow_dom(root) { return; root.querySelectorAll("template[shadowrootmode]").forEach(template => { const mode = template.getAttribute("shadowrootmode"); - const shadowRoot = template.parentNode.attachShadow({ mode }); + const delegatesFocus = template.hasAttribute("shadowrootdelegatesfocus"); + const shadowRoot = template.parentNode.attachShadow({ mode, delegatesFocus }); shadowRoot.appendChild(template.content); template.remove(); polyfill_declarative_shadow_dom(shadowRoot); diff --git a/test/fixtures/wpt/resources/idlharness.js b/test/fixtures/wpt/resources/idlharness.js index 46aa11e5ca123c..8f741b09b26bcb 100644 --- a/test/fixtures/wpt/resources/idlharness.js +++ b/test/fixtures/wpt/resources/idlharness.js @@ -2357,12 +2357,13 @@ IdlInterface.prototype.do_member_operation_asserts = function(memberHolderObject assert_equals(typeof memberHolderObject[member.name], "function", "property must be a function"); - const ctors = this.members.filter(function(m) { - return m.type == "operation" && m.name == member.name; + const operationOverloads = this.members.filter(function(m) { + return m.type == "operation" && m.name == member.name && + (m.special === "static") === (member.special === "static"); }); assert_equals( memberHolderObject[member.name].length, - minOverloadLength(ctors), + minOverloadLength(operationOverloads), "property has wrong .length"); assert_equals( memberHolderObject[member.name].name, diff --git a/test/fixtures/wpt/resources/testdriver.js b/test/fixtures/wpt/resources/testdriver.js index 76ae2834fdfb0a..ddf723cb3ee8a5 100644 --- a/test/fixtures/wpt/resources/testdriver.js +++ b/test/fixtures/wpt/resources/testdriver.js @@ -220,6 +220,40 @@ return cookie; }, + /** + * Get Computed Label for an element. + * + * This matches the behaviour of the + * `Get Computed Label + * `_ + * WebDriver command. + * + * @param {Element} element + * @returns {Promise} fulfilled after the computed label is returned, or + * rejected in the cases the WebDriver command errors + */ + get_computed_label: async function(element) { + let label = await window.test_driver_internal.get_computed_label(element); + return label; + }, + + /** + * Get Computed Role for an element. + * + * This matches the behaviour of the + * `Get Computed Label + * `_ + * WebDriver command. + * + * @param {Element} element + * @returns {Promise} fulfilled after the computed role is returned, or + * rejected in the cases the WebDriver command errors + */ + get_computed_role: async function(element) { + let role = await window.test_driver_internal.get_computed_role(element); + return role; + }, + /** * Send keys to an element. * @@ -228,7 +262,9 @@ * occurs. * * If ``element`` is from a different browsing context, the - * command will be run in that context. + * command will be run in that context. The test must not depend + * on the ``window.name`` property being unset on the target + * window. * * To send special keys, send the respective key's codepoint, * as defined by `WebDriver @@ -262,12 +298,6 @@ inline: "nearest"}); } - var pointerInteractablePaintTree = getPointerInteractablePaintTree(element); - if (pointerInteractablePaintTree.length === 0 || - !element.contains(pointerInteractablePaintTree[0])) { - return Promise.reject(new Error("element send_keys intercepted error")); - } - return window.test_driver_internal.send_keys(element, keys); }, @@ -300,9 +330,9 @@ * to run the call, or null for the current * browsing context. * - * @returns {Promise} fulfilled with the previous {@link - * https://www.w3.org/TR/webdriver/#dfn-windowrect-object|WindowRect} - * value, after the window is minimized. + * @returns {Promise} fulfilled with the previous `WindowRect + * `_ + * value, after the window is minimized. */ minimize_window: function(context=null) { return window.test_driver_internal.minimize_window(context); @@ -315,8 +345,8 @@ * `_ * WebDriver command * - * @param {Object} rect - A {@link - * https://www.w3.org/TR/webdriver/#dfn-windowrect-object|WindowRect} + * @param {Object} rect - A `WindowRect + * `_ * @param {WindowProxy} context - Browsing context in which * to run the call, or null for the current * browsing context. @@ -389,8 +419,9 @@ /** * Sets the state of a permission * - * This function simulates a user setting a permission into a - * particular state. + * This function causes permission requests and queries for the status + * of a certain permission type (e.g. "push", or "background-fetch") to + * always return ``state``. * * Matches the `Set Permission * `_ @@ -402,8 +433,10 @@ * * @param {PermissionDescriptor} descriptor - a `PermissionDescriptor * `_ - * dictionary. - * @param {String} state - the state of the permission + * or derived object. + * @param {PermissionState} state - a `PermissionState + * `_ + * value. * @param {WindowProxy} context - Browsing context in which * to run the call, or null for the current * browsing context. @@ -646,6 +679,296 @@ set_spc_transaction_mode: function(mode, context=null) { return window.test_driver_internal.set_spc_transaction_mode(mode, context); }, + + /** + * Cancels the Federated Credential Management dialog + * + * Matches the `Cancel dialog + * `_ + * WebDriver command. + * + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} Fulfilled after the dialog is canceled, or rejected + * in case the WebDriver command errors + */ + cancel_fedcm_dialog: function(context=null) { + return window.test_driver_internal.cancel_fedcm_dialog(context); + }, + + /** + * Clicks a button on the Federated Credential Management dialog + * + * Matches the `Click dialog button + * `_ + * WebDriver command. + * + * @param {String} dialog_button - String enum representing the dialog button to click. + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} Fulfilled after the button is clicked, + * or rejected in case the WebDriver command errors + */ + click_fedcm_dialog_button: function(dialog_button, context=null) { + return window.test_driver_internal.click_fedcm_dialog_button(dialog_button, context); + }, + + /** + * Selects an account from the Federated Credential Management dialog + * + * Matches the `Select account + * `_ + * WebDriver command. + * + * @param {number} account_index - Index of the account to select. + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} Fulfilled after the account is selected, + * or rejected in case the WebDriver command errors + */ + select_fedcm_account: function(account_index, context=null) { + return window.test_driver_internal.select_fedcm_account(account_index, context); + }, + + /** + * Gets the account list from the Federated Credential Management dialog + * + * Matches the `Account list + * `_ + * WebDriver command. + * + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} fulfilled after the account list is returned, or + * rejected in case the WebDriver command errors + */ + get_fedcm_account_list: function(context=null) { + return window.test_driver_internal.get_fedcm_account_list(context); + }, + + /** + * Gets the title of the Federated Credential Management dialog + * + * Matches the `Get title + * `_ + * WebDriver command. + * + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} Fulfilled after the title is returned, or rejected + * in case the WebDriver command errors + */ + get_fedcm_dialog_title: function(context=null) { + return window.test_driver_internal.get_fedcm_dialog_title(context); + }, + + /** + * Gets the type of the Federated Credential Management dialog + * + * Matches the `Get dialog type + * `_ + * WebDriver command. + * + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} Fulfilled after the dialog type is returned, or + * rejected in case the WebDriver command errors + */ + get_fedcm_dialog_type: function(context=null) { + return window.test_driver_internal.get_fedcm_dialog_type(context); + }, + + /** + * Sets whether promise rejection delay is enabled for the Federated Credential Management dialog + * + * Matches the `Set delay enabled + * `_ + * WebDriver command. + * + * @param {boolean} enabled - Whether to delay FedCM promise rejection. + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} Fulfilled after the delay has been enabled or disabled, + * or rejected in case the WebDriver command errors + */ + set_fedcm_delay_enabled: function(enabled, context=null) { + return window.test_driver_internal.set_fedcm_delay_enabled(enabled, context); + }, + + /** + * Resets the Federated Credential Management dialog's cooldown + * + * Matches the `Reset cooldown + * `_ + * WebDriver command. + * + * @param {WindowProxy} context - Browsing context in which + * to run the call, or null for the current + * browsing context. + * + * @returns {Promise} Fulfilled after the cooldown has been reset, + * or rejected in case the WebDriver command errors + */ + reset_fedcm_cooldown: function(context=null) { + return window.test_driver_internal.reset_fedcm_cooldown(context); + }, + + /** + * Creates a virtual sensor for use with the Generic Sensors APIs. + * + * Matches the `Create Virtual Sensor + * `_ + * WebDriver command. + * + * Once created, a virtual sensor is available to all navigables under + * the same top-level traversable (i.e. all frames in the same page, + * regardless of origin). + * + * @param {String} sensor_type - A `virtual sensor type + * `_ + * such as "accelerometer". + * @param {Object} [sensor_params={}] - Optional parameters described + * in `Create Virtual Sensor + * `_. + * @param {WindowProxy} [context=null] - Browsing context in which to + * run the call, or null for the + * current browsing context. + * + * @returns {Promise} Fulfilled when virtual sensor is created. + * Rejected in case the WebDriver command errors out + * (including if a virtual sensor of the same type + * already exists). + */ + create_virtual_sensor: function(sensor_type, sensor_params={}, context=null) { + return window.test_driver_internal.create_virtual_sensor(sensor_type, sensor_params, context); + }, + + /** + * Causes a virtual sensor to report a new reading to any connected + * platform sensor. + * + * Matches the `Update Virtual Sensor Reading + * `_ + * WebDriver command. + * + * Note: The ``Promise`` it returns may fulfill before or after a + * "reading" event is fired. When using + * :js:func:`EventWatcher.wait_for`, it is necessary to take this into + * account: + * + * Note: New values may also be discarded due to the checks in `update + * latest reading + * `_. + * + * @example + * // Avoid races between EventWatcher and update_virtual_sensor(). + * // This assumes you are sure this reading will be processed (see + * // the example below otherwise). + * const reading = { x: 1, y: 2, z: 3 }; + * await Promise.all([ + * test_driver.update_virtual_sensor('gyroscope', reading), + * watcher.wait_for('reading') + * ]); + * + * @example + * // Do not wait forever if you are not sure the reading will be + * // processed. + * const readingPromise = watcher.wait_for('reading'); + * const timeoutPromise = new Promise(resolve => { + * t.step_timeout(() => resolve('TIMEOUT', 3000)) + * }); + * + * const reading = { x: 1, y: 2, z: 3 }; + * await test_driver.update_virtual_sensor('gyroscope', 'reading'); + * + * const value = + * await Promise.race([timeoutPromise, readingPromise]); + * if (value !== 'TIMEOUT') { + * // Do something. The "reading" event was fired. + * } + * + * @param {String} sensor_type - A `virtual sensor type + * `_ + * such as "accelerometer". + * @param {Object} reading - An Object describing a reading in a format + * dependent on ``sensor_type`` (e.g. ``{x: + * 1, y: 2, z: 3}`` or ``{ illuminance: 42 + * }``). + * @param {WindowProxy} [context=null] - Browsing context in which to + * run the call, or null for the + * current browsing context. + * + * @returns {Promise} Fulfilled after the reading update reaches the + * virtual sensor. Rejected in case the WebDriver + * command errors out (including if a virtual sensor + * of the given type does not exist). + */ + update_virtual_sensor: function(sensor_type, reading, context=null) { + return window.test_driver_internal.update_virtual_sensor(sensor_type, reading, context); + }, + + /** + * Triggers the removal of a virtual sensor if it exists. + * + * Matches the `Delete Virtual Sensor + * `_ + * WebDriver command. + * + * @param {String} sensor_type - A `virtual sensor type + * `_ + * such as "accelerometer". + * @param {WindowProxy} [context=null] - Browsing context in which to + * run the call, or null for the + * current browsing context. + * + * @returns {Promise} Fulfilled after the virtual sensor has been + * removed or if a sensor of the given type does not + * exist. Rejected in case the WebDriver command + * errors out. + + */ + remove_virtual_sensor: function(sensor_type, context=null) { + return window.test_driver_internal.remove_virtual_sensor(sensor_type, context); + }, + + /** + * Returns information about a virtual sensor. + * + * Matches the `Get Virtual Sensor Information + * `_ + * WebDriver command. + * + * @param {String} sensor_type - A `virtual sensor type + * `_ + * such as "accelerometer". + * @param {WindowProxy} [context=null] - Browsing context in which to + * run the call, or null for the + * current browsing context. + * + * @returns {Promise} Fulfilled with an Object with the properties + * described in `Get Virtual Sensor Information + * `_. + * Rejected in case the WebDriver command errors out + * (including if a virtual sensor of the given type + * does not exist). + */ + get_virtual_sensor_information: function(sensor_type, context=null) { + return window.test_driver_internal.get_virtual_sensor_information(sensor_type, context); + } }; window.test_driver_internal = { @@ -657,9 +980,9 @@ */ in_automation: false, - click: function(element, coords) { + async click(element, coords) { if (this.in_automation) { - return Promise.reject(new Error('Not implemented')); + throw new Error("click() is not implemented by testdriver-vendor.js"); } return new Promise(function(resolve, reject) { @@ -667,21 +990,21 @@ }); }, - delete_all_cookies: function(context=null) { - return Promise.reject(new Error("unimplemented")); + async delete_all_cookies(context=null) { + throw new Error("delete_all_cookies() is not implemented by testdriver-vendor.js"); }, - get_all_cookies: function(context=null) { - return Promise.reject(new Error("unimplemented")); + async get_all_cookies(context=null) { + throw new Error("get_all_cookies() is not implemented by testdriver-vendor.js"); }, - get_named_cookie: function(name, context=null) { - return Promise.reject(new Error("unimplemented")); + async get_named_cookie(name, context=null) { + throw new Error("get_named_cookie() is not implemented by testdriver-vendor.js"); }, - send_keys: function(element, keys) { + async send_keys(element, keys) { if (this.in_automation) { - return Promise.reject(new Error('Not implemented')); + throw new Error("send_keys() is not implemented by testdriver-vendor.js"); } return new Promise(function(resolve, reject) { @@ -711,66 +1034,112 @@ }); }, - freeze: function(context=null) { - return Promise.reject(new Error("unimplemented")); + async freeze(context=null) { + throw new Error("freeze() is not implemented by testdriver-vendor.js"); }, - minimize_window: function(context=null) { - return Promise.reject(new Error("unimplemented")); + async minimize_window(context=null) { + throw new Error("minimize_window() is not implemented by testdriver-vendor.js"); }, - set_window_rect: function(rect, context=null) { - return Promise.reject(new Error("unimplemented")); + async set_window_rect(rect, context=null) { + throw new Error("set_window_rect() is not implemented by testdriver-vendor.js"); }, - action_sequence: function(actions, context=null) { - return Promise.reject(new Error("unimplemented")); + async action_sequence(actions, context=null) { + throw new Error("action_sequence() is not implemented by testdriver-vendor.js"); }, - generate_test_report: function(message, context=null) { - return Promise.reject(new Error("unimplemented")); + async generate_test_report(message, context=null) { + throw new Error("generate_test_report() is not implemented by testdriver-vendor.js"); }, + async set_permission(permission_params, context=null) { + throw new Error("set_permission() is not implemented by testdriver-vendor.js"); + }, - set_permission: function(permission_params, context=null) { - return Promise.reject(new Error("unimplemented")); + async add_virtual_authenticator(config, context=null) { + throw new Error("add_virtual_authenticator() is not implemented by testdriver-vendor.js"); }, - add_virtual_authenticator: function(config, context=null) { - return Promise.reject(new Error("unimplemented")); + async remove_virtual_authenticator(authenticator_id, context=null) { + throw new Error("remove_virtual_authenticator() is not implemented by testdriver-vendor.js"); }, - remove_virtual_authenticator: function(authenticator_id, context=null) { - return Promise.reject(new Error("unimplemented")); + async add_credential(authenticator_id, credential, context=null) { + throw new Error("add_credential() is not implemented by testdriver-vendor.js"); }, - add_credential: function(authenticator_id, credential, context=null) { - return Promise.reject(new Error("unimplemented")); + async get_credentials(authenticator_id, context=null) { + throw new Error("get_credentials() is not implemented by testdriver-vendor.js"); }, - get_credentials: function(authenticator_id, context=null) { - return Promise.reject(new Error("unimplemented")); + async remove_credential(authenticator_id, credential_id, context=null) { + throw new Error("remove_credential() is not implemented by testdriver-vendor.js"); }, - remove_credential: function(authenticator_id, credential_id, context=null) { - return Promise.reject(new Error("unimplemented")); + async remove_all_credentials(authenticator_id, context=null) { + throw new Error("remove_all_credentials() is not implemented by testdriver-vendor.js"); }, - remove_all_credentials: function(authenticator_id, context=null) { - return Promise.reject(new Error("unimplemented")); + async set_user_verified(authenticator_id, uv, context=null) { + throw new Error("set_user_verified() is not implemented by testdriver-vendor.js"); }, - set_user_verified: function(authenticator_id, uv, context=null) { - return Promise.reject(new Error("unimplemented")); + async set_storage_access(origin, embedding_origin, blocked, context=null) { + throw new Error("set_storage_access() is not implemented by testdriver-vendor.js"); }, - set_storage_access: function(origin, embedding_origin, blocked, context=null) { - return Promise.reject(new Error("unimplemented")); + async set_spc_transaction_mode(mode, context=null) { + throw new Error("set_spc_transaction_mode() is not implemented by testdriver-vendor.js"); }, - set_spc_transaction_mode: function(mode, context=null) { - return Promise.reject(new Error("unimplemented")); + async cancel_fedcm_dialog(context=null) { + throw new Error("cancel_fedcm_dialog() is not implemented by testdriver-vendor.js"); + }, + + async click_fedcm_dialog_button(dialog_button, context=null) { + throw new Error("click_fedcm_dialog_button() is not implemented by testdriver-vendor.js"); + }, + + async select_fedcm_account(account_index, context=null) { + throw new Error("select_fedcm_account() is not implemented by testdriver-vendor.js"); + }, + + async get_fedcm_account_list(context=null) { + throw new Error("get_fedcm_account_list() is not implemented by testdriver-vendor.js"); + }, + + async get_fedcm_dialog_title(context=null) { + throw new Error("get_fedcm_dialog_title() is not implemented by testdriver-vendor.js"); + }, + + async get_fedcm_dialog_type(context=null) { + throw new Error("get_fedcm_dialog_type() is not implemented by testdriver-vendor.js"); }, + async set_fedcm_delay_enabled(enabled, context=null) { + throw new Error("set_fedcm_delay_enabled() is not implemented by testdriver-vendor.js"); + }, + + async reset_fedcm_cooldown(context=null) { + throw new Error("reset_fedcm_cooldown() is not implemented by testdriver-vendor.js"); + }, + + async create_virtual_sensor(sensor_type, sensor_params, context=null) { + throw new Error("create_virtual_sensor() is not implemented by testdriver-vendor.js"); + }, + + async update_virtual_sensor(sensor_type, reading, context=null) { + throw new Error("update_virtual_sensor() is not implemented by testdriver-vendor.js"); + }, + + async remove_virtual_sensor(sensor_type, context=null) { + throw new Error("remove_virtual_sensor() is not implemented by testdriver-vendor.js"); + }, + + async get_virtual_sensor_information(sensor_type, context=null) { + throw new Error("get_virtual_sensor_information() is not implemented by testdriver-vendor.js"); + } }; })(); diff --git a/test/fixtures/wpt/resources/testharness.js b/test/fixtures/wpt/resources/testharness.js index 112790bb1eeb87..497ae23f0e83ee 100644 --- a/test/fixtures/wpt/resources/testharness.js +++ b/test/fixtures/wpt/resources/testharness.js @@ -1426,12 +1426,16 @@ function assert_wrapper(...args) { let status = Test.statuses.TIMEOUT; let stack = null; + let new_assert_index = null; try { if (settings.debug) { console.debug("ASSERT", name, tests.current_test && tests.current_test.name, args); } if (tests.output) { tests.set_assert(name, args); + // Remember the newly pushed assert's index, because `apply` + // below might push new asserts. + new_assert_index = tests.asserts_run.length - 1; } const rv = f.apply(undefined, args); status = Test.statuses.PASS; @@ -1445,7 +1449,7 @@ stack = get_stack(); } if (tests.output) { - tests.set_assert_status(status, stack); + tests.set_assert_status(new_assert_index, status, stack); } } } @@ -1493,7 +1497,7 @@ /** * Assert that ``actual`` is the same value as ``expected``. * - * For objects this compares by cobject identity; for primitives + * For objects this compares by object identity; for primitives * this distinguishes between 0 and -0, and has correct handling * of NaN. * @@ -2725,8 +2729,9 @@ * speed when the condition is quickly met. * * @param {Function} cond A function taking no arguments and - * returning a boolean. The callback is called - * when this function returns true. + * returning a boolean or a Promise. The callback is + * called when this function returns true, or the + * returned Promise is resolved with true. * @param {Function} func A function taking no arguments to call once * the condition is met. * @param {string} [description] Error message to add to assert in case of @@ -2742,11 +2747,11 @@ var remaining = Math.ceil(timeout_full / interval); var test_this = this; - var wait_for_inner = test_this.step_func(() => { - if (cond()) { + const step = test_this.step_func((result) => { + if (result) { func(); } else { - if(remaining === 0) { + if (remaining === 0) { assert(false, "step_wait_func", description, "Timed out waiting on condition"); } @@ -2755,6 +2760,12 @@ } }); + var wait_for_inner = test_this.step_func(() => { + Promise.resolve(cond()).then( + step, + test_this.unreached_func("step_wait_func")); + }); + wait_for_inner(); }; @@ -2780,8 +2791,9 @@ * }, "Navigating a popup to about:blank"); * * @param {Function} cond A function taking no arguments and - * returning a boolean. The callback is called - * when this function returns true. + * returning a boolean or a Promise. The callback is + * called when this function returns true, or the + * returned Promise is resolved with true. * @param {Function} func A function taking no arguments to call once * the condition is met. * @param {string} [description] Error message to add to assert in case of @@ -2817,7 +2829,7 @@ * }, ""); * * @param {Function} cond A function taking no arguments and - * returning a boolean. + * returning a boolean or a Promise. * @param {string} [description] Error message to add to assert in case of * failure. * @param {number} timeout Timeout in ms. This is multiplied by the global @@ -3673,8 +3685,8 @@ this.asserts_run.push(new AssertRecord(this.current_test, assert_name, args)) } - Tests.prototype.set_assert_status = function(status, stack) { - let assert_record = this.asserts_run[this.asserts_run.length - 1]; + Tests.prototype.set_assert_status = function(index, status, stack) { + let assert_record = this.asserts_run[index]; assert_record.status = status; assert_record.stack = stack; } diff --git a/test/fixtures/wpt/versions.json b/test/fixtures/wpt/versions.json index 64de3fbbbeff27..8ec93059e8ea69 100644 --- a/test/fixtures/wpt/versions.json +++ b/test/fixtures/wpt/versions.json @@ -52,7 +52,7 @@ "path": "html/webappapis/timers" }, "interfaces": { - "commit": "df731dab88a1a25c04eb7e6238c11dc28fda0801", + "commit": "727995f0432f7ab2ea35c8679412edc28d87ec08", "path": "interfaces" }, "performance-timeline": { @@ -64,7 +64,7 @@ "path": "resource-timing" }, "resources": { - "commit": "919874f84ff3703365063e749161a34af38c3d2a", + "commit": "1e140d63ec885703ce24b3798abd81912696bb85", "path": "resources" }, "streams": { diff --git a/test/wpt/status/compression.json b/test/wpt/status/compression.json index 31a5a78b69ddc0..0cae222832e823 100644 --- a/test/wpt/status/compression.json +++ b/test/wpt/status/compression.json @@ -22,9 +22,6 @@ "idlharness-shadowrealm.window.js": { "skip": "ShadowRealm support is not enabled" }, - "idlharness.https.any.js": { - "skip": "wpt/resources is not as simple to bring up to date" - }, "third_party/pako/pako_inflate.min.js": { "skip": "This is not a test file." } diff --git a/test/wpt/status/resource-timing.json b/test/wpt/status/resource-timing.json index 22f21cfe48d7fe..db5154260227b3 100644 --- a/test/wpt/status/resource-timing.json +++ b/test/wpt/status/resource-timing.json @@ -19,5 +19,22 @@ }, "buffered-flag.any.js": { "skip": "Browser-specific test" + }, + "idlharness.any.js": { + "fail": { + "expected": [ + "PerformanceResourceTiming interface: attribute deliveryType", + "PerformanceResourceTiming interface: attribute firstInterimResponseStart", + "PerformanceResourceTiming interface: attribute responseStatus", + "PerformanceResourceTiming interface: attribute renderBlockingStatus", + "PerformanceResourceTiming interface: attribute contentType", + "PerformanceResourceTiming interface: resource must inherit property \"deliveryType\" with the proper type", + "PerformanceResourceTiming interface: resource must inherit property \"firstInterimResponseStart\" with the proper type", + "PerformanceResourceTiming interface: resource must inherit property \"responseStatus\" with the proper type", + "PerformanceResourceTiming interface: resource must inherit property \"renderBlockingStatus\" with the proper type", + "PerformanceResourceTiming interface: resource must inherit property \"contentType\" with the proper type", + "PerformanceResourceTiming interface: default toJSON operation on resource" + ] + } } } diff --git a/test/wpt/status/streams.json b/test/wpt/status/streams.json index 6454918110dfbd..fb0064a810503b 100644 --- a/test/wpt/status/streams.json +++ b/test/wpt/status/streams.json @@ -2,7 +2,8 @@ "idlharness.any.js": { "fail": { "expected": [ - "ReadableStream interface: async iterable" + "ReadableStream interface: async iterable", + "ReadableStream interface: operation from(any)" ] } }, diff --git a/test/wpt/test-compression.js b/test/wpt/test-compression.js index 6991adff5645b4..23800734922afe 100644 --- a/test/wpt/test-compression.js +++ b/test/wpt/test-compression.js @@ -4,4 +4,6 @@ const { WPTRunner } = require('../common/wpt'); const runner = new WPTRunner('compression'); +runner.pretendGlobalThisAs('Window'); + runner.runJsTests(); From 83ad272fa601c5e7209989b04bedb4f67d54279b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= Date: Sun, 19 Nov 2023 14:15:35 +0000 Subject: [PATCH 051/114] src: remove erroneous default argument in RadixTree MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This default argument can never benefit any potential caller because any call site that occurs after this definition will result in a compiler error due to RadixTree::Lookup(const std::string_view&) now being an ambiguous call target. PR-URL: https://github.com/nodejs/node/pull/50736 Reviewed-By: Rafael Gonzaga Reviewed-By: Vinícius Lourenço Claro Cardoso Reviewed-By: Luigi Pinca --- src/permission/fs_permission.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/permission/fs_permission.cc b/src/permission/fs_permission.cc index 042dc0ff297216..9f8ab281618418 100644 --- a/src/permission/fs_permission.cc +++ b/src/permission/fs_permission.cc @@ -172,7 +172,7 @@ FSPermission::RadixTree::~RadixTree() { } bool FSPermission::RadixTree::Lookup(const std::string_view& s, - bool when_empty_return = false) const { + bool when_empty_return) const { FSPermission::RadixTree::Node* current_node = root_node_; if (current_node->children.size() == 0) { return when_empty_return; From 0fb35b6a6734512f2ba83e632967645e26dca504 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= Date: Sun, 19 Nov 2023 20:21:35 +0000 Subject: [PATCH 052/114] src: avoid copying strings in FSPermission::Apply The use of string_view and subsequent copying to a string was supposed to be a minor optimization in 640a7918, however, since 413c16e4, no string splitting occurs anymore. Therefore, we can simply pass around some references instead of using string_view or copying strings. Refs: https://github.com/nodejs/node/pull/48491 Refs: https://github.com/nodejs/node/pull/49047 PR-URL: https://github.com/nodejs/node/pull/50662 Reviewed-By: Yagiz Nizipli Reviewed-By: Rafael Gonzaga Reviewed-By: Marco Ippolito Reviewed-By: James M Snell Reviewed-By: Luigi Pinca --- src/permission/fs_permission.cc | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/permission/fs_permission.cc b/src/permission/fs_permission.cc index 9f8ab281618418..5780d6cb2607e3 100644 --- a/src/permission/fs_permission.cc +++ b/src/permission/fs_permission.cc @@ -119,10 +119,8 @@ namespace permission { // allow = '/tmp/,/home/example.js' void FSPermission::Apply(const std::vector& allow, PermissionScope scope) { - using std::string_view_literals::operator""sv; - - for (const std::string_view res : allow) { - if (res == "*"sv) { + for (const std::string& res : allow) { + if (res == "*") { if (scope == PermissionScope::kFileSystemRead) { deny_all_in_ = false; allow_all_in_ = true; @@ -132,7 +130,7 @@ void FSPermission::Apply(const std::vector& allow, } return; } - GrantAccess(scope, std::string(res.data(), res.size())); + GrantAccess(scope, res); } } From c8d4cd68b43b34a58541853cc33747b3dc0e687d Mon Sep 17 00:00:00 2001 From: Honza Machala Date: Sun, 19 Nov 2023 21:29:56 +0100 Subject: [PATCH 053/114] test: replace forEach in whatwg-encoding-custom-interop MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50607 Reviewed-By: Tobias Nießen Reviewed-By: Luigi Pinca Reviewed-By: James M Snell --- test/parallel/test-whatwg-encoding-custom-interop.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/parallel/test-whatwg-encoding-custom-interop.js b/test/parallel/test-whatwg-encoding-custom-interop.js index 592dcc8582816f..80d088f6ce3741 100644 --- a/test/parallel/test-whatwg-encoding-custom-interop.js +++ b/test/parallel/test-whatwg-encoding-custom-interop.js @@ -56,9 +56,9 @@ assert(TextEncoder); encodingGetter.call(instance); const invalidThisArgs = [{}, [], true, 1, '', new TextDecoder()]; - invalidThisArgs.forEach((i) => { + for (const i of invalidThisArgs) { assert.throws(() => inspectFn.call(i, Infinity, {}), expectedError); assert.throws(() => encodeFn.call(i), expectedError); assert.throws(() => encodingGetter.call(i), expectedError); - }); + } } From eacf4ba485e69c627e3e0b49c7932d770f958b7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= Date: Sun, 19 Nov 2023 22:22:49 +0100 Subject: [PATCH 054/114] src: iterate on import attributes array correctly The array's length is supposed to be a multiple of two for dynamic import callbacks. Fixes: https://github.com/nodejs/node/issues/50700 PR-URL: https://github.com/nodejs/node/pull/50703 Reviewed-By: Antoine du Hamel Reviewed-By: Shelley Vohr Reviewed-By: Joyee Cheung Reviewed-By: James M Snell --- src/module_wrap.cc | 12 ++++++++---- test/es-module/test-esm-import-attributes-errors.js | 5 +++++ test/es-module/test-esm-import-attributes-errors.mjs | 5 +++++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/module_wrap.cc b/src/module_wrap.cc index bad60d02dfe953..52976d61814256 100644 --- a/src/module_wrap.cc +++ b/src/module_wrap.cc @@ -255,10 +255,14 @@ void ModuleWrap::New(const FunctionCallbackInfo& args) { } static Local createImportAttributesContainer( - Realm* realm, Isolate* isolate, Local raw_attributes) { + Realm* realm, + Isolate* isolate, + Local raw_attributes, + const int elements_per_attribute) { + CHECK_EQ(raw_attributes->Length() % elements_per_attribute, 0); Local attributes = Object::New(isolate, v8::Null(isolate), nullptr, nullptr, 0); - for (int i = 0; i < raw_attributes->Length(); i += 3) { + for (int i = 0; i < raw_attributes->Length(); i += elements_per_attribute) { attributes ->Set(realm->context(), raw_attributes->Get(realm->context(), i).As(), @@ -304,7 +308,7 @@ void ModuleWrap::Link(const FunctionCallbackInfo& args) { Local raw_attributes = module_request->GetImportAssertions(); Local attributes = - createImportAttributesContainer(realm, isolate, raw_attributes); + createImportAttributesContainer(realm, isolate, raw_attributes, 3); Local argv[] = { specifier, @@ -588,7 +592,7 @@ static MaybeLocal ImportModuleDynamically( } Local attributes = - createImportAttributesContainer(realm, isolate, import_attributes); + createImportAttributesContainer(realm, isolate, import_attributes, 2); Local import_args[] = { id, diff --git a/test/es-module/test-esm-import-attributes-errors.js b/test/es-module/test-esm-import-attributes-errors.js index 243277fdcd7d29..828ded7e684342 100644 --- a/test/es-module/test-esm-import-attributes-errors.js +++ b/test/es-module/test-esm-import-attributes-errors.js @@ -26,6 +26,11 @@ async function test() { { code: 'ERR_IMPORT_ATTRIBUTE_TYPE_INCOMPATIBLE' } ); + await rejects( + import(jsModuleDataUrl, { with: { type: 'json', other: 'unsupported' } }), + { code: 'ERR_IMPORT_ATTRIBUTE_TYPE_INCOMPATIBLE' } + ); + await rejects( import(jsModuleDataUrl, { with: { type: 'unsupported' } }), { code: 'ERR_IMPORT_ATTRIBUTE_UNSUPPORTED' } diff --git a/test/es-module/test-esm-import-attributes-errors.mjs b/test/es-module/test-esm-import-attributes-errors.mjs index c29cc459326c4b..887a1b97cc26ee 100644 --- a/test/es-module/test-esm-import-attributes-errors.mjs +++ b/test/es-module/test-esm-import-attributes-errors.mjs @@ -21,6 +21,11 @@ await rejects( { code: 'ERR_IMPORT_ATTRIBUTE_TYPE_INCOMPATIBLE' } ); +await rejects( + import(jsModuleDataUrl, { with: { type: 'json', other: 'unsupported' } }), + { code: 'ERR_IMPORT_ATTRIBUTE_TYPE_INCOMPATIBLE' } +); + await rejects( import(import.meta.url, { with: { type: 'unsupported' } }), { code: 'ERR_IMPORT_ATTRIBUTE_UNSUPPORTED' } From c3eee590be7160551b489c6b7962a31fe4adae3c Mon Sep 17 00:00:00 2001 From: Yagiz Nizipli Date: Sun, 19 Nov 2023 17:35:19 -0500 Subject: [PATCH 055/114] inspector: use private fields instead of symbols MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR-URL: https://github.com/nodejs/node/pull/50776 Reviewed-By: Vinícius Lourenço Claro Cardoso Reviewed-By: James M Snell Reviewed-By: Geoffrey Booth --- lib/inspector.js | 57 ++++++++++++++++++++---------------------------- 1 file changed, 24 insertions(+), 33 deletions(-) diff --git a/lib/inspector.js b/lib/inspector.js index 70796c83fcffe3..e51bcf2f3cd977 100644 --- a/lib/inspector.js +++ b/lib/inspector.js @@ -4,7 +4,6 @@ const { JSONParse, JSONStringify, SafeMap, - Symbol, SymbolDispose, } = primordials; @@ -45,28 +44,19 @@ const { console, } = internalBinding('inspector'); -const connectionSymbol = Symbol('connectionProperty'); -const messageCallbacksSymbol = Symbol('messageCallbacks'); -const nextIdSymbol = Symbol('nextId'); -const onMessageSymbol = Symbol('onMessage'); - class Session extends EventEmitter { - constructor() { - super(); - this[connectionSymbol] = null; - this[nextIdSymbol] = 1; - this[messageCallbacksSymbol] = new SafeMap(); - } + #connection = null; + #nextId = 1; + #messageCallbacks = new SafeMap(); /** * Connects the session to the inspector back-end. * @returns {void} */ connect() { - if (this[connectionSymbol]) + if (this.#connection) throw new ERR_INSPECTOR_ALREADY_CONNECTED('The inspector session'); - this[connectionSymbol] = - new Connection((message) => this[onMessageSymbol](message)); + this.#connection = new Connection((message) => this.#onMessage(message)); } /** @@ -77,23 +67,24 @@ class Session extends EventEmitter { connectToMainThread() { if (isMainThread) throw new ERR_INSPECTOR_NOT_WORKER(); - if (this[connectionSymbol]) + if (this.#connection) throw new ERR_INSPECTOR_ALREADY_CONNECTED('The inspector session'); - this[connectionSymbol] = + this.#connection = new MainThreadConnection( - (message) => queueMicrotask(() => this[onMessageSymbol](message))); + (message) => queueMicrotask(() => this.#onMessage(message))); } - [onMessageSymbol](message) { + #onMessage(message) { const parsed = JSONParse(message); try { if (parsed.id) { - const callback = this[messageCallbacksSymbol].get(parsed.id); - this[messageCallbacksSymbol].delete(parsed.id); + const callback = this.#messageCallbacks.get(parsed.id); + this.#messageCallbacks.delete(parsed.id); if (callback) { if (parsed.error) { - return callback(new ERR_INSPECTOR_COMMAND(parsed.error.code, - parsed.error.message)); + return callback( + new ERR_INSPECTOR_COMMAND(parsed.error.code, parsed.error.message), + ); } callback(null, parsed.result); @@ -127,18 +118,18 @@ class Session extends EventEmitter { validateFunction(callback, 'callback'); } - if (!this[connectionSymbol]) { + if (!this.#connection) { throw new ERR_INSPECTOR_NOT_CONNECTED(); } - const id = this[nextIdSymbol]++; + const id = this.#nextId++; const message = { id, method }; if (params) { message.params = params; } if (callback) { - this[messageCallbacksSymbol].set(id, callback); + this.#messageCallbacks.set(id, callback); } - this[connectionSymbol].dispatch(JSONStringify(message)); + this.#connection.dispatch(JSONStringify(message)); } /** @@ -148,16 +139,16 @@ class Session extends EventEmitter { * @returns {void} */ disconnect() { - if (!this[connectionSymbol]) + if (!this.#connection) return; - this[connectionSymbol].disconnect(); - this[connectionSymbol] = null; - const remainingCallbacks = this[messageCallbacksSymbol].values(); + this.#connection.disconnect(); + this.#connection = null; + const remainingCallbacks = this.#messageCallbacks.values(); for (const callback of remainingCallbacks) { process.nextTick(callback, new ERR_INSPECTOR_CLOSED()); } - this[messageCallbacksSymbol].clear(); - this[nextIdSymbol] = 1; + this.#messageCallbacks.clear(); + this.#nextId = 1; } } From 12605e8f7da982705835eae3addaa3c731edf38d Mon Sep 17 00:00:00 2001 From: Keyhan Vakil Date: Sun, 12 Nov 2023 22:48:53 +0000 Subject: [PATCH 056/114] build: add configuration flag to enable Maglev This adds a configuration flag to enable V8's Maglev compiler. Unfortunately compilation fails unless you have clang-14+ or gcc-13+, but I sent a patch for that upstream. Other than that, it builds and all tests pass locally on my x86-64 Linux machine. The gn scraper regexes were broken preventing the compilation from linking. Fix them. As a drive-by, also add additional conditionals for compilation on 32-bit arm. Refs: https://github.com/nodejs/node/issues/50690 PR-URL: https://github.com/nodejs/node/pull/50692 Reviewed-By: Ben Noordhuis Reviewed-By: Michael Dawson Reviewed-By: James M Snell --- configure.py | 7 +++++++ tools/v8_gypfiles/v8.gyp | 14 ++++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/configure.py b/configure.py index be95decd5668f2..ff08312b680146 100755 --- a/configure.py +++ b/configure.py @@ -812,6 +812,12 @@ help='Enable V8 transparent hugepage support. This feature is only '+ 'available on Linux platform.') +parser.add_argument('--v8-enable-maglev', + action='store_true', + dest='v8_enable_maglev', + default=None, + help='Enable V8 Maglev compiler. Not available on all platforms.') + parser.add_argument('--v8-enable-short-builtin-calls', action='store_true', dest='v8_enable_short_builtin_calls', @@ -1494,6 +1500,7 @@ def configure_v8(o): o['variables']['v8_random_seed'] = 0 # Use a random seed for hash tables. o['variables']['v8_promise_internal_field_count'] = 1 # Add internal field to promises for async hooks. o['variables']['v8_use_siphash'] = 0 if options.without_siphash else 1 + o['variables']['v8_enable_maglev'] = 1 if options.v8_enable_maglev else 0 o['variables']['v8_enable_pointer_compression'] = 1 if options.enable_pointer_compression else 0 o['variables']['v8_enable_31bit_smis_on_64bit_arch'] = 1 if options.enable_pointer_compression else 0 o['variables']['v8_enable_shared_ro_heap'] = 0 if options.enable_pointer_compression or options.disable_shared_ro_heap else 1 diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp index 45323919348805..4d69a59fcbc5b5 100644 --- a/tools/v8_gypfiles/v8.gyp +++ b/tools/v8_gypfiles/v8.gyp @@ -552,6 +552,11 @@ ' Date: Mon, 20 Nov 2023 13:07:55 +0100 Subject: [PATCH 057/114] test: enable idlharness tests for encoding TextDecoderStream and TextEncoderStream are now exposed as globals, so we can run the entire Encoding idlharness test suite. PR-URL: https://github.com/nodejs/node/pull/50778 Reviewed-By: Filip Skokan Reviewed-By: Yagiz Nizipli Reviewed-By: Luigi Pinca Reviewed-By: James M Snell Reviewed-By: Benjamin Gruenbaum --- test/common/wpt.js | 2 +- test/wpt/status/encoding.json | 2 +- test/wpt/test-encoding.js | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/test/common/wpt.js b/test/common/wpt.js index a65a0740d155d8..7917e17729c7ee 100644 --- a/test/common/wpt.js +++ b/test/common/wpt.js @@ -617,7 +617,7 @@ class WPTRunner { 'ReadableStreamBYOBReader', 'ReadableStreamBYOBRequest', 'ReadableByteStreamController', 'ReadableStreamDefaultController', 'ByteLengthQueuingStrategy', 'CountQueuingStrategy', - 'TextEncoderStream', 'TextDecoderStream', + 'TextEncoder', 'TextDecoder', 'TextEncoderStream', 'TextDecoderStream', 'CompressionStream', 'DecompressionStream', ]; if (Boolean(process.versions.openssl) && !process.env.NODE_SKIP_CRYPTO) { diff --git a/test/wpt/status/encoding.json b/test/wpt/status/encoding.json index 09f8c2b545b247..db481cca6a09df 100644 --- a/test/wpt/status/encoding.json +++ b/test/wpt/status/encoding.json @@ -37,7 +37,7 @@ "skip": "The iso-8859-16 encoding is not supported" }, "idlharness.any.js": { - "skip": "No implementation of TextDecoderStream and TextEncoderStream" + "requires": ["small-icu"] }, "idlharness-shadowrealm.window.js": { "skip": "ShadowRealm support is not enabled" diff --git a/test/wpt/test-encoding.js b/test/wpt/test-encoding.js index af20760bd533d3..eb54c70867cb43 100644 --- a/test/wpt/test-encoding.js +++ b/test/wpt/test-encoding.js @@ -3,4 +3,6 @@ const { WPTRunner } = require('../common/wpt'); const runner = new WPTRunner('encoding'); +runner.pretendGlobalThisAs('Window'); + runner.runJsTests(); From 8468daf1a9c1ed02ec601ba481b3905c1b4a24d9 Mon Sep 17 00:00:00 2001 From: Daniel Meechan Date: Mon, 20 Nov 2023 15:48:07 +0000 Subject: [PATCH 058/114] doc: update Crypto API doc for x509.keyUsage PR-URL: https://github.com/nodejs/node/pull/50603 Refs: https://github.com/nodejs/node/issues/48727 Reviewed-By: James M Snell Reviewed-By: Marco Ippolito --- doc/api/crypto.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/api/crypto.md b/doc/api/crypto.md index 194f3cb9bb1024..93f0bd3c1a169f 100644 --- a/doc/api/crypto.md +++ b/doc/api/crypto.md @@ -2722,7 +2722,7 @@ added: v15.9.0 The issuer certificate or `undefined` if the issuer certificate is not available. -### `x509.keyUsage` +### `x509.extKeyUsage` + +Disable specific process warnings by `code` or `type`. + +Warnings emitted from [`process.emitWarning()`][emit_warning] may contain a +`code` and a `type`. This option will not-emit warnings that have a matching +`code` or `type`. + +List of [deprecation warnings][]. + +The Node.js core warning types are: `DeprecationWarning` and +`ExperimentalWarning` + +For example, the following script will not emit +[DEP0025 `require('node:sys')`][DEP0025 warning] when executed with +`node --disable-warning=DEP0025`: + +```mjs +import sys from 'node:sys'; +``` + +```cjs +const sys = require('node:sys'); +``` + +For example, the following script will emit the +[DEP0025 `require('node:sys')`][DEP0025 warning], but not any Experimental +Warnings (such as +[ExperimentalWarning: `vm.measureMemory` is an experimental feature][] +in <=v21) when executed with `node --disable-warning=ExperimentalWarnings`: + +```mjs +import sys from 'node:sys'; +import vm from 'node:vm'; + +vm.measureMemory(); +``` + +```cjs +const sys = require('node:sys'); +const vm = require('node:vm'); + +vm.measureMemory(); +``` + ### `--disable-proto=mode` !Hbu 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%0AYADe6N@ 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%0DJuvlFopD;gvk1;PwQ%; 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�TC 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%0A(&8XDyPrp0Ib#N65-s6Z%BLwsNlC~vLD+e-9Y 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 z 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 z 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

@rfcScN90}s^`s3R!3f}tp)SpzeY&3vG(%oS zlQ?Mf)Hr~VNe%5&wavUTB#JY!nDIu2p#+3gnYX|m6PkrV@A7prH7OyC`*hiOsG?W& z5@?T5ICpGOcFR*m+^sA)u;Iz{*OO+H4iRb7R9!!bd1V)zyhA4aKBq*=&Jho0dE zfVb%HZV-tnC*c7c$}U=Hp`1xMyU!U?dAiNB22c^SjLxLTEQW!+`IhZ8EbvzZeU#*8 zzj^1fn+Pk9byzz%l?nCBVS3r;98w;jObD`<2#T^Kksa_T(M=$8B!;2>A|D-HJ8Cc_ zHqn@9u8%hxgmd*zPfuX=L6NhcI(8FgC@r|bb23V10+d|Rx^Xs-4D%qhVInp#OvM73 zIN5RXvjtgIOCyi7SQ2GuoADQ<#~t!D(g&63^8`ZDvt(NEQg&gouOZDOm})p#a#gB{ zADycN4-KZ>auS-*iN{(?=(9JIB@q<{1T4UVP8e||pg<)X_zM97#&@Ffj!Oe#IYWG< z8CfqP@kfi09;-yc=owEUdxA95M0l1$>0DmlFRbD$=FDiSf*_38<53zj1&fiwjj_pk z*r@2+reh9FWjSvpC(K7H36c?U5K1zMTgUlPQBK~Bu=bZ5b!m;_3X zq+Adi$l!gm4@MI>pnW$yHBB2TvF_PzAy%UE{F?@&^2(#1a5o3YaBJ0Zoml8O&N*Y5 zd}-E;=N$!;b%CUXilG|TV#81>((}U%+cD@NJsk!5BYQA3+$~pP=fy-+whUet$UY8=lcI?zZ^G}cRr^$ zjwZ*(rFK~BJH7_=NmY6B*0gx9TSdgIQ>QWIYeIWRi26{QG-V@{SyqjqN4YWL4Itgo z@n}IrI8fliXO$)4YKp3;(TJf&RbXQ|X9lA|T`pkpt+)6o&!|_D&@{Z4Ff`Sp&q>{c z6Mr?(^a+Pl>ipGvI-KU_omUJtN&cWwjh}aAV_fPl438*lZ+-r%d|Z z3C7}zY2XSJ0f2-}C_y%1X4-+kdfn#p)v>D_*{f;WC!GukRuI@TBlb}8pTX9FY}{7B zo&g?V9`a2=0QP%N5quk2t)rTGrRSMDu^J%lXdv5nph`oOgncNd&&eeM>;^XR7sk5R zI_f8SLD14@1=p7HXimC)VIgeQGy&G`9?V*zE)ifUc@w9(4L1#|@R<^QBge>$uUZk- z)IW!t5+qpO}mdqpZ&hB*NQ%KR(*E~gXR!1Gbzo!*1;h(Y4Qd%JVr?%)V0la@9w6SEruL`#2)ogCyEs zVR%N9xXVlvtJ`k#-|H}BqcrU2jXae1c4{tG9;UsDF`cD$eG?e5nOf=u zw<9d&Bd>PQ7d(8T{8%EhtIkcc21ADrE3!ex_vIm}5{ks`8f3v_sw4r%wl2D7j&Ijc zqGRNJxYjAYbBwbJC5Kh9rU<}go@-V1Q#-_N{)}e}(y3mS(yqBvm%nNgF^mBxJbWmEeh z_1?ciX!qF2?pjFK-u=#j9;=Kt2T?VZ%{tZEWHBkk=OoQ0$`XQfy2DD`m=auY{`Fdu zk3JPOP@vJIgp?;BmhJe- z!N2WthE{$Pnwj%*25NXIv6ayRK=Scj!?(>fqvsPeAVuVDek7g~v*XE0p^8Wiwxe z*hHIoh>1J)5n;q|&lZL30Ohe}_LT_C&{b)PK9+INFS9r%Pc^|8f_&?iW0>UwrJk0do&!lr434i$RRXQ-BtFq=DA zmmF-DO}K?69~+3)rYyaADKLYoRDIOTS4(TB(3dGuh|Z?bl?5I|=@?g0Od$dp1FaDi z0UMlw<5g3VM0=8$MFMk=WNu=$*vCH5!T};V99l5(HWvoDKTvi9}B>RwqrTU z-mIiAxyKdt`Eeebw_QTU7Ds!Px;Dale^)3I{%W=r0)HJ=F$IJB+>VX$_C$eN2NeR5 zPbCSL82Z;}?z*aUaVw_IY$ow;p9(rwEDYK~89In!Ogpb4Oo37{vw9|UqCCB)>{hc3 z_ObI>MyHrkIb&yBpP99!)i^g&A0e zaUFqI^~*|bRn)B zZY~kY-nfX{MNU%jo`H@P!5}6V-1Et-y@ajUftSnT=;2Y5F;s@>`1fbrpL3#*X*y%# zzn`&=#nMqm-asun-k6jv+MRPVTtd}3hDIKI(q+8~YV2w&m!MP;e&F@mI%M7E(~`MH zM?tk$D4$h9ai35(Zee9wtR$mfVN|uP&##W#JqndhUxx``t{Ah0kdSODJlJRXkd$Sk zV}P*7t?gj#BjldA*@kqC4NAJI8K>SaWPCw50luP zZ36Ni(L;w-9vkv;{a#kS5%>?kdqnoE@^;I!pS z!(C#;jjVE=rHa^#qq9Q^QwsDjN`C^pMu{(ZZW$Gm$?76zSa3I`u`#A&R}?6L3*9Hr z-e^mgUH2XcG&^fI9mXlNKe@J?-lA6WOaxN>ZB;_0$ORZ?ApB)L9QC}|I7B9b^M zP&VqUSY*I-=Gck=*gO7+d6K;~bF!p&&JI&qr|V_m>a`p%5+{YINx6(C)4+*Z{%&qb zkq!kaX)*S&u-9L}CGO8#+tJ$oOOK~@J9)oX=JtBQ>rHf^yK$`wYBw#*(X_THDiIg3 zFne{aC;A_A`RtECRH-<3Jv8v#bFyI3cE@z9Iu#yAUe%ea<1vMW!_>G#S8ok}VL3CD z_>LPuvx(iyGk9TK|p?S{bTRcoIIE+-VQ z7|i%pVa%+R2LW~5jY>k-Zmr3dW5j*5F!N|1T7=I9lhO&N4i<`L5sgrWqts$6%aG53 zQ+uYUm!ktUZps(3{7j3kMQ@Mtr%#b}tkGLmZJhVN+YRp;ONsxW|I2_=Sx1Gf^Q`$ zWEBA?Nzy?nw^l`_RQB}n7v!d{jc-zGhB~Nj)eWY2ktF6RYN~{Yx{hCwEe(TJsi~UD z*|e|loNvcrf2U=>lgyL)GOdn1S+UaKgU@f#I}QhIOuT$&*kn6NifR1YSj^SwbmHk> zpmud*{bG-<&P{_JV0^oaUXVALjL!nS`{Tw-lLPw>aQI<(a4@$>{OeLp7)?y zDT=oYoF#P5((d)F|RETdUz6^<{f85cu<_dx7<)5wbMwywI-xhaM-u3usTx1$L4WRsEOxj zkiJ{dUg2WlV=hjkv@d$a0qLM z84?;a&PUUIYa$%^*4VpFdgM=P(#~zL=Dfk%Akc+j=W-}7CC?=cB+;|5In>!oUIr1Z zXWV#Mboxwq#K$=X4ldxuo}P0Z+=RztUzURkL5^ifdXiJ&&4M}2^Jz7gnt_-<&@k`5 zIANKXZDH8Rw2$t?H;*drR3_>}wC#C%&SMAJYYvtZT_PEmoowh_KSX*|m-4MKiyBhL zBR_EpR#g>{ZpFcYXy*#_>2S& z<<$-9rS!T!ogAg8skiKpiDdZ}6H=WwSf)})h+VW0@Vd%s*D#k?PWVZf*gRDv6J=}M zHd};5Qr6v4FvX@ysQP!?13^dO_g0*TRH`&KRX=Mb8yYzGW02-WdU{mKECmsS;v3Aa zNxDqB5st(>ZCne3(?hW}K+NDdpSE--RP9$s$e3XB)gjqKVYYF9p1!c(g=1Pkj(5;U z39kN!<2hqolZzJLmdyV)nLlSsLTIZ0dYms_SXLk4gJN%OsjS7g=7Rz?eETZRuC1w} zeow_c-_6D6cifx5i=uj32=PH(%#Ht#9W1yax%}omFJN1+Q|MC~YRycvk#1e-FRq?Pm>o zT(dfY{nU{&XVEVa?BjNC2)$#N=bAapB>y+eJ;9G2g;?p^*@}J?xC$XwQ8dnBUN+je zk)DejdAefwEOgxmLi&20SO)}RAP{-n0+d7~A%{==dIF#bhzj1x7~x+I)4%l|Gp*34glq6)`<>4zdL{_- z`)!7h_(TuoI}}-nK!d&gOvDipKY~hK9hVEjyWw{Gj9ZObV?Qm*wERtU4@Yzkb9>!v z{Punxo6>Ues}1Lr+;ex_e{>JEXjkMhJiLO5rjgNW@~j{N>U6mWZQyWlqBa$po6CF8 z@`Yt8d&aB;K%NI8gI>`8EmGaOp;OLt8hIz@jkoY;K`6>9t3%Z-GdjAg$ z8e5t49W3LOw@#85a9c|x4CSfkgNFx*hVw?JPeT1&4w zbw2goL>~oAq$lb4=uo;L_R~aY)RhjLiY8p*Mr|jc_UkZ`5htvWRRK1@7iz;zV-l+9 zkgg0n@e(GUJ<03%y%hmoaUP~}b9w?YV&5?u$_MO+ODZQ^bON(QoOdaha+AelYO!(1 z@~0V34}z2{jecYV1|`g>vD~q$Cv2?IP((!itfNya2YKU^Q^uO^EsBYKR_bBHH&kWq zHKOZ`OX1)#y-Ao89`p@Yj|@aMot^CO{uofu*BqvY5bAX-Wcq3Y*-(wQvV+(|CKY#y zSfnxwP%}nKZlr}vR6ST0Da-HC`?~B!EeP)qD~n)5h=4+r!evYADA+-2ggW`k>HJgY zvD8DE*I87N_)78xM&@cfh#c89bXsRbH2pF>ag{JvBJNCAn(3ul)hW6%y!2M%cked? zz*%@P1VjDQ}Sg z{Bgs090Z9PQ=g_COckP|b9vk(c5nj?%A_Kk(M(izt<>0Hnm)Ir{D!AtYct%1$#*r1 zg?AOld>w)rmMZ1SDx%~vuD&@rJEPj1rkPD?<1HCT{9MOH8;6q$NKvDoww9LcYxQb< z2Yj>HjfZ!0LjuB~pHu*^u8Pje6}St~Y>PS2fH66zBINN`-M?8OTXxd?&liVH=GIzh z>4h0zARzc?nIpWyCLBqjkcv{Amu+-eH4htv`Lb+Hv^cv^GX~Fz#mZK}c8(hQ3AOHn z8M5|ud}hASf=U=g^F5;gOlX-AH@Re{+j)OwZ|zb_KXFdzI-_4S77_82IY>Obk1P1B zu;+~sY41Y8n19C~I`FeWF#BxTO|%ls=p)&B^>NJ-S5CB!jl&I1?GjxYl5MqQ@KV7* z(y*YVnv>0zvO5@&G5H9nXzonW^8L9LwWc%9r@cPo40<|q>m$Q@ZN-z^u21G-sJEF< zd??Ch5tZudYD>&7ox)+cP^L9}dEG&U$eLP*#n<`R0E zXNR@qe15_*xE8@?RW`X)GoDt6vM6~u$B{q@=KNnPC}b6%jk!i_??;yzB``vt#Z95UCKj z(Ke@^#2*tmZF#70-fQBc=vHn@1rN)L(rc~WB1}Qsvs964c*CwqhK(++yZ40$$&jX@ zq0xH7E^W$hYYXVyldXzRCA8EH-L*%?Eh>m?c}W}8LyFxY9m{KKo=$_0RhTi{>$8DT z%6br+E4PMzRM%V7(H|itz=2>Vh#1pw;}E>ux*H2+x>OiW<7|b5-`I8`HXX>63Ea)t zeJ-n9&nb8wCIysgD7@GbOKCfO2LM%{ft0NfgA^1AF_c7=YY3Yd43O{0$Hh$yt|xy9 zYKo2GWGi=HmzRi{6!pTE66uv1H0885j5Va%N<1oxB9QYQs!GYEZd`mt9S+4}A?6j= z^Swo-$Z=GbyCA5#^DkTE%f{ z3&sQhi{|MsX8BCoVjmsM8wu^)wJAL zJcbxQ38O{?v)CCLM$56^NOO^@lGf2K%Ze1L2Vt<=%j|f68yr`zZ^PI9ZP4d=0Od|lEKpH95hK!u0kbH>mlzq zbw1_d4UwX`i@T7VJQX^}j{(Eyz~5!6vm#$NAEP1O4#gG;T^!6_oXW5f!93qKK)VsT z$pMdH_B{m3Cbk!5+a!YEsSzX<8K%Fw=)ru-&??serDw?^g;l5;iC$BCEg@ zmXt|PaMChh8@sM(G;onpxYhMk;F4Wb49XSPaBH1nGKRY8I728lpJYzsIo$lo9$=UFaI=uM(mC-0moa>hOF^jbcZ0j46s0m=m!4<|zUJ~ihBslQ1v$`vsTxwhEJklI+k-MD2D;#v^s=;E` zUne0-e{Ld{+E3XsaG-890kSoEX~|EI&*aOCq>=m}@SZrUlXBS{l3LE=jXRZ64+TAS z#Ih8+X;epYGChJuDi^x%y8QZRay;qg$PZ-LQCg_1q)P}Miugrb9rs%Pa?x3Mo7 zWJ$s9WpDPm$#XVk&kg4n4$GzIsINm(WJeUC+mnlQNy-Nxw}@RQ604F0obEiLQvIQk9JC{et^2V~Gx4ZucjS{!I-QNc#}*rWEq-8zit= z)6lP=u`baso@fRjBqCI7o!C7O0|^Y%-8>L6D)jmsx3QDR7Hv3D;b^qiBI=$d zyVgai&OXyU6YMnz1IC=hN1=zA-;AHCnfq)*h++oHuEuQmu-vn92EjquCWyO&IRkvg z?~zS<{{i11Rmb@VbsH+hLW`tzGm$Q15j)pmGi4DY)iIRLc@+rhvXt=FxOCynI)KK-bv`)9rP|1t#pEa6DmPro((k5F`Ww02>PpEV^O6f`HO6$$~Dst6;F7FBi(>?Eox@UKk_!qUGd8(d0i zzVFxIGfd@vg&0>Po)pFKG&`BX?~+8XdC!>Ee_^=1u6x2N!tWBC6x zII>!8Q22YZPxm`75m8OiG`wvr#}`E>e;=$GoGwACkE@O* z4HwehK~HyNdP}3zJi4TIcXBZ_E09|)!>fWMqp!on5y3$?NL8!?q&ZV%xllW#Pj?9e zb;WoQ!zr9ph$$_ zt7M(ES%VA8Rip+TSI6t?7@~&r_G(qwbdd8|^6Fpoo_OnORslO9v*gltF*OkaPO?E+LLo$C=3>DCZi!eB}Y+$SxgW z-i>DfMtrq>I48)Hft={nvvy(Wd-XPnbO^?*LcLZ5Cgv>bE?dT`SRuyFI{_18BR@6{ zG8QiQa(N?L%FFI%A)3`ze+VZSiTq#cA`W#|7LoE17>k>!$#%yzDHv;Mn-O8|egjj8 zphA*QJ!yKkZX=5{c`TvKYYPY5D5j%mydxEe?cms%1V(?vy3bBT@@q?XsJ#TOD9q9^ zuoA?tVfNs|DK1=Auvlcd%&SsGXt}9^*=ITGxT&ox42I2Db5lBGYpa4WT&n?6=gvFK zbhPvG%2kDqbZ`zh(6WmnIWn3q<6F!ULtFL!5xRrz}8r%sJw-Vei*Y@jLMlNaUD8Ea>jz zKbaYGZl+3w9Qd^r&f4!Ow7AJ_7dX0~p86#Nh+zF8{&<|_k`EaEDfuJD(mr~aoHS*T z6~G#DYa=S4&txBvXk_K;Ylx=W3iMU4ztXW;B6~lJrtYf`+Ox~R3F2~3Xxe=@8+#L+6sH>z4poZs`m=# zLrrdp3!hEU=vQR6vE_MnBVL^9f@C=TDQO}!h>sborKgm6W()HT#(hgF<8fa|al$0l zag%HxM$eCzOCE(pEg6>YnBU37He2#0N0kW?%u}%s0P@ts@v?_RvVTLnbpv(z7bI7b z<3oB;_%|;uRvNSYBgin+l#`sK^&MnnIY?4~5pGfg?`QZ!q9C?Gxy55q*sGRWoWEOn znu<`kTBFBHQQCx)BF*uuky)zmMPnYeV%~8pV_&7AO_+&1=Mtein+K9A0nA2FxRlW< zQIOHq_-{{%ntVF!HK!~ZWRg0&kCer`SsDeqnrxK{{lYb2YWeETk_j1;Y`no4s^pG& z+bN7ATNV1Y^{FGRUesp{@%&@hhQD*AnZ%!jYbScN(*oT!F)ieLa-@$d zckg<_W^rHnL$OPc>rLgqk65EPZ@XP*+x)+w4gtTw;|;Q?`GR$_EFs{*@D!Vkg}hBi z85d_1y6dF2hU+4SN0?&esj!kdu8bz5gL(yw^f~Dh7YCl)*fGzo7oaiN_cq3S6)>=iR_Dk%Zsoz5&;i}~G z5d|DbmLn_Zi_>o&1;t6LP<5>bUH@1i^CyT+NIK+&kZwbZ4ztL}Q?1vi!+1Q5LozNF z9D8{5Q#C_9v03sQqQ%3O-)ub!C~E7)k#fDLV>y!s43=42h$_v-jUFPC7c2;Nm8xV_ z<=H|mR$=uD=miKP!mW4Le;MbEpiRt}%Hf_bPyXNG>u6B!lQrLjhT78KsnG-Uo4iyx zDXtvJ3@0dh0`FWVX!{3DiO?OoWUwDukgHVDSPEeo=iWP;moYas<5dVGx)u$tplD=e4jQN> zVqkJ@=I5gkbRx54LWaTX*q#dY@}E|CoVGalG$G-~%~h(s#5R+WoTU6AQe_iSIguJC zPz0DmQQ*NmW2HcYA2}uo3%3yXY_euyUAJLF0H9b{l5Q4A&5KNU7BZ3R!dzG7`@Z4>jyGT-q5Sd#q;ehy!aWbn)HpYH` zj?m|`Vcv3hfz2sZzaK5q9kzIR!Lz3JOL{Q}b8xBH#R~*x zZ-ycE3JBS6y$m#&`bvB6xBQ+mg;3_HN|8q~zRS6WOWTDuyG{Fajm>`INs-$zo2j;W zL&ZSIET%a@ zI6&{qe;LLDFfkM31vxC#=POSeS z0PE(cUCaf_X^NoCPV9C>N+nBs)#psDwLM>oRq7dw1cI|pbZ8hZxLGnBG8aFTe?83U zIH6@aK9S2L$q#g!sYQ~}DH|4#(#o@n`3}com7{+yxKEPQRpVyN?8_-s3+Nt#%@d56eqm>iELwqL75ORihgOi;9kw?Jj1rar zce6Om(e7=weo>H^uB8orTSu^__PTsi=en~Q*F!C`gmS|*a_H{yNWV2^WeA(3J&egv z3NROADMPe^bH$ZaPHibCCn7YKQPBd%wi(0Bhn%&gD+J+TKW1}M6%ByAp?-b5R}N1q zp50fC{qke%SG|dcJMpCAM-W>kXofGqxak)uZ+qP4&6{hm)7vQ?}wpsWenz=ZZf&NIPLl@rx!l6+wzx$i?KRO z@R?0^w*5VXRL2Vl*?IUDrGWMBNBCDMD{j^(z>fV55A|63-lN;ocdH8CFOk|e{!g|e zFSuKtKLOlDq&7kec3FX1PO-byRG8#5Gt&#b=+>DRm*&6IwiV?yuyiI>JQ7|??HFrm z+UPjcT}(bc4lAMZRL{Xi`$ZCPjE>bs%k`}++*yGWcgQHH)A(3R5@$BJ1LSF=8e$v; zRNg#Di3ySHGU?Aov2{lzBr@(PWU_lN6QQaeveg^SSlG+d-ljjInGdmIKT+IYc0`iF zPV}1g`wc3;kfm|sZ49<+n8#EepYJHRJLFm$qYz(jX^X^c!)m4(~QU+>B@Fdh@Hb#Y!hNbp!m#i zLd>Yo_xqDd7bAf<$64<$hD5Lx^!eiTb0Dw$(|*?uRZ!!D?_hG_WME;phc`T>!P2sN z^Tvr_P}@J0T3k?QDTbq+$mA^X9#oHO)7QpK{^~UV z#>6Hv8OiubHf!Wv6L2;2&p^;hl?FVP$=oS=%SLv_B*NY^xa2wWSMv#;s~Hs{Aw_9% zD7i+Fg!HBd9UySC0h3Qg^!RAw5W&jwVodcVv>AmM@H|{*GMx{vlJ$A@`RL|k$Rzx0 zl@lGbQa5%0`ZGzb?aUsPk&p2Byho^PS(D3?5#~uLkYZe$mnU^J>QR(9m*sA!QGLZs ztu?$~4a9txk>x9b;X6JgHXam5oX1I*y1T0s`Y8jr#B0=yd9|u%AVbksEg5r{_y_x> zK^Dj3niD8axq`KeJM|8nS+O!5O;~kW2il+snB0>IL?;h25FRdfX_VXjZEqcQ28 zTFGmG;ono5(N(1(=!I7tV^jceunIjoG>20cM`E>_Mh}eN#p1X}_VOh^CJSv#7MZr$ zpI+sgNSo7rn0->3ku1{>{=`!mfUB#J^jQ+>-Pi<g%Bls{fzu0b&x>Jj8;IY>^0@Y`ka`_sx#(Y%d;%gL=djEPc<- zv!+vv`Z;@`S>#8t!nY_t7vC^1feRMA@$zO?tE=L8-+B~aY$b31yle)S_Tcn<=%NASqB9rJTW^D95i??Do_C6|>U~JFxpn3;On>y51zY z7cl4a;9DI?7Nn>eOO%lCAB4DV!=_%K_a~T_b&nw64D^9z;_}P@cQc| zS7mOXt`V^`K$f`9!-UNG6y*o1q8lY?WDvWbfL=s5*++%s4UGKNsI!9H89=f&2;?cu z8B=(fM#?RvmEx{r&egoAoGwFU%>|&$>Let#@qN#nr)Ae1B~4hKe>S-hQKxG25(SOI z^M$1IBh5oo(fHV__J2p&zll~?jSh%tifKFF3rbv7H#{y5jxOsZ=+EnGJ=Ht4?cJ9= zb{DakZaL9T4ipA(nWC=SE4_gD^*sm-+3Y?%eMHzHst>I)lz1b$QL6n2tu~JyOr7|q z5OhltDX7eRcLzz`30CFJc;%Y3kC?ueHPssm@PsX(V>a*PU4kk@7`42SISG7-PHx1U z$O|7Y*_8UL?<<1x!ViR)fvsRNb8v{@cTc%8j0O*U9&*GgwD+UI!D;O6)fpV|7_0+_ z4)cYEdiNN(CdPj)Xr`39+rsYE1{!L(X&DryiXMRF;6P8bT-50Fg2s;HE$;IFFcZ_a#oTMqc@jeIk?^# z8CRVb824jKSVw9@~5BfNndHa+lLV>iI} zCa82Tsrlvqk9f}+6#F`A=hStxIbMmd8i(Hz>!nNGs&dc0Wy)ExWFffBcCPns3K^sY zm3wBu8Dl8gLhAk7)B-y{is1{JESjBF=oIugN4e?`F`-J%G*rlVx`eITRl->TW$l*k zkWqiF0rM>#A@%StJjj&$x}QLcc%L&P(p#Xh&ZE5nD?Wa`)-C)55m+j*alCRxT2R}X zEVXOiw8UPub$9QEvk3Cw@Y`I4kc-a7>06f6Jua9*_|b0bxX^y*q(XX2pfjtgdG;~P zyVv;dx>~1%$nZkXRW@{8flJCgFn>7nl`M-ET~&CpXqBC!-$q!jZ{EEI1)!}8v>KdU zA0OBs%hRqTrRarKS9PqV%q>>v>S@jzY8_e0Qtu$d&`Ud}_1(l*cwAS?GPtv+kj0N* zNj>@klSIHaaqSo=}FzFLrpgjDJlTp9uuPHK|F0+xDF0VBac^l z-cHS``pB>Hcu3~F@_UQ=8j7rRQ6W`vZZ>Wb9H?@&vEyny-w>zz54VCB7dC$*(?zt^ zR*x?;Ol@pZAaWzP33HsE#&n zw|>73E>cK()&mX01}=`WiRqMb41yr;h$)7m=cH>OKex5tn3a>6s7!`L<6^cgK#MDo zOghaDPM*r(qN;V3h%KHXj$;v#Yzz?E0`T?#o&s))MeJ(i=kcoahrA2U8|3|Ef9f8hFq9u57=tv zZ8V`uxheu>K_G_t15}#g0ea~+Eg-3hYLLoJ5e=oIY?6^ds*|J$U$snAl!E zQ}n?+65558c3Lu2dz~*EE|QCf)V@C25yap&x{?kZXlY2yMAJbNUby%%OC?0Mu-LPVfKwFH9YY2$Dla_)wYfJg)5PYbsIwl6 zIHw|Vs|OBO4AsPOOBVPV68u;tTc4N^FtrCgUX3|M{HfUG#x2x`ZP z4=*LvhLTNymn_`39lc3tC1JXG0~Y?=jb61C5E{N#EyUVka*{P(o%ENZ&4n5=0;1~~ zo>d5ZWx(MchC?L0D-ULhd>Xy-aQM!hab;>dV0}PM#Em6*D#=f%;p9l|vhkeYR${f1 z4_Y>Mv}E17_h`OjLy-o_iQc0qq;UvBPJ(EOB{fFBPa&&nyg-0IQd7e(^|6lnFcI{WX0lTBy5`e z=d5MHKx3pi>{h$px_vmNWXUFK;pt)N1_@bYHf7-%VoMe@@F2dG%!H&OBsT4YqkBTr zmgv2zqO^ALRVQBp{ix-h*?J1PBuL?^>BpVA&&Y838bnl*C3OcdmE5f6S)w_Wj7K#6 zS^*)ICOtT4FjR?D(#on=b4PEH!$Aou7OMFxvWLjDA5A61xb=u%EdVh>R=>KP>AM;8 z^BXFKB`{=RLv(s4%T4wLIO9&^<4(m^RuOx5#f3eU1VPCC9=U7qUJ+nTN-zmFk9 z*KT=(E+%FU3JpJG{+UkpC8E&5V~VV8JUVA0-=!Otf?Q;hK?)Hyb1jw(?uX8arZYWK4e2Gd(2|6l)yu5bdO7 zzRhQh>^$X#zZ5hoDkpTAP$sL`@L91QZw!g_-`K|DYfjL66}tgl33{5kO4%{sw3HTE zS@BbtWcJQ=@@+Y8frdrryV-b3oLoy4y;AC?K+8HRqe;|vDaB=q*6^!6z~=_Db)Ehr zL_GycYuQ(ubh*)Exw{4EN29A={))9wFpEIlR3dTnj?2Zax*%5%XK+%XZh6C|MSyO- zsVCD*?9x({T|`vXRouW2&p_O1HxDi$d>F|y9c^OE+}YRR^4zAs>8_7l{8=1_yjGE2I@FC>y==AR z%6ATHF(#fj)x><*my%&)+j&XxGmMAHUj}3!S?V<-Wn~`epFyOZj73zO2UB;|g3f~q z=$DHbEWzA5O|f;T(@Tbu;OvUJzH2xqm|{6?rjo$uwG;Av-iC{-JyzJvlqk~2Dy7Hl zkN4fShq~pA$+vik8Y;PhmOEqdpb?*To%{Y?;$rFLl|P^2aS6so!1R-&J&=PWZ3sc& zUVy8ZE}2yhRHfx4P`QHISA|gga;~#MdF%sM#XbvQ!xxivx>ACJCMjuZN2pQ5W}vj} zH_0z`n69eI){lz5^$7FhrE1A87<+IDVM!}h;bl#31Qm;XiDRKWL(bzZu?NEtn&wWc zG3RyTVZ4r+s|w2IP2)vmuvX`_xzAljsDGbb%MEgqHes*BvR>0knOjyxfaj5gR@MT% z))qQgonxX96p&$rngvrPXo&P-QK&697of(N^fSxUM6^*?mKo9C*GHFPt26QoL6T1q z^DIp^Owb*Re$1?Y1tpwjz8jZqZbMnyb6xCruhg^Ww1Ztu3V7mgKI)<5$l&Jk`MZlX zWp-y}wYYY)?=(I{+}qj|OP}WZUYmvV{QrB|k4R9ElhVt3e^HJppcEcubI0m-gWE!h z22o%nmx$g5I#iD!JU1(NYOk(&iw)tWineh|XF7T> zaqI9F5)L%=1`z>1UEBAVCvipLhk`3^D}tZk4k7B98}!d0Mte9JuyM)FxJsm#A3o}g z{R&;T%G;K6T~PDbzC<4$1EW0PvdK>>Us*~XK86VoF+)(JEgTOHa!ha|e76K;d7dI( zu}r$@a}POx(=q_^d5KPfD2_lCdWn_1of5;R8do^QBs`HJkJ6Caitu8QxPo>4K(;VA z)(zesjNNL+vk3%cTp+ItME>5gkdjn4&BPsaggvReiwZi4s&k=oCIps*huge3bx2C7 zY!50x{HU^Bv(TG?Q%*40Z=uc3C_!0fks|YB^fS3CwYmOY1g6i^ zzen1}SXS=T86@(uk*Uy_H){2oGWADYdmJ3^{g_9PskQ$FH_Q6})y$uR<)&K3lQ6OR$g$XM=!nUA$x)q#V*Q%*~- za6D|Ol%Q(mI&xACZlhaLk3MlCLs!Z) z#A#VknY@hIyNeF31?1*Za@OqtY^begr{!{@J_*YDjJW$`&Qi{7K^t_r9j6Z-QG!2X z44fzD7^!m+hRAGY7{`Zd8cC~jHT2MMiK`$}@hiiqk#)C;WG$GB1#+ynHShEy;!Y(Z zphbD9EmNsVuBbDp1qfMC0GbV6W(q%zN!pVU5bV4DyV^-N^&Y53g7`l zCt_Q;Jq4uU82VO-F z4Y?7IX)jqbAUuQo6=x){;ptcTvNV<@=WyjEf5PoeRuq0@q=`$UXiEnbRW=b;_;H`) zbeAV!y92+0=&4B+3EF7k+c^H&6ctzTC^Ep_v3i?6CZ~>4o7ruwX(KO{!mq@6Jpgau z6B~?{|C{A7EewGV+j&J`;y$odEzLdbB15k|eQ4~Ly`YA{fsMn^X4y`X>H3|k$eTbx z$CV(!-N&8exqeB*C&ACfaf5(yEQrLSG$+p?~sJ+2cBcqf}|TG z6Hp{r6^vdIHnROTrwP2>Y!bGZZ~)>RvD{aaOr8W*DzW6)*k7b(^M#4uI3VSUovAf=?l)uO zI#8MBfm=(h&!&H^9xE>6T}6y;zk(TWsKjHA(qC@{pC$_6kPt|#K_2c>-!{^-$3tUg z>V1qrYFx0gAjqj@OyojWo4zqReVMLP^{A=R!GS?WBX59Hn|5xC5LpMAr-hBPc`WGW zo=BFGJf1Mg9i?o;F&X3R+rkTAIgem77AqU7E>9lbM|T#nxnzsUBQAm?SJrzeraQtl z;RrBN-I~uoZ<@){L^=dA8>rTPWM(hLA#(;}a2hv%D3KGrWL?aIQ)w`Yl1hCQ`vsRJ z$?Rs(o^8b2&)mOS($lz5R6xv{>~WZ!Jrv`Xr_K2-<5FeDZ00_aUEghP8^}V3txd zT4Lr^(m^)i=~Z&zE>Lt~V)G)syt@a@Ax!0YB2&T7M#odSj}N%4j6#w$97{|G5(Q`d zyBD)~iJoXykvbdWMTe#~BzY1i(#>2$n}Kgbuq+N^_eGy&l97HI>GtteuaIsoa=lo| z=HU*|*bNQO0wnU!vd9ilRRSq_LgCB9t94`~F)*d{^55^Y_SWRL@oum<%=aDZe8Ufz+?bq-$;j+;9v6zc#WAb#^rk$84P8yzhA_nM z;Z5d*WQQTP^Ez(rm633nIVT$W5lVP2(GchLo)@R)DHBmEECV2w9&9`TH#3(Q?-y+; zs-D~1OXjvy*0a^dKew=?q;W0Fw~1Z5p);?-e-X0?8u{e}5{}HMXRtbHoH%t3roN>P zdPApfLWfzyl&9`7*lb{@-nt5g7&>#b4JvEuu`zG%@|El}REaDQX7q)aYZOPU@4tID zS!W&`rHBU77RqxLx)K<|@1vB=36_Bq;QNxGvqXq?aCZ#b>Bdb^wz&9{?=gg<2svBk zZ@X+pcx?&;nu3~^Ad5*$dLA$jvVwbB2($TT=~CWYORC8s3IQ`-^uqqnvx{0 zPPu7qEnzTbbJK+~xf7AV?7|gyW&M0$=OJYG3mI^$r?A$88gi9~+*I+L5tGQ<- z)ktq&H;1IJS_9J((UnRQv@@Ly1%o@k@fTK#q&a$M-e?6XMi7uoRNff2$%>`+2UM6Z z=u5&|7SknQ+&`-~%&xu>(Q-7`;ir=ohE$wjhapwG)td5^;71OjHBlyE&cqoav)H74Mofbvkaj0$i&C+}|DpBRW#SgFIGx^a&8emFmY*;SEn2yctK2 z@~}_YsC6+lT`8Q@i0s(&9>T>SN?i_tOJQyX+!W}jktI$1K&Gk7-b(#z4X9zo&1vB^ z)zs)<@FUe&f&>>c!cC+S_eL_syrq6lYY1rUkk&@!s&_PyQ*@94i48i;Ye--$5;&|7 zVmDCIenOzFU6a&dN%Uypftr-wBmyP%QUzjj(jilbK8ScopsBo#u`IfI@c~mM9Y&=h zIkdDK`hJ2~psv2cBC=EAXC#<~Jex=+%8vABB(Ly`K=5KPP*PF0ijn%vsJIBH+N-cG zFHOyRCd0z3o+(oqL%&q;<2g8-_fekAtc4Ns2-$HR0IkG(jdsmhm`WaZHS}6Qyq??G zCz{|WtqC6G3(A>+NEDue$X{pgedhBWiappGpZVtX{g115$<+vST5oG-YYx@Wxk4hP zeT4j>`pfZ#R_>T2VFbpwYlJtT(O|UPJ?C;W;$F@1Be3>t70?#K{@7NQtWlSaikrF| zs|qU2#&YKekt#t2EXRFWO10iJGj&IGO%TsHNE6&9@#)yRR9R3}26}9TqnziNcAeSu z?-z-XWK)@%`WcJ~!n|X=C)EdRA~K)iksP(ja_!5hdVE3R6G062OHJQYm@V=%Wpf4* z1op-a5Y9dXGN#u^cNNfPj{W#CIOw6&j)52%1a~y3EeC5t7CdCly%n%z?rnyTiLG@Q zx;U~l+AdY5wGtHSqTiz;fUQrp5*~Evyy4L}MGjCxo=`;|$owYcOhlYVZfCHAWgKcR z)7_Cx{sWfrmef2*GG`$(da@f4*2kpx2SES01k}r;DLVZ+Ls4=GR=8yxc5&TLAgnlt zV4%r_`D_riRz#tJBEkSwv`jRLLr%=9Soc%p8^RT;f$W8Zrzs+ewbMzsdz9BcavFH# zf|Cv%`$tY{h+j$jG1KGQlp93TvCFqPfRCj%;kB}$81DR94cz5mn`1@h93t{Ymx19V z+tACfjb562%B}o#hocaz?vkoM(sU-K1GN|_%2o%W<(H}p1HdIRF z>ddbBcMrVCxqNNjy1u*P)Uq^ZhA5fRCIvRRl;i3snNKSqH<@|YuoCfzC7o4`Zp?_) ziw3#*93&{Tnz(^x|8Xh)JyqkCW7$f;p#Jjyrnqq?uCV?YNDQ(rpnz4|#}N>`FqA(= z#UQwt=;OO>TuqX6%wx)v9wDst@~%sFgAD;PsoYn9{8k9GTnQGn#*^_`K!EgxLm)9x zif|9A{D1vrYqHKN^bReHCzA~!D#kR=c9cwKWyIjkGA>T-31|1q=f#_D)RYIjuGZ?I zW#>Oj8fnYchS4gMt;2lvXfG`RNCDVtJy)|WQq zHYwi9&LgMQWcETi(mV}qr1=-@^IJ}t3$G=`G;3f~M*%uLc*17!u=3irRhhuvdwm&k z(n06aCbXOMt_n4I6g4y0Y7V@o+%ox(7RHEKs?spVxPbX&%*#86m@x#TJYby|@%9IM zo}FT&F>!c!EtbPjUOZ?)sOVIVWP?bhGlvF69Szq`Qx(Lpv&ZP-3hf?drImU_bQPzO z%T?Jt8=31Cu3@G!>TPMzv0j3Eu%60dF4mQK7N8|+?xR4fW?@jsd&5{#SClJkHB{X@ zyYXGqjBza=DdCLip!vhM(3y3n9w_(rZOB%w!Yaa`brf5Nh75tB=Pco3*pYvXIey|U zV#-r_P~WOp>BJRlH}jyrNP4W$(Q3fMz0gmNkH(SG2+ZDet+9z{%lDRHxTE|^VptxK~MPwwz?Ca8%xtn%@$t;4N zW(qQVLe!RJO4#`5;~bhD=d-e*_1Qy+i1j>kO-E zT;FnHz~xlQeRD*VTaFPpaMiaO^*T9-?z96o>6TXsyMB<6eS{OLsg~+VWW3per5uv~*$YS4=v7j*(B6F5z zgZ@i5j8P*r#pB%}Kt{J!{t@uf%zDsNugIq28CnPR%;NO&M=3Y3G>RifO6QEfS0^_0oyED_ zEUn2rXm@j2S@7*Oa|-J<&a1Gd&!RSNB}l2y0&@_C<6;!;r#BC4p@C{* zH$B^xIMZ@h@6k~`Uo7@Qd__1mb=9wJJ-%W2bg&?~qC6%*l>O>ah{mi^W@Z4_5M|pb zXG&q@n_)2$CVaNStx3J=v@2jo`1t1p*^<-;iJsUqFPH?DG35|+x81s-cN;lU>; z8zQG5cD7z8m4+49`?|~~WsoC&Mv6FY3A-ZHjlSFssVBGqH@`yh?K~qcdHruB?XHJhPslj<1fa&1?`Sk=&A+-ws`n{3V8P6V+IO zCRU|J&0)}vW#!!#Kv}{r9aUKgoG%LOni038YAut+#*FdysEFpL!n|KM3#OolkeD^J zK1~J@W5VR1g31!Sp^FU`kR%2f$uHV!WAW{EWgbJ0=XzUc7wfBowTqK#-95D@7ORhD zHbiXgE;C)WwD{Ax8B*T!rub86AM1vOg}1AOWs|^}E8UZk(~JRgkH3{V!UIXE5qy1` zPwSl7bBneC*5jbT7d5pFc0u0yLQ`S}~*}Cn3x$ zt?7ov!Noy-FcD;eH@o#xzsoxDW@Y#Zu}&nmqRoiNH>6pLQ#DOhYc=$DilOqMla zu|#`7z%7=N)$Tk4S9(ub6xbh6;mH&Ff&@Vx;0wpKophUsY;Lqs*HC@E?LdXY|kvq2OU+*Ow4Tw`FBObeJ`^SAkEDA0YD07XE$ zzcjHIhMCz>e&6E}kGbDlr}sl(fp}oe9^`rZe*n*XpHeUW>MEo5RnL4?QqowQu@>$> z5d}6pHCtC0tUxn<|7#F#dwXiYEHv5eEo>exG+5n34`}JXZ)sb8{t`2&JIC023bK88 z&-v_S)Wg=xRx=*9Y>Fxn;p}3IkuC#=oC(k~3Jf^rM;a{JcrZ{jeYPWuw%XkoCU7Lx zix7ualZL29uS5Z)IgS9r2pKR6|AYF%@iY1EsjaaIM-wxFi~YT$BD-Q61i2Atk&Lm8 zjSVO0nxAwh3gKCVG;8p@X;nJ~*w)r@POi!j{gwUrhh{a0t9GE2Ss4(4W;A%l%!JDrP{*x;Z zW3ZVhRLvG9qRjNZn+V=Ui4E6jO@X~@`Oin%Zx4Tz{IXZklm`Q5;g`>YVe>tRF$xQn&p`SIo2TzA9cngYJVe@#dnj1~kr4aT;zg z_=bon`AslOeTI>2=P+j}<&Vpi4TE)B4Wo|rB~WJA)UV&swU|9gb(;-a3AoLvvWZ%+ zS_Q(}CQKvYU_!wT#h)0h0MMRv9s=rac1(LdHGZR;#p=!=8ht(QKzJCKKQv)9J))>8er{YmC}f zD+G+>Pdw7?91L4^R^hltx+$3@DDxjESGcxHE$qbcPjAIgC!AwZs%mm#<-3k-SeYra zExTHlr;&pxS@EE`Pn#|-t7f4Zj>itUV-`1rH$7|qrF^M*3D~w>yvS_)$SSZ!HL~0T zu;?Iyvug>RdYY-$rLgcM4QYj;fE`JYiQzmYq^w7929DaTcKKvF1WPE`;Ie0&HCguz zo{Ik~#W6CcsgIVf+6O0D#@1m_rM7CPcJ|K1N(3e@qb2g^Kb@dWb!~%)@v78JBoSD+ z3#{0Ju)K7|zj-D5jfE#N&p$p;r*xJhN{bauP}rPEsSl6ETPaMbNS9W%m%Tk-@&s5CY*4mE`M*v{9cX4!aFA)g~v5O9d5)j=a= zDTM_~#b{+qML2Esg=RjKw~Jg%L|6=3!+?)>hJf;#K1|IkK25<=s3}|KR_wHK0GV6J z-p!qY(r(0iPj+QkSUItPSend|c{h4#QL@&Vu`Sx=>YGuCa&pxvJ+ByeyLl*bjNIWZ z+D9{8HMg=xeBwTQIM5iwFNXsBjVGvjmXyXRnid=GX!%N&=AvJ?H!ji=Gcl1L=4~rR z^ET0}WZ#QA#^Ti%4m11(oIS%p_7!(me1trqNl_ zNWkcblV$P|V%hEHcM=r(16;(N`u>EDXp$1>qNYRVj_hw}vu@eZDnfqO0%{k*S`rbH zM7D}|Ooej?-=JoNl?+0?OtgCfawmmoc3}$n%Q28EJ)e`f@KiBiW;~%fLe#qYjdF4k zr!c36-tWhxM{J6$a-Bh3M$?nWKtl-CGgN{IR5v1;c>eyMn>taegv?>I!5 zX{=ld+Ny?8!5QGnu{F81Cv1%}qq1?29+7+ZHi^9pi2- zE00^^Ivi89QmET=xbr&9*IRL4w0SZEvziey`1%Hu*rDEk~~7xFji#ACR|>iTz7 zFM&O=73DDm2I!x+=fS|wNlyl*QvjV)c8aqD0<$_1^3NfU8HwunDIK<3%^%8CeG+a6 zFmW4`Up-?S4vuuZr)IXPEQK%=p1&qek84A&*O}rtu;0Ijl9h{DS-X(2LR2iJQ@c|l zD8y2Q0}JzQr;y2C2E!98H(*4(wl&I@qK2Ilwr5Xe0;WCt6&%soX<(^logQlxNP8!& z=C@{i&6Crlx^7R!tX)2gMCmY4I=X=Hl3X z;r-ZM6z+K{?znkMf|a;2w2DdM^I=6jRsG2dT&hc&>5fQ;0+wFJ;vs^5nbv{o<(n_b z$DB%?0Oy;SnBIwUx(qlJC`VyinqesjT)sQpl`ybaBiEN}eZ=gXEVy--`1MudI)cFS z;v)gxa$P?qR2rj({*AY6B}|ud8kqa9850FGq7<7yIclhh6}~>~wd$pb1asVeV&6R; zTbr-LjS%J7+P(13b7f9GD+(9-EqrNcUC(6m9`rb*OT}CePMKl)@uLkpC5#oBXl6kc zry0_v;xtmNOvBGlpM69$e584+d`7Mlm8Br~3dV>hqsMLrRUkeEx;WEPSv%EbBKRcV z-Ir8xkzEuMDJfdU8mRo0Dlcq(-^+hb=ld85Jh9QJd%i6tKTU+Gg+~Z#69SYgNBEM! z;%|z_k*e9%9ByP5u_nmCz-a{|kT=1DlI-sWBpyk8?^Rn%ek!zXjcAP@76!$b*OoX- zHl_X6f*^+~#H~LmWOL`29<2Vf4Cho56Jh}CG2=M7;pG{lf+HGu1I%Ej^Ff=u<)pL) zkim}X2jX)2JDNDIxcq#VSluTa1%c%9$rHytKPO*o-V@(gXvoF^Ki4!?0qC<%8;%7na? z=U0W5iaIBr{7fq^Eux}j(`h-wB}EaqNMlAtV2NjFFu{F}y61Z4uc^<8&;l3-t4nY* z+UT@5Eh~Shv#R;MrI-ia4YuZQM_9{9EIq2YHR%Z0r@ z)NuJ*RY#;DT>k#cIUu8x%9g)s+O$~uwPK1z9b^Vg3I3IPOYyi6peTy!L`O`7C^`oA zO`A=d+eBbEI2E+<@=fC+nr6)GDCF4LmC;Rr$~eA3^b&I4aT|zY9uyZk+yt~+rg+BU z&0zC8Nm025fwp~m>9tEv<^I86GKO3JW#vsWR|IAXUJXeg#an?EqFe;0*0#)$`1J9Q z`F1hEbQB1`KQNu6vRTh77a%*iPITmGo*}lC(y&9*Q%I+|xNfNV0=t#ErL!AW7^ue< zNQ9+#CK`w&V3EQQ+_XXhZ4C?k$(V5lhA$x+v=d!vtub(8zwl~_*tLMZ1Y{mMHx@iM zSvqxVyHtNkxm+j-m?q=BV;&~4?xJ3t2l__=vX<+Q3yFgZD=vvZBdv=io7_7jZjs2{ zkY0utiDPG03OtE3o4vilgQM}KlgHCu!5@X!+0B?0Ycb>!*VW_sC)P;pEySrpSww!m z?}6+NW;JypL#gC?XC-7m9ru z4f!^4Dk5JSH783$({P=u9*%5<;Z-^wM`x;zFfjs#`eU7(ie6Z><2Vh9+@!Y*66h!K zj6f<>3bU^^oSKw6MHxE1`wjKDhtS38Tk@)907xW5bc%)^A@{K~kdJ|M?HKr-&Ylf@ zJ><+nBvs7tdU*>r9RifGA8eP^A$j(g5K*;m1?`}-&AAxvjXW!_P%=-r`^VH1jQKqT z3)ubd(=V0AFQN;yS94;7{uVsw8Nz8Cl`%$ef)A)+n(Q&Pn$_+*8w_L1FTlWMqKe$9Tj~I%fnDejl zq&4Na5YtCw*~5ED)<2Q%KL_VBN5Zi)lA8n=WL}K^B=#}){F%W7^Dpf4e9Wz(c9|HS zgQ|}!M)c^qDY=2C97ga77e5uA#s91#(`silO7NlzkCV!!fJs$Bl{dfIe2Xi5{ZrAex<5}A)yJ}Q`C2~>!=tc987 zJba3SWdlV@E;tf+@Jv>oDwOY?6t@ZIev5!=8QANuY=0G<+fNRS$!7)Y2WMuwNmZSs zRE)7U#bvshna>`{1ixn)D{Z}p% zpEY0)S~DhP%unZNG93Sp*tKfu;Ur`Df*Lg*tbSz;DIwLgTOlpL(dN7B%-(gwEm`z1 zHEv)tXPc0$txWn}nx=S>u=AqVz=}%MjS=Y?VdfbopTgxc8%2Z_^d{BQ6}{yxDF%$? zDljF?$rCMKfv&6S%Ja%cqP5=IRAU7y@{bXq)DXf+oSl2q73E9eHegJ=;c8#-^Dy+r zW6DyZLFhUMPJ_kGceN!iC*<@z{#i88*FZGaLO3MWE%YX{K8 zR8u(x5VpOd9Mg!F9){$U(&#m}HkDA1-egqPEAESpjmKE_1tXaB_Oo_7VCrinAS!kt`S-i~ACWc^@X` zQWyBzDqp%{flC_NX?v>{y1-3IaoN#vM|@=AKtREwiO5%UF=$h7zs}w`$a7fmklt38 zWESVYQex)!@|Jonl2sHcJS1?9hTw3C(IW>Ec%T|4bt0e`TXqE*T$(rSdq|V@m0!en zjV%=r`YO*lp@GLBHVZdqdK$j0pTNk$13v9^M`Y+AX?nIMCmTZnEV(xfz7>b`LT}TN7)#-`KZsO@euii4P$6SjX(GG zTAbW&ikxUo+vfS6CNwmMm+19y-*ItQLV{!(=IP-bPq!F)JMZ+|)bkZ=%?ia9+Bz;75QWA|*6Wa>o{GDZ3+bq? zb+^?|GO4)PJt5j+Y7EeT>A*5gD>>G65k4I-+9)z~-b_G=P%vfHPRBt*VdjnuEsB*< z)h&a@1BQ+Gu5_ESS)&H zrtc%uVu4Z!wz2LRh)E?UM!4F1Zj1&v+(yT!+2p0^!nus*CR(F5 z0{W%KYs+b<)tF_CjIt(;7ny1*AiX;wZM>}QtmZKyq=u)gk-#|6De7b}1WkhowIoPH z2#LY>l^3SWrH@iJ^4|-`=0lE}2juQ0*a~ET)$~D7EeAUzPm2lLj zp+*C|dds#jbTHWnR@YReO;sb|v9E5zo6K4T!~?Nl_|Eh5_6mgH8fOA3FYSr$)oOAxZMql$!4#Z`gL zm^@_)PLMM9SCn0iBdZZMB#S8o<)j}Z!Cex&tAv9tJ(>5_?BR45CaS7N4PGfh% zro-M??n{i8k{F$T+fKV#Q%o*NN3+1O*=#@oEWz zIRC^e{0&hMPfd|yBHSm~-HDp*8Z};f3jx+W9R{*8?mnuWlIsj1$VIcu%8#ptYNbQe zL4vA+8x#>dm}xeWh>c-VXf?pwoMi{9AhpBu^ycx3b05%bf^i%TFp3l+LL6>=ygQw{ zEx#mwk9}{%M;8wioo&^)K9}TE^V5w!CNx)QSx9L|t2?JFksW>CS8hV;b8k+IAvb2! zh7Xm&vU!@)UxXO2#hd`!3yg}f=hR+0K=~*s3X?x$XIZtD9v2qe+!>&x6s5gYk=3D8 zWU*N3uBfATiPms%>*tG33rcwvPhicy$*;_qrmUnv#hP~G%vVFU^8_YtJ zJ}eaa;SwnEeGvIRuu}P)!GNF!qiE4d+cK>a^BhEj(2hdi2^1w**oGeyIp)EVXT&6e z@{}n9;w#gw2&HiPqKHKL@8&23KW-vD0##u(J^e2$gES0=t_s$ z>!Wcsqg?}|%7FE1u?*EgswN&~?p-K>*jCK0UI5u(VLBa-qC^U=1O_|{V!~+xjgfJ6 zGcpKOt{;TudiG07J{lAwHYTY4TXE1uu$uz?mK35*d#;i6l7H&((6+nrp{l^?A=u1a z#Hq2Sfid#PauJI-*s?QTegJp%iUz`J!N`M5t|a- z$URkNoTwOYBTC}YLAj8fDa|tLqGFYncTTAh`X2!*rn@VFs2r%Q`Y2W-NGZ|t8Y^H= zhZ(&rq`>IwUO!Abnh}|!WS@5>2ThuV1axL@X_AEhlvD-bV+Noi8MM`J&r%4fcw9j; zJ2D2;LQXAP>!hI^x%Lv^Y%+&Bwx*`)PXzu;;!ccO~^ zVDdFzP|{@a^1SbB@Pp`S4eKty5D&R-W!7{|w@f)qYm*gwIR`Pr7+0p0xWc%&<)k)6 zH~Y!DZn4O0K8mFaV3VmvqyW$8#y@XmitPi7F2r9a-F#Ku00a<0eE@?5u=OAx5v)Q0 zB`0{|pYUFb*cjSnzwtIPFrDzw38~~zl^vzm*&|B9xAQT2c~Ho&2zwkTUT3cEyB7oEd6t8>^!#yO@bUNJdlx-W;hCp*|({bQd9 z1^^~R*bp)b4t0kVMF8jMyv=|Wne5NnAny}k5Yk=0Q)Mk>e5~!Nir3%lwqKP7G;E^L zD?^_SEg5%4WZeugaHGzXLvH~-^dn$qDsc?!`PT3*wUaDXEp)b&J2-Wy*Q8zTc^N$B zPw>b}m~Gx=Ci-lNfeiKQi`D@48hFUtCyyR<7zj}l;tc(`PeMc$m|$)f3PLfCqB1f? zbXPr3do=Rm0+FkPhh_rg&pA0hH=o(<3lGF4%X*J8ih&2;jXvHHI4 ze}~`mVZilA3-Z}ovAl3aLcCpH%0z&hsr7Ub4~UcjkvnZoGN#>z_8N zB>r1N%uZ8=g_3LamWMzC>?kK*GKO5Vk8qk&$Mr5{`~&VgFDs{Ro|89|5DiS+lNrRz zvY|>Ix)(l1C$L5;ire_esYa*K3xvTcr1Xx48B|`yQSV$&@1sAilulq3#v)I%abEg`V?EJj8 zAmivJUb7ogYrku>wT?ZB?)Xz1=)+sdH_u8LX;_f`1R!n1@f#3ab_euR&bHq^F!9J- z&UH(b>kfiQ4P5hWVe_>z*^gfsEL4&ei9;P0Q5fzuWmB7(!$|H=5bdj%MI#bRC%Yy= zI&{FJyyxaYA2J{ccc%WH2wXVu63DY6up_L0X>AEbHgi;#edLTYQ3s0iCOs@~Gb?u! zUKww(g1>to&g=P+T#bnZl^7M&X;apYzbegHPJsy-Emt8Nh?X)7sTV1u_nSiH2-@1| z?q?%UP9n305vb{9tg)m)so$n5Ed>z^2u)?)Yi6k>JL7n$$Y_*5w>L#ooLZ>pYskHe znD%;Rp9wm?wT4Fax7k_P&#BT_ZIa@8_W+fBdL%vT-obav_u*OV|5nsS9)dt+F-(2L z{EER_PpesTtX2>x%O%j9rz1uVLTybc?%NM4B4ZgjZiD|_ehf0qsl>K z+xVy6WWBpBK1ysn9sg>1=f(~nqqtI=)$H=T=_YtCH@)Z?j!c0o(-}YTaL+ZH4 zcjBJPc$2y_Fe%V7;H!<(9U-+FCss|fZLp9RPj{NeqbkTcOG9lD7po^VsS*q||) zBJ4{}I%_Bk4PeU9-{OQV+6#t@)zPWjQ9MVz=n84K&&%7at<20(*R$D*>SkLsw_hJ? z8#f)RhSMYyuT4FMGf~h(8kizg3Ts1<1v8+7qR!3ca(fu6v-(3zhg}9^^=#)u&RLCq zmJ)=4q>Cle!yw<3#~a{NQzvn_b4H!5P?!+pK{yko3BvR(%Hd?2Yaf;>CJ z;`8h5W8#-B+)_4D%*1n>9Jb;ub4DJ;G(l6vkP}R}sSJfL;l-ulO)qmEvG+UIEuiI# zFszzyIJ|o5$RPyn`zME*P)~C4nfh|Gtw4PR6B*cE((VIEZJ{-v7B4L(dr4h{Y4v?z z@Qx#AyC0i72HKiNxyK=@jl<(gidB10Svoi+ZcS)?`2)cTEmlI3CI;DMK$tv+ip23z zBEcHgO%?VAmWO>?=*d>+_{`MUffkNK(h?=Zs}q+rHz?iA($vFA-MEF_qOmn)W})gS zVu|g2vIA(JlYd5S2N<{LGKdbQ+{xKCThb+vwy8UvUWy+Z0^orYd6Mg%Y-6gkEKENV z>qpScQm{!}i~&?&Vx>{X>fJYMQqz?fi?pyY48uZ#q;v?@D81B8v@;jWND@7#bddPw z+iM$B$VS(QeGGZfXSS_P3K)^pr^+bDUOU!p<=GkOGRPQnTF?1uB#VIu;rUMMm)Z@Tca@eu5XD`M(iHx#&PB|JTkCyS7{$CAVq=J=0#kV zXu`X^xOP^fS+8}}_vuwpA%cBJTYB^A>^+|z4aW=Pa*-x-63PTL65`U_c%H3w&M;^t z4kr^DZ5dFL1D5E8?ub8Nw*cV4xcJF7?1$XV``P!>JbX#u!Z8CNG+-!m zk3}M`m%A@+^3JL%K8)w?9lFD^YYm5{h=t2d3~w00cEexTH4;9+cwlVxoBq!7N^ei- zh21BtzfWjlMM&RWQ^TIkWCk$}RPBZ}mUIW==V%4a3^2S}E&uhOPK*_f<98xKa|QbT z6xDHXJmshQni74^&p?$zm%&+yDbH}PEtF}2RSzm@1QGpt?E(&j4k4F#U*5>t}+(ul4@6^ z!FCTfCsN8sit@dyCY}af4=KS}dS|f2+KPXKf1W1Zwfd2$-LH`Q8E<}f;%h%3%u?`j=Ec_;+=;?Yma#W3Xb^#VQYt^eI+u{lGV>w? zt`10gWWb&JJ)Qbmich$7K2T=&R{OjH^UJ8Ldr#o@!PqjD>0y7zKd0OMAn?|g0JfbN zDYUE0LeiwZof11#u%9zWHf4Okhwz#c6D9l{)#fRj=u_ssqLB4%&SpFbW2D{4I5Llw8(2h4*wRT~9Q1a) z;p8!Vg`K|Q*6bFCjYN@AM?!mkdA0BxAIZ>on(8J9@H+6IzQRN-7Be8AF?)INZN2n+hjN@4A}zaDb!^%5#n|X(JKr9h~uqo8J>%m6Y%R5e}&i=_k0>&vjIus^`hi|BF^Iu?)sUy`&oekhC>G zT`w{dTFn}3cvutcl+5+S9?i;;JsP3}OWgIA~*sviDDsjXF=yyGSDr`XtjA9i8%8){U}whk&FYHRVI zi0XMr&Z8N?Ebc;hH)%G658cQw77t5{lK6 z#MIQQJ9%Nl+CiPz#K1YieNe-=#Y18?wniNtJx$iY|pue-&Ig2Gt&!wPun2Mm|rDaJP zA+$-Eq+}-C62$8gIEwgeWumT$@u{oehS9F69nF<=Im9_CqVzZ|eQo>#tpCsL`M;M} z{D05&f3n~2;(wVj!mJYSt{z|ObNN5T%r!bc*@yq{ymvPgIZ|>q^P}8v0(46r*s#JD zUcDH}gw~#}Gcr5#%VK_Yo|&1-x>GuIMI+!X(C)v$t%s~Vy}lqw@$@E98Cd%2xL9e& zXe+XuKh}UI%0-d&X|8{Om)|IgJVz}kf#F*+RHiS{4;M(*Uej$xR~L-eGKB3V8nIcd z8SPYXSBdtNcxXMonRKGUU;(%wQesUbVYuYAJ9p0SSv@O~GQ~3doF}{dxF959cpN3d z{Bn(utXYE zz^hM?=8hIC(Nc1QvdI^ke&jq{Egawb?1`s`_H@4gxf5I9BKu$W7mD+Sv)q4g;{RX7 zoARGu@tUNMsJ^sGb?@w0;!uB?ob}Eh4AY{=Ck@YB>0^wA4y{VsewW4J46_xF{;a<3 z-vA&5ef@zFAYcof>!qYE@YZ3r9jM%7c1E1&S6 zDCK9h;m=78B0#uKJXHGt<(Twkc>HdA8tc*H|kD-)76?ZW$vm`3kDawbp5QKyq91>QNo&^jd&C|(XKa~ z*YT0i%HYBv3ht3VI)KVN{Ktxe^I9H+qNUvo6slck;Zk5`HDz$ecc|pE)S1U6Iw}I5 zC0{D*Z^n(Bs?gsdJQ$`Yj`o!a%~Yopo~uV=`w@`<>_phr3#O@hwc;9xiJ`xx+hl2V z;%Z{D)toZ5ja`aW9GCG8Y)K`3O=XJ+WssG8d7K=J=b=vj6TV;W>yo>spQM3-cLGcx zbi@w$FRu>~R&9Itxwifj6j2i#d^7;-pZ1e=5R5q>09W4>H?MfY4fHruR_7H>o9^ci zc5SY{ZanJuZs9@r+mv281oxYDGDG^xlE0&kmj@74A|al0BIMion0^`pI-V+3L(a_h z6>CvnRI>6h)xr80bg^gjSVUGUdlLPM5e1p<1bTR6>|CC+^XxDuhtOlEJtWQpDw`tSOL1iiCEP& zPKP`C`eiUiJ94n_Y0V>$P9g~jUMJtusy`N~%-`YDyow&%9xJ3EIC`--C8E7aDY+vu zW98Cp(P|gsvW(8FpbNj_lr#_3$P0Xcye|nFHG^lPbr4LB(k-#zJz-^9msl)@>q^JR zm(XyY(|tkB*h16|ZY~Kb1j!@2eLfz1X|`LW3o}?a)_$zF?upZ|8aD(yMJlQs6@0vG zNHDnRGU;q1`%F`B%AWIOsL|~cl8Fre~uvWNK0Lv(h! zHZP3VL2@wS#Naxx$YP^7Z8D3j^+2MtYEH?LOu@aUn z+SAjFiM;7dQ=>?bmp#AADtD5^2mRU6BizmaxjfSdejOiszAt8hfc6L$wSL#Y3FX|hLfxH-rH2z z{Q5mnkNnl>z1?H0XK%2@fTBH)CgOs4@83C7C)4O6sga8vx&(u`MwCpP?PDF8hY0Ghl zWocB=z2ayqL=h9SQ_&Sq5lAv~v!3KK(zQTK`Eoc>8v*8lk+Nx~GpdOP5%)oh)U2b_ zQHJ+V8&q|x8wFNtNo!oh3mqOx$GL)9Q-=-fT08nV!eTG=@>(6ywj41_upv$Ay9qXFrqFE`4x0_| zWaQ#S)a@@xfw37&!lX028o-P2Oq8;Xu8Q;GZg8O1 zD&srzBS@1PVsWd)!V2XYxH^&3_8q22w|5=eYJV^G$=j41i{@aIL`oTG+u>sr7Y|oC z|Gs<5ZI%;{gEf}M$M8*JL+iS(vlMHO((1vKj?{TG52B8Zk=_XVhG(%Jvh^-8vez@= z1y0k4Z5GFYX4bI&x89NCaJ-My(D$NNtmud1-=3W(BzoD*{!`9P^2P0yRjjWquVvQl za{Fy|X0jq@$f7_WDbtmqCb>GbTiIz3niDzKb;VMXB87w0QQAU}3XQlje___b2}$*q zQcQy}YU=E?AH`SM+=Xl$cJk(B16b8L`S zso>NRg_pI)36&$KkzW%6CMf6Ouzh73=d-W@f6ONc8*rS~js$|{OICW#`JnNmyrIO0 z-zar8BJN6L%W1T1x_SI8b$JT`X%>2LD4rU3MY9EItAsb07^<0BCV~wIE6}bpF~NE3 z7$AL+jZ0=kPS8HAJkI@;L?j*@l_z>-a`NfsHi?Lnktxysl~jZcsfDhm2L;kZ*uzFi zpm_QZd1#Kg+ZNr62ntcvBCk&kS9WFtTgCi7y9cF>e%&X2Czm^I7M zKV>zV=lM^wq1T;;lp<&$>&MDi?7lR|NMdj)bnv)olB<=wke#HnqR?b4>~rh$dQRG0 zYbm6>rUKz{g<+JOc*)Qu2~t6NUdxR(1Se}%Ov_^!2<#(;X|GS&Sd7=7$)1)La!h)M z^xG@t=Q3%-;;cJ4W4bjWOh#jK%4ZjV=Otdubk(^hE;)RR3z#)6Yh(zova6U$+!;QTdjz&}}$jzNPIh06qt?TcL!BV)*py(Pw2VnZ() zXA7E+np~qZ$ng>;#nEg^mg!ho#8$jyiR=YeOfF)M){kDbhP7~J$)b4FMsbcXs52dL z_EnRKsx8&AU1p=n$dragF9X2**w$jEIg%EwUi#BqH!l=2ApL9k+=qxDpGqRaH+!(B z7?3i}caUn6c?us-A6Zj&tTUIV+;k^=@TSw z+eTVOV{Wk$A}O40s|OsRX+AtAsnI;6O;mSOolNKG-R zmdh@xN=&6vbAFWqb!r&ODWUmI5(hXnqC-}+4)RXm8s*G1W{OwGSe}Oey3#~7BQ1Wgu-K4?`^zF&%W87!v^sv4! z1W5?qWWHN-p=OR;nz0nO)up>4QoSUyuWP^%%;@!{RD-JE8`W7{;9&V{WI;iIN(Icl zRj|yrUeJn>x^_E9t{)nXIEKc(W_U6f6@H_vyTwejnQ7p;dk9BRmSWt^6p>|)HwvG* zvOQBuPsO;7Ty7G~LUALofWaa$;B}{nTaq?0f$b-*VWw zs<-4-1ovmXZ!v4zj}medV-2Fe0>w5$z5Xh0@pp$ff}X-uDELM=%6`m!YWJXtade=f zQ7cTDi}6g2DwU{70g#pg=&Yx`jR}2_P}N%tHxbS`InQdOM+!rPBL`_;M5WU-kgMH| zB~DAqtM;(Sihhn0id7iWE=?zQWuzVJ#`Pg1k#i+-Ac^nOZ-kv!5T>r^1&?~^a?+i( z6{*jAtYl#+_wkhtzfKZr$i@nl{GofF)}|XN|G~1;dCl&v=Q+4?8xOaZf3({Fux-v| zLznRX4Xe9FFpfg-*5;tSCxL@&tHn--zf^Z*Kn;7IOUem}0BjleOij`gTB@nk6r z&NLgi{q7_?R1x5%Mxi*l-T{{*bo3Mk8>D=Sa0G1qzP3C4_O>=8G+r=`&AV2G`AOM7 z)11E|4;FU!4r9g<Ek}5%(y>eoA5Gr{!=o8gLqNg1fY}}BV%(wU_a7$;C z$mToeuAQRCgjs7O$(T&@uRJ-AFP;P}+0Q|U#J$6<;iCONnfRK%_vfp7)6VmsXWFiR z?6eZeOk{4^;(5xzDv50x9SM_BJ{{Y1_v-`9nYwD zF64f*3ROc5LRb`Yq)WqM_8Rs{k|T5Ax`Moj3KsR>lWh(}(?Y>$uxb?qjlk4mR|&0z zafNE`^qkX0ld`H3Co@yHKJ6NMa2yiZ;|Nu|NCq)HZ1K1Wp0OS_juQCJqHr&kXm1#@ zT%lv9{+wGFw&P=r?oqBIi0St!fm}PvyHnmzSF=!z)HkLv!I#e>_Vv_m9PptsE`;Ey z9v?va5zJ3t8#qTS)u#>r1bJs?gzSVmNAM|PBk513;07>9Mli2Zh5%Y`rIpAhC4|gl zG2vc0Z@=f zBRag4Cu^!W*IY#Dnzm4}xz`3c0%KD&KNLMvjD4>9N`4mrs&(!XLqy9kXlxksRzwKZ zLXRIn^lWk&I4LxisEeF@Im#;m1%>(eqjxH6UE^lXqolKRo*I8;-thb|{54+#*{2#P zePyM>y6+2N6|{^EyuvUa95c*fOjM+Ytf0e%>QW+oq-#%gIViXIw|R(LjA(E z(d5u1M4V*pB1D_gsMO{YoVpPXYprH#9MQ<+(JaEe(3Ay1kYR5oB{m~AHXSt{n@Z=3 zP`!(wwg+`Aqu^;6E{a}P3#7=|&1`9(*O(tjD{0)Yu+m%po1i-idps7sjft@J@h=eG z*KNp(##N4?@p@7rO9~_mqv};1$QvY3n$qZIdK^8tN*?B^Z6x}{qqTlWN;HeZu>k}L zH|p+$-4l}&+FqHQX9B6COw3KyvQua)))IEfXpx=0|!&$(Uibf|uTLkP?1_7+4*KU3xSyUUiYJ zX11+(Ax29kqJ*dFxqVpi02gkm3dJYZR=iv+?BIE;6Ds1cPV6PmTd%ZnUAT2Z%6T^@ zZCe`-?IV4<5uTNur4$cp!(x*4{!8d_Z7F)H1PRtOIe4aJ+qDJ*+j!cJ_p(v>YxsmJ zoblkdiUvaSogvO?*K1vmwmzNpqwr5Nj^apDPKV?uB={*qlzwYe?mJkSBe>S3@TlMu z6M;d4gAtx|3Z>ur|7Ke0vIXD8mFQaaVtAXIuAD5=0sj8SJZe6G6d z`%*;@cK?rQ4?4vg`@>c-ilQNDF+hUp^T_yyURKACVyL}DpA+YFkIacOL0K?kty1`) zFBV_Pem-v@;P-*Xszl#kca&;s{QrZ@6fuxc_l_GJ#Nx4dp9UU$N=*lPt0+n6WY)m| zvq4y%1VFd4UHYL+vKI<4i(|V&LLVo?htp=2B$QTZIqt|Jr$5nN%aX4Cdrx_ZUIH=Z zyklDr4zrI5ZHOuRlQjBA-Znp3^S*yK!T@=F=NNnDu$tAkx4>{KmzkZ5^E$1pIC`WsHucsO@Q_dMsD!o4 z3_d=Q+?~0SQ95|&^X_3_VSe z$E=A~3xg7A4YWc|5`(9UUhEff&$hR|Nw<(Rbx#$HlCu_;qOa+e^;Zk*tA|hqB{KZ0k0@!a5rZ^hxa=F11uUYIJm{ag*6cf)=UHPFR%+ z5fLQT4Vh7V1v2zDun}7@K#`|KHDzxLlTxipw%CNZyOtZ#)|YdL9$`C{+Ua`RzbH$4 zBZ$3K?WEG=DCf6IO!cQOK(>)PNNcdI3JvW57eHq zM~kGTZnN{d4o9KM@gHMj^X;rrjvZKD30QaqE=LeqJ(Um|zV&a@9hnW&fc*Y!W#r|Z zNgGF{Ttm3<*r*?~A{G_JGWd59j%y8tw;;;zbRuHlzeJgah7GBSI#?(?JQ{74=>=4h zM4heS*^KXpz4#h~$>L3f{N+2*b@Ds^lio=`i!ZxH0{{6w?I|4`3`zYyR9g^RZ3mDG zP%u+%w;Y zo~N?R+?G3;){W*<(B)5)NY^KyO7+y8eiAka`Ul*HQx(Tj#;NA2Q*+Wid6e#PO5RS2 zoItZU?Wz^ ze=f#3=lB6UcZY|mc=S}G`bx25#KEA&E`XTQfYa*AEV!qjVZG>XuqYM~cZ@R(>R4naW|#^$!rq zImHC2{D4LaNf@*6#R(C*sm|?OO!Qvfh@q)VuyZnSbIM+ohF+Q#r(h%;@}LmEdjQke z!yAf8>_{cK>EvVPweO*1#5HMGXi`cGAVIUFr7@44duYTkbyi9QL^Wf8*$tQ-l+fUK z_v9p!!=5%mZZ&djM8c)2JVuC z`+_1;t>N*~%!_#riQ>~__$zEE8fXHWuILxTzGwa@uep_!*5$LZJ z>ZeX?DaQ=kmwuY7tQ=yv;Z0ZCw?9`w1dX>Z5|GGC^~18+j(=xXt1EuZwof_j6m=@j}o7?GZ%IPfwNb z%JWA>JuVzu3=~hCt~*AH0b|EBXqIIaLOZ!-OO(QEg2IU%p;2$oVQ~yeJFVs1LSg_T zMcd3;1tzG>Yl(l7LOV^W%X-5+l6a%nsKvQF$~JE*0!wklWmf!4P!m3X1j$jYFGkt< z4yzTyN;g*|Vszaw21`Q#8$RO{i@PmGv zExJQ5XK8f!RUHQFA$mU!6_kioYF$8FTzK$}r;ei+lWBwvE5hjDxxiwPc(UGXEh!^M zSULkCLhuy`4ek+f5I=YtNh9gc>6KfjLK(o+d0R>n2cjlHrZzu?5dw4J?!)deIsVU! zo{hg7l6gC;PJIS$h=0PnObd{(ZuI_oQJp#1(vYcqIp$c47JdE{neir8qE7MzK=SEw zbTt5zpTrykF$fx5a>*0T^*TwDqwT9ntsdKM9=@8ltYv_Sd5h+UF^ zg0f+{jDexbmS6!j4(coYK)o*K_ca$KuOKS@5uxK`Y>ISWT<(4>0H1{}D}`&CRD-Bq>C}%B$2T#9 zPCgeJ9xzH1yUb^BF3U!qTCQ9)%vyJFiye0z7EFXqNRGY62p-7%_7+JhF1O z3G5agY~lU7LFz?HgQlf^iqirl)_aChjT;GGoJ;+`EOArpFZJ&EWn=6Q!QfZq#{2MD zrO?ajMZp(fFb`>50czOyY4w9E7VEG2UhJwN=4W-;oc%#%)>rKXT54={^;Oq8b2-b6 zmycbB5cc_;h5h*J@)FvX*pI^!VL}~o&JBM5 z45p}>t$;qHjbSX_r25FcON`!YS_`3xo#j!Y?3!Tfvxb3vNJ#7_)F;+H^`I%ba`p|S z5nP|85Gfd2H?T%EdO+~;%zM9n7dN075u(IHVpl81 zjf0mzvV$W8T?IJgHlv47mWSjqQNO{`iOfW$L-YQv+GaV=?`Uxqq(e505k^PJ&^TH5 z7Fk_6DJIWP;qghIkmLyxTnWTw!O~W>nhGsn@*C&zWLECu^V#y4pE}BBOt{1<%~V|- z-216>aT?|4P#;YfCmuago+qID$=>vb6JuK`*5(bbQqTws8e7NHW}~bR zS5M%fgp^H4&Xq|IsIP*;vKI2M@Td{4 zl>=%?3>yViv#;{6$zz_)X!?X+$43Pc1IUC<6ojWSA&WTenY?h(U9mJA95DC#VR}{V z%U@5AgUY|?=g6Aw1Ra64ONA>B5HTt<;7qs(WoUh}kD7y={hp}#CeBnx{=ng~feJTR29EFMq58Vq6R!lvy@$Ar5KVQ#@_3OYo1l+4N zcsrC?0^;HX5$1N-zb{A$yp2B0cg7CF)BdE0 z@B1Xr_tL2>B4GS8GS&O+&k4_m-_Bd##ZO-e2J;iyCGwQuj-vfG7Y>H|3{>N~9!Gjv z2}eIBp7FaY;Umv1h-!c))`5add)ie07Ww2R8(3p1LVKfY7oG3G_lnF69*5u%)LU`;jBV zAuYtK7*iSIH9Kj|F$;Z;Q$<8jhqi0nU2ke-i^uSmLtcN}<@ z+oMk!OvD17S8a;yRQ3Ab8F84nI0PK0Wz?DcM2&G^d3>a+mr$9i=NdAlWIn1Xl`v=P z=`BI($2#y{d2w>@AzBGeD3yBP1kAw+KvI@KTKuf!FhHwNp|Wmb3$EO&M&^#W!!+0_ zUSVKGdZ64^IiX~rWW3Xbg>=MdC+0+S)5u6Z@niV+#rJBjR%&XZFgz46CAo%!V^wpF zIbVDZIpkfgKPvxCTB+4>)G_*f?510!NTI4)D#&p4{hY}B*~?{`{uxaglq?ZmQmuRv z;bilZbbe-9yNRIXu<$%iEST#r50Z)9(sC7rkMAQxrEB~HBi8JkWVhWzyJ@W5ds67( z_TXfsQ?av6P|0lRZO@uIxHwqlawXOyNqH@T|JzvaNN3v8#W~D|gab0Dt0hDv$02Am zrrneWV0$8fk62o|(x^_$Cshy!xFWcBvaRyTJxcz)5<>D(psY_a)rQ1yMq+&LD)xlx zRBcu!0vJQhY&B|BTDnpEq2N89`iR0R4j;8&bf6!9EUUQPRQqqiT2uWa<&&wcgET^6 zCKnn10h-Ecdze(y3A;vJl#dy?$2mGgi z)Q#~+=gW5$qCOP^jDsl=T2GD$7px+-;JzNtw*G?f{H?tMNypK3_*<|{F$r5P8d!9I z*%P*$I%GWDYU+!rkFO({Mx-`*C4#tt_w+nEP}x|>XJ%x@fL0SAfKWq)e1zL~9)&@c z(Aa0;=WN2vfmb@!hmMQIa}CTZlyRVzE!dklo@}%EJr&}|&F7>S7;4UzgBSSPBSp_n z^Xy*YPn;ijN8|gVmaB@-_G%Z|?JvhI=o1C$#0CRcUJ$Tf0b)}Ya7apw{$fm=C^!c3 z@{)4eWY?g=*suq>xV9n1Zajg74XyU}*e)QpFOYBmyhXFWThie_5G&?U5|;VJ7nwV+ z*(l`xF+Ihd%TooRZWm$hSurs7rWV%|7vhr4x%K zC+EM9>z!ojOWS)dmT5!YN5HH1^W)X!uHT#)X`@jIv8a1vglmBxF#1{?Va$L>kLYC8 z&EvZrbh1QRIe^^OO~2^dF8$ngxpTOR)pbQ*w(ZLX6)R_jxSn#c{35l=w)Dp)8+UK# zI>UyPTNr`%(@WIszYKCQ@rO6tvr0E@7iEY$0{WemQsS7AE#VZt!{a_e_% z-2>k)`*Kg^$_n41xZp>;Lrl=V%XE=_6@DK)qL8*Q%q0Jd`$-oC?&D#yY7biUm@A?> z7>nTWtfkh1I&5qFXuXQ)cw1{Fv!I#@%_`KV;WbThn}qh3ejI57-3GrDJiM1i-=0_{%uSKsP&Ck@ zV_-|7?JV3>#i9ho?@!Y|*;!SFSRqX}DEhs|kF^VY@`qg!5<`zEn&f0}hv!+gzDC9t z?p}mu)?VFn>Z%mbLrs63qi%Zro1vgmcm2d}e$D4T5G;k;$XA~X)|;op3CLhB6;lzh zyVR^0S9q9CxtOMEUaHe!OC}_htsExR56iU@Zb6b3Z9%byqNy3ilyP zWxoyW8VKt+ed%2$E3d@I95ZKXYjH}1Nx;{zo|y=agvF0P)~R7%f_F9$R_s9ISRHon z(Oe9+hE?=^*bPMGv(Mpw90$$hD5n9wwvVTWRWE z$Q1Nq>ggiVYN+&&t+{%*Yo#kwh8ZN`VttXG76ud}=*4PnNVABgetZ z(@B^GC!O|&Wzopc)$RC^;x8^m-%mg76RaTZqZxclhws6??k!Q{;JfcMl*VH4~_9(@;eaAGCJ6UVWM(`K;b z801F7?&Xh=;MN+=ltGduJgcB5fsU=Xvzs=4<2=Uu)Ez2xqZ#z55nDdVZ^(%LB|Ihb z40LWv{SK6cv~lsR5w@Afsw*=;lWn&GjLn<91w2Hk7hR2(UxJ+bOZ+?qdMM#4frOXL zI}|0MI|&_8xD&5R%tY%&WLr?f+d0NWgCSh&_(y1yOqni$QMezEzk@^Hr#XsJP$!M= zUkLOkGjN^vJp7z((sbDS_w;jk{a!u-hJ=1j*^;+^F4)uT!QZ2;5)^13Mzm|IXO!G= zF~m;Y7<(jBcUuR~Eh`5DX7Qh4wHupS=>`S`El5*3zX>u<3z#{-CfIdCy4-} zbvbJM)hXyeB>6b1V7b4Dk@eXE_)oU+yqB(t@VDAAcm?>+0e&i&!6Ac!7oagD((B4@ z$@oVb4N*Gi69~YC4>u)M*er ziFK6(y=n9>#dCp8!}zg$F9(D2*v}K)BlWy-Atdh+>+K2brqB!8JWM5Mz1tn=dQbY$ zTnlCvmvkl^!M!b-N3gX`-jd!U<%e`4RihCGpQVFA1&m5);U?BT@t72esk}3#$An7H z0(n-XI3oW@q?(*Z%53lpf@=73c#&MYk{V(ZWo#L0;S)rfmiAT(UNd27FItg{dH6WA z_(o$!G=s}jE>zh!qv?|9h@_@LM(0r4g0}7j732>*`QqQk6D{GjUT23TaBcgK%+yZK z41^!wnSg84c5-2C73fWx0fnA?40Rmu1nYA3n|wmNt)< z#qh$6nk$~G6v|w+VU~|5nssj=(ZX?-q)7>$>7<)~9rejAAH{?Nh<3s9uqsf!);;~% z$KWr0jo(Zv5mT&DELnw+c@k9;hh!eUsXkh)_9x0-#f!wU*B$61eVIQD!rHaNq*^)& z61xggHO+_2U!)^XNM=DO%L^3?UA)$KV>#4Loy)%~9!dnL^s;u`Dqnw@#Z5FnQdV(3 zR~u`U{S;?-ow}j>1 zOiW;n88C|v$#Vi)GQk-I)fmY|QIRktW_Z&3^CIUU%HW{0d8zR@GG8AjiE0g+Q=TV? z&S@|c@o{3zplLJU)Ee^K$4I9o^4cLs`uyJ&!&-|yL_#Fq+1fu=mIUpG{7L>ruO#A9 zLSY~#kqCt8!q}1*!^6RoLPRXEl6CEztA`~dpB3McS0&;86W&VH<8c>5c%f1un52&8 zbDDz&AY|LndpN8kF4e=pPho>c_W3GDwSk}%G_?~g8lL(!6V~!EPN>t1oi%2f{00A?U%;k zhKhL)AU}x~MjR9hNU&a3`rHsv-p{Gz!-GDHTwanSI(qquoiA#j$9OKT6m!D-?X_(8 zi6>?Y{SBo(E<2|R8zDuo*G4oY$hy-5%j#N@X_`#L?2~>H-Mw@U~l0 zXVBo{N5S*YErLF^G@7lfBweC?PQZiAUL@(1oXn}5cN1Nj^&Rw-?|GD^&DKRME!1~y zdZS3g##Xz6z2yQzQuq!4*ekaw*o8sul^GUaI^L3W5qRNJDecYgO|sPtgAs&pKeu33 zxMP}Jb1PQ2#ez<|HtH5ja)XW%n=erV75)ez}#_lHfJv(q1l zu`QSxo{Q}kxcDdtP8mn1zeK%5{P>+ZZ~6&T+o^_)2{_Hu-K#}qVM>yXf~o?JBNH`w zX5*Gh_=*uy-pEfON#KSG2cHVuG;tFN{c9mH38on$BkN`*0Mfr8Sa6Ddgn^R0PiwT|P#VWtRA&FM@jo6&h(Ed<{29Q|&AhILg}| zww9C5CEgaypv{|jc4he}JbZkp(&4$~?$^o0mb=jE8+FQchw`?v^mz;4rY1;2fki~r zA)(S~Tf2T`>C>K{2wn*_@rZJjDkIp{q8+ZOs-a9!B4kzqJdU|@Pw3cku(UxljHwO> zpjEc~DGl0q3SMg@8%{vHJ^ddnDut za&$X(jgo&MIpWp`bTdc9%%!)Dcv)&G~GGjP6G)ws0~; zxQJgXK9SPvm|Y_1$ax{xU{J#bZn>!w*OQ*CYCN8seogyZ#^$}z@8z}BN>@!B=$*n{ zZ7XZe8T`lVYC(D%-A-ZKcRZ&m;~)cI>_Ml2H^N1|(5DyBl7c&3RVy*GcG)Z)0yYl6 zQJkj1_xpmA$q$_1fOuT-yexf1NCD*gtn8Pb6Az8$!7s8Dpqp}g9y0qt!HW^$VAka5 zqj`@?|7G_VDNhdJ`6Qf^evlS&ajhVErBjZ*2x(VuFxb=L+`&-1&xEro-lrO(F&%O@ zGI(xRJKxR3-r=8;8VANG+Gml==;pOV)l)ck{p!9FT=^|@+G|EVuYWNa6QaCU((9a1 zaJcpl8R+XtS8&RTncK8|PTX=(i!o|#1wuAOPtl?TUm_kqvOw(ZjDn z`nDI=Ly%u)!9}%@43@1RwPoRGXh%U_?u1la$DV%rCt~4e#Q2SqNSk;wd{IqhrxxU*&2{`(t=dKqBK9tQuI**;Q zL^%ohHBju0FUvDYBG9R0LU=3-K244Ss5%w}wq+mG8Mg{ny_cigO!(gr$o(`PfpU5d z*f8Kss7GvHtw0_d)+)4s^_GT*U;*e*^IwG~*u)`WHxOmK+?uJ6ULw@jSbT&X=cYZ%x=RagYumOPFz} z9?(+rRdA$*o#WyxfQOA49t=nkVe!k0f{&O_O%IT%ta!bRsQTm55d$>u=v3a!V80{H zUyGy^g!1@^l0@2B9VE_Xi*q$8#b#+lE4S=FqQl91=iG9E8g^52k;&O_St9IN>a?XN zH3(Q{OT$ISNu#9TNN_aG;0;#;%k(EqD$N46Vt5obqDiSAMI>2C9GLVUQ<1}GbqSc;%Ooib=^5OUH*;jj|<|qjF zQ#ik$3R+oBGsh(F7#RJR?QhpH2X7LbQ*s~c&6wmN)8RURyyI*#F!6Z}gbZMNgW8yV;vW+ZS&3I&NG%p%lxX zDs5-DI&KlzV=e?o_K&QKBM7Qf8c$T?2uAFH=>mw&6CHky++_C$X}+2q-u}ZpZdv%b z6=zeaGQiBf2a=1ELh6v1-q&Db7=8&{vR&XM#87M+GvRwUS6K|~803i~%uc_WD4yAd zQaI)j3BU&fArm`)XE8By9>{B50fVHZ%3x zRUR#=nfP@oxWEey>cFR=n@uaQJ$O2GOUDDY=eL^|+QMD34xmGKJ~yBZr|E|PoIM1( z`1kZZJ$K7776O!BxRhJC#ycZ3O-}i``cPn4!6_m1FQ*?Az?5RHU+16B$z5#uInpcf z+EVu{Z4-0gl&O|UC-`cML}=Lk(K|cjrO&p2JPsCIiD=(&+Zuqk#N(xC#xvbA*;$Zv zmgkDRi15dEPoUytoGdt@COtQaPfeRAWKjT^rrb%y>vinS;rlyJnxRK#f{eAgW5lNl z?RkkOo)ClZjch~&QfdR0*BhS|7oh~hv8iwjhWuF65*!wKWH+zct>&6SrN^VZ6qq)L9-vsN6OsisyuVdwSWlqGC|rGd(iKl1ma5Tm-s4o&n4Ml$bTOE7=7cTyNaxl_u6wJg16=*p z|E$TVt`R%su35ijW-@Gt!wAbg{)So1F=o_m;3_&kJp6#MmT)-XZ{#Dv(rzwNma~H` zz?d0Lp3cqz;WHD`Scte4*zWIN*hIi_UGW^&`AjFkQx^|7SIub06P{Fu?F6ui$N zivk3JUp7Xb@&-Oj2T3!MJ)+&@SdQ{*JgQ_PY!1s^KOI7A5L-W5A@$unh%9#KU=2%T z*Lus3r9@_L52+`A2Rn6sKEt!(%+7gNWdb9H*ufTr> zzPs4qYfwHa8dRhoavLIKjty+IgUlQ`UQ2dp(Y(h!UkHh=%h+G&`%Bmg)JV!~(Nk0E z3b|FxKGrQv7W4Vi0!ZdIGqjp{Fq?50MMs>Q_$d@EA9Zv@Ul=e@Owty7n!=^qbGGjT z9gZV9C}FpldCY7oP6jy@wu>$Xb_!fQ+==rbr&eP6i^*Rr>kh zJ?s~fJ*vknN11jq1kq7bMzmUv2R?W+K^|C(0rT>CP8h-sx%5G-wT?b`F1A+*?A{tI z0Q28tkJ*a91;*6>mYFTkT2~3_o6?@sl!3K@Mtr{koV;0&^i!|NLuK-;oO*L6=i43G zcblbqgB^kH!Wj6pQ$gY-A4OvD7Dp#w{1{dcVmai$mX{&IR^eN=Se2Ck^_S`dtTC&V zn-D9>pC+J6+Q^hvocM&%l@M73VM2Kz(8bIW(sL+lVZPkfj^2hQHxmqfR5Oxx!Qff8nke(9I&W2N&g(ascj`9__ zNo&mkOwv!T+QSILX+I!H%PUzxxc)2*$~3T(ySzq}`jp_VR49>=vzGF^Q*|M=ghlzW z^C==hIu)k%?b31H_HUUo!S!iMDeV;TwnyYeM=ObvR}vFGlKj?ebb1zs8o0R^>Z)muJL#*OQAVUsrm_FY0;B}${-7{^!mXRB3T;a zQf6C?!9bLV^<5!Vgv*_0xRgNh0Bn?cSV5rW_A%c}*- z!)ne<-+vztZR+zHOl*vP(xOVhKIhs(hN3>Bo+Jp@Q}O3;b@5RQ-FjO*fl7W<(SA_A>t$X7F>y0zA6hatG zLa_6edizVDQe&EuhjDPW{U&VlX3t?tFHAB;O4S4L%6?{ET`Fi`nxYw?RI$>#MR}cX zS<~3$IpQwyR4r2sLeVw^4EPG=Q3*Je5UP)e*eDQCxwyn>)A9U)4KcY*#Po#A0NxBm z4O8WvjwNu&A$w>_B;+?Z3*zGVW;_`xoj&vh9m%JLMl;uaq8vX6g$%5AdF{^gj-q!% zD}UbmMV@aJpINQ-_(k}K<>BGuJcFw<0@Fv!jzK;dkFknv)3H$<&Z0M!1EEX72wX*X zt}B1L!o7Dgjdhqfo$+;FORmP;wvtaeOq-U)6;;TbFw3#Kk-+q_aUiEh6;^+g;S)94 za$f1=Tgr{IH)f38VB0O?QD;K4;wO>h67A^lOJEa#jRsY7>(E0~YbJfY_qc8h?p|t-MTHOqxTDr4{k*Lb7rf-{?nc z!i(^lhu-E)pVc&caJ)6>Z@F&}=m_H#aiJ2hWYH4HdGDm`WyNBvf)ivQ88)z+(&CMSw!PN9-~GQp7IoC$#W&rgE(;l#K3UN z*`pJu!(;Ba>SDkds8cABHPfFFma>}K5c-R7I_A8$D_r+aUSSN$aj(g1Kk`?;?_~f8 ztk{Fqw@KkQ#e@%~sHeAvIaDqM<1>`ECpOPN7)#w1*vllr--icpAue!GTQX{se1_d@ z)H4;STC>Tcof}aa>V~LA+LomAq$VR%b~tzp@}=3yoS5vSSYu_pLJ4{y!OxcEE3lf$ zjni$(;->ptfx&oY)0}PA~CNC2ujG*+4K1R$$q0eWBFM6W&<z;mYk%N6YO2ruQpkHK0*bn zr@9aXp%=@3H+Q9?46l>Z%M-+V#x0)X#C{e?TZ8bi^Hi``m9L*^vNC(Y1I!2(XixTK zQnY=Bh=R~`>>6KkougehVJi#C5Csg5AOiU$0Mif&7c=hpi2d`~HcuP+zT2&*iO$qaTjlpZ2b#KXso}iTF9Sr<;f9=dmYIgEH)>6hqE4Ni`N z{|?a&*yIR>E{jvO$J+5wH!Lj`kJZ4l)*;SdU0nU!hy8sBes-4`q=+1L`r2-)!lc`2 zL=#-@);-S6z>G+iNBF7ThyW!J zAb=lN59cC=IRq^0uh`;sUSw-2FJ)q455z;q`5z<8{0QXuemSip!cy?OH^Rx-&EiW# z`C2TzcJKO<=f0K~YWdE_*2Hgq(qdf3n}85O08c-cBNw+nZnjnX?A>3K&62>+WN9yY z^u;(;$=BV0ZTl4BpbMK7Of$$Hu1|}Ewp*_3qvA+T(io06dhmPnobw%!|I)o4!qw-LT~0BGtSRXy)d?wFLQcD|g8< zl0~p(U|y)nLS)|}ZB4#hJB^3h5WAI@=kXlQ(6-%F5Y_X!r|A;EDHyAhU$b$g4N^jC z?j?)Mr?Juciwak6GI+7PRjo!>jpHiKg3Tld$`Z0RO zbr%6k-jIvdq;-JRNw*>p!>=TPMIzW&Ei`QQ^trG~spmB*ww$)j}rurk% z;?`)#jl+h&5GjV2Fy|nMLah3V!5@iMdxZwCKX1S10{VXUrsqEbLy0uzrEl5-cHY;y ztL#wiy6yQXj?tLd4M<>Q#Q3V)F(D)+2}8fxc?9`YE3>?vy;O}u+E2Ds)<>?&@XsY6 z;`lpxSL&on>^$2wC>N1nD&S>s% zc3wAPk#?7XIp@UtbO|S-%M#`?LpzMJ{JK;!k?P&usi|v0B6rucw*C6`dUf>8^zj9C zbV7b)VR6Eu>ZFU-RuCRQvgl)0N|31JXivk@#zmK%Zi7Ty>hN;2tj*I>LH*PTPSgU| z>k>HGvfBmX!edmgjRNGBC&!|OUOqV#Am8&jtHNf#C7&p!-7K`#-wK>`SWGVJlrtdL z>C%>M{-%6b4$`>Ax?z4kp*wnTN#$SH2E#T{k;|~{`fi!>>g33}?QPtOtWg^AgV~4l zaA{pdB`NzN3oCAG1x(VYjUA!S@RJa~H6sbb>{6fPNjzOm_k75ylvhk=CPr%sv6p9w zDRa<-+&eF!jSZS=_+}MddzledFP1~`a-D|=r?2OY;oy6ZMY)7WP#*w=$_v(&LyA)? zwq=CEmDY?oark-+PMZzuiIx<$3y)oHMl%QR1dxAMpXM%8(D>Rg=4^<{DKp@b_N`rx z9Vz+?A(y?{lz5H>`K1FLnvo!6=~r7@Ix`f};2Rf~9DuDoAa*Q$YAN28K};Odr=P7M z!Tw?Euv2H}3m2COr)s(u3=DBFHEm>`5e4MzR|+g$uA)*H zm?cYTHaGZ*5Ato$h8E~c58YJQJVTNm<9KP|%GhmED-2hX>h_ljjK5NDaq5Z!3lJqs zNO=B=9Ek+!9R!6uF*n=2u#YTOQ)QbJ$RVXloYn$3eqFw^zMdXL7Iu~);j!T!M_Ho@ z$yN&vw1p(8X6W)#ABodxZjyQoptaDRo{c)EAFJB6CXHqpT;s`!roF!}vwaQ`k4t}@ zM%`bx$9vd??08{rY6so%CTOsgbMR|)u?8smOr7`*}_6A#~XVFfj z+?QY^#>n)%s&+XU5u`Yr>G|}6ppr~w+7M}&Fj=MLpvWJj*S%I)#`9*>-CT#cnEKCsux#xv^LjVe1beG2G5t4jWRS0m$T0ZnQTy#RV&uhGxoj4#w(iKm^h?@ za|$bC%MdbiWIXDv6UbxDQv1CmI~boK1V$|5+GwYqKoV)RV5G#ilMO_!Q+H#BWuIjP zscB`z)y2OrMGCY5Jl7Br+Tm4P8ZjYi2OX+l)z^)+G;ES980v>OW9P2qB4^!2yS%M& z^{H0XQ<4@O=&X^mlOZpX(w6Qe`D;x^y5*ilf;dN9{3A#3jcz zafXU+1$4SI9Zko6W&qky+v4*a*4I0Xmrc#vb9?LH$bk3Bn}<_*e(M)CB;Uej3u$?R zZ<2WYc>$2c(nJB(JCCmUVjLlFUzUxBkC4uo@w?$9eO1*_h|YltgaH=3P_FV0L;17& zulQ81A01gEoR*G0N?^t~d1|rD5X*Qhj8~ON1uO1N4*j|2Q~oc`v5mEF6&nFCRMpT* z0v>Usl|GoW&MKL;Ln%uSCp}vH)DRrf$&Jod`N=3NghIrAH^$~#R)`8gQ9h})kmgE9 zoW%6(0n=kifbxFoA0660KD8PtBCBNKBg1U%U?hsc57fx!)R9ph6B}3Nz36BdrdOQT z81@Qz5{^YinoGsPX%cokuu3&l{~p}bS^e?i;}psIhsCBy;%Rx8IV;7)K7tWXIP|sd zbsX+@W$h$*4;qIOlT8RiLKmiwBSnm56!itdmmvBdc9W^M>Acc2LJ*30MK;SWb!?;OmGhNu9>JN1<3W8{x^-N}E#w-Jq#TYT!DPHRNJf#_=Lbz(A`Ao+GMJbjbqms&xz*g++&-7%`&_OsWI@g32=`d@r$0^agl@P zPHk^pCUNY>3c^YgSq_^ebEn-c3CZ464my`p<)~z&P~y%y*me@bQ^N@eSA&Y!y&Pu|S7C1#ag(%D-NZUCTViZ$n&|GVVUsXK zuQj_m53?Do)tQWM$Yl{@snAW1k8L5%%a#VxMaWzR`8#HK6iOx^r$7atk__!k2q)NGSo_95!CBsO z0vxV;g>;u}l~~}%kTudzaW1-cL}Y;%#!pHO#Yn|DHay)OE~Wll$-ttFPP^05^RvS+ zm_fDg#V=BZK`Z9tC;cJ zDSJ)qSAu`e@915Yt3gwBdt5!MI3aZtf&0&lx>`vV9z)iy(D-gz<8|tQy&`oLN!;4j z&}C9RCzPhz>thspM{7LQ^@bNYRW4HSYFpDmI!d7Nm6Jd`11Z(J7~A|dhWTSQWo z>)rGk2N7$N@Oh|n=i~4zN2Lq%j z=NwFIjI^^48Odn;&DS`Cu$I1u4L>GX$}LHJKe`?gg?A9ETacmPm+lWPvk{1DheMYi zLFNpWn8i8>taW1H3qEpeBy_C0Yi#B)11p&|l}RszwbLmJ1kWL3ExIxkOQeYV#x zEu-^%CGevfahi&6A}2b#^SG!F_Xyoo)^g|~ zO`qW=LF=E}5lw#hkrnb{#_`<`$933WM|t`V6C^P1z^x{4wj~;A@7cDznKx9TdSRer zOhVo)QyBk2l0bxsDo#n*!aN4b9k^X03cpN7FFQkO>Zrx$5y~o!6V#99S$wD!+VfVh z?N5_o)fY!NJxz<=8K_p|6>$0~*lYC?3bxhQNDocx*LIOv^+u;t6k*M8vM!*gy>q^! zwIt)(35sDIqcyX=FXlXCwp>Pgv^n#(Iw$r3^TISFM#;|gafV(dp*ub0*wK7upV z9>*%%*X!LG*M^;WkVaUK<4bUtB}LRK6qB&Sb{N0H|8}(gZ9mJoN~S0DRe2MepQCj0 zy9#`u=l;)W^H=Hkk9cc)r#jBr+kKPaLg-=)-&ryo1_>I{1oHvnWG}6$4P>`2g7rGtLtK~w2sY3dE!_58)EITQF!C_F{E_($(Lf-D#b&&wz+!Y)5`P9LPoQQ? z?2P=f^tXzc0oH94WGj+=;XwkRc`Dt4?iS~gnnSo)@~nGMx5da@UP0hI1QoihE^)3p z7G4u~FA91~MNavZ^AtRnF*!i1#g$(6?(+W#^$6yX>qAE<);s|{sM69ivrBmWY(|f^ zE4Jz%`1;;0;8Zazz^Js>RO&!GxNbR%!k3qf?ap@^6}X73xTiI`kVjZaQ(tV{gc}qj zFnl|;k_Oo$12CVKnX#wk&k5!g98f9CPzp zOnGj-_(R^?b6WFG1VXV?`31D6v|L9+#fYRGV}oqNDkA!obazQlIN0k9FoRqHQ_zo6mU`S+ge(-Ji#IeTQn*H5f0JRzj)|a~dNKkb z3RaoV-bxvxH{w>oZGxcwtkcVf_MFC@m{o^|0rMNV+D?;(!#5cNC}7Wbs{x|)bTaH& zrrjI_lN}(J4TE`hMxX>;QrXZkOY%u_f|9h*_NlvYb*r?cA)9&x;nYeFxUamzEk=2?*g+l9OJ8 zBc`1&!0+uP1t%p2r1z&(TmD#ELk&!9~K3~;L*TNOp`QRklXx2UZ0 zS@&W;vq>x24pO3IzPotVM>lSf&SViKl^X=KeQ`gi3-?@+3M`H!51dg$2Q>|kOs=a{ny_?Sq#FeJaHQA4lmh5#evn^BdmKbG(>hemPBF0;) zELqSscZdtyr>XqF&#AXiv~H#;c9W_4cWjfoC{%fryCJw-?$ zbhWdraWCzxhP5iQ^aDivK@^;s6YUD*pd9g9ZSK6H;Z3G^uvO7x2#O2VA}O$)xw6jG zO71=?D?JeMM- zt?rpgkARU=WU=ndPJk1hKxaWDKNZ6(VHKX)uQyp*nR&|yd&z9^6m_y>rvwRpHk4>c zJ2U%t?3eN%uh7gMG_s~}=I7%&DHwL+D|Bn#9uUNq1aV_Bf?TwD*QrTr;+jeYiDL#} z65e@agi7PCf}Pcm357Gp@hM`~!e&S&BqOro$?OxQK959g|iRK zez_e?5nN;nVZh?ds-_CO;+^rE`X7##uPX!hW<))|Hyy75O~1DuRdpC;Ih@2p@KW0_ zsqA5lpV0p+3TYi%O?6ZVl%s$qcohq!qAdaDs%E^imRZj{yOU9+vC9dOfMpQHA+<<| zd?;Nj&R~x`Ot9?Ea5>Awv*LAn(20SM;>Kde9G*5I_%vgHzB?FBBGnXpeY)9Hpd3U4 z_0hsWni=l0np`l+)XSE`9*F0x$biw(A?4ySEGiY3fwsR*I*$9C`Y%o6H9Oj*cz{_) z#ZK8WL2jgLng#lDeLK8_<&9I)EnxisfQ6kZ2^(36{d)2PGApSiU|uqf*`i{meZ+5R zPj`8Ej51a}F_{SlQny0jma#u*R;zyCfOYp5M{rFLG|vr5lW+CEH5%#K!Lf zbaD(dzHK1Oa>^LpED8QlREvO!StwsQ93@Uzo6a+LbcJrQn!deVR~7&lb1^WmR)&7~?%wfm=cStnAWx=YPNPlhT-N$b2OF!7Lc%1|tUp|wy{Bda~9LG81|;oMcsT%!O|kRe!d8qJNY zz;hQry~aRT>X*mo2QP$p5~LX2GAHu8kBDi1Hya1mMMWSuFe~upNQ`_y%5$WdF=~kh znHMOpEUZGr+G359;W_eT;W`m9!3ijOIadW@fU*?%x$htZs;4s#p4FVW)A|uNeKA;B zSbm#7BUC{6i`DRG4cxEkdo*ar9~#&9`9t%d0qGx43-ue3uZ?!)=n*kgwC#;-+CBZ8kfZRwWGME_#&P z?GTj4ehNf1CADJ7U`VyL@fI^vep;xC)`@RTv%cBc7&<&uHOz72<1|-|3hyoDT>;7! zwU77O}j>!u`eEAY4N(QyVlUH#Qo`h7HFl8gyaWR-+T z3R*x*vgRW5=6UBX$ytOwJvQA%K1Bv96C*#WonoaJ*GuPyJF}Kl7Do@XpD85M#=WP8 z5zJgD?PJ9@;z>a=kONLaww4q~b6o`mX3L4_b@SlNYBBOO(WA_yI7B0PXoKYe^|nlbW%53H7rsxC8yw(_N)p z6)OyxP1Cv{L0G!s6WsK7N{4PdW^X*Y%|=-M2J=VP?mL@T@ZL6Rx@Wl*#aX;ux-t|g zXHyzto4R7vZlXv*+CLh?s*7u0;mD7Wz9U82D(=}w0K8d&;x0F=RUA&L7@GB4-9=d= zqvay1;yknDj`aJ?+mJO7%BY#nj(4p@_|sl1Dj5nW4up|`vkp`ilS<~Wyi(5n~~}LUlDW`ck~O3x2jlT-< zPn1;-WWEIUG}c*$s?+1yTKGE{yrwC(0FXq?Fmr9ej`e_bSg2W{TbCsSC8#&?Ayr=> zXk186u$R{j`nFIqqPSh%ex&qD(r}43E6iMX>F*x7ly3`6*J~B8O6eRmj&js)G>-b1 z=tko_A^^%=<0w=~Y0;%rYJ3znYHUn=M_|@zT_DD4bwsBZy4n#3oc0pMrP@6QoGi{9 z5$wTrQY#H9buumE2$RWEGa!eOxb+T3nWe}|0n&1k6E*UTCtMtM52Ote*Av6yMT|pd zk}Bgx9UP}>0IW`o%c`Zi+>@nj(oyBag%SNv8OkLF>q)uaN98ZC9c*Wv)9l;e1-)!KNiCa94~;DvS`yb9rHI>vxR7Fa9d5S9*M zYLl$g8=vthbq}IFxT}2Ll55W6A1y^I?nV1KkIzw#9MYe{KJq*%vg%){jZA7z?Ul5P zCeqJx!9c`Nch5mlPP60hpNZ}0h*ob3+`yNJhjNAMvTnSH4za1N($C8a_WSfv9 zZ6EqwPY-Ep#gZvnxjz9qz8knu^fV$(XF;X4V)5Ndhr~FT?f_Dl%TmImkeqHtZH4Da zupz5OyPiY?!~jLLqvHhgfaeMgv4mFc;&R@xL_=l^)-p{28T2|yQ!E1D#ZI8SU=2fx zla%H;w6Y=op*e@t#DCgrwT(J#6*%SARK=B_AZPjUF}TwdHkubH*ofX`=+W~CL}Mxn zK#9eb{A><651%2NyT?SV)bq&~ROJ%lyT@nCGiIry1=dW9qdSC&M9vb3QdV!b4vuoX z_~1cZ><# zq*0p3q>)qi1*PpTQn?0f?1e)VsR_0VTDK3ZjwGz~xhHm?q3vF5bI<5^fT`nu#tvy} z$dtZ9r2G&Uo9)2oi;_ao;N@TzYaG_jmvSXjNwZp~IvXXiN>74oS5aLNNcvnI_X0O; zrYX;>3*?>0X7Zc^*mM$BzkWW-Dvzx{%+1nhtb~}hH5N6no#I4vkwMkH9GfpDImhxR z`nuVwti~|+aV`4$gj~F*$oX8bOP&^-96ovnnGc;V0{h7PoGVsp-|gRz#M>`BquG-Y zwl5TvW#>?ryWve^VsX(}=tWtt30C(_t_G3(nfAI`Qv0=@Rz9?}g#V}e zA3_n3++RYuRq41zal@9_rA6928M)^}&dtuR8m@V`dTFWP_i|;xdWQY@s+pH|Ld;!z z*idTetELShrz3KzUlmmIi31 zq8bK~(%jMFj*uwZd#)}xjOeECn0NHhzE2V(L+qm(d8_jaPx%W>e zWW1NOIl2afzGK;mI0`%=Jk^`I_>#fwhgQWki`Q7!>b>KqX)M&)zDEi&oeWBlo3){w z=T|2Y?(iUCSII`2T?>rL9wbcpJkn2^Zgzh2*=h5et7pRrp>dZ0Jt?^8a3`u%rhT}} z?5jCYs%Qk7_MRr*^B-eAGKzr(zJS`8lo*)Lw>AmipNu#ymQo*4|% zZ){rNMkhL-68OIwA$>VuP^^p;g7(v3GhUU<4#s5Mr!*AWFj`LOs0jXk)!HGFvmJyC z7NbUgb*~8|$b#%wYTPH?2ajC8rDYb!bp%9r0z-kC>w`c7^6cHNA)}LdGf;v?=ziBV ze@ZlS+#LQBtftLdiL>FU@h_>e!*c+8W5=yb=~F4)uq*>D zLDpy-L?*;g?AOmnZwlJ^oyq@ndQj}_+2!REpev!8vpjCHX+K)*#dv?ZX zo|}~TY{)CbDH9z6G@H-3?NyqzoFJf!1fH|z7SmOWRo0Q|6A$c^*7Infy`9S6MV+Ll z32W(LKRbz88Xg6^7~ExfsTd*4bwCLgYE|aFZmMP(>71VKvbl^1z+V?ZC2=%NXquSR z$T1wc2(F_Q;zwGiD)X8m$H!FNx^-DHd zz|#{@W2TsfRz51n-KY0esaZc4{fg~QuhGQE-N}sW-S#m&kcYDa75)tNJ13Stom&sl zy}8X4gPMhkRq0r#S%Q7XJx2A(7BU^AJnds<@1i7dsC7vfN4Fu$O*_1tx5}in-EwAY zKipKG5~MTpG41@G_$#b*xuvQ}f}Paiz$Sl5UypQLvVF(V-RUP`xFf!z?4Dl!>bG3+ zb8O+$XnBKSSTv?~TO&CdaS_j8gw}~v!O3o*f-g&UmGVUg+oGf-OjSq4n<45*uMs?U zw=~un`FW_uS;G$j2*F9Z?@M+x;2YQW6TfG3`wB|>+nK;0;~6$%PA()GHdQG~8JI&Z zgowW{x9z55^|Ai-sw@_5x&AU+jPhMMX-8D%%iEe30#}7TJCS9+ zl717%$`?UuZ7kbyMS(!m4W2rMR$ONzthDag;UDHNWhM}bBDPuW*6>NkwwC{C?wVTV zTO2~6=I=;Jf+`MMj6biSGq7PU4#rqHnvR97PNT8-^JH>engHSnDr1sHnTjz zIw^~j6Az4X&|V2@)N$38I@EZsKz)Jh^V&l43{rJK##54gr953N9jF(jCV@Gdsm*t6 zP7`ur(D50_y&fc#oy!>zBBwsp%m?*A>35}tpm}!D39(SmZNij>a`!qIM)dJRTZL6gxRjXUTy4-wiZK=*VVSi*GHb_~ zce4Xk5I&|8xsz(t4uaf7>bO{x__h!T>A6$+1Q~Aq+sEC$8w?62-eX$QuqlH+76Z4? zMokG$igak#(#3?Lkzk7n-erwU&D1((Mp{zmY;-blnD|X)(oWb@C>@cE(zsef+U%zq%D>6sf+%q}41Dialz2e==S9I6URe z&_P0z9xq5OO3Z8|v@M%mCakKyX}q~t4y?YDcJ<3#g*}Xfa$~G79Ei=+o)1^d+ZNP-)l=W!?`9O7gVxG< zI10f1^L)CDvZiI)MSnTT>LWutZf@(>uFWw>yG!%YLd2rXuuP}Jp1vamOAw?U614Uy z3&q(K^*H6GzcQ|mcwRtHMn>%^^h!ByV<$o7D{7lj-203qpFtO*o_>1{VD7CdX1B>= z!3o{%DN%;=3PkG%Z?8P7wsTjeX%V5F8PFLt>kt@$@f#4~IFtl_gNxeDMk%v-*iU-y zn?ZwlEaB(BYoW#LKWXGQeCZYu0VZcw0+igOJa$_A^-Zpn1&77T2$#vzjf6)ejFiNp zx@~a;RS1q{iCu9(St%97#N8M`(dMW?epS?<&|22mA297Z)Ce`na#Ek04RT2uveF8Y zOd7MgIIgEuSAa!74GgF!_FjU!X8F^cfPIkD9d0BhT0sjZ9daj1ma!(=naH#jXt0s0 zH$9~i3=U-Cx!s{qp@)nVB(;|H5vx`39C6xVh-Nw_g?LC@vVQ60StIF^s^y0b5b@qe zP1k6-dwGeqeE~6hk#N-X`*qFIm#DTMN=@>R3A;`LvV+t zmdQx?S{aCnKo$bAbSA5ZuUj^3Bw0CSa(vw@GjThnQ)VwX@~O&QRze||dKQFnlu`Av z_y0M0|>8pMx&C&T;Et)UghJ z%*V^Huj?M(?cs8pinPZdX@a=YWYxMmRSEGzn3O~E9$B38LyuKT)<8?lIKGOu4EB30?7ec}wLZogW@#P()LLGwIKB z&BrN+UPzceOhIDm_43s$7t#rs+C?j`4ln?CG$gw|lrQA}9$F zo?n+mvPbQ)mEy&u#mM={_!*9j)b=}>99%i;7<0H#B~#5#n(<`3wM$v%_>M^q=0&@1 zlpM)0qNHjjNL540nG2XpfwK`&FP$%G8EKE@rkOn9G7v>sAy09ZYcSDvO#!mwn4a!D z!W^K%DY0yvNbcwM|0Nyxkt5lu?_6AVeg?l|ebo1z~;?}v7zS6E$e%$pe zKT@9a`Ouai!}-dstb2b;?$u-Qdyb^IumU%=(fwmlnlF@@zSeSB3(2uC(W6Ei@fWn+ zA@UTNbNA-;RcvT6*l^e!XDhH8t(7koMRke#qt0m$2I83~7Gd-^?Y7vWZo&466>kgJ zpoqOU2;EN=nl}*Fy~douL6G=EPfiBQ|{kPNsA=6gNm^V06e>15bZ&EBt^fOzJeP&UOr`Tx*JKCRf|Bus2GW$8@ zuiJ>SOu6oB}YDLT}4TsOsGbfv8yjUF3I#HLuc3cY94v zG$EayN9I@9DaJc^DQ>cTb8=%VJfdS_nSTqXj78$ClN`}UeqN1@rYK^7H8a>RrEI)s z1!gK+yk79SDIq04h@9=)NCkDxdzPrqGMR62+Qg_4Eog>{gxM|y%qL`5xJzW^*}*(& z+3g7+H;_az3v`e(4<-XUOXcb~#Vuzqi6%}2n1Z1>kIA5_zAsw?); zS|GJF$fPNc=er-G-O5U8Bcg<*9{jW=J`YwZbLDLg!JZ?rV670MCkWxPYDS}s@QF)+ z^2%)*6eC>DO?y>)BCUi5!ch2~=26ntbd>AS8neQ&&Runb?37P%A@E0XVRHkp(N>;P zn6J4Ic#L`JkrSkJjscBjlaEMi$4?|`n_gw3(Q~JVjRoH#sr)7y0qMU

0d6#F9E$ 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ÏrbqpQ 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

Lr!)TWgcMLet_u8|e%q-#?kfP+mOIoCGy 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

%GR93E^-F#+Y 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%0ArQ8aNmNuRFN&Uk_2eG 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 z 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

8#86MzgB~fhu;LVawQfg@$QEo!&tSh^Mf!lE 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%0DFb<5PZ&hp3vl}dhrsg@ZQg&jjG35 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%0D2{0g&vOJct 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 $gMq?6 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�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ⅈwL{Fx@ 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 z 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

pxTejmeYG<%@JXsj3_gF6^ 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%0Ahs|p9VOQtKQ6=ogAKY+;f|o=G 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 z zAf}6-M+Gch$ji99;kc(Y7WsPAxl#5Vc(c<{aRPA}R$q!I!gix75)k z>?7PDIr#bmdM#ps$cWnONT%c))7+ZgY(LYk54NKYa`ghm>&NYyGseDbV>%EzNZQ z$MJvu;SAt3tmL9bgW>filj)pRt8MJxJ$%V1-2Xq6;r}V>|Cadwle#wlkw7V%%4#&5 zC>c5WUsBR)_5VijtqOUaPUnk%Wy*NdD*Z1UTBXuIg))i%NA&qH0G!^;iG@HEx@T3WnG;_ovcs&rSsCzwqZ2WBICtj6i5Ddo=e3C4rU8k) z4FL*G)Yb#mV}t=QL@YOa#`LxI;?q zj<4#kxbRF86DJItACGkv&(E(u{=F7k`sg~1I&JG}2b^CKJU;up?;38e5k22;LH+wg zsRlL~z|cHP(bYL5>$V*ab<90|pRmRKDGqI+pjhy!R4pr1_q?rIe!T&O#!y-Ho4-DF zqE`0?tOX|vyCw@0ge_1}c?Uu_#6nh*`Q&m&qRpgQ_47#VE#@tQ(Bw4e%lobyU-6sP22I@F zI>bxj=VXS4wvU~<2Aq|`AlS%8VrkIC6UfZMBYysn(DGCSM3pfrLfTa^%a-|%uP@J) zj(W@XWQ}8a^$<8%o*^+y=ipXW)`Y*+u_`8_A*;N1YrA25o35mh?}yB8&j~``$|w+D zO}S>jij_h};hm+XNYrp2W4UtmEbG&+S($?WUHR~-sxg*_Dq-^Fw9^PY8#w)AsBi`Mk1p^OKn(uzCGl{gFQ4!9di^ zvb%X&d#>jNsjd5;C&Qe>ZA*h86h{6u>PBeYp&+l9Tu*Duf3y*p#5_Z2}4RYXvfzmLwCh$QYIMn-1b zKS6YvpfSR7ZpeYs^zidB85~5lLh##J`HKpLVJ>MEuV^%Eqyhoe5G~C;5(^CHP>zS? zBQH0*i_)k24GVFTw}?;WF=H<8gU=HESH$F1&=60<(sN-3f2GDV7bvynY#8NcsV#;?>&;=~A0%7$B6j^I?7*^ zXcGtsa63&m0a0T}w|akWva=Lq({k2;01*@rEl3b(bZ}6>X9+EiUa@4DLCm7JGg@$% zugLaVf;FRb$e>Vzp8>7koX}39spnws(0->~_vOZ?kbeGXNWv@cRD;aTq;u|DdOH!* zwpWE}k!o=nb*n|+|8v!<Ks;|RWTap8g58a}^5f7WX zYy;8`2jfbyN-oCRBDZ4IZ8q0E9Eb9Ca(d$HecjP-9! z&gr|S91BE8zWYWQLQkY#TfS)iTuQle6?f=`Z~TBBU07rsdbf;^qOJ@0SiSNTqhuKp z__G@Co~Kc;uGk}>w)9_fe$h@|uS^YRIF*F<(&6t#AG?$vQbfNpDWJ^De`S;DNS3ro zy5YKOr&ug-dEm_l6+bUZm8(>0bdy(JUQK&?4sUPIhq&GfKfn076UKvcVF*l|V9K;AF@x*}q{z_4k!%$8avhIZMK?0{k+l z9$?qQtFVW6Pyz8$3Wx;}q$sAn6+GL4MicD`X%KW%m%I~HL+2jJUj$sF^|`~tgTw0~ z_|e-52?;`BgLn51w1A!d^42;0?wCzmi!0XvY4g(d{Q24ZJ_PtrDpbbjapzncGe3BQ zlDoBqBwXguKBcftViw`Z5Z_0%v)=$$Xa6G)t~C?hX$rfCPAh6JT{hu6n`@!^4o$;`uiNoAs;04o^kjhJBQRWhfLV|TgH?3 zjwU}czo&w-xlOOw`3FweaiI_bj+n&sA9i{kV$}Q>qf&0*8HL`314P9HutJ6?4QB2^ z+zFXKgM#VgvU`#nWnsnH^4*YrhwnDuwAWCt?**quOHUmo@yV8w+}r$?Dx|Zr`ChWGnyas)J{lbU#V9er__jJhEpj-E%F};3)?iza8ZL4 z`TAmH1*a2!*&iCdOkdw)W%&M1jv3zH&d#n~OMZS^e+ovqTSRyT-x&Z|CG@73PB6uyS6^^R9lyCmMA zeI3{3`HV~{c_jH@!h{+R#sWBJTCvh6UH-2W%@dg1QRgr-0=+r3iuV3zfwjke_w|n| z>D%6CL)U@NiU(tj~MXfx;m= zt35lzRt|hxrctt8);O{q*7>)a zp4y&C*$b{r0cp)~zBm``-PPgM9CsC89wC>mzP}DjeMeh9OFPs z%lwsN{?MjP96NW?pd*J-EjBjGWybb4l-vpFbNJuu8#<|+x3`ycz#-3OzTcql>}1y2C!R0qDbTyZAGbIdZ}cPc0%?Y20`Eo$ zgNCaG%-#&`wIa-<^uc33_A5g4VQnm3$w~zVGXx{r^1IQ)@mzJZwd6v=6A?k2Hs9OB7Z9)SvCelw2qG$zB^M!z7b5maeAJ7|Jb!F#kC zr7@1{CLe3Ze#U@E^SFV{w)grH$vT7ihZHbzTl91lwkELzuhRh`7w37}BQ@)Ry)Cr< z@S5IM6Jfe91Ckp7>UUKiKdbMsm62qr@ZS+fABK3Lz=YD zRZB!lgU48df@Yo?wGPu-GQ?$nB@r%`hb%6*%Vn1jSm+LWafU4CE@-!5n_R9B-!(hw zUl5B?^$a%IohR;?WVVaPtBZp$MF~4?)K0b|n=-S;p*=AB7GQuca040|ru_k&@d&aP3?w*yfD?0{C}y~8&FcxD zk3SpT51JdJCMgV};s`4RTvVwCiT}X>Q6h0_+hJ72w(+RbkGa!rzDM(?tQ!_eC2K#E zvox6oQcT$I#c&04%9n#|JHm-cs;&OO=}XB(f()>BPFxXNSC+5=^E?)=Nlq$M=2tD= z4MBYUoBNdzFM*JsF#`ttFWI;;F^O0ck_jjib9*dc5_^y4wcPLUz6ls53_HVm>oIS| zpqK1#1j)UXXIDfI1JJ(}2Spg_L`;}Tbx!c+T6UKmSfgO+ew(dtEYMR*)V0g$^lI8+ zG;KFT9C6pv@f~asX@B=v;w6he<+$~VO4(WlSrG(T=IWWX2AV?g6KWE=dgkH|pbr|e zyUu?fJ)RfMMj(s^H}-ZTA*f-L*zoi73smbOQ#z|OI?p54F73(ClCwUnyEJQ4J7A{_S&|n=bbEr@&5Vd8 zfhjlcgslknu_VoF>o+3y2h&zYQ}7Wd<|!S7cXSFQIOQn^M?ON2s?K@~779YjcZ(#5 zUx&wc+A@oUpnH4=EwR4RM(ebH|SoE9K-jFG5x&?5f0#4+|%xlF1Q zZpuKe?0ur&iVD?f9=hcY`$F{#%qp2Mt7YLhMC3NuFqH_3n6rfr(^igYSrV#z0$C-; zY^mcyq?Q6%&eKZw+w^#NR}Q%un~W7E_lm1ss&w3q?VKZ!bIg)@BXFRaf2&h-?BilG z;7yW$)iZcw_@T4)gjK@$L`&V!4sdG)%v zR}-5c$KSe{hfkl}9zgT^&i74Vk8m`wKy9%{QqLGNnq#!6Qb81w;g~$*W8>*@iSUqtarQFRQ>d#zp(B5OoiskrW2GCf#0K(TCVa9>t4h0jS47?2u z4cKL*emH8ZNv%7!dxzfCXA_=+mUVLe3OQDx*k%BWlSG;{9(KZ z50B%&^N1U-e_>JOaks*|E=?HFdD~_JTtc=jRp2(YE6vAFEVb60438t$Fl=*He*&P4mY+ML^(~R3Y9YML`-8mlT0m z^v{r{au_*e8CU+^hqu&W-&Fwp^M}%C#ug!@04e5nmH$STUN17zAV5g=Ug*)!kV=W- zA$Q3I&0@e8j|p!5;;DfA1tABD7+As*K!n|3uH%`)1%cTP)_yf86+Q3*n;MDC8(?k> zU_`+_;n5i_f49L5)i=CIsjfAkxB&UM5c?6ZS6h$Wi+aQosvN2uaJj;rLgyKkBa|4b z(|f9xpE2-z&&+YpdpYmwPfNTMdpfac7ikpM@+%sd>mP(nkD z*6_tBY&!2bvv3`~Fco+`UU)Gye0o(fkZFUK%-J07l>Cg|vEF=;l^Q&jz5y^WklwJT ztS{iFOQcl&FWN*nrhp$>xb~!qlG;D?}=` z02>MeNVyC^A<_WFKQ6pLF94f*YbX+&OtKW9e8*bO;JSQMlLUp4JJ4hPtYXwaq^&|x zVRzqZ31-}d_UnQE(pZJe-3d)d;)dWb>aZ8-@#EAMusCdMytS@>lvV=vP|T3~dSAX}pyvXjzZZ)ucISjkE0)D*YA?pJ`oz|^r@HvTmxAK(7o@g{xK zTR0nj=v0P*LR?&Gl%Qu=+9dRNQgkWKH<`XW1rfs~PCi%+e%+ zMESyP?(#`|L&Va6*jlh6jmhX}W9wi(RRVwLdSoExhDfO32?kt^I6e+l%L5rdgFEK@ z2Kb#iNnD8$;WM%*EG(>y%ysPH)hicBeDgv5GJHdp>gkrXjoD{&vp83CbBlq^GR`|b z6~WzU6R~JxaA}e_e_FwW?Qp1|DFV2VF`%pV&W1#*cvAY*G6l9Xs%^=d!yTSu+wdFd zcFTxR)z|JV(nKgsLAaMn0m4i-F{J|XV^iJEkTR<8{xuI9K5#DHl1RlQc@57PuhBl4 z4(%Ki!ktBrl?@XOc?g}EF(epLEE?xg(C1u^y|cGH5qWT`b<8TvRsQ+**GkmcOZnua z0Og6tp6Hv)87;Z6P)Fb0Zn+odXVU-34@oHbeF8+&5`UZ`5n+tT)x3gb1Fkk=GS=ap=pV6gzLtMpZr5tA zTE>n5Q>H#*vF-G_m(=xO4jdo+C>L(gJx3ev58%3XWD*D&MLn+5fbar4 zG2S1uft5n6D-1j^w(Igdvjw{vnF@={uL>Ux*sE3>ETvn2S>R&oU{4`v8kuuRgCwa^ zG8ZJr=U6_(B3iYEk1A^-(J91DC;~1!jF?#vfJW%QJ23U6l?Y0ehL6 zt>eUwVJS=P7|nP)eFxle&}~R0GJ>e3)^q272pdigEn@@GXO#q?_tR&Wc2YU~s;att z@YnTAjTbh8i}tEjkESO0KNbef&LxwqW(&?6Ztp*ztE%&NFXpa4Q{b=Gt(y?vjJO-s zs;>yMd@K!`RrB)(PbFpg6<$t0)*%@+O12xguq7D$KB{Nnv#aeFu`U?JOs%U=Y&olI zL~$Mnd83kZ%4C_84ZsOd+c)Y?en2BwjRyJ&-#}?wIJ9Kw?D-6Xm@eEhB*RYSrctC# zC#4?`aEpmq&}kRL+eo>CER?+^H+l%f>i%F7+Wt9X@hNg@)ifbpBE876d_{?(q>`qx z7lKY^wvXAaFTH5@ z(y5e*W)?zteumG&NEsX@=8BPsm$sYFx}PWqZR@KY5<+THjW=W}HfyQyIj%kG#Zcz= zK3rAjByD^P5krb_%J5kB6gPzg13MhJFtltx#|v}3OBER~P89MYzZ8F&jN=K7fES*$ zuQ_LJWeZ1f_Mgf+S;yCBo$W&5G3yrCy&L&rZpkm45FA^q!gF$7> zG9^bR)UQufnS}u(GhpF`eVT`s$ppPJ5OB^D1%<#iAeJHfw1XF#hB$zCjAYl8cmHU zb^XuVxtEf!sBBlTFYIF*tB=dnb_P{hVRcHf!s0 zUaEE&Poo!vi2wH(2W&U`b30Ag(R~C$8gcQx?u;X+y>0|Y&L+%cMHw*mQgC`O__bI) zgy57H=m3O{iXQug-c%$xQ-$W&Od7+g1g)LY2ks3+Du-(Dd*Lyg71Qt#hn8L75&A9{AgS~!!h_4Afoub zFv?2N(TUiak@Q2(MaMmno@nA{g5HB}2wxG?C!5(3Y$2CyGpA3`Vz9bzX`wsw-4ibP zr|^DNt54Nvz|V>h>rR{cs#@w`!q15{JBd-TEdRyB&9E3UL*eQ&VgE8*Z*+)vc9V&q z3!i;dFsRX#q8&ZqSuQ`ydB>wO4k7v{vh3y}_cfcVH-;iKvq|4FrFusqZhpQ-|Kwa`JRSC=^2w937dc1kbIqdVoz{=lv-^vJ$Lh?Llio)G-6#kTsY;09DCY=R1Hvtu zV!Jijx(J@B+1c0z5WO?|VUczap&T{3dK~ha>)e0wZ_%8cE?;4TdlvAfAGQ-RacNJ> zSLg2!TvHR9v0m2xE9~6Vs*+yT1)75$W&p){QX5rL;@pTh6|f%0^d@kOBJdnrw7+WV zjRvNKE+2itH9Uy(GTu-MyH4ID>eFzXi9HH5II_d*M zG?tZ`ubwBoAN9114Z2i3eZ#VKPh%FN)E2|j+8K(pyAH!beJ*U8#y{lNf2s6c+_8Up zAJiQT@u8)Bxp3lB!FVq>x)ss_!`EL+?^opfC&J;Y$jbdaV3@I$fbkkg>0aX?cu z_y5sG)C+}KK4iCreSU3S7(AzD&~^CEx&C=;4cL3Ud@Q9Omfg6y#!wX(FIU8i+{Se$Ppj~IbQ2+_Lj@IYH%X`io?!H~T)t0g8!T!K;`s{^95 zSl*VfDbH-YBsO1$_3ypdw|79OxYq}@>EmNS(k==-ZyRi(oGO5D8Bi}^L6F>_IY^sPa~_VTXTC&`ppY}8tFNG z^7!8UlkqF&H$(Ty+T(|SRk-Z&#A90eTBgo@qh`Z1Q9|57@Tr7)>yoLQE??lZTG?Io zhP$%w)-qAL5La`U83RiLd(? zEv|o!w%8;&IVY_b)gw8h)aI*}k7_x4bUsxp>8v9sFPy(QzeEgf{X?>nThqBWsG(2U zQZH{kPL2GuRqWexI^z4|P}AscLpcp+<~n~QG#S-)rI@&km2KI!-X=TEmGK4}yL4<` z9}SyV6c5?p2YsN1C?E+x9*7%8djEu_1Ja(> zPNDarLCYb9C!sriHKAWe#cBOBlTW{XL;p=3Z}t#MSTN;W6hxuDi3mQV%W2DB_?KuV0=Y{n#K^x1~rm1n;=Gley%}2%|p|Hl( zywy8CFWq81{l-lG__F*Vj)c-|fHC+n@iuI{!8_beJP9TUbb{R!$$?7YTSH zb=x+x9Oc~m`l8M&q6_*8U=8p8dw&)3zV0qx{CIK~=(Z*DeBQhB;s5G3oqqm!e*MVG z_MJYy`}f`@Bs6{g`1I)`By|0J{`UF#RsTHUBh+K?UN~Xoi$!+;+v~uW2Kb$s)G)B7 zU=-0haIB7GP2O0^y4?Gmb}7RXPWuK&Bi@sT_0zJx_Y!N3ILM$i&3wfCiwEA1h2`Hn zQt^z@r{LLocN_LyT-LVQmk@P!??i**{Ja-*X;wJ zCRF$F9oUKQUq>N0I?Zx=F_Y}wi{yVA86EAKp{k*_Qs zxe-OjYcaQ0PDBjrnLd|NW5l8lE{w%b93V&^ac@`NzD(1qWTbU;WaU(^!Q>yF7TsTN zS`1jI+jmng@2P1;UHM2c15R(Y+s2oUn@tfMDsX50U`eln8;9|4SM@H94-4(x$jM%W(`sz;UYL9J? zT)PPpVy%fK*G9)Jj-GnFS1EmoeZ0oy9l7&6W>03=(wSBtTJz%xQO=w1u3fn`IC*v> z+4g@!5xscDdsj89en?EEC1mA($ln(n7JuoMejVQ>w>&*-&UPEZDXP}oC+-w>U1uk=0NsC6ITu~KmsP$zT1p9=hB0= zFw3C0aZb?6YE$Xhv6B!BuRkL2#0RV4PedWk1xuljY@hY&+*(9qR{HgG(RP;SoR9A3 z-h8`d=^IqxM>bmDTYAJ1&ckOs<*#GXP*8SK5*}L5KmhenN2DyeFuNk|`DamCOZQSZ zp-i(Xf%D9VNRAH^+c7H<^-g7c8KpQDTS zk7>tnr=4D1?I#Rgt?Qkg{87T8bmmVS+b@lV_V_as59eMOU(x-^E?5EZ7ebTE{^uKP z{1uCqEGgpy3%9LwN2=}!C`g$H6R#JXukY4N=l%2jR$m-HH zonYhkFMXfFQ|-;>trI~o0oUWX&PffowR9?0?c>Fdw}ys)WhkH~;nv~P)#cTn3w>i# zN8ME}XD2LQDqdb+(*d(5XKudMCFu`qH1tXAf8a7x2_{|i39m;_S-Prh;1;`vKWWO! zJibAaVsrs-^j^JZNhU|D|1vf>g(|V6OvfF|UAG)Qohf5{sbb`wtO zpFCGp;M#b<`ZyZe+KgZ*_cxkgzb5apsLiof^x(xXMb`UNe{NZPf&(|16Iq9^9L^-3&{|Bo9acjaLV+(KqI2||^n}wG>&vUT+Yh}csXbwCZQ26s?-}tiGaxOq`u>eEI-@FJ-tp}8W zW0aIw7$DqI*p3lCQW1F!v+mX`=}T?7qCt}s$mrZEDshnh7=|R>piOEuOWMMnWaPK6 zytyF-W=7ko-v^T;&ZdT1amlx(*P3;!?a*IeHQh-f6BhJ&L0PR^w=R;e*+|%mS7%VI zWx*tyITH#ysBl$5`{)Gb4y(*v1p-7qxh389yht;v4v^2HxDf39 zps2Z9P=f+My4^4yP<9O9ue$?RNy7>iUMzhSc)V=`U|Lc0kUTlc#Td8jT`95i3vQ38 z|NF4c&g)&bXm&=Sh!j4vsM|imh$jYM0eJw!Hr)ik# zEbXr>3PwF2dy-53!kvk(>g10q5=Eb6{Ap+VfrsbJCm15@c|+_CrrL12B*Ioia;LNL zMMNp`!P2JSyE6s`*aDGaD$-c#k<>n9kf2ZsSs3GW*jFzEej>D?_0QPb=jV|q1)}t1 zF~&8*`gb!MR!3*vj4|v7v)?eyIw=>QprsWojN5L0GQdTe)S&^;gj44dG9{5-4@b_dNh%(}0v6hO{2MBmg>CEPK8%z+8CU zylTb8L}@P6@j_p^tgSP#oGK{SpgE40}Fx+0f11TEh~V50Kh`X z=LJE~_8fx-Jpnu*6qEpfL;!Wc1^}$p4M2?!KmeFl{jtB>vipP^yGAF%t79ch|q>0GTK>!6&;$DE(&UY4O)(!y7 z1ILLx>zXSh{2Hv#$)+E!=mDxV^Y~|MfeD7o8G;k!#S9FRNYg9+8m*#dn^u^~DxP_+ z9|I5EwQG~~gjt%U)kvcG?H>n&a!nQI8NcpMj&8NW8MJV zoKi$(Enkzf^jb&YFi~)KSQ4XJaO){S&Zz4<{Qp;i%ArMl#r-b_8~^~z`Jd_kNRW$# zyps685EGdV-_O0vVq72WSePyy@gNjrHK_(<8;RiL`!{N2PW-=nG}eEDgaTkeEZL(d z=h&B&$m)dw^9%sg`QT~BQ&Tb#N7mHLiP(0I@Rf=`9F_GJm2&DO=y)n&MP`ZER@QWA z%D<~z;BeDc+33T;f#?Xyx&kMJ#YS$5@ zu8k*VWQ7yn*pt_X(+AU)ahb`kH+QHeI>``6*vqJz*-B262Egba1#MOybCG3jdF@94 zh%m$-AgB!b%=h~aK!vCY!xdOPD}dQ-BEt<80bqqa9!r^2}0I>hXAeP8uY0zC)}2PLSjUSX$F z5IHl53jk8#dMtpe9SCxIr3Y|z1puspfEfU2h%mzWp@#Agmzhd=A}JD2UOZQ)C0AD^ z=@}LX{x;g9H&^ce761PssI=vuCr9TxVo$zfn=W((fOu5xFI;^4fkOiTkBw0PfCB)G z4+!ApBlylV12nHRb76o%Lk?F7OuL`_tvwdDZ^ChOTm%5ZNkIP#X$AoR-Y+SKiwiIs zFf!6h(@T*ApaH;p{<8saVSoU3Ge}^c-dN5oGPso=V1aFsoumk82KcY1ABAhgKA;aK z{GThD83F(RJsQj2hl6W0nlC&vFDCi-P7mAz9XB;cSX`7CITaK;fo6XpT|6BJrr=)b z{l`IZgVBIqN?6e>w7VQTp7g`KMQUz|fL!S*PVB%!FFUT0kw-eUdBSgne7P{FTwKUB z4>(oqoZb_3s6fFqQ<#utUzM--@#d zq9zIR3TM``bFA+1zyEkDj^MBl@|V6^c%T#F((K4f=Mf7F1Heba!iv(&^Fi1RaG5Dn zC`IzWYYr1=@LyG6fS^WZX5Y0;`K~4mP>$s{8Z3kaDKark5paf`5&_^5YBrhxlVdb5 z$C)pNwh)Db_K0hqAem;yY97cw=3&eR6VI6R63*Bz)wOd_@H ztoQ4=nwP;4;Se!N(S<6iU#q{M$o`52$MZ%x@jN7{C6T%C2Bt{A`cjJIQtlNjiD1X7 z<6RZ2t#baWZhV~vyUuoe=Jxj43EUu|M->}#=pv)`#M;3uFR>rv@g)?lhy~(IzaMZEB`it`7H$6C9gDEPW@#tu2t|su;qmZX?v!kjnSB~;vIJG` z)tY%Wo_sMfF{*Tb0IDbo!w*!HjuO%zWKI=oQtJ5{MzPYHE8^r?_CL_%8p-YHgFC`t z<2dA$Hm+>CG&x7E=wqoSbxVy@I%LUzkc44|G8D0c=LESOe=a?(q;K~#yP(6*kv=Q;y<A#M<5r&h>_bWz@m#UWSx=SQkIrOh3Z7)3=^M6MG{VEwp-E3_(vza8ztzD*p#}f)-P> z2AZJlT`&pxu4sCguR4QYF69<(PeCP~ugtPO;C)JLD3z04FuG^t&VG9Nf!SJ=rA{*# z7o=Pk zb%#l9sfV>WVTqAMg(;qnd}Nbkj=sV#jWs6vu_KmkdWjfl6{jtbm;`4E*4A@)xDa&` z0NyFWrz=5U1;JuRFIu(1SR7o!;2tK=RWzs9qfG9T05AdI z(_zm3>=W;RUGscdGP@-|@d<4zDG{lp5tL;oy8l%Ulj<{nDtnAkaY1wJ^J2KqQWsqk z^;sfSWKt?hBsqInbSI?e*H6C3J-PxEwv=)-8#|c-A62Cts)Z_bZm9*`0>&Iv?=LjY zz3Cli!PVAob3L%>ee4|lz<2S9R+SrU)!YPlyJaNjc}enwZm+ZRzCHFCRJO9jfPvmH zWA)WdVi&drD6yd@#p4It)Ui*Kc8eeJ^XgRDdi=tJdaQmKGA440op{OV7@3smFp{$v z5&P9{ShYB~)k1UVK-*?>H|=Unb#(;Dg&*grGuBC`Gnk5L*DntJF?ug_%1GD`TG4JJ z9%m&A8EzFC5&|Hb$&e+j5TRyf@(f34vRJBPpJwv3O+ExA<9EtUmM2Rr%_zJ1GT>EL ziJMV++x2aO+JfL_s2erIM=~e&KR_Un(B;67BI$y6*wxSdwRM*DjEt!!W@5&UHRa5X z<&4%@nhnPGH7P9Wz;*-zj?ZRfiD66@WuXufH&5(k)ak2rmn9rt*GvUgCQ?Ca>X@BO zS{#MS(%e&h${=OY;ABlLfKXzKBQCKF6qhKbX`kGZq3bTnp_7WXOcqH@Wj13?28er# z6e7t4BDX%iN)mX7A}HR5ijiTF!|+U>(yMU}zZ4ctX3JzLV}!X-VzNlINJ%1Y5KV3w z9i4$@VR4jVaAHQ5LCTq#5#|t)WRaRyk!V1&l$MkxLNnDeF%e@76lKjwZZQ|LuMvVI z;)KMEEO9t7Miw(O%X)K&P#t3;xGXs_8IBg(jdQ^8B#r>gn|5jiyT!Po9SK z%&jZ6HFPP*QI(dBjFejb(|PG<#NOKTSLuz5Z$u_9*>YcOd9OYC`Bn0=l3mk`WYbnC zD(XskUO`h9D)|G-IB73Islm#?NkZOnCVcjnE7UOm#n!uFHquBKfP{FSi+J+J=h$L* z>)71KhvUU#g2k$FufN(QRJ|YypoGDQBTK-P&YEB4K6#n;(};i3#p>L8%D}rtX;sOjMu!N&$&P z4<-*dMknH0QkWT&aR3NlfDz41tj?eXf#7f@17!AfEHUI-nuKU|VB7$s6*HQJ!3d3J zOsuI#s9O%GJFyVkKN=z5X%TkADU`gWF!@l9?EF%BpddD8J@r}@Gwv_v@i;L7-PDjtDnc=L_nhh?MwK_SIl^rbQ#^&wj zfB|%!4|_|plo!I-#Cma1sIPCy!(_TcjKLGaqFGrcrInLt;~tH-UQF?6aPSt>v~20b zS({9k&4TbBy>v}*CUx*7AKVh!WY*ZYTs?8g3t?u4Tk_EQ(CY~iDfco?a>tiz%~skk z(lT1(Cu4 zB_G&QZT@w?rGD|Nc+f*r@zIfZSC5Y}2JC@3?PGSHyZJAy8~V}ReoKKiaUYYHvKl>K zuGr+{v)j4ev@m;b<)LGfls1*KCzre@)wweh*kDJ`ChMAtcfE~nkc(&YrycF5mF*6! zAMA4Psx{`6$dqXC^W624P^?S$vK~XcmvGYY==RFTcjR{!DEsJmakV?6@k)B1{Dq&1 z_Xalbzx0ym$ct%<$*$_G@2Vr{F!UIbwNtFNkSKCUn^vq}@@n00|5U{;KIWMhkdh|U zZPV${(7YJ$VCQPhPQaXCm#d5WG~>f%8(3|vhxd2^a5XjX^pXqAmq;=3(h^9?m*^RDG>2>U$$g*_wT8@I2sf?D+^m4zrtAbpBi@rdL`@k5RzkZ+|<5-(d zLC2Co{(6IF$8>ER-lKQY)Iy?gpmnjUY>%aPs291$MIW0X~Sao=L3R1NDT+l zB6Fq#T7m4}Om(U0@6MW6glE7NA6!*|J0oBxZuJ7mI#pIbc7SOjT2XCT2}6ks?D9fbBIw05MIp zdNbEtaQfnD!HVKe+Rf4;T0e=0g)ta+8Ikh@pqzBRQ5r}+4yhHWBfty|_C)vxGRb8K z>N=-^ZW&V9f;MQ{zk7F#nC)jX1j z$rR8(g2raL#PdRzYN6WPi*@E9UFJ+|LCJM=(8laX)W~TX8%>ua&P*iZZ@%F*#$g}= zi#5aE=L&*ML1|0Lu!e(otG^xl94Aam*$btrYm%E2x+F$pG@2Y-2i4LvcI*>FkS7bZ zI54x=m(?<-Kp-vAB0??3h*bL)M#mbdSZ2#QMzpaydrf!1l~dT3EHcI`edb-!7U-da zedocWE|dU*IhhED!_`5_p~*;*cPs>WVYCDB=G@2Toy&;D8OnX%j&iF8lLmZ8UbR-5 z)-&Nayp2DhMK{_n#@8rlwQhIW*>>aGEwntQzbTm-<5|&F?6o*o38l&1?G~xpnA!lR zI!_s`M*8-h4|Y1Pp6LZi=?-}f4&^eMU9ujP-J|`Y4X*5E?4$3kM>%u8IYgCPj}o9% z8a!9rKLxDQc}PiERd(B%Y>#<Z=b2w@HZRtciXhE*46BdSC=n&+%Cx- z{uFO1EM210`KataIL_HtD4v_|HOG#4#s#@&o7fA0nHUFQI`% zVPAnH^I5>BB4)>#TFPXiivKiFB-J0vw)5rF$E~$GL;PdVc7Jyh%jEn=;c@NL0YXh@ z#HZA1_b(c_DpXDGGF8UQ)Ffk@K1!}~!~|sNWCOEBDfR>!o_xkUC|0~`8rTgpFfEL} zH*zbfA)@N@>iQSzJC|w>#jn@@P~2Q`?|s`$B2KK-Fr;U4B-_kKMK>PHpe^EHeG9~Z zDHxD5{U$j-pD&8~+IdsByBnBqQ4mCA1~HjF!?^7?_dnr+J3(|KcglJ< za5ZH^>X8Ig<60IaBcbe8DrssKW@Al^@i&;_Fc5a!sQJ^l<* zoiA&um58F&&|;T^V&aqeX{C}N>IDECuAWG5-kes(sGm$1N`fj&%z?uMm=Op>GZyYZ zuyl#|g_7(M^(@gy=e|05Z-S(%)(nRh$u`5`&}b1{Vq&xai4g)AZ4AuP1J==P-LDuO zE6vFS5Tc;1n(OBs&{k#8Oj?m0hBgJ@d~q|7@XrrHDFkd(dN+u0(i8E*ho@x zr#V?NM2dos+)O=DGFe?S8Zwwng42Z5TVfd<2W<0`1eb&a{FOSbktRz%=;S2FBnKB8 z{*^9){>IHmf0piJInw&2#qFudQY=XjOP|lQE}mWI0-ydQEVrZQ_Iq$mDf!?=ur`$(ZmF zDJaK?v(}~}h?+^rilKGE+zP6z6i-G5XVl^aAx7qEZ!0vc!>^Qm8;Yh<}XnEwD(-w zYD*pFShaR!lykJtpes^Z0M5e<3S4=y1EM8sn+(H!l%PKHP6qK(lApN@%wSb!4NmHp z`sEtxbk?CS)BV~oZqFH1w7mvZm>XB-tbq zFClLy>WlhhjleU1?EpdYoR{SY-oNv z)&|AjjTvcRK9c`901QU))(oAo%-~XTDn&S37H`lf zm0ETw&B?u&@8YE?PKH6hz!XTf9N25O4LPvi#Eb3OsMN?`t(0P|uj^7benu_gXgA=N^k7aGng^lJ$;zS5{#=n7vWK8i+v7}IBFIPq3p;5x` zXOxNQu_JZX&7U+pp1)2KuwhfiSB28uos&R?$Q6G1vHrk$LExm*&)aBu^k)%zajN65 zLh*4rW_CvrC@9+SeD#HP6)JD^fc0|`@x*(}Fw05&=ZU;MLyaom(A)2N>Es_zR9zbO zAfib9BeG0OzsZ&*%pSzr-WXMHpS*bc5&MoLigC8W66V0raGcc3ikY+$HjO=oE$sG> z_0Kqi9uW7E+7cIOb=)#Lr&MI?SduFh==2Gsc$4j6V&k}&EN%tD2{kv1x9j?3*!Max zID#v%zOfJwkyyA`hBJuFikX;?JR?!cnG(ntr9~=^0^m_T)IJy!0DSR3HwI7-LTD!A z%3^p~OK^28W+}{sR%XNkbxcJIZquOzG-S!5P*fFha3dhOeFfpbtz-1Rt5;p!aWDlW zq#2291&SG~qg}*>%ybXNa3fCH!;KF(n(3JCSNLnKuH`m0znlpfRilV3%BR8o)?LC(A=dF(%@iam}9DU&nPbuJ>! zTy<3!c)Rv0C1Vs^j6RZxVhrk#eKz!@bkTp^=?C|bcE0~-Kdf9FGJqw6HRvF(VS@CS zC-8x`?aIX7-F*rC1mFpULQ$L!g)%Oed18CrjYH~w>rPnTf|1vH zi{=`BudWxiSCb0#m#xxop_B|VtGs;ntL^Qh5sqM0i99HV_SXmRZES$6S2s+8_o?2_ z4NM@H)_YO_f447DSB}XPZJd~=@L`pYeDD?Rv=w<_ zX6EO5WI{LF>Z`_MaEyTgkq=yW)s1LIcsDX{Nr00UUYeLN@CPJkrXU@-RA?8uKhxU0 zQfQdnW#{411+p())6YOLBu_4UxJF+q8;mclmmdvn{=!f+;kmYIKg;v2FqJ}KNH1bn zG>MHI(ap*DS0z3%N~O-tAa;(X^@j_!#QS?x8@y$-EJlprj0bz81v}&ghO|G^%0I}; zN08owF1E-wPvy9`fKr;48Hyr6$j9;u`gy%YQK#NNi)Gd1dPoMbfkn~;ZX@-l#W3V; zcTbq!6DV<0#nD+pg}(QUhlq5B@er1lgQJ2PYhn+G=7+{MTlgyiD(A?}N5iW^xIV*9 z)WQ}T%bJgzpSuuX(@yCNu@hnq4qzyfN^_Pr$*B3RPRE(4fnbNEJ@X5|gRdi^{tibK zmzGbE6djvBnKC?|VL1&{5#GZTjyPPmi)J!G;F`j0Sr(g&trf`!v6k|i57HpoAyLd! ztqdjEL}(I`C>B_9iKYomXc#Wk@_#2lLH?y01PLvA`|vW@$7Ziz1-EUXFz#9WsZ>=O zvQq%WL%cradBDZ&vaA=;x=(I+-%k9%_lqRFmoG<-isWv&KV%4v2F<%qC2W-CNwe~f z|Iu!L`~L2|W%J(GdJLRv_K{!s2>RG=et^Zw?{Zcp!hEJr5J(PuX2i(PUNysm@YPi= zO5?Wy3d{PDtj1nXTwm8o5}hABk$Qc$d2aErSflK1=B?ir2%h?Tb0^AU4ZnkUoX)N& zKMj*A?5TwJAH0HM4Oye0x4+I)n&0zH>u6lo>{q7$ThF-!y^UwU=Uq4@u%x%sJ21tD9tQi2_>~tm_GkoXO z&Z_u$@Ut$joUnxHw+}yYp%Y^kde~-*P=}8b?^_EhEg@Jbil(IisAxaJ^WfJ6U@Cyl@fUKD2UScXdlr zu3fsdTUMqMCEGF4^%8RUh)hthuEc(`Lcp~GEL2}<|F@~VXWK?u*YZ(Ff#+Ummlu2c z?CdJLr>CdSS3f_$V42)oD6i8~Vr6}$XdFY~D6va{KTiZ@- zvehIBxlU-`BoxJ8dcW=9*sY+upIzU6sAug~m5W>fwOnh*>Dr|*Q@J(9?#1r)@b>71 z^gdB$IxXD{?Itx*JI_mRYDn&|MYvUhM<2iz$gsjoqf5;T8P<4lD;9cnn)vLZ(Z>F7 z6t(aO^~~HGD3#ykB3z^`5!EADS5A8oh>)TBk!uE1mv#gWH8WD^SApk6?&bj7Gdbt^ zzBB{_wR^&N1xEAE>5d{-v39S!!PuLIThy%8UVQR8NpN{J`!&^wz56qh&_nvtE-j}o0>2>En_lyhEUDD&_jT^3#NP2KYaWx&y zjm@SfbtJHCRCMRJw=oA9V3d<(T-ew%359(meqme=;q zn8SlaP8{agmdowSi?1L>#_NEda%3l3J`H^x!1n{$#lnw@c0)}PioC`DIScl+EZ z>7?z@YuBDaIHzqfT2m2&yt^7;EOMWFdMu3;n5HjTxau0=7AS~EJa2B{m*Xw4F@Ljs zv?x6S91@0hGIV_FZs6_H2t>!-VoM^hFy zLZYdM56!M9mX-)|pTETmZEAd7lyvk6tN$%JauQ5QYuOAYh!2Fyl7|UDp{IZ3|4r0= zI_v(;7orK0%046xNAxdaxW90+n0Z!9 z^j9U}?CNGry(Z@U%Y!NUX3~Zr?vDE;w8?L(%}y8OH zoSMm*VNQZHPQK^1Y6DC5cP;{HdxFUj`FLK%Jvwcz0b_^FC> zA*d4~m|D&27%Urx<3thj-|2X&>G0PJ2=xOYBNj6!ECihj+cXi}eVKp0GmwY3ZtLS- z2gFfg0=!euuA+Rvx~~qFL6pdmrUlQ8NQ=*s+j%x^uyyN!w~EtBGvz^`(D6?t39Vz! z9hP%78fhEfSLLi;KZ&n@axJA6_W2FM@{wh3y3fY@?>{|e8k1D6H6^S(sw#9OBS@sT zi1RW?UOaL9G?rrsyb%1Lfk_v`487aE`^d3i2tfQ4E|r)9W(1I(Y5ht^1WVrSRXTgN z=6l;OeKxnE z4mm+IZqhos@O-G*V_6+E`r__ zv@gsTLJYp>$>&^`v|LR;d%}R zhrEmv1dOMT^Fx1iQ2*(GJXwjwmnxm323rN`lXz4!ZWucY3YzdW5){blNCF9H67c$8 zQ;DKsD9GsEeLycjSD*S$56el<{4VV0#qX^iiPiL;o`+CoDvwX4a)X!zl~;}k8%70Y zxRNq>d^qFUjO?$q;C*9YcpTHNnPH{rp*K?!igO*s3UDV;{Dxhh$9749z9S^W$m$D^ z$zE3RKWq*CNNMW)3na+vY^d&5`W66iIG-c!t!S7}IJv;;gCak`5a!|+r z%bP4)#qJGOI%cxbWJ&QR{*R9mUNQc^+_0mjESA}N_J7>W>pynGe|T1gGa#0nM9d0; zv80jK^^O$w0T1)HN5{2CM`N6`q0AZT&LlA`iA>x*tw-u?X{v7e6@PoG5*n|BAdUg= zA|IuAC$IZ<{p=7PMye*)1L34Jx1x*Wy)>VX*E{(ySFO~@Y!%OWo*2;n5yVbyFGVd4 z5IuLGaOs@*ZFQ~2UlI|z+OFJ>P(*fI3SgDl^)3E-2NrP2eeLpPik(GJWTGmj)hed> z2$sM|mTGxL?F!1~Lz6A-ZY>!5oF&hzT(1B2?1DzNr{!SPWUO`TxNsI!)k{OIL>@|KF z; z)6oV=$PgiWIn#u^|HsMS&QDP0w*B8;%#1vYxGd&!^V+A%p=dRX9B z_9!Cr;}MotcFc#AEYk{Zy~;2!fr+}PcPSZSM$L~r{k>2^w7&t9rvWJcZYA{X|G%y} zqRf}`O~tQXB-N9A{+5pqrLgL|{Q=c8F?#o{{Q1FH%o2)|x~Z^$-eh~jkB^+~C5I29 zS|`dOz&8e0LPHBRT?X25D^L#n;QfG7O^?oy4_z%T)F^qG6(RR4@LtdOk2l)^5y^4T zt(Dwc0Stcx)Smqy-2#Z2Qp65r=qrWDFvjKlz|+vl|5Yj@rIFlYP9o|vtUWz=eFw2D z-PQzPs(!nFOzG$*Og%ZdwlPYT>${^$EEqK8eu+2y9??4WqBr3-L3L!V)1go>lZ)ew z;q}`-p1lmRL}~_PoDL4HBP>)YlC8Y;qq$dyTF2zy-d%_h;g8@F;s<64BXpQc2+n`> z{{)(35gdtGm5fTtXxHwuCmgDIdu!{ThcEdA6|Y2>d~FV>NKk4!s_oTNQ*ZD8Wg*(g z#dYZmbfE2waGQ;$Od6FwoqM!sTf%^=ix6VIxVg8t(-sm^%510y;qOUr(eSY%};u-q+UG+NB*_8_&@E09fCZlJ)=B13I zW_ty(KQGDE;aRoPaxbufNeYT!VS!8Ar@^c3lHsb_1E^<55z&`74K5BH1Obsb{L8=c zPUkcLRzAIT`giVbMbp1h{K>E)-#!pGu#Jr?>9d=GF_+d_XqG)95C588i&)vRw zj5;=aZEfjuLqenf_uy}@^cRLRUQl&|q8Wzt;)0Xb^K)Bc1iRYp$+KQzUVStiTD74| zVz&3nn~YOoJ6262otr*TKEJXeF;a>HBkoG3LbQ{POeQmbY2~rBeiIdVdoRx0P_K=` zVD1S?*Uf4&Q^`62RkZG$piyc9_#u?fy7IlHiPjxy$q~J#kGraM-KAOV00_P_kVn7|W^b*Nm2 zOK7><1`494hOyq9#0JPZKl~fh2J`Xe+*ZWCovOmONAVnS=oHf|#cp8Ph-&?q>(e^+ zU=CYDwNJKTH+n-*@tJ*(T2aDd)56LWI@Hr%i1`)y1cP^QuV&GBFXf3}CVptC9LpQT zz<@@+B5#q>jb)uhi`l#{ho1IAcVzh&1Vq!eFlN_tLQ8;5)C5+>4c0 z<+UcY|z8?^3G7v z-eOkKg5gM!c4CkeYh61wu=;Db3$^6IH${L*s#074_N6v6n3A6P8U3;Po}| znv|HM1=L;MfloStuW=L1WS{6I!ZJs!8K3M-XFufb8tVbp?4Zti|~ zAUZ|feT^PeTY!IT!mrM!SZY}J;i*ao_25Frd`Wfi)Vfcq563jsUx=dl3Pq-FLT@BH z=Gnz=C?~@(iax&$ARWU$k9+MLP%!ZJXC4b8P3#-q_hbO89~nR8QIHk6BywhwUOl2@ zc#)`|QF}YYjLH>cGb*05Ow7v2IRt{eBPI(qDqtfvA5^j&4Uc2ltfGLi$X489OE|ne z6XM-T`Y1h*0Yb(dsuwDIAWKBX3u#J|L`Hs=N|z?fM|wN;iA^`fRj2C};ZBZ3t0*g< zQl&<%GElTFxdRJdc`!^PlaVPO*ajDO&vx5&nY4?j_XE3$Jo!;Go60!|)Ss;)FRoU>urJ~P_3;B_-stKWv0 zN^PG@P9_*yw&c=zr}m*ludEp7=(fItQ<`@cvgIYzAVWx%n!c2T(SvB1-5;KJm}o&w7)ffOkB2*4~ob(=~sdG+#^)(-@G<=t#;Kt^R7>dG|VBXmeO^q966*YD2{vbRb>W#JEQeF znxFUUUT!lT&P&g6mSQNt+a7C^czX;eX_%$`;T}k<{Ya;glldrZ{?)ngK1F0^Qff6T zyh8#|$(}4OVKt*$V@HpKQh98Cn9n+YadX$iT}15mZGp9iMD)V`isa)g^dXsuhCNJDpNbOBc!N4kOWZ)M?*%@Mt27e!xCuW z(IAY|PoAfHr*Fb}cp{!zz@Uer)#))WLV)*wRop%+*rU5RTo^e}Ng91J15=CHCXKdK zTrXC3QccnNJ(;`W8+=vFGjdoeP?XaWjQ{9E5z>pS8a301xyKFr6-YE6d>`{9hRq$Dm8~z8E z-lK}MXg%cn{(Y6X&-(*WyaHD_a;ce(D@QEly1OF~1&#)RHkX?D&W%>_lj z4dN#b-`!OoalLt7dEUPjpsm;hbWUvCfj#fg5}2%@c6HTqwP%Z#CZH5l=QMF6zcVrr zkB4T??&iz-?`WhRO>`w*ioW?yeX7=9Sbbi){W zru5=V`s3lz)Lc5uIKZYE8jBX3ER@xE@{>)JdgQ|5E6tPVo@9j)rX4~8;X+mX)b{fQ z8t$GxPqK`$`BuzP!;`m{)c9hrIBuJV^Zg`!7~Q|0J|pOMFN9YnqFS~oc>b%4KE;0b z$rHB}2q)q6@d->S#!iZ7@B>?x>1QH<@=GFhGCx=OK*>+rHDs#vZc z&dFPn0wSCdtynXpItev#ZLeC_?R8l_F%g!8*MEv(yZcKK`FF3cKHJoGxkcnqS}h#C zorK2T=}E{kNV*+e0pea!S!i-R9wDL{mET40>2rPST}Xh9?ayjPF@`pG9<766}x9B6M!`^alJ^TzrczM)a>wgqU{_yGXo{?ps$?Av2N1^e8fjGYlu5r_M zQ48lE^ap971=S*+`qrrP9QB^#Q;d|OK66o6u>}re>8AhQ156oWwtrAHvw!=`0sQ$@ z|HZ0AG-s1I3sOwUBh-KW77_bW-R^^tF>2ul?v-u(&r^YLk-3^l0Mh`3jKh;UnU3qN zg7isIMCRpZ@wBnxLv4D~7hCZZkQ$mBg9U-EuRqSs%^bh<+v6pAbX$e?YnGBEe0pc5Y$;`(zk4r z++|d&tJ(;!s(emZbOEJZ?!aT|UR_u3C?rTo5YAZW|u)Fuq^! zR$%XdvUFe|&&+%ghnZ#qt#WI>;x+Tc4*gfd5lW`&6BE>I=zV$Z3LRmUc=-F`?4qTU z()gq5@-MX&>)%h1w>aw^0o@*$P*E?oDuv!MS)2c;3VLwG2(!q!}W-;BiD$WE9iZ zes|8?`6bCdc%*vI?zL8H?xJMu0n8>GB`$6Ia<~5mUj|@<&hGHw9%+}J&t^)J6x$+m z!*riu==&?OAUd1*W};-YU_CVTUjWK9bdaHnNO2fJLNYOYg^t}LN}&dSS5~Om>u__! z7Ylv84^<95%akP!iL}HcZ)iZTx=!LQU~APkEUl)dj!p!=t)yluMT&KRL*{l<^3_PV zd)>e!$tmaMh32^?(9Q_MB|E5iGq{klG72#31hL8e{n=Z|H(f^6^h*<0dZe0uaN*%^ zh0A9ldn(s3(0|1vvn05AjjwmQPi8{|zU(i5*YAfhWRZ}Ou_EGFVL*crR-lF1A1LZ% zmq(C3L_yW?Lq*;=LuF*(FykH@{&&C?ry$V{utRj9Jl9B5X{Od&VTA&oz3Ote%F#MH z4*^*sSQK-7v_u#QgOF>ZRBoJvt-t!ToZ2|{7@D|xJlbwvui8EE(NeN6ppI!vb**2y z>xqvlN|82bo0q=aCz!lIEaM%(S{)qG7O>!&rXeO86mm1C0NFO zM$NxWlKo{@ngjw#n2kxAdBdGx75)wys~En2ez?~=DL!_+!iP?howXtq`#e2`lbV zypt+#U&|NCjC(MmTF7Y;yT3iHQ88Uu1e7JozHjkx3iky6jVOZtkF8~F5bJb!xXp4WEag$h-_%n|n~|wa5TxcJ)LT0Y6j*r{=$aRsMpS7%6)Ebm zV#EuU9sB&v4Vtg7Z1pPAm}FpYOTV<~I^<&>YBUHMOjKzDA8)H~E?%V13KcjB;i`hv z2W>&+Nlz?M0mM3Q$`Qm#A9W8Tzxi#|sd=s0{AvxJoy2~pVC|@lC;ja!-sWM$n)&h0 z)8CO;hQI#QU3`}Cvy|**wN%B9G5pTrg<-9m+q3HGuKgHD4c;&)o zk3OCl{$0z(uoiYbo}qudaxrn;16`J#U=#r$YmNh~8YiK^J2y(xKuEB!Fa#LTL6&iu zqi5Nvm_iLr+Ozk?>BbOg%qV{KQX-SwX%b*nc_dMQ zIeUc>?@g}5t(dZGYTj36h!IEV&kmrTWyY}>W=X|Xz6c7umpI_^y;QPJdK-azNt=O=7J4=5b8uQSE?kb74KG9!Zl`<|d`tgK+ zw3_sAkv`+cX@yS=;rytR6GU1*;&w+*#aXuM`#AiD;k}TzA9=JgKF{tcU&8LY`{igG zJF2N>2yR~-Mx3(6hO!%c7&Vb{n3z(m0}7`9VdXA3mc$Gqz2_f?sx_9~>3HCs0EmAY zmKeGRQTl+r(bcq9QTQq0_sqsTv^WH@Qy+E3!tGnKkJJ7!`@>za;FN`_xrM6|wO-d; z{>1sIqJ5EO^yA%`3H$WUz98m9(ZhPa$!S#<-tYAqE3>>ymQ3$0wbR;mO%yMn2^R}| zV`k^sw=ZtsYSk{(e|L;q30`|@bT!Y_1ZEj+NaMyBEAy#nWq zjh&fEWeUpif!Fe)x{M``x{Dq(;46xlSB_|kXIIUSla)fxK|F_Uf95}%goa{#aoT^( zisOt`TYCq}x8@Uk!W&=5378`Wr3MCW%LxSOU*%Rzxh5ynwgUZ6f;t3c8e*THr10s8 z^ZQ(_bq{%1ALTP}9=<2KHQ_u>KD;KLu^w(oz8T#jd)L}lo>E{i&1>FWL7#uA{h7o7 zcu+gg#E?y6>xz@_qw!B~p1&67R>$6%gH}o>uRFzg?vXFcg}4Rnr2@;YKYj@QoQ>!kud0X;hcr){Yt`>lE)GbbOU9(!^5N5M5+5&s z*J_6YKhY|3m@~TrrtdhFN+uYlPMSx( zZk!2~H5Z|V*Jfet^KC~Wvl-VNf(>PNu0%yqJOu+%qDQbtVyHkp-4=&u*Wf4L=|5&i z3ZgV7=2cXn`?aSzDn3a^-YTC2KhH9XOydW zgLl4mr}}kS!)t35?-7y4SF*ud{04T@VA=+B^D2NiOdR~~032(}ZhNHbIn9z$s0({c z$326@S#-3eIEOa`S?tUz7ARU5@0*UBxL5qm4wUEnBfKzmCASlHzxxAck+;=lr}}Yy zf}7D7vkN>{LY(ip!~13%bB=_oo|A!w259Y~?zD$^m`xSc7r8B2?sZ+)X|1THgtikW zyBF_fWV>@P{3|Wgl(&!S?%gPD^eHv-via-?8*91$xnTW|D)jlQoy<--SNEfQ^P#7e z&;8ZE^vIR$6ole@Li@?#Ihd7m^u^<31;2OModDg8vNW`#Pc zn%oD^%kG|A{uOzOZ#g+Jv_K6svsT5$x!=3Ee1lNS0cphsr4c8Ls7s9H;j#Uai?`*P z?QgxvjO>x;pKk9`PpCR#bLWdOkHj7=ex3in0F6L$zlw_mr)e)4rS~)(n@b|ZBj;=I zXf&-B)|Vi`cgzmqsqJ|!3ntR=9ucG9A0A2UEvw1EHSCFyQp zkZYPYZ-xHgB)QL)1$m)*Ol%K$V(}UbV+%*g1d4fJAP@1Q*e?5c!}DiW`c{x~t!e2Xy2g?IG?yaLm0|a^e=I_pn!vL1 z)!V~{&+39f+_aARjtN^DlkkCvX?y;x4|%IY%DJpK=92x|OB~Q|-uYFO1H)>#`Sy;E zSO>Pwlk9@!SQXYF-?Rr3%}XkeM)Q{_drV(b7n1)*FR6i2(!-o${n_;}IQdQ&cY*4@ zC)COjuTy}hdt{x(JzbK2C6aC!9U~FPx+a%c!tTVC!K3Q(V1UiE2LYsU?GI63!D00M zRs)k*a+MveliB``Bls*hmK}@znT%;AonrZ!Y#6+MCKe`xjpJY#ma7c`tZ3?*OaGs~ z!F#Oi8VSrkMvR+CTjn8n&#<|`Tw6azBdKf6f7=#`hx@5OH4Pg_;rVbv+O^WOye0wd zv;UeA?=tSdKemGc&wZ~6rSDo`j2jSY8a&nu@S)*ZAA@8c0*_rss;9}Q{~I6KQ|8$o z#ASV@pI})T`Sws3zQj}-7O9rj80MFr)?JGb#cgSK%of1KKspR3K^#K|^ZwK%T6U5? z<{pPZ06&q4)3ldD^vpj-8|Hy(+DF9j3yRfv@FX&y0(`x>$%=~A>1?Pe!~&0Vh{P7f<0z{ z!#aa6uz-E7C7@|~%_F&BR2Uso?pVEV4iye+7^Wm~jT$z#EHuno=2EZ^<$zm1xG&*| z*)awAiq^%-^pHTW4Ic9^;}22C$Fh04pSMVT#W=Oavz4jzsoYY26?^+1p?gNSEhJMh z7sdhLKP97H*4g-M_S)+iuxWgZzO;_N)Q29$F{A!5Y}gkDjgvzDT1)t6uGgT&(tR*l zMhC*gmMNrK7$y8PjLS;|*Mz_it)AOPIi>M1!!*9fgL^hC8`3nsm)C9Jg67bUy`g@8 zhlvyWVk~VOt3l>8Y1$9zhPCe)7UqMUXk9}QwP|?jhmx@1*$v%E+0&!?n33?Q`81v) z!R)LJb62n00no7MU;O;^u?!OfV#9Ub!CY9rrZ4_ri|b2gZu8<|nm+~y&FsM#x7M>x z(3Ulz#f%$ zJt;VdAwm!mkV-;Qb#E6HC6w-~Vbf~`kK z2_L*VxBH{5(ZLjBTKSnj=ljAJiM4X03Nf4N+%+!8Uapa}zh>uKh=AT*ZOd;mN|P^d z>F^-CxBD`<*O=9Vl!liN0UDMFud!bkd~6HV>byGk;#CJo!W|)(T#^GGU(g_$)M29S z#AFO8YH^wduT5tC#AJ?YSYMqj3}zGyeW>-eQgJTF%ERhlR~Q?{k+gmLGAzV$a6#5J zRI*l%AX0J?R5X?eey@@j)`MBK?V^vhg{Po6xTe6eQjmioZBPfwIa6Z%Bv*4P%gM=- z0~(xh#Q3g6Tgup?TL*})TKY*W5#^#*Y!ET-{?S%vG{9Zf8UVlJ!0zC>)(dv}#w%Z6 z5MMQWdJ3S(v|EE08{8y^9?$ZgxX7aat~fAhDz!>D3xkw^y@Y(*D|tm^po zj&`p|`wugp>4i!Wmbl9Xlc!g}QuSp~UKQp6LexO7wRz&j3VTE^73)drxj3sJ!Hbh$|>TDH}qxw$x~iz>uxIiEgLmE}W`+Ug1D zvY2=ZrWUZ{4v6TE3rmo0F&yf(uSmTb@=ePV`fIPTiuiY1TOSxTsbG67J$6#G7?)8R z@K|=OD|7SO>{<+y7oN-W1(;&5JgXNv{DzNZm$%I^7FN18gRNrp8Z(SXnAdR8V`8~6 zaqKvzC6#6Eiu%E2-;UA`Pr!n)v|Ab#aiA~l80LkbX3GH%@rUBhRi%w+T$?Yh#?ZCw zH=djU9xv=T2foo}V0cW!w2@k1ee7OW+W?r*YS?=00!AE;>IhZ-PoW`y8@%6d@sZ7U z7ez%?VDcxSJ0rI|n_sloHQMc_P0H0s;~E#N#r?5Q*+5@E8wE(smA(lF-qC3P-@HSO zXGrAjEI&^5)_4`g@wkpPlj?CXJoVhzKlM|IPbWv9Xzy5$Wux6d{n-b)jKS!Hp`K8ie zq4`q7m}j)Z+17k97X6Cb!G@Ki4`O(Fl(ywP<0>@ud^eOrG=UMCM`Wiv* zGhEGE7l6fUVm!u$Y7uO0s0$1jV+?9rZY#Yy#doKAY&w@j;d3nJ%BP23#eBN?YdF?@ zX1)PT*QC}}jj9jeX$3o+((#ztjeV<2mtb@4v~3zX#=qa;06p%$`y4|!EJxVeKz5I$ zc~&n~qLr_Kg+-%m#c68L&>Ds>_`|AbUc<+=YhlQ+&i|+-)oR=^K&i68Ncf$l&J zM?nush6B@pb3x4qE*1jVUVQv`7=Nd$qG+&zjnl&w5+J`)DBcf?#xws4Y zWnG;E5Vs9`3_-TbKt%>EvqI?IjrExdc%)z$DrO#21>gA)4WmW%u5E``?Lh{K=^Ey~ z&n`9=D>JLKh0QSiSO(YBfP(e(RO9@yY}hZp;ZcfMhL&fahf>gwW2b@_vi!y=8dV2} zVbr}d5=VCNZ5k#B>M%YeK*2Tnzx2iTv}xKx{FuE4Hg~@q0JC)Ae+$vlm;k^BGES-X zhr!Iqxv|l;fEaZnFhk~sdaN!!lrStlR#)Fv*KomjEHe!Ua?6WGFL?khEEizQgF&}< z<|VIaC+lJRwf-{Z*JE>lW!l3qFRVRwAn}-%IpA6m*R-xI4(+8?VX$cw%@^0}Fgd1> zXV|pjw=DzmXWl?vlSi1>0*4)1 zsCfG%eM>%tlkoq?9=fOPQOwxnYVu)DETm@id`w6q#_k70|?+ra^`YxHPGy2ILGZ(`*dFDw^6(`WehO;)<7E*k^q zdq#XG1_%3p6G;`{CIaEUnTp=epKoMQ7PK#iENemmeJrHKdpP^~8+h;IJl-td<|I8g zabmhNyP|^Dw0z%2w_zY1yFyt;mz=~Z<3ZK2bj=rK4og zcxe6D8MY;`W=Vs?Snf{j^=D3bbIYAeRCkZ<^?5_NS)#m^d|H3jwIlpq!kmYq*7fvU z7%Vmp0qipx*XY2)_|QOkd#ElshJ}D&*p_wpY(-VwnXG?v5w);D5x0Hg_gI&V(#*B? zF%iCEtJx8!$dMyb49DO>G=_&6jM|EO81&?k1n3HiwAyra5rC4?g zg4eaUg8dkm$^RgiRR1UOHP5kgJ>&rB7?xS&*sAPDn|1PmBqGrOjVw2!1DOaCH!5&! z6HNOjVTWSQiLlet;dDPPx>S~8=G9AP5mmU^c=Ih5*`n#h!ws9WUk08vr8Kvzh_6k4 zdo&f_99%kfVgy8Zbf0^5c`2D7dI}Z2t z4nwuG-#dlapqd4QMo5#-_Bif!gE(%Y{_~h)7~8DJAPei_Mex2w>FIL_xAV|f#zQNJ zkH6XNuV4+1bH$$^)m(-{c>C|b=+K|gHnVxOu*%trXKd}BkREM8fj?k#<9WM&8yWlGSx?xiUXt!wwZJ+aI~2d?46idBV&Cx*8dS(_kRaE_$=k9tO^` zb=%@FO`SMmb0P5wm^w1e>>F)4FB|Ik{|jRMnA_&BjAKk=PfesjW$#g>JL4gH>)$6+ zz#wXjXwUFjD@GHOzRBdP)~#E7%luIHu4j@%MHRTWyN(RWw0VQSGmQn9I(WHxh6uwM ze7@5e1~VDIYZ;o#YcSv1WAvJ~vHv`9xex7-1)Ow-7AkkVo!r1{4@NSeV{x}!*cCjA z@)-iy@#tpccE zR27VcDz$3WsxPZn6@aZ;w1rNzwX0UGS>WYf2n$v%SQbozth;8-nwl%qb9)iHhmii%UQ!J>g0N~L`?d1A$Ff7ccYHWwQ;(|y; z94N#H5NP6WMO6r}>E(IDTTD53)4Q3z3aSxd%;$OY*#7%cs*H!@{#bXPC^fR7(43rS z{%8Jxk`V5v{QLHteBwu8P|8GP_a70dfSw#AvILWy(X1$_FpOtZ4bFG9pRtEVGWUc4+3_wsrM*IHvvFX-K+Oq@q?WWlDmIDypigsB{+> zDlCv$F$kdobTG{wh7i(72D&3Qj6n#-ZY4K2PDot_Ypsaf=n!mC5H2(otsz8GCa2Gg zel27Q6bV#cHESgLkL^qQ@YPw<<=tPRJrI%v2Y(I>%;F^`_eX&-O>I2L6B9 z@zJ$WP?pMBKUm(G+kE=eRxO|V<2z1rORxnwWf5T(Qap`Qj;qo4MLB!gqJ-!4r^aTP zq7O;a=6zXdqpQ>Ej1FRos85y+L!ToPgzn9`N382C?=~tbNU9v=<;gDLA z!O8YT&4cBjQDX`D5NMoj!35L6F5lybc?mKKD9Js;S-5>+nZ><|GOQF-0TZJC8zuP5 zV4|{rgutnfGag7`hzt~93LITS0;aiB@cNRdydlC&{IFWi-dt-!^8IJ|*lA=zMIf`E z4rExV7kkhP)ZHS$t!CEmI+|lYz)GZ4RTKxbKEN{>!M<=+Mdh)kX(}XCSfDxcPXk(x zo(dc5jf(#l`T|KiKUJXEpId4ySr_d?s4goWeIQ^MpH|A4TNb3L+;<<44AT7Zl<$vw zg5FsSWL1kI#X&Py1?V(_n12_z@5$~svMPd{nK_U8!=(h+N+${8hA(w0iv1svW+51z z9iI|mrB5$#*^Cpgsc*-OOsp)><_#{4&7raC8yIBH+>AGS52^kcwB43bejf~&!0HCU zI(k}Rhp?f5V+2+y1_&l$gvJP_{C&4~<$L&?Feyn+gX@Z6(L?>T#O!4hV!%k7ooh@f z;gb`~nR37g$>cFJFdef`cmF6Z9weNFbnxTuE^VbENqDi9Kv zK8edw6Zf{APM0hIPm*(Re)*xxMRtj9<1LZe%<=7n5J5dggH^?PvRdN^)9z@ddqbzr zbf|5yv5Y|2lBs3mu%*-fXVo4~dsLG7RRc2K}$t03V zB$sng>akT&p=h}z!YbAxDivy`@S$!=B|@=tC87$dw5o-YNh%hM67W98rs}gQp=6Ru zg}H)%%%AN&*`0k00662063h?_b&T~6O4=oM_V6v{`D>)X9jKQpVkhRT7Ah%tl;7ZB zw%QPi!k8k?w`e$4#0?e=I2s1hDGQ@5J?IVy09r*cycmQ<0MS(hS_>5`MfJ%8*&z`P z7^FfWh(Z!j(GbEab0~_!^-duc#g9CsRfMeQ76BG2ou;Bj#4_|tH?cFzYHltN--HcgXE(h_OXbgG@C zL5f*xIS={3m{m{Gv|J<+wHgo-)7Hq$<*oGPqn7N1xv^(%D7j3CfFg(vuhpd+aOC`v zWAyUkY=1a0FRjunekXc3ZS-{fW>7&~3*7FG@}%8&{2YeUM9gS~5bd`Y;=y(Mk2BGa ziEwjt_uG}g$@6ZA;NJWHS1czGjNr(N@emjR;d&x~aOiM(%_T>|@VO+lfM_g>a$s>* z34%~VX#-%IM9M?Ca%~Ubz25m+TFu;LKP$@F?-ns!Xa;ya4e-4h&q~y?ElL_Ix7rW6 z^FYHJ$u0=l*Z8;p;Ak_1!*m zJ@RQkb@nq_8LQJOsrL{#ep8oY=h#beGiXMy^ zFHzb9+RA(a-?b$%C&}U2?0`W4In`HN)=eLB0Q1h!4lqv05b#TE9WZP8gHuQ)i3QmV zkn|&TFoSi=4g7t;cBQ0(m8(_H)Pb;>mAwXl_5%23^-YIMq7k9>*Gbf@EFc6RMN@_- zSO@qqgK-8Kfr16XYV-{O(5wsq#|*H}43NkHiw56BFafgutTe*%&?&CHK6=d}Z00i) zV=fM->8U8AyM~_AXS3MCY>@U6+wF#a$72hz!-uwsJrz>|3j%I8AEp$#SjGgMron^$ z=9CM4M16|KpE&T2lcCP(e!_K3(?CfJ zML>c`6EwI^jM>;_D)<-$*0ndZkUDtrGDvvE(?(XR8eKHf`cSOaZxYyO`Yj%!QqYc< zB@p!nR0#W`fDs!WoO5aZJQEz3M6K8T;_myo z`E#{1-=5hKN<`{DkTI876p$-UWk_&aQ#2G;^ROT*EH*Fsy>?T{}0`i@?| ztp1G~tMfVCXz!jcby8lo*1u#MlEjQf(&SV!s$To7-&Ds4``X?)yQdjl z`{1*Fp=X!+m!>$*Ov3KJ)xUR6r{nF~?L_D?phR(CY@P1kkazIY9r+E7CeQZkMYNY( z-K^E}oRPNMX>~6LgFf`78soisPm2o^g4o^g@*=VFt!KR2j3K!*-h`Uo2FtaC)~7rE zxxOS-xsg{|{EnQ{!;$zy`0HOj-mB~8E!B<+C(3oE7^E*kQFpPuUE-B+uxqfm%INhz zNgmF9towSlQdYlL(fjTrPF2f#e`Fq#FYd7=E`PdKxNdWBdn+~%Rpi0;$+;~R9aj#Z zrzdsqIU7sm`QH7K7;EXjIxs(NzmZ0hfs;KBU6v#yP5 zvN`yU>vFI3C%pjG$B(mRm%G&kX3?pY6}b~&UA-kwUe6I>>0%)(jp@p}Y3pJ0`@Px@ zx3gzqW8z&*IY8U;<$4*U;~>zA0RNlD}zO?B8I-mvMKWENiXISgv=ua_37QS%?3;SA1o4e$CasQLNU<5atIe zl#WDA?*hb7zyeDME`6*$fW-V^mHcM3T%c3`qn_K&@kV6 z29VHN8~Xn3D~B0|o1k<2LsK*l>2h2@q11mn{H=xUh?$FR-~f4uB`$=I~N`>?seWA2}ggE3Y0uX36mE@LVS$6}FX2#5eTg5H3(|W6K$D6c=V(+SzNFbtN4|hAK{hE1W@=D2$T8FMzS+fDp8~RIP zvPG#|`*`zLoIclQR*THhbadcw5ZJd`R#E8eu%l>rynFL49~us?m94X{YTXay_@Q^F zvYs7lOrKw(ZTT=B(ur^CZnd0(nc2|#ON~pO?%-p|OW8iOFurcuDi_)*8dT=mzdx>T z`9oSdzop6~w^yINnofLjNA~PiR#mLrEzPUPGP2Mr$v-AQ+5E#FB=&4xXGRjxVOYLFCD)6?drmeLk=YRcUC-;eF`8a8s@rYk?*Kkt9( zTS6Z8K~lX_Ivtfo)oGVUp!t~4eq~S3JM-x46BmEJ1;Ef?dhP<8vp+RyKUK1#Be3Di zXRM@3n=pDqrTg_={QG_`t(VK?=3V$3yUdHhEKnasgoAja_?c^UVX;eDNeeK z`1X<>@AtRa9i2>iyz+m3Y&HxKa64bU>XGJXF;n^s3ByQdyOTaHB(D@i!%x-_K8A90 zCVyM5Yw*QR6{EI-caQ#w|CqU^d_yTFQXD$xsA^_}_-7>~2gADFeyJD32%52`!p2NAkNbf5e^!Zh7w(AX1cM!pD5% z>$j9fUZ+N={_IR2UTih=>7|;88F* zbQo4`^5GqNUTEHY89gam>WNDpn~wb?sZ%%*uCg?6EKbfg+m)&@BF8pHH%#D^Ws*vz z1y*0>@^rqZ(_@*p-XQ7%kM)sn<3E=Cx6m4=$+P-@i8dk>s#H1n!Z4{-6+ybGCKRk- zVo1ptCKQ!YB?brpLHNZvDZn2F_FAK=s@tXMJX?Hv17Tuh3W6Ay$cjPo!Z>r>h~&}w z4}`I=YJS?yWsgqC<8@MkkR4+4aUjQ54h&j)C&NY^P$z>}M&pPfzh--eg9t$3EUy3r z!ypn9+q&dUgop50AEtuH3KMN($8EwN>w+aad+#nKc_I51@I!V(gTHu6aWo&bWxkuv zaB7}FZR06{zty3@;t%jzNNv|f6@mPf-SjW9rJz-a_lu`>^}-lgcq7C=pe zBLWH|j1811qC?}VZ+3W!k9X19EOshtLYxAsXKABBm+7bVF50_(Ng{}>Q599T!|3~A z)lC|I>4`H7&|L5BXAW0AS_teGZ0WYut6-vvC=eh(0rhiVz*Xd7oaMb6)ElKlU$KLS z(~ygriZWxi@7vdGHR`lKeEfwPpAd4E(ZYAQ98=*Yvp65(DFC^U-Wp)gAHZFC48WQW z*P!TNQiZ`#nF9fzOb=m55TFNxEG~i?^a1c3T|l5Yh0t+I2P85=%9J4zd^g>KdYJ&< z6esAkx+!OZcrbWiE%=#(x#7LJ!BCCSPtdnfBCXm1y5w|B`<*Z2a}xb|3|?)^DLQ>S&c3Q!*$npJDy^{VgAP`t7(u)x6=% zh$JD1M#)&iH9sS6%QS5eA@_PP{^^=G*YT}B<7w8*cedM0R@T_O|mw<8Ty^S zdA{uZ*G^Y1)+rru-(jo@HDP<_UtpH+qokJ zePO$3DLVLhqX^7i>_|00A@H&%$MHrhs%V2Yk9^Q;2Y~W5@tW9xZ0$OGwtJ%M_}?4P zN@QGh-X^Z4PC%nrwO)RA_|H3u0ahS#;r4Mf3S77gId0}pn$~BzNcl?!eqBBQe%?ot z9yt|TtD*SirohDP68zgPZGOMv{*28yx#upYl;taP#Z=ZpU=*(UwD;rQEj2Z$aV*tW zgE!nZvwFO+&rW40r4*%c+u>2L>x^w*c%Mcyegtj>)8}CHC3M3C9G=G~CpoGm)3#Kj ze8oq~BGtyPiP+>HmW^4aPL1bRZ+Et@Yb}|bq{-V=uJ^$v?qn|YAst`sHQ20r#%8rRe`ojlOH#@6Y~kds46bCrIP4#)BD>QGDgVB%H}BnnNj&91 zDMw0sJSkk}lX!~?mB#XdzEkaWM@D6 z!Uym3K6*AKP9&$&QaF5dh6}Q{T3smVuahU+Egz-PM!r_a`L3PgAL)MCJU83O`Pff$ z{&<+Jrhu^Nxzi8+LJqa}ahvz{|1-`<#-g)_dcxpAkQdmbFHX}n88_f{8U-R4{`=%V+w5w<$MbO`7kD`L-p7Y;_5z*cRnJqmSEJW8SiSG(y}iZ# zmYg|!$W-@t1)wfz{0+JOz6CIFNlG=wN+xk-lPBR-Rep++zeIuMs}!cAGXsJb`UIsXXI6&K@aCGzS7A1OKqgNC59~`OKn7F zl%A~*A^624vF#EJ1~$ZbJd9JCL4pWCe?bM2k6`Tk-L|$r*I$CrhD@g?yx5o8IYDSjJ7gZ$TCQ&v65#Vc7pT< zKw+mmfA)OO`}+Lv{Dlo~3rL=!Tn8zKAK(YjD30N)2z)#eA5G=s`I?v%@BhZ@-_ZT| zbw5&T1!&C1T(PE{A%d~C2)woYzn$@)%6valDfK&R5%pjoVf7$G*%_gU`k)!!%=Sk5 zvLpzLLr9?jAV4DjWIaDY?ZMdcC&KfY>fe^^1_dmGpb|VX%B%tZnggSY(6PJJB*376 zZ{W%#e(IMfN|(bDNni*iLa*`t-_iWPVd_x@8*l@rYdcvYmVIRgn(}#97qO22f%_rK=AME>z$p3 z4tC*ntW0gK#<+AC7WDq(t@>a<$nr0zVc`}6ZPlbjpdgT=n8^PZ?7WQU3vh&FZ*0)3 zWq?6-3jy40ARc+*_x0^N>7RH7PQnrpAYi2!G6n-dLW!iXy{3H@feUn2byMtx5a3`% z$4W);Yq}W9P)BqZfp<|@31@4{pi6{WczB_Kb$j0TC6Q`{!DLXk1M8C7p^!6s)1|?} z0wgk^mViA6Gilg)7K_N`lMN1yYaT(rAVTnKV}h7vN1)%1AaR8ckDtc=78+y)3DM9Z zqsZvkIlG^fsH8>XgQ&cYcT1w&x8xfe^Xp~Xe%K08DBMISo{)d9d!ke#dhRI?llp-_gG> zr>D?u=5rHMeddm5F%$QC--D>856aMJPSb9OeH{WN$T(n`m~oqb2JNBf`Tl2*GlPDc zFUo9CUzACHoZ}5mW~P26HGyr^r|Lg%wx+ueZA|Z{ncgB&XuvVspf+Sbd4g-s@v-wm z#?{78TEj2+|I2~9!})Z%o9@czYuR~NIt%^)F}vDWW~@Q5}hPcjgGZ%6Yndqfa_&4i6=zpUeDM>N)LfdoK(LeGZs)NC6Iq zMF4;%0tp&J1-DuVnwsh@P-kdA+bDS5%)aS0eqUlguy5M>X(Arxsi%sISok*9`Z&Bc zS`1rVcsn}0Ra+Xa|5IK_oQ{Q|&YG@_mVGNEk{|A z0yv?%d>{bWDG$Mau>L?>8TD`5=7LPgy_~Hq|ALn&QIqq@dA=M@F|H}uhFIA$$wJX2 zjYY}ePLFvkETcyiECmXUNNFgrP)=l3n$sAn@r{AXS)eL+#Wgl=VkImmSY$s&6WT0{ zv$bZTf=$;t9bD;U)Z)B3WKE0`N^l|*nO0poi znr9Xih#((7={_YBKFRPzWce!} z(^V~Nw>zl}tgg3&{k<;h-PD?zQ0@MYK^>~NpW>->Y2GHgms5o%kg7V_v>Deo`d_M6{ zFA2bZ_n-NK^lHCd1x3`x9^`b+v0m`+mVi$*RB3*@igvh977fIb&K zi>!M!jXX^Yk3dP3 z7rd>^h;vU|7K_j5JZ{H*(UnekC|b@iyeKh(Xa{ZuRQ z>VDdpzm7M@8|CtFQc}o%7{vptmQUu;Q2^k(!wmCV7J~P|f|%F3!*G<=+iXZ^8W13e zMOKP_0S}=8h!gefIKZ-aS!5V|_Abq0uFYri+JeMa^`G2VIx?jH!r1@gYsst;Q~q?S z#r_*aQ}Sh`{1S6jK+X$?85(Pd`rFS2s2DKw{QpJ}cE~~9eHR#cvPl;u)}0UfJL`V0 z+3lLvu5ycciG@a(IK0k~(UUb+Y%r?BH-}8~w_2e;7J0YRv1>UzKmIhuQ2&P%T1*8} zx^?2^5=-!^#-mpNM~xp3rt9nVPVUfuaoU9n9v5{Se-rtiqc8#9!WHn6wg1vfP$fbA zO_3Ifu}u3(^3|md6ayFoVbGX*i>sTNft`!rll#E07svhA!a+z~NWKw1--}yNQ4q3ROhT23nFS5F;c2kRVspLAOj#ViGu(* zixgo?8uukusmWKl688(+@_gPxL0xK9uuAPwf(n0TDJq3F4fc@!-InACnluf9Yk5ch zdc1$#WHpnKafg}sU8SJIjQ=%tSqj5rgI8o7j1DTru#e8<<&c4(xx4p~sAVUtnUCR6 z>+cPgblmbu0%P(>9pU#@;WAGB|6noYe1qRr3v!yX5QMO#)!?0QZVQ+&m7K%Vhn+GO z5+2)H?*DwJadG3jf5z>9-RU0cUx%o_aEKyB|`u&4=Z2Zt@^!%w`6s1S_-V&^- z$aqX|q`iWtr`&C;uV}znD5d7lPGy&>kNSM>m0Vp~S)5tw>ga-`>51XNYptnsCvPr4jh0bX@;HUHtrH&Tk>{~+b){+T z^k*q^FG?J}(lu9GNr4MTRCut%8n38rJbxUfC2{k3*4{QzLf*rm%`V|C_&%?;^&mNwSnY~zdRWHWx zdcrzRI`KmFcaPsp2?F9omF3lz(UYt&4K!SDMWN7Be-etJjI=FA>Xh3*>4 zZ&mqI(T|~^4$-h%i-qi-`J92w-Xp)7EbDvY^qujW-~W)&Ij)O1_KvkaVar-A9ui-N zKJWPPb@!s#?Vv;l$Czzcnnw79_Q&t}{6rBk7Qdrb^6fRkWD_ryzi^)C1xyDFWnAv2 zjc1QWI~|Rq3Z2-R?yoHJSr4>5gE5UVPp|fO7}TfeIO|!TO|M@)ka?K9XP{};Xxo5e zZxNZ|(DLzLzg_#fXr9R{BzwwRfBi2{T0B~==-Cn8m2h?-sX6_#_pMK7Bt{(9!&rICmCj3tz78U$kHUwia-jn~xS! zw(p$V*P%$0v-c$(#nikxE$ldLKPEPBLt6z(hDRuFE(d6#MI+3q&hJsqTZi{%=g;jPmfoBvV=-}@KSg`yNxoXk zagR;Q-}L7z;;db&=W#Zi%g@J;dnm?!vw=-pj_FvYy8DgvE98Llvt{Q^Grl*p?iuz? zC%%tY*ElY5ydtVGnfOvxOB>wh7;5Lv8|O>2EqlE|*YxYVs58>A3vah|I?2`xTI2~l zMaL~Zr7nY2Mm8~9`Q`H6j=x{8BNSHdGXJipiCu;5O^~@jRJ8CPKO+?2QN_YEc)q=# zj`OwlpXz+tW6t!e`OuIn6x?3XiNEJ*!CqY#wSUOySXap4n1lAL$9O*;3(My#gU=(Mo+;M&C6sfl2~45D(se-+NHj#IVOOmu<9RqBD7vKkdnw7F@sq zNQgv%5D#|d3$@t%wnj>P8q9Au2~BZ}G(RLiOc^O-Di*VT*Znovi)9AV+`k5R`HO>- z(K<8vwb$C>{;9?F6a1K!NN*iih`FSAbM}mpER2l@yBS^2mzvdck?ge{pnQ?F`d2vv z-S+ZRS$uLWIk;A-x|@Fz@9y^z(iT=aHF8Ns%H!klKx$U;{1cD$=?q+ z@9Gg!cON|er_tN;^T}Ubw_V6xT;zPl9p&Xi?`*acG) zT;DI1P}7$UoiJZAm&rHW_4j(1m6v;y{C+tZ8`xix-qND|f9APMjJZa&x>{9&$lK2v z@c2#UL0;bCr(OIjAnEWH7xdUNe=CSR4MNq#2WL|Mk)Z~%+Ke76F ziY_6DoWMdS>!xP`EmJ};irT~2VX}6Xio;0$SZFF_IP=))xeP3~JAqWZ?8u5X1_(NJ zAyPsiKIu^-SwSKg#v(}s=T!T=nv!KCl42o1szMO%RuV!gzj0DY2#Qohi2l!4&wi}; zIwX@W+t%eI2E;5ilFAY~$qA4m3W&vz`En5e z7skYyB4~{CXn~k2%8;^2oWLvqv?{8J{i`4pl4PU;l0|}PkP1mMgbM&GNCPB_E7rnK z>dF%~SXH%GLAzBFijh*PkRv3(0Wd6L77&4CCZ&)Im!3B^8Nf`;N zQAAksjFK^oB(f$)!ZRf8%;7W1i)CA7X;?-i85oFSL1c%ckXZ&0TXU2cB+YSZ(xj9a zIZWh<453=;rG+Z2kxHs!+QCXvmWf1!K`BZ=5rQzH1VoW6MJokTr7k#1z{ysXZ7SP0 zd(6yEwR zDM*yDDr5WCV-N7cVYq)D*D~aGnjSZZ5BmcDWxfrE4hTW^BLPOopkTs>fCZBJ_)l&u zulMi0o>|ISV#uLal&Y$>+iI_psx_*y1VmL#Jw|*6U-Er?M}8Gi5J6c#^-n&p%YTQl zi{C1$s;ogqC@6xes;a6Z6XAZ7TFpAvW@XTsnURAA3>YvBG=`c=QkcKr%(q{uWwj;P za`Y)GH7O}1l3AIUl1noqGZsc>ER4)q844gkh!Ra*Ycn%5Gc`4)Yg(D6Yg(D6YbBa> zs-)4P>sH*%%ri3EnVFfHgK%zUWi+BHs)#>VwYJ-Bw%i;`mo34Kv$_O3d3ET4>d1MF z^Y-Y)Q4v+=(VcyHZekKiB~+9os**``+p4Ons;a7zP@<_JQY;0Bpa0#kup3JOv;bHP zQqrzil1cs{{tv6+6__rtDI;X(@)w?GmeQ8!s&G&sK} zWRaLIh7y7Lxr`f6oJu%$_?CHyP<%gqz#I2SZy`OCCNrRepOc^GzS-S*v~~|Otv;gN z6!WV`*1AnSn`o?VD0l(3F9}_!pgzvW5T4x#$Df}+#?H3SX2LXiRC*$%tC`i<*C*<= z#ki@#9*c2wLW@xbfSFMrm)A5IRL=fPR>;4Rhc+^op+xXf$CfVg~9|jWJsS?VYaL6d8QtYg>;v+VG|*qc{6kh!TJiE^S#uwkV>uYPmrp|G50}? z%|BXyi_ul*`fBcoQ1~qlPBY&*i^N@=9a;>0DBa7Yn2V?ELN+HUmGN;B_D)J+Co^rr*Q3Ysqz`$d~#z*`uQ*WRW<@!8d{Ty$8%0 ziAe%iF-UMytw0Bq1t(AMsO@EKU)aF&wzS=CLbmndgC1~gW&LadH3RMG5?#_t;-(~6tc~4mDdYJq% z^KBbZO99%IP|RHkgZk7S3Dt3MtEp=i%(n#3c8}@Xjf9ql;AD`mFAOd*aJh| zgnJtuAIA^isQDt2# z4Xv)Hrq{hPPNcLsojbheyuY_2W3$)=v)Ty;???nC|6y zIu0@Eo%Fj#@j~V)4r?gh*%+pEb{YD;;YA=hFZ!XFiPM(gM{CbPqNS{$7bk)V^a%8T zWGpxqEe2K&s-UVfRj1?kv@KCIOySR|Z2s){ggI&-5J~JTYt=~zoTtyyoOiBykYtjt z8>4fLyz>M3Y}2LqUdKDKZ^W*jpou!j9-gy&sw|&g#2mpqj#j>Qjw&i>Ofm;CM){X0 z#dy`BA)5~PaTzVN`{9-y66~VqK`6`|2~~W{tyyp|89Xvkp#^4s{U&%)hSMJ8XgI1&3PL#Yd zTwf!>PU!De-~j>Vd$7Yx66lHg%q1?y0ytQ5D(`#fVa5(3TzN1^18gMwzZMXg&18sy zKXwskopg6JJk9bYA9yQLf~r9vj>Bc{>8K@cE58C4((MQC4(h!flfJP&d$(t$&oYI# z3^^!48JbTHslXCvUK<6^kZR<>t(}QA9xv0BQIE_Y8(j=N)b9W~>EZ<$MvExho&Iw(I2H}oL;j^~^T*$F02jn+N66koqN*{x?3 zpPRUQDZWYWKby^s&2aN+Vcizaze1n}@s2D4DQz=!*sr`bW=`*cafG~0ewWR1Bso}M zcx{}7PZzBCY&hj~E;FfA5wKE-_;B<&@4*hh&H%!wyAOpROl;XSenB42iJi-`<5^zb z%2}XpCe!XX>-JrnbIc1A$!E~w_VakMV@5HTFAS0PkHvPC>c#7ORedLq7klfp`@=T8 zlclEzwM&-m?Nc19vzwu$?vC2EJ>d4E{82}hi>!3TDo>4rjKMsK2q#cAMB(FfhPaN8 z&9V@TtBtNJPEzmHzWjVi_yaCGAWp(aU=U;ySbn;R{`y)JXt_m&vmTnfD9ZeaaPD{jDZpk z0%zrffL844_FCMXaM8=(ky3Q8Ru7jA$P)7nn~cS>1i8kK-!gs~HK zzko~t1@i&^@OeI)o10I^IZAvklUaagg92#sgC{#AK2TV{S(F8VadOEG+KZn1F;4)) zP#G~u{Tq4!s@(TOF=8@^Uf&WbVlGsMJYG_76cEaf^mJ@zmh#m@6GxO(gRxA`kU>LU zzM_~9yHC?)M<=6+iDpczqKY)eP`anMT)M@}!T587Dxr{%F(edVBm-zbKF14T9-FUU z3tafwKCJ1e>~UugW>nNwE262a`^2eK>SnnW#5s+u>3mXfvHJ#_!~{lD=b0OqtoY z*8mL%30ING9(tqON*p3b4my<;P`*SWpaHur79Z`W`1yfPg_s$F-IhYwEa&^YMuuhf^7yh6-_pfNv7B_FyU0^+K5}oz-QA{Ars>9EeKf-+&Z8sU z)dX~MAQP3kI_r_F-3Q|t?q=ieQkasd=Gn8s z-aw?OxIQiBxVu?!IIqG?XGj#CB79-xeb&mbJo6ek z(%Z7U<468Rz%t6aIuAPYTqAT+wOyy>0hMnb9LX9>H?7utb)fY}Hx?Gcb~Mb7LSw3C zF96$kwbNUw_AJwr#aBk#=q`uMcrbcVT!JzpUh(k}IK9!Vfnrc@d?`m57r>0f*;({X zZ#D{t^@{HwI;6=)SwA3e1qFx4i}X#xPxwj19f~X}vZ=I)@CR zUCz9?*^%o|91efYrB`wCZF3`4j2#~uw=j6rc(AmcdMPfZc&-&@XA%!(4;R+<|6HC8 zUTf^S*4tP&J~($rDr4W#%SdqJaZ@ZiKl=3^mxFKDwYIx&JiB!3!Y&;J4 zyF2~#=JlnQ;-+B1?Lp$ub$X#ivtzsWoJCh^!SRi7_F{%t-K9y23!kRv>x;X`y1~(U zH?Ey!esnaag-49WN=8OFu}cOYXvjH5)?AKT*5~8;Nkpk992Z>1%P_1F~btZTa*ib6wPV^;uCsX5B|Zszpd*02JK7QOFud3oqPmq9t?u)Fh9kw-idvs1eS z;8r>lMf$4vZ0z{<`sRAR#NGS}*mUx>0hAA1a>d-5x4d!Vi(m!CfEIgBhx_9%g{3ww z&ud#4GS&1JlJ0?2A@)S=ht5?8Cb^xviix=CHnKV$tdr`I{((3?@v)Y#C$J#hqWM^jpHlfs9Wyer@v10bdkzOqy!NW#J<`<%j znS;YNQ?n4JbOsOJ_cbe?OxD}8Jy1*ErR=6d)qQ!;{WfI6E4Ssdjm36bV`cw1ijPr< zkI|LX5iER%dsJP+lpTGf~#nf_`G_ZT+UWd?Q$V<-Cfm%Ok#_VOF1gQsNZo&ie*S!##_{* z+j;E3ijpQFpV!|qXa-i;k3?_F_70Ecktc{?t0uw%{>v%TAcoZr2v zI0X1!e`?k$SKG@2&_?UdQODgna}C(H1$`~S6yFvghJw8f5O;{h_f9mK6RS8rd0cnV zI+TbEX`6q==aj#GSWSGK8*;MJVo2sQf1(kHKG!XcpA3U;ESp(_5Bp$vpe=a8zDVaN zPO>(6x#-RXAz?%SEy7A-K+YG22GKWVCAY?Uh8Y4o_-vWEUNx=?vY!MnhE2W4rY&YK z5jNAyHB-O|obK!~0?>)G~8c`>XlmasDVpox7SM}Stedd!z zNl3<^3IeQitVRi&=PlJ>n2DDvWOa#`oMHX&&ze;*&o0i$hY_bNEm@BH0Qvso6_yc; znUrh9ndE859z=8t+8zTet0V!&Y;q#f9u}}35Gpd#&-ec(VgzQvCWa)q8TSCUP`MOj z62#%TzD8{Zpi>T&l*EU@0AyOO+|EWzlNO5E=>!%OHJr10#H&h5^7X+Df!p+cUE*Ef zofS}EU1ArOV1`l)zor$;ssRy;CsfQLMO3`_eOp9|Ji+zi<@$IdH$QO2DVks7(ubeOcyf<9?FJWM_a zzc)_mw<&CX82=8s4-GOb$?sD1;Rw3+aKJ<=vv4_be4OlWb}@ZouMk&XTvFDcGg_a87*qqGB954l8bT267%sgCCWf2i&eVX@mN&S-Q7|_e!M$-fU1dog^ z6N~l^s6jv#CF50+B_Ph1NCA8o%q<2bp4+p38m8EOEew7tRpNbN^?i(L5XCanO-P3A zYs7zq2^z*}Qn4kI>5EeXJNp9TERv^N;YXLm(J`uyPZGc^lH#Pm0OB-;;GZ+N%&DU2 zvfy1RT;oh7yn}s`H=o&)H169=rgAz(f#p8*Do3}cF3OQ*8uxq$AJ>C=XHUyN-%_@K zKx^JsI)d2U`vc~NH)?j$Qbyuu5OyP4m0(-nlcbxvBf_Yw-|kEtgfxCt7_>OZ)|F)O-gDsvUhCj?BsW`adYrqHgP>M z3-WaMB@2Irc5;Y7Nd!T3XBZ3-3IX>Uj3gm{v$BpQ`>d{Zn>@EB0uR(3+fC4C&G_hM zJZ|h0J@%-xdhMNv1lSlzOjQM;+9iC=QKnXs0wkd84DNQrvkI`5goeHk-BPK&=NEhN zWT4TKJ9|Pxurz0hcpUKX?lW#(tx*o3S06AnF)^5dE&kaaS>^f-@=1AQ6YBZdZM|nX z*jO|EeW^7{`@1!6QYU(+^80EmMRL5dvZ|V;T!Qf*P+%c(sxR#tSJamqTd0q6NLvj% zWm{Fh??Wd2h%<=u9(Ws9mL4@OPXr9kUOOb5PUh=&5;@w#FMgl#2tkPMn|fp~9CCLwxZs`>Ntos~>tsOcUOP z>80|dMmJ){)c-hUE@VoD8yv1L3dc+)1sI}k<}crjU>#okFvHh>s9{%{4k_5)%c9Q%EH%G6O0*3HX{am?2 zX}_SLjxRRHmTc~_LU)(W+cIX|&c*sbQM-PeLu~>@Iq^t17hj$)Sk!>jpxm(3S5BW_ zYE;6C1l|KpQlo4&WEMEmja_CE7okKKuLvgv;TMDX?i(ZE(F;Zj#{vrBk2j>0-~t05 zzzh}iflR*|u838Nrr0ctdi@8@ErhJ=aGAx6{xm9x^TU{OV8~q?Kcdn?$Ca1`-ZZP@ zMxxfeD;5L-%cfGKA*JX)P$*54nKdKk^`JRcnFcG-CD>FYlUZ}{*YbX<)ilR@qG1wx z*E^7$1cKN%L6oaeKc8P+%)te%fbju2pWVsIfik0niE*Y6UGyom5pX!@#Wbh9u zf#iB-3@Q*gC2lPS6oQZt2~{5bNMNA2xEvMyCln*?+3QDfN0m&*6bCRd@Etv+E!Tk=za(8c{HH!p=rj zVLvD(p%xXX$#Tr@<}}5TVC=t;@@U-9hy6PBK7rhBU!K}C+8}v&rzj{Lnf~| z#NnX3`Fu1ms5BKvuKpYc4?kR3ScuWe$fBZ#HqwkFZJ~&@gvx~+uy+-Q7n81mj~B>= zd->@cFkYj?F8oVTc4p8U}&gd5b^$0obv%F%7w4e2yxyAdTaG|VTIgA$kG-^Rp zZ-|n~tU4Pk5(4#rS|nT^;m6MytCn$cs#r`4YK`o0N^eP3$_Q4EZuU9IhIFga+@bREehpI$BT5g7IqUDk{82R2XBU%`rmP`9B%=+N7mlxI4$;jL6y4B;0^$JG<%DTzc^NRK; z9+eWVYrw`&Hp|v7(jUKy-}4fDZMG0z?>nMdkzVMQan&n@zqMeEeFhahNt9DPtyzJy zGzCtnqn=LZ>-ZS6muY{oQ1y=I967CTJlYi_zoG6nOIb6-=5zC#% z?RwoYqN)(!Xq-4!Y_px0RRPP7$GClv#y^C-^XTsR^6_JOHH*Atbck)%#8b77H^;nC z{L#VvZ(F{x?l!LvR~J{Mn@ye_);}a>7d@L91o~%mU$kgClyyo=-sXhj-GR``8|yzAEBe1jn1M4+e;3&;WmNk#l6{h~J?D~c{ydzR*UxJ|ELisWl7 z(zWEWBxLh|pgwt=BA7giblf!D*jFxa67sAmsD0#C=T_^^ulA>T6fOI%C$-XIhpWc*#9oAEkUJJ6_%GKru zS;Tv+0s^aE!*4kY6$Tjt4$L?t5u7UkJzi5FPOL;T(FYn#3qP>V2E97GK!;@=`TYw z2hyv2sn1ddI*hkz_Eys$WLJ&2jy@rzyiCO!9$ci4+A}PGrU%&@$_l4}Yol`X#$%TW z31-UYw293}5;bLx@|QccAyJXmFTEm%Oxrx)mAXqy2`-G^0~=a}8s!$e00&-kre^dv z-z+UH?ebL)UmmD_Wp18#dsIJb*ZIiKfy->EK|WXfb|=9eBzu3bDNX162!FXIH zwi9`(YTWVh$r_DJrK(sqWmPy7n+YrH#1T1a&?x%G_#$v<7sl)>C#Tsgb`c0)vELN0l)3E0olz3 zp_t6=g)gMMuK*_a%?nb0nRRp=k!rxBR;%j0{Pq?rxk%U$W00nh8Ulr|j~)CgY9~%$ zC$Y>9sXa}Pmp2AgM4k+h+z>ecq@mAlfR^^fjv};%A|@|EXdpo-PJtSDsT%?Kq=65! z38#-mN#XmZD&~&_1*h3+4He|w2-+_k<46ZrYky(Ja04gB1&@jF4U7m9d6N>;l`VOH zom7y$>InwOeBl^4j8zs@#z2Snmxw49g)}8xOMTpHUe7E_AD4q4ul2N>5waDy_v9m5 zTSt0qc3w^kToTazA|UofC@-@u3{m7yLZ*fgXCHu$Js`96hHwb2t8h1sA^4-XE^x+g zZ*Q+-{bI?Poz-+6aEAokUqlQnw)1BcM~CFFM1u+(E=4EteMo_`)9!e)c_Vp_<}8Hz zQ8SXvM%HU`q0_6PHBoZZB$%gx00uQj@^$f9yM*n7Q(xhMJ@Mhjr?FTF3A>UKB}Ez| z1%#rU_H1zcNEHPccu3-B8QDY}hGBc1GMK*dYGg>2PavVXK;QISZqAbCeo%pOB)QGfX%EvZO!k+FlmwDDMh5lg@q@w^II3sHhtPA{CnqXX@^4{mv8G&tAsB7nY~W0yPxtV+C@VSFkFgfA$4g>gp2(uuvPw#&Tbo|K=No3rgv_`s-2XXAak>ZQ;(6uu zRd&k5EA^CW^Qj0NIxG|s_`bs704v`R28Vam>xwFR_`L*^P}2?ZdB6UQ&_e;2(4+(s zBcgNugSIl;k6tb?3pCh|MMS<={<^l1hD36^Cy+gGzeGL>VY1`X2lpG*fPnHo!hA0* zde1AT{E?%|oXgwKO+%x2yF^R!=rscxwKwdz)4YLrt3S9zR5$JT8P2xjT;95e-?|I$=#$CB z*dUW@M7kg0l1L!AGxZ^cmm){xq|9Jg8c(^CK|IrAbiC_&98KBizl7;`RV|FW%9F@T zZk4h8ddd#Z?gY00_%WYh;lQ$}e|@yrUR*M$ttvTTKIY+Z%4Bt!lWq*TQU*QDkCk2? zpRBJv!s;2jt)Ha0JnkxHr}sZCUZ_<4RK!djNkhb44O7?G9?W6pq~VL~=%wJcDcW&(`>y` z-0O8a-`G*6wW@8-K5z=WSw76kYW}X+%x7bkYy~oyn4fucjrKXrw0zA4X{cY3d1eAe z?B537qON4_PA2xvk_BF_Upa>7oi83#)qeJAw~niEa)?%W1hrhNql+)7l#fNWHitOI zPH(4Fah8=-JMpv9!yKDpoN_)iwDoe9D6NHA1NjL{4}Q8tHm53Wc<$q6?$7B^em`^k z>CPAR$p=5uR9d|uWXxqdT{K;Ut&*;Ec$|r0eN0kvFa4l$QFg4W!XWa4;Bnr8qT8b@ zd_saM(E>pXj5iz{HJH3336vD{nt+&8q7js*aslY+nYy^KOi?2ovoRnQ`Xw3=WT6R_rZ#+ugj9Kc2XGH)tHL zSA4XoJTdK?85?~03H#cl7@VqJLNR$;_I-F%i*4oA7CVR8sn3bjYQQsWT)mulo;H$E z!mIW9^7m0&1&qy$-jU)Xf62Ow25kOwC+K3!ZK1NG%4U3MG`_$`bMoLQxhvLYwu(&|Jrv6Y!2nx4QhSOGUnMvTK84Uwh*qe%?d}g7ZJ6|{Y|g_*95|Q&1geS z&eTT4(!d?<#_o;ORI=}S_z%EDv+&FL0Lz74pLyNu{&E%zj^eT8##)63w~f1S3GL|f zS32}yrTg$h3GLINvuyjhPJJYwK~`_AFMMhyunw1(Ln>A%p5I6vmfLl3Fg-GkJ>S3S zABCQ2?v&uiI$dA2dlR2cqaa)CT|JCxKexVifCzeo*YPv@;o&ExoMt)|GcNB;=x-9O z#e37P&eL6poDlO-q+3w1=b0!2NS-SQ(e(~v>KGb`% zfNif~u6mp+U7BrLSey1S*jMQ&$2RvuY?yz1#t-`qJT6R^gfZAA^KH<%c@ZJU!O4-( z554#P*xyoLIHn_XfEDj?jT+C!ADvim`&Q;`ex?u@`d#Z_UgbVPifF#W3*XE(Zamx-jd+tUT~mOcOl?(mRCQD{jnh~%b69FMk7jY2P8k)fed2f9 zVV;}@z`<>ykS21#AaIFqOFSd;BNx#WfA9jLJY^U(**MV21c^H7_(`bbsh=;|@uQO| z7H1W>gGs@Clmx(Y6$HQpQQzY24sxdJ=~fU#{IRTJ@{CxQRviYVzk5;V+trm!O_9$>CXRf{)`(t@mv08iP@EwQs8| zXk4Wo?fqA_w%FLOk!F*NE&R(fvcobZl?#fxfuAr6Pq=_?4wQN*}5N!zt)b$Br60BL=UXk5x=oO81W2 z+w|s+$=zo;|(Ra_cyN}#?T6z4m4iEJXoEKEE?QWykk*vN5U#RGW6A_7Y{gv zleI_L0i9)s4de$NM~NQoKk>ckWi)3Z+-sF3*PpGLZ(H+d(%X%K)8lQtX!qJ4j@JfH z_*>!*e=>Nuszf;~&rK?_6n+_GX*=i?nsUVUZmH-D`I)%DR_6BMs!UO(_Dl1^#|jU+ zALVJgw>4{L3^nY=wec=ecGg3)Q(cwa`rp13j8A{M5Ru(>`H&uO{tHj~nf)zy@|a7^ zqYQ^7JwojU-U+h^)8g3m1Cb3mkUZ%8_k9Hw>)B#eWrV41G>dI&?Y%gc0-sd$S#*D# ze)5>_=}QNfD9ezk#dQXsw0ftghVk81GqD2-s$yCPFvy9TA$Q{w;7zLTP4fJ~e-sgA zy+E&F*+O^0pLlV%0`sSUA1ZbgJURd>44h2Fk9&+?b!fK7E(sXHdss-QCJBVpdOr_$ zl+JK5a@Hi#CG&JrHM3;7e4J>_K5i9>J0+RAk?lA;Ho0|3F(9cmdsr7Y;X&a}sF0j- zj|09oZ*3-zYj7lUi^1B?Lh{hn{%u@OVKJsW!E%vsB*Eq2)C21)-sgm0ULV8xOHNPG zF1#Gh$HtQ8Q#Xja!4ux3Rx%&xn$-oXYhopwQIxMrH|!+{yYWUN>4hAs=Qhl`ovNn~ zSZJzeJlxsd0C{7NygLj#8Uu-wLrfB>_!K7R#BED_XNPYk(S1+e70L=|8I>xfS^4t6 zl}e-(9imHqO1cLo)YaniI`r8S3yHTc{#uLNCcLz_7^~kQLK<&7@xOKD%@|Y!dO4It zebmt?te}{VYpu<=`n{`l^y*#NP{9O{X&w;Ws!*X!F(D6hF-665 z@!?cd8!cz5wbY7DpAdxbyTyM!65Ydx!O|Yhwx+o3lD!{RD|u}C*qjD9pVXoThaER~ z^%vec%BX2)Ejyo(p#gpWu@ zI32ltXDCbt7Z?wvjV|m@;txg)4)vT(anxw4k?vioygVCSHfJYwf%o%Gn>WBpr{raI zWXF7HX!I#SBjj|_nI+Lg((qeOUpzy$ctP%r^1aTRv6PJV?8L~_gK5oiUBxLWO{P!$ zn<&b$Q3E7?mGfs&ZF~u_CQ`DU)6;X+=<~#6&;q9!qFx^YbbQjBoB;pX@Lto*k4V-Z zyZVO{l8C%9N0DDbi`Jr~zHY6Tgh7FhvTXc*PTSJ2 zkaVSGrTmOgoZn)8^F7F|i(*1zAIvA5wyVV0Q>i90`Mi6`Yk~{(9#3_PtgQ&c645ucsaG#UnKT3{MEl4mK4t}QRKFf+Z0nLXU#P!U!sPgIT5(twllm(wjq=tfeU zxuo(3DMDGVn|A%~E-_L53Xv6&-Sp}GAaV2fq=^c`NpM&g@0(08ByeG`4SdfIe1=kH z$~|#uShb)B*HWLPZKcb^`ZdkNH0s*7J3CNxt$a;IQ!qiS6!rY}H?)>?=Ub;m*Jz8x z#7Td&;eaQ4WJ7@q9D$=3R|wyxdYQ>o?zglwS%b1d%$T>fyOj}mm{uHG1A$L# z8g(U(7I1_Y`KQS{$=n~T8rBg+z{X-oo{~Z~d-yg5M|=1Tg=a-RpS7)cMn~;@KHhrY zS`SZmxlpQ@pCmp6kJGMjMek5?T3SQ04Yee&Ky8$u0~{>Mi36kY9vp9 z&L#3^i)UYedwa9Wt}CC6-rOaGgd`+ceT1}$3Z9f8z&Bk`O=xpJdCYz{IT z_4lmECjVY+Www;`9z{LBj_Fg(3!n;h zMHNaU-Vh~u;3g=G=d$QiT%nSexA-V#b?bpzl#3aK`Nq#@2{$HFp-CwGpS`8HIobs66K<0WFkG@J42@B1ZvKcJUra!nI^>gP*Zl5ux76N+Q@W zINeflw-efvVp>T-9g%5BdRfPWu0d`R*P*g6s`}?mOUw?3;W!3Gb zOJ$`v%n5<+Sa2#-NFzvtm0#b|%TQ%|)N^7y?8W(ia1cP^NuKZ$(>G0?BAd+K7PQSB zG2gCDjP~s|kXq-hxevRr-C_A-JFf@5n>xSCuI<*;$>-K(N4a0|W@1!In;n(8#jviUlcY!JpN zp91NDAb0kg<_?%$j$N9GN?qou6+zKq$>zbEsa6P~RI5@ZkbY|0uvuhvoJ6>Q?B!Pv z!$t~z?$?3}i8o@nHlC^+qr2|XBJ;-mxlw23GBN(DwUXkb$y<6De~(U&#!r2HL$f(Oj3Q!P2c$oa}AHVh_TQ5-IZ)fAa-Y4AjE`f>D z1^}zT(}Y0>KO+Xa zw743oIW3p^2Q@%CgiehO=c);D#mqjg@;CF*V3buHg_LY*%&Ziu&>td?DVQQf6*{%6 zcf5nc*Pr7NbQK62?Usi_xk)6~xvQ0sk3WC`T(T^D&x3v%3DCf#^sY4r*>v`9bYyIX z=3t4HLxK6deJ2o$Wr0w}4WM@QPbCegj_=x9f&0KPf2v3K94DZ-`qTvhy~qe$ZX&w6 z?f^*<@HuGMJw_vto(=L-3O*Kcqdv$Ze*pvdLWU3;DeD;3(k>fY`h#gg3Gm!5OU8w8 zEvF=8SSzg>%@+h7>yBR3O*7|G3G7-3?3#;|U$xcW)V0+o>dS{jz|A<@SL#mn?sM_3*}J9~Cx@tnXd;b4lgX z-u=gh!jB54zpcG9I+Xm^9op;vD*1Q2hxtG4%l|D=>p;9)_*=!x;eV;LOaGMUv3OcF z*k6p=8`4pGB8F0v73d4U{mjF^`mPT9n!5SthHr8M;wTOPae@S1r{tSO{%Z1cHG_bd zcdAbq;7z97^iP3;?v8wtBx1#D3$D^fBOC3zWy_2 z{}}rJEPsD8{+~yvMf9)OD}R!XmMzz|kBNtF+8o8R`;P9sGA{C|Gv;ha`*mWIrgd6X zP+Bo$jBuz5@wrG4z`6S8oX;y!tX~N%)K}i0k7-}^$+n7RkF_n2^|KI8g3YV6C&76w zSuLkA?*;XBUwX5%di8ncxyEnxZ*~NpvNI@O@yMgt%B|@w^71(`#onida3EPY!}?pm zLAg)-{g#MbKY`tgjPij|qSvFoIBi4>*{g3je1XXO6SXSBGW1+44M@;+{G;XbmUe2J zyEu6i2d}Tl{`(YGDFc@q#k$E$VE2l;636vEBWm+~-uiiM*O%`?5{e?L0QXbwxh6-= zXkeJGUOPd}-rp?kkJ!PJT|fS?`r2^0j}n@P?sqFz7OAj;lzlQV-x>jI&E9S-^I35? zn%PqKg(v@V%_G5wcXy5~`X-=YUi07OYN0e>w<6Kr z2d*Cu3bMK%UjP-eYc2*3Rw<8KqTR_tLz<_)yx|_Yyr5}9wAf!94G?EW;`d;bP#Y!8 zI?cY;D$M~{_CmxM3)@TIOQfr5SiT&lwHhQ-IGhVAw{F=piWqri7^JIccF68RYFMp6 zeF$vw*_RL}g>$S5@H8ZyQtK&mWI1-_+E3^==#ltyPQhQ-`w5?gvubSWB^BP@rOGAs z=Jm=IwPiO{AP6>}=Yfp`>t&_JeE!EF(&L_)_)^ovs($&8!z3L~+4gamI zW@`?-uI$79C%%w=0`k9rsC;f~YndQP5jSX9qek~$uupY1V@z-FiH@Zv#f1Q1Mv8I5 zptFjSOw9Yov9ORcjroQA4G*G!gFq$8_1|!${RO4+mkUc1T7P@>$GL@)|G4;9R!2(_ zGxhs#Ead+;0@7bOmM6i#frsUCcTi>f7xb$CH%@K3e=`!`eT*Uz?T8`kd|VLz@COK^ zJaqp8Rhi!Z2D#FGL%4dFOwus1*kN8(0zl@`a9$2Fowz*Wai_hWQtul&cv34XSUHw}3y4K9G;Uj5tK7U$RUmw#h8@snng{m%c9Y2>_%oH9ii;Pn0f zDKc&%gEI}R&AblKd#03Kh_lK4wEeyZydSD=sTr z?SC@RBe&@TRs$z0%-ww-T#7GmFs~i!qKwpC9AcB+m%jR~MpplaQ$Q=6ObbJ0G z{;7mgeUtDHGA#N#6USxOQ@}!q!xI!nmHUIK4^RSfJv0dK!14F@4~{YWA1End{tec+ zGXVtuRFZGfNlHONdBFoz`hNrv@B{_l^%POP;}79a^)E>N3(|~JII&Az24Fql=v|hq zm`s0q#*Qg3iYHE;*CQ{=L_?KpmR}G^(J+;sa?kpjCXH6%F44}9<^_tdd_tNyxG|5Ls9>gmy*?&;}S-OpOb{Q#2}h;UlhKCh~=%$p%GS-}JB z49`}g6==$pBP7g=(3Sgb?ccNC8eHb!oFFuWc&`{?EZG7c@r^!B)NVR$dZc}I2fq@~ zGOLcXY6ZK-ITQOzbE`x_*eV6DDa>g=vTS3|N7-Fuz`<`J^Ccxb?omX=E7x>VMhWs) zF8TfpEUyIkXW6H^>AEk|ywJq>5}sj>VWZNyd!Ld-@~a@^;1``B^ukRw*$93P^o9nb z?d6jT9PY0kw%~IX8ZSRy2^7IVh8*K7GTS$;e+M6gbPz!9ojWgE=KTb2=qG#?9%@t! z>476gKgtGKhYm&b__q#LF)SHb|f(LJZMuOmt5(Q8U`G{zCT7s-6 z5hJ4Ca2PWp5lo$igcY{*Be*7Nf?Bh#=71O-xf-g|2${(MJ?sECMwAjbyt$Dp*URnD zq@6zccQRCZJkehsYRc+0jA}zdKSA0aKoOt{|BS@SF$&P?rK@IWKDK|NySf}#!-mrU z=!Sj*+`iQ+^wAGjCGG1ciBqt&CuK|P|HdSzh~`VY1k znHGDcbY&Lx*0Pqij5S|#5*=e}IeTR0gk_R~wbU5PEv8)CtSVn?Y@|-ufJi7cKURtYsfTtKzDAK z9%M*~E)J5Jf7R_4CM#++VBF04X4ZnO_Y+1%1h!Dd-ZV&7dGI3lx{n!TC2Bn+n5BIW zaS$>UtxcZ7Y;A_vA&JCb8wv?u2=mP$J-m1JFgy!w?6qB8;R8j^P+Gb4%~_+_ina37 zeXWlKXPWs(GnGiExvDsy?P|&nv|YKO)P7ks%DlR7iZ#uRaJm!Dt4HDuc$1v7(8Apo z!Ai!a4CuzTm0c4`A7;0h@9g|ius(tXEH#YPr~JOscrvWB#ls>JMJ6o#Wpu8I{5ujx zn*>i-8-7x&w3Rtix~lAnEmgzWKqfItHn3t(XlY7_O3Mtwf*Db#ULk;BiRm=EOQLnGs+Gt|HYGX=_STDC6pP zDk+nFl%|yg|4wAo2GjJa^icA|=lnbKsbpUEZEtn?9V=5+JD+ovM-wnTFG zbFZE|uE|lmRCSjA+U4nthZ>{u(GD?~XFA)Au!vCQN9Aci$HY8IA)MU#Aw1!y*deS5 z>?3lp?=N3|-th0LGBDVpeWNfd3`vTHTe38Pf)a{{BUK-Y2)d(6Zge;oj9GAA@nJn` zR{bo_!GcVXd7Z~(f7RFg=pq~XC2+Q$7AJV))QLO&O44(=^sEsY8nRh#;GxZl;Dt9a|u-M8Np z?O;Fltr^|bdw1Zzdp#D__|=ms4@01cz-lGwzCd&@_Mvz7qsjQwHehk8HRseyxIMu)2vND=ckp;ywk&_{d~A5X+K4I+SNX2t>l1)+>e6p0VG zcNg_SdFIawttS?i2+}X;x#lMS43`@nwN+EY zptS-W_9RD4;^ev!a`F=%yhsu)ABXD}155f~FKF9y_GG0hg9}q$6zrWvOItcnN zxHEL$thM{8iY)(@>C2Bg+G3A3+=laa#K!g{z8Z6$HwP1ZC3)l{|2nHQ`9ZYK%oO^u z(37NS&H+pR0SslrJ(7PcX+S$0F_g~zam171_TcYaT*5pe~Wv`mV z-Iv7o>0_3Hm9qkR2qYx*X9P=~it-TK$*Yk z&UV~6W7|16=HCl0`V9T;t+PsdzFfKz5wrt*s+z)InfeHjaAOP6*rdU9U(AU@Z+29(yp&q-A2N`1gR~5SP8OmdtXl$rdPu9l!TlKM)%EJu* zWp8wsc8g5tx}bH$bLjH7%KP;A+uy4*@-C2n?e8m9X@Y`6F@=&OxbN;K^{llksp{GP zw%0r=@3?d3Z*y{nf6q|NF7=$x@_d7~yv5&3xsuGg0(r0UoS3m3@?#_sv{U5Hh;|uT zyT{dzj?DMJ)#TWZ##WIz2W%yr63meaA9BSihCEZ`k#zMRTHtOD zngpY2M;I!v0xhvIu>2@02&6Qlo(pJ7vnwQ6>~N)^zXBnF@nb;m%e-cw_lkYR!Q`JV z!@sas{;t84T}k(^1W@GX{Le1zn}%Z07}(z+_CMmOtL?one)FaZX2Q>)_)y1chQRGY z1KuUemBSdPDGVmF;%3YHkIl z*t7qCUbnsuo9X2bM_hyd1X+%|e*&b2)ouX23jUMm{BH{Me=4=V3Y3^HgbD5x4Lm?2 z)YH>rZf|d&@|5e}im`6KqobqB+uJ+R*Eg^8e?#BDw4ML1=K7lo^nXlj`VShre^Zj3 zE&TJ4UjOyZ-v8S0@A|&~bBXpy|J2C+r_*0lmHsz({Qt#M{I^Hzzd8sL6O$!5B-juh z0?7oPA@&X{7)tLT3CP2P)^3q9weVL&+n z{EOcXo(+!t3m@`2-yTl7^rY737qplB>az+}wwrYb)jR788-m7ze?|IebX`78ptEUK z=X4HQR|u=tEJ0ssSZW9&WR(GL=XZ6(&qL@t795t|dV3iU|hxv>7b?7rw{A7Ga-%xpO7`?su`?}&C zXbR3BzDAFn;(`WtH!No#^c3(+1`a^l{}tO)PLOdeQ#7{nrbgj&OH@=optSW3=_?(u_!g8T4k&*^F3bS5YlFIqU8hT+_ryO+ z2>5kQ?LGW$@S3BT7;x5HjztG3T$F;ND*ynxrW@4!^ImO!sU27W-tg719~&pmdHf?m zZ#=p?lq7TjI06euE&aX=p%Pe0_mg;TR83bP@4eCz(}j4tj|cD37V_zN2IRABp-X>x zXN5%#Q~Ax{#u-z68PIhPx(-0s<1!$sMor^U0_SVlEASAM(QE%TV7WG^66hP8`Y*jP zHmVuy`}csd4JarzeN~OO1u$`2(E(TH9-!+1UG`Rhy~@Vb;j3udCLH0Krdwfkjxa2r z#|r-Wwz)oJ@qHs3`FVd^HNZ?U+QA(zE~_>prpc5*wwNWm9))u&!$yUdWK~9lm=teG4$8x5IZn2A(0o|Q|MKr+Ad!a(H`$no^6WXE@||O#GSGW)Lhi6cXX7peGl}z8_b<<)|smOuj$(<#WPG zQ~f2O6FM~CS(v~xTb6=-p7esbNToj0S0*q zAd9R)0pmPo_wTs9ohXTwlstKGb0|v5arUcgvHDRmlO{k5B#wQ1p3eIAu>S6GG0_~nUd*kWm**B9p*(uXMDKpcSn3tJj(ev;jrPzAH6%A2OHn)T+hy0PT-f}WoVyqpE51AxVdRc7Byhp z3>MCki~2ie(7VY#M{K(XB#A(PqtOyhK!BCP!qS+ijUm^)Fx57fZwMBR>^tX8TkBMs zbB{a6a5{@SdVljZB>ozFQ)WN*ZY0PWeGmV0GjD=;ymnefI2m>*E}m8A&A|Ooac{kC z335m!3vnBlx<4H4C#8*yX2MtTJ!bt-i_8s!2CUeVhh1k0k58Lz(u=yG1IzNSS=>y1 z`^j&{{-4tFP6vVf{JP=4I@r9*I{cP4Mu_Cc#P7d%NEEE%MxRN(-%deBR`7&)M47qy z=ifuO$r@z{zEvFE4ni)nZwb2Z7Qqr^lA@#cC@+Czir8GDGBs^4IM*AWxx9|W)jUvS>9jIX=duJ*Z2}hD7>MaLK2n=rcXFm! z5IK8HtXv#uJcCLVFZ=MT4p?sRdd+k>)jhfE+_Ik3^HuWM4uzhZRD0hqoqA97^5CE` z18Xa!n3j#X*B>k;5>+fsOIlj|`>GP#1_rr$cnkF}^yi0;3saJN9GE+y!ux!$Q)I31 ztY3Q^TlM}2C+?|G<(Pny*Pz6e4urL=88G$?5X13k*^NQoQvWe zl^ILWu|Es% z%_!+Flq?am)S=M_ z1wBM{a#K*wGgF zhi-lvI$Lf($|zHir_&e^oGYZ$BYw`dkqyf7l$+b*KGW@Q%Y%3mR2%9HEbnP9h!=57m*C6<70?FjF^JVWUnBY!93LmhzG zZ+1)pU|_Cxh8$j=4M+y;(i%G6zv=y6cTCeFQ^`^PF~LP;J=$U0_$nZ(F{C)w#Z`XM zzUn9RV@`sOB@k995Wpd+?t;z}8yg~TREbAgBO{V+V_Q>$7^Q-dW&|=<0-?$^_bk|1 z1#ImwI4B3U_Q#JE&$EB<8EJSDeC|G90^)RbwnChgXZf{$8qd_ z!a<_gmdcT04(J8B;UL?OHfKqjO!2DpDK1x=yIWfz@w01dN!m0-{G5Slq@R0eYyPba zFOf>+9sTIs>{ReUx~P5u(zbKBS#{a2Dj{|ne!oX~Z1IZyYO0=Io(mmZ{5xmZ3e=ci zuUnr!h3vWrI2Qd!gTixMXEeO!#wktTHr-EMOjlCgf&{#A=8OHBX6h&%is*=Ejq^7q z;ZE4wyP2E;lBzJU8A$0+-mMq=VBI_&87tiy;RMkh1b#X5=Q+Kvt&OUZeUcy@qsk?$wf2NUi#` zSK(2hU!5+PTuaR5e`Qs*!C93Il@KLa_Qbt|g>%}j;Dtt$7^9_YIwkOHU@X^WPQRs4 zR3a=?-Lr0V6u^omB}M@msT7G|JfiaR z)8WgHY--x|hmt};VA9J^@pEU^hZ&P$lR0ZNiHK~7Y~uLhsbF{VUzR_6EV```Ba=rb zRfcD8v?;k8CZXnMQzjR6PiL;C+1XVTOnOiZE6nFi9C$w0pQgD-hPg$xXpLl691V&# zkDBwmz$2G)LE))`qjRN83#53cV8)s0R5i&`EHYZc zVm5qKy;*`(5Gj;dD1TnL5Kj~X&E*g11~&Ys+SAx@Bik}@@N)ckbCWT?QtZ>ts6!2$ z))zEpEJv)fd%#^v-{-Dp>)gZ%aR}nfteWFa-%QX1ycF&Op)GlGRYON5+(0V+=OPV> z>S}|UTHZWN*)`+z3}sO@OoPFD2zrvMd(8kfC^Vi7LXA1t1X7{5;Ii7S8;!Eeym=o( zk^p=Hb*MO+-=+AM6i{F$Vmi^y?TuFTI(|z#D`!Br9s9^2zNQ(|t%% z2q;o*W|5ZeK<2Jt_7F-q5hDsX3JNlzBzM)xAnyI7AKQ3nsVO}E{j$xyH-GN@ za=lww8A;}}1vsH7WC9MhtPYeez9lw?J*NpafsV*WZUBdaTV>@OB{Pbid>s3E?)SUL z?4lfx<38WtCqB&0CYZ3kfImv z=k13pYHt1P()Z(5Y%X6HE&g?d5CqLz?`-)t8p z-}}R$puoT-#YiBaEA-W8Tp}$S@>b4v9x(6`DtKkJx%C>#T*vcD|>wa+C@2-tDWFFB?xKSzRAnQVdtx>b@hHF*EcVqM=Di zlXS33OQK20xTrp@$9G<|5e?>Em^%(w2xnUeUQTMl;e_T;QI1!nf1B~--gsE|;P&a= zqbYTU=l3V$G&Lz^bF$w1PL!t5Nvwv;Gh$S(1=GLD2mx`WQ+ZJPB+1L2M_QEaGS%YI z$8!6wZ#O7SLjrBh@uiOScuG(x7q#tEB)M?sG+J7g{8zhHsQ`So@Ua4p7Fy?-!{Q9g zkKm<`E_PpvRO*F`!uqq=>=`JSA*&%^5kjC)8F)odFq9bsAT?enC+PwMx0ya4jIWI= zI3EZmXQcB-=dmpRo?tY-GX=ric`37Coa+~lQ`a1(>5Xd5tvKxg(clPw$cy;`vJ@QP zC<+P+QPNN<(Q`DOl2y(WZO#UHIrG$yT`oR!2kOI#e2`T3*JSD=J73D9$+c(b6L)0M>09}O;+Y4w zIH-=GO$ivn?sKmrdJX8?@ZaN&Cs(w&ibW~89XmmVJ$Dn0Z1?!k1NR8aP@h6RpsP}Z z1jR&`2;iPfZDusTJaz&R)5}bEPwPV|a(zLy&s&^86Uk#rtxnCSy?PODW@Z#qoXs=m@^-?mjVi7|fT`xz+rn z$-PkJj_uUm#b7lt=IhBR%lLb_vTUMmYB{7zkksU4^&g_m|$$&^O}n zfWifK`LVglC&7*jZm&#-F`AoZl=xPIhX+6H+~GRGCBr2fyE%gIVj6K`OW&qAL)yTh zbUIbrbiKyR)fDnv(X1%zxp^bR=W}&Y*u}us$BKG_QcA?mkJh;?KWLl&CFzk+RyHurNikH>P}Fk-`E;y;;$mb z3^Dz_zUT&9?C(?BN$+z7+fnit<;1sg@${h6)yuEX_)My3%)74Y>v^#_IUj>-v9oO5Lu!+fBq*eY zq)AC>NtsXu8LpQ!-Ix}E&2ktSbkMNEfrhS-5KZJlu4M91(?8ry;2SuC4tHR00`D+Q zTx_9^7h5QEPERv*NdHMT3{g|)92{?>-c)<;=1|yS@@1x6D&7ETv9MAXa;~;MTwBd3dCPlr$jqk zJF%ZB+F(z@fMT9_g)M61Aofe}LPQf}%+T^Z&Q`tDo!W0|Zy5#nx;oj_=G za;p+ap0%&rb7hb1-*`HAtoK}$x#6v0_#c0nu3#XqfB6v?1_@cb?V+p&UfmCA_?c$A z6)HG-ZU!@i;7ib5(XE6_rc!uH!XpO<6pl%TZ9L57*8~_Ul+#A(RG3NxCUI6kK^>o(iL!GWK>spYTo zdsEv7sv4}j9Rj=42RmILqeDBZ9Ok=fYV!?yyi#kw_I&6_eO}m~U2Z{mr=V7E;1^8G z&6CUjgYQ=r%F4g0z8hMs+oWs#hU(9Eq`^APVPAFx9mPe1k9?U4Lfvc{4VSj)4D#?Ln`rh|Z zQy!#7OtJ=*A-ttJ-bSNX_dWTW=Py#rY>sn{oGw*#PwO4Yd`tUdxfa)BxOJc~$MYMg zKTbp`7B?24nx2+Kg=jMIg&>3kLI*NsA+z2D3j1)RHj~shOy)bsG{@y48Hvi{}wL|(F1f*>8 z>b{^o&0CzR$9_Ghm`3B1ch1~>yr0k09lutrdabbNv$UwuR@koN<8J^Us_iYPl*UF` zx%qI_Oe|w^&hTlFbx^;bn9vWbp~1LCFGB%+A3d1 z_^#T?-<%Lw;)r*3ac#KPu|T75-|%WyBby1BZ;9)U))%S_f=5Chp7Jl0F8nx}=8^15 z%89WTiLuHLVnpySb4(<^au`oyLlt%se{t(|(`mmf-99u}BB0I@lmxIf2~a-j6vIy* zpY`48G*+yrpS62iREJL^k?SW|g`k&0_;PkEosDlx#-S4rPb${I!_kj0(AXjtAx6+% zG_=k!F=_vL5HK3jkxONy)P9iF0qPsoJwvYEQ_uZkBir>v#QwS7CEl{TzPmCR$1FCV znpSaj`}hb@?3~@;`mHm^P1c9MI33HUZ25KF4N{$>umI1OXh)O7_zTm0+xw1V8UE0g zi)av@vV|A{MqOK+q+`;Sdtlw*L6~4doqi|J*;%=Ylg|5-xe9#sw)H|4VAk@sJsfrX z(;#Kb&K;iZf%J0H|cR&h4cULqkI=-NGA%UM(X&d!6p1n0~MCPU-l2gHL3yEyUEDuJ9gNQoTRIvaCr@ z*DeLpB*PIslCOwswMHFNw=u2e7a>SkvvXN*X2#wwYPeCzz)B+Ven4PAbkm?9K_N#) z!DIvTL&JuE)AC=$fNq|#Vpp=y(4WTa`)6k-b3VYw@mKP)iR}aJb@-bHM`WrVO*3mBy!C!Spf;-3Q+k$Wk&Sz0HYYpZfTwqZ) zJ+J+nxya_h{P3I}-ZOm6JQvs9^EThN#BxVKmRvqc``}rh?&L|8jem$kWu$?Uadn*# zU7H<4Y^82ng{Kf*U&Oo-+2_oMsg86YZB$mq-V`}mmfY;W6bhh0Lb6PJ8W@>!OyiV- zG_Dbb*gVQdHS1S)ef#^H6;Wtxh2! zVI)ZuQbK_r5BkETSP&_thwCxGERY=X^?y6klW}Nyd=7f5XFgu(Y~*Q|lD=QhU2dFf ztZcBY59xX&z7s6)|HTp2hHc2axNME-_Nm*brhcC8R4<^<*s?-xu?;+IU`DgN#tjlN zHu!&+^$A)KG61@$f>J;TEZ~ozD z#!5_zqaq}`E_rce;@S*9eGjK_#o0Z0vzg6xOEVwhX+h4W_DcuqM@hG15e(8TY{qJ zbMA^K%-IrwGL<1N1&m^EN`#b2FkKguw5Ttz9V5CxNovhet%}(cWT`UK0-Yn4P?19A z3`~HmoLn{fWU7ZFwPLwgab<#>FzW~3!L4Azz6h~tYiNNl-GPYqItO2DYhTdOZqn;` z+TJJXjs-Wuoi}&9sf?Yxkho$_+XVU&Rve$a@{JK7S=pcsm(gsb@P)Fagg}lI>pGtW z-C>$f{SX___^>cyl%MKwl9nz?!|%Q@epFBET~St3!&;VAHfmJd}n-VJ%fyQ#YL-z^+#ghGas=na&t=l)9 z!=FvRMt)Jif>>_fyq6=9evBc?k$8M=HfwDkjQlo!LUk;VK`#pNt%~xyM=03W!Kj_lexefFT5bgfBvBE>7=iP-8Ba;gkYD-I3?-J?fh|66Q} zSb*I+Hw-sJ&mt@=p)5}oVQUu94bRjG}&?87UVbX`u z+dYC}E$N4hV!HW&&sd3Tc2tYfBaj$5-gm!O6v|^1wfO5)44*9pYSGnZEV=3cONk6I zbH3QL1?TX0-o`p;XBmW-8U|?JV->OFdy#bAZawI0SUtbr5ObC!8jI7=ERc|I$N5Pw z16^o+YRM(3_5+cduzYC67_^m~MWkR`k?fV}&vuSj+MZeCPub{gWqTFjhcmym5J%S4 z%I(?x5+5H8D^#Hc6G7kGwdSR3bO7?h5Ns-7)xmQ_N|n+b0-^*e6b_0BG}R=Bj`~Cm zMapxg>`@H`;E(J@@nB~2)z>$a$Pp78i}!!Ik|4OVijnS~5kP0N#^SJY(JPCY)kl-&^%Y)daYsQ5lZw_Q zhIZbdkzdi#P19Q!2WGS~p~Y@=_H)H;keCC62*g~8AMJX7ITwC_)6yK8($d_DMP}Tu zh>R#NFOM#d0sWUJlqZ%`YiViey@iDEa4l^L|&I|*bS-}Djl`2aVKs?OOJ4RsC=(#AVG_%oxUzRVM4f>c}@_C$G&>%V^q9Ez23WVC%sInZf1d;ttcMXo%e@P@gcUcN>Ut#(~g7D&Ndth)1$B5k|$HCvoB z`!-a$xO2IxyIXgFWwGW3LIr<3S#Ek_>EOXgPs@@JkneXZ0M z*g4N{K)_$nGYT4(Rg+hIA!9|NqwXJI&S@CgetlKE%YU}UwC;1LUpp?dM2-NbVU(3=fQTI*J4X2Cd`gs#2l!G-E-(bYkBIl z(QbtSjbMqI@5NSy7H+~KPpic>RE}vGQ2dF1b#=MtNllwB6e3^-4<9XO7CJY7ZrD7`^zX9TeebLy`y}(RuQVS7o%8f+N=@-}tZk8xM+a#w{kJC0 zf$h%|(^uUQ=P6bJ2%|BhF}PTnJaV7XUW(tbx!3b@ySmH=%O2ka(u7oBtu2xJRW$v>sMD&D;4u^KlJf*Fz zY|o=G!L+Qzqm0_Bt(5un7p^@2DIIH*5>auVp02fSA!9&ZaQ;H7L|Up{Diz2lPN-X0 zSeV^ku>J85X=g`e#mXEMP!JFVRuDl_+JhNU(09^bgNmto6RG%`mLLI%fBa@aQ#~tM zLh~8zR7#HLQvr#B6M|8BpRl;)<_}i#uLoK)F4LdVt@}*OK!$&RP@s}YAwj1B*Mg12 z-t2GcK1_U;CS{_fAgK+j2D-$B3yXx68q9A!WCd2u`|g9-d>^9x6;hAE3D4BawgrbD8OYaE7!%SJ9MQ?P}51w3OtcH)wJfmBwmL8V2 z$GtJ2+P+?0L%vQN`cGVRp5QcfwMXx(Lu&W2%v5)s?)q1+_pPj+eh8rKtp5B&w$TnG z4TvhW2G6MspDkHw)}ahurYQ)ang`xi3#KIbsb#}ezjW|*bey^v=xw?>*_0NXN@)uU zL2SI@!852KjP_*MOd8?_Kp+@WT^*eot~~l59KK*N_y{6>AR6rRE_w7L4&QnNwLQEz zIim{HqM{1}zkan14s{Gk(W#M?sT9kk(t&8`#WJ}UkMYJYH%{!epz8St+Sl5wPEI=5 ztWLW4*G{sgv~Nzeo#%F*3YiM6l56$ZxgQa3@3M^6maZoQqQK*A~}^E<0q+RxH45!7TV>wl*H z5o24)T>GHN=SOk&+uuh=N4W%!6GVI-_klZuph@K(mj@HX$Kkw{wacfBlVV^(7+}g` z7|K{li_iYnkwh;H5-z#V871Ademr4n=f3S<@#j-GCyAEP&JFQx+ad5R7>(UeQ?s-yK>zk<&XLoHf+Et2c}{Dy(mgmkH% z7l+Q%0=IlFrH%dcUItrDnAlU(9fW}=%Q_9q(%=jPx$%Sf@J7sdE08s(-jrXROI5T~ zu)(-4iWZ|z_XXPBYQd#68Z{%09`%JY&)lD2vuk#J=ib6MSL;nyg6tRe8D3t@t9fD| z5c8vEZT+(3+K|wbXQlZ!n`ehb`{N7Vr(KIE){?urNHS5qBaw9e^-*&6iTar;|A0K7 zj*XU1Z~U$Y;PJg_sC9C|%X`TvVYyYMDvC9#pOiReRF(ZK%lz zr53uku{4)_usJ{Rj{K8YPoUigc=_~@9(=H=Sl3$nK9ToN9ZqRvX=%(q;vPYNMbqLV zhZ7SMhO>v0hnIfI4r{Ld8^&c%s19gpett3k32MA-&h6~1t))RL7qk}8+v^+J+Z$KT zWjZuj5`VSRgok2B*DRd=9GW^kzzq-v`@|h6tt=J*0hTJ%3J(Qdlwu{oz3$Gze`cMU z=ecJwKO}2ZzE`yS#7{d{Q`0nk9QK1CkNTr1cREN{+oWsjUNAs`SX7S186**~4arBd69J$ioz0(K7P@(21A;#e%SbV8BNm?vY<`@UaGfN*~o3!%A|3B zFu}tb&#n4U_r(%?#_{(#haOFpbdh8BgBw%rDyMANj^C$Cv&ZrUz5awc%!;_`1yl($6t{HE)VZc zJSJ#Ff_IXgIKddl>2N~kzxYD8N^SAEg58d9>nXd37WPrwr|gS6alB=P#@{?V-3bpJ zH;B^034I@qtDoLLbYKB@5rldw1#W{~?nRG?aGQ#p80T;#g3pUvZ=W63?QA;#dV^Tr z%p4#dO@Y3J3kpHZe2*5-f*aFg*>omN-4>9?#JwYnO9xAk`2(BNO9yMqW2+Nu>q=W2 zW(V7|v%fg}-qR1oBb(Tt447MdJ?PynxCKN8b|q7r!^e}b4Yl{c zi81jBehl9p*>L}igxZ^y?@;tatCK3fA+*f#%NJy^phWDeSDyUQP$Od8eysPY4Z%q5 zg>}b`j%vVxvoIByH^+<#H@oHz?&@9_h9-)5%uTbdV$F+l*S^0VQ1z%VWNZnFh$|df zBqt%Y@#)x$&MMs3CMQI}0$;kGYD3iZ0>A|$X;6?0br0#}gI+XfDjiVpHX!7xEyzYJ zy)~BE|5!In$WD5`vxC=oGw^0}V$|n5Q`#88>7-fi4K@{GBk+;kd)dHVt2FJpYT4v9 zCH;r`+&xz-dcw;mE)Z7=|CNKC|2xv>Nkd4%t*6abxlV2ynutIYOl_QV(@f0^7iQB9 zpq2>PEUvLs57rzcp`1xcAza!ZOr-I*l1HTZ-(Bm1!}{651iMvNw(%q0dc$W8Svm;< zYdf}A=a=s0SWGzZs+7=Yz8o+$|Dxr%Q^_IXG9p*2)GS1fhOUcl z2le?jp{32VC^=(?)W8m>aQ9j>Ys4U1;moR9XQ&lJ9~ISWcV-l$zz(IsOS^ z6Bz7>1s7s`RpE1tunqWqS7wRJyWN)|Y~~SQ)$LfCCl;~j;PkV<`IVRcQOcK_dzG`* zPfX8DlcIy_A8)#}o&~4eZb&{ndpHlNL|?tzrEc8sxf^YmXJ!ASi6j7AkXjCY6c6s~ z``B}o=YPF4b9f)AfWehe01Hdmda9qGrPB_9+O8^8+1?XdT=)Cf$e)sxA#3(trgF7J z|HeGEeQ39=sl@tb|Et{qPpwmR>o@QMggQ_6oEb&NwNBffZ~OiwmZB*>q3{A%0Y=>FX7h{`@Ae!s!xjN-Xz^taW8tshg z`qy>|F2cI)TZynT=ohTRi5h^Kwt+@bM7qDGC_uu<1#OVI~#e z5{#QL=i6v-0C@gLKG=s*#$4*&MKGgQK?zw!@7S_n35T0j>G~TZuT@3CrM;Ss_cS#o z?RkkgY`ytTHb(iP8db@hQEyziD6(E-E&21p#j`J~Pz5p>EOo!jL!qtZBB4_rMOUi`s%r6gPPtkhx7@Pvo-X^!9I^tc`;~KxrKx+H((U zx%=l4f3GpqbbP@yc1SZ#?*1*q|-hC0P*&@RTRn3LB`)h;YXIlH?$hZW%Hs)u3 zSGT*TbnjTK-s*V75{?(d6WOjkFLx(ufvo!({py&o(I+U90S}*p2ke`c5FnwHOs8O@ z8Y6~Dfb>4DopFAf+;efyaK^-z!&8(Ob}y^v1k)!J#nqcvuEc{QchNf$H^1C@;?1|E zw~c{+qms1d)g5&1zx;EtCOaEJK=PQzS-R>)+h+opE8u_Msi!CNZ(ILo*=70{&93|p z4FgaC;%)s$7R&#KB@Gre4FnJ;@4wzfDXL{rxRr-{GRXD>j3Vw_J|JOUxeWQ5xST9} z;0uF#tUYS&(jo()1l3Gs%}Rxi{Leburr~pL`SBC?X}eQ5bu2S_{%_5+c%p{cA;u`W zcEH4q<;s^Awepya5&0Pv023#ylH~_BsZGa?{kB&io5!aL$N6vqm$<_|gp(s2qsARO zUr2;^)`&g?_ST!{LN@aDcIS@;?R?fIkRLxr-KzASq8Fa1-bRNI#H3jBIk)o>7{9!x zh@QN>b~W5nzRm3`(0!s)K+?xkkrAPiV3olQjpC7z0RZO%4k9<@w&qxK=kMpu z-8`qOM}c@(ks_Og=sAR^5YCRf43dcrg5yX-TUCfLobK;3X(poCfXSey_B4>`h$uLd zjzXD$ZWIkOLLm_fgn$;}Cf@yK+9&5S3T8_w&k-cZ8BBM*A*?Kks(9bO^V84Sfnp0S z5(4DrjXDu{Mi9}_rDRXuhc4gTV7(*n zJV)}SVe5vcJF$)*KPO4##UZD2@Fb;jR^uEU5?N?%Yhmt;VUyhM{V0Rpp5E^&qJZja zXKiMtntc>$0I;NS6+o5O-eqiy!mz&I7hL25V>oV0{kd`W{Xr%nX^UIE+Q zr?^}-%@*OphAxLz`mtqnc%!)EWhth9`b*j-(Tnyy5bN)&xIaJbTFo#g&N)RW+ ze>or+Jd#rJ6?i@cA!$ylT&8xc6jjzA%9%*n&%SJg(^#Dl68MQc zFmM(`&=kPZ6d?EP=U&8*6Syc`exD>R`22bkDH=ab;CLpPm8~*7>@lno_B#_)e~5Jb zt=tj(^KU@?V^vi-Il5`$#*G=8Gb_a#$R=iqF|~T6_JRJxv3Hkm;ez??N};eq3`t51pv3|U%E{V%K5gdHd1uF4-*JAH)Ne9C4@dipN@s5n%3psIug#w@zW%EYSbl-P{F^xE1nAT4k)Utq0a zls0DF#b~xCIr4!{QQgrOHkIz|^!E=tm!d3M<+YoJmvC;6EW9_TJbJAWJ)1lGgV+i)!JMv}|A)D^0IK6z8b@(=*I)+?1b26b z;1UQDT!I9bAi;yXLxQ_YLV~*o3j}v}Pms3<$nW0!zVE)Of4!<#ug{*{o!!~lo}TXB znI7p40boXWPZV|L#@yW zoC0{Dh34lw?mhlq$KT)A&;RvJl_+aVJ5c~9QXP`TkHU8^H&?QZDGgUBO;$dWn#_}| zt&*9nngm5hzbCMy`w>I}tn{Q48j}y!UYYT+1eTxjqzEkif{2mJ6o(qkawL22DJPRTAO{*VPzL~*ExOuhcxV$^RiaO z6|Uy&;SH*LMLE$A+C!poU29aM(kW+;9Q8VNeQA|Dult)%2p9nf;-{!mIYn6$&3R>9 zX|kkvA)^+)#1Jcd`F`FollQ1*Q~QIz12q)ILfeBm;eqO(05pLl)OOpZep9 zp90YG*MRO{^B%pa0&9E{hd&=qdR9+^^~grUc)(->wlirGr*JlmNnJ+J1Gy=BH%gxvD)1nMMlnZBHq&nn9G3P z{hGMa%GD@#E}qj5QEWV?6FBG-I5^PYGQ%Z&#*y5i9-*PmGMSK&@BvkimCdA^z{;<* zG^n7cn8Z`euh?FP} zW1!ri$e4(TiAV@1C@DJ1&z~XDkX|5=%j`fvKyK=f^{-C3>)zFOx-aL!9H<0eKQ zzqwvUKS6N_-pJECMN5M6wSfxnVMS8@R5Un-iXcM={Cmz8*Z6%ttAp~OXBS`OLO~yW zAcsH_&f0TM&*M452x)nxT(%{2_$3yoV7BcEMkFvpIYLyhh70_*y0MBYCfe>56_X?D zJip7$--+qwAB_?tf#LuSdIA8;D253WCRaEJc zm}vH?$JU0#Zor~XMnQ!I;5~ue5m^4f8|&_JP@9m~_31h*dR901 zNQ7z)HVQXVh>a(}#Kg(v(p9o)ui?)^zujTR!XZEUxSO2|=g<#v=evlx zthwx1Bm^0ex2aO+ox(>Lb_ILEmjziT;feelsxKbT)V`{_r1 zLpHo*^5Hs5QM1g)FCC2!78W*?QPx-~p!UXVoANICApBAq0{Ras?&S>0H#%{vWBav$Ll!BrhP+3e#xrEz>o=2O)>lTXqT z-kB9hz!cyyrW}pk24u^b%`%Jn%=>*|hq2cst{Pu50_&Ye%{!q)NrGT4M9*e>Ad z-MeP*Ch!m{f$l8;+oS=V96$1pj&{5BCO=*qf3Q}c=H%pfe#r4@8#r3q+HyOs+B8kX z<)n308-dSM7Wn>5VDIGO!tMHUeDl663cX-4^Vh6FR7;jHl-KnYf{YCIQNc)7h=ALf zp1RKJ58CWy<$t~9@q_U6U2r?s=VV=-lrBO4_Xt0wqh3dX`QXUDvY+gKa>V9HrZ9OP z<@iMm&$*ahHLAzNqdMRY}l@oyzV-ZOZ_XVm!2^oe09r-Y>^{yRt32&*ijc6x@cYh!Y^I1pb*$nI8aqX?J?3kKMS zRSaLgRQbF1;J+RJZ52X!Nq|4W5E6!jgiLIUn*Tm49n(_zfWZEj0q=ROKcR~$?_yH+ zs+HHx;?6+bqMfUE&E`m1S!C93M`L4s?Y&QPak1qL;eWt0ugJ|fDyrGzYZG@zLR}(V zHa0e*Tk9EAqiBNc3DlOCwkU?(aM|5(b{}65^DV&sk>`26uy7AKb+8|~v#~P2##Cl& z%fz@he?O(k#KncXwp(J&u#;_NShQVaP*GTDe!Q@@PW>lO+u?+&MNJ2rok|=PjYDeC zBIfgha+tdsb5fn-)p2hNA~KI<=}*S zM!zB$EFl;P<6M3>CiAp$d`)|Pg#g}2i>I-&+~jed%m@b zyEbk_Lt8S8LUwx}!%D8=MGe)T;Z1+?iR<}m0Y^5{lKv@5`hE-QY7_Y#4>Yo|8UyL#pFb-B>-|FWn zmGRZj$mMMaaSHmtR7{n?N3oS?ehf<@$!j8>UY{z{UH73vD+^}MdCxgh^R_I|)xYb{ zL{>}Y^OxOUohx@|o6KS-)?FQbXoaPdoGl{Me6YF;m#^jbQ95xJcK3Tj`g(u$XOxk4 zEFGhPfnkrQC-#W02i%?@u7D**7|~>9NeNm_`m08#opFNxspG4u)}B5`hV$dNsv`tt z{<_yD;|gDYp4-;E-A%^DH9FVoXpW8DTbk*Ncw;E;QxE4Fr(sM!eY)Exfd8Ds+kwP6$5qGL4yT`wmXf(xV4z}M~$4r(m z#_`^Y|Ew7-Gzp7~PvAJZM$pcD^_|t1m^@Meq~x5M zON+MJL4n}&Keb=2?cY?G#>&N*v=j_pGMhKI4E-``C|B5@E9J~9N{7_ZqnY!hRT?DN z)f(6SfX}lb)?^igB0Cqyi-ImMPw(J3{#k)%>PClCk@MzQ64z^Xk}P2-u8-vG5ch4q zi&fQzQK*t?iD2rq`&?W1`)?)`Ynbarya-B3=Dj^FNmPz8iGN^``*FWi<+DcQ$3`!5 zHr$eC5Zm4PzZV2lz69|9AI1n#;3Dv4fCXWQN;Cr#IuCBo(gCGN+A`|n9 zzgVXSf?=(Vt)42}YR8lpS@&x7QpbvS!CvLK5E|B%(TvM`b4!(!6%DJ83x-LNFEggc z-Z2~#9IhvT&3Gd)}OhF)Esovn(Z?V|TtGoH0DDLLi$q}OGTwxZ`QYA#c(E=gB zHj3YE6)mV=I-KD0gcOGbD?cY2T`!rPeZ@l}Wd9};@makm!k`oi4S|5gm}%Qea#qDu z*1%={ke!Qdp_Ri#6dKEYdF=cAS<4EMxr-@SuIC9kLP;}K4XYKfnZS7czKKrs59|Ku zaYz1mny&h~cfuFe8tC2Mi{Fhw9|yL_e8J~U?L))(5Ww2TfR!GQW}Bby$v9z!rRXb% z`0fN|IVnAjyzc`ms8yhhm(r&)PetaBuEB@<+%++5^7jV7QdV@<7A9Q*mDRImFW?Am zC|Rr?HW_igW|~9;5xJW6)>9uXtLvDWkWX2Q9@xlfro^ z8RWc>9KOvlc+mL9FeHSDL0^x&?HNd)f)NS1^nTG`$OBh?^6GF^_` z9rn@wz|xpBAtCOhAg4fFEl0DF(BQ_dVJ@NBUL{f1qBlEf{LB%NjMEFvtTZ~{to!;q zzH!L!hGLgr9JQNFybes+FocBp1eGLV)CP9nrhl*Ff!E-vQh!*y>0yWacs}#EW)Jg~ ztoFmYJ7JXIm3SC{t5k{{!zq3#hPonz{YQ2W3f8CZzdw*~=yHA8C7$`6uF5-(`~zN_w|B>vmU=sLj^7R{ zCB_M_&a0CQ{@mM5;>~XJrR>(9esMgzF4+JW!Zo^OG5?usofLV`sxL8CA?Sr(OMemQ z_4wm)<*MRA0-nVh?$Bn$9VF~-#2u7`Y{9y!{+js=5g+d|Mopto z%;|LCw3P(dy3vt42kg+a=g6ktDo+==Im_W(p!`VUHc#~laxzj~Nc)kpoarz|_#?<| z5rw_`N+8g?4T;f)l;AW^`<%<^Ey_ETuaM2#w z^m1L=ChEc$ZqPkEUAf<(Tm@OxCGpa2kZx3Ab1=%?h`?=-VMh%59ap!)t@1=@H!0N? z2j8UAaNQkq_`TMcSFqP{#hKPM+k5vjgIh1HKSi^dp_^Gn(4zwHQib2$ll2;gSFMKo z-DIllk{(O=n75iMZ{39|o1_~K61p+N`?}Kdyp6Dor0uHnM z@P_5=gZxP`E^pa~(@ovuh6KjZ_PboepXtmCRA-9v2ixD$T3j)^-N)5>nwNUGN;%o_ zz0LI7%!F=sFPIXl+st%dP`g z*x?~|!=@F^zQ36vwqsnvAQ&SeBEm*dRLW6~xG)>VXXI3R?f>kn%w@~K?FylWj!kii zZK!QwBySJT<~JXymSG48{BMM4pGsk0F2F3r($^VyXHzI9GE` z%WA*S?_>{OM};Ku32&%PObCZij2dA%j6lYXvMCmxl3OevnT65*yMu?=EV8+c_|)^l zYQ6zho4|vQCQSa=(={u($f``bxZ1U1gCEtIG*r+tRFDeAu-hk*UoyQc|2#3VXC;}7 zm#Z63nJmG^CIL}Qn-w7J)3R83WC{Xt%+k6Ib;ExvBc=sT{Fd!_1o&Yqj@ zmL}^zQY~NY_;0v*x4Rd&zCOP>qaHc^5%T6{&A4S)Oz)nTpz3}&e9&h~%1r#eilE+y zbE+<@#<`65ra;?Tc+t7!Za2lpcf;V4WZ=GRu;q^)%Vt)ubIBDgyUiVc!PWlc9e>pE zuY1ypKZ=_^cO(Nh=4|)X8&14;1Eo{mr==}k8wSnqm=}33r*;#)cgqaEzhhqba#?@7 z-{NVvFnd{lkF`*7z8$vyIUAThkziY5`^suo^C5$^mexSvmt1{)iM7?!E=Ceh>eoXY z+xkf$CU^}w@CK~zc56Nse1s^>D_l=z&mQZ3oYa$ZWK`*8f0lWM+3-hr&Y~D2F&1On zsfu!I@CJWvGy3RF7~JBT@b4*(h5H5d?^y-6nP(b@BOyPsGCtlAI15!t!c<92oRZYn7$9|)zTrP*27+1VY42oK}N$8%(ESUTt;J~-zOT19r_ zuWCl<4C!r^mSy^N)D60fMZHoLKonAQ=#J?1$OU*s-~ee{)m*w4QEGf)S~pFAdsln zQf$J_OS#I|GRzDswfLFHqwO`YyZ#rVv~6^vbZuUS%`fGTe@pBgO%B$_{@j) zTEM$}*46@KOg@U6LR+l!?A%A-?pEzI3$?|e|HiyoFfG^9)Z=HZ*+rN$wP6`4?_6T_ zFLk-lg^VA+GJedW?8#)re4~6D@#8C(3A)Kq#z)7w7Qv|&PK~2Q$iqdH6K2pA<6`tp z@Y?f6H8(@lFN?TP*%;jLUamm3c>&(Z{$tTRY3uM@^fJoc!u5uJoc+82ZNSZDz)`|7 z+k4M;0ou*)$n75Z0Y{nG;=2h=Z|6Izoev4hKTV`_Q?Ab8x}q)Z>4$x-DSfvow4Poy z+Z5>b)1(697(Ud=T;^y5#pPgVB}4p^E86@V{V#qEw{;h^w&|i3QmYK>Jg&*fCRdxi z`FEZCuJ-%-C0$=P?N88VW}5Kr51uKmX5_TFG-WZkT2vxeDrwD}a^CYBjkoM14_~=f zv?%X-U;LP&XgKh$qrO~~KWyrNFu1YJyQ1RrI(fTw5kyw0cpQqBe5_12ogq3wj1_Vs z$8Kh-1X)XexBuVTo4|EVhT;H76_t;8K&POI6u4)w3m4o;_;B`L51&i5tE8TvjDDw@ zb0!;IbIzpon{y#GcVD5#3YGZG0`~IbA7G7)@c9=A3lYYz2(lN1h3boiQ8dc`p7mJ! zD&5!E7!G|z`1IPu@FwE7x{ge_gAgcR_(ljA z1*I!V#g5$H24rMpRQbERizSO|xqxdH^W3$~Pt>%Z*3C0jeiAe1&U zqf63#R#lxRfjpSGjdvI6g zzM1Lav^`$bo;_;gaRt@oG>iZB=bp2A09k;dE8@&}@cME0TJiN%rm1AM7y}_(K z@KMX%bPrwRzLZo}Nr1rp6yZx~8-O&6bn@I;cP(CnuXM38{wn#lAmGh?v;0wvI}|xP ziy1=H<-3gWEK*P0`yNguYrUVG5gXMRYkykir3a8xNAL0=HE%Dy@__M?cP~nR@mzRn z>|x+#G!nz{JXeOjP1+@@ORc%JDY47SI*yk=CgD9AXXkmVEIy9T#Drrk^YJK5tg`aMykj4m#nhv-XP*h0B(LhyKa5 zTtVY+-q_d>6HW~6EIQ0RJ7@m>Y{i5RF{4FMMioP#Hvr<|(q8o2z*5Y$KOU3yGGhk;${O3+bU4axekT)zEl# zXMSBMYKRHJtqOa0z9y-HBBmb+Sl4X0Gh6rg5rx;^B+^}WG3m1AtS|gdtIo-v8!1Rp zlCp9A0W6Q`O|9%YgDp#>)t1l28X>d9(H~G10(Qq#{+4v5fX{3D9LsB49`7x@@vsj% z;+g%cWf5-w5E`!84*smsnMt+HvGi~9xuZM!mx5L{TzBZ4<@$lmN~)PyV?zg?bGTfj$2r}{KDH>QTpE*;3Fn z7e|C201egqJ4H zTRFUH?~80%f?u5H?~p9rL z)|E55zSu-OQ;o+#Uk& zd;NO;Xlb_nD7IEHS^Yy)P#TP~NCk9LVo|6F-9Vdbqt5}~davHW#q$C>)iEOSfTjk^ z%`dd#X~R%}cf?5ZUb_=C#hGJYxa~|Y&g(kUO}|~ z)y>7e3jW0Ky)Bu|rg~VQ)iHSkP(zEQg{+{;4f-mx5 z)+=F_M>wY9ZMKB_>zx=IF;S>y!i#|j?%vi#jz0&dMdOw`)=_1C->-2|i5Dt-hU`2x zMZXYX?c{Fm3%tPavD#q@FC-KZ3c2D8+oir=`U-hv<;N&Q3?prw@AoS!D+&{S6l5@P z-vdJNzLP&VxY-Rn-Z^wf-anC+? z@e;S~-f@0!Ff=-V=NH(^hUS3GB%1QP=W;mf`{ zUxucZM&6WFolKofprZUH5~*GK?;xVFR$KP zXF9qcx*qpfSBg+x$%G+7LciG*9Da3{sJ3Q2!$DuL0CKB6AwVI0PfHz5e&vrbwoJ3^ z&@qZV7xf2m?aPbN6JpZHoP_DTX4vK=zZn}9ElYU#S)HSL%fX*S_P)L-sDQU;?XXvP zy&DJGds3%^)SCrylt$LymNz!6#N?X`TUSKl(U7UW&bIz?=UNhoC~ejzs<-_z&^tZz z-s=;`i;>)-`k9rNMRHVa-WQ8@9Y>~fwFoFKg4u9wIKE77acu(zVtp`(;f>`~0mMSY zfpwi*-wRn?%HaVIT;=#dLv@`FM7aT6vn^e<@DZEmRqTI;F7BB!bkl?Ek4j^BI5lzU z)I-z*H7Kw`1tdX-d$N`^jIv8(O2Fb#HnN{{(~oLawXg9^O>6#`c;R3?Z}e>zQ&g)! zzdk()#8-T-y?SvKgYL$ObP3H@b%FDe>T9|wc`_+;b#WDpLFk+-A5&RJ>hsik4OX}I z8uButGQF2hp4w37W~*d;u-Zv8l4^Q+-1UCp+EOCxzTGOzM17UE zgF;y(ntvjpiFMD~Mo2BU-tsvR>joSMi9weBl#QBq zy;HE;&7y>OjlseS(FsdUBSaym&dZlzrOU_1`m>5Ql-1?@^J1Voftc<^OVTZ#nOTP8 z?3v#6>EO^8#qojlivE+|NI)wNuehvX6X?l!e)fJH`~{pwgqn0eW0sZ{tH3)81ja}< zzB1H=*2=V8{D=r8Z)pWwDK7rz&|X|z7y<^M0g}N`4j!a~2m-vv#Oj(#|5jrwE^|)< zhh#yu{U77xiYGMy6CxoY4zc3eNfl76!eDOYic3ccd~)uiS~D>0RTHLu!5Vv$sAOSQ)!zVG?_G>yqAGn3=nOeInmp55~<(W8M* zNiR$&h}JYl43lZb3d_WzkX9`=Jg@Fi-a<^k6}yz#;7$+uw9$sWw|0eml1c`JS}%oTe(?c$FSkH zjnW_Am-Blv=X@Vx>9SN{;5mK#rB%!io)b6gFB#dFC8O0eED$cyS2(Hh6;G*`on|b? zI9z`p`SmBWX5iP(@V9kzhc)k>hTWmA+LN7BOFMHdXeO}@Kkm# zCubi`xT|Ot#;3R2xm|Q_rsi_7?zH3Da&>j}UU=^MCQ4cPH=m%-#_{mT>@>p1 zQ8;R$esvGp2wuQ+2j2W$8S<^R5cy@vef1+z&VP0M{k6Qp-(VHgTtkeJ=QMH+C_q0fAXDR@mw>8 zRZ&olubh0iCg18)9bu_UdXLy+PK5cq;V*tb3l@@@5UJ^NXH zVY~Sker#@f{Sgq18#>KpCx3I|grS2&QJ)DtK0YqENR^~q@B~@~pOmG%)YlV=6g$cu z1|D_aINZaGM>axeun>`_n97v8&^$Ws_P5Me=!Uljg+e_IrCN&Q87G;HmGpNcumQ$W ztwwTd+SAMC8Zu~M@j|Bno{#H>NU&uo?M+2W7>jVU5D>xxHn&BMZWiZt&_lD}7@#K#(fY&i6S8W6U6p`0?MiJC6$uGRV1BPZc{NnmN5Es!)2*!=YF6+$xZEEj zf5fAQH14AG4+G+>01*PulWa&5ix$2fM!q3OJ&=6z5i zvLJuJ;Z+cfL$T=xS+R|Pnhve+ezYme_ue@Pl==KXU{-y8uzV+ z5KuJ!`uKp=ty9A}jYgy&jkCpzsD$m?l)*QDk`MQGT2|2oX<|i$2fpB0_2(I-Vnfzt zMVpzedCE7Nj30%cKy|@7*YHE8fqVzaVq$h0`$J8JsShF8_z}yzdiYWQ7G~gYk7CmA zeGG&54y`04vRqi(nrUf%prN5;noe#Y5VUa=D`))zqt51o1+*n{d|z9kLUwab)X-@~Tg2fYNCXqv*Dgm&X8oiu4Qm!wKsY$Od z)I=h9s2_MsclZ>9Kp6HgT^Ja7F_!BKV%2MdfC&aXe*=Evtplwkq#y~$o~9JP$EL)m zR$>jgx@7fokl#p< zK|xyU_AQ))%bw%Ij<%AlkSZBWp!kXjhu_P9iXf|gR{gjVcW0M{>tpWOuSaRLG&V(@ zc7*cph_w%;ZOwk#mRo$~+%KvrORtp=gJoMNBPFrTU2C_P0WCvG#=_IUJZD7;&;jwX ziFAwMM(d!a(7w34eRp_xxVt$$ytXR_adz$e2u^Oa{ktvvjnu*YU@^o6?;b!>CF2Rw zn=trO#sG0I1|<9ex&Zf*;PbGD5P0{w2m`!Ce)`XjJTfE*!Mn5tV3BsW%A2pRR+WAL zf{cmzPtwN4h507T7=MZUI@#d58vEsO5H!kzlY7me6JqILuMcZAb0dyG%7y>DqnIHS z0vEvTUn3mUHQ?JWudc4Z5(&a4DDk9}2x1@r5j+%@?pA<*ydP#^Hwz)`gOHUu7a<&$ z4NE{`i>ZlDu?Cnv>4b)Nc0zZzcUfZ^*U694{(roeD=sbqoyi*i6`TJhfp_drz*Il` z*39%@rqD-g`mAjokTnosSqDaI_-Q}_fqw%{qz5XLP=XI%{#xK4pLvR=ISD@Db>CO! z*mAmdcL)A}rV-an;75Rw5Y0j6OfIoHr+&(ENkDF-aiN*jL#qGVuCO@~@D%gk;2-2m z{)NiJwSRgCo{;)KKj=sNx~2{Bd(udWR%6%-VJp?5uV=+xqM~L%b~akb5!-N}3{e&Z zE4*U0DyAp>$IFosW1R#hgc|7w7$}qwNYSt$S~i5gO5Rty)E7nyc017EkrnL6kXXbC zjJtd>pIg|2MO%03>jgb-az*S5(v)a~jZ`5)BT$xR*0bg$JN<&bZTdc5yMYMVYRjy- zsi)HA^EpQPLkOeT1;*RXl zQEsS!D28v&oJ(V8QF-GtWiy>J-RotiQ)Xn(B5jrDt6i;bnQrTZZ-=WruN|W z>8TkLN&q&=8$6V!4sDm93rj_#)n=XcuWneM|lTu-oKZAA#f-CZ|WIIsf-dNMV zE|1U_VNG^yj8>J!Ikyt9U_<>tjt~kbK6%2O`EmY?xk8$E`&G+{p?Cjlp^T9a9)X=> z&hq}uCD&OZzcWpmHa850j%PW&W`4@Ws+IfaO2b4j)8bd08<+p0P?xLTopig}=PTG& zq>j(v&2Z?`;*`h9PPkO@h%#~-V*Zw2q+a~1B2F1nxy4&m-Zt!vm#L7ngd<9*K=<8@ zZLu?%OZ>3<=eYNPkzXcZcE*l=Va8p3?QL8%Ns+k50nbFSNrhU0t~#%~x8rS}wN8q9 zzT*B)Y}$mv>O$y*XH41vlk@4RM+RAp#=80~bCi(YVoPT8p{vJl{;SJ9e#_;z#p#mj zoE{Dzxx-z8nMA0I9e+A@&RU##l z+r_ozl$|5Z>(+fSOkXt?)UlZd7H%~?SH?XP4M?r-V(+;PNWFYE-PeT$doAa`-ITY` zj%5kaeNrzP@6*XG(e4QK>OkgSeF-@zHg)Zi=NL+Z#V7s2YcZ{B2^79O&utXSAuCip zsOa4?xrX8}7c0~H6a*aYsQf3sapK8{s{v^ zOU8Mr*`ZeE)VK{SxwHC>o-0OB#cXWpT5P<;PPmR1)d(^3cO zS-1{Pa({mUgQg~9Kxr&QrM6Nt4TGCV_0bX^Yzt?S7#gP%39AzhtVX0jj@%F zH6&HkCFDtJt?Nnb3&%w9iGC_hGG63RPC>Wgoy%j&E@2dzDtWrSt9gb}^X#DG)z-nw zfRuM%M;u@RW~b#k>eeoIkZg*>O1LB-cquS3$Dz?)w2g~S#!d6p%~i8|WUh(+i6>N8 zw4Vp%bfnG6PSSN%ybdqiVj=T8jc%+n4t&Y#=0{Ys$%~tgg6R`n6Uk_!AmBv^&#Cco z#i0e&I~;{BYvR;DGam6WEZ?m$3(CA3{^Js)ew~&By)|Tv4rW?sH>)sAXGB=}EC~rG z2dzxxR@?kop-2}~e!v)ews)ZQoKYpL2GUm%FDX6O7)t#vDmYX6LYSE&l!D6x4k}I8 z?*^`e>+}oSoEo2bapG=uyslEP!_lo5OmbI+i$;go4CReB1l8CvTsQ3)(RhTFwZh7~ z7O?gzC{|ujt;o%-g$H+-Q zwEnc$(-sylb}3E?!-shtJlvH!jAjn% z&{h;`jp_bu5O7u!eHVcu-BC~rOF$!yiTH%#7Q^;6h86ipIi%g#nC02bBAl74MtuD{ zc8YyKU~4=ZOS7BpJc_X`yK=BOQ~QxOSwAjPGE8`8Xq_i@AJ^8W(c%}Nz7>1%h8^qLye=WPQNu) zuE`x(g`v72Gpx$~shHno{EaQcWEiIzZZRxW-YYQnQi8`&FDU6d8h0B9r6lZLJX`s| z@)p+Y1kg> z5H%h;M>T}b;ctT2He|f#4Y^WnkJ;`GMyoSn?ItZ^9g}U#OquJDv;fIOLDJ$hqpC?ZC29xgfMm8hZ!S*Z>3wZHRp`M zYO1a@ec@RqeUa==$;rbTaE)JOuNl88vbzwhLJvLXQEsn3(`RAO-wsb05aCf+H+fa8 zRHDorwcRjlNyb#CY%c#fJJ^^pgfJzU?R^-&EUaxV)`wo^YiUoYERFu4!)bw`hQ6_z zB(5fkYDf8>rQBvIA)55IA9?dlX;On?v*{`wGtfZn!tkl$sknX|Q)D(-$x2zdr>nXm zt4!)B!{J$Gef4EVS0))RQrlJ=bmz$zbfB@B$ftVG^j7?$%u0i}tziQfdh0s<(@occ zW*s}sWl_^z#AR7K1K+=+cJR|3@h8{|9&%CSFBd3$}YsWO=u7872`4Q^VPU|0>Bu%)%Zn0eCMCE#;6p`^1nK$h8!dSCnZh;3j*oheYDwx(Ua29AMN@Us+=ESyOM1PRc*bB1rUkub00(R9C>{Fc&G zuu|@%;psz9JF5-Yh>I%PYbTl_ke5^L1xQidx6;46%a{@mOMdGecvUp8Uli`&Rax); zf`&$u_z${ipAq3i?XrzwkS4r!4F%xRH8vODBujN7p%iI~>~-vWNb<_xbn5+cE8?iN~q4jvR|>(zwsnKaQxl7#hdQ~GFr9$^^rg9uTH9IiMUxr|cghp#=s+gOOP z*N~~Q7B0NEkx_5*ruVFFdt~QN?7GgmfBkJ00PO+C#r*o&|9egQKP%o7#btl1+V!)R z5BJ7?y|S$@1J}y`*5cQ{KGe}QG@OA5KzfsZA9*+q02d#s?~hj>()bq=wxv&z|2DoJ zj5d$gJeel{X%IY~)PZkkiJs_eZrBBL4-5k>X1b8QaPNByCWSImo zm;D>!U~+%~;~|lRf4}wL5Ca0{Lq|tjM~`rNup=a$v{9{3gnW}83`#9}v_M)yem5Y8v}oUaG)VkZ(Bc?T0kP%J zgsf&hq9n8JpUHuNtN3VN()}ryqU1Uz6AcsW)EWC^XJpbfp^AWk+4MDT>w7Q<1M^VF z)VFv}`zT&sNIg$~G;CH6Fj3-H%S6MzI>UH+8$yv7T?`Bn3(Zql1`)?s1+aI;=K+S6 z1Qbg40=8I*nFz$tedQ;!Ky6WUDhC83scs0=O}{AU!4yeqA<13_3MKy$-DupU^OxKy z2&%pQwvM8Hz~~0)ZTo0Tfvs;G(vZ1F-2>r@rk^atA&&?2FQv@^hA$ReG5@ug8U^ZFUlAp|-kvt+Htm;E8P2?P?iso`;G{(?C%@8EaR=u<#X-io`}}tT`Vn4&`)m z;;9lC$+NsnpZoe9pUM^zW!b+-Fd$_3OW2oRPj$(wQ+9q^?F87)>;-w&^m zh!!zuLovZ7b?kZ+J^mn+!OrgDEld(HK_s>qg475Jr$Py~qN!DJfbvz#Q`nR7tx4|Z z!vuw3$%KN-EoKxZAGRZWinUjF6t9*EoVez@)WcDfJ~%4QGDvGNupPu@+aHrqS_Mkx zhb{-gssxw?y0>tKfI-Mc=9GUQvr2|Dv*wqRkOE5l0i!&H_CXT`$q2D#Ws#54$al)l?O(LrbCu4!<_@I|s$;~K) z2*y$rt^jM|P_X5Ja$J}|{y1Pb{XP`T@(IIKh=YuIve0IQ2i)}#I@&=Xts6^|D3Lp5 ztcIEXz_Hj}oCt_4IVm#i_Ivb5V06YXhz4Pwebyc?j=-lCNmQ2y7hHL_@zr|1KV}cn zoBCiSb^ynSDuw=q3tudk=NhrHB++Z!3R2(%>m|zZocgV+NE{jnXIPCTWI+yfdOHNT zg$eYTI&881d*#`=F<7#o#5_lKsP8t;E(N^n32Z43&vvh~;~b4*Ig(C(vKAXM0|@*o zHifYrRZ4}FJ>Qf=2Hb-}OHY8k_?kXDN3D?h0bic$gdDLLJSZG1Zd5rjFgYP9ikp*RBTRp~#(w}%AG8ttc9 z7nJF{^iAH6uPjo|Zc5M{Ey3)(BNYvKnqWKTaXqte`CI>h$>`WpM19y19CPi4-p<3* zDcdE(!F||$lN=q#9@u+r#=Y0mTl&*b{d{dQ5mBgaG`?> zyj{h=()yDu-H@EBIv_O(qfKVHbDEyEa~_m{t5#nlvFXzp0WdA8;-j@SW-lxVf{)Th*9nuV5UAu*G(U8 zHC3MoX1+S*Fw7hz31tR2y#Xj4Q|kvcZS_r+08h~j&!n!*RvrAY7{z%mY9!(tbF_j19BBD}jN)*jR zfGLS(97gvkjQ$xlsoWN%nLJzU-(;QqM=)C3+0y&uR8zr%swN=MR&1wQ_czyRII$cCTkAe6Au#pyj8{pMTZwf#*t7KWC?yb&pdT<>bK)sDxSfdNDe?~ zdr001s6ONASHnyWZ`FOGaAeVtHSBX1xfDxqF5d~L3~7LJVDhvch*dV4lWQnXiDL+0 zG6vux7qf(CLd62yr&k2ZC%!-=q*px!i3K=)xZU9fn<1Xw86*Kv?IFLiQb-x`GA1~A z^x*PL;BRG0KI=7phec2c^fdHOfWOoI+cHjsFPx-||BY-56x1F?AcF8-rpH1n8&e4# zUSXs*6Sda;1;*3y8;sio!cG8`?o%P==HP8&gOIX;dwBq3{A6#HW`I>E$BNJ6c;X}- z)#oWN^kOt%9T`Tq0I8BK$;O(GXr1_2RNS)WCObW(nz?L%+KPDie8&l>{*;vA)-T`I zFO$o^Dm3*8)vdE2DJ`BX(JVcX>8OjQioIq_Ztm*?MfAx5kH{+{DmbW75gEIW(y;!M zzr7$(4B;10;RNt)e9ZCy|2RRaiGra#)7g*)&>8vmp}*cKpOrPDY+qu6g+WtdlVeSxOTiO02XTJ7y+~MR@xV zAm0Fc>94l4W0oNo`w{k#SayIJiCfkT&zhx%LMavWP*vCwpk&37!F=PS{HB?9}{t;4H zvl=AT*gSd$fa4iBn`?B+jF6v1T%|~+yl&P)n&gqG*W6?rjmfJvK|y{bPs+#HtOn{$ zs5au$6YCLIW4_M`A~^`ltmUTa))E_l)UjsENSt$HrPpF*X=5d2Zh{cOxy=LXjITK= zfyJL?AJv_PwEvK`*dV=}9DoQdeFi(GqLCsjy)1y2RAb`rQyIDu&bSy#pnn`pJDF`M zhw9HJMMM$~-N}H&twy>A1cTyoVJ9RWs}4@EMB!y72}u_5xnOxIdX3DPu^mVc`KZsF z5F)9Ncs`3fexh*HGecI`py*<7c7T`D%Q*$I>!b{5O2h+#Yx^L+Mq}ZfCe|!CxsM3Z z%e%o&h`uPMiU7tsJZRJ&;x3|5IaR3m+#=v@c>+-3{&A9tIse@6F7OTS&Ecd+daP~W zDC0<}P-DtH#-=|(DhC+FOdYJQ*9g6@Khu6I%kRoD`BE5lq?aLE@0BIOQ{kRn^GjQ3)(-_Ex@u~Tohm6WlEo@sv}X| z@KjT*L{!N81d-P)Qp8bR_jIjRoHc$@MZ0qYrp_#-=c|VWX|Oel zW2V5kW9<{hvM~vcse^K+pNkmF{$k9g8V3qhQXfr?YfgD!WF6CQK{jKwJozcqBwMI` zKvt<#dc0vAKC^$*+E6Hn5I|-howTYm1&=>CFELUrb;mA!Ll!Gii~^_3C-wU2NOqJ3JRy%f5%wGs<-lj9e^6qGWbrbTO_9V+qgkjxnFsZ?t1`COZ>g_%W|@Q;IMHy& z3Lg~nyM*yL!;Fb($QiY(A7?h;%#>=^5b9i;sjCw7gXcS_xqJ?@KUiguRI$>`18-UZ z<+PjgDd9S5j?f{M%SitIL3>=HhHvl~U*c)1cjsB-F?MSLoiN}j6EUJPpEut;SvE3z!GY-o@p9{=*W{3e-Dq&e+i*yr;T*>tmtn`4LIuOvV`oHM<2IxqF zw%yp=aAVuHy)ibnHnweUxUp^9wv&x*XJX^de*gd9d+xdC_GIeR)Kphj_oS=qed>Lm zN2I>UP?sGQ3uoVkVK0&@{J$PJ`H}zjKzFIIsVy8ehC`3r)=XZ9lY?T)Gek5M$G1FK zTeSgNE&r(mtf&0%AyrVNZ4*Kvimg}}x;ELoqWp_F1RlnUhU#3MVy*u0|EZncybdQD z%9JOK*pvo5%B(RQCd!hk(o(ftlj%5Be)xYLe86T4f$b|vvfDJHry&@MB;Z=HtQ$(_ z4x`f%SC$r3>10?=grF-L{p$emFP8)+kf^P)IfWIWgTit?dGovDx?=fX1bX_mxPHxO zDh*Lhja9Pv2rOD%JDpy+LOc<*rC{~$y;f}*EqG!wZpr6*P(u?~_#eMf@CGtY4s!9a z_q4qNd{JRo!7z728SGNS2wMo_fwSZppQ8r5sHI+lRS;MM6y(tXZLev`M;w4NL4{{+ z#e8TM1;72Q%|g|pnp(8dkRIo>z{JpW*#$J{`Upw6`^F%!96l_0{u90o9}Nn@vlF0!00D-f$rd^W-WzttDv6mTzn#MM%at}?mX)=G_1h0tR-c8Q)bQ}w z1QHVBM>;+i19T19jwoo0Q6E;{)3me|f1M0?5ZKS5o*Hwr2R~$HRKnlN5R;Ri7)QkU zjI5VxZ;?f5;TtwBvnG5fnG0PYPm~E#wanR%Xk-2$r*t5Gv_@SnF?_rasDC}xR3}F> zMpE4D%*@Qq9&LC#2nRXR+-}BGq~IUO)x^Jc63^xbnjPs~ki1|9t$P1O1l|V105RK$QSQrGT9w`OkU%ZwCzE zDF8vObK2zp!P}PAfk+py6j-$)x%_NV?H_2{!paK!|LNxcd%*u)@?%kDZKo+c0BsekM$$q_b+S()? z&g540k^pRm))HpDH^AFHC$iW9=o@oSLY$BJ4+A725|f>oPD3Lxv#i+uXZQoHzc0*x z4B-EA<>tHb7C`qzl&dQMDj5E1R=rd2i4)@=dKV%) zRSaCJ1Lle!)GW&})YL@Ei_OdySk=4K;L0oa=<&kC0|+5RQyMxtpv=q~SW#qF)kN~> ztVfl{BUQmd=n{Jp4_+2Y<|)j~AoEE`C?v;|frof5-fnwVg)1+gIzGE^Ui#O&`)|BZPmrwk|}t6CPG;_Po8$Z1A=G{NCa7OGp4Y zD5LAl$2M2*3kpb%e)QM`P`j(~%)2ZCKWo2HQ!+#Xtc2Hki}40LAYEOtBxg0R3lBH# z=1x`8cOS4a5T_a1B&;L*I+@j$xVhE7E&~%cx02>P5~CfO;)?iC2?BQpf}{#UYT^&koaPUj zA=?Y$Yj8FRqHB3BgavK$3!IHVeHO~%unNR1)5;!fKNZyBUp~u9=zHEINE==+e2@@< z-db8Nbc5Cu2+vZ35K>d##el#Zs(BoU44xZ-9tbG;){sBw_f$*}2s5jHiGgFZb;o!E zEo0QW?9_cGFB6AyNczaH$zGr*LsvF1 z$S?^VlJo0^6T<2J_b5_UObIhV{>9Bc zyJ^}F^FCI)^7kIlLwi1ThhYaD8G&<`W&-u%1slp3H`}l-yODj4<(+pXI4^fI?RVFL z7MFq~7Jk+(Xf!?@E33jU7GK_(j=e7F$zx`VCa=-JKg{@?1eK9`4DGiH#7`;<(xYnK zD?&NC6%H>1wuoDHTb@%^0tMOD8pwTKX6tGfca0x9lg*d=8jm}M+zcBHVwRN~7&YsI0S@~68II1xPXbvAJ^~%vrr}5$rF*X$IKx7n zI9G2|YCA-Q`|c-oEAO}%TU-PZv68?5;Ac6)lS?2E_|{YThYMV3xsKk~b&b`QolE%# zy;eC*a=F;VR_UTzc@9w18R*%sCQ)(8zzD=>G^Z}TwqCl{epS8|9@B0A z=GqPMna2NN=_lO!$K@ZjedDqOyutX6nyNg2rkI`RKbON}?(MOEm4UN!JvN@LcTc;2 zV+Nw-+P|vYQ?<-9eqkTc8j?eAuQie7l{DoQOU3;pd`@onUBJ$onOReqndgLXpaF-V ze~D)~Ch+zy&$BE~OVh+mOHWG!-Wi6;W`@t*F;~0kmWjf}={9*Y>gZZ{)f3*Et{Z6m zZ_St2K{f>u8#gwdJ`)ikb@G#pjfZBDKKSJ35$PCW>!x@hEWf?;MOOuJ&BHnjUmoI* z^d?e!mmS`y9G@mZ_uSX%vp5{{j)fTAo{3exPsk+j(RldeS(*a-f8MxTmq};WK_2;_ z^z;aQ@Q8mHzx*A+pnV&Wj>(kuli4#aLHkx;O!Kof#L@^-6wlIFaX3$_Ol!}WMjcOP zKf29OZLrNDX*j={g6qpWNtYtift9M*l*SnNQpb~Z7#sm6@DB+W7okb341@4RQn}^8 zCUMG~h1wUBw30SCW!0tIo0u0Os#H*_WMvH-GDTE6^THXpmO< zmiOBXIKh{dN%E(HBKk4JmZNb_Wf6ykG7S6B#aj82`d=sM!DgVo6X#*C_7|r=s~r7pw_Wk7`0P z#S}bG2OdmTh8Pz`QzQ)u7d)>few41N0SAX;DmRM6gkTaPlf+GK00;V8E}>S*&8qEt zN4P~)epuGIgsN#y49fiqyBS`hFQXpA+-Kn52|9Ohe- zXe`P~w2D*h#~SKwuj1tvoK;MQ;qcP;toMNPWk>^fvcM!7+tVbrs6Nnn<6tQJJqsFJ zV2hRLWol)5@)SG{w3^{Y7(fC(W?D@p@lXn`M2Nwm30g%O)v^fXBBLQ@+5yM1juJUb zZBu88>G3_|n8}fUyK($%z+ctb$%~$XCqNRMPhlywtDnfPH{p3y;xG*;X} zF0Ql-?0WL^wMSW!w>TAZepHOkCsqeHi|TjqRh-L}b2-b6n8u3*Z< z7*VOS#8XSKSsm}Zh6~33mGO)yMY;4`V84GEw#QQEv~CxHKiug8)nBlVl-_&7B5zEO zY~1*L0|^?eGK(G^?r^XhZ(#xJ0{rNjN7JLt)B3AJw{J6--XQ#YYcO~K3yhBcJnhRQ zLl}JVo~Nz--c#n+mK_=PT@LqC7O7X^UY2k$WlHr~YW39sEhHpd;H1<~IvRKy!eAIg z(OVen-c>~6aB5gZ#ZoFNDpkyHwZn9@2+{(Z#4x#e;i}AVAwrdD9wZmX&DB+|xwsE> z-O@nFRc4>g84`(n!WI zr6VX#iL4hF*_P!qt!x-n4e!)sHZgm4aktVWVM3=K{ZgI{7<)q_ECXC=nfcXO)S?l1J2^euVaP*I803UU zd=fsA!6QEmM%n)q!e*MskM6=TA(Z=8ty$RZ_*%Nd%X_$=Lc7>ve59Wf@c{51qE;I# z#j7McbKDkpV)XWRZL~)+4dkvi*>%L3k(@uT3F*#$nUU6RFe^L%(b%RJW$%jRHGsn5 zp9w1uvZp~LuKxSr%1!=wy~)(}g@>qv$RgS%GYj?)Ikz+^8VWcX_Mq7RZ<`#PfRF|; z#_lt)IJK}u{1;a(?%Aa*5mT;|r7;flNKpPCkM!by^RZ#ey7+#%908GEY(zOf6w?9o zDY8RsX0jRRpvjr!Kff)(N(oX97V&`fYPpg-4ekA^+*D<+Edu)c5iDYVhnlF4z)8RUaPXKmcL+G$>bj6?H15Wg&UWhu8IQ-vdNw0L>a z5pj4QP$05gB`H+a#FL{L%k8U^)5{Z!;BCaYJ`suume&ymTi+Vnmgdg;_twG}_c|iI zYN;YIit47eQNmNzh)e6zRmYYEY;OjuVfUDe#gf?qed9ukSGGsT@`>-ryWI=f{<1#R zG^GD`xyw}Fj+(>+Hw@KDK{D-LqE!^SN4f$5CCX!I0Zj_19#fI%FK+5ZVUZ~7a^??+ zSJHVosODen}`BXEboVOugShrY-jes-rz6T`|3g)bkO3jCymb{=Fcz#%g0h9so+s1WEZIOkyFMta; zXxt(&q|1v?lttXntV)o6Iz!h;A|DExkf_Mf6@~ML7*i;}w>5=90s{qf(uo*!^9()_ z+d4eQg>p4VgS#GA3r^UCorB6}IWAQWp1#X)BaI~iT`h6kv(iMgcK{aT)WXm@5+;hI zFFY8EF7ehckvIZwABH%q84+_X3X?fVt*EN`k5p;$e35AtRbYro((gGMQw-EO3J{fT zAa~Hv)=httatHxE0@cKeXzIQNckJ2c(i8NZOG@o|4+Pws_Dz_@weME96Ug`o%24lcWnb z8D6CQX&x`FGq$c&)8MEQZn*_B@PN#xk|QalQy9{Ir4i{NiWA+wy2&B2k4}I|Wy(aL ze25zyMuzSPmg+ZAXZ6cLMF}0Cg~jDgkH)z2uCwmiBnqULD6xn}n*(}GDD0z{w(t}BgVjV0F0m|5#R z;I@2&G>ND`;Z#Y2-xM0-3W&9UQklGv7{bnTMy0vsR8(~mjW+!#HbKTlg$8@V!Z4~( z#J_&@P)fRY-Y!<*w#l>X+*_QmwcB78cydCRvGY{c$bT;;m-t%O;97xCi`9^EkUk13AO5N17dpc+d6DDwf_O1w|U9A2R( zFJD|w>YasuuZ^7s+%dLV3@wr?*6mkomL`>K+U3C4`hc3YottNB>!O|*KeFw2AUiUfKJplA z?eTmkB#V$$ANW6DrTL5>Vnejg8Kr~&!QP)y^EHPOj1O7;d$b5Hgeu6-x=Gq0lK|JA zaeo;Sl-afKmnh=ljTHkQxRexmcP zbF+UR6qCzl8p104+ZjS2z$L^uIuKmt-w>_{HDq^PzeKGT8js;D_M08niDy%{Kv?ua zbU=&w6r75>Z?jFK6L;Oe2*m59s}-u~!k~0nTrDFgXry8$>BaL`X`;kSC;LE2K4$-@ z8PSxN#(?IMRlRXor!w{L0at*;(fCJxGH?*cmq*zX%5Xq_jG~9Z`Rg zEsM~h4cPCa*m|Ypp zU`NIJ!Z{!dMsP4BwPJ_N{NYvITHGLJ#*#6%PgQMiRW zfFP`-6i$l0_7hHSx73m_E;QG=PncK!kwE!aJf9JhS?O03W>GYOGz~Dg0#!{7N0^4B zyfpBS(!Vu0s=?2|F{%You>WGno%`~Ea6x$RlCg`h>8c>pc$-U3{`7ag3(h(vO5a5!C;as5tMK?)#FRAQjn)^gN1 zk>(#$#Np7LVtzvV!;=@6vu?HO2;C|QnzJi$3PJs1YV(b#0*4X?;oQ0*9y{~mB%=yh za9KL!*b^@LkIeSgTh?m8;Ci@%@0SjPCXH+cJxIRmgJ>M0{BibIOUt?NYfRq8P>($ROfq zA5~wF1xJ!J*1Z9$ome1z8#99%6Qdd^iZr>LYquUi#m>=TqlVVH>-KMCf|Ls?-(7)l zw#&%d(z=kN9t9gkOU|5&Zco+$<-l%MXcCPWDEy`)D&5*4kw(e#`K<_DwA1uF*}M)i zwE5U~mID)pFqMV1lN6&#D`ucwSrG93q~Nl$iCKYN%M-((h|PNyhecP#Na6!)|6DAz z&lw?7Lo3`0%;y@wU2cPG}B8XZ3EeW1$1{ za)NXL+1yYo&=1}_os*9HWbe8eK<~jYca=Vt;gNu=+A?$#vG;;Fs=&6*-d;K93MMbvd&qU-bZa5; ziPgwp{M&uXgn1eZnp+Y&I!vJLI(XVEx!S2U=w3z6dk?A`3JnIv1`gIWyhBJ>lN4b* z6RSDJ*AcR_YlVsPlM_;wo9i^)Xi%M6mIJ3F$XS(GoGpyXuslI!q$)NquJtxyDqRi~ zJDQ(v+Fo1}Hm{ZfB}=hVLOSXD)MFrjNCqEuSA}{6PTde>K#`Ckib>@XEcP${^+C~W zZ!S4WwGbdHKcU7cwFBb)?A=?b)TC%XYlMravXDPpP>Dh9h6CbZSbvLV5%)wMlD&5| z6iO@yww~)EONBDZcc+h}PO&tINxY+-+7-3n(R?|9bPLbX^xa9OJ}=m;)9D|RPqXAY zKFkON2tsQzV5$XD#!F!F^EEN;eHr=cq#)y>}lp*aYOao(qUB{#8EiUr0 zkbzRTQc4hZR!FciV3|gv7y>e1={*bj+}+wsEgMt=(4yxKel6QnT+C01`i=#UyW3Yl z__Ie{FOn&maBeZ)Z@^w4?AD%H7fTKdk!IiuyFs=b!PGs_7@l~Sd?f-KmWi?Q(rI-p zg^mJogcI*CCK|-AyIa*{ge5D|1;d8A&>CSv)FX54{0a&Up#G4@j5)t{ATER(AaDxp z+@Xyl_C-(AaL|Zo%V>q21;!?|8cY=$zeN=7R^WI^cejE#vgr z-w>-AcGLCAXO`R(b`$C`{UiL0)TDgDT1<+(e#?#=nc&angVSLm?r$mFZvmi7js8L$ z!Djx&bnwC;0doE8yLFGD>gEkIcepXQ4$W?+txLd5;^)5NCuuk9Cb${umhw z<>RvZu)9q|OUp0X+_5bg8x8841or#s-mwY;+ekN_m*Gd_2(<336=G?CDi{p@@;4#T zpZ5tayq6L!+G(Yv&AXPT`hM8k`~9Kd&8DK7kbiqXtIJW?nF1FiU{1A=RtsI%O6hDu zJCa#4znQgg#8l>Ao7V9ESY8mfR3Hu6a}!vK$M0@19Ja8i09_M7a+8S3mbuDuA^zTy zMW{j?j^PPsuq-T1;FcqWi;^4IAL?J?qG~pFk|P^VhKIQ}|2wO7*c-3=`+Zt=dW#y2 zT?oFYkAm=mEkEVR^4DpG^X#?+#@z6-#vTkRT=y9aDp!dzr>-m7^-m8#57FyRbHc-h zzf*u6XIkRQJ2Ci=zh4Tab12}gOCH<`>ZNpD2G9Z?MEj9{sVqU1_~U~qXCCjHoBq5; z26jgT;k0shClJ#wL)S}$0H9R~-wyIVx7YmG9s9^X4}_hFzEWHTpI=>y^uyV@B__u3fMtXuN`RatX#)IK7YD*`nz6m z3p~@+t9xfq5juU2hX%lF(8$-t5qXxv=SS%O64H$T^`lR24u|2b2Xg=&Br@Kkgz$M8 zg%at5Ag%Gkyx6}$lXhLG;aF5M7PW)az zw2*c$htA5+sC_uKPodv6pAkI_VCJQ^DSVqPr)*ja9VGF&>+f`? z;@8Q^9lvRX%vS3pH5%rK0P|LcUhRm3fpk#$dIm}$OhZ5|r>h}Q5KcN|)|N9;uJsp| zL8hj9!Z$etC!~@UG8zGV(q4K77}$*~@Nky1*fOQuLz{NKA-NSGJ_9M1Tq2)CHI6 zhEd`-epr2DkcI1-aUc5xu;TOU;5EOxeyAU_A8mkJugJ;&>gqWl|L|K*qX-Z$`5@ge z*nwChJuo!W@6iJQybI%_y(^l^3jniS&vD!}B_k2$`5hyCll$=W<6unI;a1&id<)Cw z9}L`80Z2L%i#-;6>73Qj$1XA#I(JqM)Lxz=&L5NSLw70dh*K#=ZEi;{I?cWOQMiI0T+&X@1jCOV^($XYzTK+r47%90Zn!V zx$i9mn(j1BCwM={-zv$ZF*y9C2~;3IQ;CgAZAjv}#}2_gNVopRj*Gl~G*<8@AiMWE z=at9_KnIl^>i+2Q^Zgu^@aWD*5khh-xZk_pz)_I9RHxgY4#ZYH9eT0X!E09ded*#K zr31I>kDrkVl-5+W0$6;eY&<>N+|3n>#vF$`AeX)GE_UMYK`iU+dJKAZ_d|?0`mz?! zn;UQUL_D~Gl{zF)fl$R|`1p1}s=G%9)DL-9E>SOtUbP zp{g>(?=M|$St)G(`WBlV?RGE`2^Hk=DPJ&i`y?%+@-bBnn7kt>dSyM`x~FoV=HIf9NN}Y^%F#)6#8NiPw@um#EYZmHd{7`M0QJm9uA~w&T5&G z7$HGKEks$Ml5STr2ERFjSCl%uG<>Z%Azd_VLtoDLMwV4r6@U5tRVJ(RPT$&VuVVM+ zy%mUDF58^Q-;E%y9d%)XJpT~;Mq&RjOUJ2?MopXnAVvMPdfkI-2exzEeVYgFF)wuF zor;}oU-hS<@~h^T7KdiVjT;$*MOd$9u5}w)YfILQ?Zi)QPQE?~ld*l2g`nJ!8s?<~ zi^pth4==Y4WcGO^YzRG9?nZw(=ck+bJZ2oLJOj646Xrl^Xxc#3U0l;BvCBq<#qP7n zs6<~ZGSL_+Yo1FnQ4Pj^R#FSJ@p~^Ht&tJ&-mL0~2b&!yJE`}QiK(Y|?5!BCIy9m1 zoXnR_@*wq`^)G&1g^kwP9eYkbB&aW+epAtJH1S2K;l7%HV1Xi!0NmgB!crnvaXP>`_GC7*D82`Jju zd$s@JtskuDvWqk3ml^>rEB^R8bQ`TXYZXvfejM>Dk<1DNEcQ61M^rZCM34FymO@1T^_8HiQaKER*@c?#;MG&^~EorU6P z+7PS34v8s)bTzJFBh)~0@n-RYV0uwqTEJc08us^sd83LmF)S;+qoZ2SNzEw5-Grf5 zxpQ?07Gb^Syp)aaH?~+dm(oLdQnv0n(9VvAZ*%pBm0gDMZjhxyeilLZEqn+emnF)H z#>^29k2IiA1rv{Hd0xws_$jydx#Ai}a2<$e4w?V0jm%mi&Fh-|(o>|9kLnGNAm}Q@ z-I|uks~^rR`d(~UZneYtD+gV9lgGAPWMhU_7oh`YZNhawKgHgC<1IqxcE{7)+kv&? z7w!U&8a#6ZJt8@x1jtf0Z`x`mU%VL2*yz3=IX3mFQ`qXtdiq!p83 zXoHNg**vUKc~S<#g$trfA0vBI3rj`2w0qh^luO*`*?eVZ;HO_3$-^;Vec>+zis$E};9sTlF{SFli3%(Duu0l0{Zw3PzoeMl;=N*HvIi%o^_BWZ zC{K?$01V7z`H8jRh6w*0l~(Evz^`h`6LAy9ezZ#V2@-CH^;`2!^2d?LwqWzt^$l|j za#QXt-}%gV^{&1_{$@;6Z26~K(24ji3f?K}d}8M8W1>e9=O)Ku@%ptbk1jHG z3wMp(DzyiN?wi_L!E%w>r=CU0glcz=TUc8oM(6P%Z|C9ide*Y93wR4+tD9=0W^r5! zOcp%Up2`D@Gzu(cuxOR3X5p_dGM_3HJ%}WnVeYc^@3kRhN^Um6B z^edLzN{c_b=g2~PU)F$*9~!Cp-WzP*`afYBE)B)YG+JK~tyU~v!|_M^OKJn>Sal1R z^h_o<7AwtdD`d3dJ9dnutQg$7WrF1$lJf&{WOx~Rd{(3q*sCDE)P6pyuqL0=BlU-w zy4kDob!H+wV4%N7-^y@}C^#PHTLQkv?lKBw=d5M*^R0M4L6M@OLKtNEnWvJJSC;Qr zW2z;Y{>)y_`D*!5)o9)3 z&&qaQ=(!q8kZRL<&^_k_^G@}B=f}R17CCeMA z22|G%cH|Z+l}95TD^#fDxvR^BkzxHJBqj)gRT?6sK-1~r?5lIcmOQJ(YT)Rvm0 z)`14|_7k4Ov)5_kV4H&Z6?x3jReXu#1F4^+Yg220=bCUxzkLT~G6K z@gO`|$dY$Nspfy6es3$Y(`|fgS;r{bt?averW034&x%2RbzTe!ANg+!EsKKP@)<%) zfyUpWNXy+W-}$J0pT30V>)}Ym$bb zM-9K)Pav$)c7W{)find0F&+PHiVQ?1Pi);k--$CAg#f_G<>Mjx$E(G2A8*kvc1rUC z;OXEWy5t%TfkG)1eZQ&XEZ3kw4&8(?@D^n^Smc=?BT5rSV`n-?R$HGJA-?_hUa_PP z4R_Mwi%aaLs_kTtMSdwPbe zU{rVTpW%JoW*@dk95J^iABV#wIcE$T0&h{N3q5b(Ullkwbio!LSESPw8C^LZmu`P~ zeOJji;#{_y!K_E0XE(Xnr=|lMT!yhnGETa%KU%6Pm1=**C;t#+Ppq+OAn`c+Bq=Pl z(FrA-To8v`vS#~u22?(EJ;pYj@nPxj5?qlGm%YzX9Hz33UJJD~_4*8g(X}MJN`+c<_&%|E;|eDp7DbX>pV7vA5?8)ko% zKRT0I`o??0AWc1w(ga0|#uEBhC6C=^llh|2=ha5=6^I|M_rry1hb*4*j1>yYK_@#e(NLElCU^GMf z8xhjw;(O1_XQreYebuvVTT#Go^QKE5rOBrx7Mc~Ly?6Z+zP$)34$yoAJ#)#CzCQw#+!YI+Jf4czeqkz!`f|+^?UWSygfyImV zT!6hV!8&#GZAa`_*V~7=p=DhmwE2Py+vR4FeylU*bfD+gFRb>3Sk+9}F2#o%F< zV!{I+de#rihVuuOdW78o05goY)K9vlZ>H?8R?{aF>LHXtw&M;>?b2{%+rl8PdXi;9 zGu;^pf91<`ndGg5D_bp@{yP3(iHVc^HG^16{U9|H>HKHkl~b8xEA|zsA^WkRvpxSo zVMPGBX2L=L39Y_%e|6kkoxnczgEyCSF@=bo-Mpq^d-Z~~H>hhJlWgnU+DCn4dCC`tp zSbmC}A8&V>^i3kR=Z<|2^gv+@jGLDaXSJfr1+BTzhivdY?orYltD<$Z##nfzd9|Gy zd|2e?-cE25$Rk4+Z;z|^gbDE_ZCpoh8*1b;9{K_W*DI$ARYbe*2-5n$`-va{N1H}X zJUEsQmg-GzHC5OofWAPgFsd4p@b+|@&#RF$fHH^f_WP%p!uQ+ELJGl=x!X5=Bvn`B zGH*)KbK5O_3*x9txK4F+t_h!{0#`7uJ!M~`#-5treC}-D}31*of;=wGP`Eo%w}&% z#Jfdb3#GW?{QU(>D#e7huVFxFBZ**8>c}|4#RRa<+&f1H@qfXi)2F)`$#a9DrWO7! zDnxK4WAuG;nOXd*y3{1=suW=KP_ldIKIMl!bD6`XAQX~v;;R{W1=taKzv?WCLMd&W zyW>#9XONLu1QOvS(aj4Of?9n`{7EFK(KW@ATd(M`4}rP^!pW>n=|qV2cGgq ztV)$IPxIDgi#v{<Ol?@ z-uW9lQ0zcV_4}?_uH4OogUqUa*9+1zffy5h4kmY$VdonKcH74Tw|FEHc6Haf| z$G5vlU}wB{GWVk_?$^ilCyhA1kPc{omrKggr$eNOWcR!j^6$cg2|y<7^%I^DS>{^B zcrTcBT*i&NfmCgROIFSp2c^=SvYEG@T>bWSIjtxkbL{XFX_Havpqo{%e{9v-$L6H% z`j4s`x@)O&A+jHZ*`S@|a~Vk5`<{^Kx#9lWSHI0?m|+J2!sJoS_m{K>k-oP_D#T>bW5yyPOF1rS6>;Tan=TUH9op z%et0ucRZbF(PxxB*`{qRA}v^QLNdfXQO)7ey!`e`c?mV;^wm0nr=UbEeR0Ej2XdsF z`*cZSAglh6U*QRrtb|8}(4srx0RR9CRDNu6T5H$zie3KFuhF7EB>Avj3A)fca-NIk zr9$-4tqUA^*_5=)tA0q2tyjEEjURQja^cPB9W%TAh#(kjyj1uZo4Wi%IT6wPPk!F# zy*I-`A=Tcv@92Vrxgli*#YoGM@!tEaZM)ql3TzP{iQD^hl?iyRuL8 zV({o&TBpq!xPR8_*X@!)SO=LvFzWyS+Qnd1%-ucWD9_TM4-(kvBrh#TW)Tj2s%!v8 zmLYF;vMxKFd8qR$l5>MoGg?^lFyl)~Ap( zE}8o+^4FWK3j^&}dTXC#{W~xLuQno@&Uxfsaw8I4AlpwJwKuYN<7qo;2!eOi3|W79 zaa)4ao_u>mtF{!J?c5|k><4oaeRc#NV5j}*+sKX>84V<6XKu)?D1`KL^G?xeAQy@D z7#fMZL&|>>Ie~DC2{DCio%st9630yj3jW}Vt@R6HI5vJaOE0mxU42d0xk|q4z|lL$ zJ*-$Q+xKi89?-jpZMVFHPV8CT{UD7TjR%E5{0WipWWlBqU}GMFPd$n^sx?y8D8HD zLk(zzkRZ1&{@8qG>%EK{i!(Obd(0F^G^JRH%*n=Dev`R5*Yq4Yj$y7mDaqcoUd2ZN z-4ZQ3^PcYUU7bHV`^BLI(89ytR@#a1JVw2{eP387RAAw9fBDGanTHxkINu2v^X?Kl z`<^jzX4j&-F+lu9WV?3oj;*@lv4(Bj?%PkHmSk4ty?mld#z=`Gk|=t5`S#QN*QJ$= z;W!BiTYJ?sxLRk5+>)bb_Yb8mWwcXdzTX)233>_W^P`@Bov8{Tpnm3cwb*4`f}kj| z6NR;J?=PrYb4VF``rvdtB)|fN*VJ2t(5XjFM3?Yh+Eg{6J~?QT&aSG|Qhtff-4Ut& zK&LNCIsARTRxw%d{P3Ok;_EbrvkvJo9bNvq-<(WJ8!Eh4@a|seI9vRR^wY+%fKjnp zUD-+v!2D{LbE#r!ySh8`^aUx96Z~~?^kKEro$~iv;nsKz1_m_Dfd_QNYPZk=>W&|Ie>MztYasEE@8mTjJM)57GwWi_$Aq2` zBAMo}A%uVUx0%E#QE)Et#PuLVkHio(YjJQe#Rp*wk#49#IE46%m4ItmJDm^ROiY0( zRejT^!!|>_K4I@RtDd}8Vh*E}CLvk6W zZ;>JrBt+qP=z*jtN<#UCKcpI)ETuHX$|H=a#8VAX-@UF({|FpKE)YezGq=qrJ;~?^m4g3+wjHXRXpwnZsJ-3;fPw&!-q;)78A5_%Hr5 zEzPER=N~oqe?GCH3X8JkpL?ar97Uz~+X&8lT%q|q6;Zb(4fA0ZR0(#yk)M2RK79HL z=x2OPb}m*ctS-kU(D|LheDFn*y1iN%vblP;p^;HY+AnhQ(z&Wn% zlD7tG{t0KFKoJI0F=wxh`^qNNsE+sijkD#O0MRgmtU}Ed7`q1$pKUon9=dtCG`i`L z{ACOZ5DfR4ciiN}buy1P#=VQZ!XA6S2Z26LgAu%2==N$H_o~-T{+{A`_0IEmaxLq2 zWR!*QkMmorcgx7se%*#M0QXy)_3Cpr1}hJfpK$EN)Ms#1ty{!9G{m&)?3v zoNb-aJZk{k{R^QU1m3+2ieh+RT0~ZB1$3qHySi{x?JpW{_}%4Lal7(Kpi$E)pTFIZ zp*p26d*RG2&kJjk?#pmjCZ~} z7}9?vY_T@adZHz8ToQl<07ndg%SVZu!<02^{~TyoIAT6I1%Db@^UjjMjq7}83`1*| zxnErzK~9p%ViT4YWP0YS%kUw{#&Mn-C2hL2>-LMFB;9t*%)QvZej7w++NSR#f58+8 zGFuMJ{sP_n+Z&l>J;_X2C&XQ`GqzK;rIt&~8U;abpKpiO8^*c3ifl;y%^wnV{Sc-k zN39d_bKSgQy`U|FW5LzyoPKsqt;ekEn#hp-tTZ;>R7#xH?#S-0Cph~IHR9}P1ub=J z#EY_wM~{Ua;X)26GMG2^?Q1!$mBUWp8}60snxr{g)BbRZ&y-|Bf^;EcO*kbA5#DKg z#ANiDhL^%^4g^pNxexMv0;Nt5cKZ#QercZ)Fgek+kH;4IOZDO zu_NbfAN(rG9(HDj86Q|drl)s_&+0$pwO>ZbF>OEP27jvMw*L^MF1xD#qkKmYjVT<` z(V9ijwx{XoR$TwmiszC|=rJN%#a+r+xia=wN_QYOkN|1&);w^z9)(jh6?e1}9S0vg z7-|CQYGR~egv(oACBNk3iotM1l2aspRJUl++d#8T>_d&2fR)3)_Z!DugDdqqvhGpeH;^VB^7{`1>bjLPO+$+McSd92w%haVQa+W1TyAM!Yi zF4GhtmI^h!?+2`$+&QgE8}^l6i8$O|Hs@C-Uk*>5-_`EMP{}nxH-51J$Ce-wy_1bI zft5FuLl@>Q&H$O3&|N|x37#*bXsyMh;7HuN7AMEX1I^9nSC0i?hr^W<4?6is|0MY5 zTGI~i3)Bw+g2DF=9>pyp&G&}|wH4Yv#X%N-aNjexz7Fo3%AulFIEEqo^f;`ZUEIu3 zs5-nbmCLNrLt0x!w-n{{-^t}wvQbi^Ven`kXA%2tkT8LkJYB)PlE^P;M7;NGTxE!F znK0WqHcjjANg^M4S2J<7uMlIr%_I{ZtwYq`D-F8o+H!KL%_G9Xb_@MAtFI*y)0eLR zJa`CEL|;Eb{ugWS6ysa;?EAKjU%OY^wr%%nuC{x%ZQHhO+qP}nwtd$ApL_P*4>vh4 zH#3>3hZ-4G$w7_22wpvhnRGA}!eY}OU9~CsU=st{ z7r4HqdgU!nYyH_8sq-QEEi_l&??ER*9t-c7%?!c#JG4lWk3SQK-L;D_BNfJGsdx=W zi$b)zzAZ5L>#>ENxhQR6`5lLRJ$#hN<@Z0Vc*s^vF*QMAAOog0r*o6r3JTS2BL55Bu%HBcNsgeMqjIZ>Fearu!-oo zM(cFR-}N3^Jc;e4`F}XRpz$%#Dx5)p9Lw5GxT#sTwg~>1ySB}q9!3RZUb=Vai1l@z zLBFx7Q~_QmEZNd;p3vR-i_GOf&bEfSId)F*{n|my?E)&6HXyNBQ2jXFpe3G=<-)R&%0ig!%}VkB-j1;Rh&Kf za}`^=(7D%*=y(15Sjbghf;23byQmeqaP&)ln$HaAU)bQU&k1<^nb%vo&FbA&3?LE{of|P0M7x-B~+V>DqZ1>}`%4f0$CT@Wj!P>D~(bBO!}v zNS>Gn2(y2Z1pEykV}TSlPg{JM<%}r+$Nk`6ICZChUE62jZCcj4fURKLSm(IJx1W+- zSdTu*TNa_(Dqd5w#sqm3_Zs#4+ks3VUfzc<-UeP#;J?MIt34)i-aZO~Kw6mMKaY_0 zpv8;fVS4CRUmcI;IpXM*u^8N<^8C6n3vhI2Q_2=cI?;&MotkKd7+7A3SsR3(NAx`R zPHWdHE2q408gq$@jQEI0$!UuYp7=xCeI`$~y>t|$#>f%1Q8$^QjX0;w)tI6* z6@bIi1CKs+Q79=~!WK=4h`tzkm-7{4Ma|j|2|cj(ewD7D7o#{vzrqFUV89~X#@vCm zhr}s55af)K03c}@D`0a5y@Mq&HbNsqPB`0|ymk4}Z8+I?XuH`sebRO&F_(394FP1B zqXc*8l%emK zl%?JY3nd>Pozn{~)eb{Ji63LYxP~3IFq82EC&-#b_dbJC^8Gef#yMgBC7dm=dl5p& zz&QgJ5-GRiW&5<~EMwYoJnT4aSEeT(20=^&Yx8{q)Lh$79CI7rehWd4A4p7o@7ZZo zX1@Wi3a$+Nj~;;)!HP7IzDns}=qs-y`u_E_1krEEgH{X)7|6DQC|R3-m!1qfzu=a( z5h>9`9VSk8Mq&Ha=gDAuk=Ve>9ZR=mW5L{wOQ9N(R2UjMNnf>yaRMU{7+Zj_edW_L zZ{>g!?Q|S!5!EkS0>B8*=6j3k*h&dOI?FMt^xd{~ScAL_MDfCPeq|-JV6pU#!3?4% z)So#;ARqA9>=G>nXgxA%Z-za!MPKbo{IBydWb#KJ9XYKs-tRO0 zpLrj$@JRTR>k$KDKeWum=!q@gGdH!f7bR8qx;bmZ0vT-ffpmP0frbGh1bGOGNOrBS zfv}HFmzN8Z_E>g(6`|K6w?9|}(lCWIZr>w$@g5F7oiyQMTcxM`n}(ICqeCwMN&S@& z1Qj)Uydl04qNF{2kSQP$EMYz7^*}^-d>mCuOqW~V;TiS~Ke0n~2!R{vDn?|R4$%2l zAqR`7o4voTKcKhi64Q!+fp2-1$XNY>OMT27_B4!!aB&CM$ZE2M5Im9HNNc zc>m8acg#_SC{zqe@;ymc?qH%#II>N$0AVhki>kHR=bCmB7KrAZfLY5fx;30GlE;A8 z{8k5ubnchfxG%-T2(L2iuM1(0Z(E-OpA>}nL%Bt-jIWWaU4wlMC{*#Uo#Wb;^IXKn zG?h0(Srm7@FeF!|8?J@77bS%8@5girxy0bX?WlVT&zv4znUmFvR@e8jqlcR3GS}N~ zxC@clbEY06HciIX(>EKMOotYRYq5T53O*4Gg%5z-4VIF~yVWc;vT$J_HumV}{20Ni z@g}BOXDLmqX|JzESKHZKPSKgi*N@gVq)}b;Rw5*%vkF(>X$J|1f%I#a^;O=o({!Qr z#dBI^zLrCPhYH#oK{;k9oi0*abe5|;=YD*XD4|mu39HSJB#|Qju|6RtdLqPk#`90( zx2i(V!OuRYanEv|R+-QSZCj#x6v}+c18RHAC$#}2x3gL=?Ao&Lp2tPJ>@HEqR zWO2&we#b%Wi5S;yv7E|0dy+!LNp(sz?$!)HHBnK1h{5PSK@ps6ylW z9mnuIf*#S{9w5eInl6tsJ0pzl|CSYA>yjJ3lv9$*&@1TrdfW>Ij;b8`=dXC&LGzRn zYfYnO4cSL4MrC^TLw#HG!v%&#VzQct0Oy8v`U2!g!96X+NhmQja0k-;FKxR$FGz~o znFe>3YzoH)TQ^DH1B3jXgb4R1z?7bRJVm!pOpj-herJJiOeThN8`EnH(8TLJ6(SOr zcjKQ$DT%}7?7F0qCH~^vDzqF?)j}y z!L+mY)w^!Fc|DNhT_M-B>x4v)BjC$%BeNBAK7A_(mz^{}?g-WWomK_G9eA`q$_F=O zfE&!^G4WG+q*c%VI+4P^q>X>DD`ty=nO@qnQuv+kj0j%f_vO4a^X&NiF1y&AFu(6> zlF`A{^|PXK=r~)u|Nd@$+@zUd#n`Dj!HLYs*9mJey6_Sd6j1Lc!DuK4QMt@5)XVKCH?s>7@Dng>LuEJA zBVsHMSgp9IrMw%X7F%=~d`rk0Oke=Q`A{~XW#fy_x>rHGD=K6=%;;zlC}y9|ZV(Ks z9RrjW4-rehkT+@jKw`UbnV7>07!U%cJ(FOGD-?BSn87!@4|NO#(>@JJiawx@a{+Ty zU9cBF2&|#QDy8A_a{q6B&q<0UsS4kY+)P!X`KZDUHBvC4+tS35zSTnO?L3k3vOG$A zi<-{Hq%pWDg>M}=(&!{-B{grkMy113bkh_H}(<-UB6T2&fkh6~b54zRP|vT+Fw{ z&#Ux`2g55+sA)stI6XL1(OYkXg%ex~qFwI0{R4kF6Po)`I9i2rxQW3efSaz^)4Im5 z>m`S6W%?v{cvsXuB|6X)(T8yjCzuL>tu)aiD&>z7{Pt1}u|0bPxX)Iw>&-CsO0x4)4LvA8s%Q2$x)K1oimdRRr=NeM=Tc_OOC&&e) z&+J^~5wq*SI&ib7&8Le+GuX=g=H`PgP_PZ>!oKs}Wr>2W9vW)=x!1wMeV91}A}khH zh(l~sVPcx>!N&n@7^y_Z9Z(}b^_}1~Xyx2fD_TX%n@jmmB&SK=8rD;b#8!4{K$vl4Mq1$`hSZ4t!6;so+ zjka!!dbo@VY8r_@D3%hNu1@rR;&o3j2?7BogwW%lT8IYB8DnMaa5uI`FLhQhCFvN(xz z!`f9Yr?cAQ^Wj(x^BvVSQcybfD}Dym&&{`lFwc;!c7ssyr|a%hJJSXNN4SJAcGOWA z%Hab6?Yc-~57p7_okS5P4j@W|g@r{BF7beJT2`8Phcd4%hzwPb9Zur-bvYKA_BRZ6 z6O|i}BGNNeDHx9B$#rPFM*=AfbkpM1p6SIWEv8ipsdC3auSO#;F_vtB?`hCyfTw&4 za(t4HhGu(P;vX^J2?|0wC+2o~mj;;O2g`RD69>%0k-Qtby5?d+@GM+6RM>_>0AK?p z^L_*M1}<|En}-_H!Y$evY+MEnCSPJ{0h5jQ7)2<`(6P}R9=KPT)}Q%$B3p&B2r-hE zL>Glk{0PPxXM@>9Kr&Jrxavy*l;sZ|+Z)ruH3tp|VoQ`d+&rF8?Ob-^TNrdIB~;3k z_Gj;ASH)@!^5G{qm52;(){8|CHc0iH={99&ez^lZYP+)15^3acl8x_~(7E~(o!S!f zEv=G_f3HG!hr@#3uQ~2i6X92hKt&pga=a!L3!&$a`L_4YL|?wVr% zuFqJrQh#Y8Y2?k;98v4V*PKbLaA4|!%HTG8BWZr6G$P9goLTHIJ+QgyvRU=g9;j|X zj>9!<(G@$D^=K-|hf3@a6wN{*8-B-amO0!GP(wC3=G9a!tx}M#ub!NP!#2yNt?1ab zG&;ko;U?yX9JI;%L|ppdr+B|ors~;OX?AR1(YBd8;u2})P~t*7PsQV>u6^&zry0di zSZ?Xw_;S~UU^gbf5nVYD%#pO+Wi(>KHR6c~kQC*t!kp51Q56TjUUqf1c+SC2r^F4h zI!^|%?y^TQ?WrzGczn-cx59hqv%dAv2GAz+!cLkb3@-|TOc4TU_uXtgbmlyz2S=Mk zd}(dl|Er18tsCU|kRHF?Ii7oge8Cu}4n1JxT)kaNAQldCI3Mp;wtRllyh0MjEm}5b zB)9R|%S2}%?p&*Ax2m_`8#_iy`p`Dcz8T+TwzF%LfWQEp`=P#p0xTcg$RfUil%fEs zY5LkwxB9ctjHTEy({-e#KQ=c%3iq>J`)47YXzp3&@_jne#NV@jCZ8G?^4y>H!ztRM zuVOG5LAR<Nob}a!qcX)5xFqHV0!vJi|j>w zoFa0WJF7g6)K?XK_yd9m2_grUIil{2+#MT_zY8Iumyl3`Lfr-Ha>hH+(kXXCu(g#L#PqA}6aBDN&8&_sa}unM3x6dopW z*{OuRKt#+4a?72~x*oaCClWo_ zDBs_HXjMyi?{WSy62<~%>(k;w&e1gPZl~v;Efzo)L4m0h41fo9yPyJ|H2Ub{*tFFB z%h3Z&#OG+=A-kejym>NGVHp zd1?HAL0Dm}f4;?9#+4mUeSb-5*<{S{Eo#Qp_Y9tR(qDITWQz0ZY^2%(3Ha_bN$*$~ zx6S0K66;P%uDg;xXXBx(!p8Jnx|_5j{X2o1)9kz})aempcTL6i9^MEu88z@SKTf=q ze0V(>wLoM;gK%{b!Jx)a3Q1Eo?cCN#-t@n4lN{}Pc3fqkSIA$Z12Mb1=MQlne5?Hc zzSnN#?5<#!LQ!&F+%WLIlV9~YPS9&SU4i*ih%*+UN$q-;>rhLp!o-`e=Sf}-5_Dbp z$nT3f;$QhtB$%-R(TGMLZXW{9$nrq&Ii#gxyKxf!0^UXL<%kR5tO$2sSm{&+OHv)$ zWDiz(DZXg;`cKW}E>?VYt_hyKdIy3Rl z2SCGb@BSzZVh{n@!y&U=(IGrE+;jg%Nj~T7G$Z+I_rUS#V$ze=oqbwRIzzo@eo5^LIORmemGf~U$`i*Of9?iX~|6>5O))iz?b#|kHGuHTgg7wB}U8<@!{U)bHCGvZ$ zG&K84& z5wacz5jOqPJ{aLUC)#I^aU^$xuxS=?)v~s3ywPqkwPU!`&0;a4zcsLS$|*~FfvZzg zFtz+GZp2d$Fx^6+r#d>-;yK=+T}`7#+y4;w@k z!b+o`-~nD({`Lf@>esLk8731OpZaGKmW}TcE+d)w5NNp>J}i9|Npb}+sQ0u7aa370 z=giz)vv=_UNgvc#@PSOBt(S=&%IK}~>vH`WfW51ku*a=M*!w`zEN1*iiML8QU7$0w zlWXhR_1X<3HMP_F#{)ZrP`&=c%jxm$M3H&0VeN~Cq{#C@&zRYkAyIcC+5 zQp0PdJAXegAWTB?iHtF~w;S}Pplb6$6YgYSY^6q{O0vpSd-%u`XZcN}Lm^N8jkGH1 zF_sm#RXm=@ByaxCYkFYijPMz;31NYzWp&I$#+zPqASN&DqbjP#Ejp;?XrN^r4pI_d zvKx`!Q8?|BmNxGkgz#gQ+b~z;cl{tIv$LavzA^vf70ScWlc`eGANpzR@v@Hd=iK-_U;&u2#iVtQQa{5jpU$TVq zh#wIA4_MxI%FfMYqNDYN2I9@gd;lPDD#HOOyE?{I*s8(Gwg4_|zGhN~x|u7(8FjAG z^x?>95Rk@Y!U{N((W?$VaT+@l4XN6}1w4ZYI}48baRoU*v|Z?`$=#g9HiIP8wkcuK z`b^Dep!yT5j^jPMtG4I9w3jhC63ICwyOO7)>kKG9yX&PT5dqDstpgrh_pJFZ!Vt)B zR_0Kb4=bekoP^a}j{rUYt!x?MnGIKqu0gZbvim7N;|ABB8asM@4ZnMYmVgl3d(S@A z%PVEfC9f--*UkXOmR2iv>a{n7}Af-esTac^T}gx-YR@()?_xHmd=|IjqfzWb_S> zv*XDVo4Mc*lx>A^8RkPM@PFLI?ybiEDqElP;uw1BjNbISDWccIc7noR*}tOO>AR_`T2Zyt!hnG5 zZlJWpD^v^VAS9sEAtGn?KGdQzmVGLJqDTI%Z-;d*WD#&h+=)H{093 zEAqELwh&Y^X7AF9T|IGn_OfVobfc4bl8n!Gl-+RAvRyz{=Vc1FYC?dWtRT|$e;mFO zRgO*_84lNff`w~UowKD8J!Id#S9xEIeYL)5A;?1NTM`dJjPW8SaD0a_MVH}yH$p>m zLD>o<>EhB&a?DKArA@{a_Teg)#WUV`3&cC}L=5(Vcvnld!SZuh;-;#-6OdcFNn**b ze{5Da9GiGU*fK#E*6~aRSNxQ5<#-|z(33Vff4*+*?bi*z>FQl`v|vT~wZkecyg9ob zdU!3kW9ZPh-4HjP!$S=ZW1&uqb4bQ>egk|#r-4J2B1Iut^&xyds&DjFKUfX4G*MTc zz#+7tiLP0hJg0Y=myXkqJae41^d8--5xaC$uWf%17kUqRjvG9*?EQ^HkvHK!dCl~8 zqx&EWA-DMzEyiKRUQegLtL83)zahBkEDtiH7_#Oy_Sz8>k3x51yi_b@VA=rg427e^ zi5Q~CsoqMoY_r7L60RhezmD;+kbWn6WG}L3i4p4W0a4+%aAdCf=*ktrs5PsjA?Y4B zs0##!{M*wB-&hfAaeSRX*DI8&@d9H*f#Dm=V`t7C%I{MdBAHr-TJ$7Rzm!q_hbHZG~YGNkM98dS5)55Dav z-M^sWmzB86AOQJ9J^}2Pt02L+BrtSW)jKpHG{!TuY)X5(T&NVBJ{@!Vnpu1HwnlXC z>MVn8r15m#uSE*+q|sf{D#s70$qq?#ZtW&`_3h+9g5si?kIu*Jp=>)8wc{K8e88+m zPV4u?Q|%dz;`uMjie*@ciqlz{qqG{YiB0cV2Ko<+xF5%lFj%i#0-$LMI{~g<|>l4kmGDvPI+ zKE%4-6N;NWQ~aupP7%@7zpWx73$hkoP<$QknKNT;DMMu0GZtr$EImVPnd2sZe(!F? zp^?X|B*Dia$qK&~0rwh3tV=o$2q!eJ6WOR6JbkN0G`#bkZKxYFKpPt!sB(;ueURvp z(5C!cFI_9Kim;N9{!$(YEA-u_*S#V`lu>wq7*IbAI`%}{VGgj!~7Yu6qU#PVIXcqmq)(S*PS_a`^_eWWe7X3nh{$j6QCjxHSB(y3IS zU(u$c4%}+MhpXOgBYMn`MI~XoZ##}EB_2Rm+weCyGYDhI1x{-toUY?TI0+|s*wK{l zut#hZU0KkwsEFrBt7AmSanM3gQvV);SU3Pk&C`Y|chIdsUTV=KrnNX66&K2ZSCQiN z4y*yW_=Y5XD)uecwuwI!|MH(LlYe9_*QWE zR9;j#pD2BZ@#f&k_Vg<$;u+~ENoq2A_>ffBc_!`h*-uZ#+1H6@4?OUW?687Nlw^vz zmgaVV7PBcRCaB3L)-pSQ z-3V0HqlUfLZEod}04OmfY+a0_LS`r8#4dx%?UCDi1O=LFVh?1)_L|7KvV+Ae9pL~J ztc^3h`n-9aA5QX1iRfckR?Eec$fNecXVT>@xvopKr+RIs{GLZv*Y~g|?#aqvDM-~! zt;u#9h)w)E;)tBJ1mj6e_~@*QmNt>xihbAnK6_9~Y%fD4Ez{Hzvu%xHkpUp^D+v`^b~*to#ShDGjk3CczK3G?g!qfi689=3YQMWt$nY~j%2U(N(gtrHG_|8^=wNMZtmcYlqG$Qo- z`TcBa&85R-%B$OQxk5{H!d@tP@5nQSM|BSjpsBg_ua+gm{c8t*>q}rk;QSD_xpQ&z zRey4ubM2Zjvdyph(Q0wcZ$sxIuQ{Flj!c@cVnTH>=XFBy@&Qn?YoVmfy2xIi{{yC~ z2E_3#Qw9LUpxBBC03Fv}DNE7>h;tlV+c1$LhTr4o2^Rfv4UlY$Xpa;?WoJ3`*4cNl zv!TXsg748MR$jh#4-8B{$-I3ch>d&Q8QgFi#I?;s8Sx>JB9(_?MItCB5dcyn6fCAL zApEjik_e2Dy`q{jf>g(zJ&wDn$+hGRwN&4k_ukY@4(t~5|K$p#|E?Y^Sw7IlJoo#D z-gcW=>C#Gb^|uq7srsUZ`+T{9Y`t(Rm;434YRmY*GLs395~Ujlh}7>xklQ{WHMO8r z*S&Nx(p)`57I{gB4w>K?vnJ1HQ{G46j}k0IfdC;!53e2C^utj5K+bubG|1bVVkJw5 zLz`BZ=7Xx~7$%H~=uN(IIfZxbn{gzhizJy8qAHQre;S*xDgqs~chHXG6c+%rpEmOcvPM>%Q)Zrf)ii(5*po< znW6_OMq8&+-2FdOCivguNZF?(KbJMVD;5@-n+8z6xGRF&)<2eA0*zc%=oDSJr@M~G zuEehPaHp%6k-kbOMk1m%rl4g^)m2tK&pFkv2_7R$rsHC5SHn~~?_NQ}8c~8Ib*8a0 zwS4C?U$P0*AGBiga_uYAB5K39!dBoxMIhsb2czp=k{}>33<|)Jv_cRGxW9<7 z^CVtA=qT7zK#Eu6Ww$56rt=q9NP1oEn7XuKBQ~w$WrTj|`{0(6+R<+-4x_B;Nx~-y64Z0lGx! zej^x#2Om9)uq&V`!PJC};}~GX^X+3>N0(7pFu0E|s^}ADBuoz{fMy|#v1z2wz)hZy z@0O+7;4j-?izVfUq2e8)Y2|CbqNk>JxnievZt)O1`ZZ{R#8-9sXW0t5pN>HUDlVqq zR_MXE4Y&Un2v9CwAToxv3(B7q)lyL=2?#SqFmO0MbhSTb>bNyM z!~6U;F_EMyzE>U;A86EfVH1mI=C#A`xEM=502-AIh7bO>ilHm9Mf1Gpc^3~5Y~)x$ zcGpUT^cbhbQ>5+iqb7Key|XG<0+~X+fM5htBkESyXg#;xO28J9%QK&hI#RV8CG6DFmoMQ=}tN zv-s#*sn{dpdH&KkkB;uxV98yCk|k}^1GsRPU$4QS>n00cO?$|K9{-pPY0KclA7IH_ zRxS0lACpVr^z|0h(WJPGaj>Y5;=$Eqt0@R%ATOZ=M4^mm@ah#H-oXm!bRp-jXCLF! zF@yQ-{D_}bsx=v7S>czde#!f10HWTDb)gS3XZKUw36*3ubu0Zu{fj6JJaecE&hY6q zH^dP0OFqy>njuG0x(`hG$Gdrg(H<$IE9)hN)ne z>&KQ$E4jN|fEV@=$L9T$VxM&C#Ft0yRJmM2eqg7MYld->v2 z#gjj_IGt!wBiBzuojBC}B`7@vmEKlGL6~_`fHjYiy#f9mDB~6p80uDlIuzqw6TZPB zVjWqD&Zq76@keM8-$4D7ZN)0H9x}2x1}?Ee3qs>I#)WjA z6MPG87Y~SjrZLW6ReEn|LyxIUM{vkdjHcAQE#vRVqO!n~*u7Xun>GQ|0BC%wMVNWr zxRRXkNE5ZLmBzWXS2npMZSCCZn?>U$9{UPzfVScRb35ff&XytJwb|KYqPsJa_a5tB z40lxL#r&)<0g)Dai)Q9y)^bQ_BlY~)Bc}QVf6?(s%c~~QP_+=BiK=plMP)UDbw%C| zDiHXw9@sAhObD0*hAxE1fpt#M*s#wSm5=4d$om|X%bY{jH7HCrO$hfJ@$MkgwOv-} zFnewHKk`=6Otnc35xw_{8;6L*-{~&K-sayyzm_ zn<4U%DcKC;YoW*DWmrK>i6qTPHUTfs-ZL&?yrPmjtDYenugY9DkOlwR(l0iz@}~TJ zZ;pz=fZWh@+0X2UBDONp3wP@DDc$`i_lwCD^0m9?t4A+cNa-mv*B|1{mrgv3?5}LO zk{J`u>xlG6rk}Uda}M3e)&G*I_>YLu|9DN};EzT19#Wd~8*>Q$0)Uc-l@I~3KpE9E zQjhV-Y=Tx<-_ct%K3QmkwyjJGg_(oH_kHf(ornEiz56wneB%d;DhLD){`MvR zvt!ur%%(fS3BLW)P!Kb%x|hRUii?sQ_w*bMc79Feay$Wb0`JOj@YhZl{4h!_aF{9b z=hPnQrafwfSgBlbs%(iL!F@pe#9b~&IdakJTBC7XpZ-zz;Qhu@pF$)=Pmy90OkU8z zs#r*^fR-nioY)z$QD(+MH+k!^nBMya^6|T5p71;l$?KZNq#iHdk)6?P>#Ok5IrsfN z+QOqJXMb(K=L_+sg0@yzHUH>@z4Tkwc>ApK+ixKbXa(cZn|&07z6xD)zhm^^zKzEO zJMF^OVTD>UEF`fd;*$PFA%Vwp8U@3pVSdj^oAG^m8=*&dYW3#D+>>rA2VVid_htp@ zKGQcV(BPCnf}4#8gcxd6-cTf=M273RQ#T>wGS@#_b@qxE%C%dw7qkc)?gZ%SxQ4I+ zTW{Op-Tw~Lu&WcQ7HH}PgwAaHDH_tQyLcq?8ZEEXR%l0(=oN74Hj7yGBC^0^(JV*!7xn zo%-E0;muqoZd=rdrqh=+Qwvu#qWes~mJbO{kO#poy8iY=<+9OW`H1n898>Vtw$q`T zo>x+CPSI$WIAGbL32nPXYaqQh5-W+M_wN>Px8AGLCD!RSVnIQiswqzgC(&zLjwZd) zZd+GVk;50qeOYr*KVzF?PxhcY=5?wL&U}~kE%l~3=vbbJWGqdY`i66K!d!IIX^3FPW+O*|`*!9D0o_DII;myGa>w7YUJPI(g{cys)I!abM(#>OUpbII!W#Q)! zY3u^_A>0TeTzt9wtG;S9N%pCsiKXp{7?m)&pid9+Gjx@kC+9xeu#qPw%lKp$fSwI` z@-Ay~GCiL#wCpKoEth!rYGLJ=&Gd0*e+7@Ohbf361~rK?wg)s{=ypedK>zv(4Jx)P z7B~v)Zhwa?dTe!(ZefnPGy@91J25R}l)igttzMz^v!mcHw1%pS1Hh%oH=wln{w1zT%Ojjku#cHpa1T%iE)> z@R5D>PpNqiT${$8k^v`Yp?=rYjYD$$$i8J7-$!zS2bc6fCjN}S-ukgl;FLy0^$9^H00t7@L1OUu_pdd=6N`@rL-&A^ieu2eMeK3jTN=bfF zf57@E{iH}Jk-#Vg!6+qyC;^4~z>E>7L;HS!Sk>uCWXd_p;Mec1FO3*B zLLg<`<QkE zA8z2$8pt`35@*3_X<4!hgY&VfdSsnix*hv*r0vGu2zBw~V{IgN+F&PC$q1WQzLKG2 z1!f?N8y`9zOL>9b)o8VeuAsj8K%iP;vXr8}vdNw7(8J zks{Qs&)AI{uBsH7^J^0YD=+gNeJ1p^=9RTDl-;NT$nSjGb(is&XmunO7JcxV!;d0z2`M1x+^L)dI#aQH#7ToOsg%ij+D>Kg&#a_i|9#D zH0GO%*+tQJ#cLS{=~YaCd$suwlJP1&>J4EyLi^p6-X#M^vleFc5)?Jiv>b1`7yVun zjki`WnR3k<{9IUGU-lYv)}NgAshpLQQnZC7JjB| zUMgD86YCYrOV^p;OV~y4I|t2i!Nxj?_OPkxsa71t3<}|J9j#MJ7}b)gY5`{{pChCI z-ZdkZ2>e>^q1hSZ8@nPcANY_!VnD`?;<%rdvtDG;P31PxnWK^gWA`D<#~lzL4XJ-~8Ne(cHsxCZq`2cJ@7@ZX3Ks`4-DLyJGvi=_$*x4 zbj<1-Hy`>}G)$?A{3EJux^Ih#&iq@&f1BOdS1sx2FimmxE$3m?P|j0P^RA!eNyWaJ zB?kkdbJG^N2-d@ck*QhB4%uvm2b*TQb&4Tb_AneZZrpi^xOVc{xfbCISScxjPs}xIK}6ckz=h zw^+BfjWDJ|RZkLvph*)^QS_382tyU2qi~t(9qS}**0%;4uGb6MphU80oc@su?hP#L zV3Zn3G`7%bkQr51UKawN=)pJ6H3n{T6a5XEP`P2V$K8Eo0q|oAnzKKl?0-3^)t3T1 zd8CS9sdZuyq7pX}+}KXVmvFWh)JJ1e6DQS0q6tju`c;0&*L9yAVQ_0T#->c;U`UAt zS7$#tD&0qBE80Y}5H~bSHT3mqDcxX163Ptq5+dOh$+4oYcCcIjt(1sWQlZS>vug=Q zj;9am4E_5S2l2R=AkbKqV^wSg9$#vD1FM#LCe$iRl$H5sTf}5T%0&wp!9(t4?r)j#_*0sTOWDPtnzrxE}WU#O5sFU&d&{qn>C| zrmBaN<h2kx*7qFaWoQz zfeRgZl8-^%)rp8^WAw`5^wXA$*}+Q%Ri3n3jwIhrOH zW#H@`)ylKP#lCZ!Y)WH#`=={GMDju;?eNq(dF{r3QhbwtA0U*DIRRrnsCF2+wv@AR>JgeVkQwb$$#|i@L&JhKbVr(kUHdSM=l=>jqtTS_QAc-f)BtV z%49|&AFAP!d~{B@W?Meq1Si~I4s(#Wh#Ve}T2Y-1vs=zhwY};!GqZ`l%xOUTrwI4vsVlBZLpk815&B`v_U{dsZ zRyD4i6`C19ZELivOPjH>sNHc)`yT73vXliW`Ig2?DocrqN*JoUks{F?RugLo+F|vOmZe5Scu)-WaZ-OLG}izjI>o zOBBQ9SR;%|q9!|Na+IOa+@%>mr;E|>O>Dfv604ZxP=Z6UohY+U&1z`B^|wGb1h(_EF*6p{oGsusw{H!5?)2*zUGar9449&Ut=1+~qXFDRzSp9fST zh3h=$9ib;oz;SPX9EKRS=by353~Q`s5xr{kGiKIWHG+U_NvXB^hccELiz8fP-34}S zJzvrN)o#2cb0j#kfT85U`6H+v6qw>lskRn>!Y&{w`djEI2@l8eta`sZ)%h|EmX~bJ zS8SPd9FE`sr@4z2(4v(;KT)O2M28iBWM~K6$<>lrIxfX<9wKqs;7~s*33u9ffhmzf z4_dj8yEeldW&v9Rvn8w7ksl_~pYF}m>PPiTSVfhU$p^0|l_3P_31JG;LhY=9TJERV zX|w@72_X>3Y(%Qr=&NtjduW*OOF#%MRdlku95`4_91Y~xYvsfV1apu;s#KAPAj|?s z=v`5Vq7YX_(`}St)Ocej-2?~{NcjbXqPbyzak2?{BPA6~)8_V(5>YuryMFRPuYjJE zb7XRnXPvO24p%+ta-$1sY5ismG&Hj42W@bKzABV57rQH+Cg3Y~uegUd+AjxI)O&AM!$d|Q~B#!({ls%W?#2@`FZ z&_5h{f!fKVfT)J-)z~9=iPnU{CfrtGrC1>#e1MmQDoqt`WgMohw2^0Ax@!kQJBc#3 zVJux$4 zsS@_aK!@6KYo;a5$^YW(Ex_6ennvL&rBI-h;#NwFyE|`B7z4(X(RWtjkGj|-KdMGp>D zeA!Zi8SE*}P}06T!SCM@6A7AFDdClxbJEZDdx6ucO^mxxBD+CL-$smP}X}(8X zKbed?wm85_0>dvUoxeA5DeyA&i11Z(k7ta$e37$mHI<7Jb(xpm`vp}nYpjn9Hs~TP z)_7*RwH&Tcg!i*JN~Y2i!bML0T+UnpA4V=B)WNbail0i!%5pZjW&QAF0#E)U_b>;A z4;358_q1W-V@g^n3&Ii0>x2(pEt&Oq+a(sV|6%vqJWNCyId?xy@ui@87^_$EBwwfxYw7Cyf@j>rC18~gP3^Qw zpYut%WH9km^>|b8$2N;BPz6B1xVg+tJ5TXOftm_Nl2syu4U4)^xF{ zKP;^+uHLwLx^C|6LH7P7`A;Qf!Nng`*J@wLzloD)J+HysO74GrC$Xy)IEV>)X)gaJ z+1lC~bBn`Va&KbfU&X237!EfqTZrkB3nWUF9o}XT!tfsVTg?T-MeOy!@hbOG~if;Sr1q4B;PBoMMQzHD2Rg zney}A^3u|xXvv*B)DuHj)`mOI)yPFEF4@rLL1g4675 zz5V#zVO)2%Yr8dIVwW@Jgp)Ac-7wc5<+)O;20&^&FOOBtyj@SZ!W8Bz)2%kIC~wT= z=ZK<-9u{O(x*5@jgb>k}Nt4|~)+-V}2 zj^Wn)FMl*ln>yYp$`kl!fR>i#e=qZh5y1HJj@@$Z&a`=q2c>L{HBwx)eC`~H@$etJ zmuj-i|18(>{g3DVdkG7nw3fHQKU5ON&1H8T)itlFW{sT2xIQ1_>52I}YwGeb@IR0L zciupr8lsP>`L7ExW=%c(f<;99QthtG8m6_R9=}wR!>EF<QjrD( zpX=8_S1m24hO!KW;`;nL&;RWzEv-*gmx;lOD+oVH(kU;g3HuoJk8Jqo-P6O~+tD^=I=Zna@g6a_*x)m!`* z^2*>iWnav0p~vfB##l_cl!g}kLDb|~Ve&_~O>0FvFN?>`VW$L*rq*(W(hn)RJL-SnUf5k zv4a7Ix9i@uHTru_c!ErL7uC@ioGfp}_=D4>qjop$aI|<&rN2kUHMM*B*+<;vR`=D4 zKJGxGmAA4+g;BM`$ixTkV{n7Nz1!K7T~Y3<;C`=B`>&!qo^YcG;~G&fHMl?e>(UV{ zhS5Lja=SVm`UHR@ifX?cG!fq(tc-rxA9aOiULz*PbbxUojr#dPB}=>CkAoSDK9(n; z-)Y3W4&clAN3d3wvwix0qiC`s8k*-UvQ!Qc@b7N9ALt{5DU#^zCJF22AG!2XtO~9g zF^&CLC0woO4@saQpYl5Rdopj)UO!*yAJwv59g;w4gE1(xMadJ|qJ^rS@%P}G2y)yK zrRL;H-Z<(tmV*m+h9o?$6B26eOAe1>Im7~&huFR|pto>n9^7@QH~I}dsTzI&ij1s4 zu-4C%R5oKZBEF_P-Uxj{g5}){C-#15h{dF3=a7d?aSJU!7SW@iQa;dW2soc`Y7&uxUQn}LHdCs!Xzk{Rq_%B;Kd{ONX z(H-~LnzlMX#biN;XEMtFH1{v6CFfZQ8ZJ0vH)+x`goa$IjcvtZ5&LZW{I_hk+-&+h zGOg|M?F@{56WH}p`;^BUk06}3Q_<}@xaZz=hd+82l^8X}Qt9Y>he1)dUm#@-(+@tB z9EX=5@Y%$l5LCFx3JcD&upE#Ytk{<(_Rk3ACa3Qb6MKb^9Pn!mvS;kdz!-IyO6!ca z?OLWc8$9bNy)q1QD#lGjl*xsF{!}r53aMtxK7=Xys{5up;E+M+O{G z_LLO!<*zZ^nknol>=D6O+=+V9hB@s#|5q{Xj!MhYG&6PSlGE5T=eX9;@SMy`t9?>m z2ZZDU1Z!kG!pbBDF>_<@K3`~+DBBqW^Cn?PJPetdqm&s`6k)|PwHZo| zjoWOc!wf2~P8dkfp|X6%flM?kaBb+*VECNu=xZmX^tzT)LA36_!^q*De%RJ>N1g97CT%*O<`21xw6$Um|Z z<};)8#Da(-sK5cjpO2T#Qc~2s8R;b8k=}mD_hsu3-Ae~0-n{V%`-?vl4@+MKtCe#> z;$`Jax9R2Z%f1oH)OCv}Q!`YSMbb^jd|-m6*vRMRO`pUbW>3e+$W0Vuc=bu4GBGQE z7~j}wBII++akoWO!v$RQ>Fo;*lrwfY+njjQg>qyPRoqvd$_oU`3+ioN%FP$U&<)T@ zO6cS(t_;GuC%&)+10{fg(w8m|nK5dVZ-x_hn-jm2kOI9e>3`D}J`;^az3LZ+2%M#E zoTWZr&5RHVqCyBQ4%(!zSV~1XH$Jz(XdJZgnKzY++-VrQD=kn$CssKGYZl&P+U)5F zFi>3YJ2kL#auRSy{f0HfKw+l~iVk+QZGQmf{5wl{By~xoPXPoSZQN-4EFBhgSMLPD3vr!&2HF@UmN^3* zKx{zkRpdfx$`?#8`2-X=XWQcu&bBSpRSw5&7ZO7uY;k#w(Tt(WV(gVC(Y&?fUVa=7eTtBuF_J?Fe+G)IaB`@e zfe7R!uVVdf|El>6+yo-Yjq{6KmCik0R<<;`yN_9Alnf_k-kDyRsSRbcXUc`gX zuSxMM{{ufJCB*%ygE@2s!$T+CX9i?BFGC21`)o1^PE^!YV%9OY{(*iAabnq4xF|zN zSbwx-8nW|&!36zLzNv)ul$J1bVswHtW1yJ^txt%gGU6_OF`oymFUzxCK}OmpO*7ON z^%csJ$&qUbCqRIt!)wd2eOkaYB?NbbiV8XH-*I}rREP-~D7{9)b4NfMLt0VAw#plfY#k!Z&mt;mc58w}7I| z*rRpG*g5e(5V{&=1cj~~fyCM|n|N&EAyNn45E>Id6-nL!1l?IHf`GG~krpFAa=?FQ z_dj(XE(+AS%}vDrKPy-nD#O-L>~~` z&7=O8gWM%j0HfKal_SWGQh(9`GydJbk2%o;^_?)!1*EDOFVD$AxeUoS2PJ)97g;It z51r^nDqn7IAT(%o7z4(|bR9d$isxL;@cW>Ra1w+k)i00Z!#Xc$$c9{L?c@Im^2~mlP!lx@td$x3PT>%(!N|mG@JU@VPKZu1O5?y9^Pw36)(t z(TlF!r@@>NeDE%FT}?CY1sNc5M1gYgVd{{La2RIppE_4suLbp5Fvl@TXb3wZxOE3D z!w3=}2ExPIJgJ8>gn7_({V8p?v`Ismczq{38kYo!ey|Ps;rWEJjeI#jHnhGF5{H>V zpqcUd&@2&onid$kX~M~~ZQJ&!4duJ2fC2l)5n7-Pb9GYTVJjM--q42+4BVkzVisiG z{|`umS)P<#NA_pi)S$Zbkk*e{)alvL-rnfHstW2~aLLxbA(1=y9TmZwo@@>An1|N; zTLW`;<}p5jR^~-GD2>!MrH&AZmLnIKr>IgH~B1EqiRE!ybzBUqNGZ4)Sgm7U4Fv$U(C=78$IU1MtDfVwNMyhbj46#&gY=uUhd^N;h;Y$ zQ&(Q@psKIzplb~9#7s^8P6Br`R13;?VcTy1Cl<#_hyM40dQB5BZ&y5)(e;Wz`w_J*i;VtpLoT+blT z;U!Q_8@zYY;H&fprJxKwjCwOD`bKo!BG74GA_m)pH&)%&PZ+ zhAeNQ04fh4Z$i%qy)nJ>TAY<~-!o2cWQadmc~U7_p2ON;-W(Fu6}f zn^0*levI_;+lc75J;efhBkAuur%AS+#8d!g&^eJj#v}Js~ z@_h^5s#l=6cjrD$e21KsT>ZDlElFedzu~={m?l=gB4K5bUDAyHeWIUe->BzYuioE@ zY|7%VhCUNJZ{f^18jU&+j9w+D@h6n+uNfaYUspDNy83eL=ZmAd()+q5Jktdz!-qat zSa`UF{0d3Rb%~|!>Pty&*1P+Dw9ove4bBYK;6u?#?H-^WB%l8m1^DWzm4TAh@SoJ!1d;5MXa2{andt%h;BRMW(ur=| zXVs&UDc_iMPShW%>(Miy%kHH|4&z7uKQ;)S>pz96KuDONc&NhavdfGHu$tw~66W z&jo6-LnefBpUvcckhd@3o`Kb$$LZP@TE!@KEyYAOtxD@~4ry;Gm+!AnM37>Ikal(O z%jDCClQW|ZJ47=xo3IGv=kVm_j_XKE7Q5@nT=*WpGTm6=u% zLwpℜ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�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

!pDA($o?W%bmU@b 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

yD*sACJgHts^~BH@%bxt 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

LA8Ae9j=_+|DMGgCC-(%7vR!?VZMX079 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

AAH3k{6qlCKQ`Rx>q8jC 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

    n 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%0AOu@+m{DOqPFZFE9z>920Ao~RWzAcftT)UX8yH%f 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

    xu;TYbM$>vzZhaB_HU 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

    m1ogX*9(1%oNb@ZQ%7&7qLkeC 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≠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

    Q9D~rnVx)mJnhmt*aK$y(9b)*6j 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�@LSe&x4mxoYhV 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

    Hu1%`MmJz99GG)9=D=#$Qb%9tHa=(grP4Vs` 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

    mTubd>frTP=5~YnILb_) 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

      XgC6H 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ΞGuvjC)R}&BZF4jVil}Q^qM*sGIH(B}rs6SqwoMrx==kU_=1ptll-|@Q>?ljZ<)azyF!qkkV z(GmOU#GGk-O^xp&(QVc{GT(PkKK$E(CnepVNo_1B{*M>0;)A!gT1(hl%Q1A`KGM=8 zlhD%A(!|h`iRsBZe4}z(cyzCFI;%o46?w8VFupgqv8TLxG7k`x&xdBq=M zz)?_fgdSv>Ax0Kzl?m}p^&!zE$n)f$Vx6tsbb?`{VIX-(wmecEPa<1gojrsd3QdMU zVjywRP-J2o42cFJgj*y~`d0tALI`1(Y;|4uR$KWDs~6k01^ahe(ax z&^MYFn5dlsQ*zu_z%z#*e$#}2WPqM4SmKBho;MA``ULT*(uA=h5YpceFfc+Fh_Qhn z8!zDeK93J*zn#CIcySf`XjF9*ZR(XuVE3=Ega3!|FJ`CG>Zm3=j= z^x?F@6vu#30rYt~vy`5VR9yAw2PE(wJ-je(lwH z9bftxbqF4v%&^XtS5PV5;L&RqEd6pVFfC&Mwun-(IhFbTm@&%T?jtoS>wbFwHc*xS2^uPG43;am{*SW16wc@(G(k4*ex2pntkc!8pQ;`ij6fli(=@zS*6XM0;UwRaatqn`yO-_!@CHPwTY zQVI$HaeHK(G(V3haqHiw9knTe6(AxPPt~tq4MH|3$W%pyXs`&d9=2n(kYl^yBw}7- z?(;l+;QA2OpOS$*H0W)1BseWJU)(G8e>XEg~Oc&tBpZf1gW5%y(@0W;Jj zV<-Ih?8!gn^(<=ai9eT479@m4s=4aAGSTbsal6SYY1z$8I0k$>G`_ z>xA%f)^rD*zHp?-S)KQ`LbotCp(6^mZV~TrDsZ;5Rr#(BMOl)?OCxB0BgI#3>mVRD$x@=y+siuTq5AxeFMdecc`W0K zNH|n7@Jc6gYGmo5kez4^W`A=0sGJ_UW$3%?DQ9tAywbpTvB)0xm*%6B`8wQj5er@v zfv0jSGaD7C;rqYa1iz;8GOaMNZulsmxq|$%q;isAMqFXYH#q{ zVY;0l;qS8`k~wMn$J_ZDQT~*xxWfb9_zoob(vi~d)?^?_BPQgU79;&3RIj~{NpA55 zUbObImLY;&BnYu7%uMi;boz}&Zxe@%8e62_4e7o;y3WG?gj?O#nTy`&uvc{UAc}5Fi*~cv}Z(z7}5? z=*c*jerysVm}a1?oSRGm^D0c3C@5#`=e*gU|48|Z1Iuh6vm_Wjg8h|ny z)DnXk!|DeBYq9Z!aaQReGfG$pRS@n3Y0S-PK|)3g8t!ii0XeAS(aDQNA}qCunKD`F ze0Yf^@FYx;5)jhR>jQ++Pv#IImctlUwdfE!Z72Z}M29fVR)sOB{lK??El1lwkKNu+Tj*n?5s| zT9UQVa$mTfW1d#%%eZl3jr;c5*ratouuf55JH_`s$#hTVQxl*~VjA07Q24PU7y|wN zF;`v%Lp?V%o+}<-G{Kk@&T+E9AV$x@;ybALQJqu;tRd?zt$Np?X;i<;ynT~9U`p`Nf!yHW(t(H30zq?vm{Qs7>RHKmtK+nW5qFjAL$QoMsWC??dhR)= zHe9y^aGNfWcze{wnt%_M4^xyNQDaYq$NI)+m^o3R3y6))P4ct?kI5T8ci*LZ%f>3A zJ7`d0Y@q(Fj7{mmxEsT>@(WK&uA9TkPvB2{fF~LLAO}i^55MOr?~3Sixu_d-E>{@- zHkpCmx_Z0MKY1McXL9vgzX#qr8O6}9b&bMsZd}-}_dXrJ>OGXY@-CUwnF!lY zD|IYL6TcStbEW3`ra7s3PYyQ1q(3*5VtvY^aB6zHC_vNv=_uSJ;Zw{$-{~!X`Bt`Z zMdFSAyH6oc6oega3q@h@+O@A&)OSvBma_jgNrrTF0Nu5m1QuaSAPwrP` z8&A&2X;BQH8Yb@5IwqgJ9^33AMp(J5#7VC22T`dg3m%z?-pEo~vDF~1SH`mUrJ(%C z&9a3r1w$(O;hU*$4dv;!U#*^ZRS6U}8F(0ooM!DqLsBNkr$c+gOfh{r%kW<}JG>R0&54;hXT&xK}uTt>#C0C!~Ed=&0M6z+YOku~<7 zC7^#7c@mxufF`A&4jvr;emGN{{fxYyb4$@RL8pQUoUVU|1tk zNj;NXMvWp91V9!bKI|5NGLu9T#t;GlhEEa@z<}-!G(P=y^c_cbQQh?BcA)-1Dk)Y5 zc}Sce>_JQ%CVudv{&hCeqTp;cUqDL4ih)6-(%%D#r^8g1FpUnDUIp%taWDjk#wSiv zygTc!+l!Qm`OD~7nAnS1WQ(0lcH;LOXqs!R#e?f_DKNM3P&{IBJghXP(aWT8RM~V< z5wGw!bxGkU<6i(KG7}$q#vcpgn=DkSojO&Ee7NuIjOBQpu=usUxgxh|k*RDgA+_wo zDn#GnFqye!Df(zWKty;~m?MPA){$kzj`aI|<1=ma+RcD2YR3PA`}kaik&jQnGE=B# z0-Le`m9h%E;0>X8wJC4^H+IGE1GKP0BQ+Z5mn0CS3KMyZ431J!+n=LvHN#PirtVU4 z-@io1c6MLy!gcAtuygS`CEv&mMzt1I!Mk06Y>m@OB1$D{tP_IAA8T(3r(U+X zl?k60xVa6zIhpt2x4{D8aRXMLd|(1v@wyZE7M^KnnC?<-Y@8}_S#Gp@UV9g0?O$B` zq;9w(%ON*DEymUG!PCFSf|yAsEXEa^A{va3=+`sOkSZ42BzrP2dIb{6A{pLq))k>_ z=|imES#fzfpVaVrs^jMY;w&PxTD!DdN)I6$JsMjWm3SyW7U4LChxR64u1dJ?aPXi*EfvtZ_=!)p%it9KhnPJ z1O;jz+Iaa{RS5+6ammHTt)`#LCR-Lneh4H-R`zjbhc2`F;XJbf;sn(Kf$SK-7*49Q zZzRI6Q|@9EckOic9NnPp;^OMv@_)gpPdh{;Ff#uWbyE4z`LY5QaXR1hcVlX=0ZLVH z#m5pWD*z7uKUH;NH461hRyy9P@@NwJX27ZG^!*{p)5qF+>}Bi%>Sg6>QN@{WwfA)f zi;Ii!uwAKg_+CMy{yZagTT{yf4oi*L*6iMNF)I_JB)c|cF``4l@^R`J)FC6UDB%#m3I!FkTX7C99u`5pg+DLa7>fCYJAd0rolG}WVK)wNyo*oF{vY9 zrdT2Bz$J}828aYy)AT9S!~pr=bwELYhX#X@PfMK@Q&JkCiq!*&^}zseA`mQ0p={7i zXeNwkK#|u+nhmlPCfCP?UqqD&OE>0aMo(ls%(Zge%RD)FF@d5dQfH{&F zNb*W7lm>e$J%tPY?MJ0}TTsV&Oc3?7@W)r{BtvH4r;m{-mP8m*9F_2DH#dx_s@C{v zuK85jHys!aEM&}4-Ey(rZ=aM!&Gf8m zSR;m>3Tsyv^Q(<2r>e@j$!yl+9tDNnz_gM>i#I2jzvI!t2`J#~%uS&v2iX!SJt z+J#~AG(NguStnh=#)gDsIpB}JdqoVJeT6R5^cJ+BG_s0~DsgoKYdArP8ov>6^=iT?)Z8-8Yf=7p-4%UdMP5g{Qyu<-av$p~m|BF%Ar!yb!X`clvg{gei{C6u$T7H;&Bp&Ni@V-^`<$B8DuO?2 z>*uQG;foN+c*j5oU2Q>Oa(YQ(tQO;2rnlpU*7e$+jt)0Fr&xFER#|hBU}NsZ@07nr zvj$I~Yi0zfO(^5b6!d3|p_mLm%f-UkOP0lbZ-J8Y3~Zpe*C%K!Bq6vM3M*fQ8plk( z+q%@~gcRj0t!)%f(?MTZv&xTEdKCPWMFWTPe?=3d2xZEXZkEyM%Q2!CN z(G#G~@w{6xfA8UmZ8+cY;VpHB|J2L~|7ISqY7*`~KBrOskk3iHltd7Zgcy(;a9Qu* zu66C1(LH-#v8XuIeRtn>$x_>PQs1X?P8Ebna+f3eolC<#^m$85Mq116j$8i3HmPF3 z?3RY_T8{=Sa6QSzXdT;N>jc`5*erBTQ$kO zkUw2EwqnAZL1kNu4XLyZ<4croYCTWWt097hdV;^rupeU zh9J_gfrjjV&aZW)`M0;}_x{&!#GbSPtciac-~XHG)D!5Kvmil;T0&l0!Io7eD%XTmc5Y zJVH3kz%XFdg#x`a%vkBndoQ}aOwBj1sXN7gg(92B;HWq0T$}n$e@7KoA*` zFR`+LqeCDocg)z>8olGdrElf@Ee^f7T3~q*;h?wZKun0fd$e~7kdob2MnV=&-6oTz zTH(#dt7j`wJ@>UHmua8wzMOlX1oE(Y(Qp$j#QGD(rODR`1!`4vF*7Offzv4A^0KgS zhVjyk1m3=)g!w05US)mGY)6;#{iq#FewA3%->Hp8A8tpc&8B5L%{^;PiReFA;mR>F z;Z1%$cbCXm8m>!~G*3U!HbGuK@oaijw)29~&HAs^G6OvbllmiuQ&5Mk@86kUJ3FcL znfXgwADCQz{PBC1DZ^$;&_l(ILYkJ5W<4t zETm*027W!MrCLsYO}=-CK2~KtDwkC0jbfu@NJo`p7o->hUtMKELRR7HLzCM5^huH- zjsc#S^osj>&}mmYp?z0Ouph(|Q}Sj(IE^e%Y|d0nJx^!pYx{6qk=QUf?h7XMc9}K2$3B`_?g(ZB z0paw$7QVduf}Eqvp49gA45qx9Zj$NlWBj)V-n+K&OW3hq@UB??WT#T>-0)09yIqB7 zUQ;cKP`Pc8qrgw?yv$HP!3cP1t*TF_?9F?~3Zxb)5sbamj@HfF`F;#-U?flwOle53J z>q7MmZt0$=uM2AfEgBgIjQj64)!oU=#cVn~eg0 z+@C(y?0BLz;JP>_s(Fd7;eI_QwDEQEj2bXN)^R28JN|gz2Dg6*o8r!y;@Q5hI2HS| zFZw?{#sAuij~W5h(0p+tu+1Fx?a@B!BBbWZ?hg;o_)4VZ(@7Bie=FdQ_DMimd?E!# zv9GQ!$2%SndSFsaP7DBNNKUAZkB_&3_(%J={k3v`jn#~$M7*deN>5KCb#rq#YBN`x zPzujg2{jDpAAKV02snTU{~E^bL=+6BMGxNer(KR=R6O^cNjq$Q=3G6?SSEW0m+9p761lB|MaD&%+#@PZNBUU_43FKoP`VPjQA|Gr9Fg9kn zz!D!I83Vta(C<|tzxnYXGi*dKffQ)AMYTShNC74g!qp}N!DfXd+Mv*wX>0i$SV%P% zHl}2MO>)fNYycDh4*dU2>MKWr*;rX;;cM(!m*O1G);Fb(oX{=oxbWI*I>CHruZl`I z&%1eSeD-gjS70chRivPCc2Iz^jEJT@5b^Y=Bbn8vd_!JySqZRrFp&s+%sM5BFQNE|| zlbuU6_Rsma2jrfd;pyZgAaiY5&3b9rr2AobWnSn!k?q+QV)Gj9m{^zoQ+K1I^nCR~ z=gIz1RZ7wNfOf)EP>ILD7jW|$X*1{6no)Ww%|dL`Ar^@876y8jzTG!KGS>V0RK)-% zBHybk@ZkH}e{1FE-g1YBi-Td;Up45}#>c(ahQfql@njQIQUy*L^I)%qrJL{9??k>s zPXzMA>$t@a_Y0&PseJLztK+)BETXnD9qN%lw3o9gdr>hXcX-#Btft~K5e*tUGbP7y z_a!9ZlQ6p@&7ij*`BRmLy<_CTjE0&TXnFH7H8?oPuJSaB{zw&`J+pDZssDpXB!E_L7Kt zi7u;T4eZppCA8#BU)rP(jiSzNOBZg9wn5eVyY4n=v;@-5wdsZP8O~#Srl~OAZMAOO zg(E(?)^~z}ycGKklsSyvrseS|`85RQZB;q-GXwk9?P%8f?&0})$C7Q5j8)-N>O!%@ zxMp{1xo~?Q22poxg}k^>GocDtN>5&A|0#gCduLSNQD~$%!Y{Tdv-?sf_p_ zDS{@L9jRu~uIhwadW#HR^I3>Hs8-ER;Z|*n#|ygiotNPYuRS#BHb>Us3#HHxQ+>O| z;g@q1d`sf#GpmBbS@^6u#DE!sNh*t%-j+e$$MVPHNaHI-pr)p9F6^R=ZVhFvbKYP4 z?fY!X+FPdKoLjv%!+N?@ujcbuLdkR`hjxV?bDKMrzJYJgS>yktvDW@e-Rk&Hd+EKX zmj<*Et6_ppFhS?t`zVTt^Le1c23B}eGR@<(^w!eN%B&0OK(ducIe7+?6OmT^)&|wl z(eC)%e3OWO-T2@fT~! z6(+gQS?@bzb{e_=HoV@;f9H(-%c9f9+-GNy{y7W?t_hz4#6jtJXd1ko!=V*a7d$Gj z-CKX(&1PY{VeokO#YSXxr6dMe9k?Qzfe_+EAw6`lAh5D{A!s!khKoQ9vVlJrj1*zT zN_SI=W2sVR^5U^^Mq|?9gFqlYKM6j7#p@R;4hn%iknVvzK)72$wA4t$)gZvf`Za@i zG%j}0cP0qpUmhz4i~+@ao+q=h=!%7=n!R5nyPPO^tzZqpPSam&WU zp^^(jjh%i&jb0H!7}qwU9m@LxuNohrq*YPU7%*DymYE>S;+k*%%Lxq1z}78fR6{j0a)0kL{VQh}szrgitys%HD@>(L7wC{rk+ zOY+%^Q*zb0GCR@7>L^QU(l|zPF!k(nb1FIY@q#O)kW{#TXJN{e8|f?N7s!;RIIeKE zZT#ZLX$I1yBJ7;ZeP36Wf&vSY4FBX!=hGFYBQI6YW&qoemGmsKQ&*e zy?Uh9A(a_YB=A{iG}&d$^7AV5=Y)Zt>B00$eI4O|=cW@M%}|)BMDQN$4Nv1QH+dA9 z-@4C(r82}^4)ovVEr#9u+>OD`C%SiHIdz${pYYb* zj6|K)YJRPo>-hhgc>Z~*`}3*(+m9t<2VFB)ZVTD9I?i?KUgtw+G+FhYT+F3(Z}6Vy4lSlw}NLF{gUM zrE?CDXt6KNrumpo_jkdYqlEJfp$;06udk;nfQp$oyFH5z0AEN8ZH&akLhM#r=t8kN z#5e77<$W2XLsWC61Qfp$(|eui?2Gy_tC=F$*t_YMR>D_51S)b!0QL87abvA<(Js2# zqkS)}!MS@Spe^X}EJ|^vN;|(Jht~{gdpEUrVe~X$+2!9R(gEBSXK&{JCyDTG4{e2* zjL@2I(mlkLdI9|{_0Rfaw6NFZEBlSDm@2l*Yy75y zZ|wCgbl=!fbVQGs54B&~p|Gg)-<)eMYW8Rfr;2}Lo-ODFKJACNx(pMr&qc`3-`V4| zXw*yV{u$15A1W!qTlq=+i=V$Z$$lrJdSasYdinRv_o{YgmjM5Ey1l^zpf|asd;;tT zo{bs7E`i|}M{$jEG(1&9AC?{Oo(62<<3SL(2ze&5Z-AK`sEd7o>KcX_!W;uh#zII) zkFbFsV#>ovY*+{U^xP_eP9kz zh0*0)rm%5AV0j5_5MmG@WQTDkGcoxQLGW1P64W3_3HBIqEjkBuHkt{n4#fv5e3l(B z40Xf?i3j2f@j#(HIWPtYQj-b#y%!QEjvLMD3nIc}7B51E=swy>v5JAd0jNc)FrMS( z>L;m?m@nh_kWI&gM@pWZX!tset#)0VH67?8l%mi(I-=+=Mk9Hb`c5yoV%OQzX04Y` zW2{i8N=)!mu2X00y(@wEyoIl!Z}fQ{q0A>X=6~pShK$1RkKw4=yMnX&hK3dNL@8u3 zIl9nxbz}<|hjA~+Y+i>V@zSG{dn_>2s zh(-K__=KTRI6S4+E2^_=(=B8A)_CwTO66if|I|~=Y`fWc(#tpLCmSsc5L5EKft8(j z`Eoc(6Ams%v5!N(KjTCOzWj)7V9rQeq1VG!jiCR+KyIh#9#4DPuJ$Fk>BLC6e&wO9 zjlNHKazy#4e&>OS>&u3=*CJk|`qhobRNRp`#!rEj9u}tb^o{Ac!$_`dT&MbQ=RSNO zMX*P}YUbw<9WG|DL*#seGFQX*DjRHo^0DIVrdAO%QqknHfV46RH&c>nNv~?!J5|pK ztyS4N8gubjH)0!Ot1b5V>7m1r``2(&39ivwP?JBNUZn9r-H&dOj%($`f*g8Lnd$rS^ zt4JDpd(=p_|K=XC#vr7)HoD`=v7XF7k-IxtcS|1d((l2`N51P??5eCh3*` za=8wfYA-8n+pGDVmR}W(&tKN1-TbWHZ1c_EYWnuPBl_rDK-qdV&-W#Y+x?(91s27n z$+Y!(bktVv$n4ouoHLK`?I=RjnlYwkHnKlV->m#qeR}vU+rhrsbDF{WcY^!dPyNmj zpULmCY4oKph4PgNbZ3tFS#CmXW)5CE<>_XJjfWkqbN|7NeDDKPoJlOT zkW5cmjMGk+bsyj~h{_cA@-*S?lJ_O;z|Y>>ggy}m>pkY58hd6%v z7hbfk%je~4>*s0bK;vrB(HX!~Hi#hqhir~Q!yCro<6Wq0131MWA%GGS1(+TT?SS73 z+P^(-zJ1c>Pxt4AEj1@!P{1VDk!)F6Svj>`S;?-Up|0r`J20XFR^-IL$+dD7@MZ0= zy>7X=xp|UJgwPnPLihAkMgn=R`81sN587*qI^VqC3=)2wRZEy;-zN0>5Xky+Xv?EM zSPxPZ{xA}07aV@^NcB;VYGm+x67V+H>q%6z%S&LARN>x$ho$iFo1)(sydS9#XNL(Q z@RVwmP_ax3W!I2&6vUbEwp}0tdS>BvkWgn!T zpvMw2%Z2IzJT2-lVm~T)UY}TKiqbsVJ8TzRYE)DDM3xMhB8{vBY~<3hh!~bb0rW@t zF>7LSWhb;%pk<=w`#iM&V}zQYDY%eRU^E7c!Cdk;%)4!rf=l0gs#qk&S&(p+1G1$0 zF3V^1BPJv-t2Z0^8XiZ_BvVpgg-T{*6PO9afTZ%LSg~3l9`wT4WQk#zcEqfb-B?L% z+34fRL(BR3%RkGrs9RpW>KSkM#Pd4#`Pr!IR_Cx<=k0K2gv!uzn_M(*uw#*J>@av6>`ebHM@VS$N{pwNE>X5ovUjwD2%jA+w*_9#r_1Pt6w90>Z(Z2T8t#|g7#ujwdiS8vu(vs| zNqm6>5JYE~C`LjJQyh|Zi@h+`eX-wpdY8Wz^w%S$nSO1Lfx6mDpRSS{H-g;xjX7l7 z2vd48+A54n`*W}a%ZqsO2k&%XC6WF5;+p!(zyIuJF71AJ`87H^y+CoI>@Q9v3LiTZ z80YvAK8fldpPd@|`{qYa)@h0-QjCe8{}qJ4pZkiOTvrAu=@M)>M}a-t?~98G27@2@ z^K?}CM*G_NEJFXqV*^V>97xF4J^K6fx5Rm4T1b-Er<5+fPk#>7c+OJ3<`<+J(>@dv z-6x^iIQh9fZk0231Wj81iI(9%8|FFXSKZK7on;78&((|Tf=9CGYS62^Qe)E>d@aKF zic28GP)o_o^p8&z`IPpCv1(6!PV8Q$oV&@uWw|Az&6EY@6BT23=j_0l9*^>Q1nnRC zNR}gnn8Zyxg4P2UBl@e?SHHK17g9v8E|MSGtns>=`fi`vXzb$kTuF1;HiEby9N#jnu+F4Y@Vw2CsqOOz*wOee?8pQaX3ii!1bA5RI zQuxY{<-T4{Z2cBifS>(lvoF*@ma6nWfxpsP0@eXk8$ZgJXZGI%#0&>EBA8Du}z286N%c`)$$_| zc)cFaqoNYgqxUSle?3f;^~R7gx^}WJ?AIQbvaYl{IZXJepbFhC`SH+t=maf|ktlwU z`k@I9tLzU;iOjXWB;7H(Mps^l-2Pm10GOhbUX>i89`#LH@?n6uEkIHqSton}xOpLM z$XN0>_K4p>Ym`O86WQ%ucR(4 zOequ-@XOQA69dH()5qAzL@TM-u(7EE><$8x;^)xOh!G!#xfOO>tgMOQDWav@j-nQ{+D80It<9_C?p5^5J z`b>zz2ps~)Z1U>RxzunQ?Wj=b=3M%vyty98K(t_hu_6=ij16nuizns}X0I;U9=>5N zppC|0NJtF9%bj=UZoPhdRch0Geaur^+l!u;i*Z`GnhecENR!V5S4hT3P;|&ml(Z@| z(u#dg@lA{i`xKcF9b`5vQyOU&XcjiW#ow!^f*<*Hfn1lWb)+Oo*V0wd=y{@SM{#6| zS?#ylnVQ`XAMErwJlbD1+qI$=Y-XmlBE9|R+x9>2V3RRa-vYLzS!)ZKnFF^Z%2okyEN*va{LUXuNA*@K3ILr zOYyn)Gtf;}t(;IGm67R}?Vi-+)Z%tI+zJ^x2K4={1nCR- z4m}$g+d6cAGs|WryJ8%z#t(#5^!V8~=6hdOiynG2BioK~0%7|4@FSL6WQ*AFvLL)j zf-`qfI;t591Axx<7f4`9-c5$_wbHC23nw~G_YRL&O@HUK@UqFBZts7q`$GBerY#`>Le5Quy(<_H@*^*zFKjPNB$tsrFKj z?pYr`|J~lgp$L!+@$Pq?3DT>~I#RKG?|{OZ=55r$!a-jJH|+^Er~X7;%gm>`p`+`_ zzoz{i?_JYG@JVuR1;eg(1}a28tzTMNU8V?DGb`ACvN0#EleJkl+v*#(*I|Gg4A|G2 zEv1TaVjkJ&ZuSqZ_ICGhX2o7DGplgk7w-qtg+quW8|wylR?UxBrluFG)LX4rCW;Yv z&)aE(e)-MJQdq5i?mo?37>T7((lScPjg`464RA>2$bOQ~aYwW|^l(RYVrVp{L%s)4 z^6^sDxy|LRfz|8{NKtQQh@S-B-UxAZkOHOoW2~;WaLfE?X)tq)^znxz&FPqr5huM+5Wd%q=?Sa5rNvcK5uw3GJ9 z+F+w&;KFEZ5N49vY7svGlav;fWHFy`J)tkeIx8Qa^9f4u)M zQv2hJ_bm*ao$c{ja)BF?WYW0bSOi%MsL4o%Dvkob1=aOZ{aa*AC6eDm1OIpN2Ku@z zGj6axqa?(Y%-u*6`bgPZOs$zzu#X?hxZ z@pU=jH>{gMZ=B^EoMkVZ{_T}c`3_E9x@-zlH51NnKP67MdKve%R{(kza!%#o%m;LS z=1CYJ$#+nQ&fG4v@(X5B5{Rk@LZT&u#Dzf!{Fq~43{Y`E3j|W7ELxiZCo7JyBeJ8B zK4g3nYCTv!cr5(llyMmR5U^wqq=%IO5D0-WUSk&c;3j8dut5-j<`Epi1hhuw$e<6I zATih>Kx9q9e^pXcnV!~Z{`-a0I*?+g0|M5G&}L71Tgq`Q0Q?(QL_LrOqOa_H`qP5}XF>CPcV z2`TA@_xSxi&-1RcuM-1*%yn_D&E9L>>vMM}EMv^JoYRoYCj&VEhLqG9lN@}QNj9tr z{*%^7zgGA5&s^vzBY)b(9tuARzaKeNm+{QSFor=7QWn{Z+ddn=a6Z1&wn|j2 ziJ?u3Hn>u@KT<|fwGC6}l7_t({DoMFSlk-FvivIVG_uX@_ub_iaT2)!Im>Z6P1-Cqc22!%FC<2 zDG~3Ky0M<&heULmY`^{mOm#<*;@I{6_S=A=1gA~&N!|X^E~y)r?gY2pJl%s85dDr? zj*bp_ft)Q9nO^$C1ZAaC3*mu-6Jz7d(veLOvn36}g{j0*{)TriFW>J}m={b-Q#O{R zX}B6o#{@`5Md>FERr~>eu}&ze%2qUdw*4cv+rm@u-P#Hq+PlNERD3Ip@{;|-Bfl_J z+N+eIKaJ7ePL1Lak51E_C+d(ExslH+)3;J*d`}J+pp;l7-Jrf}<3W|dfLNhA8Bbb{ zsVOj6Abr2dmYm}}(BIJrD;8dIz+1y-ZgOpLe$#m!b2AyW>xc8J@fvdQ@Z5N_u^s== zg41MTE33o!EO+p9jwi-&#DR!`=PH?30(h zw;&sTw^s9Fh12WG(K)fEE*r)m@6*nL>9q=@VdieJNl4P6Lekug z1jPE5`0`=pU;(rrB#EY_fw!BV+jH7I_NB^HT79#x+m$o7A$^~!|J!ft0CgPb8f(AT z*S6=@-g8kPL+M)!2!w_aQIr1ldW+ppT$dF_PXF6H*yBY$6}QKWvABPCln7^1z-c;Cy&ii-AyeE%A>8T3qUx1?t=gcv=X!Z>vD* z+~T;52v+?eHihE!(#lAXXhKncahgPQ2z?9!q<|1Yi;AGOgrpS7Eh9q)N-t!zl0mPU z!$reI1IcJjb0r~UD`~5hBL~xH>#l$Q@qvpF?RI6&aURpeRR&l zU|rEqz=Ci`AD|tJ9C%mTZQSyXLEpOc*N{Gnwm#*xE&I1a%z{5CJO#dG{~MVcsvtR? zn26>c_M2$HI-_7ldW*ZNI#Y=mO<$jWUT=(}WhVyGse+fHBce0#S!1@P7a}%oLBmU& zK%6x;Ub-{;+HMgQjt0eO`Q+2osECJWbBldc9}zLx_tnW)ZNF0;kJy!igOXfyJ}39- zodd7cWQ4!f7$jxE%kNyaWLxMvO$!w|&}(-ORRZ zOh!1DD#u|=WXxavLGPayf8MSZJ7RV7Yimsk8i>hDD1t<+Z4x;R&}~-;wNn_BdiqAm z$|}keW3}uvXL1`PD{ZPNvP&#L+M{X}&1gW|{uiLC$>l{29df)g53U$-$-&x@7Qa7VfQAW|x zOeJ7iknn!bTf9Yh#8H{7jdOKp<1nT2=y=5*ih|q}qKLeZXcx`rXn<(>L3OJ<2U%*o zuhE9)(l>4~amAO-J$a?I8{@=vdac{*cgnl3wsQ%-fehT=-aJfdvA&y(e4+aMGVk`T+IVF944SzThQbPnC^2BNhkJczRUgs$nBekG>MlqV*pQJC}z4}~5~ zZC5|aZZ7uAODyX?bFeAL7`7!3NU`x&&D)*)wf`#`a@sIzV@2=sZ9Ajowvmf>eH&*t zM45|8_lP)bX-x7!ss`xb2Iuc(k&xo1i)=!xRz~PpV`9pEyXE(-fs;h z(R1sUP?9Mv{~AtWS#J1Tm-UE}tl2X}VJr2PME7J2sN4v@-UEmj|B{hw_qqTF-EFPI zml$}&9?ucE|M0x~`1Jo{(5e5e8k--7s_+z@a+I)sBx0N%NQMN5l{VwRyHdjpW5 z{4c7ds|}*t+uOg*W77lp^D!*;2rU4Cjx)eBJ0R>n@WPCXLBnzPJs=*}<7o^QvI01l z{~PZ#jSt$pKh8ej@DqSC-w-DB%7Bn)XcHhzCc}h@i1-j|P-O*3TN@v>S32)DIEonp zO3x=zK;_0oEwsvD0yIL!!7tGn@ev_lQt*q+66r$mHvkHFnz1-a0}T|61p#FiB5*?r zgA|cdvv{QO6HtpAV4x~|bkjfxlnI0Yc^OtJ5BgaeLK_UGNk9W9hcF@mC2c@J8Knn& zm8h3ws2adBF@Q&di6!YbYcUK93@Qc+-o?te3i3Y?m;q*HREQmc0KyBcM26!E{F$>P zbNXk|*i!G|H+d^#!HQ?)6Ti#mM)C|&8lc)&QS@0>$r`5al)Mrh&Q{tK@fBcDnpU)Y zv^2~PKfv3HJg}`hqyc{>Ba`M};hgOl-tGU|J&w=MZ=P1U1awKkT6S>GdS%#o{5-YX zvflbIzH8vO(3bT#{O;HBdZ=A-lnenwJN%c$o3*l_AS!r#!*kxS$41GmNSRsU%_`Gv z=zhoVq!QVS;^mxP@8?{ z%^6#x`fENu#zmt+Hb4&Xb80oKZNqlL&(hM_*^-VYLZIFQa^@PC+pp}eQ~7&>nVFu! z5Uc%awzs!(_R<^$3E}jf=24eB0f@jz0hMnQlw)+=f;;FaNJuX>6b1NJc6^w9XXYqR zfPMpqXLp^C%H z7Cr{VPbSJkQArD)O(KuZmcv=lrgAxxO;%g5BLWfWIDa5j}POrLd&lvSa z9uf8oTe`E6(FJniX7r+k9q@RVEbx<$EChHP>jK!eO7NupgswL>1I2KzgLEezDH?a~ z);eN-cRb-Wo;3T8dB@u_?;`%Wa>Rr3<+kC_51EJexCI!d#@GhMd6SQC@^izT;iv8d z3Pz7CeutmET{lx%0*wtnOw8UjChNU?=NJ?(^;h&L(euXrT8P|4H(j}>)!aMa`HVt3 zxwb%#>WibW6A}NOGVwcaMeH0R6`kx1m3V5)T!aT~9?sSv)%edH=B{LTzlMLojhAlr zs;@D|COdwM*c@;4DauJ2ebu+@61t&g=uT;{tt&V^pX>~>o4PL3fp@n>a8Q^`v#}Xo zG#$Dabrk8cl_6m(EUZz@v{mWa>ZP6ZCy3c{>FOGf+o{-EG>zSoC&kIhy|WGbRQ@-f ziHe^^q*3MUk>s9&LV_||xPVOR6AJ$Ddo%HnKNNfk1)`xZ;kQ3OqtpETLHh<50)p8V zLbz$VX$iS$<>-C!>4sqv@@i=;%i!noK6Ee#WEe<;sVL4sK(6zc?7h`K|4o3vJh-vu zS-ADZ`09uhd$K0)s;fiv{6CA?wSPWgoBu0j>$(HUE6WjT_O8$fKmb`o!EX%IxB*-Y zFgtddbZop3eYL*}_%eDPb+$U)uTh@_UO)0(ij}Ng2W)t+4b7Gnzll@6PdC>l)td2e zzwnURE00#^oAxb_Zbr6~T_G+ia3rLpB(uUpp~IZcIR7rTT$hX3nB)71_k>sV9I-%! zxJl`o%T*TWIb`Gs4_%#jIIKUcU$*>r{J3Yi$sHAm6QZV`yUuOxJn^sQ5;6E=C?Jm9 z>z1i6QwrBsf`w?oz%8)%Ay_T2;+e|gOl^%sa6Z0PG!uO^76=9gMLV^?rITSi(zWwg zvydbkm2dDNZCU;%(lfn4YYVPXcS zCiNHV>tVu@WB}&n^xKIoBB*h3F=wI@tPXBhj)0Ois6m5($AT~llz+&2A;onsP>W{1 zG{t5TrznE}$vSTiO0cGQ2!b_HX|!?^kgtqxfj{h2gQ5@;tzf#lDh3S484%}FRYE5mUU0mPrW4(2hc_)S!bJLgp@U|>g)sZ=ho_d~8wa%;8VwjK z*lWqyL19C0<+oEqnTRE8w|G32T$y+0TJa3P%9LncOJg&Mns`r7WnF(PzmbcP6CEC6 zIr_Vo;+KDma?A{UAAVVhVlNpLOi>*tb)i2yBC0PpQLZP^!D9K%k7StBYNPmfJ=Mj< zo*wZnAD)}a2M^3wT}Vhs-FT*n5tUy)ejFBmTM_a{tVdZ$Lc6W!i0iLA57b<1qSyD0 zKt2)r z_yI|1Uyt0XS7ZnmhN+n7g%?{3&*}Wu;+m|}<=W~YW^4)zVKQx|;5}1Rx=h_HhbFN) zcalAmy~^9N`0||0B;kfZn*fid6{ZXKgQ`+dgKK5%?0hS(yR}?~plT|OSFU-3cHHec zHcpe&LBnD1t!>AgwN*Y-Z0wYPv4af%oCQU6pR;%uti+i zAtpgh9{qCX*W6<sL2qXMB&c-eNM_g4aX5sgXpf|IHEz8S<1Nv6YV@9^^`?+t ze#va>Wm9K1TSVi$3IxzEJOsHy5)Wa!S>dok5^5hxcKvmTXN6-Angk_v~XN9Yn5i?yk3 z9*6Uzw#nZ#MoR^_NoF&bQLH97DR}>Giih%s{y@nh)HEFrar_}C6(PywYB|VklLJhL9W85r;XqS$Nwxju zKX;s#^RGiYw;Ry)z_N|&ysPWxl<~`{;{Bi#JFW+1gzuI$pMYhcQ%y~BO&@iweOXL( zwFEh^QZzi|U?9~7R*aC`hDID#KvCZJ72Pq{t1h~yjM8jR9k<-QuZrU40Hq1IQkpGA zWKhuro=}#G$^-t+=zc><5#p9yoE5`v6#T=@2Uf2qLY9Jih9F^2O0wnRL>fkIvEB#`aD{at(9k zh|BaKv^1qq9fYjTtPTMq>nk@Uv4WBd;m{D6YwC)8UTGxF%04*++6f9}Eru~EIJT_O zLfFu>VE3jgj@&sVFbxAIPAl3OBI&R%Oth$&$w*j*Gmw^*O4|#<66o#6roJ&>J5){92I2@E)I3h&ThCq#d1IoAx}wpKuAhWbICsbNT3bMYcf!*kwjwQ(BTlI5A9uV}98e?7JIiw?OrRn89D2lRcA%IBehu_AezOh>ZCM*i|7`oXCML)_V4l+c{Q2`vaH*?Clx=Ce@#)t@_BdjSO)LvfE;rP)lzkDl z;>XL&8w?QA9?WQ77QOfSJ?Mg^Iw<>JsNC9Zx7ln6Ca>PjdJW#uKYY8lbggeH-8=f0 zD0a^>;kyO0G%jJW6i#y#$4B)9n+>U!Ca1qjOKBT{ z;H|3py$yfK5n%4&(R%jrcVb9y&z+*cdc^2a;n940)vSLtX92;}Rh)g^ zx;Dn{ZFdskOv7uw?%T&HKF98-9LBu$^2lwelFP!?$68noGgFYaZ6n-X_~>S>^vw9n zbls6E*Ka>Ugyr}FONJPWKW{yG8AtE6ln9QU!E+8$2wR)3qGw%0JN{B_8? z7vRehCMbFlUM-q6VszdTt}8mkRC+G)>CV}*9p3n8%Wl$Ob^Y%3R?CO%yj$vK&%yKR zk6PDlvnLym0**NjhlzVz4|)Dr0WL-YNDrJrpa9gy#~iZi_46cpg2PwNg#9f0dW$*H zK_d9BV@(n7Xwg#RxKAB+z|GCI5W-r0zct=a~Lf=t)XwMMNvZ+>kGq#7vkj6Up%KzUZ@#5hu2ULy2QmEEILo-c>VEqUVU28)dTYLqiJ;YAv4C#MlXKuZeN&sKXkqN zenb6Y(;p}Jd6;bCAMI!6S#$7zRUI0Y)h&x}IepfzQUkQ9<7BG1V80DU^p5vMv61M5b#dFq6vp1C(=U*=W~3#a+*O0&zM z$uao)%97T|bx9-EG7=IcGFvo1UU6rROB9b>FcYx0ruaZh_;Dff>7e8W|0;6>r)I)L z1-PCy_?h4(xsKUKiB(4Vq(scp#9#%ewInEk7{Y|A+>-TPpNYwcN};8X24;>A(iz{HA(J17^Xx6!DYm^ z>O*6*P?r{Cq3wkPMk=C#f6x>wJibJo+1yYd?{VrXzQkTp9h0m3-oDm4H$3gcU9NU6 zlm*MOytr5U)S5*I$z<^G>!NgIfI1BPmGgkJ+ad7N!XU^RhlZ!_Kt(;seM~47o){2e zk+T-L^SSv;2P~Mh_@i}0U{M1o32Ofe-#xA6y7BzcZEHt2iYrSu zGw4#Zl_6C@a3djb#F!KLxl!H5D{uBs!DUn7C;0gN#4DezpC7tI#-irhCPQaN&T~YQ zHO}8X#%K%PG_u{!m&=|L>i6td_}?jAwaFg}JxJe+MUGIR-cXd=KIls-=-#sXNgv!? z1bXn2Ka$-nde(e+9XfmI(c;nQV<0)Q`uWVu6Z+ev7XNCF@7mkHi^6Ul(#HGkyN$wM zw0TgqX}--shwW=KDZk6MQSxWwy*O=F7a|e9De7O!STJyF?h zCAhA;oy1P)M=}sr>ae(bAz%TvA2c70;`sZ}ANOiagq4m~Y;}X$_kg5<(+96Ai$QM6HUAabSF?|*9U!d#^U@8ZTBnZKcoh4vew}@_ zk#zj5(9k$>M+9{KGMBO=3>5Ha9Wk{Y#+8QuQ?O@BAx)~PScJ3F$It#3Bf~d}U{O>0 zhRh5e9v)715h{PFOp34j;bVg4n<#a@>a#f50tJ9n(~o2K)ju^6Wlt+*rI^6;H-@#G zp8w=UxSgz_Gk-eSw(A=wF0UL{`s?{~5H7d4v)(J?Wv0kRA>eZcgGgU+<3kW-2moQx z2+h0Y(oDrem@M2gOoB(BfLnsw3MQkCfC+=pyx5UXz|9A4RTF?5q?dHkBL@j1<@_`# zS(%K1wmeBT3N)|wYPwjRkpNH^A;=>GI(0o{m~=2241rLBfhI%=o!cskW|}}!Mr~|I zyb1w17@;B`8BshNQA;WKr8d4QQWQj<1~oIELt7eG0+b1ej;yABfTj~otZ_9=OXLf6 z_d$4y3pQ!lXi8o;lxnlOHt&$K6i*OAxAXbY+IJRFjK~P*)6wU7Hi~`%atiw)%%$Rq zbJ8#wny6uJWL-PE+`c7w+4+x4`C?^=!5yjxa$GUf4wN4AvC;_$2-pnutI6bvzoNuw zN9S95@=+Z2d8JF%rDJ(E5p9NwKbj&HO4F%6vXGTnYn562gv3sybAfK^n9m zB?=0PUsQjvTpIAPv9!Q3AQ12YAt50qR_1X;ochsd{o#?9|8B`KHRCtuM%-L)#!6GA z`h#c#U4pcC`_Nf&2{F1*MG=j}r`+Gn<>kc-e>6&~N;c-p+hXFRA1pamD^8!WlqBJXD;M{0_mm61 zyw%Gh$Gf@cmXv(N_G@9$39728vdp$HfPfw3WO>33+zNXgqoM>EsFF9Dm!HZy;9uhu zpIfnYZvqAuh8|`d*G`l#z3)n?@0B~-4}T6UJj}}knqJu)?P%F)^s(O6dfKa8eW0Cs z>>hm(JDa&!dYH5^J)QeDBDdz;bso-o{q3;K^^r8k-=s3vXrsDmz?PBSlF;ms5uku zr&)+PN@`Mm7)~zkgcwfBTf>U!b1pilBFn#YYJsU&Z_z(E<7;Hp^)BX}z_znb*SpU@ zZ-)FEaLG_YR?f6S-_sZ^-raBYQKXPEi#NV!WURnCxo>AqL2b^~I%Qj4n$LAo$|l(}*>y&z zZ7&Hv>p+CTJmT^Q==rY}VbO{cGPE#p1T+Bz)O>jk$;d*;tEpssd0aGhWh6I* z7o_>JAT>fzh#MMcQJwLVmj5&q@Lq#4LW#lGAGBX%p{jz5r`Rm*$cAedB}1N(i4XA-*F0j8nH(mIA!Z zq+> z$8>b6qM)n-S2`F%_|tPi{aQNFGw&Fn>d+aUd>$xiZp;r^S+b^oUAHH|ew{4qO4dL} zc8r|YaqZ*KfmE4U>_Ar2IVu8gYW$kJmbxqKv{Uhg?Sx$C!iwC`&^drhpOgpU14yui zH`f6?eOcc*f2P{h+!R0j#pE{*U7nxMr@}8ypTn;^B}WIkMrP*+drLy2LOzv!iLHsQ zDQnUf5v&w`2&i@(Ft#9Dj)GP|t%qTtI;Bpz67h!2sxo&D1PNU%l-bJRk-qT#GPInL zMi(EA@G}{-B+%!w8f}}}>OGW4weM)bBYS%i&wHF9xMBVuL>B+vKHDD5)t-n}@5dH2 zEx}PRl^hF{(J=CBG{YOICMVNldAnS8tEW!B1GtU!$thA=i~ZQtq|&F};#cW<5U^Nn#ucboT>2>+X7DckAV-`&exX6q9Tv~G#dF|l9C z!rW34^j$A#?KBAzx63R7kjU&KM{|D>$EdRSMZl}QNLF=#0@n?!NtunWq|J?6f z(xhE6xk8;oS3w;ou=DPdLhFXprPNviruWw+5u;vi=d$`DuGkq{23@(AcsIB7Cv@nX zWTewAPl0RIXgk-Xq8K)VJ*TcHp{UAREmli6?>GDMcWAMTWTMEpmIk`A@7~_jqeS4k z?!Ce0wxpHKh7P7%rJsQyk6Xw`BLvrbJp(gs$LNt z_)HoErRc!b59#!~sn@H2k=X%Xxi^BZ1^&-u_dXEErNt*K0H__+UW&c#`uShx6ail8 zwD!d7S&ijjFn@=G<035d8GU7CBr`KJ*ITs2TKRvWNF*bP?jIueOMscg{3RHvF94}g zi&cxBQF&^rcJL?3?qp3O{`M}jGkbA~+$W0iJ(M4Uh*Ow#e_!NL-0Th|Qt`WQCsRBL zRe9?j*RNT&4|&ENP%iwx$9|8SKX)##%K!RP3qV?6Z@2;4B>o=EjA;MCD~r728?*sF zB14#7Xef`I>C}Yu3ONA=RcC5iW@&N@h0yjYKX2Q2fD6qU6n4rDbl}8W4fae8FhvBq zm^l;$(3Uz#Qa%M_t}alX08?b#r0+(Rcu8!F+?49VjISJtmYg&}-ovDYmXGy1EXgq& zIm;1F;J1lFE84-d?B%Z;pfh=AZt=#8SI@5!h z!qDWU*fIJ^oSfajx=jrRCPB{E>oaJKYS$J1qWS9O0I`(%9m zsrG=^1?wOl3o2#ZR3RbLvKSh+|JGi(7dbh9I^QD7S4J@Oz{${_7_!Es_ECl)CJd+Q zz^rQGsntlOx$D{GDFzbp1Ac(E;p^?+{w#VuV5;4FS>RGNR^@8oMRSbtGnf33b2-2) zzB2-1sOE#OFwV#XQbP8Yzju7w(L(=LLbWL`Am}P9*)8L`JWAG*CC-58V*AMs&XS2r zA92nw_oEjy&+U+zIN|^l4Dy9_475_mMF&hc=!qJH%&R(EGs1h|WAMiQe)xdloZ%dN zaIn~$*9F-{My^jF&0nC0|NRbMzU#5sVZUd~)5_9xUyh;jhNU@``v8LT%+vapj? zsuF>_$|gpqBd0Qkqd8@iE3w;xN&9okRF-vb-A})5>X+p@tqi*~>EODjF5Td}ZdhSi z?p~O+u;8er>oez7)IIj z(UV?t;6WzuYRB-;;r@mGG=XT|q2r#7W)e`QVCfkUSL`gZI@xR=jHbf5t%^s%ezSEJ zs2_6wr(3i7(O0YFDX)&lUq`=@IDQBF!9?YC&f_Wx<2&;1J~sUe(tL&vy2lrd*MnvU zhOgMd#fVMoSDL%7q5fp=lO4NU7F^ku+86hG7{^WyMw6nYiF^ZSe9?5JWS>54)D|m! z(`0~`2i6wMz2&5^YOtxoAAcK-AnVx0xi4Y>BgB6^L->R6 zLq~s7A5QXI8~tbrca-RlCjHp%g~avQR{n`!QdRwn{m#%D8}UGg)jb@O%v)6Y7{4WH zOf7xu)bv7NgS{Qcb$zhZZSwdh;?6hPRMd}d$a(E)qNrMe5eaSKN`2+UzYa(-EiI9c3FX(8``b(vxwO%>Yxi0_3w z@chq=$Ln;<_k(fXW50YpjZo^U0Zw(`Dr-rr7Oh3>}o5%Gv_=!6uhS zMQzFq`wU?ObLVOyt1C-L(EnX!hubjD+Jf*vH9_`a%ttDaZ&@x^{j_Y;p&rpX+j}Q8 zrE7Sf%vSU{qw74k4f`G7B+yUw{zDi8Rdg2CHS=nvtpHy;;KyI|N8XHNf?t z#n}oz(x;`)PKNauGz}HPyfa~DF!5jv`2{lNmi+uEdvq2eerYB}c4in8Q7YVQGeNNk zEfubo33*p{z6jumyaRoB!eP(fLVOfmMlTBqT6>Se>n_$d)@Ss*YM!oQh+&I*sSTPP zjZa^GKw8Z8mD!s6pe4In0Y4pdyP8fmJ@jLRIyyDd|p7eUAE3rSxx;g*$UdK4SC*)Hl2FGi*{{H@fXEcD4I`Dahvmh)u zL!XM@Zs_L6Z`2F+FD#TO3bs^Ia0k>U=U4j-nQv7$xP;u!2PH-NBqX0oi1o`snukU+~NmLf8SUOG~uBOW><%9Sn zJq&tgGKpJnilo};)AoXF4Ue1EZ(2RX#)q>?PddCFuW~%dosL5~HrC6FaBi6YG(DOg zUc}`Uxs|59{%!EkX^mFgzvbYP^p}s$2Zwycz125xyao#!V}+lpZ5D5rK}o=gFL3*2 zy0w*;`yO69W>OLAqX#yda2WXmJ<8j`IY~=Ky%+!XZh`WI%LN4s-q)Ft=AAWmj5s*X zBaF7O+8z4#ts+q*`t0xAHlO#$P_w0Ncd0SPB8#MS%K$gDqG?4ek?OT2P3-x2IaP0? za$jLTk@xv^?8mu!tK}sRYimQJ*F@76j>fU;UWNtjAv{apd6MX5;w%M@Xp}!9A+ag5 zF2}!7=0&V6=>CYQ$NpwA9D=)bk6P@gN8is0(xjPUFT&zpM#;GkK?{=*dq0cG(g5*# z`|Cu;59nBT%4}8|p#%2^%pWY)&KtCrDat16i2 z#~M1v&$HyRO%gK;F|Qjj3^m@`|M{~YDl2GrXBxzonhMGRgJN;_?Ck7}%sHAsi?t?Q z2-(1U8NwFmPy6~`eQHYTpZ=0sZfK_i>um26NT`#XP_qbh3dftQfnxd+cj^q1r>xZ?KmT5j{ z3mlOIHsw?d!9)kx959VuCGIG0bO;&pS7pvw3BshXk0{~^XdrxXmg0;GCnhcRw~R1( znI)M}MdU({?jvLfBGh z@%HT!e7@`(T9@8wsX_e44CUvwY5ekx+IdI4cM3B%$*qQwr!RjX4ap^cf_LS!6@=Bw z@2xoNs!coPj(&M!bpW~@0`9T-mZ0$YmiGn7!C#Z3@f1U$LcUN?+I>o^x35T4^Fa4S zEp5#`t4lS0+&*T7WQhW?=@1G%?U<61lJ2?Dy)0QicUP~0zj(=Ue{Oe4VQPI$d zg_nw47t3xL3WerGNB=UTwXpc0E=-c1rF>az+VD;Y?=|t3xXld9Lh_;~RxtpsE`C;d zzgG6(>RM52#>@cN3Lf&7mZh=Hfo-I;UEjGJ3vn_y&y zoB%`~`rjO>5W4LJNCUI_Fcg{Z2O`=}4M@^O%8^jrurV8y>ITt(UQilYiuYIDNe9&5#XMdw9cDb}Z zl!`E&({dbaKh&^6DU9B3aO!VxaGMW3R%Eu16kE>u4p0fi^KKut{=O8tRGdmAq-pcq zIh^oT5GkJy&X{D_yinH}?YBK?%&~Fb)6|`$$-aq;u!3NF=Mh>c6xY z7Bm>X!K4{5EbY?U_Kx;SW?kWKq?e8mjDQ zVKRn9Ggg~+2VQEHEIa1_PUhdM^&38A;p)~VB2zEYmMEkEA}#mWfENB^m-E{bf{B}4 zh8$p#4A_hj^q+EUA7zRYpZ%-95(6!5Y$Hbh0PI>oo&Tu%8!^x21xd zKkqocvRN_=K?97O$b`?B1XBlaMi9VMOuSGYAw)yE7^W?6hVW7w8A1cIfXJ|X)JiCf zmg81{&_X~7h@j$RbtceDe5FgEK_I3n8c>}k1^?uQf_PVWF_DuTkyMLf-a5nEWz<LgN^1a>h9My^gRPPw324>?%7CsP zw8q`50AT__lCzu|qU=iKixU7by*m4hd5eTKm^+e43-}t448)cVg+wS@3ZX~RGZxQR zr(1so18?uycITP>VcL}dW|@|a>iru)+T@K~+|dm9v==-tihe8g@&w-58t)?im~_Qi#2IpVj5ax@E`3|7FDS& zUwl>VwtOf!-+ObQyC|D(opU<1c20G-(0WCCe7JTlRN+|CO$u>;(>jXfOOm0Nkv>L3 zuhbTxmi{?~%>?EziXaT4wQZ`vZ2v7XqN2d^LE$i5@2u4O`!r3E1zR$=9Xpd%GmHJo zdrgiRTMv06g%$_0E0R^OF7rGXdALc3?vjuU$J0f|;SB74!6{^4eZpnu)!Ween zUQ(=@jol=EQ2X$x3mZMX?0m_?9a&Vu_4G62XiAXpR3m>ViaMr%uKu}3P9=9C>iKu; zwIE^ZdS2&eWxgkFu`0c6$crZvQPz=E{%+P+UUFQ1rS6D9I-hkOg9i7$bJpjHd{e2N zpL8!e7c8mpuNMYfs`o<{B9)QEFOB|5%+w#R3SeU zPj+@sgEfq#8?3|_i|L6N0XJM2Aa)xh{%NjaCeHo?7t{Y{@i+S0b4(UZ8Y0{fR4Vo2 z1SM4PSZc&ECWL8-0-$V|Cy50<-v8qd0sD#}m9}ht=UK06)kd9aX~pv2f?8=MUuuDd z%cI9*Cl{ulKA9y!zSe0!eR2V;ozJIKeZXWloa+Dj=vDv%rOD0j{pJwY>to+@BC(d=(RyMUnG#*92^liy^;}? z2C|&7WLq`=8>IhkM&q%CgLfl@1-2%!ecbyTDfX5INwgvz_)8$5I~zD9OR{z%H8e=j27{h*;Z97r z6|fn3T*!rxQvF)CzPR3M%IFa zq3PpgC=`YT)0QJjnBiOUAcDe>@%WRFU#M#-C?tcTUJ&AIVWVP@bf{%OJu2~A zvi1%8WY|)bK(KDOA{OsPy4tAItu^{AvsI=0XhzF53hx%_lKV0&??lnoRnO_imTydlA1&IUX z4#O}-h&H2BYl2{Ip!V7ZiO2%pTFV>_OzxHN9aB)y;yw26b~kn9Lru}p^WW=_V4#i%PpW_Iypj<}Sdg$AVkqN0b~h17~my znz7cg7s|vqCO9XXCnxu6g2C68h{zV8w-HA@y;}yZuZio1v-eXLpxc7=@yWzcN?(-m zEP&zG!38vJ2viEx^SkT)bPvUM8#~H&?LnmrM_@=Qv$8BIFWNl(1rlz+ryNED0z=@n zJ~d`cEZuf?+hP>gLZH5`E;+$j1B{*9z0O4y_vG)>ih(@oNV#6xT!JgNYPl2j&+#cu z4XJ)9ZS?^y4Xv4+rt}PnH|lh(sv3bc6=Z__O!(s~^r|;o&y^;<$}C+NpqVG80v$0+ z8?dQuwGbb%b)M9IAj&8{_xN4+^Q-;Hpzdd#BN_x`r2JXW`;=R*hdjy8uZot$6;TF1 zHo?t!lL*kM)1DVSP!)Ih6sXJsC!(|?wM&S7n#-92N_-Uv%O3lWswa~+gs{YpD@_dp z9KQyQd%n2aSbdDu^4-^SxmhT*@01{eT|Jk)HSMc>jI$>cs5$WKE+P<+4qDm|;~jlR z=0s*!98#v!VeGX&)sXc`0VhvzGf%4U5>p^(+avt`d2VJw?fUj*_n!Ns?iEpI=gnL9 zr@No0#MNt;HO-S7hoqq|<7q#HQ;FQ8jrU)&R@HkmUmM@@20i|=c!$F&8Pgh7#Ce5v z_9Q7#vY(<;r%7pF&nctIBRd^VHc7lW;;t808^IU;ic4<=ldDl+I^qkWt)hu#z4+el z?w%Kad#HNk zQXxYI-h`$|TrAhj)mB_GGRwjoX>a5t>et9i>~a9DEre;RScM)G1(u2>v5<>V@^Ljw zb{+V^-ur0UW>l{LEa8CVMcgSI&_92DzxIFnCp*jE>(*Z7s|@&E+RuL}?%Fx-Hue65 z{Wh0ABI>7ikYhvisn7N_Z>&%KUjT)kfAKS|{v9MN@4x7UlgH$f zx&E)UoDy+8XMa6&f1P}PopP(1{1!L^;~92BRp%Yy;ce>?wEa~m>0Zc3$hPF>;ci2J z^M(pVTKoT_>8yj=YM-|sq%B^&xCVE3mlE9F-9mA9Xp2j5D{jRtxDacADihpI_pQY06I0Hl8-P+>AqIY$AN zkw9#7C~z#M+Jqn^+(;TTL`WeaKoc84(IW$Nzf=JK3dg2m&_atC7Dr;BqELgA_$mW5 zFVd2=S49OR-SrYPPy+x!VJZlgW+b;MCLju+iHXdSgoLBUNneNvv6cpKG6HY_08SWr z0|`hJjEs0Ifvw0qj}V5aD&}emgj~tf7w(0#BL~`v%cacGqeLDR_0iW9i^x*o&R!)c z90~6^oxW|p7j9K;+_0xtg$LyC@v%pl96GV*13TuC@;<67A{4f@Dxj`e57HG(!h_0U#{vgwVE5ISC%fMos6PdSfGEETv+6^UznNJVVwD4 zB5^i4G4$Dr`QHvFC)N}F{Z*;*!lWy8VWZ1RyKuk1zkk4w0!gW2a&nvQ`1po~#KeT{ zp*uthq>JyQvo&3DajQe0JuONL3)|N24-O6v%kE$M{R5c8!(s0XG8Pqe;*^vWAOHH< zmu>bh&q;}wueTBH13?bQ&}_*zuqZ;yo}4wv&=w6MohR`}CL zgW~l=UKioORGn}O?VpeK?~X$Wm8ydd@EES6UXFke_o|@TmZk8D`+Om`54*;A;X6z6%c=)}v1MDeeMQb1jFzsZVpO}b>BBX%m+mh6`7=m#ENVytv zP(L8JHL@O^UYz048S;31-4jgziz<#&nh(p#&gdN?C7iIsV6#vC9>t2|FKdb4M=^^w z(M#KQR1k8P`)|$- zpchDplmI85``erkUcxx786GSx#@`E?)qWNxx@OQ!KS_N903-k&44OYA;V*r=944)9 zq%j_B%w8O41IXmsS}SejB|f@5b9M~ba2r(_iHLEDX-xf7yyJIx`{2q&zU1l5lFTWtV(w;*YO1<7=ZXeSTuk&AQvzL2xYvC0l+@Wd+%WYMJOPc z7MdELK3nICggq0cB0Cvdp)cfX{OvUU6F$nvoc;{->w9-|xoCW8+Zn16L3qyTbj{Y} zVhY<{D=Xv_R!zc`J*LtB1rE~-C>)1g0uhIP_CJg}eF4Z<0wGT5t3?TcnGD{m#ogIP zr}xF~6N~|8-syR^LWeij?EVKH5KPTD|I6jmz(i8iTT}!9lZ-xs0)T`O5`h?YK9hVP zh!K`|Ac*pZLc&50AgWZ0B*|eu5OrMDhtCWLurNpbABjk}b|C5*8=E6g7tjT_U6%A2>5r%ebZQb3^Qc0VTDA(e z|JTPC6}Y(juI}~S+ZyBi4C8zm-STwuAMAJwSUsKSIaNM5``_&!WbZYvjfU>0zzsw= zNmza>o-aiu;tYKIricr{2?hyZiepQ|D~T6?*cpG?GX_@|qR7j`VCm9-BY_e?G$aUo zOoV2Nj#hG1o-3w&I51Qe#(_^S7;(VPgZ`}G&QwO@l?PAoUM8diAThWgUpTp7;3isP zaB9?;yy^QHrC#Zxf@GkQHYTv9DFsHp?tW}R&kAzPdx4(Nb-!YEHxH&(k9!kfWPkAr zY>^-Kk9ys&UuHIdKIeb^#kuhb{7p^j&KYD!)UOYsr?`&2G+N)l0(oE^oeZ4j9GjpH zcs#zz@^n2eJe_}^>qt$EODF=jgD?TpEYSJ&cBjXV{|p}LzSu>@1G!OT=XY%LxU;Q10EPQ_1hgN_LOhM<2^@g`V|DBA!`V{h%gL&^xPu{$&ojevat2Bx z|ErgRR6(nthyV8fELElXWuH{Ke`~OnMfnE$h8Knuq=tli{}!bHC*Fk-m6=&kAWOg2 zy6k;4LOr8)J6{_ABc;5mLORNhNPoFf!Ba?nD0ASD8&&Sy$MwO{+7GXA*3@+?b=GJcD#_v<)q7quBUtKDm*>7NTlV}JGg6D{N4KmN@y^VEe@!Tk{5^o;_XlG|MvT< z)J5LIn*_3_Lsd}JP0V076-e2BN#eM)B4z z^zgy{X-aTT*V7l32TpG7u*U$;x}3X&de1-WTHNLZU!sI^=Uzp>Gb8!>YI$1E&isz$ zyAs{mo!b#)bNM*>9Qn5JoH1!*M_1Re?F2Qt(0#R8E4{gD^(9aHrN4V(Osb2;W?1h< zPPL?I*vEVaE|P z-7&vTu=i&#W4g%opbQzj|6dK*BY;UlL(E}`Fzf#Sba?-z#kaiBruh`j#zyy?O9t|T zweO#0pBZ7w688PzgS6lCNRcrfDCfqV0RUB1Rf4>{yk3>xQ~!&8#3wvd$6L`oULx35 z|Hpr{;s`I=HOHA#a%Zm({~Z>jt+k}Bt2wQ!8HLS4Zp}hobpPF0K>NMB3QG^$0`EG{ zx;D{^AkmE}&?x%k1oQ52eI?$=MhI*sT~@*tIA$*g1Fk14$U!vKm`fJafvs@Z;-*E# zz!2%Y(SOA5S?00O-_o2(;6_N440TkpB&RxhJrbDN3aHFj2HW^IW=iUVXyw3AJL*t< z25dbLzg=?TJKW?V5KCo|fd>s$DmDYOKZ>Sg174|_p+FwyI8HqQQU6u1ARPn|DIwlC z)1PeYbIinDW{i}#qd?b!N5k$_noyT1rz}Z8N}WZ=g~UKs9Yf*etuSdVvGwH;LELap z2`TM5LAQP2ia>RB88&()xGxJ^K_`bWD$?hWSOvLnn?sLp!4cT}j2h zv6k>mPrRYi@$!*2Dqet|uCF&ASJ5s%p`=x`FLaFZSTV`Z*s<~5=={g%Y}ytUJZ-Pp z9{P?U%zw4&AbaopA5IJLmgJ^N)NqvcdcY}6A<&>!U*~b%ee>9M6a7nP^vO-h#<81a zK`{!1UbQ^(Vc+}AVOu|}XtSu+KHe{GfOCxIdw|7nS+0!4ILmL}Q+i6-)82bz2?Ss5 zjEt1f5X8!-KJfZrw?SN@SWK={p|!lwTBijl6k2tA!tRGr*T26c zBwQac*qmW+Rkg7Uum7XkntP)(ls{{6e18+SZ+5>hlEojRm#qHh@i{`KWg zQ1q!=u93gi{g0SCwpKRbD-i*@!-5n2N8j0s&eBEVjCdCp;cZepx$RGsOb3ua=M1+} zNL_HSh|-zpjfM(HvH4~Z; zeZ4BQo*Xosg-cEu&+UzW6ngHyB7=HO5qou6T`Ke{M1`2jpPO@YE&>9Fsvg(&e%as{ z6cTq`aq_E(;i&JR$Vr`PKon-@NE{1Ozso%rN^X1RLu{w(Wc`804r zY|G*BmH8d{Vu|qN)XtMt5X#rt1Lo5wJOHTXDq-^!onwfXJ8ahvMTisWhZE3imzCF8e_LtT^ z^b*tgBa(8IT2p#>bo{lNedwY=nMtkSbuH#cK{JqV?Tk^mh%^lPF>9cr@1w>tNBb~w zgy|yfgP<;(lTo$tU>9a4afqCa>6HOq+20!d!;XTgc+Epnr$50I!4zCX4V`r4!Y>R- zf)LXA6uya>yw?=c482mCAwHQGkg#mR=w z@F`_*)nErOSpwq&srYuYBm0!hCvh#RDAvIGU|cO&bKd{(cQ%G$tJ@P>j-7z(?qqcl zv$02P_{X)yliR02WMI-N>>ALu?DL+=p1vS*Fg=PsFBGPshaK-uSw)OiSygp?D{`*Q z)Rjw^$10K2N*^;8zaR1odj9nF_5UgY^CR~VNO7MVs>K~Sv?#Zzhb^lA7v*-&1J#_0 zbA>Q7q4O}<>F~3>pxR74l5o#Fx;YguPL+^bi%_Ag?d19CfBGgHf3JOiZ>l3G#?bHU zPPVvz(@RVJ4OSA=wRX5!-~veyA1(yk;vta)(dSXbhe%@^t1CfwsU}p#=|{L_G$Dx; zn30GOB}Dn~C_8L*J7or#X^;$W66h0lB5fI>{HSSz~~^s5V=gG6j%zv00P#-8d7o$)Y4RmAb5FXU_l8)E)^vw=>D$64)lvwwKN^Uf4m@=-A2GDxxr))kYk z*%K;uI@P)D7;E=C)(#=!l$Wb+qiOa$J@GTB(lH`F*7$ux$bV#!l%&&VaGq_i2Trmc z(OC={N(#7lg7x2zvcS-3n1)FKAKbi{cxPv{euiiNI4Re@kj-Zb3G&5RZ|~9}-7Gp5 zBOZPrS9=sqdwnB)6K%NY6010hr6w##P?;fo;AX{)*gls@Ar~MnpEF0v>#6&L@DXS^ zvdbSTzOYdPKVz?8QYVlyYEUd)4a*f*8Em7-$W8Kler@|b+6pOJ0%rcV-%{UJgMxJ6J_9b_crW%Z9x(3Hs;KX?R zNrz4`>$cHdq?Y5c{-JDtTlt!AYV&h>^Q1OXz}vW#vQ5p)fSA|mhX{CJNQ5LDQfSa) z#JyOO*Mre|+`;m=3O5ZUg#-g-jnMdb&_`tfqH&KO5;0Mn*qDF_`hLYwX%n;@3QX1R zKY2AM90s#4iKD)>MsmU9l*c!`9E_K20{a+uVOoR@m*}j1)M4`uP3S?_pW}pr*kkbIiw0E6>v~RkL=N^r8ySgWD-V~PKB*{klEq$@8 zf3BA9t|}>M&$CYADIOUKTIP0Zr((;MUN#qXZmKiBo+a4)F;t_Iv!9N$pvXPnfh!41MAVzHqPDeROaLMG%c+fp&l& zK9RJ5TZY*V4vfV7Tx>2p)Y1M->}C5nj2d?a5$X-p2KLt@F(*Eb+3>p&xwqJ_C84jBMI zXxGExa7d`Ah#}$8d$tX&B3vn>7p%fl zM@d0GZ^FZMKPWbn)Q-zQYyKMjCd^uaGyA%B_9C{ia#PqVOl`#d{gwM$!VHm=oEMNh z?|%}{iJ~>7`{^vRjZ7}XvyGT@n%-fDX~Ax(@@ua&8B&v%hRDcBe8<1a1EJy+2}BIi z>GZriBgk~wRMFr92y+yAQIZmkW)yloie-|PL~>bCB1ICg2m)K8K%q0NVc^;s#pdKt z7FQa}RUcSJwMzp-7$fdLu$8&!3zqU_7=ToI%-qRV0enf(N}07I-4DF88>i2$%}%GM zYBI$cKidfz7M{DJa4&pEa zqdu6fl4_)u9v>os=nMkx0Myl_!&Aj6NdV#$Y6Zy^ro7wqC5gaUa8WwVgLRhj>7zb$ z_RH89nD@mTRMciaL5AGjYDs0HAf241w1+Jmwfv_-;)eW}+ZW}DH&2}mf6`<9Lm7Ps z#T{4{9EXQrOOX)86IY5d-@NXTmwGq(xaeWrjw-o;=%?;jL$}Rv(YM{zR7$_ayXsKU z2R_10KTdu0Ya097HtScWp#G!!v6b&z_33DzbRyY0{wnzI$x5@=)b%28Ugg1_uWx&pP&YC%plZ2wCRntHgZ2_`u@=Ljtqj z0_%Jl#One}0*>zgZK`tw-A{zwg&m6AJ*3^OD#ohFt3kbFKN7EZEOzjOp0lG@*GW4` znNhD5CGIl`1k=mPqU`-5R=fvXnmqXMbg-_jxbcn;nD%wX*kpM4qy!{OkOYf z+P#oVT#t|E=C#vKWwtIZsM&0)A$~J3Ic=kmHoiNmuI9(w>Gg91A%mmar;|5!m6NHpqxt8i%r?8OMsH#D0IV19)=am~YHwpq zicpUS<(sL>xs=yU zjr1EYMrB`JfT4@!)dd$FvOZ1c%#6*&@!urs_dHu2nkd#Lubr{hQCZqlL~6qM)9BEq z*s+x#pyFqU!K=Z{db98K$clzS8q$E6Lh*`xW{KNPSqrg%!*`WQnCs1kO^0F4oM*f2 z?0e&bFWSvjD;C}x2=pFq2H&L&Y2=+rH(YJ2rT4s8sp|@zj=r4cH%P^%Q726t zi@mpE)FX)=VXoK1{CpY1QON5Wo2i(FY23;@Op|_!Mt}qBYdd~8`yau{$C$f2@4D_bo;JPf$7B#O#b=eoe}%%JBL7DQdD~=v`%qsN zzr-0gmoQB6%d6fi(65)^iHZq)9TM!9P+xxyz86KK0zREJ-3f?(Sd$iAp0QR6&obG) z5tHc$s!E$Ae+ejaZFkbRXeUJW&yZ)-R-iEa_F-k#;Lm}ZhQPQi4l$WxL{C#wax!#S zNk5~hX>tWYq_`x90N4l~FKKLyJa2$D_>*sZ{P64C7IWf}xVKfjk7A&MDc)72J=)^_1w<{XG(25yk>8aQQz&%o2; zCT2?jlT9Ph%T=?`B|%nr?8LUkxS)6ReQ-tjK#)8(Ks*=)TvPe1RK?xIiVlG&AORbw zP(UA@l&I!F+{nR}2=>^u1}Vq@X@EGlDMW4wK2jCN4B1hDqup@UMwb7^pk@+mhMDD_ ziVX}!E({3;@?#|cV5$Sv zP*7Byy1XnWV?sF0l}HU3K?#I}V}n!`kdmd5rIQe`r75sAO^YBSku+Gk0Nkkl-*mqT zEDPFm)o;Fy1qEBkLtY5t>P7Ht{8@~f4(ez76s9#%m716M9UHrM< zJ(G-vr&+SbqtPy5Vu}2a=2Xfi`+J!c^mTQh?3viBGkv;XrucmnQ{zT94R}W!pk+=E z@w2$^S`=nE+>9C3MfLb&_(R!`_w;V9OF+Tk3EdCSVZ*m`rr#x;-eri_ZjO$LuZUc# z8uDS|b8B)k_wPt`LibYT9mV_7VqE!r$S84-9nDp}=`_8P29B|JV^RHAT@fzvbNzBH z?`$b1#v}qBE`#?};FUw8A9y(}bk^tHcRA-4tAL(hf<8I95Zmwf3DbvuyU{P8v(3#< zx79Y`kK|By^Jucej29fe_K)9iIHU)r?DeOpBbm*Y#?AFYbTXda`ZaWJz2kBEZHUhj z?_rC!FBkroxvS$%V~hNLnbX@k{k_W9)M!vhX}tW2ZML&+TR?Z}UGk`i@^taR&GC$F zGq)9k<$d-1ABjqqY9&5}~EL>d%%Wf6mN= z({sLaE;F1;dj5-lHa1r zO94HRFJ3H3_g0*(`sBP*6-85z$LN&$N(rR4i`g4|pU)m*h2 zP*LQOf9`kPXS+srcez|*SFOg~89A6pdSsDQlEi8N(L}&!?$GxL1Y!3Q>M~^k>ZpZ_ z#t~u&a0tIQin~$Q7oTmN$_g;2#nqS#3Tg@q3!nYV(E~BmS7)_nhlgj2a!X4~)s(|7 zKx$tcw8XUTiwztuG79dWZRl76xf^qd+G=7?l(cwwPOMBuSK4N72YUxMZf7&uwWkJf?8Xo<_d}jU+yHZU01`Ye=f}alpp(USH7G6}C{&jr$n~D(q zx*;aP_11_m_TXzO4j|u1Ju$D)`Z;r{^_+*AWh+PV^mhA}fcofeT^#t3HWO%^1MJr^ zTwqU46_pNQp(R@=SqyqZ9mVldSWLYW*E{Ah^Vt;cn)BI5EkHtkP$Si_T=Ar0)^&lm zYg|*^`zKw7Wj=sUtGYM$SE+w6B712aK_go{$=+O(B0~Z`{SUa5gOex}1-XB3q&|vS zHz$1kT{Hr$AW$GlyOOP#`%RH1_PxorbsTHgNO$& zI?xO#Qz~2O)j`&ga=M{XWMv3^5BBE&4jYX{>YYYw*dTLn@%iUhl2X)ELuK+knlkkB&njr`Oy8CkL`e z*sZGHi_boXzK{no)P)8vkq5mF^#i@l{vxl=t__mOFH0-W8C6dl z4`Q^34`M?dcSE`7ot2*j1mG~pd+s%b@NH{faSu2|u_7*ju{jCn-)Qvh40l8S#yMZQ zp-WU6@laTkn)WX+{6SDM4P)Zb%^2%98`mm0-@x7GK6f&*KHbMN@u9u>uE0?_-LpWE zZHWfT)-+@K`Fo)9ol6$fCLy2%C17anrMfV(@LbC{jTI5KB+D8RF3(dxj2Ev= zHD4~v-qN-StS{Rbad+@JUNAX|vrIuUrus|T4*#3aKY>7#wI>solYmmbaW|4~>TAeW zmskJxoU}AHE)N#M1J;yW_CE6OQpB}s93}p27pS3{G!q7rTVP+}_RDull5m%ckpSDr zRpfnsy>iHgn`ZS@X2t}UVu*&1QwCmmeIN5YfLT|=XTrdVuw$LEfq8s|6R*gh4dgp8(k5Q}1v55c%xrE0wn$_f$$yfUQ8SK=UpR zc{?5#1Scp8V=Mf4<1iiM?_-u?VV~tc+<_od3XN+X}?4Jc+|-vaUYUzb2Y@ z_^iKBGZ*Of{36QnO#by@{sn=9f0C0oHbelS#$#zl@TnxC#yGBBt~j%4=K7H}uzKt! zUn`jqxzEaKY;z>7Wu+qhR+afJYw=ceH|0op%7b$^xmc`|h3=Jn237h4y6HXD`%WYj zx>kCmeRd*U%!n;Y*vah>wAt5qRpt`>g<186uQ(O#C2=xq%IiPl zQHObkyq97Rqs@CLcJSQtlMQ}bDuxdvAO!;?kw%Xe9MFvVUdYJB%b@-(lskMc~ z>CRv+#GccpJN(bGgSv|?%(C*`&-L{ceW9(C)9{`@Yp$b=X?Z@(ai&tHOVPSg;=I{< z*jaF4RFu3B@Reiuiaib>JWEn3vW_w~%L}3O`%1nzP5(eKdv>Z(JdSq>la}e=;5a*S z=G~qfts;$T5q#>WXiE*o-p_`dOBGi12S})_Ew$e&Z`FK@s1{%rKQ&chZ1$wZlSHgt zR&8Y!lU96pCSkP}V6FX*&{H?W>SC8qGph@SjQgF&PARKW!?4apO3tUc4&4ON^L|J~L7pJ6DjK;@aywVNz>weAR1fz-&w9y#wc2AlePk%S-L8suG)aYyNEK;}1yZGRLa_Wl5LPv%;;Vuz~5n`MV zvErJN^B9nczhU?I<&4X5WLB~@^?sMM{Z|ZZ8`X%(Y~z^n$E)C_uu4NgFv0Gp{42np z0HA~i0N};LLnWBy!c~(cgzziX2*N^Du=@+lr1B-r>&&e}`>fLJC$J(>#y%j~qB%a# z?MA68z*CWb$oyfDVY^G{(q+B*0{9gjPdjc0Y>Guc>}Mw8KXHTX^9jKl{7^u@iIJQ| z(BshH<7@5j_rOs9kgK4#kV()#!n^7_S4M-AcJq5Fd#8V+ag7E4b`ecw$aQq6mNJc` z>@pfC{R1c5UO^^x7zb!hWSK12E0W)f|Bl*YtL}z0`+=uF7X0^JiN%Jiq6K)kH4Jo) zHA2&nYp=a2^mqGvLY(5~n}+GZil zF0EpR_e-l?NZ#+Z={(-k3MZ6D-4pPx>hW+~5{#^EeND4mKjS$~vT^f5c96|QP$00c z`zY&GZflI)yc!$bZ$1@L7j7JrWv{Dc$h)-pp66t~A@t%DAFE3*^dB=y+9hEaK3`>@ zBhfrAsR5Z1VM>@?*y@nJarbvXxWZ&q|$!CpW+ z-Qys&?W!}hzT$EmtTuSZw6Py%wcwG$w(GbQN`;6q#HoxxskU4mZ2_L_#2mKu(>GY( zv6R2eR#eB8PnD}2YLzprPNiSwpV*!RBhB|$do@a#4&JqCE)(PMG<@NGvVqev>-?G& zK*Zb1M7*(zHx|+$zmY!NwPGIOM1OsKsIS3W!h~)*h$hRsH@Lx+mW1vcfslXU_2R!Y zgf}t78L5$)y?~0vMT+YZ7lhR~qqjp?Hb_Qoc*F5MJt^B8^vh^DU`jPuw(u<&5v(^t#}h0n1&z=k#CGjf zaxqQK_%g0>%1(P`s#djxRm??LitZf0o0c+}L&gW18OjPk1tHX=Bhq_+Fo%i6kpOT6 zDP?^~#g)A?v=H+TQUL7*1yYhNT&q;AL==s(kw}u62FY})F9d^@5svBw#NSaQ0f1EQ zHP{vegyCq{qI(&ILR%Tx(v0S5yA_zAC9x9)MXxy@)+@Qr=#-&0)IVf{S z$+Qi7AdtN}bA*n&R~CvGQ%GcO!Ez_Ol3l7_nI$|KYwNrf_kLzCsVg*UZ=`18DvGr&OL^)C(z-6;@u+;pGHd_-|_02M-PoeMZCkM{~a3te54HOQ^7( z;XND@NA$JHh>1b1Kra@hYCUCF@Fe!MHb3)A-nca8syB0slV|dpvuy6 zLiL1C3Zt}B+_CUwWdB;yax`k$5RQYJ(U2;nk>tzs941rz)doNr0g9qh^a0Ow6K7o+XIp=I7%$|w$wu{J}B zEy}jwf)1Or5aFe&uR0f}6f;?gm(5f-s6d5iYU|!y_ zmruo|k(6DYh*H6&787gCl|495$fLmO!d+#H*jVA-=n2iuwbQ^o@xBb{tl-e!%iQ|y00!`ZC?<(&ISuZYLaAJQWkNd z!@OAd@2S+VjzItNJFSX|Ob)m~N}PU@eSva;r7Ra5dFEE=)~L3)Ql<4f3yvmJS-fH# z&GL@g^BP(QJji7x*!qf#Uy5>XkSoK08H`Ph1F#Ula*0^lupk`Qw6LZY=$DJJrjRPt zp;geeKUFfq(b61qH?7pxe$TT0D?%XS=cILk=O8;Z`+MmtcldoSE#a<_yUp~HgQ$Hp>mORdwZ2m6_yJ0a9<@ySX zH=Oau0QS`=vErd8!LL4DA!KL2Q8}O4 zplv@eftr3#GBvTcFB3Y{(qKKBuiGG#^N6Za$52hnTuiQdXo@$HYe9q`*&Pw=IH%_u9>b zkH{a`)_?S?BVj}Q$%y@?!MmaJV^*b>G!5zZa$Nm#DlcIMrqR6Md0;7^4UH(7Wb~-$NON2@QL*KZN{VD zvv|FQRQN75O|J#=^2HIS`5mqCLe@8fy!)UhT>)=D*-zHjH%Qnp?u8a&Tw2UX#X}Uc zheL{syQ9xo|DFY$75v#ecK2uEb68&8d}_sgcTjiY*c1u9HWcpZCPm zOV&)r9>ujQtK>#I#^?I$c;n_irz^{7Z)E&)$Vx=5v9vs^ps+cw@J(h}A*G^yrDvY8?F$H#s>~R9;lU;U($yVCOYgLg#q3=0{iS{(dLvNg54IJ}8#82pW zFCv8O)=o~GU}@Kyj=NhUo6W~IZ6C+CLtnv0&ne zh$g>p=6Sen+um(;*=^d~Tehr{+_cg6cZ#QnO#!qR*`|67r zW+72N?>1cLUNxO*J+b;Sw#@nEpU7EbuPv@e+;C5IZYfqE6 z;s1fY%{8phMylYI`r*P%k`|Yq+X7IW4B~(n_WnH~n8VMRHy(!A{T#`_VS%eUz(AkY z59|6e!tBa%)pW%IVFN|~vnfCFzwjtl!N=42A)9s$fLnt@}Xo`@pBO&a?JA(S_91v>7r+O+t9 zXHIf=)YMeEz_iV@EUOhZMU$m^7LSXHicJ2Czk-|W&U7Iq-0AB%aBRhjfJ)Ng@V>*T zuN?5sQZ>e6IhNqy^H;)+pY>FzU&x3)koObZD5@K?3k@8pEBqvnIA_z@!coNv%2ZGw{Dxm~S zWG>KGtlR=Z)a8({<+z6t^UCwofVdEP+?1^nt#v3N2&e}#g`g@ME7+kRVaMc)rz~+p zyazZ(qkclOvWqgoK#(n_xH>WeYf74zR{#StZPTMtQC0wxh4boRiNSp7u|9+S>5CJQ z)9e+9O2f`x5=0BDB1D22ZnQw$i(h?bp{Fa4)nOq{Z7-JDQV<*I5k z;Pmt#;A_*q;Z`&FPbSh^65WbCbiKwT&ZO>#uMPS;3Rk>o>RSa478J`@d-NwO+7U*3 zGB|-?CyLwjX&JZ(0aVJLAY$BnA)kp*{0AuljVETKqW2QeDFy@^o79GpLhx-WFtskYE;uFRyr<{H)KUE15(&`|q_=4LN@ArywCjpOZHb6@qLDix5J%!t?d{o}0BP}@gC@}OU04lAi4Hv;Oc zTxO?D9uc>iz7TQ~`zxl?+xeLlV3F9imRvo&nF!;O4CL5xeo%8zQAUeaz&>xesj0~o zTWhSU_!Dy;^oNv$Xk2Jlpsk6_)2|R>3V1_|)MnJ2@vHMM{Eoc#V!`uC>lS*RnZ?AN z8n13F9aC3s^=wD;H_hbjqv!35^HuF8yvpI?8NXlbU!>E3hHvGHczJoGhCH<01+sj0 z`-92-x?$2qMJsvQj%4xskA9yv|A~0kO>93;ed%(_{aCLyb$Id+lzEor`L?u_^QvUR zve0dD6GfGRz>_Ve_KDOf4#EF>=4anGm0kDkXV$XX*8!$n`S_*lQHP7cqwnvDwVeXH zNsl)R{gQ6HU!0h+X7OcK7wc)tU;JB`#?2Y!)X>da|V6-tiBgv8}z@g=P(Fb=%knGI=+hQ$xe&)J(p7fPcbqq{^(nAdl|2 z)F5oq?-)~fV!XR|ZOca;5DUz_XB4!lBKgE>R=+$s#KdSsOE#MnrM)nDN;3kkifXv` z4(Cf&Bff@_ek=zO>ZVBkBH3`16)8~mMLJm%oQ0GXwbOqO@5tcz7n&H(P|%Gp&9&1< zl3qK?$V}u?^69mL0FiqpmOYFv(_ug+`9B4vUJ);e%Mgj7`-Qm_2I`{IdaEr_n60+x zKtS&kDR}R`?UgRl^~MC}B;8DG>;I(XpZ*2+{Wo1%r(S{vgV4VJ?={S1Mp&|`$ttS4 z>P&O4B=SU4*tB#jWR!Bl>?kucDit|31tMJ9F^fm7L_;~EulSCJhRRo7_7Nm2D9AgI z{!g(E9algQ3yOAsVIeAr&?z+ADR!|$YFC^4Z=7(uU8td4sNs#6u!@XwK4d;; zsq*u(*YaVT(^J>W62c;GQgRp&5+xUkB3~?F#|$x$Q&lS2EkdW1PF_I<%1IX^%UMAr znCK2??5wDy^nfc4uz?bqMr2@7s)lU}5EmOJXapxH1_LN~SHSfW0yL1%*$hQpsZu%> z?ZEIE`cMU?YkhE>_A2;!90-wv0W%Vif9-&P;;8QBFe5d17_~!P0zPt>Vwx%hPF@C0 zUWV~!k$iF#2&X4G1sDw~%0i|J1yLc$rNRt=xn~`}A+ykCFhVr59C;z)R*0$Ca@lfd zB_l<8&j~51xjO~v`t45!X56_ev%WIj%d?*Pfr(VJUrr7iXM-Fe$j#ZTXeDodSL}qK zs|;*QttG3TAgdyMWSS@Rz$2w@&DRw+;}-ifeUWSav*oRkzW?OnxU0P&+{hzJobl%E z4zCwS`)*IZg=aqcq~2K&1+uUfcbXVFwCeh9R@ZNRWh<(EQ@_2jp{T0M(xh<~T;CNB zc7{C}9cpiX>V{doNhr0;2rYLo)aCp6`8oLc#^n8O9}^YT@!nLu%yq~m z7iKg1RD%;eJCC}$y1EHIZ6!WF4Q*>nc`G5YS4RX8eSbWC=Z=WD`4eWx28$m$HvieP zy+gc0&_n1c4TZ(unri;5(c@dC1%15ZtrN<#~=&3(ZQ#tYvgm-#2-NqaK?JW$Lrmh+J+`^3RN)l|LFX zGaKbI!Tcd|J>oE%IJ`x?k+Ej8on}4o_jk(Z*#J&Kb=|G20M}n|(5tnL{W< zXzKC);mNbV$2t>B+|<^~N$!~@1Xhw;N~IP0!3H81mr!7Pb}xP3o$LtWMKg!vXefvv zl3{(G6=QThkRUWVJ6wLK3skAF+^0i+{hV7RW|}&ywd#VrH1vobwa0TokJ+#cSK*Rv zQfBs~AK{E%&cXODK2OuAUY7SKX|zT>73tDE=oqJ`RNni6k+be5O~iLz-sc}9lXBcb z6MtR027OD$9-G;nC>wIGzY*>BMQfMdK@9SK`mhA$|?Tw=D>&c&ii9q2FWBc)j2;%<9GVO|HP1$8oZC6UDC3 z$6o@I-v7<}3`8R_Q`Evt+O1)*2C)9O0-PqM|2*667ifwdKEYeRn`;i0VOYqqo5@(9 zu2fE*+KJLA=6WcsR!)AfeB5~@(kx?;SfVKYARAWxZ?>2-r6{02G-WO*J#Moxkj+4J zD8d zwNEuiGhDLV9w*Bft&~faRXn!-b%}+|J$D`Fd@VjB%Xz$=ZPy8GXTeQ-abaMwKU+)! z@yza0s4psGgPLdmO8!~x%7H?t^h;f|?~w+FyYgT+mB2NnH=YT|cvi+mMcPR{{v ztc|b*HE^1!UHfe4W~;R5tOn-AbUY1mZtpHzt(oqGas1n!qM@rnPqw(5CX5WYZ4bhN z|9ZW=`dZ_D^%<Ha)aD>1wg+0@Y&tbY#p|HEr(DJG%rJpDeX_6er!v0 zh&bqXtxI~I9NsoJ!P<5w*4dslv72z@&kKg4M4fk=ekXAS7ghErx62CejBlT;x>$@l zdC1qS&b$I@CpvgHy;jq;Azn`8Sm5>ByH9J!I#njk?Y|_PrW*UVzUg!&Ay#}@Gy9Bh z;C0sVYX8J+(7w5;R0awn?{3Veefi5Va_0NA$lAQQ5$m`ABXPA$^sQvK9X4xv?|O0X z<^sbb9;;mnH;e3f`0kx=^<`DroYZMC+_0C)=T8p$_A7gIbmM%w?lKFo$y#-VoZP&JqwNSiBk>XIa#i2-%;_iXs zEn1*JaVrG3BE{W3NQxH??(PuW-904yxu5s{cGjAiWRgtQN-}d@d++l+T03X@!ZKF# zvok-0V;`(5^}GW4nDzE@sGXEI-`=0^ot%tBLRxCtW<3AyPK*+M7Bel2JHC*sA#o%leax3um|mHEH1~`*Gz( z3!UN0*@qi(4N%5Sp8A2?ZLUtv>gH~{<*q*8@e_%REY9^cyTI=~)ek8-;nA6bbwdj~ zmzXT9Ec@0>`^*z6Iq7NX=|)LX7SoD7C@3gYmGW$#$=_$n-64J`ieq%3j3)&{R;IXd zXtO8RiFlLXNw+wUKtA)|N^;8LTbt<4*a#qb)ppJAqT%t0k_nVBDu5?HUeH@&)oR?$ zt^mORHddU*slT2$TdlKNS`}{dCJZ&L6??szg^5>gUCP|${eEoQ^Cla{o@wbro1p4j zkqEma0o@N@YT2`Ij@##nZ(5Va5A=rDB*@AifZdaCXYYmGRd13OQf>!Qi}5l3LEJcJ zAR&uw;4A?(@Emw47K)In#6L0!_cmUCFoU%XMQ;tOzRX@UZhf~r7G^w=ORn`f*jr9|x0~{?iMMhi8N``jM*64K zU89V}Yp!VVkW5JJZ=ALrO%8Lm6d=CH_$lmJWf4>CgmH9{Sypf3W8q!N_-56y+0X>n zjC?uso883UulYebS%TS7hdw{)r=np4h)c(H1kUq`!DyPLfGvP|M#Yh*jfId+{qr_C z!Ji-!kTeeY_wJZan!P}U4IB9gllKd~L@H(la-W7+sGo@5bv-+t15uGmeWaOGNTSA8 zJFCSeWcSy@)!x{Oi0e(cYH~FH5+282;3Y1ZnHl$s?kCz}&F1F_Ocz z0hI7}e0cX1*p-by%SD*RKCI$kPzN3-}Kb|Rpqid#Ss{};^mO@D-Ar@+Q z+lQ9v_WO5g0aGj7E1_DWZi$fWgTQ246GQJxZNcR4Y08VxV>Zk8MX6)iJc%`1`%K8a zKP$$Y4PEzW$s}eopG?iSMZbXEmLDPQ*KuPkD|^dl$6$liL_=8*na%wiBfPWsB`b{W zoF}3O7wn|vzQWPW86MNK-Hk}2yN!yEw$IhmJ5n4T;9HbNuZG8;bll#*!rw!E=QO+4 zSJpJ$R5v&e%_84z(CxpP~Q+vBmUE~zxwV_ z-=N?)uD_aJ@w?GDr;I0sCKbgS5{cA7abz})3qxPtR~<26v#(h!V<;U*8A!GdfcK^v zJ&w`8yx`1^n|o#KZc8Y?fHjNe8=Oj)a{Q{RFvT$egQ2-diAY(1MDpbPd&kMHc~WAF z3nc~_baSU$@%DN|Q@L^Ax9rE+(gNArMedW2#~(i1vmC)g4ZD@*!Q4}sb9gHN1$pKi`7ZD$lw{+g#Np2~xJv!+f}*Nci_NqEUAXAW;GDvcN5 zIqt>y@qTAt*gw{KIAV)6H{>*(QISMKen-6fdE(-6W*$=kgN~g6mB&x9I~yw%gcyVT zE~*^R6`$0^F4sTK*xqStGCJ2^B>zpW_gKAayS2L2^YEK(d|U6hMSJ?O+2fbyVK!g1 z&>1@~+>55in$l^2ek<#_o&4(C@udfi()6z-3hDCd@!|Q}l3{ye)w>#|oR&O#4flzb z^r}FyhT9fim`~MGmQ<0Uvd{fTQD#rym46a<@agt5B$wRdbOKhVW9YX%ibtRhltzY7 zO$bof8=imj;D&f{^oTQmM79qboJ4!E9_au1`;yPmeppE%8UlR`TXhKVO+AWIRXu`2pu8B*b?lL?y&ecO=gAk3LJ_ zh+H3?1?1#-BF#~~`6%Ocw)w9|sF>J#HMOTTFUpzmkmXeQ51F~?sfl7@62iPOz9Kqh z*7GX<{(PK|PR(_RHuiP_gWq`~7m}g^Udq1;>b1NkcmFkv;6WO`vc&wh%e-@d8p>+v z_TRt2cEMKgQPd!2JTyq$#CgdOBpKY7I!~G#$`F0w{lnBA_>w^n7vVzFd_i_J?z!07 z`%=I`Nh`2LV5zEWV(!RmA1rEI#wAnnRS=mn;MDj*!Pkr+QzHq^F=#@@AnVSGX@&Oq}^q3ny;$7jq|#98}23-FvfnRa&j-UmSt^5ybnQyU)e zm)_!u+uNi9y=9jB?HeT`Er{AdhTJjUVmTDTE*@~NKeRHxAW;8atvY#DIx#KpPI+Q> zW_&!u+)jDYYcAe&(vv!i5PrTqol;`0h6;gc{odZGFL6}Xn|W*f<>T*+z`5S0rSx(a zjw~s!cl`kr)!l!o=PFbigk2RarK{A9#6Oms{B&grHFz*A$Jt#8<3~h2wae)rlRJ!W z7CaY{KZ;^b9+_Xw!y#*{EAZ#Ggflie=8f5NPE)OU5J%1TO$(`|G>0FFZB zf;~yS(D#3L*^|_Ai?g4K9F;Pi(``OktMZ4iXRnir^Qek+f(4X{w93+q0f0Kv|Gh}5 zLaM?|_fJ_8at1Jz{@=KNMWrl5dI@ByQg&j0TK{pdIk4Ei;{Wz%Yg1^KHEOee(+jGW zk6pQk@U8Y?JaMBn{$#+`_++8e(+x8z)`e?h2Y!2_3cQZY;<_^al}78ee_a(Id#Y##bJL# z@-;Bw5Y31e>MI#MrTkAXG{F&ZohOce3XA+X)bJRgj8`Xfx}n+*v@!+GUaqx)L-aq2I&U1i!!qQ+&c7X`}(zmXzWMt?11r!Sx1&7&`WOJ0S0 zD(pgACp+t!VcbD>vmPWw-Hyiofxngi^5-r&{^Opo@xUfU9)yZF!?896wRp{1A+xR} zO0!dU%_iX$Q_lBf;tw9wAkS~bE&jyas_xH!vAZ{SZ+vSA-at*3`yFf5eeLv)k2I0< z3aH8Yvgvc zUB-S!<>L)Y^Id-X5VL&Z@pDtJZDpD#cHvaWOPqO&Y$4wgNlDB5f3Z1n@!fp}X{5=* z`rV0RSMPcr+z-Ctx_VwIf+ZmUFl5^(toLYsfGg%di_L4CQr1sMh~WPMKamO>tDo{k z7dEOtwvrz*fU8X|OQ+3yH>)Y6!znKFZcobpT?b^5BKD&c4&zhg-}KDu>Pq7(`{AJf zpI*QIUJn=?`#W!UZ-d2ZkI}4{fd#)uW=ug%?SshA01fNRX9lLmtB=xM`6O4^J`Fq z$J9-PqVkzu-Tc+9EnMZq^X7=7t3aw%N|BYR+*vD8Cg<5~KIihs)$GDZuR9;D`m}BH zQB|+!>@gEMI%?ooY4ev2JbyXgR$=}wS-W_2F~MKsE8HV_`(b7rP>?sg;wb8rHRzXo z^iL;2JuLR_mlwokR$ILP!1GA$_QdNMc%VPYc;t%dHTIpx;M&+LOWr18y39aQYa7 zM@|3O?CEQ%2(Q>D)|{?nDaA{EOQp?#b%nq^llOZQV(Y}i1h4a zRdqzd!~@%{7@Kd|DFCO##Jjqcnx}ObT(S?teJ)Y?(DfVEpPhS;dFIxZ*+&${rkDW zw=xexYKr^%dVA}mD%odmOpxDmk+!P%6T)?>?Adi%l^=YwzftUX#;#pLw^Y_fP*J2+ z^8oVEO0Gs;H)Pq9>OgMHoZgv3#aZxrHEQS=hO`q*v<4CB4jqsyi$`N3NYAd0WU9;% zxV1nk6!MWx2joCH;|q~iUT;)Y>oM7VWv`6_PZG?zlI8|qRrUL5^GWpH7T0X zIsP74zP}rfa14x(U-aaJhNkq(#9gzMTy8e&XCmhji8aaZ;BBqi$}le67c|T}G??ut zh$Q#-`dPmPe@Pr~j%JeH`c_KTWZZnwh*zE^=To>X+zc15lA(M9Svw3a3Wgb}YJNN- zQsjz-J7lOfy1!z|o-5Yms7E1bF$$2mj8_m7LdniVL0cXu*rGpxa$EoGk4d&dT`=9C><#y;{ZN;q&m3-S5lAuduBt{7)vIbD zzHV*Ot+Lqgq=>Ilu-YJ zGIiX6m2|oC+dgUcQh}uw1-)qTcBc?(nETe={X?SWF{hzD*j9m!*0x0#>gUsW{a9b= z{`RbyB`)bS$0lbJ(bvv=rdMw2{Eq<^Y(ebXr4x5MEx#<)aO7aRsx%8O>{DbOK%w=9 zJe(QxL)TVetHvf^gR^pA%vf2=&K&HlBB%Fv1JYBd@%C5NwOwfATA#ci)j{#ur^3P} zXEa&o?ZW6MQ;{W+7C^!TQ@c;ALbU0vOn}WV2ZY+446oNd?N;!*%(v&ZHF=LP((gi5 zq<)8#FVDSf9^dv6iK|w^*EoTH)@P?@HXHE zP_T@bu#xfVLpqJcvlft8yxC8lgI+?s8R#T|(%|R)(sw@gg@nX(?4>$VlJJ-UTya}U zLP|tubMIXDkeaJj;xTO`fOuTKq$IITUELFd?p1)lg7DZ_yNKEtGHzI`O02C}SYD4& zWge)hsd@SEMdBgXYD#KKV`^%${pkisBq0B7^x~M!5B}Eegx0N@R+5?Y#c;NW0U@PV z4+{^oPFK||*0^H|3YjsYANfA{UpAF(D`_@WKI zHmL;z-~PV&S$5@Tnf{9g+UI%nV+Nl74UZp6&fEk28gKoE-v6M4C*ilP@?mk$2g4kg zT2`yVrjH|i&we@hH?DWSqGE)mj92ZV`DZ{Z@wb~ibN1>DKwj-uLfMaD8z9HGauZMq z#Qd}5Gw)*T(}Xr0VfGSo5!g=EUbz>$GkS*({=n8f_aH2Ndhgv5<5C!8a%f(yyAa6H zIAcoRcxo=D+tzn`D))C!wC8BqVVBe%0Cf$z`|9IpG}6Ko8iqfv+QPWg{|&greIXD6 z5jCA^-19Xp>2~?D*BYCduqVb%{JsQk@~H+`AAxN=b*-=Nxd3r_v8E0YpZUH?;N`G9 z@3wvDLx=2}O>S+3+mo;<`aY}kP3wmpi>1S$njckfV7k;dyY`(FVCg3FK7K*h3Okb~ z0s_$Ng5lDB$WivRlF>4yc3bYA#x12bb5^l0Tj zqhdbE5DdbLA|qVxN4C(Kbcd0)m_wFSZ zADm%ZDisf^O?+9gyLiCPQa|j`8G^XlP24tT8GLMQ1gLxY6auu_-9EN;`xNjW|KF_Q zzhVTfvJoa|$bKAU$>yrOqc0QD48X!8#uJyn3Dhdx>m#2}vaaRP;A%%t}0a()vd?qmw`WG=hm{KNvD;W=M?E~TRgtxE19a|G%L2h@$sIvaNowMn|EYoTDogIf3vOMjzvNjwA2w z&+=j98@Tf=Pj&fud~WTb-)eDjNcv96lPfnOaHVu9!F;x|pA7t>9cn~zv3-4eyV@DL z(l$cjfhI5Wuq4*p_Uv&wscHXEr?6jJr=w$#{vYz;Jv9+FX9y`N>6`EqAbh$=HmVHk_@mh?)y-lW zGrB!IDRp&?@h<5~WeFZ0Mlm)PNoOm0O z4YwTsa)dusSC{KSd5^|7k|q_EAyW|TlWdyMNCelL)PF6NA{K)^0q+Dtt?+WZLdcLg zg5Ier9!A0rCk)(|{Grp5Pz)YCT({sv9I+?U&R!w9)uAcXKwaD)6x=xtFH*mfbJK~Z zn*zfcn>TDd#VWqSs0o028P$jUc5H4LoVqOqxV6CxmwK-pTaM4;en#`(Pzb{-M#2nR z!n>6cw>@}`O!_6y#93M<&*jz^y^8;){qm;jj4BpA^KP5}#=P5d=fSPkV$7C64uN`-}CBcG5GaK#Zf+Ru6pkl@n>TkJ|1j z#aZoSm1L2pA=?5qpskxjzZ5w&-7eYWyk#Rk!I_mCzABZ8M715N+ve}0H>J);gQikZ zYUE(WxM{CP=hGhry`wDzMr)mAX<*oO*bw}B&HBuDw_N$Vw$}c~4^8~IO!F_AoVTY| zR1pE{D&7l&1Uce?H^*#$)(Y^Mc)0+eCK(# zbJ&{$ohi>u3kPw6uiDj#Q)N1jy>7ln%Z}p4>c$S~8B1^HSLA9|Lp60MJpk(d4xlt` zK2A{Dsz`>Lgy&&kvCe47-u8cMWNDdSrR@A*mI~^ZO&f>Pf8NTuS$he2UAK0EMXKIF zbG=j8;uVLH1E0~%^>Mc2SAT%G(0?U`?v|j?tdWw++-|-g^qYzzBq%3jB|aSNz(5>_ z)4BS#%f~=5s#eQM<@a}UHP(uGzXm}g&@pbWNU(0YUeHftC1N@-NWyI+3yy5D(C4nA zG-$zNuO}Iy02I@mfe8x)4b?m@~JeN9u^=kxIIKA!K#)EJbh1To0Jj0qD7C z?gU~sbq35^;ZB~){90$aS>%!Qpp(j5u(D{Ad% z5ELs(y5S^>AL}%Vh@(*stIo$&2Se0_0bLR+owiLwlI4-Cm6J$iojBenqK}vL@hKAV zD`;8%Unze?9wi1WNbZ%`wa>MSzh>3l;$4D$8?dFF{d@@FM83kljQs%yKMQ>P^|P_d zD%XbnK|0ms8PeO*P7Uv@EdsG5Ao*bTF>t85&+IW&>AqxaM6~Uu@)|m%v`@7teri>) zMAAw@dj+LELkRTiT|so~u5YX(m1*b;b)HAQ`PAVyh`Fp1V;m%xZids((f^nWVf`Bq zvT}C4J~OoJJA>Y}jEaiuw|KNW%(#1#)12Vp;k$>1hB5w^wU?HbDp3^Myt3Z^?yB?Y z07M?+hDRVC#__*Bv7J)?h|@_$JjlGpq=*0Y@aP0srQ!)+*NFS=u?!a!aY zQP*N1F4uydvXKCG|LKng(ehRQ%;7@NC$s@s{A$-6sk%*1* zGPHI2ct)qL;sn=Kq;%nmc`skJPY&6dO_^`yZT0E0Y)7k>^_?}dm9>_-YOzKkMx7*e zcayFt3Nx6LIh0WitQE~iPX8T+Fi7vng|QzSq3T#lWW5SEZjNl`N@!v6Va9f4-;{p@ z7D+ruZr|tZ>f0M4f2`}00g<9xQW%8Q!suN7p1nfw8XayIjM=S8cLN_uMl z>f=m~-Wj`Yv0u<|3JQ2{D`_QLA9+5q_FU{wD)Uv(_YCS8D}M)U^#OkXj@H&+(%1c^ z4|*xshfAS|7m6WBp_NqyOHP?BUcRe0g1{_C)~{(F`4Mt45X%ON+Iop;r{hy9U$>QU zF0u$nuG#5!^X<(28gd8 zOdS@>Vfw?f{^2vak!3-c-1+5@nP zU{&=FvUQgRwNYXlRg0QqGS3tuXUuc~X&Sc(E%CgLWtY{rQTn6O8Od5&z16Q|;i*wL zsPt*kc~a`vms-F7EQx$kCh@pyhTqq$#VcYEmbw>2GR~fvw0fR&S#uh9xbyX=>-(Gr zx48XI;Uq;G38yeDH`dc8&+Cml{l37Ap%DYaSo7N&W4G=R5;5PhE#v}9=>i(wf9dV* z4d1c;{VwJ|(1y9$=2G8djU0P>`G|GS2NUP!1Nb|BMA6hV48V^#v_U8(ou}Lw6BTLC zWsM5iu$dlRlYk!-uZ+bNQ&jm8Qh%2IP6HbwvZMKTNjY9?mDOplkZkai^osJRB1iVE zj%mSvr?g5}4@z7)K%kU(&>UXP(BdbC5}Rg_o8Y0P`laIR3v~zN$v*cNsS0wiUb5YA z>jC(0t61m0@iMIU8 zI>Mz?cFkTSkLbB`=F%}6a(X8sQsL)hr8tp;s6JQ>&YrNIi)OSrV&rD zOZXjUBT7YKlOWXLAF>Dj*@}1Wt?~ExuQ^vI4J($qL>wNxYD7n>x+uPGvMBS$)J8?Y zNv+`+Rn0PJ{ z?&2dCP!?am%#nfBgL`>cTDEI+3U`xgw`=%5143*B>MnDQ;20-)>_!KlE(r zHZA_A=3NpBdnrh)QWijSwi1__#e|zGzVOWC@g1QxY+CL2M3xZi#>dlR0QS+(mGSgL zsBoySEwa!R370b6iC;@9JQ;;s!=}EYU5i~iv)}mHW(DEE$QtlRKYLgP5&sBu zRu6)kys;gwXzWkvy0>OgK6>ACs(#?>*te(R^sMvLKkqv~1814hrs(eU)wNL4q}HFQ zC!P+D$FeIb02-o%4@O>+;agjMP>sPB5@EKU-Y8-z@u(YJa!0Z__V>p$C;tP$*zXsV zmj1cODlN^}FZI^pXCwKqE<2mMt>GY)NVQ0&)gXe4dsVYR#t(_gc*{z zw%7#rn4~f*FJ7Rn;|uM-q{mkGMb>Gpkhy$b-$!IZe^O%ce>|D+oRFOG|83>O>HN3b z&+pUmHCYYe6V>(h@)Ol^kM`BEXlLWX$AJQEzR=D^U4`b&XZWt5A9Hri_U6s_{$UX!}dJ+qxISBIlhRO0kO^N@?%1Yq$r z=f{iS2_yY8RkC*)H=;gskaVG_+^t*t_lbS4U-!D$BLbkL1=ioN zOdA1FCKg>*0*$+zOyg{uKyVXaA9$hRA10g#8-ur+mS|SL6sRF|)@J z^L7c6T+rLQ|Iox~`9!#kp=G>En~_DZ;XtF;H3tBsP~H%F7J9nnLs-?eiZB%3i@J4 zCl{;~6y(b5-8b{51%cws4SSBd90qr=VX#j3G{1*Aq0u#) z>gE8f7D4k~Nop!ViN7GK3{80Un{o&?u2&qhV(O9(`DA`qq8oZX4KYI>tk?I*G~nUY zL8|R{LON^w|N4Wnkcl0c_~m%#ZWb06%G46GRx*eGM_+0#c;oJqK^xZ6dFG(SHG&zm z6&Cw!Nzi}syw|_yQpsW8AWubFX+vCTYXy8jW^-m&4mpLFdB$QSDq$Q|8S=-)Nn6uv zKm)zI;%tX>n+3ezQpi!ebx+Y3oeehIr2p!?Iw0@k;md;(``cK(%;HEVY@18`1Gj%~ zUVz`@ph3@p;u2`%_e*NsNQD79W^_ekfY&{@msM>L|6ic#z`a@yW=K;j>8%yb6O@L! zDOEpYL&Bngyqk}pCAxvTvvVT|XARmNau&a6Lj0n9RfayBJ3j#4sfKmMyei55e6xS{p)b8B?7Ftp2TvF5=suy2rkxY_T5n%lrHxkS- z`y(bv>XJ2pt_dT+_~Q*$Im_HSF6yDIB<)A)N?q1h6C_ql$f*W8>8wsKO)>I;Tt1z4uD+su=bwL$gfR$34I%+EI-2N}CyE`UOQSCm=6Bh> z#oETdMiD=*P79FcQw2oa4Vi^mBUR*`6lf^Ny^`olvu6IcCPz1IQ>VY)TN}&*xnib* zQwZj3&wfTA`ZzWNzQ+Y@!w$%U6?=UiKV_YR-l`;vTwSP?Vyu$2x_?o7zuiPNP?d|CCGXXJvYqoshox9BrVRu zE}vYCV9e}Ip=IL@yO@n)n$6WGNk`YPAIrWQM#N&-eCl~~wPxq$tFA6+gaO`9W>5KW zshgwoa%7jzb_#g(Vg7j$e|zc%#)kCFy)1CCTmG6YT>enPO5gM;t9j5E4|$pgVPj%r zW2RXvVNoIr047HN_2)c2;Xc7Jp58y>13RcFE>R?jr|0Ynko8;PD>6FG<+DN~H`kh- z;dbrm{->B2EN0`Up_rBy#m>QDkaLzWVVU6+S-tJb+V=!8cHGLD9V!nX-+z#Xw^uGM=_>Uk1Aga$zXBp|Mi0G&|AeAYX#IT~|Chu98CglE3zJQk} zxIka`XCa0|mgZD!yeT>ESt8u=+CBW<6ne~q^Z04a^o0QQzzO&+2S?w@%gAVt?00zo zzjaL1Nd9Z5Z)l+@J+uE>eqUYd2}}JuS?HjM{L7SQ%tuH*$-_Ow?fosaiTktvYJ6`H z8fp-Xo7>DI0jg^YAFDGs_2TTia`B%(_Nf9F!mCCd8yfDJ49|(qHD9d|nL(Yom#F4``H?w?zC{?G8)}x$q~9Fg z_`e_v=kEjOw* zK7N&KX<=Gfh9C4Fz$kZeT+&8%U4%2otaEd4;^c#~mE z9iW=$*sXp*r?lT;o@OAzHR-3Q^6CLR=5rPEwDnBum-K+MFaGS|(C2e{($WX5vORea zF?2sUoxA6d|JEUD?eT2i3yt;SB*O{m+W5Keq4(n))?ewn_oKm(SB(xgLCeXYF6T1X1=d6BG%6M;<1X0iv+GH&;TlOps&Tnf9I$ER zED~0TAEmt}H@gt|;YfVoiHVj$^5P8YVf6eJ!O=Y~u{ApVKd#vY?^KJ+gK_8C;#Pm` z4+4!G_)wS9cy4j>@vt(T;`=}V?WuwObXF7JNOBU&t8e}xQv7iw`x-YIqSu6UpSMD) zLZXrnl>HvRTejN#$&(6=r@f(mtQJpVmkG-RIwR&6d^lW*xovW@=+%3qC%7Uafj|@2 zV+^UHqf`3viMh1D3Dwcj3eJ&nu05b(#WWiOoj0siM2w17^}o78f=~!w1~g}98gqk~ z2|6vfUva<3lXZ;Z@y9}u>WM3|owu6xa)Y0_i?isj&}T|wW14J_DE!#drxVRmGu@%B zwqq9Y1TVH2DuxLN$mlnPMrFZDZ#t0#}OsN1zy=0EFpHMfuT z)_gmj&)f2=g~5h<&SdZ$=`8sU_(SL3ZCk{b>A6}RFzyhi_c1?txBS#|Y-_p2T3+mK zO0~oqy}CrGi5LqN+~C)iO{N5b(66VcBE;zF;Sps0O!rOq2k$18OT%0oADm}!8z#ml zB%B-9)%ELIg2plZiiwrpLup5<(zztfMZp>CwcaxssW{b#T7`HV<`A0X`Mqi#+mg1q39Kq@isJrA31=7Um^WvEodriQ7Xo z@AX~34gKDFru>7)pP8fy+tt<|kMZL=uxvIfMHHAOu&?Q%>AN`xiVr-4`oIA3ap-PWQee)Vbimtp|b& z5<;;j8BF>PGrX&kZ{cX?fBe_Jrm~SuU?8(0611@$ZF?43dzPpbmOJZMv?!8aeh&|K zsWhgfc(}>%1X-|2CFr>dynFYLjOR}5V!6&}xwo)Mtp~W};u4J$xFBfg4mv4XrChOZ zm)3M7a}aDJD}AMkYu-%#?|I+s!w%LQ{<0?_rQ+Vd?6?Cf?TzNU1Nrkv!B%pzIg80)u}YV?gV z$nbbAJVv`0B0MS`9&X>A&)^asPCw=(o&(L^K!a#R<{_w1rQsbY;vEWT#nyuW0ItfY z-!TB->uwvKIjYNURcvbuLY|LpK_yr0rP!d-wDh#h`?9#l%~Is~dH_uSto2=u*_zqR z3TR+uYh`663(y%ERW;)f;ENgqSe5hevV&ZZmc^iJ9XhXzdmU~zKT=8ba}axZ8K?{W zygV%s(^yj{%!m&ANhuPP3Tp>`>vVh;Pzdm8d3e0fLkoxnryRTZ`-0|6@{L83y!h%g!LI+4v;pfHUkgfxjB-XT`v^< zz2R1EIUijD-mAVzt0aq23oW@JTeB&}&kPHPS4)Bs?(5%Ub1atL$v`VQIoMilI}7af zgY`wg;w$;%mW!K}C!4m1o`OgAC+DH(nyusutAZ@iIa_k(FfQ_w#2+(Oo~vKhAO-om zvQY6+iqJp&R-9v3`edlD2?SnOhQ;h)NfO=>XO|7w3MmK)34K_`#jBs8ZAPkmy|Hof z+*beWdmv0nsMD9$-f0K>ra0ZW@qfw$7`;jn!nRSWcZ$Ej&SR&dYBL#-wTYeV6K%~Z zQn{eN2rUB!1cp8+(HU}mcoSc7Y|+K&g4GU4z3d&cCN&lChUZUvZr7BV~pb_BYFdRamw55A2

      5;!sR>5A2zD7 z(9KaZ+shIkyYyR5;-BwUwM+ z3v}TRf%0aztq+eov-)gf?|iu71bSg(-+I=nS;&2;#Z$8mOsl;XPQOlB8XkE0-H5}6=4@a; zfdF4KCb1*h8+G*bOW{qe$N1e*c-Gfn3wtsoUg=A9&H_Ikmh|TZ!uITcIVN1t&NlDX zx&NM7T-kvpJQ4_dD0!qzPwi)ahS0bYv_L2oC-Yw~a(rX${)+@iKMBdaDbpir&;&|n zu*f#MSR)|I$;IBK!9=B@dxKYT8WLDdr|k9;gOzte ziiw{v=M7J&ya2kY99y-yq8ybAQoKvU#2WuPg!8>HPwsO?AeJk~U98CJC!-yozBK!c z_djN<{9JVH3`%TB^Xv_F50FaR9>UKi^&)}Jcq=9*evM`F$CvQ6mOH=k=vB`?@^8Qm zgoH=qolnh`3et{2X8N@(F&fI_bPX>rPb#M|k|W$U&AAn^{HU)lyl!AOtUssgm3z3v zJ?rK;DporyAixO_Ge}SQ=B-9<*ziJ4ONjEK%q}VbhwCR`78%3rw^J9hWo06sglH(2 zH-BDwdyol;YVS;hQW5A10xVDd8t2(up(~(^qi2UOq<)wuGT|=((GGgy^z);q$Nh8S zs+U{vD2ejy|L!3=ab?wK?Op|!5C6Fr?irS_*+w7E*>QZa>nmgBWU3*?KZC-|YzyJX zMPaVyOY0dkvnqeYKzShx&^zB^KpAsN?=!P4W-hKa-RsDEgw&6{LomnJ+UYmyxpb2<%qP=*UQp0EDEzcVWFuv{?BqaqPhrFBN zrJ%BiH27l$q1eY$$w15r9RU4(hnf7o{H~^e>>C9Q`Voegye>cYQ1V&2#w_-GHF;g0 zlt}hOIc;5RdVJjkgvSDrTmSYV%En?=M%6-@neB2xJpqrTD0)yGuZb5jL#b)$rDdRJ z@MB>oZCXU8*6FigYYZ003>K;Ml`|c|Xlgnb`UD>1{tOu#2#_WgN}o~DnWzNW)q;9a zpGde-dTxbCb4VkY+<7`WnVy#A!Q7w4#;+|pS@<5Zx#)!M3%)%{05cp-sYHFZ*xo6< zH1m(B0O<7UIc>7D2UMe=Y69+E1mZ1OU!h8cV1G%pL``DVsRYivG*l1Q*~`^%1DlHO zPI0jMyb~ylu(ba2Cp{wZG4!wQTi;BOOmqBV&&cmq6>XQozwgoogd(bFHvTkQOpDg* zni8*3wL@$!x_$w+{6sOgar{`l25g${`=Q^B8;VkK|)*Xxx+^M&0AjX+Q?cx0jalr^SZRPMcQKn!&=3=`5yYf9( z#hp8@465W3zO%`7#)OQnSZ2Glpt(A0D8FXQ+D9(5#RIkBjN|3wOJNAxvh^~XD>V)0 z3@$ng?Dh?%X%>t~JHz-);ZA7ZVcSLLXFb^`u{b+yf5-F@TBr~4J7s7&&)$MX4eoPA z)mk#e6;-QZZ{cQWQp2@)Lk`a@Ul2D6raMu=aj!oTlrTcT{8jcP$9kTP@AlMVsMb3+ zkHB~Bh<_>xS79=XGJcCY_{BlyWyQlN1$+hFjHEk7GJs6SbtC=W8ra|Fri-I8$&Eka= zHuk@VL(%WI+55$19(XP2b$>j(R*QIk2z@BV`WE=+Kg$~o!p{`?UoN%^f*9biUHqG) znyO_aE-NFs(qO3Gj(Ms<&~yIK?QzfPUj6yabHkIT1cANp_(-*xo~iO#5tKrjzUw^_ zOr#$jUjFtiB@p8(s6dFX_WuPWiQ680Fqa#&@X6R%s>LIYtA|&3!q}L^y*VcwH+n`p ze&GH=Rgs7|%Z%v>R_5h3%NGM@n!uZ(-wMZZ@)Ek<}w zr!a}I4pt{JO+9^|qCkAX?|is$oMLGLGCe&2QL16t!*VeSCV2@+y

      @gENZ!H`}WlMNO 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%0AJh}s*BD6eJmz$w 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

      <^8dR_mxE ze6v~X6x+$6t95Lg({^%|_(1p--o%OJ+i+g-W}MbuZ|wKA;yRh1gzko` z(F+9n0wTR}aWVHG&irD!NsgHRvH?Jf6~4^BESKYOhjY~L|2AEm%w7FgI_YzZDdvU~ zF9(-6MdOOuj=~wp0f<0Ni6U$axws-PSw7a>~wl2arX7lB0cS>z3~u@iFVSZ{NaAPDGs?`$9(#4ZV{pu^uT2 z%#=XQ<*R9r@85shX|5~_hq|8VmTAo}oL%I9?h2Ib9lnI}Dzo^BZGAt}!)fyO64svT z)&vDOqvKudJ0dinHPlnngd55YwLyLqGoQt&iR!bp{l#JizY^S*aI5Bxo@ETUqI+3p zyinmq$u*lkBjC-z*Vh0^$~G;QLJ+nqB-%`=I{>NC+_lVaA! za3kVZ4{Dio})%XevtS%*zue z%wRain+jXDNMt@DNzu(CoP^C_aLI*A5lh)d7LfqKp8-Ba31ghB08{r~iV}-RyvvIy zA&PFfbbqnr;m3=J*K-*J%}u=JL4{ujY=yfgwtGE9ujx~t*38vECu=Ws$%GBNP5Lu2 zVAMkxR1S>x;iBI2I%o^}d6OEMO$F-8MK`s*)4RPrRAxL@r(ce7mbvF1(ioLG4YYpy zKA?OvPXWjmbDVk0@Oa16d=RE2D+QTB&%JyADBpwqp#lPP`$Xr$vr*@6S8rClx{YtW z8Dd#rejnXF2YPpJyFcpEfVHig?nxtVuXyZbDzT^y^7XNOLd+`>pNfjJ*3%iafG_z%xSWhz{#;`-1gysSkoRMbZ0;IubuxWp-?(Gb zj+lFDF5(eSxf;|bKDG`(&K|w~^=T!I{rwG4u!~@s?iJ9|V*-x(y6bIClLQBh<1yw) z?9|`9Jn1Yijp4iN)Mov18;7rTx&Q1Siax$*?323x($#?p=%mrOd*lSWTrL-FrnZb# zrmVk~Kj8E!5)v6OS5Z9jAmppMW8qk6{BK_{W4NZU~Z(okql@Z*##U*JMv@(^MtOOi0_Z z{d6kTc2_h2ACgYWC)l-D_;4(4xz-wj7J^vVyp(Q6F7bKHvS{bGZ)z(r7-8bNR*{k{ zD%d#@QNN7GqKwcP(b49eM70tb&!?oQB&EF~tS`R&Dg8}Zm~FN@IeCbjO;o@aA&eZM zgE{0k9=d?P7C(HsCyL%LMT{091Qs(GTVfw(|3!}MgSUrwIsR==03X?Fafl>Bk_6tO z35i1pZ47OC{2_^OHbRmV+#6_7m@o#WI{V5A;9b~dlSBwQqm7~t6M-KG6soC%kD4{S z&Q~Bm9!nDPChgYpwHjY@SjMuBm(2y<5rK4S`rh-MC#>s1AbL&`bTSg!9Q0^H_gyJMkD6u zr+2A!x1^H@WjKUa1FE&_M1BAMT@ReTcXcOC&%CJ4%*<@i9334Ua&UhA8hF(ZfsGbN zv6%j|>gB_Z>Up$6u|Vf=a7g?wH6Y5{uYQKa}|udd}iEk%Q2g zEVCPJz~Z({Ey;~}TPt*rp10*~A270%RUE;?en2)S5{;(Xsio?)1$)>nB3d2=ZA7j| zQ^YahHC?O-dt{*)CrX2>GnA-^f*c)3S32vV2p{4J*i&3BC2@(Clte+YRH#Si~SfTOX(F&dVoOS8?nljCcrivym-MfnTpjK@(( zsp`8_bbD4?6nAZ;w<*q(%XY|%9~Vv?3bJ~ToPE*st+1RT^sy18zbq%DdWLveTKfKV z#CU#%asBflZ-=<==v{{I#2B#qKuQ`P8y!KiB*)7m{3Nsxbp{oK{Mw>#c3Su5T>;x6Pdu||q%3JqrxM@ZOetR^dLd5k31l_2pq zlfXoAGK;X=C_h*!tVP8UwFoBQdnEXmjnJZ8T%Jv)9NKBcQ!>$Nn$ypy&ocsYM2nGC ziE8TNk-rCy;b(9R`olR6WrW~i?tfnud1Eor zp3GrcbFecJ%ak#eWQh-Dq<~7LG!Zq6FzKSgEs-NRyhk$;;*d?2Y`J!~UJo{cp=bhmLmJMjQ;Z_}(65PB^vlx{Ua37$TkZgx}yJLMc;^&Mjc366w_F@C{fvM6>mlW zRP^7y&(=jhi{9K0)2?98mUFsDZEqUkooO3O;%Y7Yd%x9~P`eTem>CgG0-yg-f6Fnv zWeSw+2Bm=f|17I6Qwn~LC$?>}rlic*r0DumCgX{$7C@Ts-I;$vC48iq=a%Z`k=7-4 zdj#1pDP~!?RydI)!30|5f#$Q_N<>Ek{G+_m&R|RzNky$nHPwIlM}L)XwT7 zM1JoLQ>wRkGdJacB@)Od{E9u(Nv%A2hb4hxFVeu;2Y%6@)oo5QNi~eEMS87nlkqt_ev^cQLI!U zodC%V(^WC>M(~B2`>PbWYm`ZOo5xTllL-gs4Tu%=v^8p7O|gJD`Lnd}xMeRulxvcz zR>bHRLykW)lo_ITp@^m;N-;QGOcB>yjo07)n|s0E_`H(L@_$O}%- zs%IEX6lD5A6DEpq)3ggLM1TqM4*+t?nqzW#CP?w?c+Z$Z+Bh5QZ6|`oRQ&{}GRm|? zV%O^nYy6+1T8^kfXBF1fhvEU5^2qQ5=kKeSJf{svOe2(7m+$ov58}0A#=g!GyAIxl zic;<(vVRXLiy$65+DEZ{xE!$0cqIvVD+#!RW$I;OL;bBS++AzG$<3FtCKk)Y62cI0 z)!VF6xLT)MzdA~+QXt^ALk-+wOC!WGg&e{EA6J;!XV|MTMrXZmvXlHq6bHML9c734|A@tVDFRa;Yd%{22^ zI`_>Q=JykWc(t9wJ~9Z{O^#^uL5-43S1T+4N$ffTR!^bH(R-W=2kf4R=n@GEW^L9O zU`?)11kmzMN{Y7i30m4yq2=kMqLH>Yw4oLMxMb>90=MC&rT^2MnD81(*cSiovc z{NMC%JNM&M+x;CrQurT+9UTS#zY|i91o;B~t(=rFrpK09|SZ2OeIbS z00v_+7bt5kDO#D>!`==Sq{)jk&Boxlch+KUaaKOn4nB`_y@)OSe%Dp|JN=u|dedhq zn@z{lc*MAL&)&{kJrZBb0@+O~Q3~0#*`q-1BpQ=U59MgRt)D70JoFJYi3qsr8*LN) zqrWj^9`EY3y_b#A4BC*HGvIsL);1j=@k*WH5x9)FFm35zvo%aN#J!bRoE}b&mX@uz za(**Y#Z(|(-R0EaZtYw2Z#k5L8LDJ)@KN)qU!gVN%c{!|cq!-5pMY-g@1n&=aUpyP zYMD@~V^&HPZ;6*wZy{6)YSG77t)z30{_p!VT3Ug}vsQ`#HdY!ekq*1sn&o12n;-|A zebXVyPyCVVIYpMP`e^PH9TRXLi=RnVu?qET1Krsdo1HDe-b$7NIZaKs(nyh?D&ppg>Bae<9=0BfcK zQbBeL{Zred$pF-3dEl$A2it$M7Sp!e5)oX(HQVBHn)sodBIRgGYQZhExBx*8hw<@| z5xU?ZEbx-CJfk#(36iXW#|q*dMP_>rC?8pA%3jTS(p|H2(D{S~keVn%_g}A+4Mbw1gQ!0&{0{QzB8O#8` z*{lY?xOC3Jgbmv*qpI?(M$TAJbD|1sKxWtyXR>|<;#sTTzGnB%0pA>LaN4K+dDBDr zG!LjbX{a|Xn5E^y^k>|XM&s+7S`K@smZeXsCiH+@&PLZS#Ug-*Xg+!40_KZ+f>}zT zON)oE6`k4bZvf#{i=1sUPPG+Pt#5td4_9taUAWjoRuC3J8cW75`;gnZ+#H-m^Mrd8 zdWS4-$1J@ILFGbG7M}pjMm7=X75*7k(jIw6x_`uUTNG4h#MV@Uwe%~@pMwCOYA0|{ zfcpc&0pXRnC*oJrWTfL~a_ffs+(GmcqD2C0h+aNBG^dyubqqJevCRf@&MC*xL2e(B zg^S(jVy~`83510L2q_FG>!U1FQ36m3FE8dlf6Wm3qr=38)|C8FRGjg~-<{E)!Q>ow zRf@Srw)r z(i`XkKk?x9M-dlFgckw($PhCmDy18};UsUTu!FihB-RjV&k4-+Jn^$-=`$B|9n|OC zDaqQRWx8uLH2K)9`;98rPY?8*a{ z{QNRsf+-q8!$;wm-aLT$C-w>{BvPgEqBun0po20Fe&qHy1;;QY(u?ec5a~s6rRsy~ z14lx@(5k38>e?GnxBLD)Gqcja_3dG0@ck3mRb#{$pPe#(bhsn(52H@5Z`UPp z6Xu&D5cI_PO9&)=%~~wd6rgD;yL#^?ca^tFI+t{;oRNZq-^JcK$Xh5n0O4 z(rep(V>+b@zuEFqnHV;eor0CQE6e&89XV3A-eA10D@&K3vzC>=lnrR8dAYBB(f^{a ze_xbdQ@VrZv}vJxIF~E)X6${Yd0MIvjqeAYtI$}b{u)h#IPiQq^013;pw>nO6R8UyE( zytTGGhbRU0G_pp0$6B#vGvf;#T(!!$wqrt_5+MXXn?u^Lsp$vw-_NMu*?nCcq@h(% zfa%(d*tI#xZH$=)SO??%6%K;v8UV$$%%otx{aT6Dcw2v37UAj>B^LBBJ#Mo2Tz}XF zeMW! zYcgP9aXrJm!TmsaM&0i5JMudT2+TkJdoyYamUQc>yW|Zg2kYoX?#VBxlL}K@DZG)( z8Bbp`%gZ@UyUpiMoO-=9d)ld{)Sj~$G<#Y-TDyFpih|YUu${kkk^KBKv%W;2;VJL* zXpz>vo~wQG6KCI$Q7{zmi}affFGaJH^s$rlcbo%*l&>dSSwn74$`c>46W=uy-P&n( zz^=;Ow`_TFiASTIJn($W)y`!#9v|Ya9U!I&Su$r^w}J-zcyIPs_;i;NR$6;>S0CFB zdyKt>(PBUr_tghcOO7dV@4cdeoqz1CRTS(>RYr*}H}$CQMZ1maQM6dy;?Z6ZqNC#P zb1|OC^Ql808dlgfc79!Ty*`GMOWS6zPKTo*r~Izj#!zR9ntGos3Fjja)At+y`-3#C z;yHas@T!j~U78hDD3`w%$Ar%BtQpPEHZzPvH*BG%NK>pL75w@_`?L7_c;7X_7y9>7 zOLOU);vdaM9fwAWr^E`|Vh!7g_n_NzEgp4PgM~3tW1?;{I{k_A?`czyzgjnbI|~{J zEdAtwGV<)wk4~h>1<>&{)K>2*+QTZ^w+1Y?NxgA%Avz!?^U7jQ-D?zm0AwM><{a4j)@G4po3Fbg44i4(;AYf|s}fa0ZO8Ya_dcRRt8?i#-p~ks z2q*1B&tv04yoA{A0_DmXZ4#59Sqto)EnJN4&SaX}u(K`7OarT5WlD}KxMe&C8Ymq# z0R*-{?JWcMkxu5$&FBu9wK-EAZ(7H;O^;|t#HqTDg?Ogg3@fiqMwzwX0U{Swxt$zL zlmYHn47GkD^gjqDJMmYl7rt+NlndZ7-jI(LI_b~!!ab7t5)p=Chz8aOyOQ|iBC5vc zGWy6$klC5p(g=IJ=n!cwRnK5XbNK`Hb4D4B95s8Mw}oAv%dt6;QLMh2kiMA|<^#fj zkb2ZqektZs#jvboEmsNQ!)VHodV+cCz!_jN#r>YaCsjROASIt(K|Q7P!t>G2xy1vi zX0`>dekFLlFYsdB>Qh5X_k<(zqdz~DeM8im`*19z8^2Yzy-4QUg<<(j`y*AaC<1* z!>k^~boN0dRbnqX&N1a=JqOY^I9^U>(@F9b_{l%Au%_IrPL z31i1ReE#9K{Cl@!Hd9}NbBNlG9lmI!;c_pPmt$5eHk>=ujTh66$bcwRqOjzOWNmE` zeaMxV5AId~XjZUI5&0Vl?fdRLY4Uznh(g0}m@%@W;$t-oH|R#9yDkSOfapT9DlCetbA$PTW0=yAZZF)mFLU;R>lV;>zQEpUL+b5WD1Cm@U+oyRJS*hoC z`fF=Io*w$p_+b4%*alg}jw~(k=`vhMR#sQc+t{fhE?WO=zVc+Q_#`jyxV)1Oya2e* zpZ~W_kSJHaj5YbcB>~7m$$SR=ztsWAaJ}R3n7KAP9(nQ=*atJ zDS{ZN-ZbY4>dEi;@%!iHjT7Jr=h3Y_J1OaO_Q1Kr|Cg+_cI^)KX2dn&fUfqfUH7&z zZ&FLje@B|=pq9mjs=8oliBIBMmV)f>jMYkdk`j-+#JyFydzwaJ;dWgMHL;)BEsD%M z=OaenW9pxPY4f!k?URWL&(GMdPRqjNmL&>~9s922YrJfH;o66FxWu!jUYz`|0o1){yFpajJRrQ+#_pR)BO5GL)y zH(ephS@+L3#VBgdK=xjuu>kD1JG=p?$0vpF+=E+jch^F3mtesOQrw+Fi$l=hP$=#$#i4)t zyx+f^Yp>n2n>i$zjO^Y!6LXrVj0iZJ!_u+oFVmGXz=5{X%qc{ME$*@?UpjX&#)DM3S_lI1HhKa5H1Ve(ZqK%tsR~Wp3XA0<)W~ za3D;h3H}F^;u+oO{z;!RcsnTzx6OVUc_nRa|GoONH&4`Hpq#_soh}6F_Oc+mGL*Nv zJ$Pbw&0wOOI6reNza|!3F{;rZa4QV1o7k=PO}%};qm*0J+*~7G=Up>Ve%!??^?6Ks z*Y6@Sf#@}9FfnUdM4Zpx@(mRu_8#S=ZRAm<0KsCS-!~VSRG|9@>f6rJlpVAk+~WOp z$%NT{Hk7j(S~0cOX$HrMm~WIa-$m&7wO9^6d`ej*XnG2jms&%|8RF3CaKy_czMp-D<)p7ST|9(RrIgW@S#Spbo4J7VdhPd+= z%J<1H81N%8hAXX~5ps(;4`?DScHu_JX+kUcfsL+}1iE@I7CB!+_c5voNDTDk>Vs+j zXkkj) zv8V0X92KBM5x9>sH)=ww2&^lj!n8`mwPEd@`+DZ_d2hq{9hHebPULAbp|U^)@dwCC zLT5`r9UsKSfq8@wBm>z_KV7IUuC6gQhZ@= z`&uCm=;K`hnXyE}U8?x^u+&>>MATRCi1jhr*Gt=q6kA%^m>YPbH}KXzur26Qm+8il z>Tp(4ROo48>X+MevEqiyoWMBkX^>h$66WOWQQk-q=(6Xe0#vpr2TaE6)=8E0<$bd@ zI*^SDO}l!@^8R0C1g5JHjq(pW!qicmCW+;f9W$wV;6R_>Kbadj=!ofw{F&<-!}*)l zR?fGW#qwf4Wb()*>(P#ph82Ra^-AR4>&;IbeX$7s_3m>r3+3_-SZK;OoT3Nv{ZIjD z4KL(Nsv@nuJ|=lt_+GWqQkp$*3j^D!GIyQ$ln5RDLtpL#4J8{T0S6r&2Sou310CzZ z$U_jGk1_F!vAWw6mEE@{^2Or<{c1tw0)za!CO-Z4hi_fRUvIJ&{6HP!<4;>Z8!I?` z%Xn*rxlYm6qcD~wC#Cip$}dxGJ&%@8ypG3jKoja5)I_nz-?Idyb8eMEf27V}eaRV% zDxI%2y?}+pFT=BwJ)P+$cf=+ky|D{O6{}8noGPHs2gwc2Fk}noN=xu*qWzj7Ko;*} z#u^h>1u=(Nmue!5TbD9pge0tkT-(A!wq19>JyTS4Uw1Trr>%Z3>Q(2Fxm^f5Accd>5*m0tSNnXF&>PeLv<&nP(A2c&UeFGBTz{&{)>6?Y>%_E%N`EG^ zB>eU4dsW)0H=hw@^-?0|SsBaRU}3U_Afx-%$WxNXi?&|+=Oa(wSLGLUK&@}^*Y0sc z%?DqcWJF1I)h2(HR^#&+;4B$T}w%{qzCkyk4<9#aZ zHknX_Q$+gT&v^)uMqLh7!(9DXZLd=(*8ZRm)+gP^#I-t@;#b+aRFUO<`&hP1#*vD} zcONZ3mu%XSS0-8|9VS(TmkC!Vo%*8owh61B{t<)}mcU~r`qDt_xwoB==7rq(IZEz|U*yU}?$YU#>iaKY zM0fVl$Fd?E-QtG%UgHOENDe(FY2L>2-^l>UCvYMP@sLctgM~GcBKux(5&QnTo)dsH zBn0<}JBY{}K+0I58?-)?%f?t>-%l`F5dw!9LhLDRHPm|^**m%U4#@X6XhtO{-}uFX zISHnd;Vy2P=ZxCf8zIUUc|8mp{*1nYWHOS4nL;7wgN$1)ds{9W0?jHiYG8O|pULfD zpU}o};M=zqYNYMcFV>dpKe1xSW;D)abcFu=JYPXAAdOzXH0SXt#!<9ag_o-Jt|M@Q z$c2Oik+Y=@d*|Dl7s8Z|w=xNoTM2#% z6rv)CK-J}dI>YpXI1{p1eGkd(!f0LL_S7Vrf{m6fG0~6BTEiPH!jZP#Si%w-zJ*Fh z7KMQafRt*_5!w9IhgU*9Kcj5VNfanAYH_!aiDT_ob1Aj{ytD(@eX3e_GOq-ypaRM1Qtl>a zrK$ST!ZAGi)`J|NlpL~c!3d@)_nOZ)-ni}2=fbfnVo_VZQbeh~2;|7i$o^lb3F8BC z`-qiu8k~e81f~QBfv5HUr#1dpUB*XQ%KcwEmmxOvTv!FK4^a`@la7J=pZ_=MAX*sT z+--5D@Xb*y)4B?VAK_ZA)CEJ-rrv*(?LZf~8hz(x2&$V6xerx%Q(WNw9{U;n7mqDn z^Dd1+5r_bfxH37O%yM3CPqb0SI^yx~Pt({_oPIonra|QFYuY4{aP{4&0?u{+dPkSw zV&=VOv|LZ|XFIz^oEDWTr;}*e%ck!?sb%71zx^@6azCJW<7i`okBKsYTyKw_Xu#_c zV=gj->=>qW^O@1q=poNVv(58b^AnSef}*?j8csjCoXr1)9?wlMOfb;xs3v$|JbW5L zj_(osH-NK34&VGP^HYRBH(qe7uXuS z7}52R^mj^ep39Nx#LRc4o@~|jU@rqeXu0{jD_j)nm1lb=jjqzW9B$)y5nh0E5H z>r(r-<+fF@<8r(Z{pXlZydW4vy-Ty@f_{2l7{5#0|0|RL`#UsJJq(vI@%mGwZzL4) z??*xf4(Oz9-J5V-q#O|4NO8uTbPvMw&GAwAyEHHDpiIBuC;hrf?8~}gniuV5UC0Q) z!Y3Xln{PqNX`^0ckj=GS4;(xbtFV(p8*0OWn#_jZ27!(H9i%4yq9Fcod?O{oL6PDp z#p}ZaPaNFNS|ufB2+2J{7L+Dmx@5Pwr{@#c$49xq;p7Ou&?+3PmOya8mu8V@krI*W zU6SoEaC)3gn>V}=m>y>xN6KTpSl>(Bz6l;FP&Sqj?I-!fKV_bB5JDUq)xTIUJbVH8 z+Cjj^W*;qw<9a!wm(TQ-C)>muQYR%NczaR(&PI(a07#QX%~^;OlWoc=wn*(F9$CmZ z6f1TXV;fsB7+**;p%L9$%>+|)?N-59+@$HGg&kcmBnijd@1@IUSEA+8UH3J=#OvKm zxnKwrW?< zy;*;67jR4tU$omb|NK>*SFYnCa1x&LXq0CL>qmJsr@O3r2Of`-&|*2S^Hd{GnKEu>!iqH- zLG?0}BK~o-@k-n6PK=r~Z2Up2Ku_S@Wh$orbt#7+Y=*=jAo-Ut(!~b^ri3oG{fJts zS1Kwv3U`LEB_K)2>-6Lwm;i^`5GqzLNGo^RFSn^>OlS@mdC}FML_t5fVeex+1NtmY zfFn)7pRC)@==lc9${pD-q79{H!Vf9c^)LdcQdLG?rUpIDXx6DmGq?6@&a*-E<`^q# zD5LY17?j^tlt;=*sW3bH?n6p_At;x=J2NRYTvVgLCdxj~2j&$So(H=RGdt1l1%3ZugAh9o0NXwjUb zB6bc@heE1wUhcB;dN6(sHj8BZIu-o^N=;3>@efyoBo4=lypr0Wj%?bJphBU-j=KFB zC4ikq`z}*Ni-a#kj?A*OKH9e&&M3R^s$Mj@Da&u>4g&112$qicy!sLD`o1{S+>b+Y z=9Gn+j`8;Tcw@5tgf~^qoA=Rp75k7S5?KruSl#(kMP0Sefx<5mlSGN*1iX@b``5j? z?jAFA8^6Z~2PZy5RqYW<1vG&s zp)!_9D`Py5eG-+ zN2M5D^rDzAK!5x7IRA7~(^2f4?x%t}tB&wh#{^^fMlX~OSqhIPZfAcl*kwSV`O=9P z&N=6m&65lzC*hc`V5;Dg#35T!fIuta?fr-SvVvnC$XaFm%Xwtc^FOTEL|?chmkH$m zvLGR5WztCf8@G}OEaH~`*ZPMK`_Zo2kNMv$1e*9ZV&%?X)y*gw*lE~`3tgbsP9wOYqp{CAyIREoTh1Hzbb#MM71-Y-ouT2KR@J zvy{|3QGlbOT{`5q(Zyf8_sA~zh$!9|u=@~bMDqU$M3Gdx~ zuY4mn;5zQ|y=MAtbxM%ef2gSKe_`+9@VECF!udU{uiz)-7!2tB{H)r?0#@1XTbr=*P}Y zb+?4GYP~huVr*X17tj$!4~s`B(NxlI9Mdk+^73yZ$7zf~4E*nm+Kk$0)LlJw5@7~m z6YJZus+Af1ss-+Egd0L>t+NZ>nGrg?*HI7?u+%ufrD72}6f7EZWr5*(hej~U7zM&` z;p{LC+YpCD-a&H#hoolponVLPgI`Qy$-E=xxr>Do&BYbAaRo`zi}K|wW$T}Lfs=VM zp+-rKK)7O6ezUmIC%j!14rcH^D;v+MY*$!LmiH=CoPuyVD@V~ot@X^C$2Y;vS_Ol# zF`n4RT#Ub{raDaF=*BaX&y1d8k04~8=-0nO<4i@UweEA!u~TT}=hkU(Bc%#csGee} zPYRe^Mv6xLu?r*`v`r9lHToPOBUAp#--Oms2{58TX@fR^x*<2FgeL{(K~&k(B_&Z% z>r6obsIncJB|4%>9|cvnwLYc~O7D3d{z9FJKUornh*~HAh4J6ef8#bvOo#>x7$}xW zUk_2>nO|i#c=6j-2ENw-7Jqnr^KRi`Qz)?M?9Q1rB9u$9o~8?sQuBV+{v_m z0{pVg8HL9ch#F$E1j~|_H*Z`*?b@m|o?P%m(v5Z0A%5(il{KB3Wy6_EF{zF}wH%8a zb-cd}`th0IdmcWmAu|V2R9OXS=8ro(4eh9ktC^XZ&gdng8zp1%e^*|O1IbyjYgVlbHtfMc?%{Ci0UodPw&oD}5t_qjT!3nud3v_a7r9B;AgICv= zV-T@1;P*@|c%MP#8`$HWWQwrv)*3^Q%7a9%oyAm7W3x^`5 zM5NbJyS(qqV}i?jCue=uYCQYs!N&0GG1m}^^32WxKkMXcGnq28r$z}WT5(F%C=V8W zE?YT~P^z-}iMeQOJS&*a4tx>gx79swg)s-7E1!_`9%BOKw% zNwTvZf^T^o%NcQf01(tJrB(yRVaYTqbq!>^*?fP@cmF`YkK#8@)4f5@&AQ(AC+oI& z(qs-1A7?68vTk^}6{1PVj?ZIip+jGN@$OP}KDXz!1G&uKV#5ajNof|;sg_0XuPU;T z&}WT?hL$pcr6WW+4i!aTM3jX((_hpprv0P+9^Ns{w3jgEr#I)>QUx{Ci0oc__o9)jMT&;z66(E3BQIH>~$H9e_ZW=sq*emVtHG(LsQums2%NOL2WcDK&d5! z1-mGWz9dg4px<(Q4_^UhEydY_@{Y;A_Vaou@&Z5SnmUo#=GklPpdn4rGc9eeBja%I zYy64Fr3tmz3jEM#*D4cd=i8(DN4l)cZapNUV=MX%elOm+d-lCbnc3jJ_x(R4gM1gg zHVZT2;)r^6GQuaMRYjT1k>7MO=ys+WZKCI%;0JQENo{O z)+g(b;}1NXk=*95W!BPftV7O#lva=UN#f$T57Sa47S0OvMUldd`Hv`>A3AWYlYY?5 zE8$WxvSwiVQ(L{Y&!S}}W#s76HH2ENsj+I%hFiq#$d&$iR|(E+{A-I3IpKFz4UvtECg@Tu zAy-eZWD^zJa?K|(M!eM3E6Feu_vZVr1q2h_(wxzQ%Sqg4IB!lR1w)uK>BSGXK-9^& z`HP{7cS+pAq2f1%nl=F&e6@Xv?M-MF#f`0;CHT4)ji_w-9aN!L+jF(K%`r#_ljkiW zkwHAB&K6r{Pi;V{Hl8I(2g*Bd)>n%d8dQhYb&AnM<<%ocs1 z;B`u<;$s+!3$``6*%EaB0>(%QPxQoU%j7zII+NgTp*I2i>&kXSmDqJywBwoaj>nTMxY zBJiO{JbDyxNuX-eXfzm*iekY8N$w)Wk%MFr&|5HL4vS4*GC~NbEmQGHv798LQ)I?bNxPN)&Ks~*D@$fhMm>0Ww5vGV_pokkka!ijylUJrt3I+d?%fEejHLN<|)SU=0{r- zC~7~PuNG>cyV^OF)g7G>G;MqBsQGZ&M#}}PxadkKcu$L2hRD8^%}4GS;{MV(vww5= zJ7cK7U#$qaYZeI+_4;>=6VuugBPqYwDNmP`6hq|f@coYajQvlgQH|lt^cv10wBm#S z1-(Hg-j$%@9wt)yl1*uAx>wn7$@6HzZe0xJSj`4!wx6zj>!^`B4qtDUw>pCDrAG(` z1KD+IO}C4+qPMhYI%Tkku0VzHGtgoJgv%z+EDnMelVfoCoSjX{h!>%8{Q^L3NIUyU zNg`LS7~r3gP2WNB>aCTqf>EkSi7msdwZdFRB-G#0`fJC0<)II6IF3Uv`13n-avk-I z6i>q1BlL=)*@ziVChE;v&(S5E*|WUzT!#yM2>npZDjoq!Quy+Y2qqNJpxqUDCgG%66jutPX* z-aRT1!MQ`$3t_7GXvH~`-J4-1slj-|xr4WhxZR^-GQ#T*=5!r{fVXo}8dq5lT}mpq zvm4S}hjo_g-G5#qyZgnnuv3ma_YV-^8>o2;t2u_XNasbzGf@u@@DD6+5gJHD)!lNB&P1*D6i2x?7i>T){GbX+$n8O3yCw>ThxE18)TGINk&o z_UDI}d~tH4?;-|~Mf^L}EiqRmkg<<1-K)&$!2Ez!p9|fj9@S5mxMXU>90sv2T9ncH z-rw+#qs^i}D>L;QXhb{2O1I4Pq$BxxkshI-b)=7VxALL0Au3dcR`e)pTgMR2OUt3{ zO2>ibo22oP<di0~l}CIai=JRpa84?Bt@qC&y# z%`PZ1R_Qdc&W6+O*e~O{xwdavm`?&P259vy^vEtkKgWE+fS7Eo3wy(ll%JA zGw2V@&qGx7@?TWPASRe=_Uii$KYynPJ+Fa(nQRexQ_t6NAHgrk%DQs?um2BQFnjth z+igGL?J5!A)(7P_0WtCH3301;?v^B`CNecT8?+J0;YP^p;+UidmHPRQzOtMh6U@!I zY*s+oDWMecAjb#MsVS$(g!gBaZeNpf4A#0b-I9_}RdTltag&sLvAh z{;>9cC!%yDQ5_L2ImXlnqws%6XuQs;r5+-qsR2NHA1Oezz1rL454n+yL6T}X*pZPD zqSZih@^%WJZR}nX&IK6~f;bntD4r;o3&AMpqo3!3>ok;9sFeL}6!tie7&SF@mL%+F z0hB~9+yo9KE0)Rs8|@(S7sCbDSLt)Nmvxr8JOo z7?yHN|Bj1AR-hv7DaRWh&b^*h6PNzLM0;Vl(J1CE_#;a>Tb#|7&GiR?v_a30N|v`a zW30=rwfVf#FH}+Yw8vc}NPZSzVE?=5$PoUKdkIeg-&@A7h_%W{E>v|=aFt6UV?s&` z+{h7jtt&UR;oXn(kR#yFB8?Lakj9ZxBfF^1aP6M)_@?Z&dww7oB~SXn+rKGAa#z+9 zxf05bJpWb?i^;A39Zlghoz(xukC;D5LdT>331v(mMXcqTK%pQ7JSn9VsdGU!JZYj$ zNwb1`Ygi4;6TcNF=;?2}QCxC=P#vWB1~yjOCq#iuldjZVKz(Ys_UZVze*LZt%{1nZ zqruJ}XJEl&Mmr@Xi8cRk%J1DR&I+Y;$GUi z&?{-kQJ*CneO(8^_{t>+q#+=V0Qo~A$}zs?molTPLiUuC4kF(ow(g_&Km_CglC!90 zdLD>PeF7pPyEN)TJrHxsNybw0IYqqP?C{Z@!?6v zTo>Ayeq@~M-{N}l4?WrT$Y?%u6S{>fl~jPpWq0VlHOXi95QTJn$kVv4$GGrsp)2{Y zp2`YJyFl8PN;{gB9R=l-c>~ePV8w#PB(x{nw&gNhkTSA4QkN9MppJH}ph@((d@^mkh2S=^0#@N%P0j-aO&SRbl<_`g?JaP_#)Z2Q}dStWKSEQB9 z@HXHcB1vTvTRE&Ardh0&_K0w9boU9qX}%Mzxbn~pn3b2Wg0xuP%O$kP%^YzM+^;%q z-HTex9}eCAaH^{5^jM0aKth@E-REL9`l9^ma5gUlk!VRay%e=DTc2OaTq~Aekx$N# zWK{^~>gqA!kYwr^pw*jUnky+^ddM!ATmoXT59CJPqgKFnRE7Has|!`&XM0v2qd_hg!8_}`r}^XOBlhmI&aX+jxLy! zM4^ri_+5rk4DjjGIR&s(@6dQ=khn;LdD$)4=`};r-XWa>8A&+Wt`&=j*u55t=HgU< z%#G2a((2$(^CQfoQ&I6y<>iPhg36)oepq3-QiQs;35tMc^u=6~?VI+dG&bF5`4R$* zqNPK0h84=Ts}N;q@9{wK^gTG(qq_xFxPpb&lSQ_6AOQ49mkR+dux+(8`~_sy_kx-f z(r}^0F->F6yMWXLix%7c4!DY#2x3#p38ZuHBsHmruD4q_&km?KPe!x|2((cJL<6jvm)|l!zuIOVuN8YbBVo~7|)^?1ct>vilX2Tej_s> zq70_%!$Tx|2bd41)49G329t+C02cSvo))tocLU0P%B{c?AJ`VkJ#f&}9y5%QNsxade#9#iP= z+NCOr5C|qUJP_eQY_x4ywlaCBkY*LVMa~0*^Gx^sQ~@_(o`(SBPqCV0!sJxRn9pT6 z%GX!*Q~L@HZF(T*{d&}+*bYM{5`LFe-`#Kvo>^u>7QI%`CRYuK@M$E_v`s`qNM3Rj z`>MEc#+ooy-2;Ops2`Y;W!O6vX6e2+RkNr+^}Oua=c>*E)_$i_`>tBgvRc^rOn&>* zEX>zOu(g^6M~^Z0AZggbM(2BqT@k;eVf;p`g@NGXdWR^Nag9O{e1Tvo$j89e>oGvMdq_^RMzjsURCfkF#eF!H z)OYJ6U-UqT}C!e_I z;UWC@5GTaP&`%1DD= zKZI1!f$O3z{l%KV)VPIwOLSFcaM!KC7s(ngsmk|ae8bLD<`8E0*2wQ|p~JCm5D>j$ z8^g~X!=F2E<;{mv)yCWy+rEADS#?=&t6(8T8#!8(GklIA(zS`}T0M7bS0+z@uW5Pu zWy%v){J!$cQYET(+^XV1a%cZw^%DUqFW9Pa=%L?>!dWZ{okrUx9$>0S9S{&uU6K`K zGU8ni`t6jf9r%o&OV)J&un|5!GtAE^>TmLxa1&B_%8FbZtr}Soz$&$UWbILT9Z!f@ z@UX0zUAx0V>Hf^A*z=AowM#3!$I$L*%*2h`3{s^nie<39X*dv^ykAXDtvKdwd+Gkf zN7e3`>Sery={OKD%6*aGF=+ZvN%{$*3WN)thZCEG4}L@3a9{|SJ@^JyD^})pTh?s^ z<=pU;sIUu*$itOekSsxq5)NFQ%C5!getp9?%sm)iZ)#qq-T80;gsfiw>?OA6B{=&< z#Mo&5$-mu$#@D~@Yh-T~Z+@AFY;QuYZpz)2+`ig7+?a2ZRTxFKB<9X-O|yd%MWbkU za8TW$aJgF0X;pba?wc~As{^gFD`+ z+k*x(i=B-+zciPfwuSE5B?zQdCaFnkR$9h~nLWJAUS7RnT%HMOa^DBxGt(?yd5D>AVa(T;65E)pxYj-r>0U*%-=}HChyv9k)=qkp9)= zSphe91AoRXYO|KhwCrz-sBue=0(GB-$QW|-165X&&{_5cTOuP93QHP}WSNQRgI^(w zG@EwS-E6;VWGYXcHA%J>K$%Yj z@--++x($5+8BKT=CdHb}Cs6q+5!iKs1#FhlLa8{EKzhqQc^m#4L(h~OQ_N&Aju>1) zlWSf`g9a-wL@`BGqdm7RvZ*dw)Z5@Kw9%x`k)6@7kZUSuZl0EmiQuj-WzRc*!!3kqeiAX22@!7?t%=Kuhj|>yMsR< z^dMcg!dEbQSdYQ0s!<46AGvA~m@R(?MG--MBqz;HYh@ivXN;P2ghAW!ppBqI$yQ@B zf9bX{H(>Yu*ZPO-h`jQ{Z_Z_G6JmHTbbcc|FN2@7&gN9|6O<+LpF8TZ+iz<)f291y zidg;Y{=*)T_DTX8vF-HD$L~Z=xcjQ{o+wAr1EZJiC?+^|ptf4?^Hru3`!K!S++w*$ zy==hGIcF8*sAE6>W34emx~2P|TA}_1Se*G_lm5pbYvS)n*cT56O6qx>*BTU1gqA)yeIq~Ag@?-pJEL{25x0BE2Z_W zh1Y!sX6oUp6=~6FN)${s*z6yY@dHT=4*K5=M(&OYXsVYH&Lyc6FU@G`t8b=*;;VQ) zZNlV9XTL&ii?Ki*;3lPX+~_d%@v5}qQem!Sr$)^;JwR3ugoR#DfKdSQF6;18{Vont zn(<@5c;DuFog60>C?$%2?h)}t)nN32o9B()|JhCm$-{A#?m5eO??$g!9m_Q%5D63) z;mN2L_$QIL=ywz$Km-SDXV{JWGVga872Z+IXleuNuV^il1B39t^m<|oe`5{4bWj7r z!_zutkoxo*R8-4L9a?+oqLY7av?M z_ps5GyQ}Jc(XrdE>|+;_r_!5h(5>20De+(akIg)dpXm*5f5X>WGdHrM9MzFmzwu`d zMc_87jz=^;(9kND{7pK~BC`j!TWPSoH!O}#7dP?$JC`TV*5I4SP&V%9Kgb{QyIcOy zAo63J>gwv(Ac{p#W0lKq(SILSk9y*AanFi26tIGtxXrn))A^_%ncuPC8S2YYmc2ZQ zty50ieEJIw?v*Qc#u|LG2m!+vd&t>~b<`Hl9#etf9nzg0Vw3m|%u`GoZJsb%&2M+6 zdr!%-DL#n~G92<%;!u{zb>&z?5DuA7Wf|R+1+$4d1-D&IrZm_pfJcy34z}*m+ zhQ^=)<0BV5A)DgfgUO>XqX2QhWan6oxK>GvEgueV?zpR@fUOemsKtR@=9zS~fqIdQ zZQI9*bq7oZm0F8K2Pv?E(L$0cTAZZxf0P|v0{e#F7Y=*FrZCy=sX&1b>A^? zX7oElve$0J0R;THU{8!zn&~}l)bKL4S`W`XbiD-eDcHT{_RQPq2Gf6Ni_>U7HvMOn zYkQIa%rJI1tIc7g7R{_BSRz>eaU9D@_CJ9#3})+&aGx?;@?8JdVKKD42^xDz!5#M| z{!MI@Li5Y80XN!Vgit~c9T>sAL|93dbfd2IlB1O@#qJ+0)PGQa-_gb&NlLF3VcSl> zTIG;5C25e<&$$l3CY;Gm`9++^@i^r0$am7wVsAvSNU*Rd_%}*AlKF*Z%kcxz!*g*E z_K*bn&7Uq!i!MDf+9JFfy22V&GMK$&o~@UfeMQ&14v+ficpgu3^PMgU2N5%-d+Czf zWjQvkFeuSx@gc2R-%5P)O>vyGhUReh+kJy_n_ywWh@z8IBL}Z^UW%O$=M3+icPuSy zxrK8OO09Rj7RI9QJNH9YlAk0i*FJs;TP;nH&Q(mY@2r2Y42M5#cuzj=iD}trM zNtLfIF*yhN>E%6yD8Fkkzb4=k`uvTQ2gn8|b;AH~7xTQ1q4?_^A*-CDidDzi88e1k zmLXV>mucd~4p7*LSqU_S&ZK;fV|D1r=Ml7S;Py2 z7Q-kK8`yrIGR;({K?}-L6}&m0PXOnAG%q?LxSd>{xfZr_lA^LF1#2@tQ94P!QkX?^HJm`piJV{W*Psky|%Le>ZZ zFtzB7Rl*CygA&Ux<1Ss!P3eQs(9sYCmXbG)Mt=NxtR+ z@&zDvTl3*gBDu@(i4r>nPT2~-g3|4cuJ_g)pWrMrR`&^O58I4J! ztZWnPrQ%keEHt$m^v+x&)qtl51Gl8?`6^73)e4to69KYa3(AkX*J>5__yxL=M8{o& zToGrN9Zi1K26Y)sewawYYaJ^ug$W14o4B>#zcE2^PWKUrAf2|g_J*|iSoYPPheMQn>A7zZJV0zJBSx!~?^8^Q5j>WIFp8z$$V9@k$? zPYm4@zK9U2#S&gxqHmhT<){qa@^bw;!{h4sSfnhG^PICxo6fvd2EbvLJ`nB0CfDv3 z@Y@oP+oscC`4nn=oCJ?8z%0vGgfJwC$I7-1Dtm3fSF11g&|>^Wm2Ataw8?`Ycm9Mq zPC(euro3E}jp~h9LAI`XxMWYRA_B6kQCYmKTv)1(6m+b;qy#Y5y;7Eu>* zNNGTU0$Lu4N{C2{fa$k!R(b$E8X4cJ-(owu8+gOaVB7sQ6&sOy0>t-%aODWlTbVyZ zj$vkR=M(yy@6r>=cYwy<)Q2NJ0&Ya1SMqY}3MmdpSi%$ZdS%*NEp8N-2u2uKpBe=$ z5uZ;h*dnZDN1^}34wKT*h&x1$1XZc32Vou2>o2fd=**e<{$1K$708KKYX1M0vkB60 zMD|EB%cdjgY&Tw$zz7#Woz zIW(IyD;DGzSY#{IXk}BsM<=&1yz4-+FH=UD#C5xuf;$67CNdg*D{z3!(V4*Fg?;J? zd!9yq_oaru;j1^f!KD6g%NlNOG~uCGcdu(pOA<(}gSXOlh502nH+tsA0zwXT(_dCU z@kNgeSdva1DU2fo&fi|Lx^|PLR|}>C#Aa2*mq1d@F>|kH;^CiOj-GbI=4O0@$8ZAr zJDj+m@5i@g>3OV>ENSTCMwl(PHSq8XvG!-^UF0vy)dGXc+>vr;x^RmYTx@<%SKXHZ zhO<-$1Za56Ta|2Vbw0Y@*HZ#nU=RTyIAK~23j|rm99PUZ2@eXB{V?z>4fvz?(aMFT z_p51aBbKnIbVh8PlBCX`;?RRm1~t!peBN>nvt#KJYE%$-Lt}AB2xLmM0*@kGdBOl7UyJ6)HE7bYzB+*EX0KB)hK-j1=_(ajzDUf&Uok^b z0N~ThAixQ5^#Va-IeSSx5x+AHy1G%}{o>j25=DqoiDE#!Y0Ie3e+Ce%K-$7SsxrNz zwjq`_n3;edv4r%>WI>B>q!h zw8NaO8=EBt9s>yGv4D5jVpb5y?~*-002MGB9-y;Q{uf`V=f8QUGosL_r}&29mZ7F> zt+Y8t`9+yM&HWZaa?3}rw&tk)?Sx~)fqj?W$Ax2Pk6tKD%mEDB=z5(?M0ckxYU-a4fQ0qo zrqh4vwn3>;>a@M7S#jQ5q+OBol+rjP@`$-jiGE>IPXYU z(+s;*N1SJk`xBhF?K)PqBu?0RB-kjAJdsi3oSCZ7$a~a$Sjo5jdylz{8x5YDiaUA4 zS$lt5YdqqoYH4EwsRFB2)it}(vpODmg~h?aB&Y}pCo)>y@A4}JVQ;a-n~$8_Kd7BF zx|=cY2y3eo?gBOCVmdmv6d6u4mo(YbHoE3?jGau1#)d*w)@p;=DU%^{qQCi zer!AeXJLhT+?O-enEJ#5E>jz{J%d7#3`M!-5b`%|rl!9jekg7y7NZ{>OSy0;Ot%g< z`sktrA<&-j<&wj~3lJQ0qhor^pVBF*&M@S6^Lx#Sd1+Hc8%<36%1n$G{T1!!y9x2*i`^Vs6WLK&CNkLw?F(pZFcQRhhIUme{GkB+o9Lw#KKzKFn}37XMo-YaoWr^`J!e-M^8W9iQ!T; zHwIr0yjXFgjISIn_FY!$9SNjF?;<5wmmYYh*Bu>3CY^57R3#BAm^!~qZk^C$hODrZ zDZiy_j*q6`9or}-ChqVkQ3NNTX_#>S@nfv20qlC$A0rKGhTx^@9u;QqhJ`BVn|Ggl zv3FVpQaKvAxE*6D&y)1`t)`#N{cahMzeOMlx<(g$Y!gF?R>%Cx18LcX-+R&IvJvXL zHC*bAe$@kfob3KF($s#Y~~xdB%a)2KTmKv{a8X`h-@_4n)Mp?`HHd7c6VdnUgGhpffN^YD<5?h*w=b4d*YwNpE?4kK#^xrv4%Y$z^xEediymNkUlH*z}naPgRBi~t265AUos)HhEmF>K+q?MGDV zV4epY)gPrDQiz3Q^^IEEMCq+iPsx|0ZZF@ceU=mp#VSH)`uK%I&_5WRX2&$_8`a^H z)&B!#K$*Yy)pZKnA}*{7;F8jfqtvM!?&hFnBv`aHMMluzbG=|m_3WW%)jaomWtA?s zxr6&2s|uLIwu~&5MccHuky76IIh85+t`+r_50ZfW%>U!*z7cOEvsbDYiE4n!N{*Wm@DdZSM2q7ONVRRjF?NMUs3|`}DG@suW4;ye?x`m0xR{+DgX?PH#`3sFP()LpwC$r2dM% z&Nvbu$i*INwmkXEl&RUIgspri+1bKuq|{$YO&ozFpG6 zP*mKdVnyk@!>PP&XsM^N-eRWcG10q^U!1DDGdZ#IlBn5DVk#RrmTcx8+l-d8vzrWm z;fyvyvgRPW?57q~-8<|TVUmL|Ma6R(-~5ifs&(ij=FVD9A)~WyP}t=GSe|-voKXdF z=?syHHj)a1rl6_qYV8)IE(>Ua43Paj?Op!Vune#|gx+a3t#@Y?A-EvhHc9g0bZy4g zPd+w{yc-IT^#gD#&u|+d^1(SpP1!k(_FJJzuts=tBSbyamU4AAw`S9M9X!ZO?M`vK zoD))R)Ow?AdQ*2IG%c}}8o_lC^{?H%6K>V-*Fz%6QFl3+414)^x23Cyf@J06+R+NoZC&?R3Ig6M|A)8F%fI%wSP%JL?Z2|EOposfUV}R;OlG9&$CY_} zpZ)bJ|ITfLSNs-lv0z%Mu0_#=)@Hx&b=>5hyGrelg7Nzau0hwMzCyC zm}A^MafTaS?}TBCv5+z&Jm8<}zIT@Mwi6h}376fcXJEv9@LKGSwrZYoE zFU565>Pn$8>9>du%x!k5mv~Wyg`zCAk83#2%*n7;c3;(u0cD0wR7yd(yY%I>ONh^> zBSwlW8^QqV$JHoYG#VPvwUM+`Lefq_wvVcasX}WK!umVpE3zoFi(lZW|8rYqnTj8L zSl}v^*m{hVwadj*y`mG_C;gOl^mj%>866pLQc+`b+vc&M{y+6UB-JBl%KSz9;X*#` zEPbs|4eUM!p(RGh5Y?r$rMxC{SbyJLQ9$5rH@3r9!Od6l@zQ2XS+DNBfJB;BsEOJ-A6`f1~k0Z!wGK- z#cW%Jr~Z<{atr<`dvTl?&d;8YJbKp6Du&5^QC_1xI*B%25mOyZ&mQE0nu#`E>-IBN zwOkC(H+|2j{f-_**wH(&>fA`xT~}Xz612*j80|NXCQRGQ3JxRbdQ5-XNjAr80aJPN z?}cK<)~z;}MdqW_$kIt1iVe(mu&d|codInDw~iqnHzyIbjQN{IF6U`S>e+@PUnDkT z1kBC5SLEn?qCMJjF3WW19xGr}TZaVg*J-=mtIPz(w3=ZMjXZ8cSQ5jQ=fO};;f+bE z&aw{ySK~F3OCrmt7G+XwKXjFc>yu&Sx|_{xhOkK+88(h7l`kgWdXg)vELT$g8!*LE zG;IyEy_ZrlBNa$LlG#Qrm0X(bzffzMSt(L1+lE?-VY1s6=I)yBb$DRfDs3BCZxs!;8%c=g_sQ}tilMPKRM@t1ymd{Y zEL}>Wd5)ybxQ)2oUgDVc;h0#-D^5~2qFclU;42~6Zt?R5;8$dE#r>^;ZD!#Lq8M&v zP;^pSl4nRlYrJYR!kACy;Hn7V<=mznXL_d}PT_)}*fmMnw~%Ga`xKt8HhF7>#&P;% zw37KAjc2wP7=?+w&*3#V0pk9!dFxPp|JUm{tZ)iOKmjxBSblglZ*VmpMsaib&$D^Djq7B4eX-hf!z(vX7sl9ptBBD02`@|M7TJ=YLq(>4 z_62^TF5cQ9blz^|I?_qjuTq;|lMfA*0hDF5qfhWp_SBWca-v)$wz|C5=dpzUlJ#jd zpL|ioFsNF~Ti85spE-AofMmHzwM6nTUvv&5M1x~qUn~bKPBpcS+AL5_51?{8=8W3B zifeHlL7co*CL*QswKwA#<}54ZSN;!0|1U^Z9ptFFK%7R8kzgD+fiW27I3^YDBOI`O zi^$I%j(zAkqn z-4Nb!A2G&}xhh?8?TfJcON=pucYw#q8p6Bj zZw2EnP?`+7MxYzj@P$yTZY~wzQOClyMiNl01mh8kM;FUKYAf<+(dkHa`Zisp84L>Y z;d(O&r`gELK=9(dMH>;fitc2M{8n=CvM4qHD`VkaMJBcJYy(vbVH&7VZ@OK|0E%B7ki= z43O6x2P1a7H6>C-Ky5_zt*Dw}IU!7Hpg7}fKWM2j)sATKdbp`w@>bH(7OtUN3XS*6 zCGv#%cw6bOLd++Xh`Q!OLSoYwQIi#f(o9CY=f|8-4rV-LK^m|s@FtqZGDwg?i~9wX zKy#~VbA?EI_Fqlsp~z+D)>Wgc06P6dX0`@});0!B?kjimiWQ*;rm3Su-)DJEPquxd zys?-5q)>qF#8c&7^m@GuzyUSacm&-d8ze;DZpdpXGO zJlAGpGImsd2dxtU8Gi_~vBe(DIjc!)psXD4xmi5OT~tSf;u87}^P7xBj8 zEce?0&DXglEbntCL)DF$y|wQ=)*+@bQ%u&YrY`9sv%6*!TFI9(1^BkLw#?1AM|R}c zH%&8ST*EY@%ru*rY~z?=rJc5z6K}}uI5}wz5-O+|FpyVg4zbQ0l(R*bV^U`vc0Bh}BR(Crd2otHCFd`w!rjRohmtFaD4sYYx5F;Y#|-4JC_e(T z&3xRR#c=yn1#IStiUK(Hdqqo&T>Ku{p)3j(GweM!v8Ij}Vo=pAz6-CwKEg*BVO1(c)Qxo2aS&9sdu?t??I=EbfpzOy zf(jk+ow6lgv5_@vCW+||Ej$8L7os!6Q)$K}c2QfI>kK|*W8ra04kUXixSU>r*}3ky zS5!`WbZMD-HV_lvs=gDe)0cgPWqNEKk?Pp4veu7Q7i}$Yz2L9-x$Vbvo=vFM-ny$Z zy+#@74-e(K}@qmT`}>`(rO)R)Fso^~@Qc_b9Ig89&L0Mkd7*Vrp9 zR1$>&`nhuOsz~Xbtw{20sHBb|qV=z+%^D!qt)n)2%Q(^A?m6BQ&7*lgP`tjCEa~?I z4>VLNc|6f7jk1VUC^Q5nDw8iTyLuN~M{c!4Rqe@k`YU=j9=3{?aA7ckr6&bTTsJrs z2r54|L+ZbZz3VucTN~bnDcYq+8ljlyP)@NGD*S$4Tp}@th)33qRBX5zQmWo4*)xZv zcXe^C59e|znATXivFkXFoNk!kqsA@iS_a~Qwo8^WxZ91V zO4}&gkGLalHGMG4Y&O^=800p?r$qg*?Xo)yskR@sMd)o@=G7Zfv4+uy7{h2k8Xtbt zb|@ssmTjpGsB#V+s5qepqTznURvLlm&JBPZSfOI@5us>r9l~l*ze7$eB6G5aG$p zaLGA2xjDH?2RS!6xn0U`1+tEzZv#zfF1QZlgy>;Oo%1|t(9E2yC>3W1BZtx_?1yHM zPN>Ia0K>N3BPKRb4{5TXX9n)Tn08L?gm>b#8H~X8Rwm*cOwqx8OZS`fSAeN8&2Qt; zrf=nGS_b6)L05mhGk=YhL;dNO*ut&HPK`}5)VKlZ4-&@a$yLoW)Hp%y9+Wb-RTUeP zVWO-7uk5mk(**^5i%RR<>|WJlctgch3@QqXyq@18rL!})J2jYNFt;#orwF(WO=C- z66&rr8iqQQs!rY(frSPl`J^Ol`mP}sE;d?8nj_Yx3C59%!PqjQH{ze9`qRnNqO8;v z1%Uim#}y@-h2M{LY|y}`D%ys(_G+qutbVBna*2%^Xl#t{g9U2^My_5p$UC)8#z4}R z!z!{=x>ybFQXed7ktMP0nRYboMkgTxotfvLg8^jS7La#UAENL6DLBZrCZB+@Sz!kNn*-u*qN9z z9P$4dtFYuUaDSpkQG_-68G%-2?0=+xzpwY*rOo+jEC zz6_Y!F=9*YV_SG}gGA@(IAmJ%PK>7fV0ob;jVG~Yi@}wHGAnyrMz256%!^!jC(fRb zN+7Pyy!=*il^aW1wTQwQuWGa<{aH>$(Yu8d;`T~8b z?9H%_)Wg~k-AfmgBeygL?82yj8JmEq6~?sCwzh+(#(iLMNXELB`(I0_lj6XuAj7?I zhE^i7A=>WRB{#c-4yDEn%w7nCf@Lp8ad5lfn?Ly91)@B1HiSlFT}8!4IUG{%w&V8U z{hM*u@bV30@wXv>7LFT1_XUbK#<2}i z64W&N7~>`wW`Nd$q*+0Bns&(AQQ+>u8|_6sP8g-ffiahLdrZmUXk z3`^1RY>rWXd%x1G=Jc@hS7xOQ0PJ*ny{*oc(??ggq1$NRF5`Efb{gDuOa?r`iSuP`!q44M+wA>uH5Sd1*4<>_a0p(n~Wy&F<6u=A4CcQn6%1Erv0k&vXxgyeXU?} z6@AO$&#}1f8@072<+BzxW@%RGeFE@f?`+tP_)O56*38}`W5#klvCV{YWH^Ij9L6|d zh8SUn7{e@WE^;i7Hj5vSN zjmPYmsW%gm$pWj`sG2RLr1NaN;+oGQ{s{(=LD2GRlLrC@U(?1EV^1JIN}OOyg&vc<#YaEa^NFsDZ8A&hd;cDA6e< zv`u-W@pUOI0-Tbov(sEI%}tC&+Kw4I&kLSPjYK$wG{Pcu8JV3|273 z^qWzS7(6u;<2a}f&~0kzjF9Kms2Qx(p%d=6NsQD(`W^!_Qms$dmhNj1XBZmNhKk4Z zP%zFl{X^TxLf09XUCq`y)2yJ(7Fz0e1qR%&3@2$4=ycX)PD@o8dBV4NVtBfx{ptFT+n+Y zn$8a3>Fy|%N69Ft80x@18x64g5vjc>XUk0aE?u||%{43J939If*37>jz~PA-Dkx^ckHGwhGRWnI zY+i^9^>zsxDj}6B z&3DYmn5U5$#3H{D5Hm6#vp4e5n<0PRV%f=#Dnx6Q z(?a76U$DcD2x1IoAjA*h1|>Xgl00#$LgGJ#X&R|eUx+p&YzW-OG*qZGBn=i0=0x?L z-h)ZL-CiWR|Ghn_c#<&AVhgJiS^4VY@=Ya4s{Fsn%eSkd|GwTn>aNw~ceFZQ7po($ z?pFU^w-crJ zy}aLH&|o_N7nyCvELxLBJmgx_s!!A*6!v0a%^LzYc?nAKVxBgF) zjO}R8DpBI^RU)^YAUucCkJNH>m;6T9;Wf=n>ZJib7H6Bt_2ld|?>YG?ahhew57@e5 z2yM02wx7{v8)azqrn}AqWXoeSGYP&XW@`dw``f{{Ae8`MoLhf7^E(a^CbrZ>hzLK zlUBr5eDand&z)L2{fy_yQC*;;EcIB5+!Sb(i7bTF zf;@;&zlmC@DlrM_R}d-{t6mUed^HPxAf98s3KUI6d3jtY#dc!6P_u?CitP6z(G=wH zWDC0Xnz3Fy6Tu=(d2Brr7``QY zFOEN)dj9=MFGi_`NQ|^h^YoqC?Pj4Xyh4zD4BZT0t0jQ&1HfVQWI_`U?8xUFIart| z`}XncMuA3S80=o^RMRL2;&se$i4_ze)?*8n~YWz)?_ruB6&MDL_yowZ1AS;eg3=aj(2d`5v3ZvY`6dS*bR?@k8|LUgbxNB?gAE2hOt6 zgR3ZHnWa$H2}4x{4NUly%`y!NRU@7%Auu#c>Nrg-mo8=lRxhL`baXv7MS>$&!jaC&YM}7rJAY@g&F~w z^k@yr7MP6YY~}Rnne$%@rmg>0ZCizD8p_~5611>GR;u#DPYYtGI56Me=x89q3pjJI zTcdB36~N(JAoMAwInVew- zgc!gJ2wPmLMN-YsOt55#kugtB(y;IF&H_!ih=&Y{4rn0ar$nKY#OD&61WpxUgf%xr zsVWH+kZoevO#rN_%xT_Wg1AHu6`&SWnD#;sq(;g!mO*Krbq3U{46u!xZaaBn$M7RMv&8YZ^$7Oo z6`u+8Yurxyk8g~s@>kjd}xNCH7vz9iHmenRz?x_AKC${xF=-o}k;B94VaatbZ zd%y1}G?^LvFdg5q+;OOVYJmK#e=OQa=drg*(!=Nz=jcskEKZm&IB-RRUtRhLn#*T* z-gw%%gb(H^>uY13WA`hDhga~S(#8|4a=%p{|{f3h_E8J5Ap9c{C+CO0p#6FizNi#`oP*xtM*iUj72R$ zE??gAibcju=dRJ!=Zh_1;tr3aMsb?HeHYr)sTUHqMz5tmInrY0TYd)0Hyj+H)1mU2 zR6KcAaV4!_A}L_#l&gyUW)3(T{Kdn5*htUz&9ZdT?qQgDLd)r@O>V`!jQ=w> zI|K@Y4UM}h(zV2-!dkC#6Ua^fp>nP*xRSc&^zXF44j8l6j=wT@9K@wR7G>(WNLB*H zcY?nxO01Bifl7;6J%+F4Abv=Tro%JV1r!&`fnFeVJ?z%r8&2~JC4yjW0?>;g1?Oi| zDuOaf?XymETWV^!)lV5t_M?e9SE+sI;g6Y=G?Q~NgeiYP8W|=Q8snWFhK}ai4ZWxB zv=s~WXIj?g78BlD+(mcPA#P~QPXStL{ZLOaKO1vYCLQ}Mwf;@jP_s^4O}rRdL(Xe! zxs5$ZK}-eg@;80vY7kdF*jpmo4~4JZrhe|iY7r$7#kEpDN50y^<-(KJ*Mz+imiw`|}e~iaa7sewG{Y)%4 zAJ=fzwM%XkJidMVDN}{=|*wHe7#mBV4IK z*8Y?X&kJl-j#e)W+jOj)gO9u+!#8g*iaX?wDntDleaP%dFi$Ut*bHhH-5BHXvNCwZ z!9?GO;5fC4JZ^>Mk!CAK)#}zJKVijeSq3M=QF3KQiH4LeN0BvHHB%DG25czUMpP4K zMH?8+3J(kp92ritkxOF{P#TuRK*fn?GAP@isTRXV{w#|cSFT?Hsl-T`&x8}AhbU`Y zyu{rQK*zDxG9eeD4m>sCjb<5LLn{om2nJb8g+#1wd$#}bVNJ!TWpG0S@oC#~DwdP~n~A@fknS$44N=>*Xh@nc6SmkuL2sHk*rWX6ktDzDJhi*cW}Q!yXiqm~Z9GFvAQqvzwtE&zqZP zW4wQnv0GOjO~J>D;019xa-pFz3{{FnYI9?lKIrRO&THWPrGbkCX9Kp(M&P)wD8sVAH7yDpYBSR4s64 zl)M70R);U})o^YP7xqTlei-98SCq-fNgZ&SY;m?-bPKN@b=y*HU7>9umEEtJ{RT07g1gB< zuheE)Lw;lxB-1!B+zixtx_lMt7B}MOKg7yEeGDO-S~pcFDokS6lRPl@zIu7NqNPLs zT9h5vs2`(VWm~j}6Hhpp(V4tKokz~>{aXBvljwQYxz7q0ir_wc_c1S2HGde7U|Ytq z6(2)bcTlp9r4^Rz;HW zoO9cLrpc^4aU$7~^O-_2g58gxrVarXOEGa!Oy@}9MY}2OvAH*;YiN6V{YGR8@dnV& zgI^-P>ekbA(XBm&Vg_x4*U`z3=Sy4&8LT3M4;3ZGVqx3AshaD*iXH4!a7HVNkXwQZ%F2k-TE#l?Y(Z-lOOOUwuhfEt)m))GR3KOJG+m6(e9B zuOk}}wj)o`+-uPkY-)1SH4cV3Iq3&bTJG^sOJ*-*zj#)5RV15;f-OP|^CHw%s#sng zE6;*K7mc9TXORO7y{(kZ6KE_Bq#Q63KbFW#X98p9(uGkB{hF4}LsSoEG;XXrSrM?Q z8%XpBsXaN7VPto`R$Iufok+BGD0MBg`|QelnAuXYcd@svz<2=en%p`riaTzIv^rRM zhdT^ZIg|%WR-Nv)1F@6W)_E3-pTCU5e><--$6dbx8ZX=5&Gy=jE}~}3wvDF#eq7J~ z^*^8ML7x0J+6?d0qx!wxZR}N!n#J_=6M5KLeE!mBLn|=kk^M!>+*N#E9A?ZH!qj-AC)u!Pn`rWpl zH_WPsOh+0RuiNxzJXF)iN%*=28&rfJyH)2uUWYarY>}&a<(WTIwqMRumxCf@x{3Pb z{u@;-^!s)6=WQQcId$gnlbGiki+3B`iZ-d`wTP-!$X6OvR*xY?;Zaa>oYlQEr2e=S z1~<;?`4*(kt+LL~7}2hKq2%XJR&q>dIV)Mh>qiV%yAIg8_SlH6Br~IPvv)W! z6bwEqJ-CjJy*}vG>(DA{Bcy|1)T2y#R99xbB*U#y5s!5%+q7DD76OH=zNu@{2-qQZ z=(KZr^kOc@Vx%>$7mD#(rBE@M2awVgI}${ZI3Y@Vk7ixnuV-5MHDwJ|Mx1L^sG!yq zET-?Q?+H3-+5-LAm~goy(;OG$(sV5Ju7&=(PEi&X8h6Aam4iu_g@N#-K@7w6YN%$E zw6G=zB>ccd;}&PQUu$<6S0)P^DW;a5!H?n{Ga@L5c&o&(XUL&&vPZ_}3^qS@*#!1a zW3_tfpNLD* zcA}v_5j%Jb`*sVulNDNYK(TK#<*wkncb zO6A|U^NUi1R5rMFugHrAE?W{VI9P|V3N|7tOGpip`=q6vsUx1h~s6l@%oNZ51xv ztA$|F5YEljhTGVR zCINQcjK41s=mVjQo$|};;{Io8CCGB$4Aj*a9!1mXil{22EVzE-wNh}?*!_|JD#3N?lKv&5^s-{ zj2smm;qW`avmI0!TYRPUMvF_Yywj1rmr zn#7mV$jf1?^rT=Eb*emjyy)&Ir(H3vU^_?{UsNj>$r!P9A(b3mpCK(u=sN z)1nd4Fz`~HP{99w|KX8Vv_f5T&Y+Rn^c78`AglbLD2177`L0e|N;7Wx|2CQl?+4T$ zV-Fd7wXT=LG*p`wmE38uP-7aj9=z)T^zdElts-NN121FHzJFLM#RNx+pvdyuV2$%h zXdK7B%gSSdf{u09aE*~t1iEK!gDSrLT+a1G=NHC4Ix*VZ=cIfs=va?jAn!RDREmW_ z>JDRrs5zukKWHj7f$KT4pMNxDC!19_qGoyLB;@v?)QvoJLN;L3ej_?d3~(sUqWnFL z8NufR?YVVXX6QaZKJ&66TQ4IoowJqYp9W~5mH*}3p(mCoQC{Lp<2B76uoo~L~K=AO_8kxxp}MX5ro&s zf@2`3dJ98eBVa{Kf#G#adlW*uN-ajh*lkH#k#I@!rtm~0R0hXeBe}%;;TsSaWBlx7 zs#vy+@D?*~l$A+IJgA}U>M;>fq-v!_hs#TmU+*MC4WSU4GD2x({p%wC;8^n}p-zml zwgkwgu2p$8CGnioR-z@+M4gs$@vw>PozwBys2rkeNn6mmG8TZv#^y#kt2K$zV)wmA zGydLY8~`-(>-=?)mJ#0DJBdp#EG??4@9$|bZ=}&}0=ZIxLM{|9J+*)WKQr@~Nz1DK zm1K8HLd4rbhnaeo>O;oR5#RT?IryD461B2f%Wc$`3#iKPqS-FrP780atxdAN?SZXI zw)c8me9>l5s^I`2Eg{u`I>%L2#ejfKUW67dqJ4?xW@gfjx%3*Fue3LE)+Kwq|E$5= zxie?*O}uSeGf|_`a%>B;ShhSNh8SU`osSq{hB2pBcgXOAwit7WE@S^b_njbMWX{;U zdFi^TZ+ZIKWXaCu`m63G>FH0~y7jXY+zBG%IHIxp21cNPjM=MBW=xde&@bbS_*c0y z3d1Th{Dc}YexHOH^1EDYK=X_4FV`848lFs{X9~)0Gjx4;eyep-zQ#}uOO5%vusKdK zyc&(S_E;J6xA?9;Tgrqo3rQ6N!mQQ(ie)fog`2>^Shr;o{eLCuYFP=DBGsR&E;Y3S zTlM1bq%vl=UPVH+X1a>Cr4g;BF=PW+X8o*|mz`omMNDH^2s8nqMQIf&4Qn%kpp9h> znxUvq?}?D8Irs zb$@F(%_1vK4)id|+PcTm*EaRGYyv7{K{i{|8H;%7cDNXgo6%4;>b1?}Z5Qb>L6xg$ zO-Nz=9+M^BDH}{9I@Zd^difI8*=e4L!(pQ}4^yI5RI?}}D5gkH6pqeA)_EoPM&$?6 zEqC(o%T|wiURJ5gVJeYK^*$qjZDPQBf^wamkjQJk=>CU1dbr0Rx2kn7#OAYnph9a zKSKEhLbw@p94w0bG|fy<$tAG$jecV)SS`8>EZ7klm}yiga1gd6HdF<_0b$Y3A$0Ef*A%9?nYu)`0R}&Y#nUvVANanmc zKZCdVr9uEbDsEAhTub-e2evFmRqgykj#m!~9nH5!QZl1U{WsrGV9vSs`ECRwOXsSx z_m^2q>b~>P)WLP;o~AB&mNFMNKmu2JYOB3f@KJPG5m?=vZsc5@haYKkC-%I1{}ULYxZV4rjH`TJP39=yWSQ={tkKFZ)g78Bq#!UEx@!bmc>p= zQdVUWasFq4&evAdc!x_gT1u${z#t(`Du-)Ss=i@uin5gmFzXC?tURc+jQ*bH-P=KT zrp<)qYHxoNcbUHWLT5G}zRb+qX8RhJ@~peWW-vp{^O>3k3Fa8ej4;CukaJet!xHqT zSj#fu$;`d;;ntY}p7%Ilz8hH|k0CLiLp~+dv9?rg+=hZgDvrK&$ILcT?DOX76(3b> zmlEgE1}~WL>-CMwRB6Wq;Qs%)Cm+%%#$Tu2bGxzW7^2g`D;yx~-ybL{Jh zz=(RHbu^%X`uQtAMKqPw*>TWzC(!6+Mv}xV7q5+x-y(*0r_l;?wM7V}ZTvV@G^3Xh z%E|50-nrsY*vR#|np?d@(ibA42Aieg2OR_Y z{I)G-p+EQ2P5CRO5sbK<6k9@!xKv653an@Im+BFPxC+PEve>xU-4<25M0E=msG~kM z=OHZ-aAV`ASXNkX(Szhte$v9dM$sD@7@)9yVSH0%cJD=1PmepY8uHl7eMwaztnHzK zSlOA$ENQk!_=Igq$>$^$CbO`$-K9Xtw1W&Q64vIXaAr$RgWfy|ZHhxgGdruAh|PX4 zw~b=oTw@l4!MnJCu`F-#U~q9xG$_ijOJc63wg~cfc^*$*%kHG9=X{z5g5C91pw%ij zo(2}wwtEuz_?Dn+c6YZnREf20@|&y>EdK8s2leA^&)lohO+t2Tz{6Z#yw{+ybPz25 z_j{2Ec{0w(-PE(~UGB?LkzGARg_?J^RF7?i102vUfKZosUZYEf!}%hiJo^JvRb|EW_v!{Ulo z?P@_>EZB&ny_rf(F4h5g1bhM$TL?-qG>!&~(DPn<*L8v*_7Jooy{RY+2iFjpv>caTAz#OlGB zX|KYUrc|dK?AUDN_R^`seAXM2}x+?WAw8##`xN z(!fd=E*wgXdmm{Y-ksxzvBankgojwa6}~u8qAvU=kG~+EK&NpE`dFgW+H;F{anGg} zvqv3a?XiChDM?=*9*1h;sU4#&`<9%_sgaK=S2r#qW8#j@ss5G#FQb*x+7MvCo$#cfeo?w%0Br(&TM*{xmh`PhgDgcx{20ftkk zO)xDE%~i^b|FEOP9(c*8LepAntS%qk0<-4ZPgWt#!1LW6tiLn4^N()#Vq9M4e> zFV0S1gBVDhy|7i^K(M*T5i|+DV|y@zA=_e~Hg`;`q_s>sos>;KLwbgfhuXv2S}GX6 zw;1T!h2&>z`BP!}-(gpM=zC15V)P!!GPbL3J`NJdrudO7!S}6|ze|jyZ$*rny3HLo zwBpqxN8rOszeo3Ft%}P5LB}HrrG~4pwZQoH)>RiGleumDqLr=)WtyLk^A$j-3gr~s z{8wRDC|sqqdtqMLRjt(C_(7Kf{jPp|RT=u*^QF;a|nATBVlS?zA)ct$n|XZ=#A;WvbgIM-cuU2@F2LR5<%2wk$Q1 z418?e>D_}QZno7=mEp~Y=H9at`ptxahP~C@@Aj6uc5#dO8Tbbv!%DvVqf5;Tb4c4+ zsY%an)Q8W)?X9DBpdWs99$YLfsXs{%ka-yHa4@EbNtOr{i-=X=Q zElEV&EP2E!*iwy3tDZ!P`(R;S+E;4Tms>!qkxh^`Qmw^UXG~dQx7r10YejAGv7P%c ztvlkBiB21cAn;t8ZW%amTdn(cu3~5P%GBga=_s4FP{CG`=4_Q%#T5$6U20q3EBqZM}MP|4>p|E8v~7iQUd?$|=Gmpre=5jhz*E63gG0+Ro z9*nZnEEx{26H-Y|&Gi4J$o()CYt|J?x6+*ngg-)L`jt^`Is&bDCX}jIv!}O}1iX2%IZBn=o#NoCV}y43(6R8B z3sz(7gUqim=2X;v#j*iW`u^&rb7?Fqo5Wn*Pq=gI=QLDx(#oXjJo2MXt#uwXq{H)T zh^87ZyXan0*F0s(9#fUuK)yb?=U%R-T&)E4t7#O6ZeMYZwm)M;y2<`@F%Wwg9Wj@N zu{7no{-t>H9866=PuZ*`9C=o!CgOS=+pHa7Qg({IbP3o4+`T=AZcouT-IF0p|41R2 zx^g8KMr_i5`ScH^8RoO*kB0!%FZ(URPT5i?BhSI|&{G&D@YAObg3STmnzSFKkl0V~ z$vlyWE=B8ugRoNz(IS+r=OFkr%9_$9Jn@HdhTU`W7q__oi9VNj484MNHIfd)E7R5h z!MmZjCt?+puK-m*s=uFOEh3@u=lhiwkvR9hxUk9*5uMX3bMS}0b#-ayE&_q`;n$F% zA(bT_e~wL1RFaYXZRE`PkF{%<$Wlb}pn)=eU7qFs?Fb(NZg8|v{Ppe;y`v-ySrp55 z4hwORF)P-_xb#}2X$i(4ga{?Uug=N}Ey+?OsoglUzVDpQ&)j z%M~seYR`DRe7y zja+sHu;@6ib!*)*p;RU=#XV&)aL|sle$u32 zrDM;iV-|f5o#-9Si_BVA9eCX=he=0{R+R?-<%vksgVtTWf7^pqh9Pt$)EbPq?n--` zeQ7ukVY;QO4(UmdP0}bjxwLp**F-IF+$RF*X``zsKh@JOHYKv@og-M)YS-8Zpdvqh zQXchC(X3#7&6j1F+AlR+5N1Ef*LD^5o?el}o?ZJMN#%dVRWfk0y*Ec=fq5(3WWJgT zO~>d%^L%G;F7#t9DszV=SkGuvMqM8j4qk}wf5un@Fsu0wZc+UQuCyt^RAP?CjHuei zClxANwH@sAlOWCG4M~UP)`Nv^#4Cg8@QZ1&Nbi9CcTRT#Vr~v}V+VfL_77 zI};Z}b8+JhDOMOSd$%OwXO!d}j?v5L&W`>@6C}H=8l@fTrWa&o^ouHXr2KPlH6^w9 zVahBtF6?Qe*jPn?C3JoUq{*5a5;bh@VbU^?_0<{;B40rN;oTl{9S!+h*ECKO0(j!` zNb~(@jMDW{`z*R~0hFNGjl3nEJn;8H$CQ_{wMsBWRYTmxh;(X`aI%;W9=KI6b;|2} zMVWmnx}HT&7iPK0=@n{CN6h z*d1{bbgJIH-+^ovtd%0MBHU3FL7J*55pG{pF+FYPMjr!FlTI2by1!=RKwVeT%h@Q` zJJ2#J6>(~Y4mD27TEtjyYiM*7Y#KwTN3P4hJ+jf?GHCM8 zGp@%h4~%VT4fHEyVBNZIrC!AKUp^(^40uhfoN=TM_8NGgXcY3Fty0e&cBMEana(n! zTLrKp?h$6sC;ul@P>wN};)+lxiM#tZmQST>_SqAEy2#k}1>IaL4FWbZa`Mj*yI% z?BLWB76|x^M^3f0B_G=g8nSU3o=kS`aZq)WVV|H?@&25Ha#jvA>x!hmEPk4!y=5ji zKTCB*mm}=q@PAh_fAMPXV{PYKEMG^X5`**2W9mA+)OhoA`26OxEp@(>8@PxVIjLGBeFh3rq??v>!oVaYWB3HDz1c3RzZ|Hr4X zZ{uwFEV{i7_CDrqKT4l(fmge8TL+JCi6BQWwgsq*qz%Mt1T zj9XnL9=5Y(G@?zIY?On%%f~Wmdp^2CN~HeK*)J#AHHQ@=L#3pEsF-~*6iX^?|6A1; z6n>9|5}+CyCDSB(2HI{^3MD%k*DG-~@E_TQ^kz&_%}4OH=UXF4RMROdz&6NL3=Wxi zMAYqB*Bm#{u|@#A@|RXq9V*RQuWJal^S~^QC3A{=x?sI?p;txmnzGL!M3gkE9A?&` z7uEEi@n2uMw5CjD&(K{0z?FrJr#AI!%wJC7b7zKYPeo`8`F}j&bj-IZyB*M-zjFeZ zdM4=3-i^|ZQU5u4eC87(df!39B46)nd>%O_>SWYQrYpB3NlDOthr~>fy7Ou2o)G0; zJqu{dAi3?3%aS&5Y>#84>0Y5MWr<+E54zLGlO(;(ZACU^POOo>xpZc{;d1Xz)`X{+Ik;5xAmXlbap34{FV)w_cfp~wg z{hY*DrM!o-w_6GC8o>2($R`^<>&;rV@KubbL{hs3rw_!w z?dfg!6<;h6n>IC2z6HWQuRBbrCYr0(t2Ov5P8EF0uYgZaxQySmbr^qdf~i{5MHl;6 zHK-h(a-)`UZsis-E+lkj1D!1wN(r2L@s4FhG_MB2#($oPM52tKQ)$O@2HMn;=S-n} zhiFMmxoh+mi0%ipEML8dma_$4#C(NQix zn3krTeSnduc0l5I)%7|g@`&11lgrvUHd#x`^D}7p8v9mPRfSF#)w*e;AnHD!3aT1t zjJkMz4|5#&R3>_(?Y>-rn)(J zIaipbT=KJO)-|v^7+jU72fZf~h1D`qGO9;@#>DOp0&sm2UzBF8E&9>mW1yu`nP4~{ z7hJxr!d<3;NHQk5$7md3(2h;Nc-2uYb|bY zjXDE!b?;xH9N7mjYm4~7vD+OA>J5sj>XfM!hT5X(NoVa)9Me%BYUtDPh})HI=8byE zR1y6lBf;U}{v#{&k5}CR;Mzm3OE~uS>_0!}HQy7kVaeq!kO6TipuH0xtYxJV%DZPU+HQuQZHcleNmgM9^B2pZP zaK{y#q~d}oYHX7?auwKs;0t|)VAiCyUZ;K8RI>i5hNUR^m0eUJlj%BD9nDn%+`}8j zE#0!Ys@jK8n@C@&AXt^Dv@z^)$QKH%o`X@wWq6(4A`!<#g6zs%t2DT;QDKwTh?H?a z<@C-t$!wQKoepVyiD|1AS;9h`S|3Z832I)6x&>rR)O%}5vsMpK#7$Xg=JKvA7ODe% zICRs2SiZZ=FiW+dZ_DOeQr{fvxxBxeg9nYtP#>UU&-aO2IE$jUV%u@9Gb(81sV3B_ zs-cCAQ03H_uke28{7XbiK}55?bJgg{LahuuPF@>8aZ6j=;o>gqx;!z*n0#dHkSxcO zulnA6Q=F}$I1@aRO;7$S0|yVg!v0w346{|Hm$CZ!71xxx`5X zXDH8$-}|Y3?w?OK-0xSCWrIdehfm`3012zf^EdOjo@^WrcKMsW?IPXq1R9-Ak3Y`K zbJ_0gDD2(!wEOK*{|-*~b4@6lWO(!!a<5)J8ZBv_F3hW)+3}D-Ym+YcV*w?!7+OlJ7!FF~9`5}|=@ z&#DMi5qhjyIG=(gSUa;Oc%8uqEH>I;ryix8;TYuRpGYssfk)~@J|E}sU393=?!H^U ze0t%Q{Vxr&UVuqnc#)jdh4d8K?w3S>zM50lIs+J`d)19k7X;R|bthjuHLn{aoMg-) z>dL5Df~{Q;e@cwgM+96@uFS2${)MrV!96FsFzTz#=WAAb>qLyj+z7*$ep3aYRA&2o=H_1 z{i0)$rBHbmt!$Ufc|LjBkFL+TZ6?e;wcv-eZPrm`6O@ZHmzZ{%-*L(>R^4baho-(} zJ8CmSElF91)bE@;h@hOS&%E{sWfGO4ADP!!rq$z|X6%;TlAdMV4x(3ah1GQw1<#D5 z!>CQfwK{(dq)Zt+SU@dT&0MiJ?opTB)jXlT&8XFw@#9}|nGo-wg@qiw)_MgHULND= zE?h^y&Yp6&s#Bdzt!zvvT4z)*OZwmPC%&uxzOm`eSBlA5qlLsMjB03kM~h!q3HBzL zb`OQ7d3+1MS7!cKeo?3mlEkM<}gPe!A0)F~TnfmU~hbZ~gaCM!EE z+)os1NmS*#MaH_Oai;9--2~!z<#QV{MB`klurRINVvL%3qa-gqRYjHtr_H-3BO=*( zgB#}2)Mv?S>cpp`EAoman4aXuZs>6YO=v6&@Q|5zCGP1;zmKTeS5zC3$S~iPesLG~ z`!0!D{O!}bo*J-V8*R4RZMNHNZMNHOw%cvC#@lVS+hDbItrx;c8!H4uNJC(nq9*Q5 z*U>#|T`ugbstiP^xY7mqoXf%)gO2=iF-N+WY()ZjpJMOSj4Pes)Ldd-`7L8tx0&s7 zTD3@}4o9ZcSG>%zbVh$wT{Aya!GOqXe-!d{$hyuKW`5o@^zyldQ3tlw`oorqiqiWs z%h_vz-}Kt`;2$cWMDFC2CO?KbzVQ6{PQrE3EGvYxvem4d6 zl#)o{g_9Xs5suOH_u3T)J(NeTdT``}YG@Z4w@}e`82&wdyhJzTXV=|N# z_FE|<9ySRS#7bFqP#hcf&apr##wU2FENYxL8(iiJ3}$b}{c{Mjb4uSR?9`&N#P)8+ zX3o+g=Q^N^gFIn`%x)Gi4A93?oQpGL(-joTz{L%Ov6!{S<1Ns!u@Z@@jeIKn&LKye zyTCow@-m2&o9I)lTrSyTYwM*dzRwneC}!DfDN;8OP{^E2VKz<5B5a#-Q_+@28&_9& z+Lj4q{V2=jvRmg(x)|BoNQxlXCJ^y-2Eas82H!o)$R#+os94gSGijVN08GV9=akJb zMmV^F0N-8T=pbk|&ey6^HF;{?fbx|zgbgQHO(>3mIBHwko3jjR3+cY?6)+gx)Z^z0 z<;6jMOA4HJOF?orohE>zvl0zyN4~WC3Zu;I@mstsGOaD~7UoLrjhu84L%}Qr`)RGqz|89!9kbD3k_hPsgeb1wy zh2hKNbJZnz{LQ&02@dllHzubGAJoaq;ZWFi_WIi1-ygE7I-kdv^tIjbKChv6gDxss zrT=LkZ>OGUyUKtW5p&WA5#A>{e zAn(18g&%zpYOhnT)gx}tNj$zOjoEp|mvmhP8UKJR6Akjv9vMtculu=IIyCwIt-|gm z)PoYG%G%hJ#1*7ljk01{cnRf?KPAsAA)`@EV%e5M?O%D^E%6C&R`}ek8_RZ3MI)&Q z+!!bMs#wk^&yV9&FOo+L;w{(yH)VA_%PfanG09uOl_E7}({_BOsd)!@su8~&Vq8|c zCl*A;g-AF5QgT1E(ykhr!+u;L!i?fb#w!aUxbH?!Bj6pgm3QV+@#{y*u2k5c3)QQ% zCLLEeqz^S{OV|42a=NeDGKVQmU(r}sJIv_Y7(*DT2XI|+qmg-KYq~SKIe#ZOzT7nP z=s&q*@GYGs^6wO5jHUUsW6U3=VAu4+|6 zbEr@BiBL2>EEVPFvFbOIw=gjZjURHfdg|^^{C-dUQTUg${3e&+nn}9gI7nhlA})O6 zB_}YPePkDve1s+09&YNQ5^~2Y6;8ho_ZKg}^2$NP!7`pUoI8i`QpB++o|(s=E|`3a zIPMuGGPlEm;vigk!5(<_MI&4FniF7HI5~y@|?Z|*vC_Y7Q-`C=0D z+0*b!$;~JfUFem^#t<`gYfxqbf&&F*Or5VNJ)b@6={=TTLGf{~I?{?qz#ZQlIlG~S z+3YYrG#^G7n@=2%<&MQ?zjYJ`E5dDCb`8k~Ak+7H-XUQTy%|1H{Ue6O64(w*h<7<( z*nxG!g>kdjlm5TzTh$=){5`}JUF1f5zrysmEz_So8EI*b`^tKpV*~6|eim*IX!7X21dzr3Gh>q<#=t)ULc#5;st^+S&dJ9UsG73KAJVe$fLvI@3bYH+EHAN}2x7-Zm(mO&X#x#NtEoUUbeDC4KGc$N4p zVR{Q;kX-eZH-A?EHerlLBe@J7pH7Dx5GmFshyvf4`zMOBxR=A{U`hlez6jTxX z6bjGbXn3=dHR=;V>M-;Co308Go_J}DmoOihVQE}Lyc$YW!|w+dtCvut_%Jak=eUWS zBT4_Ya}+t9BQtX`$&A9N%f5`=^lkT4!-?NOlZq~rI~Iv!bFq$GvsL}4Xl*M2KC39S z7)2oUY*s;!M8HyowQStIUhOisi$<#NGwgchLC4APgKsg zE6f(fPas$9=hWr9RHJu0j?G#0{GSe}!%42dsphoINLhY&VCPC?^VvjAch&ZXBIwS;{qs{)d6Cf9g_pg z;5qp5z~)yLS=UJZ^dvNaq!{X!QJ!he;bC&*t|E|}3kGD)dFPo#a8)MdJSPmpc58m8 zNfbPWqGy`H&MnoF(GP*SrLaM#+`3_}5sRE@rpX43sc^_I+CVL2xD@F;@0=exUuz#;K=*T(38( zb!+(vE9)lX_69)o_|j zFAlH#s^x1{Bi8S+DT>=Q(0`Q+6ta&m4-~`5GP{`+Nti}Z@rm;iP>GA9!bv!#Q6!Gq z2w!of7p?fuMz=4s#bcq*{0Zv&uhsjkdApK7(w+-;J=HzGGQXPuxgg)5)ByEw*nGD9 zep9E;!GfD9j^N*A%V1NjZlHh0dCK?cpSCF_crB<~x2O}5eC~@Usmb%<$X__m`L zC3y7uzJv1-Z{3d+)K;FBKQlG@o7rN!1<>hw`%;%zHvRjWx-UPDxkItH$@url9U5xB zMA!Aqu57;M-cNE6QX?*G>vE~9dIgYn$`-#VZXHN^{JEu?OBU}IgO25=X5V+?`2F1) z7vKRmz8l`Bc>+S8=sU3jjH}s%dhqnQ{wdg#Zu0r5g0hp)U)DPnOE0^H|H0U&{XuxT-KZqwp%1#%;_p`$=lndqt+yRIDlEENOMa zui%g`M@BhRuRy8iPJLdt#0#^|8qsJ7b!QY}Hl|N%J1zaK?O_p3dt1VWU71sp%XPl| z4O`V$#&1fbtm}{CJIcC%=G=Rw+g79Hmy__G8e>RMkPo0^pIt4p&81KtxR_p#YN>tr zju|)3@`jx0*K5zBC~NZ#DODv(@4uPQD9b*DbSGXEv%=qF~Pp@sl{^b7AzQ@@hC98v4!xW$H2_vv^&C;hk(wSY@y}sCgeCT@C7S z=+Z6sy;Lhxa#=4$NV!_SC-|C3*2LO-qA-v|n8R2{?rI7YJ~*WjPA} z$8)Z@*omUltT*EAI7<^QHAvNJscwc0t6gRF#I<#w-PI`Xvt|(Fcg2*JdpAFYZ3Ql& z7#nJWm0-Jr3crfVUqN^2;|Uku&evSpCm2!&iJzy~bdY3KHWQ%P%fP0f~K3<#FrmLCL1VE1JVglD0!JH=ZPqU21y1_kFv? zcO~!KzeSFxd+p6}vrvH1ZVTEjk>A3aZOPH*RPb~|PHJOEu0c{XiDp8Gu2~0*{#9%0 z#Lv$d5oeA3l)~N3(qn#SChWAj87rVpN8Wg2hXn^80N*QWqEAON+NVP>rVcmkv9#5j zB875+$JTSqa5gSipS{P~Ov>EVRwXUH`8YQ|pDsM}MVVzsv8PcGpk zgV*5&@=>REAE-Ewc%F=UympE9?Nf>+UEJ&c_#m5}_T)e+6j9=62dVYHWU003Ic#0G zZaisw*CB;{uokD1OR1|RKh9$e%M?gGb^7$|ji=sEDBKrjFZhO2iZtNGtRK(KN0wF( ziB%TqQ6|WPU5iSfx}u7-(pdh6^vf zkXSUv`IUxyjVS#BB-(5^$$RXSji9%5Z|uqVyd(JPjvY@7^vKV%$t5NI+KQ=Uv{pB*sm z6OPwJN$ieL&@BdMw|ba+s(R|E1DVW}_JcMVyl=Cq>xuK+P!A6foxnF$gz@|~I$`O= zyr5gNsmlc+u1r_io{3{si>jn6zocM#+TO3EaqAfjb3K+?a?LQ?b4IK`4G;V3eF?>K zy#^_!Vf(31C_^UEs`zO}&_J!5g}F@Q8J`QLh9Su7zxi87on!@SV=gPIW396ulNr4c zhQ62+fQZg8Qw`iHsM+n-!}2OJ?HnC3sPrKv3k!}KPdil7uvni3PgBLW?9HyR!3ya0 zx$oT&wYRG~E>R3*m=bexa-2#f?k?W!6wQp+q8L{gt5=aGnIWQMiLz2sWY|uUQ8zUw zCWhgnA}r$I-iaKLqk?T%YGPUX{&K?lJElNE>fbz<0kMF~$Q^bzKR7p-nq9vIj1fu|WMS~pzG9^wcz$_m zPiOS5xAZ&j8p~z6d;Maxpv>s74jKi~UBASj`T5aYJLls_@aKGes>5zx$s>{hREwb-{aZ24QU{@z{R%Q}01 z6aXjPx8P07`*kpuJP;`zmK~g({Ld`hMK!Xt+ZqpF)l!{4zubuPa++6?wtZYpbP{Y5 zD0#?25rkBx96NP@UQ?dU3O$b@Yjk~?UQv9W9Hn%bp<`Z5P}_-4UgW6MAMe11@96p? zBz-aU9waU|uMwwiJ$x05W!}~09=jj%cI(`Y$d`*!jq!iv<=~-ni$XxGuioN% zDzn{3#aC*7a}iQZ9&ZPXY9=aUR`3R}1?zCfyuah~U6Qe^YN1dnOmearb@>$jf}ZWMd0NR4`{T-X&Q{;4*=`Tq45_o=((?nWXn4AyL#b5QyZXnyK2j=+MiHK z<+58dGO0_K#&gFEW6N3e$8L5jdZZL%9oi!*^^QB8-liiE9i>@m+km^MPm0?((lWZHde< zX|p>6!fCm5D^_tO6NoR<*5iR zu3ag{j+p*zvC!*%)%>xb``5y6CiDv^UOrjUnBr3&c_M}x$H1plZgK4Y3;s=hW6j(i zbcOM2Pce_0=CcEizdU-kISNvxSrh0z1-bN0`^?8mNBwu_#B(lP=NL}e+6>9^DJ$0M z9BqiOr(t)v!|Bm3LEakC4Rhzo$vuEC} zx~e}o@6=%8(D`Zfg^hn^T7vQNKs*&hK~I0&t`8z@R)5;yXlAPqSXB>oZgS6W13vmw z6pN(h^+Fe=b3Bb5&F46#sPtc{_RLWl#R1qDObE+q!Ql}t0il{yr+7H;57}o1sSbI_ z(EjMQU$t)_L)RR=eIvJu{|=aTYA&sNqQx$I?QoylYy<5~6!~X;YC(uKb&Vj@yER!y zVedlO<%KH+QyZ&P7}?de`TXIhJNQofV>qPIbPQY%oz$o`&uOebRvs^?r>>Hie+wdi z5{ajMuJ$>SB=m4$k@#&<<}qyPSXRhmWeL%XW!{#^gfBO;}W!nHenCdPv@G+)~)2xqe03-&#sx zU(p7s7w|34dCCUm{i+sp zTy|1_+NGb#)zh^b6eJOhzn~??mj6HTW-r+;NbH!n$~9Fq?5WOnyz|%$UQ!2) zpk}uLT+=koDz`JVIB}$-Jx%1QRQ(tDc{Cy4lX}B4(zqRlodK=C2F(t#=TV9+1%m2E zaTTY{b?-pk=ujRP&$Up2R9eQ_Om=-=%PbFNXhXVXA3L&u)1^C?X*f3Vl&wdDtU*nRsQVbk80hLq=)B;+U7Jr%Hm9VMeFt#bP#B#_M^~ zD3uQ2`3I1x>EXvalYwjt80EzMJzq4s!hLf1Bd?}3$}=vqyBWl#PODY9$R-AFMpP&* zEt03P96^FzYJpEx>J>;vRwB(-8#RDB?vZ*+i;%z_+Qln>S!a_&1vI%ipO`v-f}vWIlWBJyX~F9P4fQFcRC+zxI=A!fbuZz6)YM1(I+YTrvi zY%?YQwk%JTlLE1a3eEG1((@NH)A{}joGQzB=1J&m9vjNP{@KB+`aa+IlW4yjQz(NV z`pW2h-gka3W^z2-E>dK)D%S^{@-y}GXTA7;F6*0y?2OU=tuEs|ZzodaGvNB(yYnzE zI&paaHYcJ7slbAKd}8=5zOFyX)VcQk9q0M3GaogE!snX@%D&`cb2r(X=NG-sLpzO>*~hbTIO;tc<@~9Dvet$Y@IHQbWd}={qOd-$)q3Vtz^GGcjGNLt=#Kv zM4x$m>ttZyF3$9L`nbO~&o2MI042X34npmpfAM;GS)5$1f13lA$@Or%A6JXd#O`sd zzXXdjr)@USF1Khp-418rA5p|wCdL4N{XQb>!!ZS_WC?JmjyD>a#4Qv0_(%BG`Xv{i z73&^(?QdGsdxJE>mx`#>)GF0$!$~NPtAIS5@O!tL3K(@Oi29=Y82-xf@Mny=-k!_ru4L)eEy?e$Y@s(QtlodSLCc&s>#jUgNO}c$#VC!@R$|xIs*l|7R;2q4 zddM#O*(R9v}on;Hd$9b+5$xRixd^eS)1 zTpZbPTTU$O6{m~6E~E;t0XquT6x+=yxFoER z$jY)Bse<4iEI-%keCp0`wZu}Fm^@_lG=J0vbcBGuAKojtK1GFy?LNnv4o=g{7}dh) z;@!=x5f?EiW!7_psp3%&S6-!G`g34g{BL^^nypP=hq9~IGpRlrM=c|#%qOIF(Ad2H z<;}32|8EwCiOET2xF`kE(nIIadfw4`B&kb+$9iJ;X>gCIbSwQk1@DU8KXCj$gW*1J zew>7-ugp`$&FjMP2NoF+nEUCpGW}ezEjK9@1+t67@;8NX^h~y%<}Cye=c7_JHPJ6d6_$0r!poTxyxFeTWU@v? z=M&b%`p?B`G(KTV=3MzT!RMhUm9F->HZ5{*gBrFrb4lMeoVFCDIVjj&bQT}j@e3L< zr#Q3`TWJ>ELVSy}IGfoDaJ_=E$112S`ez*V)h^{gQ1imZ;ckeYjjWA!+WzS{c8P|S zYo4VpNWf|~=ZL?E%$aA$al;9Z>YwR4LVGw-Zq-qsOQmHu^~|ja#Y;n>`9H^9|CT9X z@<38YA=o3)V&iA<6h3uzeX(bz{jq5Jss>W#5eMDqeX>WAs$LJ97 zkG=LDwafJt<%7yqQzjfTV7v~0ZCrapqxP4buv036os{dU%cw0YzrayqRR{&(Wu|51 z!ZVSl;!H8r9%ItZZJlI&=}@M`uWgr8((OCbvWE^}gHiF5+h{uPwn|$eVf@}gcPK($ zyFVKQa)SM{Hmy!vxvaA#KzDXymkuv)yYzPyX@kQVN*Cd2f4MTZ=}JLG;`TgbC5i*v zGNv@~NEOYFWmUMJV~jQ~*srHWES*#oD{4tPebe(@{#>*U63p46PDI9Cs$09Vg~7j_ zGpyzpv$d$iGajKIy4Zt8zd-g*%`oGZeS45|wj0vFo~T2;mS5 zlEV<-jXeC)^m9kJ`djIxQs(mKCnq>TTtzBV%`Q5e9xAzsH094-nDzxq!Wu0RJ84<{?;t@{FJcB?QU2{^g}Ibjk*jvtE`J2)F_wM zPFI`cZCT8$3Z89ARVYuWCmI79V5ncxcA&Pc8P>6>Ec)joJ2KWKkN-`Q%R!=JI znRW`7AhhdR*OGd1cD(8-Rpz*Q@i1@;-ZB4}zkhT%uxu zLrOU(cx@TTy7X}+DeD@@rfZeAmsD#cb@Xb=B~)q`qlANWFxwC^oMqR-%h_#-7vh12 zIsq0l2)}oh@F^nNbmwTha!68G4smivxF5@D5!tfG^TOF+KV({2vjr0G3A2+am(9tX z5<^1sa=)Tp<7!UNt16>`H$^sue@l8rNW1cYV0#rIm!(j7)2_MZeWEN$mq%SzqdvA} zifPOT&cE}5?76w&}-_i4@`&JXxHqY@fOBbXhs? zkCO*`;L4;ktC`o|&ww>aDNAtrhS>|wThr{Z{2lt&4E~J%AJ0MZ?0%nP4z zyt0qBF9BzX_4uqgV_z!#y`oyR0jf7-`Hvthcaq+}V%%|d^^`xNaMZ8Se1%c*9zk3G zJyn(-7{s5|;My%w%`A)6kf9u9KZ;s)mO25Bq25)&v zEu++kiA$1k;z0tafnA7;@nyy?GJ%2WCfC}Bj>K+(N^e7>dg4| zH=_wez5}nH`5rKDRgV_o`9pN$eMt;fhn>Bqeg&ipn>d`TZJW$5C355^_^JA<_Re9v zC3ZRN(Vk)sKV5zeMn_KSZjnZ4F@I;^v$LnVo;B%am-1EFWwSL&Lo&@636-<0%P;Sj0Xz+Cb_E(Y-_p)<)uUadwW?AeJVxeo77(9TB;;^gk*>iaB!JxdD>ea;TO`Fh(%}M*()M=hx9-4gkf>S${1Eczso;}>B9oMhMLioVm!f@XmR^9|!(9%0I1 zT5Xd{wGTF~YUijf+OteNyfU7=%u>I#T-4U2;|7)Ry9K(IeLR>>ES`ZoT3%C!Eei#n3!)?lDB6$*stPMq2^ zxz9k{(NPl?R8Yeph?i6ywaFj6v-#RFZ0|f)RndO@>XXGMrIS&mVfBn@+4Aty@uDOv zyCvHVW-H4m7+<<9pdMOc^eRxV+J?Hx#cAI^{Yhl{j8i640>v zBLJoM~Z zP4sqB0^E}BbOorG6bn^pSQ833D~}w;(XC=WCQnu(@;F?-^j^r5#u}Mij1kWfj$P4X zIU>O&IT)od<`MI4lpa(ru9vTYVN{B~9(?uO$IUT;3&vEps19EqonRKRW{pgvUuvAV z9UY4`Dl%>^S-!){`1gwzxFRxY@XP|gmQ|gcVFlOaQ;F4jFWJ9Q$_GTe-2$O`^q)sH zp8Ay}M%?mzeBYU1TczfB2N&GbB@<)K=GJ);yUGrK+n>f-_}ALMx2M$M?6kSeHb3$2 zZa0rpbJJ5}Z*Jx3^ZQ&ssEr`oumNXJqb*m2sRzwW-;6d ze7N5~RxZY+3#;<^wLb02Pftd#v*%aw?m_%q%v;)8tQ<<)uTRN}uu%!SS@Jt3O?&GN zKUP%a7m4d1-gxUaW%bke+|3CEZx-U{0G$SeZmf5v_fw<2@^MoA>K&EXtFC1oFQbJC zN#*X}q~^z_arUYGPA`b(&lILrOANOb!E}Q>H0$ZZ5%#CqAxPFA(YOAh?79g{oBKS4 z&aZvlP8FwERnmXHgK*?yDh{S+k0Jc1me~D#1#GT^yq0dOAJ9E?OG~L<;X^wRryiVO z{c^0NNPvnVy`^aP6&!-Jx}O;ug=r6AG6MSXDzoJAR_eufLErIwHwX1+|ITCgi?3P$p?_6)kD-+L9pUjpr z6?vsA#GDd=Z)sBtOlGk(p_El$(tyCnH@~kc7akun`C4xxy^tDK4D&SsmSk|pK6Z}WCp1v$%2^r@Ikg3_+o_?QmQtE1=9RTip^X$BZYq6&1+P)-k13(`*J%s!Se!T&6B%v~v2))}Gs8C`q*G24B&y(U7Z}(8M`8aA_Q^i^sNK$DUzhiqP47 zX%UwdRCWRC=vGV8U{oWFO5NFLrnHR|**`w}MiUpS*et4ciY0|KcsY|vMD{PL(B)iA z6jZZMTLUeL+KjM=PwOfe4(OLbG@?+Mq(L<{Jy{+l0nE>xBqS$BKpByg2`h_V@#;Y0 zfS!SAu%_6UEZYQXa%m}h%eP`WCXhOS}4$nzkBvg(vp{;DG+v+WtJ)F6IC z4dz`>+@@&`m8+$;!Z1S1Yb)T?k3omr)-yqh!W1Ck9sJbQvCo=#viJBY%L){53PVP7 z)LwMEJP2w73g5ik#JFO=O}Sy8@Fe=hzE`k{F6+S~s0SN`2W8N5}G`>uJOR!{lGLj8kE{2`&M z!#~N>9e?s$e2JT}msjX3tkHqdXit*)LADxr?+kkGOXC}9yhzju5iIiDSe8^c5nb^B zO+d20*j;|REVO}6#I6}M>7)O-)i-BOWv~Vz7h_ z9*#Ts$h@y3#TBfF3~N~Hm2CNH6l;`>mbdJ2({g!%-d;j7su(=Y8-J(fvay*3BT`fH z4<{9{PJ@S|%j!LvBR>&T7apGCbr>ActxqVHRlTf-xe|;sV_u3iD3*_;%vj!K!S=-C zwcH}8Q|#T)z}hIA$=GS4X7G!DpW8%we5SdBVgW5`$$H_Cy!JBDYctYL+<0 z3!E0r+swBv;sI+Fl9s^5Z3Pe()>G*aDGG2ai!x|d@C@R~ z_0%e5I+#Hx`)Rv}l?hnp67$Lgz%kO?Wsb!?M&qPbl?@2ui}kO?c=RxJ>9V^N#X)}1eQP11CG+~qmCGf} z>7?wra^IC&EuRO8+U9d9EZ%uIUgmb{{wK3pN$UHn`yu|H{aM(7pZ>e8?EHx$I}ykM z0{hgGM26tQ=BYic``K`5Zl3Ec#>VCtCtMj$E<(niT004?SKW5QcI&>X>iDv_x!ODb zf8JDq?%vGa`rke_u0)nBZ)&68gqzLZXHWBQthnATvrnIM-qX?Ha%=by_%Mw~lANwr z(srYlk#mVrlh4w)rR0`D{kEs~6nTFRpA##S@%XtKoBw=$Tbq8efCTHb=<{~G9BOP% zV_#om(chrX<(pT0^zXVVTh2Y7IkcY^1oK}y>%xDP7v)8zWs2C#X2FwMC;eRxvTW$| zRrn5FdYWY>K{vIzX*zMHMB)%PDa1YatxeZjO)RtS_;yoK&#v_E@mHP%qmR{j^Seb& zy=5L%AEhqJHSk67Fstk7zqCy$S7jRad&T}2SOqiBTQkBxq7(Ynq41*3h&@w88jrxYJ$A8tAwKz#Cb%Kz43i}YXt=j059K^&k|11GCYt-u2xW9CyRT+CP9V+RV z_VX8>rCgUKVwWLuj1sO`RcSv{GovFoB(hnEDvT8Pv23sLs@%IS=!~jNaUSw+9vqrMD{348wh*pJYI2XuB! z5MDaBst(cS<$hm()M^!v5ZH$$e6;5HLO)r6AW(bm_MD` z&5Rbct?6qP;+R4BaYDQ(uARblC;Gdow8*T27c&KN zg+NJ7FudR%zZapH#C&d8q3j-JkbM~BT;G2*Ik9SJ++IPc-t9)0$?{{r{HG>C?#C63@m3PN5nuw)^c+8U(L4Ek>U%gY3C5%I$IdTKNAxql(8TW`gycVY?fB zilYpB)Cl>yw&u!p_oki4M|hlEBWJK8VeIvb?OFwqY0<1b&7sc7{)ZVITEUf>!_25P z|2X)Q`#P-TsWWFr?fu)?gemFNBUkQLJ_A7c0?=sYMp}@vW4sWcx(w^WEJ3Ax4oPN* z;0_d`+GZHBFE-A!0jr~##gt)@j^CBXnPotW^B?eN4bNk09uISfR zEOW~$gBfL3M~k;nkEbk40*sbc>`fVKSc5A;jWJ{&k>R&`SXdv?+&I|47u=R?`V|U3xXX?mICyzWFgUSPtMeTuCpB73Dq{Yya+Yi! z+pNzyUtNsxEga0;KOR6~IO8nR(!5m_sLG(PG^2{)k-Vo1?leaxt-|Pb9fH8THc&F$ zT)BER9pR(QXSHakQr;LRG6gWlEU`WUh{0w^jUHW0rA*q` z)_IDih%e?2h^SERL!B@4RYu_I($5!?fC@|XIOg?0Xc%tnGRQhrHf#p|o+Ch}s<0y& z!)RhEl`0C&&}pFku<6r%^2a$8ottJxVjdfhLJe8Fj!-`u43W^&#cS@z;Et7hHo zvOCi*{08ZsZvP9p9XXlkm#Ac8ih|YnX=wSAkW@TeN-ht})aFCS`(?5`6`hQ{?j>Jd zbH6z=Mac3}n)kQqx)dC{>g~hr+_sz5(_|7)ULP)OSG7Np-}8H8+oH7K68Q5`2;JTK z&92`@Dsi9yPYlD`I&Lan)=mU2ueY(ydHC*l(`}m!oGvq#-+SFbN%8wVoULw#y~U3c zn;(&^jpL4oB!hBb@^5?1WD2Az6ok)^8f-Ojz|Dbe3W4n>Rjn=t41 z=Rm@HwyxjVJe7(zoxV<`goLJ0J6p#ub$R|7nuQOeDd0~1EQ?@JrV)@YAY)~cDkb$P zgMzuiD$^Wt@VSX~if1&s7z(yui^ovnh`}aO3%&I<8ho)@lP17%TwxgXVfD&^$^t!z z%E)MG8AfZ*>iRO-Xo_LVlkH;oe;Ad09z1bNQseIbSlbehgXPm0rHL*38AqJIWx?TA z=^|eMzhi&4n|iCt5?A@wy?q5oiph9KsHhorrWs|YJ{&;H0=WWi`Y`1AEv07^!>CZ? zMhtj2uuMC}=hkLoGsM&Hw(c)iaJX|TH=3sC6tcYPS@9`-gaglm*HWYD*J4TI^`2^! zSR9p9#Q?=y;QKv?EvOaU4REt5i)f9%BN2-CoE@gLCw ziz&>k`EMKBJ1NJm*!k4k$Pc0Sk`*}#EmuF`AYGpBRDr6ZKOR@qUQ#buQ@D)QtfULM zwzidy7Sf_QGjx_*M}to_silQ6)aF-?oPB>aseG$(_G<#K(@Lq+Pb}jJU)P%n{|pgi zo20PHrxU6Vft7SG(;ymuPy4R>^{*ltpM=jY^-&xibHZ9&#VX=jZJ+gAXD)x&6i}^+ z#v+AydGZ(*zE7vC*i6SP~^2*(& znRr)Igpb3P(v{;XTbXHUtuK_na$78KbB?iCW$LvX-*a2;sYP&m`nw)?{ihg&(L+~C zpfL#kXLbB1!7klhP;M{*yHiIC$vw;dOT)pe0+6P9KW4F0Wj~)@NXLrT?Csue1#>O! zj4Av=6`BpmqH>zr4@pio+tTMAvPX8ILXkB{Jv7BJEJvqnzN3j}1CLR-PM+2EZAr%! zJs6pi>7hP>c1-80+(3Q+f2>ajV#kQ^(J^4CtSHO^=nOXy|@E`TSkyN9Ncyiw@<+hf1@>D~P8O^&sc}d4ip2wiF@6Z3Tc!tw`U{QZ$ z@JLqY@ujfW_s&76cij9d*^BcOiBQf$xdRO2t*WRlR*me7>yEp~78MyjxBdFS{_y4o z8>eGmuAR_blttLxHiecWs1&a`V3W)+e*h_|4ILCy& z3PISdu;a%M`HHr|XFK_InLKlzklH7sCA@Ic;q4u4)0JFhZi5}YtD!q`VZ>Y_Q(p~F zq&;RAW!8p8wxu73l~5|^|%LfHz)albOCG@xs9ObPPg^JYugJmWyA~n64oggzM zmipQ1@$vbkmnCKwY8&?PXN)IXKoLjz8Rk zQ1h5j4HqA?O(%FAV|?m9R`i#=K}#;F}i{SER`zEi^mELo9BOQuI#t4I^iNgU)(KZT`v5= zShpsIaxAJnd{Tgc2THeD)8QUs#uk)`EG6sO16fhIc~Ms`Ve2W1%ZN|*jx z1mmwPtk>rR7t7jZ3780s^5yxF!zw)Lno3a7uA4$ZKk!DtZ4K3fbcP z%a6I9w$Srvd03WWX`4CbB3-PWqSAFL3F`ECYHs2}`xKGabM>!Z|9VOCh-HTRwKwdq zT|K|$&vzRsyq}?~`|w=uZWqVQ=gB_b`#D~ZPxTRTQTjBl4w)y2K#7^|Vw3cpkE&Q7 zLK0^b z*T7G!(I(E=%E9^mHlO<~fmO?oKgx0XXJ(sZ-N*kcS>3E;>cgv3OgiB{pOxh4bo=(f zbl&f*@;ycELF*>C@>%nq-X&8)DP4J7w^nMQQV$`awtwH#&v1P9VUOkk?A3mrRGJMk< zO94{9%!4fs0No4j^ad*{Ih6_d$yGJQZ*o0V;fkK=FmP86#hu-5hj z6`dblF?uOp&j8pj`(X;wo~otdX%ojCozIb9(DY8H?}pPU48i@|{o8u#4_#2me?KvP zUHgVAsyEk`8}#v0{>6vcs3;yef|;6~HZiIL#8Mx$u8C02k28Fp-^!T3%EkY9I4^<) z{|;5@zkvBXlJaBEZyC*$%cwE+PrA*!zCA*Ot%nr2)z_#`w@|V%@`=l3%cFaBaS8gt zXV7}@RH|7|fw-1vyt_3usaO3|Iptc%rd#93Ke<%DaS~zpmoM#b2Enn%sm>x);R^8! zjR}s0lDy;O;s!R1^|^J9Kljn+C#dlMnwT+!D3gz1>c$QgUhzP>YFstvYmQxI8DLF0 zBilxm-70`#vfUOw1Mw>3Xx&259U8~fKv*Kep2-5Blt`&AS^EDSmXNe;UJFw!>WI=f zxW(J2ta`ZD4CRYeml;#9UjMU+(7>b$t~ti+{IdgBY_wh=%Ans{X|;0~)T~%L zSHl9T9JuygX_Mm7#n5L87b#oaC4`ttQ9XS*OQjJ4Q&kd69T}SgyI!?ryLqydahz>*s!|kU05ZqYABa^+A+4zkrqG7 zu6=ards>GocB*K4!e2l+9iH-2{Jlx={0P78IGst2-4DMfs2{a*`G1ZJU>7l@k*%*@D_G5x=tjnb?07$eeJG zbMBrQ90ob+GR({2KO+eI+Uv_ueL98y)_99_T8sl0j&u3nD;G^dXcQOx!QM|&DdfR3 zm^!!WZpy)vnmrbU`TXTIJivz%qC*+}DkWwYp^8sb#r<-n?+rA|uELvcP((XmsLPRy zYt}J1mcOW33`%2+yM0F`oU2>;$fKOv>6ap$toiJ7=*l&Q{HxP$R$7dyDFWe#-=Z3A z+j8{uIkOUMMP8vag@~89OCvg_)@dK=W%LoHY_W7EmT^sVr_?=oYtBw45v_{9(`IQP zwX4w$`7Ot=wut9!!-|DTT4mByf5hPk!(z$}8ZbPY6>cUzm~l06D}Q0dt@u2DPT!AT z$$c_HjcUbOT=iLr(Yr&-UD}~V$oA)CIaE03+&y(6p;2JAN(G3Z^SM=yAiNB?MeWKS zy*jeI3VT8Lk2S>ma_1w%zNi-E=8eS|^wi5xd4&C~`y3s5^rjVYez8^4%iw!MYRhws z4<=p07sq84RG-Z(T`D>PCNM(}n^TnqM zphk*@pF19ao=*u<8U*BUE?!NQW|P%zi%CtfR)XP{W6Xfnn^MyY+A0l@u8ewW(u=$B zw2$3WQrjvE-l5OOyyW(Y_}XUnq^(1^UvU>7b&Rt4Z|%jU7wgSBqa}Rjd#^{@JXZL<)snGUzCB zI#lwF1#w9wRtGSVW>$bOhe*0Ds)S~ZeBwFc*Ku-H{{5GjMs3pLxz6`d0JQVy*RT0F ztD8DS^Ohy#n~4h&vnVa4Q9PS^O~}MNWlpc`sWF0DVCU(Ye=zq&Shop0-;!TR#Zo*IcZ0QrMuXJsPx z=*T*sHZ~N53W~o@68eYNVAi(qppfjr47=yM_yq483bDq&jeWuJ_B!34Y6cEAKu z^lT|j{XU)tvooz1(NCxNWIUVQI!SB}Zuh`Xp=LyTSP!s} zVUVK1Gl4`X79~B+_n(nXn49{`Auunix>v}$#w$PE)x@t%+{jK*&5NP!f2jyje?C8k zy7-dvPg9$f0GjYP{*ZbLWs-oT`;m7kWGa%yAE2qvQ|2)wY5QqkIRx79(p04ycr~V_ zZ;1()469QmXymD7t2N7mX*>eIK=Zg>LjA|81{kqbs~P`HkwIbA`DKSz%hWmwC6qD- z&{A0~hZwXm%Pq-^ZzUH)lrmHOA&A1L1+`8q_RTTLO)brM@YngZ8AYbXxqM|&Qb(%H z9|<`EjOfqjzFm0bp2i=^KQ#j6DT&qYcuEf4cZZF>n|iQJ=~NZ6KeUc@bD_3v!8LBuMeL@ou#fD1-}4_^3$@)GtjpVF2-15Be*HIF!+J_b9@=AmMA=zRL+^YOd`U;|ivl#n&&~X#)$ci8IrIK$u^7J~91_Y=((YQr1wL{pEvH zgG`1OeO~4IaaV$$TR3-fS|ZS(U+p5mO7zhRigH)3yb^@ucjUcfjot{GRd&;LAkk*+ zEaNn(;yeo&C(-7VMd5Gc;nW1v4d~SAyq6eN{!bJ8tQOlz@kF?u{_tB>=7!NiFzT7O z3q?#0n%m4qO*~=L^pCYrm_qBFyurd$Ea6q8#NWbbRU)&3a+`Fw1$dfNGl8Ed^NgH& zI}1bq9fFMY)q|@U7G+K<{k`WGw#nEfnNcZf4#`ye(sq$X=<}w6qGDm;8UMEazrRE(`W!D^f^NmW=ERYHgK}!ML1d2<1IV zgn61pCHZC79pm*0h|Ej0s#Wb~o@NEtOnmjaBA`ZPkHKY@vre7&iI+T_e{F}p+h)?l zUS5wwbwxhDNQU#iUo))H)N;x}gT28H|GPiWC4pxj@Fw=|r|D8LjLe7D)a`VX^0XKw zG*w&5m&lsMEy_sjEj{{sMJ!pU7>ee!u^!e>lpRlj%fN69wyca&?t5h-5PTU(GfDt~ z>viClHhznj4GZf%+;W8@`#@(O*RQFg|DO8R_j8+Eor3J7i2dcsJgvPrt-Cd>;)qqo5-bICS{ad_PHOGf0>=G<$wkMX5=YHoZ z`rrm3wXC>f4YC#zh_I)d6n{FN@A~aJ>PyCHW}Udt$S#v4yYZ~@G|l!mRyD^wt(ZTG z%Z@0k9xxd|$E?LVxV$pSw32;;5uBq5BM6 zckc{7mWh78#p4d7J%q8!L7A4Fe__8M<1)A@^=DZZMyThQ+|3?OR#TKNw0i|lIB6Ht zK!2l{f}IU3aaMb=KlqUy0kTFWa^KIu;;(5IHRe;UfUky&jh!v(S(`T8N*z=$b#vEG zC`lTNVV@pyYWRu5rFg02{i$bD5DdJI*XX;|nNpF<#$A(W5d0a_JgldxHlMR9hF4Wu zFDUfOzMfd@jr1?A6FrW3M56O655h6sZJAgzCAnBs3n)t@-8}QBg=2=l9Mu!$e9Y|#Og<%`LHpLw!1X-pWb z3nsXt{RS*L=NfTs!{6IOgAWnODaxX1wF82w=A|EbvH~9C-63c?h`AX?M%OBI&Y@O{@Mrx4bZk#xu<|_KA6&k`B%ghezrg8K4?4;<9x1iLgoZ&RQIK!Jp zwWk(Sv*=Z>%K&6bx|7H8zWn4GxL5el>zYbV&S(4nKI(o=UmKZ-^nEYeH}l>MGFnTH=cIE48xx{ z!{>ill|T|ZZ^yCp?CI9}rMcZp{vAvoyR~1v zH6zdP%6YLJ_iws+zXg9g-6`Vc^Sj@*@d@>KxW1l6f)wXFj_9$s4(?XnH8h; zmioK;T@JcY2iI3e*PF7>^q!s`qji{mvt|{?z^?nL1KDbm-O@c1DHI2%%PLf$Rsn(~ zFH)p|@2yey+?3~Vcxwz;(NH;6($yB7%J7Urw<*@i3*g>YK5R%s1~Bv0punBN_YJ9v zOtnX*f2+hM6>O3&ONO>Yy7kr>XYOf?ci4v#N?2m8bgTJV!UDkh)8-W9aMcLL?Npw6 zt*!Z!(DgONC}R(4Tt+IB5SQR$w{wFhkKM#I4R!}}hbTFUNTFSscRra5xGXDxWPB=9 z^jC6)Qbtjm<;9porR|86_;bT8m$}7QiunS%oR1g7Ijfg=T+KT4pbVdR!8_$;UXuag(Z zG1Af$<+P$pdj)>uzbM&Wsv?o|y?N#dYJOKQ?R~0l-McVxj$EnaOrk~(W44&gYzq#q zUnO*saKW04B$Fh|EI8xw_79M80?7`(r|d9h4BJG$cUxFnf!^%#7OimkyNui>1UQV#Ag?PkExh3e< zV#Bs2kSXVui)vnY_bM|e_2HWVXt;w&nRhxrj`zk4if&-=_b9ouY^f`9DTaiN(Hzkr3fh zE)t!cCn1o;w;SiBVjslr=!x-#vs^wK6B7x)IIUWZ$l-3?Q6~gE*ul#Cl>~(K{Cgt1+p7F>gZELtiNjg zB@*J6PmDTcg*iL#(;3K4ScNcEtk$rYxRoiN$4BN?kY_BeoG{3=)Ljp^PFcI-p)o9# zhi&c@!zJFdf^cD6t0>p~ewnJ2P%GkI7lP@d6zT$0`BJy9?n~R8F0;0O2^6ZczUOS~ zp-FGlj#%zHjTI4#IIE$LQ(~v`rIm-2DV7u3T7HaiV6hbonmLJ!BI0pr3-Wm}NJ=X_ z%5LnVIwbD(f9V!IJmp!ZO?J@0}=Da~^3aM03>r6p;uj-Ca@ zoiRAq?dz9RbBDmG`g+oP5gQk_1$Gnfp%|9ACV|;ZR}*xrA7v?gOiQC)SawAGwIEJ} zhZrf>AabAH^u{Z?7i%{SxL+JXs{=0GN7q z+=8Yv=+-rNKWbCvop;HM6c=~kIZ863oejN0h}eg|nyzMa>R4YBk#;b2tKL1t)^(g( zRg#h|l~%T&IvqoQ^;$|opf4ZJb>}*YRcEGDgbqaFg&vt+lhq*_TC*;9FZ5Gti#jx_ zqHKjrM8nu}>Vrvj)x6->Viv1+$K@96iw+#CWi<B5`U>VF88Rmcx4Umln8PvMks}4XAMamZO$+m1Fp< zn$ybG26nx~L$I7N#1@T7kjQjQh-iqNdCpQtL>`kZMsf<+VZMh^Qw!!75e*C%Fy+0H zr-Tb8s4jqlA)PxZ&T&(wnt9{MSkV==gabxk-78rcsagaXn4&gnGJY}ud_3#a0N>3a zK5A-Nvx@lV)9FdXYqm;^apoo!>Jn-(d1HQC=;c(5G`k57jde?WVPI`1v)QO2OgxhH zg-p(vy*)xX5i%Q~1^uAx0|%s({aofn<9s!*7CX~jZy<4^3wa)X9O!@M%L4COHa zmA|h}I`wzFbW?|tq9Zm7qU63R7#x9^V{!hi>d~yZAhv~p3hM0lwX(T3x#Vgng)Ebc z`jK^7+^)~SGf2;7xiCdQ)I18sjXDy8+Ez)uCJQ(JsJK$vs(%&~I_EEIliYcky2~_A z!yoAWnrRhVp9|8<`u>fnYEzZa_ui&AdRq;@A8IPMrw!-HVBMo)zU^f6Te;~jv$9Y5 z^*oG-*2lC9E`Oc7hkq;S!EUbPxIyRQ@0N zU9^<@AFpdq>hbY;7P~!LQV@giHR-<8uzh~#YI65cxV&smOGU>oz{98N<|pO$e6T&? z$VgY3*XvMey<27W{LFtAD&01>O{C+0A1-@GZ}t7tPJN5gSw9ZaE9mjeC$6-hd)KMx zJj>vx2JgS;aUuVHu9{JiUV&}4PCL0uK0~u>kEbi)k%a1~_q9Ht$!!=32>eeLVg1b~ zTNrp)<_$!Yx9=|2)UcbV=c)2W7zE*wFM@!jA&(uA zCxaOKjxx66PO8V1AzW70OAxBBiyHxPYOPxgU17iCR+E?+Y`=9t zoVask!0z$I-#%gGQI(tGmljrV>n6X|#?%-dP=9N-njVW_odz zk>;^d7pvyVZHf_#H}<$*;a4)yWlx#j+Y&|@W2S0KQx zByU-dY8i8nVBteS4UO~*YTXwmv8gq0YRr~f686;7xgA~|-$Iv6JvhQn4p^6CjVY8o z?ujTx5#_yJzud}VxY|27$G$AZ>eyW>j%iw%FM5^s{VRe~C1^r|Yq?ND`FTTd{(oROGw7Ujiwk@JClr2`pZr_r9StI?p($+<{q;T-yd&( zNcH>?qi8X1W!Y*26E^CeK++TomQYzO2h{#*i}6!UQgSpI2)TsV)(XUomvb}YxVD_M7js^fYZ%7;{3}%8$x-Pw(ge#x(-SMyqhGhIO%hkZNx^WpDT>A~ zBaM$Nue5L?%vngAT~j$h;m@1?0J;1bN1Dzh!s|CZl%d6omHA|tiUp7?C%CvDxbCrstiaZkPO`loRtT9v3{W-#;D9s76vnf9o1)#@Yeo8l>l&Rr|jDOtk~MB|p#=sIff z)T5B~2I;p&b9S&I?!5I*INgkGn`itm{o)MGkgcGv1$O=W(qO+m0yu0AwF&WA6GcJZN6m5 z(T_`-4ta)(r^Q+NZC)c&YuT98x`vYpz3%q*Ph#>-$0eT9iCrKh)$>s>>4%JB>)4;n&m6 z%;Ggec>aBfJhOpqqHU*-(~W0NFeo+#)|o+HG|uS{{e5`wc+ab+hcG~iY*rPH z>UFk7^4#*8DS^r$WN-*{cxOlkiLY; zo=i_U+q?W+`xIAyzWTEZKK>#>@$`#?geP2v6YSfNj-9#Tb-4_k)of^1%*ikQxrm>? zr+(S_?=GY{Ut-?ohUAx_y_?}d*kR>2Y9UQ^EO_O(&nQw~+FtkZouwqbPS_oO4YX$a zci!Xkyk6vPM+*0$+x72sY_@y+{yk%TO?S;LrR&8+_w@SG7u);n?xi2c@NBdCwIy(f zNbjY#zaM?E>ErTbv}mq$ENs`*uq$@;czo7g8{V?x_rgLDUh{AEW_^y_Bh8Swww*Q2 zhIOo3tc>iqeO|Jcz1rvY71*bGTvQ_nv8uFAF5r|{g7o^WUIsoT zq0!gW0@|)6VzVrHo4d%WL8s7r_!VfXmThFrDDjvTg*V?^;mh)^brfpJbl-`_7t*<3 z1h&TaC5&?Z%!%7~Th*&O@A&+R%?ZO*g>fjZD^FyQa!259{3cTkdBEq11C=jEPnG@w zekm!={F13kGn=AiR8jKtOzzn@a8;HQ>JPzZhnb0~=6OW8<~bam#r1VS`AsYoy{$-h8;Mikq(I3^$OJDVN8h?0(3KMIhE6>9Lxz#<`_q zIDuLC`IWn3RsSg&J#^@<=$D~Y=ToSUyEHld$VYm}*k|Z3O6Q6suP**oEUYKlXTv>X zju8sCt)_oUAz=0^G!gMd^ zsMZl$mHmv}fKH_Czs## zs&qSs^r_SXNOQ_)bZQZ%*-)BWhP|50Fy>-=; zi=g&2P^0j|EN=Z;VvKTO{$MGr9-<*dcFJP=CA!u4WdTV7Fe6$@0lJ*YA&WJ?ta6d4 zBk->W)CSuuqJMPAkW@8xqJgO$2?=bQpp$4Wuq}zduaAla>l5Xnuk3n+TO+w>J8T)3 zAX_J)#|iPUGLoBO!ZaLC!N%uCK>wQ>Sl4qj<}Vp4GI(*@Q=vIXs|MgML-kHRQ2VoqLEa zZTiogpiU!HQ*6`+{}oOTpkZ#Une~=ISCiXQjr_D$cjHEFtTS1Y&Uv9vI+nFod&r<` z!v$TVJ_r?g2o#c&#|CAUyduN6{{rvI4j)8Ks5qX*Bt=MbOkG&LplnGq^>yNja2{+^ z@wR2vqegde5tZQfnP^!S#Ul@CfkR})73dYjRn^FG*wqC`N8}Epk~hk=aUnn z#~Vi|g>O9<9*#s>0wW%4=@rSZxR)mqkFXwbB5^}hxS*&AwOZcdU9yL}e1z#Og=S2( z4bYixURkk$E?u>>ZxTxG=q=i?x%6XF+YwYGsVl zouOH!E0@$8221i^F)=wWTGL`IMpR|=v5+&Q#YF;n%9fi^ipUvgJ!$o$oVA9oA_Hch zC>b;OP0cd?Be>9R>tDAMLB{-b)ZJBtC5g$Z-2%t@M_0T4%mq>rEVO!ZDUQLdlw6AS zQWy!z+Wfurc+cNvn7c3c&k!wwh={B4$oO?{p1RN% zHXXB-^8N{BYb&lA>D1d>c>3=1(f( z;@H#qaD)SXN0aWnFtZxbryM-yA;vs@}(k zy=)1I$eiKlbE=E%QAhNt-0!ov-env{T^KwTzHc+P;)C&!gbv=H2aTt8(wi&M(8E91 zltSsqRBZCN9qgXnJszi~ &Ra+%4^4hLC5+J8~Y{yfp%gS$_ssGb*coKyZ!K|5WS zPjXzDKbP8gmHTmPw8iq#VtUq|?{%lCR&>@{=a73eOkv zXQE%mXO=z+5`ZLF+KL)w+wupIAbKGdVTvC!XT7uJwCE%5!|KB{|(@y`!yJQ;Z#L^<+xpbu?e3DvH%o zb7gA$jmg3M4mEkac>56X!c=-ZUWeD7Of7ZdK{8niz5a8` zqJ*-Hu?A^Qa0RTdul-r?o^Oc?dg-oPJ0Q!fH#A(i<`S2(R%%SFh_EYeY?K>}JIt)z z{(Sw3Gfhz?cq5ixNB2T>M1m#OK)bnqMdomjJRzDd=4z0#{iMq&e)3^N(3jjvHtj;< zd)HL19g>!9Yvwn3l+RZ4*OtQAK(T8el*L+;DUQJwWf}Ogv$=UtGimCyvQ5^!i$1?e z$O)(x0$F>p&=_bHpjzfL4R&ETmc{!@yN%=wR5Up_{6MBF`n0+5M3vSvp@;_#+9CEblu?N*Hw zp?=s6C>NEF`+kMF$`iCYqPDu?>+rcpeeaX`Op$WssR{&Ami4iDH;<#Ty$xL2YSONh zwV#EhmUzKjXcK+r5+P{- z^r&!rxcVVCF;KeG%>Cb&l$9v;s}%PDE3ghMC9G79-0AF@oFStgmK#a#KhD>z3hD~= zBWfv%B}jeY>65&V%?0vfxPVUi;jrcQ*cMUTdho(?I2;OU_mOllMs?L{GeWYXRcT7q z+v92voGK@j+TflO6W1IZL&{^0J> z{&{q+C+YtU!+Kvb+RjIzGsXe5L&Lfx^;89TQ!V&%2Z0&1P#kM(R73yzCC4aun?9C} zU>1b(y+!QtywZH$u4(*hcX*z?$8Gy3E%Cdt!BNM+u*Fk`RuUD~Jo;%56Xhr#93_nlQBaF%&(zsR6vR*`8{(6GEs<6~KQgr&lI z_eyA#Jp?2x#W;OE`Rhz`hGD!?WiA1C5UY_?r|><_;H_MC=&bFHl7DKPb%?y9{+^>z zhbXw^ZWtC1oTZc&`7y4n5O$LF*ocMNyyIot}?$3-<(z@tzrh}L!P z=zFc}gPme8PG zZ~lbmRqUP@vZWbgp37@hNsj5;#i&%${T*`T)L8uf_*gERVa%Ng-1M3QlD^On$j|QQ zU^=X}J$|>KtJu>RI+aro$$~k(QgsV<+w?}v5Z24$n zX_;hwxmJ6VE*ktzA7teQjD;1Ud__C=KZDnB$F~R~={BN!eV%IH(24YSpuP#{PP~jo z@5FWo-@)}`A!?@aTFjo)qas_sPfyBA+EbS&_^Pm7hW#=7Bq z)p^U_zW$fYQdsv3W_Dm0h*=59E>(8lQ#r)w&#Ps=Ox7+qYCSK8Q53Duq3S!HS~ZXE zdiw>@)lo(|o4;mYxpN*|gXW?+Gc;MB3QnzFYsCYU`gr}AFWA5iUh_h_xX&G83!a@$ zd~GkDEob=v*{c_Jm=%3ExwzgMQU(OWE@6vT8e@(-73!|wjKMP59PheVhwK-oYRi4+ z{#Y}h9#k1+vOfhR;+2Y}Sq{6Q?JHMoxsv}{wnb>D&Sqi{VRNFgCJE`-m6yYu_Q0`(`)8>t<*B$SUs%9W(5hm_l8eD zirUY}!W-fhTdh1xK<*+1z4sM`%CzSCm8bh2Q`6{t2>?w%vcLHI40jJ>ZVk;vn75+u4qLnbLK=d?_7q||C> z%0m8nQ7XTrFQ(dbK4mhiO*HFe`Ie4(-(GLvSGl)x+?s}xgwh|9xOdZ^SzawgFY~dK zXqMM)7ZEW--IPT-?zLA-JPNBSD!)l|E9vU;2YSDc;E;*SZbBTW$D85SPwx$cnwwY_5K z%s!SnR+|U!JbLemrczR`pS7kg_@>8hsoVN4bwOu4NOZ7S)fE8hE(h>Uf}iHxZqt`W zGMaRHOh#{!T|q#z2Ty17j}&WQ%0W1!tv7OfQoW00_`I_iP!gB0X!Il)Q$D!Ytth$A zCCf@}7wkOsQ}|O^@`UgO)hcgXlAScTGC8wmVdl`2zp!8$VQ4u?PS zrVC>&+W#mo+;Yf=%VgLo<8&ioQ6%ftj+C}0fB3~T7W?3!)~4Dt{n)AyW^)6mPbS3z?F}KFlsa&`IQ^d-KG0YLH%8VIDU4x85F);Ly7f8v) z`Vm|vm})rA)igiJm!jU)XyE%*=JcsvEq)uOAk?Kr(~c+p`$W1ikI>BKWS#RFnk7$C zb8C*8eERiAD3a;EHypp(Pnt16aOv2idU8}GLzQ_gzE8O7sW!e#i3=(%QD|J+d`@c2kd$azFdOt2p{lRzfxn*;JqHTkE(!wOGnY>tp!~`sgHTzPdwse zO$wQkpjQRz*X3pt5*8TFn@1wT5OGGS=Y}@NW}I7=sK#98+{!iGE-LKRAu)gPYo)U_ zi}pS>AvII6c-3XN!>C3hUm2R-r<*)#Vv&r=@Tr`3Wk+0zcC!M?MO?b>k#Ghtu1_*b zv4ryA{ibqzfZqg+{MIQ@O*ENBp&m5J8h$rufc(?BRm+w=jcWE&_p*A=aMZr<7!otG**wy{t+5I3f#v&2rDjC8DDcbA{4ZoVV3C*unashc%PY*Nxy$ZE9 zq@$o+3YX)XN&vMLW!owp&ibOU^|uuqijB}k8Zb*Htm(Stq&%q&C|kH#SDc?-zcu=F zi?mT9vT9vBXg}28o;;q4ZFa_YSXLZ@`q@IZT#C!8it}Zt`(^g}DUbwO@1m{Q|(LfKuHJwDEUAwgxHI;16T1rGYd|v}_*jAyrb(NiUgS zz71RogdYMZ&rc?=H7C;{wog9MiO9+UmzL#Pbj!k{$gbpN(dIc$X-zJK@QcrgQ7$B% z9DeoCe$1xF9U1H6eUZ!xaD{^kQz<-;$nki=;h+d;lgMQ}msuKizKj9oN4dQcC zlQ7Gfb%dhB?kkp+F9nP?v*E0sas%B3Yo9mG@vZzD-`DztWp9kv>OlN)Q+)m{YdsCq z#3Ruy2&-Gdi;sqgzmBEdSnxo6+z}o(lyL%X1If*Y8&iuL`EQ5>Y4iTL zB?N~bAK_8r;ZxcSHeF;Nq`b^T%7!(K?s_;)E12q@-vYVrP0`OwHuD@F4pNg}E+SFO zCZ_Q79xP$?c(JE#6G0R6cu!A0zIo#- z;uXg_y)%GW|J)&3XK0V;-IWEAUCRvuw;$?T1FXQG@#&GQ97?FjpYoDl4FN!}W?-?a z#fH>yl*DF=?E6&LMy%~74QSTNPye7ia@}jDm0FUbVyMj~c zSjqzEtFZ?U4m_;8AB2i%5o@xPD^jahCMd8;i~Z$OxYMI0;*MQ~t;h0L?uo;XX=LfI zNyXPBF_tb>m4_s8I--6;W|dlu(Fv^RV^coQP-eWo-N0q*JQNjsDAiOWkqxbEI-u3t zYg8MEVY-BOe5z~GDy1?z)Yht#l%4+j6!O{dxbX}`>32^xth_Ydx-xj)8hLo0xwRz| zwXA&0%{c?YP-Wh*&(A!51GHq+{nXZlV!Ej9jX>vMxbRg4W0(GPL!w_QmU#p=T$fjW(>R%U@YTIcFMOG7T{keD z*cN&kRRbKnBt2x;i~JHFBx56@Y1#|=d33w`eJ|AG1iS-(JmVU)u2eJskK&q6X~)oy zb!;x~iv~Gi9wBJ2*aTy5> zyGF;-7nZ`V`u3bsW0Q$Ri5X;d(o45q@?gquY6AiNt)(dp`S+%8SBa;>bq7ebbg?fa-vYEW{vEfq}hPt7%$J=LxiC@Gd7D~JBSI`8GrcOEyJ7O@2(3uWod+5n| zQv*L?V9nD!ROq%AS7j_LQH*TbNv0U&)YRTzke=e2YL;eorg;w>9RpLuvyhT} zrH7+d*XB6<0XXB|C(|nGZd==e{IOaTd`aNJ2KLn^g+h?hLueIdn-WPVKGpFakdL9z zAtVNq%8~a5jqge2_(k&xt@EZ)bBcnw|dROA+#@2P?60 z@+wVUS(2Bi!Kao~aHN?9)Tb(@#!2pKrB@(xW6{Q|o=o=oA%b;fe2U%yThp{GX@9*Y z&6V|DhtzgX`m){r5z6n+s!`!o)@@#YK+AbxdiJYH#D%dATm_YQ_n1~XD?_+b@dce% zmEdKsiQkSESmAgryw_9LRq(V2E3S9-DNmENdm)sjtAh|)j{C@EnV*~ZiE9?C%b`1W zrGMYKR*8#SlhWE_^So}y<|s@7TVguH*01p;A&4o1@0oxv9EO`NQm92}FouyU2*lYv z_>vW&E1r71Xht_W!q=RfJPpx(wM~_&Wz^Slo@Wi0Oly?zbgPFMuPXRnjLzkvB>iNz ze~>&%#m=cJuBFXvTV*Db4#%#b#dCybeZH7n?~6P8Z_nWSQ(TSK0XW&UK-CI#&(YMX z&na3YH|w~bZV7-{H0&#M*@O36YPEUSzJ8dUIYV63xDIJ!*E9Md@sx{Tz6B8%r2>I} zOMYAXtt<#C-1jUuX-sxn_3CQc2Q29f65f`U?aXm0o>x{;bY1$>D?;w8#`=tRzk%H^ zP@q5gJJcu7IXPtwM``O`%N7AhUaW25F7pm}q zZyd2Fd(9_f3z5pLqqM4pjN!iH&a<+ZVvPlXjArksd0Rd8XiqM{_SVXQu~02*^qB7H zjv~~hugYu=h=EpI_{AA_otnX$FY%m2e+p5PPdl|)#PObrK)o{1t!-;!@wlRcN-iYr zpwX<0T}$b%yZw3-Z-m)grxKLc1g?TgNIEA*@yw)Wx)}J1c_T)yV*Z)1 zpwz~80CjBs7;{}xAPdmdNm#Lx71YA!Q&pB38S|R$E#|Fk*DKZD5k*(5Urvc~bjDr< zTcyhbx-U*b)sBCPofR}X+?BQ%pu^8RO8=PU$Ux$2%u z_p^6Oab3gi^YOkqaT`LP|JFZN`) zOrG~W{(8+4iUK`>q0iyNli@eraaHQ1chc{3vT$Ap&L=e0d$(eizIHd`l5q5P8QisB zZcub|DKdMvQn#<1_*>s(H#!>v#gE0t;m~og*!-T$rVD&;SH*`K%ky_FZS-ODZ!~u` zJ^ouS$mW4-!t-e4vB}edI2BPn@IKgDcYZxM9lj*SKVC2A>tIyc`Kx)p0uX~01&fKp zY16UuYmHqDwe^0)CoK=CLOPty#p0p4rQ%*8;|_mVjT=f(c-HQ~OM1$w|UZe7ZAK ztZOx3Rwc(kQxmEb9mf1*`lc9=tP5~&{A;Put>NUZaeiC>Jvi%*afeid1+iBW&QvSe zN?bn;=~1@9q_*Yq%7>;^B5g9clU8^hvf?fwV_C_}nsGbe zi>t497HBNds>A@%O@AKUya+bA-QW-Pt8Cj1#IJUUwdOm9x4y6{!dObaz8OsWD?ZJARuT_?>nKTw6Msf0D@2Zkg7#bk;JG70JGGG@3z`aX5Lx z#mR~O1rhKsr022t310G^SZD5*)c2lFn?ts`=JZAqZG4*OiAnf~G>lQ>tt$tmR= zE0@Dj)g=L3O_^v8Jp9;^hba@x6VqIP7nbsfR_$#X!X`1fyYiCwoLI)CCh%OR6bEy+ zC78`D#A-3-Ui_RyRsdABc-1oM0y5fQMo*4Xex-C|AHZw^Vz6mXjy!A+nP^O{xVfvE zfL)B$jXe%0*u~q?L5$u>5NN;q2uSb}?sz2zK|+HG{{3Zy{dAsK*A$d1=S`TzF%b>Up<0WC<5Cd#Xbe_qiz+~UWoNUVfi*ob@Zqj z^`Ny@R%4R>!=X$oU$H|r3TgF;$2j9axtG0zNXt?1p!`$mNh}i;`=q%2^E%}($T}vp z$BE4-Iz-ptM*vByJ+3eSH4mtF%GQ0J@UtYgcIP>0BFrQ9IwXD{#s1JTOC>6#d z$C1_pwD)c&eq|@x$W36Ea+Vchh#+2%;R8*ZBK;6@#mR}F{87@rFC4RqL?ZomA$D6S z59-l(MZve{P#%}Y|!tuZ`@YV3h- zR~2P5x=iVTR3&i#J~KgHJA)RZI5|pY#pu>ab8x$^CGc^an4%wX+qMydy|FB-$BMZu zb~P~I!al&Cv`kzXk6hL}%Q=+dHO0->PaM5YMo}VBqtz#$5Out-hPCs%?4*W;HF4Rp z-Te+P$;!^b(Wv^Mwj^X!BQkd|U<>=#Cmp!W zZu+=sVBo%D%`lO6MMdKJrlYu%1jp2O)P%yeiWu_U9148%nQ#s`aRpyS2DYQ@F(q}2 zY;JdJvPPhW*LKZ$#4jiElJV7&o=sLX)O#z?ru}V@RF|<;T8%^WxC;Z-F;IwbMH+h? zmf!t>Sk;M^d2=+1;$G&3nBN>}IF5{TqOhk4ak9~xydlu24hkQWHuW^9S=Q*k_SP?u zh+$G;`9k>t!!-9^Y~PBUDU{L3*l+;T<~n(1g%~Q-GE0UmE#bt5gk9mz9PY*k4NXM( z_qoFx614QDE-ANJCDg#wzl<}1qZkqRuaptR-FDZOK+s6Sl?o^2!aK^X~8=a^gY*T>B z%}ySayq(IfXL1VwSy(JeX0=KnN4U=3&T@dUMh$9Lp+BJ@H+0gYVwz&lPr#o)R9ZxA z)j>FEY`5izJVv8rk7vRfa19I^sj*Z=;?qSGPe1SWq4Us@Z}cc|0xL587dU=2DN*a$}??Hqd6_?Gb_)5HjCEX9*F1uFUP9?dy};1P`K931J3q}oFaKD4 z8(nw9C+v9@m-GK6S4;oB9;fcjU%lNXz@a3dT)@CC1slb@Y$(q(53dS z>sl&g^A!0r-0p;fLNzIQxOwGy^!-VDc9|W%o`zMFB#(3J?8Wl=KE8Sny^F)h$G@jU z$lLlBsD2-2M{=u5zeht}kF(xZtirhMVcl--^z~1WdPGOV1;~`JFUQea?|Lm9iV4qrxf%l4z5;X4{qQ4z)-NSo%f~Wow%@7fk=s=f{x0=Q z6D1&@trCSo~Wl|4(V(MN`yuh!ae+s~1(p`AQP}UZc8HiV* zS0m~Ml70i02YNkthUkqKF=(! z6b5vgGn5W9WwOsazSS(|JXOB49oqIMuZJkc81lWk_eu5tIez_FInAZe5UUf^ z`qg>0hva@L)#}ixN6(-;i9VRZ?K!hkr8A}UM8mrO8)}xA^c2HLGG5zIVTTHno^%6x_lfZ*>=6V6HZeZY_|Q~WN5C}YwFvm4Kk?O zxoPx2c8TTPmPPsF&kWI--HT3sFhc^GlN9gk*`x-KNZuswbhsi&@Bv)Pd2wB_GGG zyNa)Y-_j@Eor0ZCD9^n()Ra7d{U5T2&h^2GB?;&{ot#+ZnObG&XKe|ALcKHENEh*E_bRhKLr?p1YV^muEUYLPP7F=qWK zDMdUvJM!uM8cVRW8J+3EoK8o~nLQe7k1qATHO#Dr+v)I6#9RvXscr>`DLJ$I<_g!V z88gE;^wesFb>{IOO;qPu^kh=Gm}Qx@jxko#cQ(07vmeK;Q`Oy6o1cGxsQ<2_l=GJj zJ6dRGXAMHRD`h&}8Mqe}U{9-I7L9UNbpy^i8b_Ez1ER9`isT)#Yo7BzMtmxx*JEbQ z+&HqTWVcJf9CNDP8xAfUd0#peZ*NNPdc@cA3cNl=+crZEP+@wljSeV3x~!>Dl_ApT z|EG|Vu3$3jYiY(}7XTLuL*&E}m<6y6a~JH7aDK-jT$bH7?;mNp{wadG;PRuCu2&@Hz` zlJD0Ry2r@lzLm~SLtKb#;`56Ij{Aut&T!&Tn-rLFEQXH~za*=zih{#EO7UhRTp5I> z9jy`}($ zSle=(G9K~Wx)QMWQwTSlgJpA+RJFtB+#QiLaEv<@^cZ5W9xf#Y+qamUgBSnae8GU< zCZnJU!GmxtK}VI@L))z)p)p?Nk>Vn}TonQJ7P=9~$bJpFfi-e!#RK40gypP~_`mvw zm2QfnohxaBUTSH$>vHwgDe;9#m`d$#56xL+L8V0p8l!qHnYpfPwM^yK@6bxQ+%Md7 zhbEa!PNGwxq_4^%UWcevQ^#|wveEjmCHIC?zFQZS;wH89?Pw(@oE%MOYbWYp1z-^W zhMDfW;=c0Z-^ueJk^0V*(0iOqkMfi2xDWm~hDBN@ElUmit4DvkUn>nShcuqM^`k+f zO>>&?xb(d|4`N>XQ`-*ROPL(Z zkEc~_{{vF8>k0?qhvd;|cv0J^pu=%Z;6IVa?7(9CKf*X|{|pxYl$2StzbdmDPQ$lX z-2AcsPGW_AO43JnVjZhhO-#;WG9~d9?_vQ`dQQ2rB&`lkchn100*lsIS)7uZTsaQh z|CgeuBom5|>Q<1yN)S?3M;3MN-Xxa@h)J(KGCk6ev~r1SJz`>S#x6ia@7_)>GPa;92^!CSh6JhkVjy`UA9a?SGPoCIe_2NR;lD#N@` z4*h#j&t+}=A;n_w)dHGP7b~i-(J9U6zPWqlC{z4Ov-vb>;`NqUDFw$vnIcx1)v0o= z=J>LOQoy@Y^OXl^dCLZ^e=0zryu%lh zQVlFt*1jjGO4S$Yy`$&&4sOC)HuHV~VI`}&W812mzoI4ARTUPG@Q|mzq0x{op4+az zl1nLB8p{45&L=jD~*DcjVU7CfY zxloz69-V)vs%w)_<|==vFgN8y1JyU_Y@4(+!YO7(4WFgbpPr9fgON`;^Qf+Gs>49? z&Fv)SUxC{fsih|lZ@T{eGrhl&PGCvzAN42|YWqCj^4)+f#74zvfM0Sc*5BDQ_D>7e zyZdr0m@8CUL&>U?!MM?kg<==FVH3}Ig;pKX(OoSh5*d5O+K6(sQI`l-5qmk~5&0h= z^rr6p+U1i5=G+3)P9Dm+lE4)5)R~|YmjdmZp0lWm7!;}IU0%O(?No~XU302XT1jNP z4|;OoS3SYCq4EeF?Q?ybvx+7<;*C8>oO8CUIl&=X4*E{MQT&SI5%q%}jg zUtwuKvc8s?`Y*Ufq@^Tg^FV2p(RghO7Re8jg zbZ&G$&o}=Q6@!XPoTMr^228uF+ZPr~VPWaASu&o~g>onlD^Rw})o%Dg%Q=%(MPdIL z66$lyY0Tp0(u3*~MLx#$#2;8{SnT0A5YG^+=slP3zCBJ(ymiMAaziYeDT$_BrLEDo z7o2i#@o^L8FQpunjAatT90S5V$>-?%H}#Ydt72O=k!a5kU1~Acvxzwkl4F<^(aIKu z0=ZllSh1Ze$|clkRdtq=ZB%Qa0h}uFl0JU%cVg(`RwMB@Y_3F0$i(~dmI7JyVr?>IQaF1%wzcJb&sLyjLq@K}sdfG3ozdq`O&*_H9g_wE;#u%Q^w z(0Re8aj58&!#1-%YgDV)q2}}Jx-}NKC&jHe$*{V$ zFDB@=$D0_}s_I|uAMKqPaEcBUALVe1%^ATH8Z$;Ie#pA@xdlnMhh*mWX2&?F*4U1u z*v5WnoWq+{filgjMi#?279BG4k;v+}_slp6#tg)=*=#ErWu8{mv>8ZR*9wK*xyh`X zRE2>S#Z__M?a4}v;EDs!bD4Ie>MV69o^-T+VLmM~kNwJdP6_F=^Nyln{3D3gp^ z(dcK&!l?H_<5IV@y#fbkt4!kfiw}O}*w1J5qS?_mzbvf!5i zN5}h$Vwim)yTsFe|G>?K+n1rHQ62DZr5b5U6HVB@T9pY9IIC3$cbaLRaS>KQV4MF| z#JpQItp%(qmtlcH~X5F3@K<-dgpn@DP#aRVVPK>`7q(W#M3-1gUOW~ zaN&r)OpP;rMh9fBNcQB?W|X?Dz002RZxt*3Cx4NiyDQ9T>5rm))?-Fq;NOoSUf{CJ zFFKxU#nwgjts;Sp3NzYSG2_=RsFP$C<$Nfu#%dNFSWob@EQN`Corad^X4PprO{bRs zD7>gUlN>zb)P&3I?0O$Wnlgn0Ymvl<#Ez))9P9J2Ha}7x1&#HO>O%*X!SBT(@7DB4 zbTN7OX{IB|c^vG<1dovfe_)r0pQV>^U)MjYB!T{Kwv*Tqvp-0fKmA0vStW&I{=Fo3 zB&hg3t*H55B418=!Wlt@s}eWmpn-&i+EVoEGB0;^VY*mW)s-{-T5iib(r;UllNZ~3 z^+z|%(p5PuRr;adnYkG)e6D4qRi>=oFH$)Y7tu#A@nzC|P%xI)ae5oQtnS9VHC+zY z!$oFY--pGmSO`LQ?y-8CS<*C+eBJKnmV+xV!C%keE;;Y+c_$L7egY7Kvt@G}l(pgH z{pp%lmXW!1eh(v)UuA&TZ(~~D=!etZ?o;8h{Xg}^YzVRxS)za+;7R>Pb549vZ20EG z66bm!8U)MBb-nkFvyrdXn^*ip#bdg6*SbzVq9vub+U!cR5k|GY2WZGz{2oWXe z#^%UWFA*YCDnfd!I$}WwoVLTcV}?iR90RphqLMYdF2rainPykcw;aD&a>teg6Fn=A zAX*K=#44L==rvgbNT>J4L~_C5m4{+ITzbI07 zDJxHwFIbYnZ`0;QXG<^K@fAF^w8m+W3|hM+`dCaF-yC^5MeM#4j9mxpUwv6yHSjMU zBE5Ka^L?)^zCU=b7J)VLO=Udu!8|(_y&oBs?ktyqaw(F_!D305OUF#zm-SGjNK@nL z*XjP6*QYFY%$%F|B8-r)1MQ`UfxaXQ2&tBqZET?&nm^iIhQ&%f23=*Co^7kZS>HPA z9KIp9szZ+~mWncngAe@ts~s0_nd>Yll(C2LifNE5m6m@F+*^-SnZjjlHYJxC~wMlkg`;psZ6SSVJ(t>ezv@=Q&_f9O9m5>#eR<(??f5LG8wbAV_bEp2U zKwAd??bwPBst0_q6$epkSCRD7+pG)@acq&Yda4$fP_bD~qDLdw&p-I84Y5|C8|HO< zGMgz;d`HIAJI$=5NFo<0)nsq210PVfQpRwu4Yje-&bQMNt$j(v5t-Y#=>{vx(|>?g zSlHIm^hr-myRBoUZD9|HPP|l;N#0y{79d$de=;K$Mi=)#CPXsX^4uNm7wDn_X`BcpysW?4L?+V zmUcK{>uFOv8dlv5&-RL8x&(fyy>~^F(j_2Cu535S$0Jt5UcZ>2-cDIG>jC^l65xL~ zEBfQnDA4icU2!~6^CT;a`z>ZtrRHe4`q|X=DT~t4R!K&!ZDPn!WMqD7_toMVf^_*; z0>Ab39*V4E(X}1Kl#ALPET2C!w?^%>W??wDB7m&8!Y@zcMr!pLb}QwcG4-Z1gIISO zA>$(faI>ZgmeIDVkJw>QoCPqe3vZq$N_BNo3ld0N(Qo7COZDp(WUOXN^n(+qH1kOj zxM1;eDQU(GQ?W#Z1f)&eH`6SpUx4v+{`UZ>M%;37Xm*`c9)j5QC2$ism0A<30}+Oa zKGG^f!rH20kS&XCT`(&wsiP?cWK{~t#^H)E$+1;5LpY=i{>l|<*;K~Oc|{-4s|T>B zXGfl-XT8iodfFfA3EN2E%p`a@b-OBr8N6~}WvB3cd~V!A{a zrNCBr%Mx1C6sMENtBzZ`Pc8*fEtxkEacI;Ep@GDeZ7B&(nz1%XruL#bi*(!sCHmYL zQ-iu)gf@xAnXhL0zogQ7V$`#y6~;4u=aY}<04QWN}+ zsHjk>RbH5K_G3H;T^Q;Toyzl-ukHr$=_m2&4*exkG_nok=;9sT8Ab zyM+!4{g1JFXBBM*uAFK~irPnQwR~?;mi56h2Bg?7Rc{Fk zYP$j@Ch$b0k*)%mUd#ez$Q)Sdj-J4}kQXH6uA`DX2NxZUz6MKZq=&`~5>08H55 zsmdZz@(eTwV15N0v-MeZJ#0W!#n~dFUND>j_fO4JmUO-3;)%M4r#+Pboju)i#_g{E zB5I+lYq9!MeI|`$3;k| zj>P8;F(G>g%cy0*?HrkP#@zTEH_>*5N?Sukw73v2G^XV$4BRIych~ zti`F1-paJ!PT^31u$k(IX|i7ev|HCsogA~i^VAgP%&V0nwz;t%(yA^~1CoJGT{83Y zsv1(egyQ)`>B!~RQ%5}TRMW*hOX?-||H>s8_bE$qgWQ0vTpux1wLg7snM^!_@r(Fu z@4HZ!^|Miwi^(sSu(w+aN|W@?cnaYiCv_8!1nR2n)Z@fQE8V9YlZlf%KlyQD9CUS6 zB)^SM_h$8vL6zAIp(l-rQ-zIVlNw=_X|^pZ7h`cU-EVnbD3#uGesg9fV)3S zXAs$=4$qS*XxhIePY}`ObOp|7rf>rYKvp0q&OF31VI>XVjiu$C6OVO0R3k{B7=GqD zCDBqeH zU^HQY#5))=ZjG1fH&evxa0iew)^u8Tl2$W@S7DtqpV%tzc%m&@d&_jA9#MmIQoJXh z*sK4GtKs$C+=_l{nlMgW2-AYSkLhRTmjEqy82-<`6!2a0Oil}9!njdu&b3?4Y@c`S z@Adpi2`P0)V4N4^(A&_}unMK-r93HH{8jfjTdtktq_%zS|7f6lE1O3E!o#m>@mI=> zFHpFg!t5y*I2{h-o?pd_6vCir7K%`OI*k$3-1E{?k;yVvUKz1QVq?0jp=P0wEXQhD zAfDu>79`#TEH4Qj$GmEeyn)GTyAS=rhnU|aCh%Q zhVlzsMfGx~&AgSZ;%xP(=~$|gDiX{+D)P-c%ryox8eW@);yA(+nb6&>-`X=cw|H^~&TQ1uShV#@6@cea%b!bY#|=@ZFFTcWR*7VK zk$iBYkKg!@)?Gx)%I>@PCu6REoOQp32buDQq1;X%|W+Vxb<q38`T8q zbh$Wv_bYp@aEam3RflW|dgSuDxuuOAt>x2*1^J27+OE9VDZxczV{S9bqN)d51I+3? zg%KFbKO4%>4#Ly&!UZEEzfi5324;xd#F(}&|2<6bM&qhsc38CwgKSz&Cp-gN`S?VQ@qR;a`=fZluiQ6>-gyNSlQjEK^ zCOJa1%so#IQiqt2V4)=_9s0}}W!pIHi@s_y-!SV36)&l>i&C#n*Ony*L%=13yjY?5=o>vc*yukOKp899;`ToAQLI3v7_xLH) z6^eXQ|6!+di|t@44Zo5PzO`S~oY;BL+(6;H?R~tv=q{Dk$CjIA>n6hQJu)Zi@G(4H z?_P5KO|hS2-9#?;N!};Re#X7lhib;;`X3LFz<1we{rDQHO|BDNVE@|Qn_(pr z_{-A#7q7$ay$52Qm{m(0gE*XUtT}xA0-vrr)YG>1qdz`lw_5AhN@3M-Qmt1YJD8Z# zDtq{7=#D=v#z>x85zsh;03G z!l}N}F;5ia*L;}Mq?hMxqR?nBv@*s;X2q1ehR~C0Kom)il`&_(JJIu(+9v8aq#( zsy;>W;g521fUD-K(@Zgq!*{8t37l1PR8o=hn(m9gik~^tE109&XjaMY%1p?bo{sgC z+Nny>Bs-dxqfR+alZPZZdMSI_=-#k{m-v}`r1F!AgJ(e!pgxatI!5w%&2kF38Y2`sxF0U%oYT%xsu`!+^s`z2i*+~nXQ~Rc+rWsGrY%CqIU*pRT zt#3DX`;qpzJogsk@zq13g<$5=Ks_D12 zT8S}?q#1lm$|)yv*=Hz@H`z9KDmSUs+_K^iyjef0(zCq*$}I!mKpYV@cy9 z{&eb^`D7KLpJI8X)T!#VOfgCccI`ZqgPpN6DRjX`JFH;kM?oq zS#}~;cJWx5>gZIs4hv_1z2D|}R?TI{B|Br9djimF3Pkej{wnLe)syAkJ$(#dlYEo& zb!Uvl2h!J>O01%A<@?$CvG)#&?@P}bOM2u}!;)aO@Zo4RdRaKr8T$w6zi4RpZpsm{ zHLF_CSSFyUn`(CUI^`l4*6(aR?f*L?icl1^N!ylm&K*pw9`_8PcD9vE-{3ln+ODau zN9<3y;5DgXl+$1ziFdp4VJm;RdhxrAfO6yqFN)K?$f{d)65iL_`5L9zMgDF$r1Pyb zB*!D|?r_U+35-5lwXuVNT~_5RfLq92H;T4+Ffa8TbvLP4K)E2cjH(5SkhT?DJVA-c zi;*;yb?7I#_|elHb3&u=$|^#vH%3zaUe;YgP7X0b(#m>i>z(QjW8moCy(D_9X&}xI zOc|WP(%RzT4gV0MoJ~RVS6XJ4{47?FgnG#VtR~MbMI=+rnM`D+2TS?&uZ+kza>5i& zH>D`KPu0hcD+3?MZx3a02aLNRj|keT!psVf=N&O_knYo2LrI|q0TseK7u~tj0oRVSa@~a0h zo;WlH#odb)^?^n=mvQ9`7;1Vmf?D%jH?cOEA4v%jY3}|D#xl` zR=GUcBeGS2*+k?}k2=+@M|tK__KF7LFzu=b9ccpzhdqx_6RM?za38AGE@d8}v!L^X zCZlOmtaV(g97|lfIR-Qf5qx*GZ0+gD8PN7SK18#^jAC&Whq$h<{W^y19TzXsykhs4 z{vgv4n>#vGi-mk-*>Ekcg$6t=j#2`;;Sv7ytF4ooB1Typ-#uziHVDQHU=gM!4qQVl z!};7gwP*>dGVm0QnmKM^bR-Q1Gz_p+8zfzH1xyDEvSH}h=nhTwRxm<)6+uHYXf+d5 zL&e{$x$r#hMdD$!E^p=TOz!3Rz7;x@UcyQ)q4Q?MOK~vKomwcvtgsUbg`A)qvI)U7 zi|9{J2m38K54~%2r4U+VQ-_yIYZ!suCmM39u(&%k`RV4PFi->gp^A0{wx2W_ zX+jU*szFgC9*D%i@BSYckkL3-&R)=cepqtL*uN=Bjn$BzQ}8Dm_3KLEBwsYY30n3P?$E?keG<)1C9 zuF~qcF9_v#jz`g}C=acD3y?M&#R2OfnqLv}7g`97fw_FkaUmhBtv*k0s55JLVd6Z_ z%o;>@*iNV4UxSD5-yS_%_gbZy9>EUhtIVrLz{OV7H@k-hN!Kd8SNlEX{l5pth??5` ze;n^!+Vo0!I5F<~k{E8?AFKaY%>8wKX%(VB5tJ`9(&BKEXH_I%`-nb_4)4te?C4;2 zy~i25%={ED2GeiD&fxlB?akHqPd#zd>Mb*gEg@nR({-z;?MpOx6gey{i}YI!k}rhQEQ z&m{!o+MIS7Cn762h!hwFodv6eb??I>)f6?v@5rYLGy5IAUg=(5Izr7Yl7}_c*h{P2Pj%fOi7+Q618pV5=SybtKpO;m1y-^zB6_? zRT3;Cq?T*a-j%#-D#Er}x)jwXx>gY>6=wSUd8;!K5{k5COJ(;}Q<^R z*Qbf=7H@E?#K)&$%U+bRlv*M+Z_ipa+`3p!U8b#+nOl-yQQ;@gwEDB>e?-^wo} zTf#-|{&W=cr&h#yI}t))2F%raZZ<#72h1>6(XajQAZo?7p|T< zhR+m0#ZtYfCG6xXm!5B|!d`xm8GXp%s#ZRCpu2q*-U1}t$0)YgX;1hMI`nEst0lP1 zuJI`+ALA!rFvS9Wz-mFu_cdbR{H9wxNz)ED@6VD`86Q8>UWA(-hafUEY%=byJ%=uF z#NyPiZCy${)x2CU50|W81|F>S6lx)HxE>~qr%gxah+fLFH#|kJRy?39lsnpENo6r* z5dx60=997*GY3$MgJoF&OF*>0YQ`M7;gq9Lx_Qm>%(YG?eE!BUYVW3!zLSp@G|DJ? zW9aJ3C5Xr#ie<%H&XR1#SMY-nrkGTk;doDik*(RC7X#{K75Yko0zu5(rJPd;dyXqGEvbGSq%))^&hOmTea~D02K-QwuJ*UzMo2BTm(4TWqA3zcfIa z+kQ-M4H)rVSp6EqnNp2@2_K~7PhW;LIH7`HOiNbtFrVNsYNY1(cQ}VFn#WD7LDhEZ zud{G!%sl*A9c%^J-1 z9E<|R3jg`&rHk;b`E82zgN)-Td9^&!9FdbpCp5WS)RF5tA7zx?W``rRg>~Xw@gLvO zQ6@SOkz=#2Gw`pO;gNFsS9#;`x?4p_Ffe9z!O#@S0by>Oznuc*cWG>ye}Zhtzpw2W z`5oaJ$wXm2`^F)3CA#bB{nbEk*)Fbx%tIG` zk9icNgA=pYtAjW6ysh>#@Hf(%g}{*d4QDiX!hcXh=9_#Y7S(~>sFc~8FU0%LFU&gO zcIwY4@5{r%URuZ~OZv?sr|j}A*b~T?EdBwtr;w@O-8q%fFT^QN;kc^W`0T34%-bw$ z@ro44y$={g0%MiY1EuEqwB%j2r*X<;smY;Ac8dW(_ga|+s88_O7pU&0Mk zojpXv>V^3k40!6MvBf&H1+Fgt`cNrE{xIT%Uw2Q(Cyom{VHp*0#w*`0`D+4qiRX}O zQJgvBKzb?zk*-+O<1mV5Ft@SB6?~|%>9I@77C%f}498-3%E*tEHf-`Ri=a>ovNH*S zyvVKT7{jEyIAwQ0RUCeEkA}F`i@fUEd_wJcIzi+>XD-^xuboxCv^1Lqsa|5fglA+% z>5PVA{fAn?VbxYGGFG*D!^4s`nuBa!kZlYq)kwM%TlaKC`f-P&xmT>Ra9ya3inCqE zz@gq@JMEICEf=K22O!=XI5!(}&UodVGF-Z>7?lO{>vTgYLzT^Bay4Ubt5J_N)+mj)N}9hE{nYgR zn`LpoDWpr-gy2*MHbA^J9su2|6)0urt0m547`IfX7ip{dEz3ZRDMU7@Sk2PFE`;gw zA7{jExskzOQ%btFsy`Ettk_BA80D;g7bKuO+$=-8dCa5GILd;LV7i2<(>PC|Fuhzs*uqt_iiU2Ng87>tUBwFM*qjvBE```zat!*!*a{O*F1|!0s^?YABQQUOmo>Z+O{z&#>BPKKIFs zTba@Kz894Kx2Mfp^8H;8f2X?z*=wG^haeiIH*Zb$aJpXJj8qQ2Y?|NOE93b3>N^!Z z_#zO4;`p@dxDvby50mE{q~u?o*PZd-`;U2WJACT4n}%UXqz6Qd|4Y(v9U1SR--GY+ ze@4@A^Wvexd{K?>Vj}h?88y7OYUX7;q-{Sxj-YhQHzhZRES9C~mzUCd3)u7Zq=C#S zg>M#_Ey$bVEBF))jg`QC$EN4Q|9!RlBpzw)pF{X_^rT>U<1K>sSIS4pm!2tkM!R-( z1;LS^TXXJTtwHXtp=rnkV&Zedj{7vfLy(xDCKXEj(-DmE@F`O|wYc@m1CDbQ_k>m& zWVG07)iQuQYn&G)xg_C_FA0685Pn8f``7uYQd?_MNq z7Qst@h4Y%aRXDAy*z+w4PYh)~1@)`x;TKOqXmw*6Kd#a-zA;`+eKNWd3&&OqiHSsN&jOU*j2b)%%NU>?=Jo1iqJMyRy9~^( zH_2vLQ(rzgzGc?k49du+HjBeLI#!qFC?1-$Dr5dp-WmtEFAu&@X(4N@f}cMTA`Q6t z_9+)yX@;?#k>Z+f`GrTMp!uMdc{HHYnO?4|@{jmj!i@Au4&TF%rBW#MYl7kFj?H6M zP33GXs~%o%;iqMzT*-O88iJDZ!K{qgEgU>z1o-zI5|Q0>Xf$m;A?_T0o>pUge5! z-#K;Pui)B*`7D`KXvwwpm@i<0ip=Tlla$3EWeo5Wr0qlH9!gn|+kHaOU^*mQF`(gfwoY#c5&W0Qo%UM@$&3ja|SN7C4imxL}w z>1#UYchufb`jq0dnq={88%K~VJFKw^u%kR*dOA`CnMSk3pzY&bI(ESyoZGa*^uI7X z%KN_C>y2fMTmD0uRH_7*6*sL~vhrdP#7-MG;N>sz8^uePdfEow(K)<1tJF#2{6AV@ z{8+|q=;etw5$h~;VwiGn?wS@=;=CfzD@%WWLyj=Ui-G@Iy{{J{M0a+PTAn!6Be};8 zzOB0$=6bxG5ks9EbSZD?#hQ7|9KvQ(eSa&4AikZ+*()&piDW4kbUJNu8hOq@=T}@f za;o@fW|#aqbgO8sO;iIh`4z`vq1(7HmOGzNIL4Ak| zWIP{1N{iVGQAg5B3(!zL|A0|5cSlFx!TpoW8+p;S>fedwNg(>W2UugysXV-kYc<8W zVp}HFE2b!u)pRI|vuOf?UX)VoW#s9jC2S%rM4pH!9kr(E#qsOR6Gn|Q^%0GhP z1pFZcbIticbsFALd(RDUx#9+k5=9ZeTjV>blTcxuzfrIBtF}{Q?3tn+XjZXIDK@@3 zglErzMrPqH>x7LPSK1c>id6ZzR_`LQg+{LE>Xa^6&I^P+Yz1G|A*|}_6>BR2c!HkI zb04Ldrprv++TEj&=ZPZGPCnutM!74zB zFsV+_wSv&dg<<7Q1j5P99M+y zh_NS;5vCbY8QgMv)Pp$LquLLJiNx8&Sx@lHDF>}DFyh`((cf#!W^&77tSV8YQmTc` zGUs7nOedRnd7EI?W>1FPzem20>dp>Q8lP34xK~>qetTS`GsK0M%5q!M z1xQvl$4l}4T&Gc2xBTzFw4BI)ub+)_mr0ZMEPwaqyQ}DJ_j&TU{w_X0^VQ+EFN*=} zB#MS?H!r5mPJR`hax7PK#`t)h$8@OtSoqkbv#Ih}7+T>FKOPZCle%*Qd_*SE?~| zsQ-`j=#t1}WHq%pBk;Yyb4BA zq^mn_=%5}Wt@@y@ClyPN+b=BUO>X8DT~3*4iqoPwKFW~7Ss-8J;augmD`!q)-D}#T?(7`^-v5|>4(m{75zvbTl9ge zd};S=@D}Q47FSSGTEXL{YDNz;12t64Li>JHuy$ilk#vFoRrU+jgrAosqw*-RlOs+u zf@J7t=k}EmY1AlGzfGq4u)h-Iekv$&Yd@zsr+=>z}g{!sbMHq~g*g!t?1UFemDuGj$qOV763vm2I4!e8tAr(!Eg zENip2K+3JNaW5;a4;Zuj=S)LexS+|L$SPKmD zkAqFPY~wg5NFK%2OL>;jxliy#vZ4K6w|7C) z@UU#F5z2a_m%u1lZcXA|{h3BRRGykkmnivtO1-~ETg(XiagG=BzfzVUaZs_tlZiQ) zGHBhN2N%~mO6tyu;_df@lYv$#!%KX=lFJ(RjnLKhn8npNUY+?kq6yqHoM0C%`L(5` zn>iI$?#gC_rye+#$C+sE6=iqGznj})lvRb0^*Q~V3S|L#>f)w{2h1x&<0XcLyv+6q z<#}4Gd?T&O@?*_w8_p9a-<1lxWf^D=Aj7AP4&v!F&Z84pNM#fzA%5)jm||BLj(LQV znq8HQBsPl7qYPUvIJv0@BNE(>NW`a=my0hzP$!jO(pfmqUunpPFP(8RZf2E0o(g?^ zFW#VH>&0!9bdD&6pgBbQvVj2WC3+Xe6HW=lRWpJiAroFwt$vR*2K%W$Q0%wAg2yol;m73woYSC1=^QXJ@e;|v#% zKv46P31LWdRj?bdYDToBGf|nv20c|1hHfQpD@LFZmmYeEJMoWyL2Q3dElF@9H_DZ~ zj@U*?oXQJ5L>Y9yx@Ykgfr@nPjX?2~v5qRva+L<|r9?cpO0H@*$~%gXt*czCH#qtyXIc&Y?A^?>R)@#&YBlpHeH zp3lDW5MKK$V069_rQ<7#k|ipXo7-($UM+S9crod*cb+5%W>l<#X^gYgIY475`&G97 zbyW0)x!{ZTkN64+KSxp;67g*gtNZ=x;{OC?KjV+d&%gC=aiqV`XQb`KwC(vniBIuq z+qCRec)A3g9}71-=GZ$=Q8i81^C9>y9{3NpJoib@U7r>YyDqWa{voWnJjJfxCfBgW z(W}Gy>Nof8+fh^A|8qv-M>Fl7-+E+0Ai9ZNL%ACp)~CCqUY&&#NDen{w?*4`ni(<`lJazE?dIv8FQ(G5T*?j~mfrnw!oB{N=(o{`6U@BEjj(tG9 zHROu_TaSf$DbtqhZpp;P`EZ1U{TYxJdT-S8lmOBREH&Y2;VxR~qll1f=TvFnwx$$_{wlf5N%#ARF5 zrz?qIaW8M}=Abg?j-}S-2a?xrbB-wSw`IcONLIqA&z;$Kp)UTZCTVkcaw`r_|KC`9 z>yh4)T(<>A$2vg@i0$@nG&a>s`(S?Z10t_f7b^{p$VJeOD>*_0{SvmY>n?zL&Li9E zetGU>gtw>LkBvP!XB!<(X~&K|!*{$`vI2Eu6yZ3q7<`8i%V61pLh{KwXPwTGrv%+yv~tGydzUB2qjrq@u&-HywYV<1|(q2X=S`_8a;yz%_i$dXDUeUnyk z_yT_j^}blVOQ)9E)GOLKOsR-Y>z6^fQjGd735jJ2agW~<8|ys6wf}6p;x)fwiQvqh z8J&6l6}S`0Rh3-jP{k98tNLx>Nl>0u($18nXM7;F(#J4f;Nz5n?dyyex*WTeX)hiR%V~{|vav9fKTz8PaQq^WriaMOhwJQls}1 zjS>ljP8<|U_~n*ddL|6KB}#c6TF*d{UsD9ZX8q?8ECe3YE1?-2L}$BDu|vp9vbDJy zRJ9b&$qcCy+bhU$7kHpfsa+=Ze+mT5nsMbPDb-Mz#>_P9%5#mX!By;!5rM7yxP`36Df5phIIm zr01azy0W-NDvc`BKY&L z_{BR&y~Y1P@@vJekHo8dM8SsO>Yj^&u!yn@QYmb5|z4HNs>swFfwusHB(3 zjaA%&8fph>mvecer^?U0zg(L83pGbQp0hA1$;1+wEW!GyyytPM;r17pm*k#P!4Y9% zzF2X22`Ymis&&Re^lYvB5a*0~fs^n_qXDsvH!)~ndVuywj8f#j6HHI%^mcyRjm32& z`oz@5i@p*S+lj&>*o{+Qw02@yaqn)SN`HOt7o;xD~uflo@Ud#7a8Y zP9g=JSnr8hxHyxKS_LJHksP$;C;iw@Kzj;hb^4}Oz#BT)l_VQ4aGm&W3V zR=vuF@gEBrY+0kk43_0FSU%zEP)3b-p*qOqDgN~Hj`NBf+a$h$u`!^oKDcP-|3U~+5n`jNOOcg7GA?1y`DbpK%W%#YPhb(C2hs- z4aMwjW6LtFYhUi^73)dalj8J_@Gs1+7=ykKid+XumN|~8Hx)mdl%^YS`lXk5pUm%; zJwmFO>#)!g;8F#RtD@ieJS*|ZiE-*wUMQ1A~An8_Z`aamZ$e68l?j0^?dTD6U|aL z*nTt4jb+t<(71_f;R9a-8nRV2Ug2aW9AcKcrM}IretRc4q?{fDW+;_;>a<#pgx)U1 zfjC-5In~21tZ|L8&nKQJYCiSsUepU3H%6;bKLY%VDO(&eDZQ|)4OF-X@uH<4*_*Yi zn0u|!6Qvr`h1YJs1iaD*|89KdRf`LUD+?C!j@@IDvWMO`h1?D=dnKv2GBUZfphc6F zz?XO#5Ul5uZ1!t$M596Y^2#!S8Xf8J`ZZ$D0aM*+N7t5=U1-(x;d2)rPSH*-UpJ;y=X$1S6awNXE!qL-t=t>oce0?aBTown z3{SU4s09&RX-Niei`q?|G99P5QLBmXy(+|__70;bY9L_)Dzt=NI)UjfYhpO^+*oD30=`aUuk3B7%uYxm^b4i(;fD0pWPqlKC?Rqz5Q5r3Z?jgsY}<$my&R zXmS=5i7&~Y{EL0)xTibYthxQT#dcnIW6j1Dyc3qaaAZd?uAwRw$ia$n5v5NLJ^{w; zw4t@=hM8uXE9_rAxK>HrZv)3ELs$1G zciz$HWj}@Lgy!vZRVd{p9T!8|&mN&zP zx#Iv5pFiXF^QQ8(Wwm-+5*-Z<3aqXpeB3+?MJw-(W8hN((1sAaQWh5Uef~rcFu=K^ zGkUmOa$8(>>EsnYuT8tiKV_2osuHC{oCw|KPPF5}x zt5)2v)w`3tV5%4k!`oazfNa-4CvGP-C-k0_EVAR(^|7TaH-rcHw4=5rL6(?g!ICRU zg`+eDvxJ5}#YTCCGuSfVE+L`0Ds@i2GrB$H0P4vLo>d1;bEVdfCFxgAr3_?}h|7#G zO1QfcwlP?%w2W-iCzqObscn-Ca29;j51&$Hidab{^guAp_xq{gvAbnSa0mxjeyX#! zH%Z~54jFh?eVTaW{;D@4I-njJ+YKsuDdM-+uG8vLn`-d##i2XCF_m+C<(QjOvuo)b zxwZ5CiOWZ@a`21s>rVdKQO2v{H*Q}XrL*4}!xNo9XMQDVxhIs}l$NN+|DHRAIHcB& zTcS1buve#?ttd#KCqTC)?p5uJEO(2@mx0$-__G14yIRAj}rE*&d8Nov6S|KKrMF zcF(n0N2wPs!)I2kR3I)5HAqvQYUpU;-)!>UafB{08E=JR6xqFqBRrzBzs7i}d@ui1$t-Xc-HB`Hr_VaCgBzbr&8FCyaXT8V2K^F(GZ zcH_}At4wK%SxX|er5lSKIVkSOs~GntY?`2+^9-@8v`#&OOmIeg?6+BnOfsVC7N9o1 z0B-3yreQ!;!#V+l(w}FhcUpF<1b9|gYT0Ke(ri`&h{}`_^;V#hdQDlav;2&;tWI0! zkM7!1C=q+6VdEq9Ce|czFlCyRpFa}*IWJw9TjhsXjs1aS6#Q-b_&Nq{LI=#TdYYPb z0gy5a&w>5osDUvSL5!X*B_Qn3txVo=tsbaHC4&~ofnkbgPI|@w?Z|kPM8=|GvlOSM z$`P^@dJG`~fiBzAB@Z#mV8X|fzm7P$7xkP!23ReY22^e(PA4VH8^tMX`CKXZoP?D% z0$;JNb;k94K2pN|DilthnPRTR&n$M~dW*TDM)8jBy`d~5#a9<&g)nL6c`k5emGX>Fivscm z0le?hxi|Dt_)-%s-UIK7-#xXjdkona@Gthc}&UJ};KIyxZzv6*eo{AFg-;$eIcdFw)l>MN;7p!p# zt2dNwv}VW7vQKU!Tlo^olS|JpTW7)>!3>vahjl7(bZPHQWy^&FtL z`yaZUFI;8yPa>SWd8%zO^(hhXVRTqEGWv`G2kN9t0?vu%*DgV9w-H{sjkgrA<|!6m z#Jp9yed};uS2|w{gB`yJzfq#vs;#ulrw%PbYjcTWs~@V*R~owA8!!st9dDF*hJ&7& zG^9mIb)rp2E3p!0dwpZo_!Pq;j&47H;-x3LeQ~jy$7QMnAJF&PiQSHoGKg z8B!6VF5^ed6NgGU|z6fUT)uPHcGJ4j9ucps$3jIgeV!0I+3AwO@wxn0{)( zG~I>6@*vYRvegORdF3pk&dMU{?+HUH)|Mqmpf_-NN_VM?@Q<@hq>SrAk#dQ>RUygQ zoI0XysEU#MdTI(IShgrBj{ScNZvo?^Hb7`k@t;*tB|XNS2Q0PDG0R*$sGnMwtP+gD zqbYZErLsL=9aF7(f|_&cQ3E0IErF&WH!80a6d5@d3trUb7A;+G>|7)_>!&~Egyw@J zt1Ew3>%@s3amPNOH4C#SiXLHPxb?on{;%XW17I=Q6}C5hjFonrZ7#%{(V$ArRO6XB2(DMXSK=DoX>># z`WOFRqIm#+ho$2E7|P9W`ZwSLMeurl=VPhoc6oeehh?PxG8$fQl&sdSw4qj5HQ+6x zj8T_V;P_c|CW4^)9i6)OR}GkpB?HeQ_c?yQMPc1hyrD9Z zVZSPKFYL+>0MuXJiM2)kt;&LgXAw^TXrk&Gh6f3C-SNOyxz1fu?U!ITlzpnuR~(t* z92F@0L}(Ktc=Okft0e>$xRQ zT(TbG+m&l7Z)~=;>KHX&;T;KcROQhBKf|{uxh;CT1q*%ZVgIHnW}liBY88YxE6FQL z)K_!kQw+GZ_w59V!z8&i5z!a5YFiUdyfBSi7DJ{v0*zN4`gu-DR2;#_BK^cukgM(R zWvAq<25@?^+Gxit9+_dax8sqws0|h|iXT01i3G)$&n)QWq?|Ok1H_nq{P~Yi$s_p7 z=uwVdKf3r_+)!E=?Vd5KjnGC`7x`7=s$9mcYNevSg{j_K`0nY;ytiFzI~I(UH11D| z?EmpL2=xDlcag19J@Q<ki20-Y$wMne@N>rLu zekz+FC)UjPRuLBar0+Amrc5=)SjP^Y9h3XX%b5&Eh&}JmS&Wo0FGzW0CfMnfy<@I8 z26{-uF(P>M@kDEUKw1h{K)qs_bcL$wJoMCF5hR?RA<2o!S_e4yYx*OSEO5zHht8GX zH8%4DMd>(=zp<42#c8ydf%s*ZO)kO{Qfks!LF#xYRWI}qY*BfTLipAB5Wm{|@QU>% z0g!451^M#~qBY!z=oNh!#>nwrxi~;LxAbF-0&3SE<)ne^9qdF$9%?MYX1>2aCim7JD34ZKK zsdTikm%aJf=b=_v1#9ior)1c;-9(KR;X0K$E5o)c1w;BEDjs%|o+hbRMKXna8(t}S zQT-NYEWRXz?Ryz~GcLrlQQrt3685(!&CO1TZip;X_xgjSv8dFvRnwi6 zM(DtfdER;4~%1Gqa>>5`U&BRM+>cpxT>iQ~78&SyuIxdQ4;bqxNLdQ(V(-cY}mE9zC7 z4p{WdI7c{86kLLzGYfX?Vvbmh+L~)q=YZ%FQ1n#^^36&MS)nkA;igK^FjHbzVj|h3 zBGD)~tR=ftT*OeUs}fONnb0)D*B#G~G{g%gIIkDxEXIsi^>`fRe3g5=Xh>~|NLX?* zPi;hImPJJM*-jc&_d+7nL=!S!R7wkC6X~ZG?TE4o&@swk&?`FrNKe|z89)05p&6() z*_R()HF;ZIwCas))<%D6j48JYHJVn--&DIohG`*-q9BBC+-CT0%+RN9`32sdOn%q1 z&nr~<3cdkxslOl93@T|x`EFfWs`n=|KdezpFohrFMY;>sY{YwlU`hY|QDZ?L%U0CnJ%s@`hxBT(FNKZT^H7_%DlRTh6x5|m$=wbbP zTaDfT0U_^s_ni9fUn0-mSd(nBb=PcR}nEDL2~(w`nAGKWzFH3@c}Ep#>I!AVFZJ^zx@FN9+&%qd$dZ#OT20qZ zzk}#n^5NnYYjR9n6>2p}#i-VuF=H!L$nK1?t1PN*9PAs%sGM01X2$NMC}qI6l4b>V zs6E(`9^1oHLd-s{~AbL5rwHa65D|F3<~6b5tsH~w=cE}4TZ-JS#q9X z=(x@*duzuWWlyX096>o?EImD+cNIGw(!GOzw7j+|T}i}}u_JC+j!}Mp&iV3HjPOpa zhB@`bxfu5^7|+za`p!ZJ7en8`9%$o3#jH_^9B%Fl(Epq{f4_p^${@lf@%2xv<<2Pg zj_CNEDQzner1wi?`HqC$C>L(W6~9p!Vgs4-FK1B^^`9+j{MfIS`my|pX(67O)$z(8 zq%M3sLbF0}_f&Zq+)Y(jaHxlSP`Q{$K;2V}Q zLe4LZT512=(!dy^f>I}{E&XYDG>h!zvAN6C<&Q+$cnr`B-vM1Hmn9WU0=dO3qIYkg zk7!PfatE_1&@#uT=_=#XtJTt?n9>U%xiuuXSqbh+szamyojS9|BLy5SMmx^o*2B2Y;hOeT60#7ioke1?HjuZcwY-;(}oEQ;5RvS4VRMviI zRno0`SUvt}mzrTh_hU1>Tg!M^wyhJ930M;>qi0PC&@tMLYf6lBkwX?6K0XOa=>~Q{Qn=pe% z#F2gq7dwj^rVeZLxbNX1ZaFETQ|xw6JR@e05i=z__+0!l2v@X^SzgaT;s^;(5|3`Lx$eKc;_m8TXFMBhgzkqnOzJ@*m-12tQ>MF zU=wRNE-qq`ifTQ{uEr4-jx_aI5*&+FBwh{CMm=reoqg*5QN}L;TwD>pJ0?L} zSZDAz>{=6^pj+70D+8iGr8`=1^I%sW(<&5O(^VESuo#h~DA$OBa}{M?kG72`Cd=$jor^*cnCN^h3B877 zKvuHp`N4K7?4I@_3fYFUJ$4~>8GJAa4n@!^Ra-h^dby?%MyM6-jQ`W1dU`#G-JULU z95IW`mQYR(i8APds!cmxk!(>NsyN|9n9`g=Wl&(cJka5HD9<>~(2Z{nA;BhvV8W+h_U5cE~Vu`{^-y(h%)8*@(@)f2tb!KY1sv-l}^y*DBe z(Y>dc+027lSlycP@W2F!a?#pjzu-7@87OIWK50pqsCO+HUPh0Y>pFg)bI|B={`b+x z{kUJ3MY6bALjt}u@j%qF_8z|0IFBVwyW?S_k(xAMb+V5SOr5*#+f6T9b0NLIuI74Q z0)ZpRuctAIyv9x?1xANfamm8Ve6_3kU3-x$w;G#AesJXA2OG-&OVN9aW!@dX08ORY zogLVwTq3})it>Qhn5fnhCci~cu(r*?$W|gk*Do-NW+sfOz*s+mXv_Sq_AjSB{4wR4RmY#C6oE1fH!)7XYM`aa5#m7gkMc$OMT^H01#`V^$|5 zm}e;H(@G22nbs^{dTKP$8$4DYkHcT55ZO)Aw8O8dh{&)J4>+%ZXI8!Ew!a&`73Wk= zMgI@@$`(pN^Zo9HJ#XvKqh)KjFn^3=*Ro>P3MN!tV0@iQexW~4XHuEId<^r7(5$X< z2OF+e$vboMEl*X=EsjWyb=f&9*&rl&qy;1VGIz}(Kf-B6lbs?t;mb|dW8QY7*C{L9 zxc`4C5Xu^}g!08-9CopPN5v}8J!!bixAF8tB~v|O*nhxs#NY7Z)_Fu4$0uQxgsC6k zq_^YZQ+@wGP07jqj-?Ybycfc)C(MbeAsJO7)(EGZA zQW4!(a^J<}IabYJ3d#bZQzg-T4oqA5pcSz`fmub7>m375pty;byvpJNZA!1?!KxGn zDw8Yt^#Xn672}$xAXf22aB`+7c_pWKQIc1|nz9-q(78FP8lI@`!^ACIv1OANhBiE89-1I zOPgAV9kj@Lbn9_wam^AHUn>B&(J0DD6M~4yj$Kp5u)*4@E*-%Vnv#yVWdN0}y_j)) z3_^(I5%K<-tiF{*Jp{{dKXp`59Uz=Ax&n2Rx`lIj(WCXjL6$cc#xBRuYC{#F==P%B zIdU&wZDE1neUWUQqLwGP$3LhQcc)HU+|2XNm1#Ig(kgUg+vXs4pVD|g*Bo6`LYx@h zE6`KSU$ zeHpST6}YF#GjeM#i7UzRzF5|67Fy*gm#V6<$&9&*t=_$~z&?8mnu(pNc$AV3DYNYf zY6mMZRP{=zt0dZ}mt_5sg?+#IptbUqcoUp*%HmHc&nU@RY|;v*>$OGtVAtmCQQWqUKh`ep!Q)Eoqcr zJ+PR(Orr8kifjF)$9FKMLgWllJ|*28dgHJM^h_vKItmm=T;R{yRAd1C+o3(D79{XI z{ZQeOk5yhb990TZ@;Xj6`S($g4H;Q8~OUnM+$ zr$wVr78T(9>xB8#9?l#8C(3Mj{MjQ&<>hwYmYc-$_5MRf@4vd(txgxa^Y3H*O?*p> zIg4LU<#*2C^VuNF3*fRO>V2*c{+ATrm*q7r^KjllAX2#9WpBsITW$$VWa+~9b}!Cn<)RwTOe{(PvU^Jska_~)Rsd!%u*~qGMAB%IcO$w z-tbd>4@A-CDIrT znb)u6>**KLb(S%dWocZvzPPZd-%Vf@!L<2da))G5oe8fjqm~CXu3ZYAFgL^KRxACL z3Z%7G=l@zO(}7qemMw~#6aB9M)0GRDX;s$v98&zcgnox^o(!tQk0%)5t61E+VowmO z6Dt15yTqz~WkNYj#xmL)A1LFi#ANT5ey56(J)%;I;4-I5kuMX$Osm9+iAKhCIJ`|b z_N}HeYSrK_TUihC$edO@q}I=&#`xfQt`ix(slxC`6>-P3h80eLQLmtKa>dPe1JxwrHFJep=&?&`9z%YB0KY(va5 zj?b?Ewc~EeL>m)6R%kZ zfz%lNl|15dY12;O)TIc~jcIRyPH_l0^N**L?bb>X-CK31DU4@d&2;@d#JDC3YWaGZdz`76QOYCMVGUkgc7N>N?VAhteJW zF}1Cbo~z~E(w5wE@bW@~;in#>CvNB2A~h6eJiC(j=VX=m!bnqwsKWg&PhG`DgV}*R zR2=NLixypry1CEy3gC6h$YBfYD*?a7+EG7{-cPHca$9pOK(00Cl;#KeC`cFmo5PuT z#N~A;oU;M{e@Vrr1-8tPjixpqe5GS#TYc#|6Cg{91EAs{SQWBAd|9?JA-lQl|K!4#l^?!Cz4^omMV3fU;&OQ$`Y3^hQKuT!` zdx=<;wmI1V07+_N8D`f9F(ULV+7M*cafW5M>`UxE${s8mmU%j4*(o$3%Hk7xWQRx{v2P$Ez?9*6OHP_Oc=S zW-$E9*eT))Nk%1VE)(jyAHd5o(bYcXVVyOUEOEs5{KM9r$e{m6D~RO1P9r-Nq>hM| z@pJ8Mx0j-6Ia--bUn#8?M?}cOwTpn=b*`M{HFKn9EgN<-^h&&Q^ohv4;hazmvac5I zz*o03#dyw?t!3ysgA`3Hf?dfW$- znDu}hi~WVm0o@ApnP?0+QsZnNx#+}rFAEn9RJ{I${g}m4^LkAU;(fscH z>eNqNq~vhRs#EI=1(`XAp;nB9u84n~z!M05Zc|RYoN| zucdfQw%9e%haG$$Sx_?d#t*#7l$%~&B6l>8C~sMeqTz+HvV~Of9%R;(fV?iEAP33>#pi>v@W%Br=I=4 zrtc(H3IWd^u|9jKi13zm0`?kg<+_&uoMluVXH}=ZD!wL^8E41t^1}!tc;?Nh?5>sU zMPfz!2oOx_T0$b|pqK}1s#}QTxL^4!ws`hfl+!oHFa6O@Dsn4Kr6XkWIU8Gr4W-j796X*~tK)U_ z{cN=S!bGZA4kZ3aunCwI3+E1seJR8Hf3fAVft~x!&KH~aCj~>z!F0L|jD&u!LRq~n zW`~t{|AstCtmb$a$o=Zdg3~_`c!wW;k}ODt6&L_gPFQt;k@aAYL(wWPW&d;-2LaZo z8GTj-TTx5$*Pdt3*H$m-j#|!sM})pi!G2X`;dPbM+F8Q~O(b)cSu6{Vg;N|=+bk!{ zh9r?4XGf3luPqS7u*Lz8SYvdp2imNt#E!HwiTM1#rSk z_K_Pr4;7exa9`FTJm8f|n5RZefT^X&s0?}g_AOMg$e=D3*n5V$8mT%2)hsS~)~|}{VYDyoZd=J+Y3HonGNXK}WfTXtnKgcCh3`?MCFS`K z#X>)Avtsls8ck9WpRmog@=NP8EQ=;%utt{C+aw1)gpVWRZvB*%Ya<-N7ka}^bv$;Mp&pEtf1bps0TfBt< zkIKzW8L|~2UgVvMguhi9q}$b?SxtIp%9$Uj8J!etATasXlS!+wR(nh%4}Dow)uCSV z)RCvp(|4-Jzm%SQibKR+fbhvCBrt9*LEw6$mXEKX??@#tB>L2;ZcZqfV+K4UC4FAV z_?Y#|SOt}3@{R>Q%DXIw`KFNg<|Sm5m21f<=SbfkZg{j4)Wk||6@yJbk-gABsA2LL z&QnKtfx)!rbn?1m^x_E$&VB5(4>;Nj4Y+VQk(s(jD4H*GZmdN#2MQk}iF;&Gx1Dy# zykSg=)T1LxC{k7Ki@&WX%vE6Z8EX{B98=hCOPPhGK+qR9S^ZU2=e{FJnW@%;*c2^0 z7QBfnYxL2G^cd?OSoaI`q||3v!2-%90_IXk2kotU61Ac_G(+PMlm* z0G?d#taZiMuuzn0BN<{v0L2@E=U`a18e6sG5t?*x&St`-R0zf>&1uH{T^UH@g;iyp z)S3sCDdX71n-!LVy9XOR)Q^;2iZ(WEZ|kg%MT(krk5M*Es+;A=z^GZ|QRZBF^`=E( z$|j9OvagkZ{Z!Az8*y&bH4@-WC5lmsle1oG;d5xgakvLOpr)B@2)KtfWL{BGuu&PO z6w0?>T|ml`%;Qk2;omeE#jdeIjOq44<%v@iQaeMrPA3tdFqFf~61E&RJN76yn`Wva z2w2zQr+(jcwUbKxs4z&}N2>IYUY9hk9^yVnY@K<>fl1swQb4bZNzKSS&8gNkRfURP zyp|DJ3z246pfs43FryZj%D2@6n>CrW0acw1wA3`ZT9Ixz)X~c-!-+O6LxNFzDdbQd z95IYN>@x;bmSiAaR%FvyqK`Yx$bE~lELYx2s+n4WYdED$p~yAKiainvQ*7cuJs2Md z^D>+U2Hj*!{xp`iWT}(L60RytT3}+!_ZR9~yck5&p=RnZy;W>3lq9060}!Atnp)DR zNEL#nRHjuhgt!bIiB%{HA!}_@N|m5rOX!wE9Spv?C)r@eO8$t{=BJitAL`<^8zJ^)24lXwr+5v7{>&<4dE;Wu+7Ph)glv@$qQbO5x}e z*9dWYpK$Q`_|nn@OTn%sS`oQAnY}WxEkQszr58TDf>pAZX`g;ZORb9e2HXxwS5uDK z)H3i>42geHb!z}cHs%R@C2uNW79D$QW;}7sQlwmS<3{|fKcj|zC@RZ0NMmpNp^<|l>_{@}Kds^+1NS;!r z9SrN$cYbM{yh`$YS^il;h+Q2z6WLaF zB}NG|470}w-cpB&XPas|^YLNM7*iU(8cZ^ZGa#YYl=6??>r5QOw)b_=uT;VBAgpy%^zW}qpZYt|}@X-1xbBDcup=uR>6 zf~Lx8ywRr&QIx5TDLA_a)kcjH*+&H&v$jW@SDJwSQ63emBgRxSV48BiuD5ktPd99^ z3(WywB~Yjy22*CIPc(ugp2`3xuf=`iaWS3Zoqn=p26c0jMylf}8io^URcpFZt`kaO zBg!jDyQS|wSO*_a#D#aUmV+8uhoz3l$WzC(v**xT@-Q#n5W>rgVt_^QTRdtz`{!?(PXLR}BlP8Jfu|qG@{m9Eym1cX^_eUCRBxA^um(H3SrGN2>SX?hw z1*RUZ|8pW8-zPf1Qdtn5DV3fZUsxkC$<>zCX$jiWH^udq6k>vaa(WA&-4mY4*?9VG&RGEj-0dV1y4-i$7pMs(t! zxbyH3DLfqRbY*xHC)=@ZqdjlSZX;A zqA=qOw!@Wffn5pCtWd6;>;KWpP_tPwxO&%-9-5}a>|v`hcHamqs_vJF|dD6Ot8l9hUSY}0#0?lj@Sej#+FTvnoE zK2exO{&EaboZ#X5Rr#)tN0UO3;-;0$W)%u=0p}Zl;*>CEevqo>Q;CA+)zvRc$Y=s# zo3dB-%CUa`VNzc%4Pmk^hUrzQK?8LO;V8z9{Ev3&Qk+OpoBF-)1=GLr>s#a326~im(UXK1oQUw`Oi&d3c387gsk5iXI z(m%Uptvn+kHn+=+X0D{7Jmt@D3bZnFi7F;0nv{N~j{Q}r5ujEP99UxD{fG#YMOeZ< zC<}AUO)`W6%q~jp)R$@I99RXn)~N!SR+&mwM#`8aA0zk5NwJ7 z)E1y`vOl4MO3!GZgsOFhbXrx`@P&IT8lY9CC%;zffP}t~tWyTBUQ%gtjnj5#Hm!}b z*`>7GYnJL{E)@eYM5-45ILsIjufVDJs@1lr3S&03XL)}Tx>dw8P2}}#N20YbmZp*| zzlKuDQ#A+TosN*zsbr<6yx$_0dBr+u`B$b^*YP#_{ux)#eKP$^3M9^=zvb@>N`hML zzh`yaRB?E`kK$&kz3=-{K8fB`{`aotbh;7pzpVf2uiSvgBGDEC^L|Bi|DFG*S1R(} z&E0PKkyk(y-&)(=>}NmX&;S#`;N)>WULO;4nc8pp7y7TzvoO#ye{9rrG5_g22{KWw z5RzlnzcA1ASpH8zn{x5j_JEDk>R>+(vn3e|Y3+5Vx&5O)-VOT0TDn`Evf@I2Uc#DL zwJpJZe6_@ZhBTTD}&GC9<(Hga% zKA(D-1`uWDXF8=$U=rfX8Ihn>hJ)%Hw`x&Wi$>)*WsKh);_ymo3be9umte0-(wOX^ z0HU3VURQ*zS!L_2fe~fSFFm0>a(z>$l_vdr=Hlp9$qJ1%>YL?wX{3cwg$t^4lt?F0tQaDfZm413I+u$(IYs z8PFE5zA*p&rS9&NCmh#oq&m=kOZ-2tk~quB68sdC zRQsWRRkgB=^$J=QA=dB}s(`bd67jJ7cDUeCCMFbKDD|9U@Ezx7mO$-^Gi~0a^vaO2 zE>&cPC&yPAP=3Q_NiD{PlyrB~={9VH1uc6s*0WcMh2I&?yT2k)gkY&`=z()^HIiSHjFe zcao=0Au5z>2%5QY(pRa3nziYn2kj~YRRz3>+5I|+xZ1bb2;VKuQK2ppk%UP!p z8OAD(VMFd(s#7l|BCwQT)61`1=qb{b<{0*wT9p!UT2Dth)GE^lokd;i;HyNQT7u&^ zMaG;RhMxhiHRV!mN3zUzN6}ImF}lkAd({RZcBB_g#$fvuejY<6?)%Y7v4T3=mftKa zgHigk$f3Tvk4@C1$(b1jgq(=uJCdDGTtUF$4k44|24%Z1V^1MO<*Q={{Z7Nlkcx{P zqehN)>JVY;%VSiXYF_V7poDn*OkCpYuf}MEy?b3XN+9*!tIt^~*CedJWho$6x+O0f zNj4A|(~o51QQ=|WD$%s#3eoB?+&j9e{8#05%ZEzL4y{WhYBUL*hqYTm6ZTM~ccwTk zSgRJN+*B1StraAL*2t|Qs+hB=aYdyt7Ijdf4#d33I5ah)@bxh-En0^sEwsh;pXmaq zfcWulTbiRZNr>hM6^NfK@E8NGt%$)cC557=KISh>jX0O_v1(;uEEhoHlt1iK%0kUr zqo^wwe7W}j_3|H6epAm)MH`Gt$Chj`cy+d^=TyMK7jp>~g%p?s(gaK>^L6SHBD-vA zc~Si;BvWZ7#%$GKYL^CXYw4uk%dGh&TWG~s+nq?{UP~~y>rkMOyusqkv6B@E|1aS^ zMs9+@zLGbtq^}G4w&*g(GUi=U<>7LYrWjWKMq6d%5E9A;3${G0U6dkUTpHo}v^2~} zMhc!5kf5~3B7>yMmvu40*fHKc65mwed($wLNsd&E$eDu}ut=O?Rr(xPW3a8{(}ssB z;1e-j@?;7VVjyuv1Ib!OkC%HHYe<+|X`I9msN0 z%kVaaRAgFREK*|96M5|9P9CwKYR(>~Zcv?)+Q67=3|-C{Xw(AThEE=9(%dj>9~$T8 z(uJ~ldWcP`kxEl5mGOOUq##&KifOtc#ZAmq!1)RVg?0a-!}cnlVx&?R1*0^C!lDDi zqo{E}8Bk)OW7h6rSMaiaKQpIKo{buoWXcB3LN!=y8g;7ud`v6PNZ%M}ddb2y2W}QS zj%c$H8ILUgptTffi!^1SZKC$QXdHEAhbu99pk3x%D@m679>*oG@ z5gBY!@2)EiRdPRF*p-;Y%uZyvd zql7}4iSi|{Unc?HAx1fnq7xigt-~5Z_V0U#$NfY(a9?WBNI>krD*?Rk+fPLC|NXJ= zmP5nhy0?>6XL(CF#I94%hg~5=q^;j!4%h`mX#R#xawL{oz@X=#Co14u?ugMq@<}Kr zQ@G=oaJVnX+*K=$nX&+tHCnCj{IA5lUDrf^N7ANEBKsD7FIE9X?CD~kITGySU- z*GM;$di&SNR;`iyEMkc1v}(A*a{|EFs0zjSS^%D|Q_tmW&TU|VwML7E4p<`4|HB6@ znWXC175FLN14|XN2TDDgGZ(E!VaH+Yv0~cV?e8in*r@NA_bzNtFAu{^eoIG^SJkbN zN#O9aN>S0OiNcb~^4-1|s#!n4lM7Xa zX&C?OW~P;CqnS_kY_UqYbL6XBI-Kc52a+~qijiTHO_i%Paud{+C;Q*pcKA@1C3Y)F zrPu9eY-H)WpI0zUI@&ee%`0s|Q;8xTxe0Y-O5%0PY13!xQyX3XSy-&&N6AUk-)!&7 z1Qth@bWtqzgNO-S-6D9zrFfT7M?uDrs9s6Fw>XDTqDO5(yZER;RKO_F0+mGqfn=3- zGQ{)oJ5)#NsgW-G3Idx67<8y&y_&WV4L((W=eX6_iqg9j5Vlz#?!;h7xGpZss3dZ? zK*e^dj0D(aP@TSB63VN znOxHmmor!t`7IE)joZNiW^JJ%lQ6i6+ZHKyn=e*w*HFV@jpi=s6Wz5 z+f9deIz4h#lW{50=$NkB+R1^E1Wnl z&8Fo7$HY#qI8JY#`TW62Mxc%9`gzjMU<_uE#46gRv%6ea4o_7>NS<+0?>K4M;^-`xLs@9@lgX_s<2=7%{cszqFLK=_~qTN z42nf+UMVgaap{%B*~^qnUV7UZWaBmdrU}80nGUfyiEohu=y73fA2&vHCHYW7FXiPy z0ixtfD)}=AvoC@&(DvmA34P9faJDH_9m=hM=@Bqy(|*gIxECo!65|1gOULPHUSq+{q5Z+7VkX0mT!9Ma!}at& z@?CXeh^)2?M8bj|b5zO#q%gLpqbTD$oPL_9HRNjZAZW)O>fY3~RLwnT91UR--5G(t zwVRyeXM*F$BXDOph}B@(acd53)tbDjV7rCq#NNmU~eXT{L>X%kWET|Og801Q0 z|B0#kZz1yQTO}1jrB=EHs3!DY6W%iMCKpu#^t?;bwWw|!XU$ZlQx*=R<@gEF4e<|S z=#f%5+f53nKC?H^s7i}&L;Jv1lW?rouhC*0PLa596)adjs1 z@BU@8_ptu1UvWE+nYp|CbvTqC&!@2Eb@B1|{pBY2k?7HXe@71izQ}lff8ANcf&aVR z-u^`|W#@H^&sbc4llo0q>{ZJr#XUu9pWRPF>~GzDZQPeuTrW;$6+gcyLSx}P@q9IK z`X5)x4dtl-6ZgoYamwz?Xgx)yZS|bF94*hE=lSt`njhz#BNCzmc^8OA@)QcIyeRpv zW~>nm7L|mp#y%b*b6e;zNA%IfhWgOwo|Bwb+$y|TW1%V7X=-^ zkWf%6LCK5H#CRT69Z^%KNLOgMt=K|O*vT#`dHTJ=xS7dLTw&t->uOX>dhdlL(o>$J zOlyvVFV^a)&Lw-2`#9^$HJs8bqRXr?s*EV=y}j*p^M+k{oZS3vU{eQ@blfMDXRzfe zo6&JbyMy{x%`qGY5U{7^v^H*%)j)L~dnln(T+^3T$Ht+R9Cc9?7m$kY_T{;`IANgo z$vB1P9GpwsV&zty%9NtTbJULN%R7(J+=e!WOm8*K+#sc6zdYJARv(q}5Ist_lD+TML^!9^tlP;;KzwgpvG6O=CL_k|`vt61 zhpe(k1l3Ok-h{7}Z&6~FjeU4HjDm`hDFuuYlJUzz1L9aZE|kWL zzNV+jB3a^i_NPe*_ht8q!+V+%wAbI6FdUcLGxLNxhP) zWy52ft<#QrV?^HPOM zt|V_e0&&*+VQ`dl#s_?TBg}!%8HZ79|CT2c3(=;b9++DHJ`@YyJ!QsO2n)51(#W?7 zZQh~IuGi86jhbDNXeOeWT~O6A4Fa!WQBCsSmQH8otdM&vWYP`B}! zrF;DdAere4rGVg<)m*k>~Mr>Wvkr!w;I7q*!GY7+6I3dV zh03DAs)Xw%5V7D^*YsUdr0r>oU^%*&e$l46hq~0{QL;VsNuxN0aWX3^aN?aMGb@VG z8Ug6hqfAU*mOWU`krY{;NqVHi-A+fJ(vD3+aG6BA2*q3MO5FG{{IAjq7;pPwEpHIY*VY}Cb2n20lGha<^A%qrj52H0HFY?aJY{4-54*ikq+GpA1s*7$vjLZL>QeTk)FBR2ZHR;s-?;Ob15F5|si%YVm5 z*hpBfjdo7Ys0w2Rn^~4~>P0-6yDGIH`PQzBCE&m;>b2YExD?*^>HO(69FGUy;{DV- z9`|Xoo#SK_L8MdvGzzSYQckIsybnZ10&s^ButEdWsp|0HN3 zDTq--D1Xij*h(ei6CsLS2?#GWJ%+b^i2QT>mN!nYbLFzeFYmbPa;S|IwmQfi^VJWRen-H!< zrOBU9nsA4%#M*gTpDz_@K8h&{LS^f%E4y=d0Od4u6bVEpA2xI(V~Zsxsz_3teuV6~5>E`w`4>qUHGCNkznS#O4bfkCbEQ%0anS zR`gAGBV5Nm*#*=eS7dO?BMUNS)aM7(+e-l{IaEq`_0cQ;e)10bGG=Z{@kGkzLa~B~ zq*lY&foh0(f-@_}!ms^2EYdxqzVzjPu;OoJ1`NfnHC&73J#mSSaeO907Ly$-=pal& z$%o!cOz7hUKaG&37gIE2YwQ1suUME6)KVs?KrGVXRiz|EmUV6`1}+yit;$ZxVPhaM z7LwR)Xffu(r3UO`i6%&mZAo*wl*q;X-FYt`oh`GAK`Fk>aCRQ-g3) zJ?5|AV6W0P#p|-n%H3aA0TZw{wIO;MYZ>KUUz$G_#>r;Is3z+7#PqcfOc-Mr$I}qv zx^-j;T;g5I`$=!cM&+7v=2-QhF4Vlmd?d}uThV!pm(|Q$$ETbs;pWTr(=kwO2O`b9 zuxa41(EIC_o=`34%;c$9(cpyPteErsRqmN7Ep_F5X-eFEV%@S>=!!%193Gm`{(L3+ zkb6flP{7WBoT_Wo+1B`-r9dq@V~=z6Ss7zO%}|`6UukfI7G22Zj1pKq{H5-ZEo)*; zpFm#@l!ZAGCw!sml^%f6mldYLc9Ja;=Gpl6XwbB8UNXHR<(f)`IhIykOsF=Ynms79 zm_^*L#5)r@QZ?+1+m+I}vOw22_K4YHn`V(W_~42=GD#qDdYq5LsBen-u7lyPa%Ym{)*0=R0Lr708F;*TR8 z5r$hr@(;a-h*AwJ!W^c_Kv&|8;3ABwQaQwJ?BETx`U%^ak`1|UMJ&?>dTOLnGlfJm zUs%w!rbJgoiYd{k=`i^#+I49}ic&&S9C&#Swh7^&9^*G}>I%cCMPl123#TxMyY~aV zGm>lPrn^W>no&0KIF_@Fx=Mc5aPSn-W#O9MDX5xe?(F!(xs|ZXJ+*}vi|~H7R4RX zEj4Z0OYVyb>W|?V?zF1LlW4fB^lC`L@UvZJYkSuZO0V!~4;3)G3g})oi&kUlC`!my z%X!hKnxLN8-D50Dfm7U77kp*Z(UXIz){_&;yTV1)oXU9PoP{9Sm@inZU$U#7i07|@ zIv&l(foT25pWo2t}&or$~tD#!CMABSowgtJpw5Ri& zJwO{tmDFcpEabXk+VwiR7?umf@-Jpi%f!ehPN79QQSxv1hTYU!x*~;O$7M@21T+l? z#VwLT8B&4Yd^{Ki#%HW%p-EHuKQFV&TeQ7@_eQbe_%Nt1vHdqb_p`r2ef9RM(zF%? z&JQ1(iExb9w5bE6oeLc~UfkRF+iA^Sy~Jf!LIPs^`W?>?Mn94CM)&{(=XY7LZoX;B zX$%S%UfwmW6ql7vBo8SIAt#8$7%1#X{-sX&GScfsx!~xIMNiw7uW#M*5)X-;vS}H- zw+SZ|6UXrk_*V$7zt5SEc^>}B+f)idTJd8J3Z&N5E&0fp#Ld-G0@=cUE_ots1*VC5 z#Pzp#NugvQhg3Fdc{JJvkPy2P*j2evm}?Zb}I@}_maS-8cBQWSgy<6 zSOp7?f)Dg8+dLiS*Mg}udvG31NNuGIH%Q|xj7GO;bK98)gwd-Ii@+AxEd zr*;t)KiyiW7hftHDxCVH7^PS%dCS8kQ;$e&>Ca;~{cWjsvq ztO%ESV<8%rSr}?{>tWN%_0LdLt;ANWa*87#9$FO{-x8!=lBtNYP*p{PSV&9N09oae zOVrZ4e)c!T31WQSC2R!kxOVwv^Oke8pW4=hqXJX1d{kFiMOg6?W z1-4f1d<78+Nj0WuH{2@2O`(ulit33CQkcJZ<1P~y3Z+&nRka*1=Brc-khB|%Xyxag z@a&&be{}jH{$gTP35hqC7otG*2NgzhM082%ZCVBQ_sSC_ibiq)pC)G3@Qm3csCTGamR%%gq>MhC1p=U%5DOdOF7}9V|>LL)~_5hf9Y8lZg8{& zWb!5y3b=?AyB%QZWTB<2`+7ghfh|CCF6?DPjvM-8B)7XU(F}1H0UJ;I2(#fWjd02{ zDvGkoo&yJlKw!#fYf&yV>WiX06NW<*`nqYLM=ymc2ajI^&J$eIdPhYC&Im1@^TJ`i z>eLsZNty+vMI+)VgHaV?Aj5`jHLPVmCs%#$eg~<=MDWI>JF42ok3||a(hfFDGK^r$ zjF%(ZotWUr*qRY$MHQzq@jNc;p84LMF4UWfeL$un?lI``cB0~Z*e!*-7GRn+xkCAc z21tV6az^B7eNlYVBqoeQ1BnO04{0+p`IS@IkLr$dL2hTzV{- zzEUU~g_bnlLU{2Q#gti5;~=10M2iI$EDXjNkYF|O+M`^0RzGe{k_*u)sjdpPuyTyt zC$5!M4+&e$*$~Bt+@jkR63%xMVOV+;{W}=@Z8@Jesv9ESxka>D(wMm^>TAZD)*MRN zhN!i}?n)C@pQKGUH1mmAb%xj*W|)?`Z#6z~W(mQKzKzD;Zngs&gRHeLxphmkBPNx# zrmdY6wYlrYGPNsAr5gq5YgkEQG-U-d^0#t^x+Aa4rk1ozc%6H@V)AOdw2@h@S}kws zAJz5r@IE#T_dnOv>sIXlU+O}Kn~nY9JGlOAG0uv!6{hnE&`qe$=0<#-+E0=1*6YhK zfpT#_h{4}aU+4e{)R=Tjp2PZ+^K=^nPd+O);;Gtap7IQJ7*bVsYPy!#bpv0dWxt(3`@ zm|N+dmq9YZ8MG^iTBnSlXzBh)(LE|Tiui@{X;e51LK*HD*M7sK;Ye3EBFS85N2(0J z)BUF=W7?ws)0qPDUL2ztP%lC(d0k{LW8#dVJy#O{;~$qrmIA`Fs&;UiC6ZUFBtdG?j2R8?d3l=3+sZd3{&C7>-InHJ)gWA;_bm<2M3h+Z8K#^)R5z)!;9--Ecj;yBtae{IV?-h}3WD zh^?l$rA|MXGKTnoygl%i#DyJkO1>E&GDRi_7c{i{=BX1DTeCoGcv8M|Bb$$gpR}gj{SCBd%r6te}9-JIc}*5;I7-7=DPZ{kDafM1!!@OT?X{ zP9wl6;jU$IXqX?h3dK+qa5qn|Q>IyX#=vlJgD5vNaa?f2V8vnr!>UzsO8WvunGYmt zLd9`D%fi8aTQ!(XwOuG*hfaWZLMQRQe_38tCsA8 zM72>}U*KN4*4cNws`5X)meahDs@Byxg&n(MaUPRk=;HACl@SDFiN#W^Xz1_7&IMQ_ zLRG7#f68wk2SBi1XkT;}N%IF4`(&fLWp;t17VwNdjPJL6T5(1P7g)XIe^~?0(-f)X z@HkN(InFT?Rnov!FkFsgz!l_X8)e7MH5~A`<$N4df#?Lx**>l!$`#zKhEmL)iXC6?IPC?H6b)&tP=UkyzC5W)g09l zJz?|o4nlqPp9AiegDl!-JkUC&ErP1a&RcJ zEU`b;U#HLR(X{5{&D6!d|BQ9u?4P~VyWvl4DoX76k>S$#bt%?P?Oyy-dzdHN?f@OXN_0(rZ-+_(>CVU4Gen%hquv8&GKX=r(6Vlcf0ST_pHEl9!I{1Kj^7?Ap#|EajAD;lPb%~gO=nyyh-ASoa@ zJ1tUZ03lHEAy`WMg1NRZg>8%ee>u~ZZXstaM#&(TT}8jTohO#px=*K!LawTHBw7py z`dimnnDDhODfRxkW4&8L464%~vX>+&bx+_*9}ZaW{1Ra>$c;F0S8_e=*ujD*5s*@{=(b0?Ib(vS5vg5TcrSbKHk50vHCY0J<>>FR_zJYCz zJ$I*YIc9Ybk#p0;YVf@(8pYvv>ss>dl@lmZ-eqJ`%KS4tnvcmc@-)rfLebP_R*nw; zutah%L|?NVqS$!~$D#P1Q7b~vJI3snl05!5lVYV4A`uc6Q2*bk^**IGx!O&_T2m;%+30=>di!+DobTZuOU90#gLS#$_uwW>q)iBr8arZvJ$G1K)bbz zR_i5CVxB3B!D;#e5VbzP4*c@VxiGPJmoia}=CJb3u~|boWme01d|R=NzW9+5X*ne2 z=@lEPONL)luTnWk)%GOhrq-lhYyRPeAmjE>SH%~!c!`vpindKxVkE`(-9H5|(JV-u zO{xRY;HQ-hB!zLs__LV?P+<%nLq$S464T40^)bdFyw^gq5eq zy(I$Bm*I^efY)S9^eT$6CHWi_9CkxnE%EBh2<5$H?<~r6 zo_2a-Ai4W5z%JICBp%ETWF{t3>4|uP17!n6zks2hsH0JZDN+XXy(^z3Rw&vyv=#H` z`D#bGK_lN`Y%8vhqZ(Y=KEvY5yx9=CGl2p-XS{mu-i(JSI+N5w#jg~Y_-Ab6)5ZOE zr<1RpAy@HSv0s+v1$#@cC%NaUjo`go&D5m*jtg?CZQt)x2kk>R-YTs){go)I>&pAK z`bdhD6xGKQ-@-DTu^Pc(Q-&hvn)f996N;W1nHpO3(jiujoS+~V@dqz}PFc514_ExUFSCmqRX{$iQ3#i+`e(_xL$?SJJFH5o6Y=4PK_h>;we zqb#0c`!zEb>Wi^{tg)fZ(w7EP+Jqtn#eYPUf#la8YxCN^m6|M?t9Qp0adA7y_8qA6Yk}g zT#bxp0(|SV)E!H_OfiEhT#6lvu8}e+89(ocx$)$z^**`5X7Fpf6En)Gn=g`_Dma8%6}^WfUvL<190+R3{mOMU2dr zvz1Q{pMlmFl8Y)};*IZdSmdEF>@jHFjaT>Os0?%=Nwu9oF#4**d)?MXG1z? zoK)A~ta;(Y7ZPiVbyp7QjS;)Ut|EbSx(Bs1G;t^qqC4M=b=##WXNj2nre0~AU$`vn z(Zef?BA{XQ2svJPY1K#;^Dp;PD8SGRPZCTgQl?UprDI&II*dHYN=m_ZcP!~hMlPOW z!mZ+*nyBu|l_1sFZfb(?6aga>ixsufHx{{NF+8$PAyf)P;gtr2He}ewqAlSwGNnB5 zR1G2Zs6c&@yqmUA`d~aNCRKhF16r{xj)XIADypSPETU2xq5X{vwl%t`zmRk@emf6Gpe0EmQxfcgFox6-t;22C6@p&G}bm`5Q{#Pbu(+Q}~Ts*EywiR^NWok?-v8qw1h+jSa58AIAGnA2w zl)`_v%5eE5$`pS-^C5ZITy{(7^=+dm4P7bdt*GAoXt0kOwri+0%U7p}D>`J+O4BPb zyHHT23X-L4)4@~6W_cwds5||NtHz_Ts^L-(WY!re*`j0s0D)|8|T8;rtn_rR=G zD+oyMNvSh;fjbgXl(Q%&`zdaI`sp$%a-kXV=9F=$2({*sr)j9-28^*kRabEd&CfJV zJHyhb95K=m=vAwNPJP;yDE{~=2kccJI-oe}@2SP}2)v~h{=B7N2p3#XtDQTSdRH$( zm~wikGtNw^7))0c{G-#$!*|5vR_|U!y6>Ba^ZaZ|&k!A&X6D5x|2rd-y6u+ZhH&>X zd`ED*1Wz_tPxtG%?G!eWQ7A~yZ>sCK-?zk6#scFdDH!TuSlBd-tHh?1>I#8x^ufz4 zeR6SLxVjZ?&RI$z7c)fCkYBS3jQX#@K}%257iaThG%sB>$nfVrOJ(f8%T8CR-We=_ zOuPSTt%s&4WLKZ+jqft=SKOhatNoRg0f~ifXx_EIGJY$Oj;gcI`Kp-+PgWc;D78{rW?Q$YpR1o5Sklgd{p&F?h4<(O$rpk*OU z6g=mE^ZcJFaOMY~DQ+TMTQcS9qY;ji02BPX$3pMV-naiRWmygyQNK^sm~=bfNF>D>ZA$; zD9Cu?NdTEA!spfL)ngazgq%5tl$@1~s<0hSGOBtZ;A#=_PG^)3av-#|oq6HhFubpi z$491{oERr$Rf&Uw`M-3p-hn)!MlHUYu49Ehxr=&g9WY(0iQhhFmt3%6SiE70kp!j- zklkL5MZ#qv|C&Yb%Bq`n)NO^j7B=lw`gvUZW6)%Ak5$K|r*67)&h4tHxm2_RUYgs! zo?i(hAupa;%+U@Dq^QoP~nHL6}-_@8>uj5d5d9 ztJ2_>;fMOn-Ju5zI*)mL$`vD-e^OpYFYBo(qLj^-?==#dz@DcOn7hPuGZxK6nEcB@ zz~s+8P8lgd)_9KKW6xbYr zh-992DaPbEPB~g@OC(PQn~X{rE@_S^eFGUmj=V4=ozT>fCxPoMsINq&2U6m@%r?bK zQw?0G0?ZIOa4Kf*US?2d4t~t6AZCD_XbX9pP&6y9@vp1VP(Fh!$0bta#t`{EmT^bSCyw^0yag!qO`le* zCISaEOw%C{@fHB5h9S|#I7C(jU$gY3sr)7ps~}wae|O>k)xC@FPeNJ_w;z}1&Ap!b zUVg}WDCw?*FRg)xAY3gNkH zi{Fwg|03E-SFpY&3mrM!ucW4ksXa`=HIS!`bq0*|I%WJF>aiawNS8oOo3Y|JvtGaA zm3E}%jOug7Or%tWw$fKAJGAoHtCvmssL$rSbjG#ofLiL0zvEqr^eIOO=*kM@-cjMx z?=0BmT(GBhr-mzxU|=xiSw?EM>*0NNpFL{O0 ztiF|osrg)WFY_C?V{6w^={?vKi?8WVb#v=fr;K~@(VRl+OgBSxuNBF_vXIFql9zA) zOq@#U6R~jts9f38-boVu3{rz2N?5sRnyXnLdbgC_fjVcisGidKbjKO~EXPh#8GlY; z&P^|4W}dfC;TQ@zB&Rli!X`MLtQ4h#bXV*!OjZR;oV}}+Bg3HHybc5T;r&5ND(0Ww zk2JMOrg4jTv6NV%uEHgfN6+3;Iz&2se5GR-*B#VlGZTK8NKB=~GkXiSJ2@L7`QDNa zUrXj;WA2ywIc<+oL>E^u)Q<^uUJVz;j%x2*_0)=N!RW7>W7o{%Uo$Kf+WEZMWbjlQ z649eqz`=z@b0u=PRWm50RK|Law%P9D7O1E)N><1Dh|8KbEMp55<|V4O6;eC+Mk4)W znqajXSlQ|KN#=O6IDLG$l3p%yxz^GJFnLjApdecZ**NmxQY*Z|eR{-|34b^)v$-#` zc7=TmYMxC-SKXm{a_%Ot*r{U46KzS&_mhs-zfi{ktP4o8nRPY2P;4-ZT}II0SDQgp zDp{US=0@XfT0_d9tb0kuX-o_fY)$s!x9Q+~Dj~6&)Zne*r>6zcD2eBvQyBl?FKx@# z|7VH>Q4SFE0BS_x7y*)9-7n1Qo---07*Fsn$Hm1jyrRWRvygA)Xq z1Eb%!5~pQ#rX1wu`vK0;dA+MLM^8`FBa49lDj|C@_AC6$)Po%DJk@(wOz+lf#H7Qi zB7i0)QL5(?!=>Zpq{=Q$eEv+>6UBsO6lW)$E*CNc<9eAd!;UZ} z{J$$pQmOZIuQ!FMaM>Sh+Sen*m(-6;mq2UXO@+?AcgBZcmPuD#g}*Oqy-ssPWTEKl z)w-;Jprui!m*$Yfse4G{0-}Lmofa6nEf(NtRX+E_Z53de$6T(ew0;K9?T%Lp#F?e#K)5p>s*>CPEGYe645Xj2d}%4;#VvlgVMQ?0=It&SBJNWUV86T+gPot30ZMaf-JprJO+i zI4(4(cfEL&SN(;5QVY-@` zwC)UCqnu9%3{)-5_-W2^nD`aFPlU)e3dJnBmUz`!NT5c&6=>bv`>ujBtx0jU3KSDe z5^++I&M=&_r=AB(r)D!Wp(C*ajwYC!TCuAl3u$&vR)?ixClt}avyStsF7Xpn%6y5> z_Zjcrx}+$PprTi$Uqy#XTGWNrZDo!$%K7DZt1$whSS1`Zd=M%{Ea{wIg(&IzKYj|b zwZu`t$*rcx1-Qv^(VEk}Es@$XAN`Yz;~OG*I)#gxb%S8FrIsRfcvUL5k~9-copDr| zd4sMgjRiJ&j^pofH_|!Y53E_ZOiI9C4?YfSTUN4v5r554@v0Qz${k$!T|Ni5r_p~C z{O#|brTaUd`u}Zs(_n(8Er)$CF^mF4YXJ+YU($oNKAxmJA zLnLjU4_rLbjO1^ge!@{PN!2$yH1b}23*A2q7D~q}vSN4Hu;98Hg)pnGR#_}rJ|3#5 zclfTp`z)5Qx>67guBdMj=#x0)?&(B+01$;Dc`}r-Ddhc%ugdlff~hE0EdlGAxx=m4 z6izzz?3E{9-xd1W{l~0njvDfn8QoDGvGo6>>FF+&Rg9r6L3uFhU4KRlr-6QkxQ#|z zq?rX0tP*iNPac%n*&q2*6H63z#f5aTS5`n>N%gB)dH&S389J*9@{oaou&NnzzIE!S zhV73%TOTUbbR~$7SU{`imaF4ecO^v#`8^@!Odh8Q`CsM4{xax_1436mYJWK>>cddF zsX839#~k0On;v{i@C+*LNsy^e9m}?^y5rMZwDT$mX_d{HGw3|_UQ4NNUv=qSVNYVY zV@SLPecxcRmN(fhGp0}cH%a2%oEW_|62{cHwaqzEdIro;R6Oe-TC$MQ!czX71k&va zn3qa>XRX#<4LJhOLSU%i>@9}niv)%LtJaE*tu&PN_Kb3umnh4Qtsk{r6V*vpC)|@> zEd)d=C0?SMC(Dc}>xnH9O+b2x`k=p6(4C5vfm;ZNgZ#B;$@9t=caR$V+Vf^pR5E;n zOf0%s)XyD8XRwi^QY{`O->0ca-uIc6t>B?{sJL`H4A}$oD?Z-|3V?~JxNG%G**L($ zM>q9e6z3IpuOQu4c}b3F<+-exp2DeDIyl$5rmk58JzrgF!H^GHgRjIEYh^6GIU#x` zNj#RfrQz!!QPSGi!f4IXQ%qQ0vSx70F-*U!O>0b=rt39@{IU~lzLx>>sc5gnP-F)V zphlYbzJT@@j8F$ABiSyRvNI}j(nc`LWH)@_^dAYCq}%%fq;WAa!7GU5%-2aoiP9AC zi`!pHjl#)_joa<8HPkREL9}?V*V6IZeM&~UFZJn)6R(i&^`0?tDwBwMr2Yz5nx*$B zBG0PXt^B@8;TE22eA3F590l+#1k%YQL&E^oqdaB%P#+s~3WKg|B*GEG`f0}#8FcSh znrU1X=xh-a#4Cv$W2>wjaRP_SoN4vi(3X zQ|=YmU2bcrptorC5vdLta3Snx=SohUtzoHN`f&u^w3;5Z>8WVvS3q+m?7rU^flxVj zBThj=^)AYO>`KpB3O~J5oO!Wrej(T?)0ZU*I6KT#rQIhjkg^rt$I+GzZNH@Y!%*;| zK7`S#pq(0?zs^E}f-|;9xs_`u-nc_}w@|1HlYwK;yedkB$Ba=Y6vZgTNf6w_jVUe$ z`k>DL1B!s4ySR;Q{xQGsje+v5$Nnc8rId3^@AikBvY++-UfD%-sRKqmZV9ApkLxMN z$frs$;Sf$S0bI?F8ACwglkrrPl&>_(7-x93Zl8N`Cym>QXB6xA%4x*6o)bJ`x~Bt% zt4dH!rMpikEZ9VJ*~5uwQ7X*xko>AB0)RA!B6V*ZZJM5OPIyW(-bP0TIQF%sXS6|% zyK-_35-o4})p4FzYXw~`f)@h(#QKblV)-!Kfw;8Zu%Hi1wz4 zhz$`;dmP*(2sUUS)oc{<5&?8Qg7%AGB(wk2I~6UVN3P;#l|H0WOj8Fb~x zaGpJR%w^Rfi@cfFrC~7ypIciRi87Cja&od84-B&QFr6aovM0zrY{pFG~* zr%p=-lHn0?>$bxX$mvj&BT52|ZTH0y@%baT-5+dM1C`Psg?7`u>Y4 zhU~8$=f_^74{bSi>4m2o1Fv{y!a^n1EhD%}K8HHe|I=@f@}t>=l|?wmELW8#%QGP% z#8gIhs|zoAdVZ0fJoVI{p&p@vbb_Afpow*50qOOip;RM*L;Hz5*?pU!^y;c`<}1*y zoT%m1NzAWIuSAzFbjiXV%DD3?$@M0Nq;i(O1K+uklF1i5f2FQ0dQ~W-RisLpUyoiP z(_#oy7Z7!Qa;`oq!uFj(KklCFuXkly=PP-Il2(HZTS*K!T8xv$a;V&^XViRYj%s7G zI7{_ga|miGWd^(~iqni`mnAFHhFuxi81JP%Kp?K(tZtc?dC4ZM8Z~m^w)Ap`E?nHG z$5awX`GrbSeIyFhNF&rwjxKMjG;7znnl+!&EKvyax3L@bs*#B68IMut;!G-$Z7P|l zFVo7p#~8IU(2=CUs4MEG^2l9(d2*zG+ok=NdE3bC*4oa)!m9+HT8pm{%CvbD?m8m- zo$B5(mg+ye>VaZbBZ=kUU^20y+biw9C%~dwxF5pt#}x(QLIiZ`cHRGb!B(j-B2?VOzEw3s#sBUm|{WPTso-mPbIor|{v2mt}%Q{_7{*mj3Th*0|qbWm{ z88N=Au#`|66!MQ{H^0h6RdmQAn62+1g1oB1=_i_Z@7VMY`lz00tl>R5icc#4t;&gL z|9FgOt#f84jB_j%Yvhj{h{iEU)Hl8#9}0#B;fRl^iFzMN=kah~@K}1j+2JPBiTS}! zTN92o#UB}rGAaWks-$hUVEW>X+MXTqWmc1IC~@WXMpkkjOGXK^%|sNmaMumM|q6f z-|cf3t!!U*Y6_8$vkUK4nT2NKF6+f6XV(2$pN}EbRHlD@3Xp5g+d81SP$;_9cX7mH zl)%NZye_xK5A}^Q*Ap15pNF@`Xc@I+KB1{t;4QK*4C7W{w;;7S!$F_smGNeZNtN+a zGxIp}JLjk`#Iqz6Dc@k-TNNRjuU`zY!ciSSd?y*l(yn@SRV>9-6u|?{rd1_zyez4Z zPcKn0PF^t2Qx>@MHzTB<^i#;fbnhHv#d$hp(xK~tDB6BYTD%G5=ngGW|07Ha!~>HH z5a`LNrrxEDy$&Z6$A&42jh8JCkn&J43u z%w}kZesjbX1P7zqo=!CAtF~~|bniwL8_Dd446npES1SRYPaKUsa#-^wEMdE%d1b6H zutLL-Bu^|Mdt){*!q@oe!;o=>d6;*nVnA@dO@Y=t`BUhaS_Km0F^FSSxWN1lIC;n} zIas@#CofK|(VBJ2siS3z2OTg#c;gPUVzg!2N?4 z)|5`!o_c$1o}NWAQ%rF;6UoMS(~;hdLU%!goYCraGe|1^Q1COxz95RXxt+`$OjL|S zc0DtQRKS|RPBu%q9oyhkNAReW%kth1#$ z5olSx>hudGG@P(S`rs7hRC%A>R2K@Y@0EaB4_<*_y^o5yaK-wgEB0#S-p}7%#Ve&D zQ+|!+$yt=DwD6T0y)4DQwgvfF^(D8ulaKdw8!MX!?;k6-?z@3#p@pW(V(kZ zV7n$ibt~eW1yo0pR+lQXPl*{uYwrUo+gjortWBB5-pCZ$Qglbo0PX)B2IeDP+n+Em#Rb*N==y^-r}R3@8ITws*k3V@zfuR57PU9TZhEK;>l zm#dgqHIeagX~l$%YMFTiYM%GZ;D{CYzprrG^AAkAk8O6vd$kraI#_;kKub1?CsXA^7{AGN_aROpy%V_jJh%MWkQK}R?+E_nL z@`#}*CC?o979*=pQ;%QW=~O2TPSmvN*OGnodJoPM4oJhEy6)H!`U#^5uKksqDpS20 z1dN_T)LkbFj#q^t+q{>uw5OZ95fxd#-&+G%RPq-TPs;a~RP_z2VNY(qYD?7_b~;;0 zrX`vs>fCPdolW^oGWP0sne4SjW)&3MgX4)tSS;IC^+*>GECkLI)#SXbSqp`dMI`%` zQXv0WU<7?wE0?gL)t{FQKeBPj0^;lA_G3C``y@%#zhGceznr&XjH?i zZF;TcR0The@l6_T>_?ij%^IrMGsZNd))=CnWUxf|2k*5bF!^r)cLhz(f#B^iToxaADw128ggkamj z{-~b1MEiqV$ec}|>R5?c=h=oTjWL-MqUbU+Ux;S^Lf2yB6^B2XkQ%r16Sw(48XInb8W)s?amQEX`6B;FkQ^}+$n&UOdC#cUl zr1A>IvSm@fT>*hxny)0g;8hLOtTFhbl7)IdWjz4{-SsY*Y7?JULZL=i480kcN33zY zIsWvEF`-mozLEsLCHl7T3r@ zW-d9B2=eI-Z2JEZ_;8Ul%Z^MH5{~bhM-?=+#ufDM`M@pZTn%;YmHh8El-HHJ+eJEO9)DP|F61Z6zRg4)Rc0DfEXWyEH=?;*@~w8>3xa8M$!S$Y6ULmE;dT=Y z+#OE$y*k-P)~zf^WH_~BR=w@l#q1NQmab~2PV$MSz6rqLV5i5eHZfZ=j$73k%~Pls z=}2|G6(=OiuNjP!pVo4mdE(!yl67me!)29#gubR(B#mydvy7f%xqce`EE(o$3XbZ` zu{htNNlLTIMpw%7w;TUQBM54)a;6X5&zpZ+ZUJ<{$6-c(C3g?Ahe5C#!G(iH9K%ZO;s@A?0;B_wF4y(%Q zrYUMkY4!S)>Ur8Xv($_oT4WTRD-{gwdq zjo*QRUUA}@u2%kBW~`Nl@n1bd3@;^K9CQ3dVcwkaSYl76`hCjQbVd~aica+IisG=( z9{-)yAE})V=wocC(;4Z`2~|nID!P)zWiJb}T0Fwh!Jx+6;mydI_uHnet!u?XuGEM|FZuzG9kU2t;{XRHoS zQW&dPnq7GH{TV+2yfeuvNL9i5?k;j26`%U_PE$r~KLc6Zm1NY;3A`fCP$_hfkUV2g z$-Z9~KrFvgXV{Czxq6G#oMn(0@Mm#0{d<-R+G-kcK~>nXFNQ{*>wF+O3IOy?ru`Y12#}hS{_v zWtMgXY$9Faiw$M1saEQNNgdJBFHZeF>c!A^;X0S!sc|QLl4yBNek&Qn7Wko!!u%R)XN0&j&aK@D&*?VW9-Usfx*Aw zv)4PEWg2-l}WujMXp(N->E)7kHDtI43LkQEKT2&0n zXmv1~!fGYrqN&cW@8PGBRchu& zxPoapXk<*&ew?L}%1K`OGR4CqW}>m1M;ytLX-SP99q(N6SSl+n7xjVcA3CNhuP@6y zn9Insz5MKE)p3apAJI8i=z+0nL;8Z$wpRJLz`<8ns=rsB;Z-o&do|!WG{whDXIg6p z%~BQ!iW4xRTznkG%Gi{=^0c*9er_%?>MpCelwYhuz-7^Ox6aFIQ#m^fg7!`6_;1-~ zDUV@$MTo_3(lp|UEYnSj&nqL}H&w#KWY?lrSZGzjtyHJ_ymG#Z#LFO272_tW%Qu+) zMz9~YV=k%7!nP(Ut1-01D#mSb#HlP=FK39X)9Gz?G7cb>WF{_dZ$7iN#`CO%tD$UY z^)sJkU8g(VgASoA7rt+1o8Oa;Ri#zRYNb-;n&k32RkMuLFPL<<8inQ`V;^d$IRlJ;CeCeBLZ@RimCjrfc59hHVQRbL>jH@IX1KDLqlGx$8iCWY zM~{|&-e*Ed7l@XI^&pi4hgwVW|Lb3}sXV9)d~vabLPQok^HJT{hAH0c^$D`|f_L!J zv-$||`#GqYsM+9@Dm5Z8#AfX>VR((nF!NCAPt|Buwhoq4%2fDqHITxo%FZZqs!3qY z*=w~=vz(w(PvEXkdUe;O8cdE<`z}Z+juXn@lt?Vd)KWsGDL_Hsd&>dpPdjyZ2N1+K z56CB6TaIdR8h%d-UWxW#) z%B?*5vX>hkNoUm4-d4|wv(%$zycO0CRpLUr%NZgf%xEl1&a9?L$7s~4TQu_jd**~? zeR!8Gei_9m4E6PO8u%KFiSI7w!^EwHkky968mWq(`lOq$ShH@1WnwdVXkh*hLVu&< z`1UhZJv=XWSu4V&^6>X^vuRzRJMu9dh~(63Kdjk)`; z+fS_Zt=b@p4UYkOkd|2UlyU4I;vd2bC7L?e(q zRSU;WAF~xLB7}9G%~L#I9&cWAH<`HMB#uHNke~;Ti`T-@>-RdZzYZ5)r5AGlVCu12 z$@cE^JlcC$9^RI@y!aequGp8+Vw{Xv);5u$cf3b$gnCIOC3aPJCh^=J%94Gcp7~Ca zNa2|qTRppc5)C?~3!wmUEwiA2f`bxjbgC^Arc+`{nqttVPL_o>F}AC);gQ|W(@cP& zt>En?%dD9c7px3i4J2&V$iT@q9)=NjH<9A_sbsvX$z-&VX*Crv44BYo8`|4JLE&2~w8Bj%%s{W_p`xPRS8>g+>GTOm zz{rv&B9+51Ki@Zsk?Tz<8OZ=r(7~Bw)tx!qe3F+P=)46f6f0TyLQQ1Ha%xFuD5&xA zvUE};iKxf4SU1K*O(ar_f)U>-n+nqjq>50(F0|ZZl1Q2?LH5K84vU2eB7`#8s#j>Y zj=4+`N-RTY;aRMg1@UVP09b6}1Yo71sYenVf$U16mLNu5JrkfzU}0ERR5iWAu(MtB zcy(40q={%?6Uvpd3fNLZkv*-W0=si^S5rw8p@3j)7jL~yBv6YaFDZ#`ipe@%>_i|b zB5w7OIJ}a`ZW4e65T@MMhaypQNy0_dD2iGx_zfbsHGrWcRz+wVMZ*NkRd1>r()NmV07Ph*IRQINssZ9tQwlLKl8~;) z+>^ji3R9VYq34KJ^P?wAq<|EmH2V^`apuZcJS0gW=$thHOGvyeO3EuzNWm2hWTZ7Y zgk_Y}+O8l0L@CEJ1)YQ`h1;zs-2e(em`gB9Rm0FJ$VD+cAXUjH0H785!7#*E4*^0c zDal_LL_)P=+b)m6b}ep(Ij@@YueU?i7Xunns2~YoQxe+bx$6w4}wO zRZ%2|qH|J~L9j4`O06V7C=kNl?FgZc?Lp+NIAw}JQ$?&68rd5E34o|W6_&Zhh{i85 zXZ3;Cz!vAILrewHP>2^bl~fTMRw4mLiB7mOI4WwrtLy+$A(GFjWdixw(!>I# z7O{eBWN5*!^sUu`z-i?u6_GF`dEL`e0YMX)H-Vf~iNGk3$wy8O0Z%~^o(Hw(^dG{2 zkr0?ZO7XWIk}a@`TgB1s4rX~xn-;OiNfLy}c@m`V#R>%EOKKuDGh!)d+P*a5=z0Yr z7zg|B)gz6rdSAp~C!x&)ZDQ#c6%LXq?PPnP3n!Dxr`+?==WdNokk+{|w)+o#IMq9!HdKkVn*kV;= z)X*vsX#$$;ViqME)vUl(kpAXeHU8D0)BvbOq$T?<-2SdY3`o@|YVI)5aMnyF;G*n^ zZk~`z3aMzH5A1o$WBu185;07X7zjD_BEQ$EWQqY68?F}8A?wZ1Ue}zbw=|JRHP5*# z6rcHg=Fq)zuu?DwU@fE&%{s+`?^x9?VLHhKHdh9R9?8_H!xs?>NQfr4cPmwrjGR^P zaioa>g!Sa940I_W!7;n@A~|K`ALiM~BlwUTNX+bJD0z-eP61X6ZF*QWK*&iH1_C8v zf1g?RBv8*b_Rf!gW?p4uv`=m?- zKwL!&K|$873Mc_q3@nvGm#kasf~d4Rw3RLYPbiKv#@1ndM8@SEXVA6TyRO zRt)&aI#kr;3Lu!%4K-C~NYsTY%*5~%pl8R=LQ*Y(B8UYTPV%w2Kg#_`Fqj|;mGw;-?hP_Dd zp*#s-&V`H8UfPK9#Rw4t+9CoK8Z0*tz91e9In~Wz){#$8rvVU6Z8zmK*op`v2Hq?U z+uV%ulu9VTkS4pqpE=e~0w8V=ilv{}tV$s$!ehLaqu^;43?PC)Zq0QnaZVNxh)OV+ z+HOg7%P$HDfrsnysme9aCMN=jB{Z2{xfN!iNkli+40@xj)w^9K}CA)e} zbV=Z$8Bvu}PZZi@lR`>;jY^t+Tey&teVnUodhW#KtG9maXwst0nlt0TP+C)RcXl)DYp<7bxR(#wuzZjuvxc=mY5Y( zr}tmNhS7jTs5HA)YVANG`sqwOMPXo6sA&`{5E*yld{dDjNq9I{6djV?jNQ0Ua#s26Rjd=OeYTIG!R6lIL0p}YhEHG$Fg#j ztAAe-3F)>so8HMnC}zjhs0z&dKdGUTE}8k<^khjD?c>^Obzl6wV>2+VI&r}%xVMoM z_be<)EU_-gvFpnrMMT??bZGg)Q1mMG%=*wNqQmBti^+u?(q_iDMIfx|k;E=o`RG9f z@`4BnElgMW@#!kEGOy4r6AxhTVnSj4I|8`Zxa@uc(#$HRGk{Xq0KKt5~O0nX;)`m>MtR4#Msg;ReJB2 z>JX(P1BT-i!wy0s`En}+K!?;c_g1w`!a}X&ZUUiCuOVBAB{h<=P){qF0GPxT&v3t0 z-VsbpN{64>~oiFIlKn2d0( z5*<3r>VSnW-%ofV3wd03Z&NaUq3Zs+5+rF3Y^@%NREjgqPz$Ehl2Uwzlh~x;c?AJD zJw(y-he|yf6~rcrFR^z@YLu$gGQvDNV5dHnkc3k+9Xhs!2L!!bvXI>OFN!fs_3B_1 z5wELJl!?fH6GOL5|BAnKjVG7_$~aP$88HB?!2ADL#p`)-(e?7a>)q5=$k9J3` z&K$y#ri--`#kgWX1Bgi>7u3|400@QB+v?MxWlM3JrziQ2Q`&6jQpiMrN(*{bU%Tdx zl9F+G^nAIkpoAYQ*aQz?V?Hf0^rXoew5BE|g=M5qe^WgtH2Z2Q)bO(!KxNPv|FP_V#wqY(WB zOTi!}w+euHbSZ}tR^X00)>7FsL|w9wKoB2M$GFa%J^1nrFyc!i7+6=Xc}MC~L|eHt z@fyaUJ2mhX`gH;Fm(I|6W$accqe=vB#NjyBoE2ERhz$wBRfkGIPaes39&?LcW*4qN zR<1>QH^>Xx|BJa2>96O}Ae=4glzDVmA;ysZ4`{F~$e}Gmm7a5QoeAO&PA&)doLN=E z)bo0N%Cz#JH|qGDP#+q^CzdkMIbf8bt2=gXn|g&|Zwv_npt=IZC>J_HH9WFSPCntQ zvvT`2m}p0@JDi#zFLu>zc@p_tR%REza>N8Hray({z+4=vO2{TVCnh@wEOPqk3Fu|1U zPEx3)!VNh4NSB|1P6j9sMDkupFRG}O<1~}*l#dx#E$%Z(-pL|Uit>8IveZqf2lQ%! zYW}a>y_Tv_^4fD;)Jsna9DFlew;mI$Q3Sq?G@h-cNToe2vhQ5b@H5<>MI8a!(Zlf`@j+?K(N6W*~A2?B)XFAoz5 z<>4nLRy3YkOkZkjN5ERnjY#*PEYuY1yU7reF&Vqj3Y$28LT3795UkkquVkP*gXDQ{ zaG)`>Z%c0VLNZXCjgY-?$VtVAq^~}1S!{VcbG*AE5veKX-%>nZh4_$4B2dq>mKEd3 zOF=*C5D=^kGfcJ^p7-+6%^yX_Xj4m@PH5l@OZA1oD+;AqL6>Auz14hERGn_~3Y5%E z%7CcBS)&ei+y-itC3XR(wqJ@ry)bZ$TO>c_O!!B52PPR40PzgAUprxlQ%~5U!iCawI z_4kGv|L#bzetBq8ADab?H@`Q(EkG%Qm)5TX()=V`gdj-_>|&U#LwOo?lR+fM&;75zk{4vR6N@~~MFvPkw>g2u;$)Tx5}PZRB3 zX{T|H_^ed1{3(^G9um!ew(U(4^kgeVSyhqQU0hq!4o4|ea8QLt$DwE_3^YNu+V%Qg zhJ{8F%L^I%YH)uIZbx?X^J_m zZgM9oIn;0?NE(?P0x+9kbFi3(d@L{0BdUbU<=_*0CXblT`*0&tB|*&i{Q&@bLSHK* z1|vH0$3`KB#Q~D(+>1I@dvlTaF7Ayc&vdk~Rt41tj<&Gl)G53JHJRvfy-kRTFFdsr z`VXV+?fh8y9zn-;!|UaJ$lyUhg!oeT6OrC@{^O>Vw6gwi+EhCo9?vZ@q6rQ@Z2g*-2}3Be{$jZwhb=Mw6Rb` zXF+5yD^n7PoTb<3OBhG+IJT488%CB|X`U44gADItY6>5yYhiLJ2-kRW8zClKfZ(W` zIoGeVYOL-nijVa_wZcB48uRzgmQG4!3WI!J6cbVM)@TEWGv}sOE$Zva zv$ZM;)$NQ!nJ}eqaA90K4p|A2L|-&&mf<#O6z%BeNrev7;Sno|T8he3`}PNlwbSX# zbas03xmXn(qI`vVFQ3Vo;&HG9}SSZi!&*>GojCz98sLl7W=SXx5v{`8aVbve; zAxQBt#7{N+2n(=Y>eH?Ikm57~$fuY3h#aPuuTUf#GSSWL4;pyX*{|AY9b-2>8JKMpVdTtjH!RDqaJDDGO`%f^JwlX{gD$CVg5^- zN(WyB5KuW5f2lxD76g9ZL0Pn`rY8-_q$cWGER2t>1Luo+m4{D+Jp|GoZtk1tX4mdm3i&IVdhLpH z5GYp-(5}FBp2)Z@F=J2Yf65gH;)Hv+^aeT#1ltYWgg zcEel9GHib{@Ew8qs7*T($P9@%ou?t|*t&HD`Gm3(3n}SxQjf!&Au}${`!K}B*hN>yyH9$OW%kPD5Vo~HhK)+$w(DiLr>o?CoIHz==kN+3#jUiQ!&>m7 zRr$pbTG7eIot{u~p(G5`My)tLWkDZ0Ivj+G_@FFODd4VN1_4A9h>3P|O7fr;^hCC^ zUZoAP49*%w&ceT@(x;0c7AY4Bok3;M)!;Hq2Pt1vVIig#x+R>`DB=~|FYOw;-`7^rSY&3%*D3QrHes>1#&X`QCDdu5X<|DbJ_2I93*s*P zq{&70B1Dok>#~T4dxIcLs1)+W$T?U7$SIH)Cza%LkPoVvXCg|VUW|gZxuZ>kh;lun zM-i~aLX|q76`z=pa|8vn@lhNlCTM{wvoAa?LZOm;%GEfwS3zKwE8mOZ_j? z?p;wDsut7xJ$J*Ls|)(@%wH7`lyeMi*Jz>&va}1Ijdsli0Hjz*2bMibI+fjrr;?Es z$P0`Q5B&FsR=A4s=a?c;Pec;|&jtr4mm!zI#2!+NyillFT1 zZjJE=4NDPikSht{)-CD?A%n1@Do{W$iNS!b0S@EQgPmrTR8kf0fS?#_X+U9=Elc;M zFtpDr+`_@`g&}x^wYA(#FLFoPuZnB5ATAjfa%<^>Z)<5T=S;e$#;%rmM+m`_^)Ul@ zC0fyPW}U%b0w<^fy;iE&R#36DQHEJHINHjfaAelX0Ku=BI5INfPA!(rd&)52ysm{r zD#7OYQYpsmZ|e-C3ktNT!eV$pq)mz-XE2Nx3vFX!Y})9 z__-9f^|{}-KYp~IYvZxwO8NKw$h#`W*3qp^#%njrqu+1T`cV13J-d&Uun;M_V{Xhu zRc-q{Hk!mB$?jc6awa%!l(ZCf^q8%Y6!g>dom@p-wUQ@*o=RU75q&+v*5T<}nmh;J z8t)XCCOnBo-?&}GLD~0Q>EhDw7l9yG@wXm7#FG&{O-(j-7RZv~%;lxxm5U=f0t2(k zpON6D1ewx+ai~~k9Yu2A_$S==`ImOr;il$a-sQFal z{}U9-fVQVqZ;wGmRt5B(5{ACj?XNv|DnZ6H3w`itP9dTsE7|q9#3MRUpPG4I7c$bT z31yv5Db-p(RO42m>{msE)R}L>#;%4?*B#2S9fIO)V=ZCzn9QQ{&)BV7(7qNzjbPLZ z{wm3(R#g&sL$JoE!d%Vjpy*AB-<7f=C2`sx9H5x1d2WxvG^HdewR!w8mj-oEof#Uk z=u7N@<0{vXFtDk^<4_o5AD|W;_TI z*P^zzX^P^?S_qbNxhA9|;wcx?LgH~=)9%f`I@k*G>(1lM>n+FK5kjVN6L>!JOhj_h zdDKh0A6$$Bk)&S^_`S)6?2aL;m)yC^g@l+|qVvV(^_hb&eHWalpuT2el%A@NQ;^*! ztGmu6)YM*;W+0aFrr81$DPssP{$s2f>%}bh%zp1OgpzV`cW*F8+a~n7lO{=2O7^A> znjuSSur_k6kW3lJn<8(fw-BNH9ovRe+Z?#{VobL0T^7m6di95bV)o6aYETsWmFq8x zLO51@`;wtLaZm6^C3XJT%8lD=7pTeh+#x9rUao2tV}GVW(@l8eNXh|zTl(;pn5JW> z3^p^iKfVb%!82QM20q11Alet@v105O0;;39V~fS073@r`h-EA0-Jz?>~GZP-}p!PQ6oqZ}!t51Sk> z6?a8s^1bOAV!gG{xAC0t7?icwav1Plewn_8Md7Ms_+U@vW$Ixfk>!A2q}|GRZjnyGr4J8r^AA^r8t_;s28|r$JCoPmJU_bhd8Y!P zHMDY#77RKwX`@WRhqACr7yJl1SnJiQfd8VqvQid%evyhkRfoFJKpZnRC~(H)c|b0* z7Y|Kk7beS!wyJAr?CuDWEgW^xQ@tL*ct~vzoT=a%Kp4#{QY(&_CYBxk!2l>$t8(fU#90?C^&QAz^-}2Y!rSTbp_7qpEl3j#Pu;88#_Z zrQrCzj~=G4t7;dR!bXK?h3#=F0j}^qb&c>O6c@1gdiY0(9}Z^Dm2i$1@*T{@;&qDs zIcr0F==PWMPF(nM@T#~JhpxBfTWe2nCkIq_SFCS{sxQ|m2uOq6W_tI@+|)a|VW2^o z{`b`viNz^ygPY*|UXg0kgM0!jR*RNa;C5eHuuxkjD|E5DUtG^nCiX;2OQ*Xv)a3{T zRC_F!Q+Y3@ba83qS5@ixn^TS*^*0GUgOmbIz926DbY_7f) zmYM;sOme}Pl8NfL9;sDuJ!zEXo0eDg3gapj;O)DY@?{f=!S#ZsyQ<=QQ)EegaTFep zu>LHVuPcFrc_rQJxcC2lSKjeK zH*PKo%CYwNJTYDk^kQvdW0z}BkBq6;^4O+lMFJ17t!R7?WS^Obzl~ujcfr{7`N#y@ zyT)7p6Bf&1&*GB#ucT_8<#OhtXX_|*EF<6u^c29?AyknJ#0?>^*As|tl>&b>q4+2o zi0*S18D{WqKar55*1B?~bI-1^|8S_E`K;Wlvn~j3m!(uOrn3VPSFCW1D#YEMT$EzgG{`1AwNPSIgId1D^e@zwS8K_xU5_}} z<1X0~vR--bDG7ec?z1a~Ks5^uAoN#|U`uFU7?-P%z3(bo~!?xRrD7u%vflZG~ft-mJ;K)W~eLSTF>)Zoie&SvSU%NHKqhJI znbmJ^gT)|nSjoP`c)9h}*fqq`tSg0w8Oi-SkC5A*gaixwUcGmgN^t?RLv;kmZHgI` zWbr6~SZvB%nDTw+p=rjwT9sGtZpZEpp;C8smrV&>_V zxmZIZZCiQQ8g*QCIp{5yPu9SQZ%uj0#ioY0)hNOxxr}2KQegdwgY*in)NJWxOX(29vwl01dn-T(?x1VKptcZy|>c*&g>)~|C@*^5O zj6W1Ofv}?F2}6!JlK}HRviqYfLQ7FQKwKA?erjX_wHIOeyD1<}6ih+y4~VBp=|Y@C zY{X{9`*S2oWkx8T%b$tK;Sn0!FRs~*uTBUKo<0gnbmgX2X`x24iHcEiwXfqa+@`dHHk}Xf^e+n)gGTlLEW~SIr)4Lcjqy1S zGi)(#@m64j58Qpdxog!M%k47ynNoX}%W(o|nE$nofmt4;-}W{;-aE*sb zlpJ%C_MktzRNe9edTUZuofx-lb!k$u=x2_|daK|M6*V2c;Gjr%E1(TQ(5Gs}tWG$8 ziiJR{N-xYUjc!z^!#s9q{}NUzH8k{?{)K14IKK_#oP9Z{*}!d$C8;dFK*}flCVAH3 z$0kE}ks46hF)9V9T3y+UV*1vNi&8ah@*748X%wqtg~$!GJ}zIVu7Fn2%gw#s6)pUQ z7j?ql(Y-6tfG^q0sXG9w73wnoB6v`8Xj)gJ>*l_70&vOby;YB-pI){OC5)JgGj#QMUFA}!qeQe}^|eyapqXk>qHIEC z0j-DT#;YcrD`;@rVV}L{2o$rW6~nUj@%a)G)~zgEUgV{#iNQ$I!B;-(69p7t4bG+(|TtI^PIVGb{fKi1neFN72Re~^(rd~9ilTX1{ z%8vWdR%}9vWRO#Kn-z_KO*CIx3+EZa#~|mvj$VyGI3Q=bs5~G`1H!dfms+P{4PNqM zSG)S0cyg&`^(n}faf7+r=3XV|8J?i39*YURVPDh&Rb_Ew<(!rv__EGP>a=qscCeWT z3NOKS;R(H3samQ+Fpxc8O?JuQ0<6ELM#Mz&n03sKP`6|yJW-!_Sm2rxoK^>8{wicZ zjfaV%n;tC>C!lg5`nQLX!m=+pJQBUX)Zy{cbA2|&^nL`1Tuuh_xQ9Q-{^w2idsn&e zsIm7kzW=s0m;E{a-ES9f=XU(~c^mF4?_c|t@Oda*8YvL4WM=0uN^Q z5ra|^>(LJ6$^dOs-jZVObNXIy4aXUt^6CPONob5IKza%DW02toEIW|6|7r4@2jM0SG!5xh ztNn_d+b(qDD@lnZSJ7-3^v^eymUy$Td1O_r$gS=JPI8yJaTT_NxGIIx$S2HJ6z7%x z&Q~vH71x@Pmi#xR-0GF|nM$xFD!Z@Xu3wdSxURUktF4(;7=#uRyJ6$EDh^uarf$0F zc71edt_p2qx+2is!oufj)CYLFHF;e^;$Ba=!P2X&Iwvnm`;qCO9?HJ@7uTHH<2zam zH}qLdz*u30S%VL+dU6ZecB=*3RVDt@?Uxe&F*rBBW-kg}i?#1-y5l-B`h6QlsW7=O zEgs7MsOVELA!eNA`Ass=apv-}U>Af?5;nF%0ehWs466xH+cogb?azh;o@ym{qKy0% zEE*4qcuo%yGpam@?}!W-s07A@2UxaoSNO2sV_b<$ob{6ogozrROdC*Qk9*lB9esP7MpsX`bR5^Nn1W50wy~Z0g&>A zsJLAR*qLTWMu2E&pCq_po>$>@_$q0EZO+wl?s%;V!#*PQ@4CWRn>Cj zZ>#R~dW?p(dzGK@NEb6zTcfipz70m6eJQUjt-1j_zMf0cMQ%pviD}98xvJ z=7)BMmJX4HA$H%G`s3KNbdM|>PET-6ko>7HuDm@^uepgb^Y1PrcT2Wq;wO=ELY*O2 zr!UE_Ia3E@q!~YpeNqqL3re`91>_x>p9u6|&DC=66$F)(`;x|AID1Z2X<||gRX+8( z-yK_lLGve6TLxGTX~j{?rMrfldRPH*WGaGgb3qbY zBehJ4+_>bd1&m^tZyd>tb;qC0GF)Ypa>E5r3y;|>`f+kBikhS#AVX6Y^dGjrbgf%+ zl+jtH21_ayc+jDGt5pMwQOT`JiCNU#EMdy;T(bG0BN_hI zBaGuMoaBBf=X3gPTN_O&o>7PIl{jvVvz2OUdjIRESoH$wnN$_?9lvo=tUockjU_|K z#*Hn7xgYIAgO3Thx{P{(MxNZh<9$4*^2#-e4&{}#HjQ8ruIO~nC<2xwh${*%tP{)8L?E2MgcVzwGlW-#~)ZufgyTh z$!w*q!NEr{b8@$b3BEQdN}+nRql^z^lFv6#X@%$}N)eX*SENbty-yACEm5MkmIj@{ zj)^tR4j6hfb7PXAN1Y4rN&&AT#N!RXDf}Mlm|6{`YRzHCrk&&tW7KBIK+? zm*krgl@)I&JwUee$fww)hol!S#ZL7eEY&hS_}H)ugU104K_k+(cOf@x^D8A zw$*_Q&U}lx!C|6LB2xm>(c>pV85Ns591EZZEZL7K8MoSd)-Z)Ijr+^h$p}~{pocNr zc(fCd=%Cww%;f?sz_8bzSM~jYe>anVzRPX-NvToE;bp$S(*I*%DS0#ymDlpYD%SOBnRKqmbo% zXQd>Q(EYgL1hI!X$JLKZ5Ox=SztMl%)HH*RQ?>PL%hMoAmjZWvu=A(x;pV67VdKzn z7W%m)II~u&3tZlTXJ@Nr*MV}e% z^Ub_Y_we+q`rJO9Bsbl~>QKvQ@-M35)PVC4rT^fCBa?1uZ%_PkwQRs>_YfM9<6A(>lLFO59#J*+fmNma6SLS9` z=~geC^OmfqUi!MJY86yds9Cd5OtESVaWPh@^RSk@1?n6X`j$ep-zqp1XY5EEsEQR< zDWeWAC}m7etFbshSIE{?NnF9;F4U|n#@S-Zg~b;PKh{`Q?Pf(%GUkR}$r`FRDav$= zt6nKayNr@yLkP;3c*;HIW8@#EIP$ojGxUo&_>mq_O%nc?Wl{E%qm@Q%vd)iF(XA1e zSYiU@`$hJ5r=RsgmYggdc*`Wob>ZEMSl{YL?0#xPgS=eG>o9#24-36(NaMa~oZ};- z|Et#FeEs6BUr4M2e?rpN|Gyff81*G{o0uZ{c`B02MH$8O zs3zy4jBG>B*_R@lp)QEH)p>v2L3GYutoIc>-#)_cO+I*tv0X{3GJj~`oh7nn3{5Ve z?HVf*ft$C5sb1$m{BpPcF|uDecd(`uEn;Q$hNv~2zu8ur-6(*7%BG@b-5T`qc}4Xp zBneE+S+2@3u-wekB&t4$3@A`dm_nf|6^emm>nJflB%GT9$f>!Q1mzFQVD(|>r$#V^ zNi_={2VS@w8q`$OEQ(|heNSW0s7C@dNwWlztn3R4pizu0Pw7sS0c;szZlx>lk~sng~Sc8!GmL9DG`Xl*d?eDo4`IL5PZzA zH~afnRFM_MwS~ogbvbj=XyL6gx>_0<2qSKo&Dv8RhPUUQsl{DBB2BdsUDa zb*BpBLOT4?lS?SsEs=`h@fQ2#8D%6YCArpJNzw%*sa*L~S*S>9Op$BjvgLe$uP^nL z3T>&7rX)RB#rV;&25u-Y3Nz^b*a@mzZnYJz@)p#=Z$~uAZqz~hW$@f?`YzEj zuodRYu`M#;e^u5-iwy+^;QWBK(Z&s~3+G)y*ACWc@0Sf_+uv zB@Hkp;hplabXIWxIy?i^)K$A2P0>POUQ4;nV*ThdSi#ALxRtHQ`ITLEJ{4;(-5#a= zAAMdPaRTjlc>(HyHccD77hT4JEaIiIrz-$*E#y@emFmna{ibm~p|k2h#&VF!Hh!Us+8Buj+NF=%NV|TEnyA-P7>PVQrz! zC=^Gwz0IO>ENT3!-ieKZ&**e<6g551GxHEhWc!Eex5JdB78BXQk2xO$>*N?+b#d^D zm)P`wV!%@`CV$M=e;bQXUe71=-TW(W+AjQ`&tH4)x8gLT|H3E_W(E>BMPC|`O0%SU z+2~u}^%pNYTf6RU%{I=G;)6G;o1E#yXQ#i>p`G9)P)&H!{Sr^?SekitEuYPfix&%- zcgS1v`Bv)f=Kb8M?vlqxpOxr!>1OipSvGq-uO?Q_cmmA(qSChoDZ`RAV!cWZT$ntJP0@%gxQ9$M^)v-Fae z{bx7}_{YL2yff^CgFg`#+qEJ~y&;~ApDGF{)b$$a)Z#cvDoYMq=1)3uDaF8pW?mos zy56BZq{XA@j^xvBjt_@eYKuuyEXw`})CTDM4b*D6a|b_Kc_fqn6w8FLLvPiDZ{#h2|zr+*DJF7&viIgGOVFh@&!Pq9f=~w zq!`XzWnI(}l@-bo)nDw>3Of~&SD$jKPBKdi*Q(WjL1OX!>Ws6^8Llc_!filHb^9=Rs}Cl;JsxBS+QHj)EAgzLH8QgYwx+8O_vO5ZMn?md z;V=-Ux}_h;>gk0dxvuE9TZk&sY?8t^X|hgGIi&N~o|LvK0&#BXC8wdw)G1Exk3Zw6 zQQ3?+b{Ok>%7fz_;jiSk%z7YRfdchUh2C!>ITyLZ?pDeNiOFnRa92ZYAWFPhIyi@= z0-sXY)tAcv^8z+M1w4pngsqQh_SH%hPJvh^vK^Z0+!qO*`i9Qa!d^RqT7dV* zn`8lEu_}QvtIYJ}bKj;FM4?2iLtEcBs!vVlO&VeHQVvtltUt^87If~G$>v95N+Dv6 zOV^^s)N4`UC`#f9_9fe=3dw&y%?w-@mun1PEunJMs~7yx%UHB=m)2lx1iy&dpG z5=L<<)5k;G5T%0`4##1mgoIcFvsrr;;tY7gz`R*nHahX>aJ}+QT~4uqmoX_bm;xa{ zX_ohOf*>;`0d}8k?B*1Nkf>I*i%`aaQf8cxe&LO zsZ6n?AWu{YzxD8UqSU3kvrxAnEfK8R70gRsSTlB1o?bGwB};MU>GH;n7CRk6nE}K2 z(ebDIC40)jSoxRGsAc44sIHZwz_9jcAl;X8nvtHfT3jY-4W~NLne#9BwQwT!{m$LM zrxF@uTKJb9HmLpL285NzD!(In-*WjS8OMgbZqvB5ZitZ>&C%3s6bjNQGpXmM@N$7T zlX!Bg8FDDi>f9@U@k&}kdr8vix=8@#x?{_<{zJ&_X;LwQ8C(d3bEh2wy^h;;Op=x^ zorQxLPzvqOl?01`*lss9G*5R*=SnU`d`be>GVuw6McFW*UpCIFuaFNv)~UF;WX6ys zMbTggQ0p8oX4fTHSa8ov$4d)-k~}5C-OiFvqpCqxqldy-o(<}?ciV^2POWjgN5gSU zt-S0v4g$Ne9wln3aaN^XbXX~F*L3&hS;Y|{@c*fC%+m9@Ol-3INNPJ6+bugX$HBlntX9rZF37oJ_{hw(Hv|XZ}J%``F zHAFRc5-^RiwjsxgOgl%C3S4BxIx0AMA*upzTX(IL^)Va zaKSg(UmQzQV&kfEZwN;|zi3Ag9&*RTO%n?^bZK5*I8{k`vrZJg zbuKH`ad{qjVcJ$p2}%+&Yit9zwP_k9h~@+KoBHVr_*O1ScJhp@TB|80sEMCul+8j@xg zII-_a<~xAw`_7?3mi`HnrlpmG%_jd>Jd5 z-1~4;5C=6@;C0zY<49Xn`7YxeH<(@?x;W@hVs|M$$5K*5jh@ zU<#HK$?8GxM69zR*sn>H+!zl;*see;>6LNk6g1-SD8^cqr9VYZv}gKk@v3xX)N5D1 ztBL`At&_UX5jfBGc4PQoN@a9cGa|H0?_c>ux+1x53v6q2XU(YNFXfL;E*MpBVfc@O z0gcPZq*caLKjR*^g-YFaq$(1^v4o{!D2+sG^(NHzg;txKRW3DSqfv?lXmYMhZWWk% zl196BQ(1}c73!$c)r_OyFC^s1$P|yjWc^i5RU)sAn{J~*x4J*7pwgqhmXB=Y zDjJdegUsY%FI#G@j4n}a87vS_uwhNfq2(S%HudW3_&8nin8Nt0WUgLN^j#VJqayUV zfBeDm+Y^bQT3OzucWfTsyHmtm-+c05)?ueA4!xKDF-K-XDraB&KMdZ$kJWSiNqY8r z5>gXspYku7u0s+DU8(==tVID*{lsB20JGLp4hC!ncd za(SCVdWdmCtZrTEo6yaG*JgQMq;<3$7pCU_ab0`T?sebak|@a8xMNsTHO-_D@iz42b0w#H_A4 z#xXGU4n24B$kFdT#UY?aqlFsrKeJl$2b(~a@%lc&HN_`fN zz?;Ha;jW<$oBMo(5@9x2Q+b3m>8s!`(FRAe#`EJHt%$t$w5%ktU?B!l&&zl3W-Z>~%%`3Jz#5}bv+UCKuPJ<2pyZ2eWCVwXZe(Qp` z+?B~dS0iY}@iH}4lkVlwL5%crZN@+^+fFiR`peOMpYrlnL0RD$VI%fvZX z({gpDC#LlM*##M-#(x$8DV1co9teTswX;R>!y##-DtF7Dgi6s>ti#^Rb3fR^s*8S1tvOU4(CmqlF8Hs2x*_o*?Q@$kTUD@Mhdl4Qxvv%8n+J zO(mnzS?6G^7*bEMa}NEc?#vX$X5>l_Y}duMLWZVi1D%7a%(TI$B4rx$9Jv+R!cZ=o zy5n7y?s7FDC`Rd^uPz+MB?eO-oUmv*X}4tXrCd(|!kBPT0rt2$*Vp2g;h1?#pNd_t zY5TsJ#M-6~gE1LC%vTfV73je6lqH+w(0}L=I=h}+@qORUG9*{MHPF%h{wW+Nl7q54 zT-RR|5%Vb)>pzyXKv$sWwEB5#=1~O*W()OEJy;WetE%nuPvzK{GM1yAbK7LC5VPf0 z{vk|VAIRiOB3HhqW}8*lsKs(57bZ&iqjyi^cMzR{@8DDZYvoxkjF6O+y$^1TpMaRD zNb>$9(D7SaO^>l(i=jy&DbAO)_#Z|w3Y)t2zO_*?Pnhx7yzf2Ud3MYV1?x@sW6tz( zv23h?n58u@geZpk!U-ntMaXT*Qxxu&Hdw=?(b;?@|N2oxGj~9t{zur>IT}#Y@>_OnR^15;fHi%9ayk3U-asKCv8M!U-olMaclTCUah8zhs zKD8@*XNQE`ii+Wh%2(tY1QeY*TwezRiveV}-|TZ~S^73zM(&zjZ<1Z>Cr8bz+#nui zMBc_WwhsffZQ8_byn3+UHg~sm`1-Ro&T5+!_)SINjJqu?SerU@{%6wW?BVXMQ!E)* zP5hyPP7}LEI_ZVMj!$>&=|7%xMOVj5DLr}Yr!#aTp)n3TSu88BIR(>r@~UN$m*(9W zv4B<1BI~8W5M3=`Y<8(r>-iXg#C^nzdQAQVHVuz4obWxBCBmlR;fl@WyDUtzE@S{ zNGO-`ehRjjm|w{>R~Ztdpj@dLUt5oWT&YY@Dicac3LB+PUll3$ZmmZNeb1|&ojBnv)KLn0X>HHGxBR$Ws(|C!Ga{v^1tP>) zQi20UGY9u~n$)S9fcHs#p3ko^KI2kXb#4AsBIM>qFE(^RL_&r%?Qpe90|<-1u8Ny6 zV!yx04Lv*e-FeAO#oaONHlBJT5`g+a1 zh*zT$nR(PX1w{l;ke!rxo|1?#WE0F3m-QLvsGP~I`r0_;j9C<3<3Es;A5(iN<_2nT3|r4Rf4G_m<1fj*^^`@;Jq{oEQ!9(nKDeuv ziopU}RjMscE6!9HBQ*)}p9x}2d^B@U$@FYjXIw&kupWNxV4znaNINC=dYbJZIP z$byw+Se(zVood~}9Ri=sL`0w-(<1z-!czuKgvhbf);pfl2e~?G=TDq#IAM>b%LbU9PMXa%y zECbIuGBqI|LA7{U6Lx6OGCfsLjXr~}i9k^=f3UpiV3b=FTeTML%ms|M za0&EdeM<5AC~;X+FIloTI6X{Mqp<3%N?|w9&V&S);C9BCN$wG{V_eIX`(oK%zd(V}+tJk*>ZPe>)2ZQ^IjEj+_~L z{Gwcz%#=Msn#)9w=JQFT9Iz>ef4Zd%h45q-JfssYRjU@hx_)6oEH6ik94X5s>HS`- zHbN=LFpMfgDVn6odqg7dIiJFwHRAGwNa`)s|Al~tyM#kYSyTOs@^Z2r}+qBCNcY|P`1{V5DqZ2Hko!8B{nA_=L^{*4; z$AUgQkCT}(%@40+BG#hZaZ14 z{mq#it|ym*>&(B^rIg=VU|msGTJv*tVmi3~{ie+mA5QbA1p=U9a^n*V2(r>UhwVO0ehqCYZ1 zg0i^tPgKEwroDS(6C5hycSd4JVL_=P#6w%2MQK z2o%{{hQPUAi2b5tmjm`D{<7cao*IdHM16hTT^_!3lE)S&B|K=)79SEV^eEumvL?mo z{SA8}wDpz2m-NC{KQU|la$C^=ey0*xoR_M4CkDI?u0;bmC;YHf?W->c@)d48X#Ytx z{1Xe(uFu0$LwGMmg#UfN=B%Z1BpifoK&D@CemMdxtD&I9HGF{-%koTYR5m4OfT+de z`U_0(gH+jKH?tfolB+<3xoP6)(|ul?NaQ4NvqxC9whCTv3_>k~YLr%5apk>`2Z~%f{79B$!|J~uye!; zHbnZkEaGw}##BR#kH0lMC#hXemn>?^;Y;+-ka{&^eI&(2SF=Pi1$#fQBGpA8TQOK< zxgWx+>>_wk7CB3X#%hNS}2Rs1iBaBwd!MjP%Phnw%VT_9Q~xI1OxtmZ2Z%ITiOx2j<$}mnqa^Uk!g3Pqx^=taNRRL!Km2m#vjldVRgI|#JsmjrXZdz#5 zl2qkR(T%Gkj1^-gvDUJ%jg8q36Ah(`_N&|He!@j`*3K=VGZdyjuPAEEAvW!qjSuqD z%`K7O-Y(%nHL&8EH37XRJQ$wR1MN@fUGw&a8zQ#ECX3|c6q;-8u0-U2-<`$n{^9oS zPD!PcDMky=C##!gqLUT*YWhQ&fT;g=5&U0SR*Xx9S`Qhue70ph9e8dkzs&p*cv(bS z7+5rG-2XA^oHYpERBx#3tHLOH!aL@aX3{h7JdDHB+CH^#kDtecZ2C55H}1|s`_s2Z zq1(l?MU{?5Wrp&nO;lcO)C;P6r#g)6)y;d=Q3Q1^$~OJ zoRo;}^Y(qdrxnX70m$8YynDqr7!{us^!W%QBW4wykywiRBFaK7YRvOKgcLaPTg5RS zFQre!5G4yuqmXBej@2C|>A<*zdc02@JS?d2H+k{m;t}fLha()9AL8ROqzQlE=(dg) zoHtmFhLu4b8Hf#x)5Cf(VEa$IReeH;TmZ51{%m9e4w|Id!*!ClSO~+PROMPzlGcdY z@^jV=hoeIx8gW(t+g%-+WT#{*5LR{CYDgt84&;Ydf08)SAa_i&^Vi&Vo8pZg0A{X^ z4Y++7z9l^u13s2wjhu@4$C_-<8u0N9H`9aWQ~}~GFK)9m*yvI39$9jQ#le2%6u1JvesupjPeK=)#)5I^vM;BW!5A_GUMR*32fJW( z0K)q}KDjv-KATB%9+#_{_xn%pdB|yD`8E7Tt#A6JnmK=0|`g`WF6H6OB&kR@)n zW=1bTlbyq{aha;^%i2I?@q4*tF!8##5L1^NnG4pejwD`(I(*6uM;^luAV3f7l#iMW#=-1`Q~b3Np*3~?{mjX zN!q)hsEmiJsHr{x=+Df1u&f!XAB%C)Qq*5(dFD=VE-TqM>q|1+@&VLn?=&gBc&>OH z$E&Y`3iY}3Wl9qpJ0nk9h_ZSej$@#__7+6G()f2nNOg1BmaBZ-tSkA3i1DHqANb-V zt=|w@QwmTd}p%ujK3UGE|keYVz8U6zx2`^I`r#i8Y62JbiHz@p&pCjl!ER&LdojbuFt#T1sVlQ)_SDoVjl{3uh^3PWfL`7qg^X zGNm$zxT)iQo+=iGu|8mlV+KeyrN&H@`LeT!S=lBRN+ultg2UZ#V}QsK@p5% zpFEh6RA`k*A7kJgy6S&8o)g&mHww;?SAQV~j|)kIIH zm)D9y=({Q(qwpLMqneUFU!rWUM@&SAFPrDGTVTKp06##$zb@u~m0!);{z4}UgKPEk zztkvsUcQvLpMPIWe7B-do~EzgzNWzlwP(zoPx22+)h*{Pqr5KC%xZ{|;a*C8oJmuu zx?A0qTNX8!rv^E37Gc40S~hhHss;;M+`(rupLyn`P%pTN>FH3A z9tK6hPFkeY7cqztV0xNiO~H<>xJXQ|^slx^)8w^=u7(q3GFuHPrP;!X?MuL7L?JT+ zj@6m_OpyGBJtE(=zZqbgIbAJHy?Y}H!Tq18^hjA2L($6&8BuTi8b5-Fu*4DlmC!$_1_9;}gP=~9@QKiX)}C`awKLYtZ1GmlqLh*=1tNqzuon;Mu& z4z{O`zD+G^qGUl=NY@1%Ytwiivi+GEOaoO`ImqJ&8vf+6+|r;j2To$(N;HT{frk)A z@x_#6^K*l9MDB4e7c~LvD`t=G8~a9BHowD!-qgd{ST+9OE*7+VWf5>)ago zVbqtSACVp{iHpkL?GOp8iQl!Ma^9Q64z}r$_u7u!H^+u((xaPs1jFt(2hXSEDTD>0 z{TOOXIE@{w0~)j%gjCMC>~KS!VO19@wtsQKcoV3~ww0FcN&7Aj0%1bAn_c5s@Y*y` z7K$Es$gZRpg6Zf#)CKV4iWbK23^KfeDie83o{I*`k?WQ^<{O{LJ$TfidYa-`e41k+ zS%EM(1_grVg(a&}*b2=tQ;O%O>Y!D$tXm!-ztXE|;)j&X9jb9)BMq%`(w=zh5Xjr3 zq{F#+#f&}un~K7`qhMh0uMG+`47`oXE*?9T-D1O5($goSCf<6rIaSSAy3K}V>ga74 z_l#_9?%g|4csRXUL80PN&9Pv(@ll(Fv?J1C3lmZ^PvdE#)74X_s4K`bB7iP1a<>P6 zQmEdjLsM>;SCte&F>j6~LXgELD>ytS9IA&v)b~Frs$iw7352g6h86- z@t&77CEhV_Nou^VKzS_fK}ZPCdBq@GSnTLh(Xk}?&d)~Vcc%XeoLbeTjPftSy=l%) z{^ca_($TVk40C~>IxIn<=LiX+yfGlBSZT)-XPd~5DRM2wb2fL9PWbpfPjq=W-=e{O zSV&BF+NhjKKGoP+`8Sjoqw#Sku*3X6oR|hZ?t^~6XjtH+=S-MPcOe-8_y2oZe(fHL zU&5RIx{;ohY7O_BpL<9C=oLs)a!ztrWdQ|QAGOQjGGlaP`cfHkS$a+~H;oXqO#S~g zk$Bu2{RvuxJXe%|6kd9K@?XQk@$E3kko1IbIhPr;wvE<)4R&`k9K*#R;2_#goSkC!S55e_8BtyCv-n@meyy406jSo#j=+u&X{r zQT3ey;P;oem1hi3RceoxDvwQIORJ6j%wltw^J=NaUtz()jGR?+Y^uDrRYg%G^~~;J z?ipU+ka~g9*187^SfXJ(+NM3ey~w?ytgOZPm!60i!^zvAn*N!Qmbcf?VF{$2Np zse1E7*I`Pq!TQP(tfwDdLXu*FGzrJvx%_=?^z?Ym!i^Q! zH7Hely0re2U{J4~&H(V#(r@JGRK(!7fcj+(EYm%7u2>z=^qAbRv_p@n4_?_k^qF=u zgNLuuta_0{${#7+EexsEDMCUqoFSosKz^!CndN-G7tcM9*)a;%hZCl8{*2jFgWCV9 z7fP0%}F5dKUk0?wTLR^N@2C*O!a;0)dJ&-~1Woq*_$t+nrJe=;6vq zhs7ibhZH27W22Hy7K%nqFx@4pstJ+tvjf<{ThYUHhyD`pmYoc z#5sIVUA|BkW3dj0uj6Ud5g=w_17N2Z1#Jp|QSoBhl~g+VxZs%vap6XPce(jDh7&8MSJ z%!P7~(0U2l`yRz>f5<>vtH^6pbQw;IxF8pyL@%v$G!I5@q+ah!emyu5yes9OM63E5 zD0Pf0C17T+(>UCmLg$_xPe0x8uDFXFf~+nnX<`Fyc>C+p(<2(!?!yi0tMZ8$q-yjw zyeFA#j0YpuUZ>-hhSxZ_uL)D=`>~c@k{IR|++B_TA;k1#D72+%ZuX8#!_UVh6J@O? zCE<2QH=M$}JR12^A;_9uC|hp-7Ve=~Fj6A&tM2?m!}T!lMR+O|4gu(~EYMyKV@)U8 zq7=oA2pUD@m?$FNuLpmO%X%{^6k%XI{#WFwQ0NmPbVS_3awqQUxCPHSShv7r$h08t zJzS9V74a^;d!Ton$7ABC5nl@U!3vNax0gmdUUFP@)Nron9>I%PoLjC#3dUZ(xj>h) zXbz)%gP1byDw6}GRKEj2wqB<5hwNPBXBEn`-5M-FY^+=Q(uXyNic=KV5XJk~g*612 zTNh&Yf%HjrNuv?foPWAG6o=90US5)n?sE(!tuy0 z#3PaC+h%qnk(cd0&6yODg(J@FM+=;_QSrB)D({NZyl&6pT<{w!sCRJELL!R)3x#U8 z&gM(a*1@TxbS5zx+Th*W*I#?s*7#8}-YwR2F2}1!&F>|2s$^Q&TdH`{(A*v}4nwWg zrdqo13vM}j!)}Sa;)Ww;vbsCmw6igGyON@<%EM}N???6d`RYuc1{rT{b`8CkfCBa} z8Bqo6u_0*l6P)9S@RLM{gzGH#JiXj%NjN>sWPlANitN|)SdncW_U;PA4f*hS$YH{@M(5d1jf>&k5->6B_gHo)2 z(xkYPsLDGd_iz8kz22Sv?9zJ4`g9tPk3ayy(bLsG%gha(wo*xq(2_fI6Aem z)EwRY-#wj9%1}kL*%_ZPI0?_0FsZfP?r8TnaRkG2f9}_9^tvGH&(5~sq+Py;wfgY= zTH8jB@c3vL<`-hPR0Q-P`B%InJT6K=wWpf_)h6^Bm(?ehwrja15SI*rm_PL*Oq%!C z1gH<{<$>j`{tgn&A%av`M5yx=k!B0%h@eBu!i3n0m{DAM->i@#YUNd6q2Q@h2=EV2 z)~fpc2M0WCZOOq%yrP+v*W|5Of8Ie#kTMT6vwRpRCO-p*&fQ?E=a_#}sK={}I?YOx zT}2pKsbDT-P{R^_W#6Xyv#ZObAo%+H|GPAIM{TN~jD$S;bKO38wTj(w&O~Yxr*0z( znx(mabjS&rHiU<+VyC++91v+~v1R~LSog0)!v?4ex9eXe_7W+ge?+__^#Q$+W9bMU zl?TK!rK52(X5^wr+KM00#^@0MmP;IMpvWQd2NHKHuQo;) z>hnHti<0hU5tv&x5)fUXBG^_Xs3mILs7%Qs=UZOhfEr2^m^d^#Wkd zRfV=r2Ibjj_@_lSPn~Q9)cW8!v51lNH0FqMl9}8gj^jjO9w#V@H7#Zi2?;jI#~xCW z><38+JW?Ao?ry1M@3k-!N_8)QV5RPpmvSFn@3v|sMG-V_!9jLxjoNL7{50&nMzD>~ zsMH6}qzbvxzCQ;6O%RN_yL5q`bR0^BLc1^em=YTn6l_|%xtkvoFX$D(Vp=B4d+22)$2Oo}%fCP%KNBQ0^?t&)N#gm01eCJu}<8CweAVGnh4Kz+zAIYqTF zE}5!dS{kcmba@vJCN2tUmo^Zj6lHO<(7j@Gd2LA&6K4aBknr%GVnquhA@jqF7$`K+d7F^mwQi&Bwfr=RujiX2X z4l?=_5s*l_{{h7@Y6G-f=Q==0-_{)*XB@ju8BVh^*fhBH@vCR!wa+GY$yYnC`CY>r z-i3nmDM1_x#HH#oJ$^8H7=5$CBFMC%;!E+kE@m~lFXLi6f*yXUQMcG`V{NEzL%r1B`%YgPeYM0chu*}txA3}|JP&ihF zILA-#_9M*hK^O&X<+*yeS8Zh-g%sy*RJ@y9S;4h1blU6^sDv(sY`khV@*VDNcB<9E zAzrkfsDA9#@Jq;mTe_`Xn{(_eC|Ye!ON1GguQHUIG!%`2;`C}LDg~*@7AD=cn&tK< zr7JpE1@g(ty!J-&k9|}!x@R0)#xQAe4Mx#1DN`50P+2c~gB|w~B{37E&$xmHYw)Zb z;Nk468$zHrx;Kusp4OAftX@)Zg( z!Q)}mLF&nJ>?&2lXl8>tx9zL{l-~NGMy8lR?II72Sd;?%7#OG1!svFL|5=feCGV;e zXM4!Jo*Rs*#Bqz7cAQ~E#WG+Voy$?FOuj+3b_u2lI19B~c%WJJ{DF_kbx$R$2v2=* z4@4n{WJFU}%hg23&9YVV`YuYIwz$NQr6E_09j<7j@CZ_zFP$mOTL=ufT%i2B3p5#4 zEu(2qyu&d%y3+{0OU}T76ATr6f#ZhTCC3)Gaf2umT9TY6+=)fcsIw16`DzXsVRS|- z1%&#ol>u0^UtjO{#!l!oDTGB%dF5)`gnPs`Uc;2CC> zz~k{aPcz>!Nm7VU{+QGQtdhq?9-YN#i*$@~kE3OFQIPq*>XvBz_3{j_4E^`3=tAW1 zk#8=fBKi;0J!Um$)a8DRmmCn8`WhZjH%q&v#(VE@xQZ-Q(@rn>bzMk@ zP6U=W&wSSe>xCl`tue$hd!xL8;F9%6AV0&&)u~ZFG=at;MU9d9mE$NF@>DgONLBhj zR+@Z#w;p=sZ#N%;LOFU3hdg|%&R_gLf?|C8K3IWzs*iZnJaLi#iUD`Zh=Q6FMQElc z5U={@kT+AiufKuVCXVG#NVMA+;xCarklbPtvad9;7ghIlMQL0W$v`5kv6fWoG5e^i zso zs$t9Q6^&aBdYmcCV#^a3POFOen5bPGM6^qqw&Ui$K}O<29&rV3dWF10b`TGxUC7V) z|BA{J9!#t&VN*qPv6OEZrNYq)^%R1YT@veWpodj23;_iEOFm2#a;9d6+-^Y54yyNF5@KiRzWfvLK(JBZ+NE5(Gs=P z;U{rRk`uH^pp87Lf@T6@^9(aFh$ zf+bY6UBQ*LO$vpP6(p;jO3bK~hEZW4w--tLGJ;H!wR6Fm zJ1D7Dh$xk#dlDczHZ>=`l)jJ?2DFkKPpGxzB7rrvah7^c2~t!N#X&gZFCZ7_v2|N2 zdK_#jQ;}FsU%s7KDO3j>?p4>y%|eWT;=K#I!nR)U)?1)SERwmEP?mW_RJdh+2=1Tm zIs~KSPSd6EDUQS@3XzIyKhCUE6NNeh2`x2X7d<#!p3v0eN-H}5*Ak%#feiH}T5vfd za$>(DO<@0Krm$)QgOF|y6}hMmCV-}GLMtVF)6E7ZYQsfzdd~KvM#E2kqRXf@RnY$2 zO_Fenb+%f+r~`~zHMUm_W?ZER2+;zUjD_ z$x$C=NNqnn>ulgJ%-uHsg_M0tV1C>&McU2FC=2wI9S#$%$iPx5T|e2>K_9B#UAEXb zRaq5v%3iP3uttSfDRa*kR%)@0MRMde`nUndLG!dO5m(YRL^91A=K9dL4MtJC(T8bq z4p!3ZfAN`kMst6L@U0s`j6G7WHiuf8XYRi8AVibSrQpPT$zE4;bL5B=dgzh&Y^m-El zDrziTI@a*h3PfHyT;1|+&NNR3Sv0mrWf$(1-MVCD(RS}0F^vGMg}ITH=B z#ma$v>T62%X+WAKpYPOz^F?LJWK@Z^_Cs-cM~JsM5u)Yaxg0cgo4*{IfLIbjJ1dqq zF94!uDXi$3ZoBew2vJfgS$^h{5q~ZgVBs`1P@>dT$5hbbm9Ve*zv|i)Y=W+t$z=ke zlGZFeE2miz2RT39OEpR$kRQ#u=9v)&HnAEW8@S8-C8wg^djn6|X_Ld$5v}P{lAX8# zkF2;U&@&62NlWkR9x1epnDFZv7{iiTu^$oApuLi8fK{ zbv*H1RbGf36f2!!R0i7$;K-4sq0Ek-FfK&^mH4%@-r@s6KshS`%~?kx#+8g=SPL%+ z$e}P(&E=*=pz6sS|4-l_B+B9-n_kb(ois8b@!1o3=8`fy?t-L@e1;a6-_!cG+2Rys zOhzZXj^W<_SG&Jc=W#v<$&&fJKW+`~gp`YoM5VXE15X1J1CxeDfVHx|zt`t?yI3>V zoC<76YRv1KTxr)Wmi`AGPA@g$D^kMKso9`&v7m=`Q>1sgcx$Tju;h9+^VaC>_xt6w zG!JEbUs{eo#a6r9z;N_UvT|CkQrE3J*1HbgE$c12Cw%qSDv|s;ke20fp1UeeaF)Eg zJewzH-hU5vN6BF08SShg3DB5e(VbpYTn#Js4mXJ_@6$Yb&gCn_qipP^44!gA9Cnk# zlZ<_Co@Nic?7j~{a{C38YVM-#8N$1p>ij*N@s@+4!*yT16EV2gpHhs?B=l z69RdY7F?*9w;4{hkG4@9rpr+&MchbVAxBW5JOdVaGKKx#Eb7(~KUoTdg!b5-eulSx zQ*DYRCrm+hS1X-So?hwDujO?l+9(#(rZ7!pQm>T~^zo+>m0+_MrA~2I6mpDtwHV(O z!o?MI0f%K}mKN5g|ET>!B zzL`^~?l9CMmFno>Dm1=%zCXx3eQ_+1ie*=y**rPLs`U+%(7l7ORL5VuAQJcgwcM?} z6Z#8?@LlKVKQnu(f-Oa7i7KB)?RH1DK)dV~^X-yK0chr|Q^IhiE_`Nrd^X78M|fb9 zteHmNmKEGE^gMAix2qWNREN{p#ohcwD3qifZO!8Bh>wdFlavfeJ9rf)+jK~Q8tStT zKdshS18p=}phni!_2-IIj$-(n$E zUP&w}kq368sP?bQK*czT&re2tc>^+~C!>tTlb(V-)4JKXE^1MeIGygVzlwI1%OZUp zO$~QmL_~~$wGnjpGoytJm&SR{An92j!`J!aSl%x=%4(pZPggbRf1klwfIz$4UO-y7 zl-H~Y)2U;-n6i&kqd4cWA3AzWvGO@GY;*{@Z!%F34SqekPXXfwLX>gat496C+3RF= z9c7EFh}=k<82_kDQiwBYP<*EDOc1f^8Ksr`NagGK!X%uh=f-gHz0v7D^5iXsZFna? z#1AIMwY@xe;-%^gjk{(*qD@80-5~=SX5fq9{|2O>>O(A`AZG1^{uQ$dfktwKD|u|f zV(pZ>jE{L!Oqi&0F&sqF7u>L(Ce_?Cst}(~q+(i40ONzg;4uE^bjC4qJ`3arDq6p8 zDQ0wpB-zoK!0j0RMI!y1EmC0~i*>x~Uh`%7wM9_6=Uie0T)OuA5>oEUt*0FFh;J^QnJye8y@z z^_w&g?!>C(sts!Ai`!|SwOU8#G`In^@e`K=ln)oi(GMaRh&$Ft`n?lZ!QiMPV6w_v zlF=^tFr{piWAighK2p;<8Li6`LXcWp_-3@!$Dc=nm}WY;sNC>ejoe41$1z=`W1}~ ztQkA+VxFTL<5?dIo_f_NYc(^l3n+Ko#+La+sMjRwLUal})k?Qml6V_DkpRTIf zB2H0}iBkF5Gunc6g_a`{?CmZtg*cZV=JFBt66jqdKA}~dOGg%JH+kmMr>=DK5vh=<8s;XBY@~L{bOD}#jr&fU2v(DZojwT8;g33on92Gs;|N(Yk2(bI>iI(OpLm%V(oh0kDF1N zB;3b^nAJq5xa|9|HgDqn0@iD;X7%pu8Cq5J9G*$ah_kHqc`c`iP73p8bS*`XW$KMq zO~ZHhUlMTyU}eTEL}cTEN=AxMbPRKaT4xeoKMvBFI7W zZLZyXIUH>YGzK1X9=;S`zjpP=R*-Fzjb}Ek0UQ zUhNBa1=1+n=fjw@Kg!=!DtKPF63RY*BMdYgb@ZfUa#bFWr>w}i9L>~&WQBB`;JDND zcAz-G58R>5WNE*%T4UiMYTVE&&#UkpLYq3vzczw5oy=-`zW@j=_lJeV@@sS=Wuu#T z(x>R%+6zRVmD9n&Grhz|+-$wTD{V{f(%`rX7ms{K?-dblc?Q`|=jxzuY7@lkLo3I0@~jeTyNU6oi<*H@nV z&J|(2#j;ha?&p>jeYvvzd5YcYA?krWRH%!ez_C*kX6bCJh?TwNsZJKsG%0q&a8s&c zd2GqW?hLNtu<};n^N_C!^0v>Pp3QlQ#tB~&j#4aV7#JAr6_;RqO5k#omm0RSOJM64 zrkAFeO;j2+YH33dL3nvQrde~7MRT%i7|QFO)Q{2wLDZOXCMT%;&I)_RiadTPpnGrC)>7QV(BL>i)Z?%w7>yL<}Dp($e}wLnTGrod=e zeSHT7dk975fqY)qO_4j~Oy`R=lp0rcPyFCw8c{sApnU{}N_9aK#iOcmZp?P8WdN$D zOeV4Js%HnST};Sf!Vu5BnnQAe^wuA@J(I?3$9P-yt^r*t0%ezuug%R&{reS!R!QN# zt3>zH4fmK6j^y=G^m*+pyX7>1Hnhes67Qbu>U>0FJT_m?VDj}TUlY-8Pb-&Yrg^7L zDHJSlI*M139`WRs91GDOu;gbDKe{hi7^W!E*T6FSIE>PQH{(%Cz@lH++z@*S*K||U zf)rM%bU1TxP9}_rShL5S-K?SfA2k6X6AayoVDU1cZT~AM(KG_B99?Q110^=IO+~MA zF)8Mxl!30ugr+myE?({2^;bAmLN%He?P{SM{b1$36Qb^UV<)c-V_QQYu}^U)8x`po-pcY#Q^cl7?NN{C zObK6vgi?vatZQZGoKG{S)PInrG7+8PlE*2Ds8Z$_W^!a$1@y7T^6A2~k1>p6kC%;l zGju}Wab8x(nAg)16$xGmO-G5@X`rMWiqD+nGCK`}y{gikPZqRY>bci7JMY3d2Diip zv6I=rX$!l!Lo6~2wxv?cP)28ExJ|^XM?R*+9lQc8ZpkvDfaGs+#Rgg;FP#;4b)K+( z_6xUMph_I?ui4cyt)@R{M)+R4ExsmFJ#wOfmrB;tqYX)L>con}TjJvxQg%_9qyI`~ zj8~$=3iw#Tla_V+4ucJ1n{Qe?@wmp!%XbK1@ zZ_{{uGYrU@mMVjJ?6&2z;v>YSU>9GhYFq40P-SME`(f_P^trRq3U+tcI-pHW)tnZ0m51*K$!~`6$VTN3W)OhHP72 zjO!v$N5U*WAFg`k(__vH6s`0tW$AUw3c@aS(B&{`5$W{qRsvFMEqRs6Wny?nTNk_- zR>H8afpl%G`-8Sdhb=fg5GIA!$}W%b^-fE(MUQ=nPf8;6$3R{ulfvOzWrnRM1&CF9 zcPn2|MWk20Kl{nRSA=J5jxB9Od+5}SUiMs+HgcgD{|&;0RFtPgj;9yo7dH?heJdM% z{~cq)NRNK|&}zz9QvJ^yl#Qo~ctg^OHEHZ2Y7f9gVdb^?p%{=(2X76kctLz60BU*e zoc~}Ob?5}vQ>DngU{mHt>nS8$dZQy{N?=qVq`%832`8Zajw^BJoVeu@tU=yp@k)t8 z6ADt0%`q7&#L;kIXDpjin2U6?dcBrGLKMkaFgoGL)3ACZ;;nc|!7T6A!ECyb;_Mfd zye)jCcK)Cii%QiQJf^#=^XqY?V7I+5cIpE5y4C#-R`DR9v!!0rssc*Ld;4rDj^R=r z?x_Oi7o*lh(?$Vyc{oIx-k0$9h`ZV-3kL80J&AQgR2CDyymv39VN)L$S!C`=1tSq} z`XK3lqlhFO_ur*eL(+ji1wwsk;^M8^tdBSI_e6p~M!lZwv=2#qUGJrPH3mK&ML;<( z-(}BxSUd>`9`Aza_s8dWpa1SQhs{lK{%^SziUe=3tp`qKYFGDcTu?2mK$70(9QuXdE0dqRf%3z1!vBfHT z;12&=hJ6ipeEoFwhV$lM_v1A9nmw1E%eHJB2S1c+7FqT$diR}ucpX;&^b-5uCcwg? zF`NIk&ezL_EBiEmn5sG7PGJOdQTJ;wnxP?0kmN!K*e9+;*=&@XBI=GPf3CVS<6bE#Ktcp*<-^Bf1{0A? znSNR6N#?NbRpat2h}J0LsMXimO)R#lDq-@ehT4CMD{=5F3A$eKw_C%sSaZx@X(+lU z64ivSsR}_%Mr~B$l$j|5&MfwoeL*DFDZ?ApJXI~??=1!8d+QulFEKJI1}-KsNesGD zbx$6NQhO>Pb@UEi`r6w_3DO=gr(UX6!yfV@tNk3cI}wU|N@t5|kS5X&D-(83A5}}j zTED3{duDZSD9Re{;O<`!X>2@XAJ+7+7JQa(-omXR@5(7SwVHzXz_clfRDxfVP&23k zx!5jx1BkY3_FBPGH-X6Adx%+->z1o6cv4;^JJDQkKIt%?xXfUZAWQUtL8x$G4*=-uh2CFFSt`;YSS+}cTdIO*!$;&uBX}fXQ_c6ut<6YPg*~Ty zq*hBkBZPRRe{Dh}k0M3AFqfE15;^ISM6OZ)FHkzOB3Zc@porJ*nR5e6WlUcAZ7O-V zJPmbsfa9Y)1j%Q>n*r|aJuv=(I6e#!_cDAquAVniGJ=6fY<`5$b+2}!P?FUnL%Tmk zpy6?8RWE_}&2IG`pZqsOaid;{rNK!aP`;8v6)}2g!W6B91G(bTSUr*YlxENYvYa} zh<0&)hYL4XolA})OT{$So_?B~k}2Ht9mwRlqOm|)Kk*cT0ZtDs;}#lG#07bMY*`}z zPdvH8SQBi?5G5{1ocs{sehWX2#TT5Oh_1Sl$E|sWPdTHsg)6eN=~A%_u?A9hDQkjU z6*R{jHRouhHDnslKE2GTOh!?N(XV72KFWHP8i^PWdCFt7&>#43%+813xZFKLnJpv3 zrR3iX3(X#c<)X{+Xtc2jV1ATesZYF6%ONDEq?|FQRup$DGPaXaFT_NWm{uJ?SCohrKx6Ja4@)Iv8sQ&EUVGM<-}VW%c{tC>`)O+ic6b4C4j z1xmp)vg{Gqu*)ZxH)ecl?*V5>#rP&lXlE?*3KMY~b1)g`U?&C}!=oIng)&00Iy$7n_MIO$0)=&YC6D##UXMwRnJl|)*(qi4&hJIVze@0L9LEaZyYKH-Vi1c@ zU+x)v+&6p!DiqVzJNGO#-N>32TUa<-UgTXbwdi!j1@)AMBnrDJWAdO0i(I+ZY`V7F zs+7=(E)yzwo~=NojN6OCdYor0kHR*Ak=7;C8xi7saY8WY#3ki)s@CAxE%c0A~3Uc-80dtAjgr&b+)J@b*v4EDzPdGb(O#> zIJdZz5#WlwgmAJ#psm-QD<%TA!PIitI`V+Jg|-%#c*{U7)nvmA&fi4Pu|$jpm*CG& z)8Q^HmlCFr37vZ?TSAyJsJkWz&!~-#x`8-0Na%0L!RGcT;c~7=uCf8KVZEjW@Vnf7 z(t%GVoqFcQ)|QE(SQ;h+Mq?FI7Ns(KA4)^fa=y77u~>^9bESA>(W|cxMXa%+%9$9G zjSJp>z`Vr`*vM|=IBA9JtFCWC@p<9pP4v7@B8Ja|zw^M8$J3cRK!x0CEGo*CTeZO4@>Gr>+-IgfKLT!r<4Jr13}vu@2|R z(fF{XhYs6Rnl5~7!HQY|$#Z9($;>gRIiA7FpkYfhoo=YmEg=Z5=ODpcX8gBX21VNQ zmh)hWc!?MFoXyQoE1q&9Vt76>$((*l%st-pI=sbqy+c$4<$a}og9Ay?gx zSr^DEK}41);$9!y%FjVO)vA>q-e2`uZe$XfYGn%U+CHaq<(ySS1(qzb^euLYBk@@* z{qxmf_{u&72)1O66kB8m#zLse^O_HghOPtdS;chzRI(J4yCo{LjX^0+5vW0LOEPjE znKcTbD@jJ#S|d@5;w?+=Rz3=1++S~XDdM{%T2)z2TUKI0=qrL^+G0-nj|qJoFg9WS z$+e37oUclSfxS&QCGE{B6AUuFJv@nbl`!i3vDqK8VU60y5!Wo1GyjryeI6k11#*tb za|^Q4rVOI=S3H?)&G8x7o73+%Tw^K{GPI14Ms)_0Tr!ktG3CBM^&>i@I6LL-Y+er? zM%X-z(gq6Txu8#?%q_xnAGs``jM)2TT8Bgu(Bq+q1s9ijmp{quj-v~e%gv#ag zxxv*V*1h5Elp@*=ODm_rWz&&HyMDyuB%!^F24DPmrFutGx+#2AphhIO4qRR2^D#sy zdXp}#dPJruIxe~bdWrG1^2!5RSfW~&x4O#qyVXcw**?TmTC#RNq5^L`Qu_km-=;{y zB+#ShFVMm)8clf_8%IwVvJ^}(Hit^m4i$YAx*^E9FS13?@RRis3XpP(eTg0>SpMz8 z`4&gfZC+&`pBX2Y93bH_$drSG|#Nzw%q~c5<@tPVjZU(I9)(VZE(H3=W$ky1q)c;QZZbLTFGB_ik$yo=Z zbTU_F(L3Z8(A6&>ii`PxUcvbeJ*h*rXoxXsreBU4V$%+6nVo6;EwLGHWuy;a`)rWqBEKvx#EX{)Hqb(S&JCLmBry5@7M<=qsLe8Srq`Me9lAZ zzm~LP*M-$v2cwPF^4F-7Mina$ ztAKhqs`Wd#pysa7)0Qd7)C|!_fj~%)!{r#Ez;eSVSQscD|L;? zo;YiU+swXxupz;^?|tM&bgeS)o{%UFxV0kG6IhFtkCmwYeV3-sv-M6*zX=O@2mlA$Or} zd#KYQ^d7G#c#Z+$uPnxR+O+^ytOma>phLtuuSTE=Y|$X`tJ*22Ou=yd&i4W|fL(cH z1z{muHHFGJvqi%{Fy1GONVAUhKpIy&9f}tj`b&uQ_@rBU&Z)7M2Ll z2w>~ase7F(_@RZZ2x60kkPS9_eg26w$fgM+#!PiN>axN7v*J%L42Ql0I%K>N-!N0MoOlSov z|I_AW&8tNFewVrQEBHFk7uvi2HLyMx3)UA84|*5h-r#Ou!Ta&rnA6{6M3fJ?`-x%S zu_HK~uB(v2^)&iW(pI43>1fwp^Zpm6u2SqqVk9Lb)O^PeF&^f+GB>+&kHN9R(6iXp zpHNrXV&U4);Nwl@b?Nw;w>%nck2B@9-h6GoZ$no@gY)7xU+3^Py4h>M2#a(bIS8H? zUjg5VHp}at>|+2LIBPX3ns$!b&YVoyeTOF=w@}o(K2qnUGz*dz`~Qe+fWeAQ@S-pp zZrv;nHGm3bAR8Bc%_R{p;gU*HLfOQa~`Z=kr zB}p$NiC=z5$*2o~Ae3K#K%;o}miG01RoI)-3g+Et(;5O5-x}g|Wge*tWGiAUOsY=$ z-2&;3=BQqD*l+Unq8kPMT1jW#<{YOGyCsP+?cvh|fXMr>n({Y{u7r6U;N`*a?gN(p1gx%0mmb0H86Hu7PZVa`=BId_=(5|g zI_2HzeyZi< zQ`B7gav(VP-NQ~?Du`6+(kVR8={YDv0pK3kKrfL|6~#7SMk^9$AJT`Ao+>m}J)MlG zBgI{)r%a^RglWIzd<+^e4I1*)FuDa|-^)jgNMUwQzBUh8MXN6#*4-R!o+!R+h(+Vy z=k~CrKwua4o68ti5o+3TtM=?r^jmf33iT2!rH; zrfn(kszx@od*_NPcf*-#vA(7&$+p&HqJcb`;**qQSu*(Mr+1vH`VpmO7kH?8sB6bSADtO?{zGmI0ZEEw5&hHvlEI{pv_)(I$-=h03$@-(U_ENfO=EBSxJ< zrW%0BBMG?CaWs3&NP`H`mRUr3j6;H)iK)lN#6C5QPg|8nt5m844973#yEUm!53M*x zkZSOuFR%E*p7CByriDA(xUj!n|o$0c~_FgExFWH$+2 z_=g4{+!qE(Y>3jN|9(e=CfwZCc``@>@K$y9ERg~+%l_(nujT-rHtKzEJv#=95pM>K zWX2W6ZFhY1s|+aNbY1hL+H#5F-W|{@id)SGTs%;(74Gm`P%>76M-joh=w`^0$VAKA zs?!ffi7O*$1{LUAyH-2aSOO@Lr55hkITxW9(DECcVQ>*o!}2g{31pGt+8malYuli} zI15N{Yh(*{+Jn8}IyobRN7}l0OK;cSSv|%7k)whUc1L+s2b3KvOITU6&R}o|?HIHR zbr!F|*wKQH61p3H}kzlkf0JY1*?w%V& zin8LPmtK>q219YkEQ>CI#QNh4y23dXb=HP!+wjW*f-}K#!16wZ8Y|jhur0S4!ITbn z)P(5^vSrf%H_1!OH6*dDJ?M3x+bC#&mVxr{7&=onR~Qf`h#+)Ffhc89BY#so`s zy3LPP&^zt#T|S_TdKbEvz1!nc(Ths?>+-kd0C02nbl|hEbK!7p*NL2PcFS#=?VgU@ z5JFu9}m(dM(S+#wP`laXjONM0^Y`i7yR>)*g+0!mc#GONG%7VMcdeYlV&?L7EVsH$7b$FIcbAsX+=+YBsD3X{3z~tPiu@lpNH1ko=NH9Imrzl zX|jy=U0lMCNyt-UIt55lC#*0HIL4}a%@U!$O^~MCv#7>JNl>P|Q8Cbub62maEX!z^udK-^t7g?#6=?ocsKwJ_oLGzs z08l`$zu}!>`Wtn_Eyi$j7H#RREn|$}$H__GNS%Aq+`_V_{yG8${OL6$i`Ha@sshzbCiy3untx3 zwR|*Nas<1B--*G`pZNXr9I*mkp(TajhQMu7+;T&bqFibD)(<3*jC@ODw{Q}3>$Pe= zHGrv11FSg>RT_aGIoI@wsBTn#8}>V7QsG(d}aE&2x^iXdqXzQ2KiRlfy#O3$-zT?s2s$c7; zmjJ!-e_cD0|Ba`TI9nMmC<}El5>GllOmb9YR^Qe!dx^XLF78=-A|$axeC1SdstaS1 zr|$nxB@^&%yDswNL=|pY`ycAh3M9vO^PJAQ5THJT|1f?kdBvv5YhRfXOeg)gUj0D` znl*^EO!vuYigm6t-pX9OBLlHm)iZ{{FKkTe%P<^jxrQHGi_Ql zOjdrC^eGBy!Q{b(xm)z8N2HyqkuZ{B3vK$bk?jRK5icf0QW85Z) zh_hfx8%zSXST%j=XH+CxSn-NnrxK1=UP^eF;jmK~79WmqvPRX3)sWh}VJwnNh65w1 zpwf$IYZ#4Dl`dc_Im)tvjcwZPipTw;7`bU*iUn3%JqX>Sck=YZ0q>vmJpea&&H zqM-a(vve^0lQb!Q3^`!>8MuC}8vi{8bz`GsEKlS?yDwG!ifR?Ye46)IThhcnwdrq8 zUh#n*mjKy}Sj#_mi%&G33dyotAN<0qHwTqOoE?NNI~@o80N*e16WlGIsR_ivT#z|? z+n04V$%&_VA`pW^PMrsZqtIb>g;9)Flb?97L`-wItSiOnBIDUP zR*wK#`D3I)dJyvtPah;2Ai?VJmxL}V`2?(ys*BQyM!u@7bj+Z&0=9T|6!B$It8H5) zg%x3gBC8>+szE#;7Dg8ZOM7UcXu}l{9w=&e&enoqtp`aZ0a-}?3###?mzZBHwC_of zV_8hfpwg`)loyP>geU>2n&5io0Qngu{1f4TE_cV41#uE_%yG$VnI9N>pAh89Gm7J% z9H5&vL6)q&_>Npf%TPEYTErCP?X9ed;Oto%wIeQM8z@{-tCobgHPh(S0j#RM1p$0s zh8wz439d@oSbZvxTUWE?UK|itbBvj3@*P(dP7qy5cDpzwDV`?Etg=G0bCxcb9JR`& zM_+$qQJCg;UPfPI%hvv!E*_(ea>dT^b`x3MT<;nm(S`JJJC6r%)_ahZ%|MBKt@trM z$UVyJ3)z>)I{8Nq=f>H;+SNR)v*ej>rA%MlOJb)`ewBdg@;2tGw$+m4F>^Mhl`uX^ z3v_hFmWw|U;{6XN-{>>BwD!6k9gN6IauVG>`q5FsgXBcy*(I%Gbdq?j>^LsIuTzhp z0q?9n<@5d8RXz(l`%SDZBv!b_Zilt@PZ^l_9TJhzskyE~G!u3kEjyER-gt@4b2batYV6Sw zH%Dw-XN~ahRPYq@>dL&12>QP>q%N@=^s18JcSTb#m1xSWy@EkiR;t{2o&d#M`HIP^ zAC>1$L57e$D)6S0dZ?%y`H1U^`WQ=}H+C3BqfJ*kV|%J#hq{c};|9GFoGx&~z7g3vhhhGlG1c@&9&7*7agP z#y%)XBW_nO(?nghzAuO?Jm=6occrGVT{R&zo}0!n^o3jjBA7CiXLyMGR+53-k!gwD zTQtKe3M8o1@3f7}r7fhFCyc!lNEAI*(0G|_;pv+@i7XWo5r92!1c@GDtn9J4 zYKTIO7jEuqXn_o_g$D^dJH%pUoEU*@ZHJzd#_Vc@*O3fylkmyJiN-NLju;k*doQFr z<6x!Y6VS#NOduq~jkNtBEr*gtkI(2*6I)9YJcuAKXr5c*@l?>u8%RKznA%pAY|})L z&mA$qqw1I9zcpifm}ZnB`HFWIapX%OXvx--Op428AtcF!zf>#T(BWi@>uFe773Z+4 z;|j4aibf22Psk#lNLk*Ml-`SE!mKrqA~W!*Eihi=+nUIn8zEoF4IpXH?M-Qo7=;1F zHRdLa;N`ewiGDD;5DDpb?0jV_j$mOr6~lCF$B@&e|9p+iXL{iwRwqNz`#}6(j5ze*INCff#gW|1{91MngfG z?rRf~UWhmT!AL(v(q|gq{0Iwou%nx3%j9<^yDaP??zeLU&Q@$L@#3|LTLnP6KD)M)qWU8C21;PFh6zG1i0PPTFU%HA7yj3OkQS)uH6;Sahxm3F zwIz*lo)>HK5DU^O(Y6^KF{D&&G}iXwMiyL!mut_sQKOLSEYC?nDI9h})bV=A@^qY2 z(L7s`*;@NE;36SKGB`WO1zJ12bA`JKw-cjyszZLl&n!uy4v;Sv%7pY)R@Hwtyl`x5gEvQ0M@G8#5Tv^Hl}miS>r&H` z4K&k#^advt+H`#V{-3}+8IGT zpV^R@k7G?W6xksMq?Y~RaId`Qad`YF6ljOcA8o}hHN!JxhogF%YPs_jp=U1t@$Ud8 zSNVR$gnvu31|7{GN_xBim!#Cce#F&8%G-Rg!C!hKnCTaJD1>%mrO%Sg$(Clw@T z-Jv$~b;yPyz(0;sRC?@bGgeTK(k$ZfOxy}m@Qyk|g>`?*ZQV2p%wSie|5J8piU6`& zT))-z>9vmu4OiQw+!VN!=-sJpTDoVViFYS{YCISRj+=0QR`uMJZtf>~b@i!0!~Xk4 z=wh-Iq1o*RsAYP(4VZZq=3D+J{ZpWSH5|19nuF-U-{guzxA&1Mkoz93#L(|yd`vg( zMdNtIx+w|c>)TZM_H>bcbT*Wpl^yiPoGkHMAX5`e8tqQ4c)_QLhZ^?6MB)VTQ2y59 zul=VB2H7{OxD|5ZOfkKACK|7MPE0(E6HwF0Vw`EyPR%s0hRBH!C=7CUyuTiOlZoY) zPbifsIp8f)h?FrkbP_ohJMkAZIDuaNQQ?;yyi&gojDa0^;#kO#uXwDe`SP@L*2mXU zW}p?#G)?)ASkoQGYx1UA0%0h6*==nj#Wa<@CUCoZ5NLOveP)QSUrAETm{AkI&LZ+=s@m`O{{e22W3VApRU#&Er znIbVk)x_9F7wP@z%jnc541H49$O$z{SoU5QpuL28?3mR^#@TXRdR0(x2dZLlr7Bwn zF*;ImV~?O=GL))OwJxd2T2CBN44fuRs}A{+DLoSNVUDTypW(^sVi) z$~YoF#9A>u3)13OFjot#vq^a@h;^|pKdE$9h;C8^h(@)g~uK=+-1!s@Iw8C?h7I9DvrXE$7itFUh&oSGjEN z%W`%qfTU8C!hwy)MaWqo6h=^Ag5}&4NpC6K!xU<5FC~$cGlKV~tz8t+b0QR!#aO1b zS6;)`(Ggq*MDVp9&I_o?LRd!jPOWd5csE0{;z$Y9q-{$p!qut-Y8WqQ-Q{zhlo3R5 z1;-{7=)24BTSTW+SAlu?@x#oGLK~g!I${KG5%c#Y#OeqV#aoft)w`=$@yaCIB(uzo zx^AFchAaDeIyF)phlOj*s0$9I2XW1vgw+9Nga4}g6#$`K09N(I{Ot;GxdMPqcM8LG zOwh489tc)-9!=avJY>}xH#K{y9Db@4S)7zOyVVKVh~0ay-U4fe{Rt|>6O(M|;_^V; zF2%y)0oZii>Ug=7u52zay=E0Sa_PG^2Hu^8x@<~&vvwz&8m^bt(5Z^&o!K@e*ff*msK(})auVYf_(EhauB@o}mG(?&q`JvO}G zA;b&6D=Xdr@pdPV9f)~%F6?t;;<)GXZ~cZOslJz}nyxetbVh2YZd$p34gpkN1;gkaYDR8z3a=~yNaKfZ@4K_c zjwN<$Yif30dxVM~Ma@ClY3-50R|`4fr;@&|1sN^ejhi4SZ;6izXZCEF!$)2Hg*(xb zv&xOj*7KunYpZN+2~_Jh>ha})fAzWFq@iNd_0~VFJIe1rv&dKNIP2EU!sykF^ay+k ztw6rdjZvz=jCKCaH1?v5^X%*O*KAdw&qk3qW+>;&A@z|2N;3FDyi(k#iP_PWmcU9j zW`E0sFJ9%7A6mdwcl_6-5K`x!=8U6wO5Es4lfg03cC znOIjwGLGWq|9fn-S@n>}y)Sfw%p8po%CNlgy7GmQVmp(S86N6NLe`uo1cSOIjEPIx zWJ>n;G((W>xWRYr_7oh4!Qzmj!k}M63)}ij#^pU90OQCj2ZvI>ST;-_QQ#)vel>d> z67AdgU8>x%(3_S`J5HYlEiW;)_aY-D+YQ>-KTq`I{MPcXTjf1+w`^`Ej)DQY*6cQJSN(iPl{<(*#lJ27HhSI*(qeD@lA_pzOp@R*}U zSv6Ng)kHHcj1?+sG6!UsxvQyCvZSRDI5(5osUTmQ6N|LmOy!Z#da2^fulQvYm>~wA z%9fJV(pQKDMmbrjzV;rWV`fr7U$AZupt=iV?Z=pa8DTX^I2gQPb_3A#Q`e|&)rzG@BMQ0)AQGD}M z1-a}oS6S5vgl@_If7d&)t4>&^k=RhRr3mv^D^O$?Gl@?{IDK=jN8Y%4HX_!!8s$&} zCnpXm*qCgSm$Hi5ZZWTHSt7(tgk<<#7+=x%15`LYCHgK|Z0wnDzqo{wnnC|1U5mlI zA~y$v?zkly!i|yV7Cze6^lZt~e#n`%Ra*b%ytZ)85Aa&fJV@mUBF|}2ZPPRU$Ah?vVg^`x;8A&Ln;{0jM>q&nq>+> zXtECnhJ;Mjk=hr?6-)E|8sA8qC@v=`;zkyDJ>0z1@qBAIh}kaD9TwwC@j+)pc79_O zs?(ZR7SBM12VXz zDISc93H*v^c?dZE8K}S@_WktKLWQ`1{iQTK^tvp=RZtq;mrCS7GGl5!6#DvwuMz)_ z*I4pV)_K9$swGz7mO9CG+-uX3QW{o9C39-K;$f4~^&qKUboy{l9S%A#8zJ?^5*qb- z?K|%(0fJke<#taEB2g42le+PC1S+Y6^0Vx-b$zOd8JKw3B=Gnf2vi{oAVS5DCY;S< z`GmV6L!Bki(f~amX8nK1%;8bkRzVcR*sz9(BMZknRY3zC;o{|1Ql?6mbUF?Ck@48ABOojE?HdrOWM-;@DwlJ~~D zb&f^y+WY0ZG2QR|o-jgsQ?p+5quM#1>z(XwR~6`W7MJ*cHzfSEe^Wxrea%>Vsh*4o z>Q{8ptnT*BAsOE zPFrS{%r6x(*Bu{RE8U!sI8+Pavm0~rD8@r!oKY4tkf_VXb$ta&ifG&d=W|Aw&Y`RrWEVDPRw?9i&hq zch33h1Uuh6jrIXG6{-?Hr^X&GA4&RDC3{c`6J`BElmiN4?|47B0=Ac z=MPe;l5t@^q3RCIa#bg&iGJk!NKxM!LrlA_R+Y+PXJo1oNBY37)e^1KRrHie!2u%! z-A(aXwbhnN0IN+~1z4-dT8EQq{EH}1)7D&xHxcl+!9~PxOh&a>xkSVj1qJ*0D)Xs? zAW^c}FikHHZsN8B5VCF)lwHlkV=#pbLdeypQ`>&i`)E;zA=OBHAjzEyu$Q2t9yCF( z*3qh!iUkM8yF1wu6IiB}BV@@ywQfX&L8;@{9V9_)(wf)&y;ewLR=TXD*X&*J7g9m$ zqrLNC^~$o&aS0DsjKY=xK;=e|X`QmI)fKOvJ>O)z6vv*pt6@ zOq`gn?s$5mL}Xs2UyD&HoXC@M$whnA=%aSd5VvF%CQzfy+aXYD@U_5`S%7JW>Y8ia z&(D2)(Fn_A$wC=Cw2YwvHk>KjAmNIpg+%3eQHmn0PEH(V+a$u|kfB@wCl+w$=}UQ@ zfNYB+GO?aJ(<7fBteI*;=$wXXAa3JUi;hIWrf0*3jei@nEu}<^$$B}(k*gs49l|iA z-%+L^IuYB8fo-6i@l=?7nr(kUjWYK3Zz)6gLeU|PqF*wzzhu_>q0Dl-t3 zAaC3j6MP%aPX~3Df)k-ZK6wk@t*9!oe0wK_^{PIJjh9Wjitu92U3nrww>t$&7+O#?~)e1(<6<4 z$4`W3@L9M#*HUP~2VwuAD|N{{YYK=Td&c!j0-7J|0j6A5*?8&5^-$X5tWOuCRAn;Y zwaX3}|4MP0%Y_i_h|*X)-s<_;BaO;>8N zIM^dach*9|6$li;K;^_JEE18r_t6cD_GCb=G5z1m#GliX?0!0$}NbQ9Je|og@xpnhGnD!$?7|R4o^*DmpMXGN;BQBLGS$w{?Y++ z?pvF_l5Ek{&CaO1;n(9|(0p`BKzqdTv}V=^5ibMpbjl&)b{$7Z0UB zMc_t3i|P|D1^zE&ky}ccgH>W0Cc7^5)SxUb;(QE+QuZPR;;*fJK3{DibW6Q+lKu)` zE-T}NdNWoAM1FOx!nPcT#_Tfgl*J%CjK^^T%&-1ZN3HDm*?Ec!^c@PW zrY2o+PjHev0k>vmy26wy&f@#qt?n?VBt*&N&+{WXy22E^?}EpP&->*`Ww{ozge1WLzjM!9HQs)mwbEb4Scw9= z6Bj`_Hb9iOyz^L(5nbw2LjT%*FOTBY14RQ`76jW*1<=c4^NMQXnT4Cuvmo&*C;~c=-XET^s414J)hyf&_Q#Qi87Pi z73Duvt%BG$6*ajmweNtCLTetOP@EoiZY?*DSxC1W81{{z+3v79)WM@>VF#LH7B_p6 z$r~rlhj~Dn)cI^kH8Fa;Ib4b?7ZF#KQj?EMe3?F$9{dlN7~)a!Av@$8lM4$-;!z!) zr`TA3d08e96~QTtn&X%tBM%eWU*1WEIjn7%8{30H=x3CQ>r9d_Ep7mDsj6U5^@kof zaJK9{I8+9i!z+yIr41l#vKfUKO);xSzQPl3q$;-OxTcLk7=2knz>QIom$OTR!`9Wzta`KpQOQl(;lWgHH_g{&4w5yOzEy~ZZ zrknNyJh1A&%Y&u3P!GqXjapzX*gS;EZI)~*8hYfkZ$?!%nH`$p%ufl3z@`T@iEj>m z-tdIZP_pCNY-Ce{-~!B@zEpQX;W%BwT64}$;W1%W05j>~8aCwm^fb{0;h*E}foBi$ z`^GGSfBb@^f0m9d5zs<0p^Vo%g&?l=3L5Vf-9W92yIO|gpj74ouLE8g8&Pdp97z){ zy^$JM3Az#DpcjnDk}NHS$lxBVrX%kt9*k(QQ*K3Zx)*)y#yuECPQi5=a8=h^#k=-Y zBJvwM0v8A_!s^VC+b5z|=h8dNM~J;Kb3KeB(^zD5e6ch=C|j9a6cmVnWJyO!X>u(F zNXMh1^X%i%XezClvu>hL6>KvOq)!$!ML2Ex&Z%wG5nT<x#R3b<>0>r(DLQax8`8yDuZr zB%WkTO2ja%#fJ^cS_lQ4Dl#rhGD`Lb4`uV5qariDC9*lSmS81vQJ-i2H3i zg`rOs58Xk5XZ9yXKD*6LUboK5-?uSdP~puv#JA* z(^eh}^OmN;*a8*ExbUA8UbJRrGJO9ZvY{-P2ANg*(v7NzJ2~gpy?E7)wePrWl-Pwe z_%7Vmz$iZw5(NPY;>|ff1j{Onu-2A^XpEp-i9sbqM7jfGUR`vHgv95zIqyk?ucZ0y zsp73{%d(AjCqhQ9=M+t6#w~1T-%dXTX*7%9BYq0Fa1@0g^GgxURcVijNt*>$S02ik zM!T}Og>l5fX>AGez%`iT6#|?iSh8(;Woo=1%C1#MM^>2iloLR|Sp=%=mf-8t63Ves zlZy9U7-K57%Uqx+6t84ugr*r&{F(xEdXYjhrahBTN7f9zzCD&(5HgTPapZi#>N!hM z>H5*iMv%_?gVN8?oV;Es^2=frNnhZ?@f0P(G02c;m|ZC*kYRL0fqy2Z?&PC9wek#) ziFR@PkSB?ttYJ3Bb5)0d9Vq(^u}?i732F$4uJ|evK|m)j6W1J$;BnS#JSU1eHTq6X z(~u=CVftB0fSw^yG34BsnGnuNcVo`V)HJ2MT|No!394oC zYGVJ@b5AA1rZH0S|MeUu7EAS&aCDPZqylob*0~HS9|FzEcTl0Ek6UWEN20*1)=RMU zle*H7Aj5GA1b@7_d0FBt#3GFyE?G1whLQ6#zLk98F?ji|q9xn+iaN))8 zYbM^10uqIwURqeht3cg~wil!ywGC{T&-`?QN;?E$mBE0S=0jT=TB z$Eg(}`kH8>+6v>SJwNiQQWGP@8Cq19IJPE>DF#akJV0N?3@&-PKK7+zRm9*DAP557 z__Lxl6sDedJT`vF+eRo~PY9JG{e#%w6d#7@c0(yoE(Pf^XhCTYy`}v?`IIQ#SD-F! zd-{zs8GMuPdF}`bIDD+~P6`JHC@;Si_Ph0Yr%5Ifim7~OlRsBuh_H-Qt&i)@!9cFB z_eSMrT220aqhzlFjH$jRp~HcgCE2A6XTqdk}VQW-oJr}?qO97Nv5j4rh9Mx-w|%w4^E zk^6?fLB_#im>R@m7#px-Y&nn0{lPT253j(;bXocfg!p|cE5*JtYJ&i@t9xNJaJ>!@ zaG2;+kAy{v#0$+*#dGtf$D-UR%NEh;XN~DVmuS^@ao!NrBPsbJ#8LXPcEl@LS&>=Q z;4V+u8b1@Ukfnu3Wp+>&g7V&hFp-HxTLdFoacEg2sn{xoogf^Eg7Fe$sLm)|0|jub zzewa#W>M*|ID@ul(EXIr*o(8`)Co9vHTd?cb>?I{|4}5-f5o zHx$x=dEP7w@D{)Ckd-$#wt)sk{JiC0 zJ$r=iVL3c&@QV#&$xkN4wkR(f$0(KpPK={Zck(vK$e`UP;-s!1FET zCleD8BD`Z&GJ3Dkd*21x!w^PbdoP7JIg59nhI-_PP|ij6``$mh(I<81{eM5ZE6CUN zWB9u{7E6#TALrt2_@D?DhdZGYIU;1-yB8l?*2PCN4@vu^tIFl6IH1)=wndBmb)Oe&&d=yoTwwa7cAl^4sOF(Iq2h1zGqq@Z zFY-cgObj|L%nt_h{CnU zU;XFu*cy)Sna6=9(!y!bYu$J!mEvTCUNSPPt$?U%XOmIv)JT^4A?kAaI!cn8Wu!E! z`B9}*%=4863Zv{1?>q8nq^Vdew8^O$v)ESU%qtd&1eb zQz^z7Vb9$1hs))eFyn->CL=~kNF*2KSXCC4->v5`kbNqExEz(#^ZzUAh_ov2@M5~; z)Fp9NU=Pr)E524&gWt5%pB>}CG)6xxNma-8jKN`9+^4IKoVY?jLc!~$mOgRH^pniC zEi|E$c_}oHcw#})hUjj+dX5}pN|;iRn$moqHNnW`4Bt@kg!SBvO&XKa!!Fc_dQm7v zzfc-M>0U?Lw&REsdFB#pgjr2_3MZF#qgXZk{L0v-l7`4Ax#Jp__AUta zNKtgpUygB=bLL!Uhuo^l1jrPNI-w3W1nhQdNsMr+XEp+r_L7%gL+$EN2bDT0M3}#mR3* zdd0EBFl%VZR;LDQl2n!gg+M~@mf-_SkXGAbkv@Gw*VlVNb!G$5o>_&ufqc7ILK+X% zFPBrFezYM#S|}H^d^e2PrkXGTu^pnjsRSd1VYvqMpPtp8wh^I0`UE_K4cs=jEh?`d zfakuw{z02x1Fef7)LJL`n@W{@ZLUlWk4t?ha6G3O6Xm|S!MiSYF~XcF z*&9`AVEKmEnod-5AXUtg$|2(;&lOLJ<2@2eyfvVDAyti1!K8Z$aUiWH0h5_6h`i4$ zDc$C^k%fI0OD)SI1Y6T#QJ3TUZDN8c)XH`Og>c%fd#pTCmOxvYzNGXZM55j-^CNnf zF592=$nwQ4byW{WTDgj8gOQU(OHqWcsNz^jJ9Kh;w&bK35YBe;Qbp1~UF?KsfV-v^ z#G2#3-XTaZNgt@Zn}q>nBR{YyB0-qL{>n(ahCToDM)Z8b?#2!Sv2epik()-Cyl>Al zG&4lZ(?+pZ#5mubw zDr1C?vgYJOR*M0Baxh7Itc!}R23;~ch3@w5^>qJ$`Si=HT0T~EwkRTaIiG#Vy@X>U zu~?I)gRg8BliI&<)6pnKgQx8K#S0o_R?u=Claa<+L={Oc&(hC#-JUl2e3FV{-jeD4 zi-`1l<)ZW*90QR;b>BOYc}yK;;OX1OvZrtp1cy0%ax`n0+I>mkP^-(D&3P&STUN`N z-9HAHFGncIs8xRz!rUmd{wvYRqTZNRp!Jy?>h=>0vAH_k5#)D@&6{~2QjVOBipe<) zzt2s+3%DH=LsruAYI95DK-a_@t_I|>Z4qpP30@H(GnV|^G z|E`+npYr7M31#}KP1We9yU=^e)e!Ym81IAMM&IJTV zJ~61_NMRvwosjvK*EOq8Y@U8B{DmmZkAn8#kTr{P~v8y32U~7jw#n|5%;DF;0xhM9lr}U~4l!~4ps-+<|nR8BS1)r61{CUX${N#E3i)GY57EqbaI`B`6L>_QRcCkon?0X2y0Xu4Ai$~yAJ4M`YMR*DeM z&rF|p*KA@F`R@r^7*g&^d7RtN2vyboxb{g)-6Be1;C>UH`4GPtSUFs#q=-L{3L^$!S6a$UO1FeQ8|;S`O~iKod)O6v#*=jESX2Q|(BRCCdQm4?xuK z6ZL|jOqN1OW||C4=XISmNf4=e;&!Q`fYa8i33^Mx6|Ie8X#a`AB*XdBvkOUZ%gP zxM5Ee47Njlss(^Y{s)}mbm(%bj>v4gMe1~rlNE1pr{dRX@(0dO8y!VC`zTTMgx}9H zm6bIHIcU@gnSGZ=q$V1PZvyLmOUIW+(M7Px4{8_XAYtuh{8fgT_l7NIcF8G_7LrgL zO2M$%+M2Wb{}9_T@TMgvoJoyh&IR#-_5|1&#d`TJ%1G|R=V1x`D|OO98RfTV;0o*IUq${xsc(AZ3qNZ1 zjcNk)Kec|fp-FIjVe;%s0)sRiJ%|+6aT>?p324#Nu%y=XURq*;Y?ttbi3-yTuSu9R z0JDhXSPZ%pm z@Q%Ao&DR7ue)Y-Vd8IQI-l{i;5B)|nw{l!mcR1dW=~uCVtHbsrg`7r{%77{s#7b(h1l~} z<*dNI71pol^%hr7khIj=fn)-5Aen=b&`6r+i&@{R%x^>@()$X#)lhS;l-Ko0Y~n<{ zAUJG13)Uz?qc!JFKpbkfjpX%SmF4xsAgG+retykKy!sceJm{z^uReC5n9d|Qb@R-__Yuth|CmD z`St^mG>)^yUmC8y@al0SWu1JC-e+xj$o|)sqHm44Lp$$D@NR453;3-cy?f6& z@lyQ~0l&CeyR>)Oh)?a&@vYh|+nQSVHr`SYjc^LOj*fc_x$_(NT=X()ks8-)`Xb>B z1r!RWiEH@l4TczW1K`%tw!QTMxP}y8Z^OB7Cyq}8v}a!^mFM&>KjNIRT&L|JA;0vz zy7)&4(uzqUP;9D8nlQu_s4I^D#TTNFu5*oheZoQb0Sfee;~Y%FxT2zT-Pc zRW97F7T=6x{#xcFE38Kq^v1}iEDGe=Es=B4sf95qPF)z{a`Z~#nO~hScRpoF3hB{) zS1TgMX2uxk4Qj&k5t}O(Ld@hos!Fq*fx9L1ymmh7aW1Nqa>i4HXP#Zi%-J7WGL}MU zC5*B%8DiWjBeyc`;0%gSV*~!YN_b1WEGdFd*Y-F(?{$OGHH?qEORNt0Mjesc8h@Pv z=+tG{v|M`^j%C*pTCWJ0oPC@Yh$JR%+w3LXpVfDAkbNoPKZYCocWS^=?gdJe3Q5{_ z3bR!vj0d@REYuz8Ar4+|F+fdN2vGIc=3I|di;_c39cCF0PhmLw&e^Vtj8c*^>le{r zZ-QvH^m%0^;&S8$6+2?{N*SYgG}4x-ED@pUNIKlq1r!eG$cV|ijZ@JYz})9O0t7PH zN^pB?_pEuwKo%iRcFlUJ$hd?VDT>NyOpyXL?5I6$+(AA)4p?b#N6t1OKbmqchNWa- z>e_Aq?~j#Sy1~H!<@$WC2Awf4PevsZ85HNHub!8rJW|iV}Bcr>V|^NDCD536{2|ip66&*BxI=@T%ulYu-OCpRSE<^&m!+qm@^`ow6t|< z&e$zMSJxDgAj(vzkYg9WFvx{K~OkqsKks7j=L39t5?d9Ku9$pM>9a!Nf{wI}Po;QCY*nE+_h-Ip+M zoO*>)4S{BZI*9Dda~g z1mwT5t@Ex+ghyo=JY=e=kLYRS$yzFzM`0bAX>CxJuSn!r3xWEur-qnKceF#&rb?@{ z$~_<9!?zAZW_^-Y(@dvF3dBCmtsX0?){WWmma*ww&Km?~L4vrtf55i}#1(Q~O9wOf zs>Z4C@Rj=5Ly${E+;^5ZQ>4Bl0XGK-WOJg-_|6{3Y-#D(N_gW1nBln|klbjp42-!R z)|0Ltvv{hfgoLndv=RY+Ayl>Xdx8C%w_G2_ALixOgK=Vsfiql6Cl2hw(WHx6{_!VlSN=w?>6cI zNy_bMqQtF30L1mY#&Q6cz)wcbZi~v&EAkN?ud)bhsL@|b5zwFWO1L%a4jqAP&Vt>FN(XkJ%uO? zTL&!LA5xKMt9f>g7=1hktes@eN0BVjXw_7vc4|jrsx_!O6`(qytr7LDF=)<)qrg3N zcTuMw8HF)vTyZ4P8hKol(HZ4W94Y=*C{neI}JpBr>b`Bo%&fjNO)ep6IM4uL~vTIZQZbV92ccnJeNLZvgv- zyUpk1f=QY%E3OrzWl_nrx;%RfuUx_uY()^4ii%UY*?T<;!X@UT!#ggiJQ#h0)CZ{t zB@*h0;#xL(i17t0-gjC=$;2_%u0cUA=5+v;D# z6kh6bmNIg@lpE)S@vqi78{*As=!c62E9KLSo+c~Q-HX!W3ar3iOpnOmy{8B3esERB z^hGU_`jHGg!s5z>Wf*@kZHh{NBb0g!Nhpc(vLk8KD)(qsggT`+`dZ&;;3 znI>beaY>_2$pj2N9ks1iL_jd&2de>LlMD%#K&&2rki3{RW<+YTXs)2ori}G>w=^`f z$%b`8HMGj>Mz@D7%8P{&hGRTn$0-VDX~G;PHLNNUVc&fUaCrh+C(kvSd+;7A#4Jcz z1{UPtt$NjuARrTjuf-qVQjVw@HCp@|4DyvOSb;fviwlT}=g3wXY7xk+Uz;O#w>n%) z!z6K5OJMO@(`}2+Wx>2m%*HvmCTpXzCyVVfY%UHly0#ZR6~6**)Tl-NuJZ?pc(4_I z(`IO#jj_M~jJ46(p@k|h0kYX=CC#qws^M}nO6p5zT>YNvw4z52_tBHgkH9p{<_-u{ zt_pBvRy;L4L@AsKr!cu>#ndeq0~QYLLOFvV_Qb-J2=hueWK3(& z!SSUO;N&MIc75z?VuF@RFa9)oB>?>t7Y(H*9wQ-%a)f6E2I+!DBukLUFD>LN9+JuZ zE)_|TNpc-v;;?`|p~Hu+4@xL?do}4)sMJ9qKa#Fc1SKh?nA%jrQrK#mP*o*1b*eL! zRLe0%TsCC4{-D%qZb#OgPB(7X2`;3(jOw`)8+|P8Ck?tnV#uf*)L1wBUKAi#G)D#FBIS zDtv_yi+}sNUmS%H@R8%Hk>z#QvHsp+|BbV?+ZL4n%C45iCeNQQjWf-`|Jxd0COaKy zl-iZ!y=0U6BH(2ukGHQ)HM^Z%hXQ+c+GEnd*9L9pQ(qgYc~R_omINf6XHDX*YEMSB zk1C5D43fm=BCSdINM0tXfXOm}d>?NQuyi%~k8_P52!1QdADiKo^KNAuU_1$AYh7?& zkvSpN$fTv@0qIZqCgtdkmI4FMhZ`nA^X#mpTRG9W-Z zs+DQq)|SO{G&Q73Q4)-@9OkK82`hT4io&^ZqwPahR*@VcxjkeCRadr9{d^*MJysPR z^6nKvs8L&#WHRb6l{~1g_zA^Fa$nTqw1q~Wx{&*?x2D0o(^itVeMjwtiW2mdG9WPN z=wvis*Z)b4h0@$4&E_DO$Js>#jvkBxZhi|MX5Ng-Z8D2C&O~0@&Qam?@=4Gvgeh_F z**16nAPQ2t9v8Idqa1$j?_f-e8RX#Lw_=AnLWLM*^{NUf7MQwxtr{6(Hjbi+hjK@> z;dh0vDL-F_#wk*A>dZOMO5IX=iJvj%`8uK$5(Zf|+=f!wbA54Se^)C4l!%RlboK=x znpZ_Ciz5XTNGt^dq4;ph7>yE*2O~Y(qnlILz>Sh;v^vB8sCYYGqAu+{3_SQe+G!|f z9X05vO(3e`Uri4Zq`|!x>8N!K3#m!G2mDAB3gZ`0(}vzxUPw!_I|&pzXIzQHi%ia2 zNFixu84|QO=q1NQxtBjkY8PatluTD(c2caF*Fhf7Zl6cZ@t*n8l#EbK-y)?T*wY~5 z=jn15bVi9$wyNP}N$Xn5mG>5?6~zQn>#pNglt3{3vp+e*T|47PlqkkVWSrr{WpKMb z;G`BsIEn{VUFF>2<6;*kGlj{(vO~pO|GMyQr|#r2&>@}wH2nO;I6NfUx_J8raLz#l z+?$&zy@GJ18pbbm+XqjAe&$9gIM~(FjMsyawJqWr403Y|)!9yMP{k3d28RxsPl`yJ zO_5MWfsY&uLUDuHr;3PFQ4}fY+$PL~SUAdW6-17}p?9M0>$M^F)M9eYlQpK-8){pH zoSun9HLSJ9!Ww2Maq1@MoQp~xm?uAl=ecD8sC)|4mqn6J*+pcVv8Ydzc{X@8~X7OeWq@h#zZ6G>lLR8ZpiP&&w)OE??s5F9tvN8qNTp^@;IRZEsnJ5`a78!^y6 z<9)ewmd3CTLu(X&oh)VPL>q-2$}9-pN3upKgnpnauwK8h;{+xXP|M4TKI%2ctV4PAHemw=3TazrkA$hoG7H^Cn--s~f>pA)1G zGL?69JBD(oQC?v7W%Y%wC>X*E>riM6YgMWlXrRn$g2@yJL49GaosKfs5NZMtPF^SI zr{dv1_x@!(x?>7gwm6y*?#6DCI-WjBBQMFZz6iA{KlY&w0WqA+kB$(z{gm41`S-ph zw<@;rF~t-?w+55f0@AG&HKJeV6fBX-3(-BOFMY;m=Ch<5zvLcBrjBJCoI66HF*&gdL|!PNebjyEoX zV!%v~D)+=+gE!c=1W`o0<-x_s!4y{T8vy#Fi(sR2=7aO}`)BE7d~3kL8;A7xBlQQs zej!cx#~e;n;izXDV;>PV%Uv#9hvttuM@0o#SJ<{Mjy!A5p&E%Ya(D_94X?=MS_lzJ@l`#jX!y19H}IT-A)ELoeI2M+&L(sfsQZ+ z7iAP)F&svQ;ODznzn@fcMr_vO%I$J!K}=YbSiR(zGIz1#43x3 zY*B5VpIvvB&%f&JE)lfIH$>xx zhgl1(N8&|lS|V3$L-McUz2xbxk9}*A?1Z|N|65d_>%afb9q+?ii1ZFD>^!UA&kvg5i@9bg&9C*iiZ)e}D6}yt>iX>I+?ACX zDI|C`8r}az0+afgiA%X^C4o<+0QC6I?IlTmyBAEu4ao!}YqX*zpBdWySB#$buROJ} zBkrb;Z2zkei97VH zerp2k;uJcSF7h6NwSQu&u*G6jLXg_@-{7tA5pIvXE55KP^20#1ZLUpzYTf?;%c_=r zRJw4-s{hn?XsE94dXcA)HP+Uq`ji%5K5K?-sHmu@(3x}Z$6ZEL`DFAy7NGMhQ@LuV z6yl__IzVBcd4c~a=PLuM!XR{LWJp5>6zR*EbP{XH8hzZO>}uVIk_Y0KZm#Wdg8L73 zpUHzgmz7}h%s30PUn<+bw?82C%rh_B{4Q#2=9#-QguXJ*nyPrjuTrk=(gROyR@c6Q z*%D1#A>m-GEHf`9MiNv=SM%Q#fy}Bd%3rRU0OhBDYk-1rRP-E;*{p4?Q-1YT^OE&x zJx7JL9`$3u9+eA?e$LADn6yLHyo|GSSf>`mR`P$Gf&qwD^U<1sc!+}4NMZ3b)>`i} zT7tVm^-h)k7Mkpl|B99WP)w2}(>4rBuOvb9xio$vgQ^Ha9r7{EJhM{3MjPGOm%B7T zS`8ZjuzfJ4IfSh>$PIj2#qJTOuILysv}?lZ*t~;WYvy+C8xirl*WwU{8v_Qf?L+?t zu+-UOSx|<%g(yZAT&qXmzHM>b5ZM;{zo#M8mRjh?$J$IkI0kXII6X>v&z1rU#xF4-c)Ly~<>x35hA;Z4JiXK zTL$qV>eO!dq;iR#aBr^oss|yB#vF1m)mQ!1d)-dEkc=K?zXQ2?99KT-w_O09f9<%N zb|4L;>z(=km6wAYZsy&l%0vuk+V@)=iYH<5dYK?*nT<3u2s0NQ z_w{HkTpMHB*f6x$;S9X%gdwdCooj`fH5J|X5y7-tuIqL2I7{sS%}w+S8o6NCEup;0 z5MFaI4OPoRGeP9EW>sgRXlr9=(T2j&phiOp2=I#!S*KFcOdvM)p}<|58Y*aLw$!-{ zgSST;o7O!JSj)b1u!0##$Y3d#2GweKGLN9dIC>nnFYjAwW8D(uPP=8x_t}{v2N=F> z)C?IE9L5_W^*rD-j0^?CE$6%(l`osYcrsjOML4}&yO7B3GOkzG92;A)qUj+Fw)-Gj zy4={AUut*VYfC~Iozg&=>s?hLF+j*=uGF|yDvLL%!az-fmwfUdF*DiQ>0m^|ixuZ* zo`9I?Fm*A&OnTajOVG!GIOIrm+J5!u@^sG^I`1Pzj?=(9YR;2OSU3b4%d0O8=@R%B zlYhC;Hvike9%vpkX@z!8y9wrIj1bv^Fo>=op(iGV0CuJn0zMQ!1ZR-q$lf8FMQ3hI z8)*oEa6AVwhfSHw3o?S)9-t~)t-*^M0B}VIAhQaLAO%C!=vNPO2gfG56>we$;Jl=5 zw-hDGitt^?LJOiSFxCd!0Ll|!1iJLQf-2RahXH8K;?X&1Mc}KQpk`(V9-9Jm^DF{> zMPg1MHBt{2R=zuIaJ2+k0fS|ZjRwQ@!A zUd*9KX0!E+UbbEoTm#9{iKNnQm(riYvt6+#Zlo-A8N_nj7k%MAT$^;G`sV&G!agP? z=g_mq(#-*!JKjgh=xDhg&dp+a_M4rpK&bM6+>t1Sb_$@Y1v|X3e)XJgTCZM=AY5~h z9|MQ}XRB86nttTW-w@4NZf4`#TG|`it7b+4&St(dH%!dULD~1YTpR@6G=$DZJZU#D z!wua#3-!6BT*C}gjk2)a-!$j7pTA-8azvyWoQZ|&=!RUG=V<)l!S9_?Do;qO(6}B@ z3_By$M=HwD9wxt00dJR=y&#PU!+-SsHS(FoAxj&0AYCQT*<*&7c1C~rKzk>9X`=Yl z(CvI!Qe{UEVg=Qr#}CBuN)YE7anUpyc{8p!z_fC0Bgh~LTxrNLRqTPF=8=p%1HhH} zIVrD}URhGbB1`E|nF9}il96cd)hY_d-xJ&%xce4Xs0UAghyO3u0I#`mgqC_rS#pn# z-J)%y|2p5RR0m%*o#dblab2oMQJ(s+5mK0%qv%wUP-`0^fi-0?nX50MP6haUt4<9e zEn{hcLJ5xUs#z+CLoFDsL|HXMZ%Pn)c2viTwky2=3Qkek; z8KVYkG*{9os>5He#;2v&y+SKtn0C;7>WL3@SLxyd|Yz#jC-v zsRIIF!J~(~Kx^Q7y(jp`%o-`FKs2xy8hiwShF0y={(_h^yNfU%pkh<4I|d41z}zUI zXH>z6*uydHY*gE=_6kt)C#=f;R3>lj1sWv)(V5BUl#@jc6C3c6oOYUx*+@9ByRhHU zT|Yaz&dEIcS*E@&JwRPTDBa;ymJj^hl!2q|VNiCv3Wf7;!RfH^7+h%*(Srt!VXBN9 zS4~paEG#2BrR};w*V)eqIo-JDB$q8w*)$ay7CWq&AjS9{2LVCSFzaibhqhj|Nh6}; zzE2XqPtVX9dQY1cJB#t0FOwM0o{d<6xA%-XUk*8KkM8-&9-}@^0EiEyyF4on>0gE) zQlx0>#%Pv|q{^_*JDg}5#iaa;ZFBDXPVl`-o+9Yk?R;U(U>3LbD8kx;H7){LZQ)W##1W%K^C09vDYY8SFY(43KuCwGrMFc|=pr?xxkbZsvqfZ$ zXcKDl&qPae>zVu6Dkk7?SGrnfu=8SC8HnFC5bf~y*BkyCe@DVrE7o#?qW)21Y`S4w=7YW~B2-Pcc@j|5oC>b0BU-v?`)OJ1TBa~^yEwc{ zZk{3~4B?@`D#|UoLRS9~s95$Jruh_yR?=Y*NUn|>|5f4h(iB$`Tt?jn+j8V#}4;$f+l-!Fj;(@)aVE&yX#) z0wb}49bO(h=#y-R&$5MlVZ+Uo#*zn!T;i{%qWV6>&gbGExq$LtJW!7uTg!dO*$`Rb zv^g8-K*5?55L{@85vDlj@_Ou! zFhq9*ve(Lw9#jjVoU0EaDRC_*nNUSAV1-wep^SlMt==ZYmX@XV3xav0EAAwZEq#IW zMoMExFY$mmi#%60Afy-|`-OR|0<6m{q0TErSbP*-P}rgD9TCwR!=@RX<9FdU*gF>~ zx+%Xl1c#pJ?vBXqi(_jzt5#mo+ZD$y0&u0s5B}{72Ps6|*!H4}6ZHbF7PLM0`ABf+ z=8(xlxIPht9Y7~HCH&s{Cu5X88oMlkmCWDZH1es+Dz873m`#!tZtUnS1h)6?@~9c) zC~906%p(RF!TU$d9Xj-3!C_fTRGM~p=%1$g5YWBaGG_ zympmZe~UF|IeM^#AL*zOaPDk+ZC`DRS_Y(Q<9&WV*3D*bh_$);Hipq#Ld?<8dK}qC zTWl+u>gE{44USIS3`ZDYq{n2xj)=CteR+2+(zG}zQupyJn-AWMne&WXIx8PiJ>+pY z795w>efI=|J25$(x28QE_)zpJiQnM#s!mUdaw8@&Qo{5jBHIs8G~Zom^OEclK)Ifk zJSogm+$KBj&311`ULBhT{C+OkOrQ);XKELOOd#s0xcR2PV>-C2`s=4O#m3;c>Xg$t zD~}q&n9I%|sF6{3rv#)j;a04qQ3hI-sK_bi3lkMf{H#tkLTI6j@J42+6B=aiy!?fj zR+Mup>1Yt<#ZhLRXI2V|0u~s^Q&BLb66eSXmFgfSsIolCAfmF?*YoU2g(8b`0t~~{ z7;9(EtqK!0p4^X!1ft1RwYnNcv0 zL6h$83!)Egl&q^Ob1w7L&OAS%O>5pq2%fk>>0!7Ek^tm*^7qqVsN0Mu;as~X3!c3= z7*Sf+3E;&xvas;^x`|v>1hVc@HSRx3;lm4U#W_8tZbeeYV3_2i7F~@fw^Cqvr!QHW zqgcPz12qDy{00`<1d5TLeqO}^mrMI;$^yIxvfYaXKpq5MW5I-Oh4#^IkH!he|61Kz za_EIG9DFH6!zO$JfrKTN7<%ZSVeJIQ9?%}pwu5M_NF{<|_}A25VxgzJl-gHxK3O1 zFBb{~RTXeyvaZTP89gzvP|A3+TY}d-qT;Dx6OL~`wvzy)n`u4b$!GDU7SOOm6As{+ z9Nl5SXc1#*#>h-CNAV>#VhC_`8+jfp7xsuyxKUK2P)&}}K@wFVv#MiG>H%i!wWhl!oPKD?36-^v@r>TJ}HWsSyR!R6}?TgT6;vG)c?le^v2r|s?g|0 zk}xDyMO0if+!8J<;dAIM_wmS`w}FO`(dhIKYNTS#0p7=m#*F~AJt_*s)0ZHIO3ljhxX1+f z7=K@J$v{*oSYy<@TtsS2&eDCEu#pMn!jfCVh-snAVxTREK%=ZYT-M0mcA?vt`$&ZW zV_5C0R5(}bR^g)l0k{T*p|VC60@Hmi@d?X$99U=v7$)gQA<~{Yq|3aClgZezy2Aw! zoNr8(JZsjd7WQ4HZgLio)MsqU(-lggiI}!8IeE3U2O(BgdAa@Dh0!S3P*FX~wl}~J z`&^2!u2v4k@aKB-DC*Y-VY)0QfKQ+Nd1UfOBz||2haGHmAxrN;7qKH~p=GM7cSX6|ml@q4embJYX`i|i|0$%Yu|MjN9!@C4_WVTKrEsQDZj6spij7hHoD&J&XVz-L1&5yrx7uMzY; z4@NRJWLGRqZby1n@D3RY9ht&Fja+9%^@e>vg2Vk!BE3~nc(8lzY0cVarFN)NVsw0l)l#oglz`n>aELp?t!TYinXuz?5&#^RL1+3{p5X+4+q8gGJ z1|2||s)H5+15>GLfdXq&D1kyXRwj8=z?takiV)3HQh<}y3yn<>45%6yN;2*;8B|vn zXQ9OUWJa$OD@UTj=dhz#31g7eO${0L3_7z{zjd>m2%^Vku2*SsIqIw#^08`+Ge}hm zS8Y5b3?q>+RVzvY64do|0MYVvkRIYSk7v`t%r&HE8rglcKroZHDa0uSNP6;sX-~RO z0pw!n3Krm>^#&gV2c+uO@(`^Q!U`GU`CH2N6v2n9b*gOs6I25Ncz7y7(6Sy-MI|t; z1-QTSgrUehlopqA6%`9mh+c4x-G}TiCXd-j8vU8-F!hqA0Nm;CK<&y zQJ+ve99r8B!JIdXe5NOd5g9hM3!^Wpj;2{=Hh68gJ z+DzXh7bupUB0*9%)Agrf8<<-n{k|5YfurK%_hLa(*9LHmDpudNER2CL&ngV|YBnGY zxrfmY23P^*>Rc9WLzAi&DAQ&L)@=}y1s%#DsUopv$AgwUV6SBJ2q*GGfq?&Q-=<iLCM0h&ic(&kfao{lqahGp=(o@{^n zi`0Dbie5{!tjlh4GWT`cYg{*m2ZLiHV7ru)rrX-2rj~Lz$)kPwxmhBZg#}!AOE~ni zNlJM>1fxB1_3M(7%ZbvkZSsSoEApavOM?}V|4j(0vf~B)nxK#=B zjSX*W*(s9iPb|;EsL%aI$iFrHC|xLd$0NXI=1B3#^7VYoOGaqXNlMN*1O3x~Ql?bd z6n<$EdF7gJ6V%hoFHuStS74;GHPfzUG)ha(Az)cfG8660pBLLH6)d4xp5uv7F#bx9 z!mxzvj@$DrC)`G|L}fGwcEiOQRAVmb{aRRv4>X?mPR5S?Mpk7A3|$UptwI(T;WpSg zLIdX^uvAh;qE2HZKkRE$Dq1C)=p-8%+}YFQ4D?I~tL&+RTK2C2>?5{A23R!vO@?8E zM5Lf97l>=h;+>sMH5bm^$UGE(41ho|r?^lI|C6**OrfG4#B1y}Q|d4<6WZ6jZHlP_ z7N*5fQn!IY4K0Ylu+kX7X_m(YvMp+B=rpoS+;%q;PjO)EH*djIuGWT;n&O`f?%!NE zo|S+P*}I+dfrL+fsldgnWz;5=8dU()+WZ-gOh43-PNe~=R0Z*aUdt8tW!l=1G=5X0 zkW>en%sOGA3A%QSkVrguM$vbG(1*bC>4Qt-?JXE@6g@J`N3Beni26-rp1k z&W}$zpf1oH{!jPl_(ej5xub2bB_VXAh+Ue&yBK3;$dwdY<_x%QZkCEe^!Fhge_V%i zuSp$fj$kwey*(*3ec`JZDpB+~W;!z#`aI#a@V{5=r|j}GWBh^dI^mLnk36Xl+tTBo zIRrR6ZzHrIK@JscWNHZudmX;~>4&44Mktql)(}T_iQb$eR-oK(5wq#!BScD=)fjX& z4V`BYV}2bLE|FL7R}}7cI&wYpYh5BM+XJfBIU5D{7*e@k#YC6pt3z!oro&lPB1D4E z--*SX#~DgAWEwI5L8A;O2EOT^<^BsGq1b|F=09R3Euzu75-7lzhv=+5afHd4thJ)s1rClx|Cecth*#7NU5( z4@OVSL5-;nDZ($WN_n-Ax_cQeLd6>>mt2!$yvO4ogO9oLRuUW_dW~J z5np1~Y&K)jzYM{Nn`b*-f;4z@7)6nNxe6E-br~Gi)^7wzs#ZrX*|oiS0wWiNhSSDy zeFx`ll#VhalH*WZdXg}CSz8w|Vk| zz99|$YR$q_LbW@BAlIv7Ga1OextNjS5apbpS%We8wPz5sOj34&AHZNaeBj_<4%9P$ zJl_0pb_rSLql|!MlI-AooV)`zEs?bHsQb?TFu8$1!O5&it~wt0b;_lJZ`zqZVHX9w6OJT}B*80_HSWNr52gKUd_IQ_Hx=BA7yJwcOD z%gnz0sT@YyCyl?$^14DHi$uY|!>qA$&jZ;N3#2y0Do6thu~&x3rIP>4Z9D#b38ix!BV%?|vwGo^A_ zuhz?)WtC=QCsW=I;@mR?9|AgS=*Q_=L1dhT*Y<<;vKH@yQ`amjuPRK+v(=TkbGnw#UMuv2!F z)YL_@PY8MU@i3+@{4H5|17BC*Gg4fE1SubQ&Of*s{131_&q0IPu$%T?yM-0QK_iSQ~A$e2L>#RnlI#nfA(zj#cNzSx3jfuDKDfXiy!oApSg%DIX7?4#vHFL; zrkRGB&MdJt3jKwJ_n0;En$o!q*`BJ^;b92}QhCFa>ve_`5^vVZJ}O%(E2QjjkA+E#3Gv?=Sm%#P8)kteJg$ilA(SI9uH0}53$ zF0M!v`=T2|CxBj>^T?>rn)f<*UphV(j?snIRUbC{1ndaDzT_Od@F;H1Itjy^_tC@hFJz!8O0C`J(JBK7<~pL@{59D>f;YYfa<7U z@L@3a#E(BqIimw`Z7pk4&@;@)hEQ zdUj!Iw`0^8Zdwt+szIsSmyU8Je7B!T5H(he$1pbMBK}G;uME9mp^9u1!_qyKpcu;g zKWO#wFTBjw&;BQ8qfaucG0Ptr84CIr`a6ca(lrfHX<4Ls2}YgU#h!$Yq^#|lMT2D? zk1G(%sm#V@vf4s2iRvqRXX79lCkA&0v5yA?m5*K2S5KgfJG4Qm8W4v+pEFmmg^I6d z4RCI__u9l6gl2sgBn=T_(A0^G_+$CEA~TauzLqWd$%Ntd58Ev|s| zV_#B>cRQjW6e;&d=m(HmB<)c5kC)@QUuIsyi~JV^jsGE!CNvXNz*gu0z6{7)ak#=^ z!2zQpyIcqh>q>a}?yn9-Cuj()tUxrv-9MX81_mm>i13<>Syqy`U!x-l2$KcO!*a0v z2m==~DIOS8KxV%ega;{b-F<`sk2^6Q$+R&B5T3t6EP3^jgOo?(2a8~hthf*$4pOp1 zj7Q@ICLQW6U|BjGsf~02ix(nJj|U!K$BlV7F}M%9nTHI-jt$X9tG;b`f_YUfW!K#x zzVUu0QEe-IHqe5JO2JP)0}xVgM-(^oc99(s@A|dM?D5ST+mVM6i(Dl1D?!B$bbG++ z3UIOG6^aq%> zs)SSr^`ST&<3vNJ@}x@?-rb-txgpoyhf~J$e+41??5;nKZY#SK9t8i}vFgCTW#t|; zo887fyBQVK3Juy34LJl}Lj2Cx%D2H+46rWV`elr=Sz|4I%VoHGoVHsnmdj7jn@7{D z{7M&$ah-|rFH_A~XRjQY0>+;)(;qfytL*8bQqL5Fk4+_wB)y44LD4clc57icH9anO zgAepTG^FNQOBwScsV=#xu1+b5wd>_fJ~-!u34^O45b?)Mb$^H6qL1=Y9XUws+U;m# z8RZw&;feg}d(8>Q{c5wIf_oX!s|lucV^_UTnEa<{IZ{SnO4AnJ-iizEE2m;T>PeSe zZ=)sYmq!>`xRGReVobe}(5C^_U2Gbs*)gM4*i-{n+TztDwE{-4*M@6~e{n*Ln!1DT z7eo{gprEM$~=Hb_nXP@*bs+W!NF~j$N5D zSUGg=KM`^z%NKij<&G7heonrM|7n~ZC^{`kKq;{_XspS`yH3+_Cp)qei z1Pv4oP}ftAYw2srMINjsk7@UM{49uj3^Ktb3Ibhif|;*{EqCmJi;T>|*}UOjy_gSW zd5nd(R{7M`#1yq+k82pGjUtUOQG4GuItjx3l@mB_<%1PSoI%NaEVhc=n&!$ubbnOM z6*MK?8h5!T30r)z#11)(UFqjEi}MTZ7bxGh%yMLS&BwC)56eJrUvX)-b6#Ldz|J+Akobf7OlzDen2nNol=%briEPsL(+f2vE?+INd6U_OsAAH& zV@5BQZeGkjGu=Gs7LV!(%J!=9KvtFTFJT><6ex(eYOP1kNVOj1D6R`y#4TpTKNM?{Pfu`Qa?z2c1A94=JV#jG0PI#olEvq6_c}$}4i86m{ng$1! z2xP8<%15YPa9%NDh&dgSi%0*bvbYtC*&Yc#Ns^5?J0fbv#!i}u)*vH_22u&ZXKu*6 zcah5aqFYFIL$n$lJCS1W3c0J?2s5U1z(wohboq;U+MdL+zl!Gf)10Miy}chTVb}B^Tv5EkPFDk!mv;N zbz=1@G3B~Gr0F3|F(oBLyc3qZCs8$WhW>GqnE`dM8p9tYqzj7)DH+z5P>(rsC5RrV z5vx4U=;k!-Ym9Q2|JiG41jIHO$NQyXB44Ki22&S~u%N8m5O(3Ix&~{82JHtcwrla# zlU7_7xI4!ck|F+Psjys}qef^VxWJd@Iic>=frV^2l|I4bWO(BvJ!Y1!FN7 z3m~H$Ujzt63L#$_afX0aL`u6;y;XHIAYUVgfI#0+#CSpE&j&qJ@IEPncQtu)@oEd= z{a(kCHwO#1pcBQ$XwGH;oDjie6@%RHiwy2V5(GsEF?1FMsF|h~5(B(EoWQzJviT_g zK%`DlDUSfsmlk2pg1^8OFB2Kk+2J)t#=o+Ro9wfP(r-X$DI+^Z^P8p5r4a2~phO$v zP}-KR^dEY}ry$6KzyNh*l`k`YT&5|F-aflbhZn+9nwpxLnwpxoO-)T@HfQPDvh;=e z3i!7sKa+a5evC~$v^?Chf$6VQ`>Sl7s&M4!F>DXA(eW(n(cPze%$noLCod~e`VU_^ z%y!efoC9i0xcyPfA&JTeK0)WioP1us&~M<83C?Jx$P}SP%eauXr$Osup@8U&#J*>6 zodn}Zzc;-+m*}|Oqj5vK?353aPbMl2tBLgCT3FhH zHVlxYTB%?snDa<3$;8;Kco(Ob1)H*)SBy?6$Gu^QRqS;I1pCdZJKWr)@#$p|Z=`wa z!0k`aw3pe}pP!+q6w^WRgV5izCNM;d?em3@t}D0qsA;sb1x4dQIvekjVBhaK3b^jl%$ z7H{5AnZo$@sV_+_m*gQacOP1W!x-1h1eGvyAwldo<HeT#zt9Xs59QtN!I3P4_y1E4^hi= zbZ%9t7sNXb%zxR2B289X$)s!w%sR@cLvt{%up#;yv2+9JF|AzyJoyUKvd#P1xYJQO z9Myy?<3#6BYzp98k|8Aaw1Zdq;o?kKTyvMa5#O9q89~bO5&V)B=^7>VgyD&zd6&xr zOSL_Ip#Dj)Z2zR?+?*CTtVBc3IG7GD%c$qb6XXa8A#B18N$DI@ zii0G5TxJf@#Ix0wZ9i1w>M-$`#Oq^pfR2Igk2A=w5pG^i7y}WrE!gsO+6$7J<7zuU zxiG`_KJmIFG(;N#D}NlA!**d}-|{z;TPIKUpgE+>EfN=CVW}W%yrYegi(Mm|9pPV# zXgF}fel*^uNlNtt$f68yf75F|QPh|rtaT}cPl~)(BwL+^#1XvJo5TjKs6iooJBZCp zhMFB6w#a_1pA=DUAxb;U$`2m-jY7K5iSdMaI1WcOR=ZNP(Mx(V17 zVw(FUCnX=-v~fr@{>8|C%!EZyskS-fN{_|O{Grvc=W=?}f+Ee5Su zaZemY zi2}y^wF=CHX_(2h`w178b`fkji6a>S{*8xzpjP(>z;A2%55v*FUveWb>aPS3&Aqc4o6@3C5*< z8A~NrQk!K7B|~LW2v)6iN!Ky#zDaBbLOEn+<@^T&~G(RO(6QMXKc!G`QVRGyevhBhec=SLHLyoF?Y z%4GfE@whxrvoP{frS~m$GK1?Co9@|erlB9_#{A`e(M6m?*04hJdyUID~BU=Z;BVl%XWV!gg@Pm9HJ6~%KW#aVv7W5KlH-%N-JU~+b*tt$?u=X)%(FfzNXD}-62L0;v}};`EtdF48E?eFk1xvHeuT%2sC9Yc z{rL*4bPZp!n!;vk$`H$o>KGeVEHGzrajy9(q6UT8Vq>5)3jk;a=P245P^hvT$OGs{ zVtoZ)4~2Uo3O_1a44A;MN6<)0Dq$D+dl(`o2ka+jO{2503MA`L=wiI5ue>4DbGT{J zAaX9cIs?=Fh=JuB7@lb4{@oc6a|qpdb*z0U5L!{N89vj_ijkBu!DKlx*H6O_Fy!J3 zS}DuonDI%sKCcA)4_n5m)R6lJpZR4Wk}M$UnV>tley-Y#0UnwRgA$9@WP}2uLLFN$d|+%XnwqXDAF5Zuul&LHoF4V`aS`N7QpCCl>L)G0HHZyj;xOt zLm3c$s@g_ZTabWb7f+S^vV;R#IFy-kM&QDiO8HH4{mA7p`zCk0;S zS-`nnaj`4sf76(9YQs~F7YtRg9W1m!_rRL4(2iQro3f&T0D9;cFH12hyN-hAk=*|0 zwe9V`3x)W(Ry$1*t@HcZ3Lf*A%^pL%=REDs%3l^!ptC`*g}>vaprvl;uQL@Z<212{ zzToY;ADLeDGkX<0{$+#Y1^StJqruPYh5b;~-tRRyfJepwIvs={pbFup-NJl&!u7|e zA^zWURtDUAP& zvckE0@_(P7Gjo4Gy#$)|r|%5ThL+_WpAHv^Y0 zer6fVT&5bXi1~*fwIeOHj2bwbwvq~x@T&NQ^EG63}1E5@h-V87H~pV zy|CIapFHK;qt{_uQ-e+Zfvztjw-gb|x3E&`g@rz3SVJaUZS-mQM2+;%t_)k2{G6FEs|$D>)8E1TQGQ z^jmT1fZYXHW#olYZ?=ACpl#y-ML@d0UUade7$7f5ClA2%&qSK$gC=94OkR0G3K4Va z!sQX??){M@(b8sNPiSNGY*C!c&h{9xHEZ>j3Oy6kk7P0&){LZd6mVRTJ;U|Qv_bAKwE7D1c+h<0VTxIDBNxsP6ECc6 zbriE@0B}(iLBPv59^Ww;5N4I^W$acPFH}ClZ2U_xtx%#Ix2g4ZGS4Sl=~lDpFxuP6 zZ&ZYXAv;Uj5DaAj?pdw`jkkaj$4z#!DARQ zsQL`irJc-}d)XL$LAR00APM0j-ATj&xK%LrtA?1N=5ht24BRD|av%-|;6F!O^CUqc zHvFSUuYf$lqc~^B1HzLkO4@y6M57)qa<>@u7urj0m3754CL& zvgnpV4OyehBq?ck$QhAsp!7m`#M7*Zw@vCb}Pl{3Wj#a1~s<@?vQ9=XRsJt`! z903qO4pHNQl8XQ48rSm?1HjFV4CR=3eTV8OsHunkV<#dVOO?p30eFdFo*JUac_id> zNP>LW+Dzlap9wt}X~+d4t!zBUl9K~&aVKX(FnE~tddcF!%}pZ?JCm-LPOmuO<=|q4 zVM;i-|6S#LkDnVFy2~&2&ktZPn~zcJZWwv3E5<^>rl7fLzYz@vnZmzey5-y(ne~T2 zO3AYUDatYiTipFO1WPt+DOfskBhR($V3|%Fod>N2`YoeJ_|Cmh111Lkw7aD_0CTIA zC8tLNaXXP1}sgc+r!oSWBL*@KFvbPa*_G#$+HwOkV4dH=Sclq&4~^ChZ=d zv#@OQibZ)rBW9)EEEAg`@AgY&ve`v6Y_?l1m7`@}*=(i#&lBXlZZ2N|BXjmmz=!t@ zJHXA!YA39YSosZ74}gE!eY{A;{~HQ&bjCJT+k2O4_9ssnWDm(bcMJ8E38h-ymctsL zC5lEpYW1+}7WA9o5Qo{hFTB~uPU{myIXif3Sv@hBgN>*g?Evp&m4NpzNR{EV#s0o} z)bDV)&!|_)q1fq_r_dhhCi_0F?MB1j)bKh&nPs9HO=j|sRF|$idp581MR2idGhC%h zXw%fX#6q>`kA7Kn*cX;hIP0j0&vOjMto?%*Y;^?E5A=3ulOU@g4yDWLJ29(pGm`98 z@Z{6fB{e%}8EH9Yp&GoiXwIk)@>Je~hIYdg`S~m=c+=HqC!X>mW-UpEEYp2c24Oy7 z%K;;aqsc!AJvkpN{uyUJ62L~FNX3O88DPDSPG5?>Ieti;qUn>yJEOHEi`n_qO5kdk ztXgBLne7uujFgup8Dfdlt6K(ja2S;VM&7G*^Of35`ZeR-_EjXq*3+^{NMQDL0}EC} zh+jcxYf(iO-#Dw#LjT(&8z>&`6@(_Wr$<@u9FM}NOjf?GS>l;A(wNHWeBP|?#dSiI zAokEh`>zBjKciHy>%ICjO?-^*c%I%}k+a`a)Ytce>Xa?q3%0Q1aM{!hQv81PDZ)Hx z|I$rut$nRmfZv|0>ubc7A4na(%ZN7ls1+J~CcPGXEmjtu*R~s1i|K09UZ{>k{z78p zz7+}}Ja31Xvpc*Z;<+XHF11b#FYqdbA5qsv5TNGccx9KYV6fXTg4|*Ugq#>gCE5O^1g%T8XOV5vUxYUry&oiR$4bv=))=y=NG7KM0n^lwwQ?Q-eQBZT>hinv(1XF(u)uR0pR_L!3;FsF=X z%zd8g;n^^NgEJ0ow+;wG!OUn_?&zfG;+_6n9>`j7{y7AhhNBpcryL0~6*g_h{)p?|8s*H8CvnDjh%%$ro<1DU zJ<0&o5ITQC<-ZW{OeoK&g*65j4V1C^2PyD@CsqClcUQU`fq~dc&az_)0utV+fR4o} zY(7zVEevT$NKw7DtUNRb_DIJCD6K?xOV=@5BMb@Bn+ZjF0YGd^53Q;o40k7EFE0RP zuo)P%rNz}eIl>eB5#Yge~}wI`=nfYqh&^M#IEVay?D)(?$jMj1nH}l zY+3HclItRcFyoT@KIwS2gpfPw)ch-sl6j2A5+{B4`G7%@K+`A-r;|fG~MbI_!!z^W?K2vZC7KEHy#5ll@juHbGth+huQ4*dpRGr&u6pQ`(E~; zTT}4xTO4zGbjF1&iIU|PBH@?XFy78IYkCg9v18!-<1Gp5AKZe+(s@KJt9bd3xmcR; zjzNA*nE1}`S#^dqWAHOgR6g}OZi;Vk*saQkUQ3crw2C*LF>&Q%h6vM2mFte`a??Xl zL^O86s@#!6b!xbTUZXj#z8(d~)NA_+^~l0!YOTxxUXvz!auDxk z6S}H{V2`GoGWg7?YSXxoOYP)QX6@0*UGc${klk`iQ?>L{kp>1|T7Y2*^jseDtQ@8< z0F$w)E^@yK86rJ`B>6-szUi=7i4-gezrxuCTVYUohki?3qW>YI8ELR5E>QmqvRPOd zN6Cqjc&M1bBjh?6PaLCOL1udE3wNQTaz;=o+q+$(|5x)HElvG>x@V_4Or{ z3|8giFp^UW6U=~0G=NKDE7@!v2bfm=wLBKFgakifM|0;PV(@l7!!9=KZ#c=AWCPBx%;&5c;yrC(FsP*}s z;B`IxS^^8JMQf{a#QZ|!|2y`myu`lq831hezl*oK?;~GtY7>`2SK$R1(AVKc)kU`J zDjcZ7_epj_La31{cJfO2VRF`l^Ssq>O!*EhjblTgCOI9r4xD2+^&n3}Z{WTQG_}J< zUfIi1jyq2dRw$Oi5o%35kY74E_Fpg)3HzL%aT2Pc<}%bGOrez?wSlV|EZd?PeE~RZ zSnJ28R2Is_SxA~NN8B4@_{Dm58M4uOhCB(XvW(^su?QUvfThiXbg~o3{<+hH0 zcSl6!^c~T@)fh~l0}^Sz1Ue`dK9C%k>ZiFUJu#Kkc4VH89Af!^uh{YRcprbteUYl}Ui-c+Ba%Edho;+yNj+E|WleoD?xwDXq zknQqcff{2-Wiic&wajauH7R}rw{f>80naHtG25)p>Wb7DTJ8B|~K!P{lB__LjP#Y?!{{FsrRl zuUSokwSlH1BwQEiE|ucX9I@t-TN#%pr_>V$rF23x#AC;;wMcBq>;uHg@9(MSiG|To zrwa6L7pQp86N(B^$yuDcb+Atuyb2Zbvs$T5nNZPzS|bRk@yt?cg0r54!Kk8ak*u(N zT&-VIlp5Obs4v9F6;${FcZSh?^vpsc)!JfkeTT z(^4p-g!hho*;9@B7R}^J!OV zQQv(*3rX_H4IhkXMIgAZBh;=!q2EM&JS+#&jMGtO%t$!YX4>}{S*Pbqf4eADI7-!R zu!s?(Lf&U3JWm(c!|pg|hPfMkJco;fj9(y}EpT$awF}am+>5JV;Uq)AN9}KM2HS2g1rx>VPfyrCQ3R3k>37)wjLOv0RuUOM^vJ+YJY1yrJ`ifBq z*=6+<6DW6k=F0wIin`Gnri_rdVCQEDv(SeV`VK@Y;>*yEL@LPAK)VkV`Z)eDc??3I)uK)(quaTtHbBR{dNRmdfXpMWAvr^|n8vs5ugx5^I^rgN%xKm&I{nY`kF^ zC1;{fMr&THmRZ)S`e!0{&L?ti7GT~k@^$NH9jQE34=&{ztc!NuL3K2KMs-b4;4GMn zB#{AqGzIS-|5Ivub!9F9-#&V10n-NuZU2VwmJLQ#8T!4-E;`C2Tb2wUbmsBIAwm5H z%*hT2VNvB*Hj>C8f&MLSC(+C!Loey0*lCA^-0)WE3_(U#euP8VexcqlqQ~hPK$Z%< zhSO+xMPZg4h9i7GoLs-*$x)-Zt#uAgpoqb-U!zoaIcYWSM&d5xXls)K7A=}NYdW9i z5I6*O@=#&oY4)R*j4o;d+E-JXIeC@R^jQ7WmWjD!xUBJW06X$VJ0eQGC&v)R6BHCO z!+DrRRH-u_K>UZ4WyuA|Ty#rH`B6Yw{u(+lHu8YYc*0nP#f;3F% z9+hyh>hVxSj9tYqtJYMX#6ogj!LJ;NSu+|I!fo-5-gL>4ibF_7N+3fVpwWEo>LEl~ zV!@8Pss6YD$vvji8I+Fw$d7M4<9&(app#z;6}(3{SeTbFIS7q_%bce=o1cyG2BqkIY3)5kuRfmmcUnm9xTc z9kIMFZH*CvEJCs@Y?^`=ryM^9fFiuW?4XYu1BRfS|JqdM1)>mhhk!7Pam!t-64j!E z&Mn3c74Xm(ER<^NUIfBskkGLSALU%htES)bd$4c<^j)8Ud&mFm>}0AI&qi~%%|*&l zA?44yM%U}(9z_%M>>flY=%9+4^QLP~po%|v$LK0FU0J@>*;N(4R&uk1DB$9vDly!d zY+ik$&nb8riL<|fGw44cVW2wz#uQ_M40=NnZ9$hA`kE-Ho?l=G8yj%Dip zPJM@@CQLxA9&bUzJmHu1v&)}hK0sZUwI!GzL<4n}92o;@756Zsn`A!9UCH-HLuX~T zu#WhKxvvGPNdF8UxHZn65y6GQAl_5~D9?$i8BRt|Y!`Ex7qwLfIM=KFlR8K>Rw9s5q2D`7Ro+srHfgrTaIEbndj zxFX=J7!~~xX>U_)&PC}K`hmf}Fk{mpf;I_lQgLlyJO%&K2L!e8$w>^=uHHP5*ZI&9 zXwHOcX5h524A>gk%z)K@TIWJcvuo;HMDj)5r@Ca76L6?ydH0ECv1$HJsqcj`e)3hIoR`QaCE+)aEh++rkZ1C?uJaQu}1C$7hFNP}9nw@;<9mVA_Cj8vMlTO^v(NU1!s`|p3VLT1Btj*e zAsD5tZ@F%n{v`-&R<psk|BPoK2wN0b<;|W zrv28a)bU4@40XzqbN(!Z0&o0UU>u3UDf4XvMiuiN=Z^`rWs@|84i{`82=wMlkq*Gp zUqFpwEeVd;!i#!zZKI;l!V~A@L##P}&c8W8SN;f}M94-MjyxzaH4;W>!L_#x-Zm&i zVRjgqSF;a9_+O2-q-yy0Idb_GDCD=4!Yj_##hb!Y_>^mqaLyEt6l~=G3aCxKz`D}s zB?YYT=E)xBA$UQ!+two*3R945n3~YjoM1I3RB_+OGUHHf2+=GK{xewgY!ZHFO5&aY zIWa7T9FJN+jfV>AU+2m5L`ow?Nt+d4S~(0IeiXT9NFrUnS*U%Q>`fv?Xgd0H!eQuT zm$zG)=%_Ho0X=vihz>B7CuZ<**vN9aiQ*(N2^q-Ns0==;|=yjG3B;dkz?U6Cb6v-J!m zPVk!vb<6r3^eMe49TLMbPwqIjj>z5VVWjGL%1J8ogV%))H^ZEQPAir)e|OJ7XV*qe zE#IJD#b+QbWTg5X6a^AT4T6O?qba%HdF7=j2rpT=0uT<+m85)1V@pRlICB8?2N_4s zJvyA(44v0>i>nE75;LgYRypMuF;tw{r=nuxZNbQ69n2K(4zU%Izr|L!dI=n^WnB9N z$r8m}sa9}UJA_F&Mm9_QDmwLcsPV2mL+LKp@F-Md zVM$npRAoJ#S}BRqStmFc!If`ah`o#w{YWEZ3mb;9AO<3X2SzA3xyUsFz|H?s2B6g>NgaYOD(;y$B#ZhX22L(aqFu3Vu2%61ID@pC&=Dt;X@cTcs<&jj zFrF;q;Q-!{Wk${zl$@C06u0SjL_|o)R(w(kf0BBqm7*pZVP2)P&<)5niJ79-f=Z?` zwl!o_hyT>Vtt1oEAU{*?X;FyJsUeHW*pwEI1(a8~2t5mJjzuhhrnv}UYi({qyR?15 z-8_YORTS(JM3LhD-4$q41|CG9E0xPij1lRWGystDULtfKA zFL^>3ULLr>&I>)BD@^FPf@5cBxrKRoTXYwB7|LD14~6=(8h|Q$VB93 z^XW&TqRuoCoLnP*Ow_>@LxdN9wZbpTu=2U{6D4K;AZ0try=ycg$u-%GF6yIuvJy`* znORBG0caWsk{gJYtlycZlg%o5SoJ^IvmlFtD@HfT9*Bjwmuta5Cx77b4oe_z{+y&? zDToE6#8!W}BE|cnDt94~TOU&NFjmd&cbg!J(NL83BR)ME6n3#-$D{fO+&mBPdzDjL z0CJ~#{u!694Nz8}XY@c4v4LJmMHC?y;)fdwqL$i3in=?UnL=L(B6S-QaMHY=YLLLi z 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¿I4k~j)_ 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

      {<1> z?&HiVUW@shOf!Td{4)s|*+#2v;SUN4jGy3Qf=W)Ngi_?Ds%=8Ye8*12j=` zR}yo7Q1>w9Rju!SUB^&EPXdRKSOi`_E7T9=1wzO1OlC_7=`9U*w6#dyYov5M^(s84 z*(DWAx51)mhe0!l*RuO`MX?(Lw8Zn!Dh3;A!wO4(${+hhvxlD%YV}O#P&!gP=dybe z#lUKL*(x$FVnOHCqB%3G~B4; z#@!T#X#xa_V98@|%_%7!iUC@=1~$qQ2rT zOH10;{9{Ng1318noKxI<2$>kci`}-Ji`Z9*Lv-+Dv=ZczkC;zQ#mt-rEbI0|4nk*x zJYj-qhtp&ZEh8MBnk+>=Kl*r>aWIZk3Wu;C^!IVydWs#gX9#;3NBxo=ImOUzLS~#a z?rqy2DxhQN2Ql=orGbO#Tn0LF`G|49Bulu@1Ik0Q0iI%WdzQMJY`ohh-5zxI>U!5J zy93Kl!0M~;ZaRwKgal6}oZMai=J~!A6-g2RtSM9fGL7i;4D)_fQ$Aj3kKzYc04HCm z6o>%xiu@^9=(qtye0t+4_hYl)I^3%h=k`k;p0sPDRELGE$`oIzATbC46d zQ9_R4XYRI}O`)|mbm)t<+Ln)>hQ)1A(j}1S#|n!9^(A(^d;t*Z&>FILJp+;|{3|7hO)UnQggO9sj#orR{xQ!uV#dbi8Dq@ff)uk!3b@BM>UDLX%v1 zzK#f`hL#4Dme0Ynu&1vP3p;8#>|4 zE<)TTk}c^jsTdSN3gSoU$sEZRDuKhu;Un<`2Kh8_1D|)Hb|L30I@V_r`numucAU4v zMhZ(l4;-$#SCrMo&f1q%(ZH}*F9cYfU5*C`mgf#UcGJA1HYYo> zQOD1X*|i}0=x@(83=a1qbB|_7AGhDof_4GL!aaN-7|`t8oFHy<+`XUv(t*zbo1f7w z_-nqK*h*2x#iy>0$+5`)#sB55zU=LNHxl+sXdl8(N$8vl>q!6cBsngeA?^lS;q;8=pRy=1r zAl?8QOq+bH-hQvchG62IqCF1fbUQ;@?V?c5ou9J5=)&ps38Xd3IW~u=y!+h4XcDr|b0r@%|!v!>-wPib=^&mJ#&UGJXy60n4bU{IMb+3*#4*afMv zMBTALAV8Vax=|C|5I~MBB*!dmHrP`1VXQrgM@(g9^2tVXJbxuZQmMvO%Kyi@kh;GF3(teN3cYpC3^TqV!~S*!fu;jkJ3vWizZ9 zraVzKf;Bm-b0dPnMyC+ahR$b7(AQChJ^~zX8?wefb{$B3-E9b%e?;Ts+L9QgiV!7z zA{SBi-V-~D2vAnGdmTIsE*9%wn5Wp6dvH~` zwwU3LjAK{;gMLlxw9WL+B*r{MWR12y;ysaD-J&B9CDqU$jK=_o;+xX>@Qg$LG1XUb zO-Tt;-QaLWZ(B|m!3mAt<0d#D4il*UN>7J0|9FBbu*016S1BWeL?%yhtSW5VTWw*rHifThiM6KMlV@e7bB~$n=PX_>Uo~iL7#lg# z&<^&cmikle8*ihh%ji@JC?Y4mm@twX+VydY4$*J~UC+f?# z+QChdI_x@12@-~D%mS|44AI6KaKNMJEiI%>9Tmc9Sduuf4B40b3|0QhmT2SE_K?qy zt_of_ABPPv>{rgHimXR;KgRqHAUM=UN9+$noBY024_Z#ji1goPYvA@<>? zwnI|9{64sSL;pK|HP8P~sPTk%nG;bX(%?!@tk!!cVV9TW*k3A+uOIDiAn<_MF30F| z3jn==w2ST3*+OG!hrOj|>^xM_!zH)lSbI5zoi0_z&F|zJ1R|M|4BFRv1%( zq3+vGVn9gIhAx{Pzln8WdmYUtsi#l@9^!i?2 z{dcWj2XWp&@V)pF=a}4oNylux>NlT@)a?(+7iQq9dX`cdB<$y?no@CK&N1`#Uq4;i zvU2S_<6LVPT3wF6X8o4j+p$xv%lR-5B!ua|DoZ!KBCfIJYkb#@vFKoIyH6zJ{LCM7 z0lY(&l9O8iRH;rf@2{w*E))BaU#c*h+k4(`n4(J{EA_Boyxv{yqWpqXv>d$*KasOD zv$VT+We&2&d7C6>+Sqwa-U0s%^X>O0Vm*z^R2Ws@vzfA3e_Or zRZiH><~DHjCiqEDS;)L|XQ0vg2b}7(YF3{&JU}LEy_V}~QQp282s~=cv;#FTIJt;l z2s>3`*As8+<35&w!b=k|1^Rq4U_siaIF~?u=^)>)l0lFQ(#fpR|5H(>zAbRaTG^GbK=`~Mf=DHx%Ev^q@?tZRMzXTlMly%_MOkw78YofuL% zmH-JR812gA^z;RjGQ>e8V`^-lK>oMOU<%k!Dz3+qBKxV5d7J||?YOH7#iN|tnciwH(5 zE7$Yfp>p{esJ-Sb;mn^i@8S$odjlbO#F(f)lN8g_BfgYW1Zmu6g>~86e8ry#V4t0C zE2vIMG0)Qd4`vb9WwRW9CCd&?z9WffM#F?rEHFmtgo;AkHpvv&BOeFcB{04iHSVR) zHZYdT;f&2HjDiK4tPTRL{xiakxhf8-fgSK{5@6of zvdIUO&P7iNN-@fpPj#KGQ)Ir|(`WHT<7eYdmv?n3d&3(k1n*Wp*mrZ_hbfq)mLypL z$xfrDrdtHZPYZLlCzsINez$EzcHFI z^w&Z>yb;N>9Gx6|;TC0wb8K`Bn_lxz zGFGZ*sPk%$Cx=ZNC&cqQsWsR|Lpo_<6+Bt&DtSwyDN&7}k6}Xkg&Uq{6*J;&?qY{` zvl2Au<-!&+2P~+tXK#9XgmA8=xyuxcH8vseF$x}-&onz~F`*s^#e&5m_8xz#KVlhq=7FAt`CaKZ+L1?vlEds4Eg0xBO`P$LQF6hxhMC5GvgQvt=l z_~%7ga6sU$JQj|dg%5W10lY+;zU_~RzI$ke>s!l$Q*U^m#Zu4lBZO!##tiHy)N_21 ze*k{*(x{IoN~KjY2gUuG$PQkwE@@n8g&0Y~V^@g*Ua!9K=MkzgsF#zdkUDQWiE{U8QJf7+*{rSkh7tNA z6nI7Pke@g-jk|>iNRl((J9dP74|FQ>r7l8IJCq4z>73iKkX@-*2`x z4X#xMM-b>3W-QDr$Xl9j9j{L{|AdJ`Y&x3M=%9h5C@>lsR=;DRjH7eh7hj9W?H)L% z_HZqOW89GOs4tlq%Mdq+7&wZWtTo5>tEg&W?X$aePB4yTjP;%Hhq*NF@H6e&26>Hls_&g^dbcoSjvr+A zET_TdbeEzMzN-H*r`u}LI?xA;7@a&=8SH5ORjf1l_c}j#<6-WLCTb+Y@PKSPc5B3F z+P~LF!6^0h7U>e?*<7}?mTM8{EwTz(X!XfGt~k8&?Rf6uMObQ-F> zd+z5n?~OrS#C17Vn=LZwE3vo3*LZP7S$cxVx`U@DKsAlQG&VfjAMmNVnS|;nh;S(D zD5~~ewXZH%#}_=Qp<-hwRar(_g8S7xeoM`9W^%c8n+s3J;L>57g)#-UilOW6B}a7f6( z;Yl0PBJlyqraS|R)|%~Kj}W^`T0((?#5`+|sni^6wsRELo*ct8=1N`(jKe0Qs=}P+ zp4f2ED6`o$N!vp%r>~$(-{InTgj*c)Ul_>NBqL0!jbTDt+E~wqIH(iI!|BzidmeCoQ9F@E0&ZF@d*k&B$WOh{|^jv#a3vE$O zl|)Z7DC8H!`Z>tn})|0_Qdqg>kVg!XCF-w zz9scC6{LAR@KHjQ;efGCSh?KX(Ry*C_ueQO3|Ji+^ZdQ*i~-kOtOfQo>o^t)eq4J0 z7c(W05CSI>Yl(YjXu_1Y6T)$Wi4j*TmlYBFFMhau!HCm6@2D*?fU_u>)F}8&p^4p! z3R(oUe@TJJ)&Z)cDs3^SrdHRTX* z-a^2{ES!K$m=u1j((r59pg}2J{P^Mcf#Ty3GZEroW#VD51Re593+27gKMY)ErV8pQ zkn+S1FS;v3sfs&YuoyH`EoyhEXAloi6AR})q7ijLZ;FVIKi_@rG76|@_0p$1FC14d zFqM{j*D>bqqw7?G;YxMJPLtC39o+S) z9e3X5Tp(80oR+J+iwImJ3!vvC%?@8gQUo51r)2Sg1+gMUJD&Q0MYrYvi|Y!&w^J4r z38;rRFBBCar~A`-NC^u#7ME5Z8Vb^yb|;1Zej&*QSRT?b>PUO;__k*mr&aMB!oWKM zQ(RDS=InP>ZB)?b{l={7l2>KZ!N)9Re&V_ly`oh@+iFvCCDtynl_tA(72AgF47=B^ zNihB;x4lR?3#is9I z`$4guny&AWBD8S1dO+8R? zfYmLutt+A_fcipcbZu|_3S%wpX=ac+#}T_c!;7>xOvW7!Tg3_noozapA*F^rv2m`O zq``Su-;;|Xq*vez78VI zyU%3as}M7#ZH^hkFS|p>a^h%ncOwA;@UASR>F`p=A81-9es#k3+03jl&6Y0o#Buvb zt1^IrTDXvRI#s(;e` zr+aoCEwU1qvcqCNC;Xv6Nv&rwb98&rz8Su!N8fS`y(X*4@RZqB}@~N zWU(i%^T%}erBoBkr7)h`(UL*L0v)-~P(`$efLFZRr?&Lbg;R@><|<6KXS64F^(aSg zveq5nhxO$e!rNP0nRku9`ohA-Z8bsNt8R{~kmgg}8@kf#1ldFMse+Up(gag`2Pd4( zgND7&*UE9{M!;GPfK(7-5MBzQuMr~1SBs%*AFXmw?&R~St$9tH9z=e?N(H?rmO$1! zo?Nb`Oj7Psx?-IaR$GuDAnFs9y-BsYFT=>^eVPVNpEm~S!rpSOdhh!&)0dhJdqG~z z%tEqwUP3`jI(XSe{j}5~G$_($MEoaBuSA{27>9|&e@^lU0V{)fK{vYK7@be?y9rH; z&(91Q{Vr3+${16H!H<&^%2dR?cXHZ7NaZO)0vF;1*NA`B{4cCcwQj6-z0tZT?NSuU zGLl41(Yh))`~B-bk*N+~cI&nqmsfL^X`uZYc4G**G~0dO!&Dzu6f5kygLHsgTb+d1 zA43k0DENL$iN;FNb)TLKdi@}Ei}l0i;_DR#7*U^*ax0=X{x%&i&nCi^a_^IxxX)P!CEgP;KYI{~ zK3a7rS7~oUryASp(O#sOt*|?ZJ?d7jHNs8|r&wIF4g?xh!Kf#et&B{)jQCmOsv{Dd zgQB&ruIToH4+;}57Q(p=&otGTb8yZ&J_z!ZzLUAI0O0r|Vp1BS3{10UjzRFH{DOIt z$mo=h!`$7QAc_YN(~+plOGh_fEg&M9`bCrah!n>q&6uZn-DC{W+?~?Adn$&Me9VAMJf8M>E9ipnI!NTr#{yZ57?Cawvn&Z6> z#}1MD6LpX`EZz#h{JyG|r6hVO7jd4|>F4N8S=VpB62y^J7S=}f;ewD2)0Bb&&s6_x^V?Qdp zc!--COccQlmG3pL1P^Zu;^GGx9`SJlR`#fbpp)Hb7Mg8V>Fxa(J;&mM~P zzQ#txKE=dOuZJ?)>;n6SLEzcHsQ*uL=}b=VdC(TGA z=E$v@l!ZBkf3MDL`^ip53$WUJ)1E)SHjaDEV_XHr_!2#1j9y5@F=n1#(*5@(6ag-n zQ<v>!c$hVex1P2kzEb_UQ_;{~=9OE5+qpiNd3JZ6RwR)mGxA`I>@Jh}|C)xH z@L?v9@i7~hT#cOQ(>u!%KFbTR+%p*q@_jj|oabWc z&P-@X&6$4Hp-*RDqA(1Ah}jxI4s?hH)N0VIsN8h>gK=FP=}v^) zB2;b(-}UyNFP)boliJ?MgA{UjpFpKG3nP)d{dH~2*V8;6lMC$vpjF<`$kBTZd0}tN zs)|P*tafK|b1Y(9YJaH3Ja}dOj@rH z`AYpE=d_1BUcOg0l7O`zMZ#Cx&B;gT6H(=e@Ak#)gNgJ-vYaX1)$n>+qsbQr=dBy}QRqbT~V>-)4SQ7WbTHF*vQcb-!hbV`V_g z^icjqRXsFEB57Q?5Uxh>txNB#M-n1Y{EmMu^SyKHm+~s5Uwk8X@5s;BIov}8iW?1I z0PxqtMcz1=gXRdsI&Ev7VY=ymUBl%`-S8QKljZG>P!g=U`>v~@D3TRl!nkAKpx>*N ziQ~zaJm-RhoK`bM@kRF;kjInEgd{>p8`G_f38h(p&TMv{Y$%}O1$`gKP%(RYAzk9LPsNOm3XS>E%5?0FdeuWOEr1=E`tN2>N1 zpE$4^W^weij`@z<*?%f^#%W5q(~R6s+WP-B1}?6L;m^Kto{zrkh#o+(5uVyJHq5d! zoJ#GRcUbPqikIV~B_?yZmovT{b0H6pth+7{bH0d>Un8n@Wu)=i;<22J{=yQ`$Z)Oi zi=qgt2_g9L1r2yHKfbj~Ig2Vj`)7z-IMi61de0DNP}}e;H`l66^<2gBtU6427I$ts zweOW1Hx5a;$}%kDry08TY5!D@lJ<9TF{UW5d!MOwM>|y%gfaYnZ{Z=LIZ~O*<}wM7 z8FRVZiErkg^%TYBcYjycAB97lhtkClG}9D$V)JvRdrnxR^JeFvV8#=ZKGtzI8Nv*x zIH2O%V9bfhnJffDvqHqRoTxixwiIG#2*6kHvM5o>qM0egiiPJ7h;hbapS%GBcAL>1A2P(|6pEKT#wx9 z8$1W38^JP!h;fY29WhV)!9_8%RaM4-YCf zR!x@m^;`kzDF7X!aky$ajP~0HM*5nSn{PBDHY4+PCi1`AtXN?n;kyh32Yn_%yzrTA z6fLV#PY?E!;3Zu<*(HJlNZW`DL0h){K^fy%%Pp4~S1hsl0 z;$L9zz35L%;rt25k=tZ2Ae>DA!luh7(W&pd?t|_=@4AbA$8Gl|_kG9NF}Si#d=ei# zU~zN`ZVCx!EuR~{UpKGp-x@5w2w$c{FwNQ#)318RM>3XG0B?pQCFdAddZJq6pr7}4 zbD356BPmU>qFKgYis0l8j@Fw)S_WLYfzLlj1E-h9$Jcr7q}}|H$AX-u#JGIlj*^pOhiwldVc6`gVZC;%?UE|kokVZE4jNRFhM4q z=31y=+L2nJZ?ZU`cdN$0^&jl|!_B>siwriu3YuzJY~6GfJz18v%n2Q;g`A0izg}PU zt4_Ym_Fdyl>%L??j=`PnAc0w#m!RAAkZ)x6{@2NHeW=;+{}qkw7DPTc_Dy6%ci=9R z3Qvt(o^2?nLy0t}QHr!VJQ{L^?3nxR*?EY1HCk#!P;_o^VnWpQjV>hKS}wVG9;Nhn z%L9iKnQ2*priVPHUoB6V`;c{u?M%nLLP$2+cv*MFy~B%-+<5c!gJIM*BK<`6QkBGB z7KE_txWB8lK&vp#n|6r2uhfZ2k;63V8S|GroHH|fiCv`Xq%&a>hGm#3p+_ibgMpn- zjDGmWUaNrbNMVz9n_IDF(6r=~YhkH~A`oYCs2V90wo+2TdM%wD%8WGYtbc6FtkRWcC6E5auN#JEiQlCH7*& zyN4AqBWLWky!vZ1L;5L2G2J=#0D@BQ9Yv^4GwtZ~zkMv}qyl2=1rvv>2258$3!|{(fdN z&3^*NDZug`6g;?{hIoH^9b^hHein=unZr$uF#Fo8z#Xkzi}FsfQX8xp0J+>nnQyA!3& zQb3nee~t)2)rNT!DN01jh3v%PtM5?oI5MNoq?8X7&{uV`RmEu!SB2`5~H?h z!)K91XP!!jAd7KI5b?~yB@V=MS+`6{VhK8bTu|G=eH}3TZWqXJX zA2Fjz(9yjr+-R{Kgq6#dcyvxWy`Hp{dW}j--z%=2-e#TR*H>n?JkAx_y{u`hG{&k& zMj`?NCXqVjGPcW0DkkaYKY8HKvcLKN`Ah8uQvrNQp)lSWu;tfBhV+*-fzqm(oJi0O zTgoH^Mn5Y`A0)5AT}YEm!JyxymE0mn(*8g3TPLOa#F30;ck2p(ODPFNkR)KHiU3m0 z>==Y zyJ)(~@WjN(tir|W$rGPP8rGr9#G655KrZ1Mj+BUek(HrC3!IW^v=Q1Oy!ZORXP2rL zW)PC9jKJj*#izkM2r@rIxA3JQz*rirw3mUadlJP`x(C!|5Wv92Lz=kq9Pq>3J7R=7 zjPE>23Iz-At93@uI%N0kD~BHR_=JU`zA3OruSxM@u6rq-t&U|P7j#w#bOS1Wnbkt~ zRVY=6&k1gZMzv|L@kXroNEX+OQO_AxkU4?>hz~~W*8TA z!b4qijDK1kuF)~N$G2L++Bde~tL=4q zGU-s>o0ccpp?rYOssPaMmMi}u%&tSeYYYxj2Kj?Jd}FWtVVchK2NW*RBnLRQ%fQ74 zQx~+@IL6@qJO0slyz37c@%B1Bp$A5e@`rFMk~UiQpjT(rdb$r&Xy*pcMk~H}{kCz~ ze9GsJ`a;C*6vJygIf5w`Yq?RjtEcFFYN$BNoLbzLl*Rk(>GqFMXC{YMrjRRvew=JG zn8Bo0`p$a+d*kNqD@zJ4mE#zga-v}Xu*CYhZFz~@QnQod(Hji&+eyT%tjo~#A0LcW zH&^0EF}6l~Y`sKGEkWA1W5z{}I_;lP-aKD-vG;7F+tk`k@I52Ensh$Yi^rX|t+tgL zNKfO1=<4XF#Bp&n9dkOBZs+BWht~c^e+om2i#@uA8I^6iXU=2bJc`PT*xy87{?^~N zAJgi^2Zq49tXhYha8Qw^{I@N;!%T=As9MgbIC7lUfs76H*vTT*e|z}7JI}WY|D@Mp z$|IwF6_ByBQcz~(JTtLkyWkY0ODBz|gL~z^G_0b|au*Xfo0@38 z8H2LC)~V;r{QX8~d>0g=+B1wV#JQwbDD1I7!qw)R<7`QdFV1uhI!5z0+iSUv8Ob2+ zw%eNYI4Fmh&9`?f_7#A-dEX>3xhVw0rNxfJV{yfaLggG`jY3qK5QPb${k-}JaHjKA8(@}D?nQsgH4C;<{()+x!(89_nUi%L( zcgqZ91R*-)<77_kwH$3SFlp*7JkVX~CAAe0C`+1j$Jz`S8cV@1Pk=~`7u&wVW_K#TYBIQM*mD(6R=U_XZ%GX-Jb@M8( zbaXNu$UwrzW#7d_FOlBf$kTQ4L$$68ydWFlvW5}jW%fxmBTgw68t+UyF?E?Fu;$r!179MlEj8=rOP! zd~?AeN5n$XRnvsQNXBvao7d?p1}o&S!;k#5SGyuD%Jjy_+6=lb;kRKRZ0diDNs63dIy@X?pNsu#Y zI6k95}cUMsa7+SFi4fT!C@1<>tbcJEQ83$J%yi}AW9x|scJHBTL z9#oiIN@vNI>n31rD2>S*w>c%qD5;|kNQ>PqH=#`}(Du4Mf%~i@xNw`!^dDxWk9C<% zZT`sb9cN=0w0cp)UYN!oV*4E9MAQyFR`i$2YTZ6i39l7cG_O7r1ecHGNG4k6ay~+< zSXwX|tPG$skK|62&dLh@E0OVyu}YkE;sUw}J9o9p6n+ZGz8UBxP{1BhOGKi9GEtmI z&qU~Oa-l@^o?)ttHjc=p%jTy?J9kE>qfk?H?uo@X=&{1dp@Hu}k2wCgmv(rMJ{3HA z`0o?1bdntFYIU@cN>4qgX=9d6l($y(2ffiPbfDP$<%{J$CZ2E>=A5P=oVT$~kr#GS zJ9h7)!K)!5e%BMDX5{8GqB%QZBi#R-+BR1l?bQ(7%EQms%cE0gy^Icn62iO zQNs6<$4E)L6k~v4)PwXk$JYthNTxXSvGCd#NSA6xdlu%9aP;TfYwOtkJ7!FV?MnT` zW_2*^mOB()S;Y~3S6MN!4ST0_cjOF8id#_jf!$EBp#3rvLPBpG_v7wcNI73XQG?I- zRO_`B1Mc(2O|T3W47Xat#O`U#w2w%V<~ZGj;X8bjBaymACL6TaDoEMH*k%mIxyc!@ z3pcu^piYv%5zs|UaBo{zuv+wy`&V!8+DcgLT z9QAzf`8U4fB^+ z$&Y)!{XSD86Lj^ROdR{Bb3SidQy&Vxg)M6t92M08X}ovc*WA9RjqT&bFT>XY5E00n zUe_Cq#oXBB`1Tn7Y{tCN>RczQ4S?N9mtF8KZH*sy!wuq({G2~DFrgSgIL*G$WXr>({VF7SPW z+{6*15ukmXq09yGArIV;hY;1<9km)?xQKl|qYycaEiQKlta$nYEe+7!Ev?uYGM+R3 zz??gpBFuUN$>}fBlmuqSYQ!;Kl~h}S9AWliRC6EqfS=fj*DQ(eDZJ#aF5;`I%RXBGpWu7!;)|Q8(Na<+H4i ziys=IE{syc_@P^69tcN%JBbBP+S_8nhPRcXJziEk-A%Fd-AW4ToEqOyos0SYinua* zt#o>(vENWyc1zZt^SRWdchr!~Yz$_O9MTb-`uYiTrBmh$UvSK!Mf0hN3`nHKICQ+Y*|+Hs?}l= zAFLeLK%h!KS!!ECv4^UO`!w%K|51b2J6_ykTg!OAQ5OWh>3Y-+>i4*SiqS9e^X(k} zug7Iei?!LlS*|J`{RjTf2cPM{ZZC*FYP>94HVsyZecwgO>g&D7VB&Hb-9D?_R)Kk= zg_I%6&tD4IE8R!iJ>n9#yaRj4@U|)ibSn%Z4WH1MqL;!ADWiB!8@LZ!C(?Q5qYbVf zPMpL%YSS4nK_1ffJ%*wY;j;tiG5so1$~-E#IYC~`dBNsU5%X6o-`W9#D_ zlz$PedCM36&lfOw<@^s5M+a$qWmZms<0jz%v|GTlrXp)2F8G+GGB{0=1QGlquT>IWxGI&FZWGu8oRc_F%D zi@wmzIsX1(|FBpZ+a`U6aS=#ari*$ccBHb@5+4ivoeS(%lZUQDL{zy}@N;*Whe7e= zd=@VILL(>l@(Jg>dC1oJxRHhCnI=W;oLaPA>%}jBI%ns^vJnZu%5`m`6H7l`p5Z8B z^B#dX%}bQ1$6AMn<k_zl2-&NyVmLxheMl zzq+EnXT9}cX7f3i_;MUKS3d4;%{1R-1}Zw34`ZEwDi))JgOTHaeq_H{AnFT z;+T~6WDJhB+r`{#P4q;;ZMUvq$Qn_K zGwD8jGlZ!Y7TkV;rAg)bgl1lwe+e2|TnE>Hj+mYH=Df;Z4JR#8{kcT~!ZJHxcM4lp z$2=zsa9e-*W6lpkoFgiNs6RjNTHT*EC@+{S9-HD=476{ue=8UzQCWb4bYOLZSAfPa zVnASzPta!#76FId8}x@um-ZsdQ1OYD^Gp{M9{D5}2^lP>elWuf++-9KQX(CPUX-xK zO1LS@W#SdTYgkmNV|PaPxV(yR1++k6FL<5D!O^PfeV8 zArTg%#-mfs6;^2}ZUWJFuX`xY_t6EspL5wkU~qii6V#l_m2Aumwyli`mdLNczY2)u z)`k+q_wqqja3%`J^uvA9pF{iUKJ!-4 z>?>7}w%9yoE4NZ#lN5PC_$CRBuIVcaG$WqkxO}_1 zZC9Gi6RD=%_=hD`pdE|#pPKxB=VoY4HRtJfTg{L}2IkM=yF1caI#eihrJj1@$GVi#<8#7wLqPenaXMfwG7q_qe=m{X^mz_M+pnJjtL;Gn}LNldibFPQI{zQ(x80oOuu2wUtX+o421Kw#ZF>*4gF{?chI= zYV~?H=5sOz7byE5Ei6W3!mKBlRoxA6Bat8BSao9KXW9*Umdn0rHXc`4z>;^VbJq@Z&lgw>cBCWHRa|bI0@b{VdIr9SJb@ zn>g=eOd#G$Q4!q2vGpb^7$}dzKa0tjCDMrd-ALfhm#T~95p*b4;*ZY!rak{+P*9d8 z?Si`k-%{kH8$Q{jlRR^f4?{u1wuCRlb%w$0mkwiQ-(ANzcGTL#5zt096M!bY-oBQ5 zFX7vJ6Yh!0uUrn)C&AI3dn(mou=>=dGUa$agEhdTuYV;pf)5i-%&* zFM$UI@2so)ms~4;JP)6u@#9VAlM^LpIlpCl?7G0dRime4AOuh(mm`aWxwG`m`f1^% zR})h}&z|rpCuvgzQ-8Y+Vs{UdORYFmjYhef@s3smKc}yaBVKV=BVm6PY)I76FjEB$ zKRu}Z>`}n}GnOk6dvU?J(bwkjPcKO1rJU+H?|V5#aLnY&Nap|_;|227UXo0y;YEI5>nrN2? z)nJ;G-*B2Q+|3`zF402A@J24XQLGY7Mw;t96IhSG7>lsM67h<&yAnALemyE&c?yWV z&9p}dp#mAVBZ2lLgW;bXAXCHqA39*j;pSxX2^Uj1xk(gKL*_Z=o}v+3aC;f=qrwL& zvXmBPvhIN)_^PJ1T)iHB;%SZgipJi3F{(gvQaQd!LWg(ftrNgH$kV8)Am?2|63Ze#)hL}``-A!6^OQ#&x8n_ZM7Dw zjJP@(Ig{F?kA{!(!l6nm~Ql9<;9RmV1k zrx!UHmzc|1!v(+_I)Y2EXQwu7-<7aBFH2cxlFZ`a}8AUbu7c75_g4eL9*R*LI_ z@8XBqrj;BT)%W%&^FILb24Pnk73xa{={IXWFjeY#T9d=rt2Cr|Op%>2MIUcr%6w?x`5t+gB3%L9#x=^-dwjK*Fn4+~Y1Z zIIT@fbck5AetUHu&Gr6SOchA>E@yf9z}QR3z5G+YW|+A@^Jca+rQcpD-=B|h{M4iv zR7?2K56;LSqwVoPW)S|=p-Y(< z-F|f>+QolazZ#0lK`!1ZbUoCQ$wU@p_&-CI`!am&7|k8%9cUKJj(s8+m7?(B+jI#p zbsj{;_}k=CMXl|`{>1Vblya*>-liaaHzV6d2edX0KU9N4IuFy+`|XnMaSNL9z@|eX zb#y|fyhSmpxYM6Jen#8manYtuk6+pt1g?{oUb0h|aq7zniD^9U9jABs%M!rvLt1g& z;9^DsxDogaQ5iRC_w zi)`Z#NO~TdxF#HV{7TsUf)QzaE*lnT&Qn2-jphp^P}nSxZfev?qUY`R7Qu<2o_6I+ zkkCyeX9)75EOy_cSSTDW!>_&&ixKzkw3QB_!oZkgu*&>QtrP_F{?s^S=Bn%_%Py<1 z-Tz}kS)GR4)ON!@Fnmrw)gJ2#) zbngF}67)vqTxyF^%NU}NW(>i;$_Qvcdx(6JCg0uqX_e*xfZ1;VhL z9E$*pKswas2Z55)&}2Xzz0sH^#{V#F$L+m(*V$c8&v>4rA5rhZRXx;v|2YTTY}_FR z>NCG)>dfP{+il%3${aXTnoT7?VLB6;2I5vn11ndl(i>ux0c9z<*^^+BkIzjLEQ9;u??J`2TtVrocofJeVPGgGhtE0 zgh&!d$v}~i#Ij%sc$WwB_bL6hBws?Ui76Ih#?r-gJ#~X9!jn=p#RwQNY7Db|r5e;0 zb#Oo9nqvxaBbH0@%Rgj&r6~Kd4rxKnO?eK)@J{2O^D9vtEy+ExD-4h{AcPj<8Z7O{ zt36g>7K8AZ^zux5>B0VEffsBrMs4FO1UQB%kFj4jMmfeS_UKzx(R7YzaYrs1L(xRiSY$Ip_;G%*(v;bF}D{nBoIUcyx`YVrQrU=ncm z?JLx25F%1chdJI175F@1o9(AayaZu`S_U|IgW|1-m0YQ42*UX;1d{sV>Vg?wx!QUf zLEkYS$S8}&MT?2r>`>#Y{R-R98yWMO>~^(3@DBuKb+_=K|Ge_!t~9}_@kZ}-m~Oo; zLbO*$_Ye;ME@UdyM@-3m5}IZo(Bl|1*dYW>m01K!PZg3T;-RWDLT)P>z0qXoW2*WXbKM1AVG%Gd*WViLQ2jgf7f14%d-TEPDzDRAcX0w zfUvwim5Ewg!tW}$%1qxVB`2@93>+^<@+$LG3FbVHqJ{U>U~gF$^nG#Bdj1va8V^GY znTj6rEW^*|_pnsv$1)s!iBHdd2Jhm+Hw5Ma^=n{{Lc(GY26n_YP;@c zQWmWo{9AI>NOOuQLERS1E<0k6>w{6m8)Gb1C0}TOn8lR(6?%?abc0mGdikpBsH(Vr z!N{YHyVQ5waeMN<D@%}V))8mvhHQHA=?uat75Z>})L zH2r(#2>tH3Qx5WT6?5PpBR!JChZNykY%xph$esJ?*$?tH#|`D|-SRO0LznRXn7HQy z9k0>gJA~+As9@6H{+3*z{Bl9GKPewb9B&+Cuouy)I7rTXI@l^xo)B~nCV67$dYCWh6s$9Z`1riq)YjP<^25GMfnFBf$ z#mXw>CJTKl$-rpCdmW@%ALHFP%K;15As2eT(b{!p1?=e({f^DCcxwIlr-KdI7IG4y z5^4YBzu2L}Q88mgCN?75@di}vu8GekB!=xNNh_F|2on!$Xe&^4hM|uO#D@FFJ+B{G ze1YT4CgxPHdQRLE(PG#8t93rm{$CYzqboEL_462V_916gBt^1$f|W(f)buT zxe}+R;4^ed-j3*b9XM3kVc2phmZBAOm?H+>W4e9V7GV7|M0nhw!vnaPdDJlL@?NNn zq0Pg{KxIHsozN!5*7HnGEH0K8?rW4)!xfdb7r8wxh7O72gVbEF8uOh@F8N$@qVgw* zCP)5~5kr6;ujQiqsv4IRGFCH12>`O_z$^b9TJQB7Nj;AZW7c}zcew@g|4{Gvv^zX6 zHX9ozZHA|tfmQwf-JQ*qeLS%1RJ3i9iy@}V9fJN2 z)M>-O?E`P`!Fe~Lsmofpe*_Wg}V zU@zHpy^!n#0N{^5>0x}Az=QCnVd~J2mnQO)w|(C#IDa4fbbfWY>(F#itS+i!+EGg& zBh=^noHhzg2g1%5R?f(*w1~5p$czfIux#q;|5#<_Z!4~LU?`3q`g5Lz!%>&~^NW2bX)bt4qFPOzzzq%URO{ZZ2Sh$&+?xAoXzu;^D0vR1JyLce22nI*bVU=RCnLp; z$P04@3BC1A-~9oQZ3#B)aArGK;vz6Y;oia2 zTaRtDiEi0qANhtfiIwDM^~&^imj}pkeVr>0p~Y40ud6&7)AcUVMWkNcF8eA{dr7vnN~;FYhxHoH{8Fm@E3ess|LrhJ~!K zqQB%GQYjUbbPW>li?Yh~UWtW>Wtlnog6Pv|5!B&TA*4l>7~2feF`>N_r2iQKK*LQj=yItk$p;DKS&3nmy zAr8pF6{t?`c&SuFo~LmgQ~Kz!)OVuN?1iNLOWZ|hSnPZW1Z=(J`2s2GU}T-zSqQ@; zE8ibi;&nV@@|Z!wE?N#uNKt}!YWk^WL&ktvfV~K~v?_+BR6vxaMt`VXDiKGlOsfuJUyJUE-Pa4x;e8P2$W1T1sZ$i*Mt`lwtvyitA8I#~~_ zmyvG6AqnPa&ouUq%zg#_e;*fKkBq#<;+fwtsD!k77s^{c%HZtVhw9vCTfEXddpO}s zMAI|+5t+u&oY3#KGWagF#}T0Vh>4@-B@3)rGopxY11vi~nASHGCHRoReWTomx4J5Z zng)jqNG2-c;hmC-6KFgji0iPFblMFnJfeZuk08`io@d3OPBbYX0k~Ct4{jx2O`9$5t_tc#{uFpgO6T(Q|#HiVd zK-+#eVi;a34ESc&@wF2nZX9x6`2q`MDR>+qCykgf1?8~83Zb_UEmZ~LciCA$Z7Z3k z{otYH(aiKs{>Fp`^2q-;wLf2?44^3@8v0n^*?5`&CDn_^5339NRqkog)MsC1&+WMW zZM@cOrJfwp0!9c(t&Bs1_>jz6_&v{pbHrb^kecWhOZG)2`v@EF`R8#5bDDQccL?+~ zgSWY)7?>;TutM=6gOU2N`zm{p_g)><+}Q3)%`40@OoO@{bUPuvH^*2yUW#?=_H&we z@`X_Xe8aEg^-}qb^T83A0mRg)H|j>1$r8ziln^2=5b>sOV#n_GB*Wq{l#wp&)s>vR z23S9i>;IBjHFIiZ%NExFEkM%0Cfwaa)A-Ifs{?DR$O#yPbA~DRK>v##v_NqsKsa29L1WucPjm2uGkI*`e@mJV~Y+8u^AY zwQfbXZIZ8*?z07TjByaBK`}fZCi5QLgo|Ti3Z0H_+ChX=O*6(_Z4WarK*l+V4gZg) zx`p|8zPqsi!DnyCE|kf`-yq7ZLw=WW&PvJaR#B1${T*lxU!v#|v69ZSFBQF;9c1=T zIE8|+b&^QX9nfAHs0JmJllNm8ZLHsIj#6N8JPJT8 z<4K^KiDqzl)aM&~0-Qw+2-A;T`!Y%RImaO97%2H9N0*G7R$GSm;J2?a{kWN_J=zDU zTzAwTg>jDU>R2olUNkc?ukNFyQn3aE{qqP>bJI^YJPnq zv2lj;ERGz!-&e4Rf&6}p)ql?8$KuC#k`qiWjlpQdK~+%A8JF|@HG2`=sX();EiR20 zh0gXv13lC_B6qr-j=CBC69(v%h94=CpFmvntHS8vvmHV6jsWuC9LjZ>4Xm0zrQWUu4h4a>90k zA}$YN3n^~5AW(x!h&!5p6FZ?wp;{|;RTqls}pXbR)ISe`^lwyu4O(`$Teoj znUsMGo&bYYX(K9+n2Xf#_?t0xeY}gCDHCn?aBao9EQXA~l?D*J;y5_uPHj|EX>wuH9Pb;vFtvnPIE;ZaBOvT}Wr^ee17lm)z`qy&SK%XK%FiR=W0LRx_$O zHm^PW{aV%z`~=)4s?P0r42h$IEtBrP--|0_{VGaEnyp+ zU@QeLEaz{ln;JQ_3N!YPQH)ucy8O+xuWwSCCs#*TxYOfpYVgwY@ZUV1tY_F(UB1V; z=);lXxO2HV92)EGroU_3<#M5Xvs085y9~9QF}W1ETpmXL3GTb#o7xK2Yj;e-mky%Bsp&4lZ!UDeQ^@KOYsf_z~Hz9ot= zMmrb*XU;o25gtu*OGp{x{+$G9N4;#{M}#rSYV*twBhmg<=B8T&7{vb`BmnioO6vS1 zA=Pd+YRJ5G^(Ej;Yd?JiGX5JR6*2AhP68ktl1E$ka%hjYrS-nk?Mv;8>1DVh0;Z-D zBK$l}Cq|pO>KANU(;Sk1iP@mph~LDt3I9G^MCjsNu8En{=5iyTy!F%L@0|TXP;QaB zxS*`4*RpD|I&|q@Os5A$~X3^<&H0D=Nd7R->h{A-~&Rs)P0ut$WT5(f%rY}X3 zveSp$B#s|uN1_1}Kiy{*bFCcP1uRk{rcl-|wk0Xs8ZmF(V~iDH^+EY}s1Al$B0lFp z_O`>6f5f5LtWwdpo&7D2HBc>61vUlv;i=0#wsZ=RlNY;QC|BGGJMT;^fGV$@&rkM8l5KQ9h<-#E6fq zA$hE4z;N`EM4_z6d(BDK0odSagvGk;Se6i;suNw$_x#h}V)Q}R%roegBczr2!uGUX zr?}@IT!Gfo0?t~x@)lY~l+p^Uwsr>@{A&~I2`!A*fvjrrgl0A5xmthOg>QGf_+CLr z^VYq?M9QUpER>H>S39!59cTtv`AYB#QQ)_O2p7ytG|X{-Mo_gFWnqp}<{6_J?VUP( zro&`&g8I^o-k#G}WGT5=igEStGTke6LH1kfp5xhjaxG2P(@P~-q}Y!b_D@ud{ejbX z*?yu2D_%_FO{31y4xDj9+(l6#>#07F^=X4={ldI?$KGD}Jui5C2ZXPP()qBnOf^`` z0l3qfIMoFod4wfu)yAXML}`?UlGB=ZlBFTOO#@^hB^K~1+RO{e!D;C&WYFPoWDE)` zM`z#2a|+UgW}p3Fy9}mQNBC+}?0skpT=7jBv?(vAi7w(l5&lU^XvXDo`k90LiCEF* zxWkO8h8F_l;UG1fxCF6MFt+J#@&KW*d6~vScC_dP)P;-#h&x zfNe{)B>e*)IixFg5lscExu*v~8E`0u7+Y;Wk};^*Lp{f|Qw00Oh>i*bglqFG%pK;% z=-N_B`LyifU9w4zX0RS4rDb-%5iMbbxVTQfhRD{&LUC;@oSOp*1H#-9wj~T+2()8n zWD~E#=LLE^9ibYrpSMP-i@NI%4y3PgCfKCb7#HYS3^}HvIGcnIP&`BAkaJ$HRrrb*-dM#T#| zBpk;UNw&fr{h^u3bTCTb+e}qWCMWrW&KT3)xf$>8tRuwI=x+2Xy9TF|l7}?@*g?z? zX1N*+5nVt{FtzXe8xI}bk}kaMrF9iWM9$tyu7;ta4$*1vxpRua0`0c4fp6XOJ-^Rh z7wUD3`B^<$3Hcq{1-KYnw~;H)#jBnYqJ(7*c)uJ0g%UY$0k}{Ifd>`R>vjAL{QFno zQyt`dgcqCJ(dUZM6sfjumVsvMHUi^`o2mXFzq1sA;|yx{swBp|WA!_%{!LO)pc>KF zxepcza`l2gVbmLJ&c8(<(|@_&Us_wphA0dcceyPpE!Qrdr^VLaO42j%>g%}M7ME=5 zc$yC6w!-$SFS+A>#PwYCvX*y&5-H~Cooq-}+53jt_wv(7LIFHZ_J$_o!Mx&PbZO#d zsRi)l4xEV7h8DxASUfcxHGMsfHt1OiV6G!V7NN_FN*BXyHZ;?G5o!n5r#DhJA*+FI zT;yWM1MsHniJ6c-aF91&YvrjiN?Se5f1VUbj~gpiH>d6~AOl0+4HbECU4R0hfO)+2 z4U^@}9$jrOh_Sh2z0}d&ZuO%+va8IDr=|oIT!?Yg#Sb~k_<@3D46Eu4)CGn}}yPTbl!(8%m zv#bq42R#Hn!Y z?@N;1nPl|u3ck)PT#Az&?iY6<9_d~8b{moi9lUH(`f<*2I>)evuxqz46xp|g=3m)a z3t`({zD$7;W8eIR@ZP@Bk=B{sfDMChtPiFTF@&a8_VEd$;tMEPOEo3Hkka~1G61ZL zE2vx8k7Rq4md|LI$@;dA91La)p84Y`DWqY>==~PR7Vldx1XWjyepxuy?g= z%$(y2FS6D4`G*Q6NYO+a$HS|$qb~G&h6K@cvOdM~13hVq2>5ddr_) zH!^Yd`G(BoYxpXT^E%P^m6H!K=VP6 zrMiQ|o*Y{+#mLEy$VnMyCmzb33-tLeA_Fz-^&T|Smd09ZUwufOMrc>9(iMZTbIpLO zt;9yhV;wO#;$kmrj419b#KG@vA0oOMGcf@~`pyb%4-|TlISGW+!Sui~Qj-NW=kMo> zc_}-kAYeKoSmTeE^+l2NhYXaqVg}vp9M(X;@GnrSJ!4A4la)I8ji*d((}SRRS4vq(3LQ4hc^}YF`c)Gn6sQ#Jo&T)R_)sEL9 zbhYI@VBJKj9T{Et&n4W94sAL!VRCN;-r*5#wvuN$lgM(gRSl!AZ2)MvL-c9kpfqv5 z)JC)h3T=?se9N2E_9{(C#dlYk%!RqBIEB62OPpoj(N`5gW%lv-mT%uzb)VeHcl?jy zdwd(AOe>6%;^~Lkx-eiZh>Aidhq+QH$6@MhY=u(pn1CMs9dhV4zL{&yjZ zcbNrk;m{e?oF@EUEi;T4Q*9XScRcl-vTKN>%lCQIu@Vb1nKxsB&d%ieSa-V&NZ!X@ zi|i3{`8+Bs?Hx)!mTl#oPA>N0Ammpu?5iO5oaQ?m%{06d<) zCT`owl)2;o;n@>oxf&`N#kW2DPm3i18!CxXutW{z%gBfoV8>AcFTLJlPZ(czE3?^h zx1%y#Un$w(jqu-vn{&9^K095wb#($OrK)Gp+6MX0{quwPEAH=#OFNCXcQPQ3WBbrC zSWZDH;&El&Zj_nB_|(P2$?@|syIc7GAb+E%p=7Gel?>((QbfE#T0m#->G)qhp?X9z z)Lg_&O*sXyZ`DOWiI?)$-oufHD}p0FhY2=MJS&vyKLPKOsJf|IJlvGd{7jb(J833Be3kn^-^**Vt442SEnldV@4%W3&w>tsTgJ&U#F*- zMDP{K*OGh=O{DlWM80eD3z6G0iS=+&5{k_?*-cip+|kozeMje54Z;byD)IN0!5-EI zof4r#bjmiv#q_(DwT3a#WjX4HjZp2XvEY<;I7C%k+C;XN#uUlFzTD;S+1SX5kJsMc zU#wD-Td>3=a4VMf=F)V!zPk>D9G!H}st+KkjLl8j-peb4ucdln9am0TSoRKb>bL{{ z7`f_}3p5zuPHS)eI)Ie)j8R-GxpOvTYCKx@HfagbikQak_z zsf9U9T)aol4;{>@kurj_Oq>lfg-xq&C$nD(p{HH@}X zUVBRjamI@ApyVlt&PI2}`{y8Wg#%o(pKViicx{12Q2TG_czoz9lGZ!r41^t|{31Qm zm!a`mzXssw4o|6s_65}*mQ{Vn7LR;jJ_Pi4c%u-Jao+L&6E4;&!=w>$(Va@}e|m}f zC%+GuuE_GN;C_PtGBwBeeNJxbs(k4n>~ZANE#S&TEx(s{6zr|#Y5EFR5{{)aSEpj( zwPsI6>idp$d1!LUn0ICICv0qDa(xC}cvF{?py1^B1x(qrdGh?7-Jky)Bh>o}C(n|` zi-#7MU#q2{+qJ5&W{q&rwPR z7~UITZgzCe#NthSLR(&OoOd8%iQG?!X}$ru3%bdO!M85MvVbvSj4wQ71y-8?f>9{x zgjjMfmLAGWO@ju0Q&Ph{a(9Uymt^<6$1l=a%NYyc^V|8{{Jj9&UQE?mahRgTGfnf^ zrTBxTg|@{LF_A&tF3sgB2A%Ymzi=Nn<(H-`~O zIQg{`v*Wx|xrU+f=^S}Ot#=A&VR?cjms44eA!9Wiw}$)7ImSGjxVrl>^RcP25j(%R z`Y}CJYJ<&xkBmJi${eM-IX=0Cb7*kJ8C52iN*3XYL(vqg;d6$+PIy+4=25lxH?Ckr9M`LG`G-iM0n=ccsr6f=~dgB(en&Xzi83xegWu5JQUyB%*E21YbO z*HRfOI6LuA8cF7O!ubuJJeoE(@+KAJ+Qe`yu(>YG!&={@N>pzk4LOp-zLM&Razl=w zH=QMtF~Yf<*v?ZYqU<`XKxyXkaO9Qj^6Vv>M4@uFY~AyzV#dkZb+9})4i49&>?tH6 z-zTfm**WY98OuiNV8d)zou+AF5{wSa72RJLU3}I9&1BYsAaComVSVmq5n;xGcR=8z~ zoTTm3*Hxp@r_dMp(0mB0o1wnKt`|xwCioP3_hXkq=;~i^aV@dBcs&;nU!E{`e9|7~ zuH$npDa5bdxz_ohCEo7ic$)#0lc{fU=Cal5!Cdn9+TDaB<&F<`zlRY~web37uDRT7 z7!Fsm1H$pma4?1T-JTx$?wy7AuLjX)U!ucGLc+85?$N*VU?Lx509o>i<=lGRoxtLW zkb}a)IKfhYAaZ#VkpmP~h=G762XJ{icq3dkPJz@ti4M~o^7bk0ItX1~zhXC``ynj6 z6FPc_{lO6BkT1U9WvK-%xmj5pbi9O_Z#(XXE3-tkZjda>ZE3;`evK!_f~*-t$wC@JH<#8TA3 zL?@mZQ+k6T)z_YI=R&d;*sEO291H64)5VWbMi{tUEB9l@JRnQjaGsD4o0va4jO?_x zBZ#?DDGs>K=?Nv^XrZJ*ZZpT?QfR18Dpgtq0Oe5jqpX7S%t|ER=g`(5(WL54L{f(X z@sAL3oz5Cgg7X3QI6;wgV4YaR6nlrVu0uceac!2BiD9-mhE8LNs%ob{XpDTRngWGR zXm$w{498_^Xt+qo1&vDA-K2LR9MZ~csEPfTP4rBeMMPPnJMF>e&9o7g`*fq8(+)N( zR@Md(m_%C2f*Tpc3HAK-{ZazGz-vT+{4EX8hLIuaOql1?2LYCxY`4mAav@t?-vv!f zOFCv*70}sT9WESVz%b0moYod$ao1kZFJ{kZBan8=!`nUPz3cyZj&N&Qx{i%$S_GkN zX_|8_^s|{$2RXvQbX@Gv)q(WQ7{G2ym>X#0aR~&v5)iHJe7iC_kqR?Pad9x#Z9fyq zIeV?@1eVaRI2nSi-aG0ErRg!|1@VRpzLxFlKs@a|S82RWn+GAi)4%ha$eqHwBCpbp z>yz`$?RlT{IzxL}uEht^-N^TN%4UI-({75!P7hJhNWdHD*T^i?3@HM1C7H90MDlp$ zYG~x(5S)QM8MH?vFL4(3%GK9Vak#bdYVpMv&4h#JxWv55Ot82LDYt>%<q`j$$J@gyI^OglMTu>tk-iSc)E+uYs z*W@1-1EO)CLEh*c^Qi&Gxd~OFC82Z@O<0g&vl6I=gn+Vfd*}8U@&1$i-i>kH}t1Q@)ujn%h6a0yM>4=A_sPDS;VFdEH#f z0j?#aj{VTRSh7cc9=UEDri`V9K3*+Z5>)K6_a~j1lRL@%=4_7m@rt~3zIe)PgO>HamY8cgCN@HO)blF) zn6L#noO>mWl`UpI3#hGzS;X}sT$@3Lxf1iySA)ZwCSJj@8ACLuB0TSl>?!dKvHSk1 z@yghFttfXZUu1(Ytp}B%q9*Y1JutRW?Bv=fI;tK0tXj0Q9T_-oOrSa&J6Yn;IM4FX zg@q57<1%|~)XA8E@S2yE`;A?^n&=nadV8m$+~l&{f05 zkS4Y3B7i!KGljt4iy-(a!uX;W;>9!hqh>Su{^5^;lEsdJ9?QnKEmPSI^&a1V6riPmAp)^ESUz4r>kW993DKc8 z@$fHjyrYuR8-#w5#9X09*6<#M@OlP}G7LYIOgJqvmEgXYDxhYdFSqB)0~|b_*W5xB z0wg@XdXXLEBe;rB0XoPb@&A`Y@B@Crsy4&XzIvabmiwhV8CX{VP7B8$`>f+3(}k|_SBdPpHj%l%bT5k=E2UWc{UgY_9tDbE=&k~08*Er@b=xJ^H9 z?0DMZcq83QymI%)%!fdDp9GU;E~ed0!H?E`%GV3#FOD3N(&Y<+hx~RuTe&{%_d*$%hd3F$-ry}0 zfdAK{&UHau_$`D?4Tj-DCJ(~t<_L8RhvE<4&C%e6E>>Ochf*C;P2ocWm0#v9%n>$( zG^>i%mj)0z)?(ALoEcKSX16}6J`ypHS0|B=cX5`{jV-Vwo9q)~dwM*o-5B%H&iK_# z;Zcp ze;DWXifU*3&03s6reFLQH%5DgrOGub&Ok&DE_L;~zQPca|}G5vFn zD^?iFRaBt?rTh#k+$X_Lnh>~R6y1c<-UhiOgpvi_1I|Uwgluuhj$x5Cudpr(_Jtxo z5~;M7PU-thx#JPtI*2uxvX#oA|Ky4|*-Ya;vIl!E-XCWtY0#1#-!C%7l+xtmBxUgR z?Sy${x)5zX1jJdI=xxZ4sbs1dMs8ZAB6# zh`Fz{qEdN*)G~>SJsmqhKE6ERSwn{%#RUlG2d8R~rlW%CW5U_Flox{NVTo+VkR~Gg{cm5c(fT{T2HSk&tkwKv zJsvzgHm-ln_`?AS2Z3h#^yVa>@H}3(^Qh^J(ReQ_oRI9V=hsVnf9RN88(_l=9oXB% z2(f@I#nkAx&K6ab&msCSc*Zz$Q@iz2_;v%GMj-{Sm~D0AvZfChfzJB(S*yqqp@V`h zME^?6YlWcWgwTd2v^BGenS0(?q95>Tghpp(HsT>~)%49?j)TO^VuI(6?Bmz+Fhrek zfHrS;B{W{i2#MFB22 z14vhiEpCS?A{B{_2;N848`uwfaK1B#EL6x}=!f07fD-*m8ws=`#5;(pt!rTtz9+Y^ z^#<5tIL*Q7oJyV7;{CiKvti_a*LLU0V=B*GoXCw`VY@S?ghl~~|5qy2_)vGF67ush zH^n2<&O;LMr@3){d+WM#_(o_yM@ck$h2*X!3PM3`Nk}Y|h!mO*!2Nk2s={~~td4|= zrld}eKVkOcB{MEH0K%UOYXo%Q(j7GUyB8*V>q*;Ru3cf}l~8@RxRud>(|$PcvYj0I z`cDGrf-0G6GVYI_+Xi?p7hh>UUbPfcDMn{d-hf z7emc@xTzfZCh>9*`Yp=A7*|7Vs%1Q4NeZ-z@EBQB77&2t?L;tFpE@HgwM1AJk`_ft zTp~I)G3eFC5P4RqMHGpmN?xv1;PdIF$m65;_7*KtKXy~Pf8IbCkYVF~jbGGmqpHtH z8R|(kFJr@U7FQOsyGifV;JlcL>2S8d8OcX;TzFeuHmM5~p!2>LcV%+?PN$1J^vm3& z{232riI%r}uvd`at6W#H1%^;Jp1PlnhUrKLvF$x|Sik;{<9mpIFXG|CfiNGIv7D)& z7ta`ISxbHU7wK1f!m9h;`XOcRwpDbO2zs!p* z;yKiiaz4xRyhGimAg;EK!qJuShDz^>Qeqy$==wdcO!s;`f}EYR*5OOQllD3Pjp<19 z%XiMI<0q8oSjR_^IBiWq410-@^E?BSfUH;C9^n?;861MPkz~;0+}`yi?e)1Qwb?Xa zVuunG$&VA_+QZfRYs+tKS;u9b|80h+u&A!Uc+bzGJ>Fx*)GqQJk?MA4#PuL^RW&*N zcAe2vB0B#2*~jPdP<^A6^|?{TdTCh?R9!u@oAz5_-Wy%X)0Nn6OC`*#Hl5qP4PY)muHO;uDKx2YhU z2hUaIJFSrI2*mm8olxlUXbFjeA2+Df7&XEW zd!qPaRQx@-2NWAc;mSh5b$zhu&ZMzSr8QPubirkaTRxoc3`Ggt(!q=Jw$xdy>AKHs ztT9WYx-R6|)<7~{#ufw8+2x|Diyr<-kbvnDrWyMy*i=NY>!eIBKAKSO{8Mp}Hck%9 z2sn6MiGE#AI7Ty;IN<`&9+jsV11!P0JmKb{bzREu=Jr+d=;ANHt6R;)7tAuy!b(5t zlAjhnA@6{C*%RomPJwk9J*f^&hg>wb~qJKvvr+*%_O?KkAtWv|z(Z_mHkO=%48vX!3vIn&9kjjX?yyrs$5q z0hbF$V<)^D>GLg0M*{SXinSj>^swXx>sGhEr+-Bv-joQh;DJa3oW=hcknhg_WBL95 zmkYmM|2^M^=FjW+>AW3MW$cnv0prHuwlTQj2bcaaz3+PA4qnb{--#~T>8_$};i=o< zZQ#zuERExLohfBxqX1girDglM^ZiYJnd9zP1=}Y0jC~=^Q7Ao_6bnwC#snks9nE^F zIP!so${EBpDa#uCaidD$j`w{#DxzZ5sy|KmXneNK{{zGh3L{qx5&+{0 zY5&zQa+oX^X^JY0Dnm5MN<8WAi{jK8<(>`j^Q|9t$twB-GKcE0;ps#Fn*T5&$~h5B zW=jq`yXi5jR2Hbh5KwM?8OQLq^O&_;FGgCdi7A_pdrdtY+Vx|{3^|iCW;sInk7%rF zF6oT51<{L1bTq0`sSH2~jblz~ZkX5Qz$6)R%18#7>s zA+SuB&bTzKfTNK9n~@f$kEpw^?k`;o5v29((z+K7(IdB1Kyd5pM}gF7N^aBWUpT( z9^{b97FgVuecB!5EU-+9@yX}IL2h}|C!MCI0K&IE~$Njmq`T z9F^a~%wGq#k4Cdki&^~R+T&VW_@+z0FZ3Oc&Xy-056CFsZ;=>(NYJvXW=`PxiNeraXL5z>v^pNsW-S<39BL%Lf==zY5U*wLR_s=1&GAL0XnZa}MsnXs>* zw<-!SsL8k!TtyS^Q+P#^$6kzp7GqdiVf!1d%124q{lg%DsuI@G(f5$#tx#+5*05qs zgCZ|8OrQio_u{D%aPPkgToz9oj$SK%6e7WHDXF%3;iFlCoCw{{pY5|1?3i7CFBMKK zt}6i^5ERvgwgpi1wy=n#2iS*~`XSzCms;A`TrMaQDi+si8BF6+J5SNAi@MyMU(0dP z@n`gD)?wJLB^a<1n?c#w$;XL7%s{hlXv(3#L4Pus?Qi4jhYyG~&5+3Y z!qrgo8)M5WfAm>Bz@;ix?xH54=GY#KYwe1efO2d`VnHIYOPA7Q+o7q?p%QPZrF2 z5C6pmSm`*2>EpxD9v-FRrw=@Ct>V16(+xnSj0?P9xhvuKTOL3ysZl0;IAL(R+vg=c zlGqi8DS>A4N4|EtcuXmyVOxqb8vXl%h{#YLGy?}jSq~QgN<)WlEj(gXX*@38oh=Mw zQn*_U-x7fFSL-t$H4>YmbC;w`87R?0YlAtW#g85ymamLG%24Zb^APV!Z=`p8eE|cq zIy(sbNx<5eZuvpfah;FxyL+%+ua1%$=|>yGt7W7+F||BrOBJe>x3+@>S%&hC$I~$T zaCfXFLdQNTswxYu){>ux#HFjJQk-mL|GQ4-QEDz@vF6?NFX-et*R0k3ry9#xn`oCW zm$9{RruQ5796dE;_{tT2H&UQvjR6WMLX}9*5@I-SsYb&TQ|xR;9qss&+6JgGLN9o% zj@;i5E-!W;MhKD>Rw5Wqi?LWC3GxLPAy^}VsF3J*Bm_V^lgrJj@YmM}@ynva9Nbm3 zf-Z<`M%YV(Dn*kfy2N@i8~J{9yKW@pAAZV-?^$Wqo&XTJ#Nu~4@7z7W+qVbHw}t(# z6I(iviGUb!?HfT0FFU8S8!ruzWfufv?~DO6t?VMMcoF%5fL+usP>8ZdI5&V&*^fj2 z{4HhC$z>=)%{yE}Uh6PH<`uY&gaUvyt+&A+svkApVCvrVj|=a3Uf00= z$EpZQ{BBVDO@ip=l#7c414<|u?fm{z_;(%0`$(VT-Vy(9^g_jr&sVuz8c9=*RBEG( zp!?wiJRPEq4sKL+>b7e7fZGYDgC=Ty)d0+&ry=lpe42;{Z0(|8P=eChYNP5)4r)u$ zkR#A&-h&pdy9-NHCzn_Xo;FYZ{6W}dK2cwbz|?je#3)rYDD>(Wc4^2-?e?BRAx8_>+D5s+`H|a|@cpT(;k&<~j)Xx0lvDv0 zH-zY0&uRgliGp@^{T?JstIAbOB3Hz7bu$jv(*K5p=AGEDGdsxjPh+yQ0;7(m*^z_H zqFZkl&w=WDe@Ro@Kd95d{x12$FXv|WW#Tb+T7999#mwX-#T`z9=(i~Eq-uvHeDgRH2W-wly5z`~UdjxUILuwUCXsye zw%HAYAP2vwxibLoxAsqoxbzEd;{IBI;+Nji>~zf_`8Hk?N~`dsr97>!hIojE+gwvi zd`h=F!vzE`L7YOMA`a1}>U;f(lQLNLAxbRa>S8JT+2cw<%(xe7z~IFO;)`9xZ0Pme zeutbQiV3PHR8s%UQfNl;kCepF#iD?zn8exoYwTQ{t`Uml^4i=QDUCuaOuH$J0PTb> zz(m<-rt}u*%sint!mmkZYI^m$^`)rv%NR3c#UsaQdqo;SD+9M-Ww4A2`y+B1hI$Z+d&m_5v2V4(B~xA1|3Tfs~ix>}6p zdq$k-$JwJyA8IcZF=Ip=av9f6%Lfc|h-wQ|i$J_1lUQg)#vkp?cv6*9vIG3Koj^lwd1+dP;zwx2wkR9J(K2|Ov z*>Mw2L0-p?>Ux0j1P^+WpnHW?4oU~rw!DYdqk`az6w;v7onWFi29$AK%oNcrL#|_Q zM~xHHw|c$>I^Sti3Elk^4ug}0JUXm%$5~Gc6_U3#>&o>k= zD+xeV+{sRpGgX+JCN9^x@24c)24twOl>1H zEJpP#O}H%>Br*1g-e1GA?uS=H)vn0EK_X!DMtB97adF2fC|SQh#4TLc2ZAzrVGQK~ z<{I&DNfY!${Y!&_ilW^HB|)~Tqix&qIyRZz$h?Z|C;2BwE&8u>twGkc%EsCF?PWWY z9BUuW<9T0SM((4>4T_2>th=1mN>^TPi!htwhI(OVH?3T?XlgBkk;@5 z>-FEPU5EP@BG(9IL9`X4M;I>*fWC0+>&FKl1w(rKDZ~Z^?GW9zVodVtY(%p5>`w<# z))R?iE1zBUJ-va-5rRANy)=LFEGkg;f1wWH0ao83w1Z=r-?Ri6OmnUHnz@h&mTOjo zaNQiz?Qh5EfCqllAiat@Ef`qJwb+DhMqJ_2i)q=D9{m;7xB#?3z_w26J^=x=$;#{yrx z3Mty6^#IiI6hfy5ADMcXSeBS5jpXO+ODT*Ks&PO~Vn`JR`k`Q$YJi8o$gbro5er#5 zq*h&)&0*3h>|4t<9fue>3ZiArt}c1vp6{$ragTze+%@UFyw0fYnLeN8DclOdR_G^! zz6vM$YeFZ}2Rar`f&~-h18&kgynrYcQg!B2EcTU-ZIL8G~8?L=S zrU!753RS$@C$j09WXWmo%qVLIWip`oUwsc{nqxY7yo~GFFJ+q7Y;ec0%m!4+GaTQ2 z#B8SY6v{h-!5yA%A=O^~#m5$s?z8NvZOWEI zlErb``(ymueR3I~isoF#IQy2MJ>FMwGf_gu>|O;&dQS5a;oLY|As`0|wIFs0UpQs|Uo$AAdQxuU;t)Y7L-p=?o4?+pO8r ziEXKs$}laCH^Y{Hs~1PwYXMaOz|@;EnUnD0^7ozNhqcq#?5bU{h(qj6LCI?sT9l?9*`eFAXA$dcv-S~b~J_j|`u*2Js;>ZtqAo_Y};b&aO zK;HP!p%z^Z!!@!Upu{T;z0M_hvP-R^E4iA6#!1VC7sVheJN|^zaHC|V95;lpk`BhIo1Nf*Omk4M0!MsC2dmfuH-OatYd*EXXZVcn!#92p5aSUz!ECc$1 z>SW_9%wXxqJd*8>hw0Gzka{}HW@xJ#$y{|_H5n@YBrYb64-1EWiK>vY(?E7_HKD%GKp0<+)7L`(C$iUUk=Pqc&4)!_ChhqPO#(2WDD z#dmHudh*6xo-+Fut5E2JQ?qulHvn}!YO9Wj^jcS|b&TpyM=*ZeFc>lo=rCJWA04QX z1;gc!uhNo3Q{ZNK?J7EVSeK~e8ywv{5>hXlehY2=U)7H$@AJh`U4MCS*%dHt&31U# zar6U;79XVSJeQHdgNkV1Jyz!iLEM)Tqcxmq&W%v+8U>y`8jxoSw&HL*Z!qi>M}3kA=Mjh@n)_NUi(X1JLLll57lhY8FoNcKhe0|uW(#Bh;#&EH zCi9AT0V;NEXQ8odPMnoleiqNZuu)7?`5Y7ei?!(xczl3-8J=vfLUFy$;*3O|(a3bm z0+kP^uy}|fU<*uBHDBu%H|onA9bH{mDcZIpV(l*CumM?EH&-b;8=D{$7oIE4-@lyy zK_7hKpeZKmwxKD3+@Sl0IA|934};i!Cxdyd5$s~*%ILAt_eZA=S?6q5u1+Zm47y?q zUZ$(>L*YLwQa+tluSJIK2E2}IadyMQ@!5v=E`-JT@ILz!YD2Z51L``nn36D*y7PQ-3L=?ov;ULZJ`U82kQk3I;cyuV|0ygI_*ebszz z+{5f40r4cOWG(LMC*ez#ObF$(Ov`$+$WC=Vv#s*H_(HJ_w>{?l)JM)qoAf415KWJK z*91&Bzctoxsv%WOTf*@Qmz&~C;%a@!ObkfU@wJU;(}+vog+y4K4t1&`dw#zHZ3m+L z1PGT6cafZK{k8p&!9(3{6+W`@3jdSx1+8WzKi3H@di~r%hEe~Bx1l`HvTfsxvTpOx zc;u+*lRovR3exnqlHrV=3dgACN4sKkEi8p&Yb|@vedsg(5v8ZkLgnv%-(@5NgI!tr zUSbUsQJ4oB0d<M zM!0r`oA49eWi-!Th|S$v8^0{iV{Z&Qnc>4zT=0A=15u901NlTh@2(T0v!(aa2i|D1 zha_f9JRA$TYEce)Rj4E5j1GvM#=o7)k#6vwLzve2-fQgLd0nND>>w^j9Xw}IDqwZP z`y4FSMFj{{_uGg80hEupD-TD5;f*=#tUfhJ9$*$@#AR7Yp{v_!#tCpvGxr}8$Zeu? zbV6jJ$YDTWxqthE6ipY@5uz0Q)IV_Al=3lUY1|$T6q=|(zhKTULO?@r^ojgQrY0>B zmM`2V464byU=||Hao1XEf;(X$bXGWm9lhH?<7}S@o*x9uWi#M{=To%=AxX4Tpj#Ka zWkJf|(H$TVs+3Vg%!+WKwp&GzwAv)q!p6Y2gV;SRP5_SO zpZ$@l80h@vT9iAr*wByt^NO6u6>5fsSi<3!9{*S@1R|fXR?q{FTQELbZMoCaz2Ut$&z@SH$v_kK;4u?mB*i4-&`uMT= z8sq~)twFtELRygoh|ehC2x!of;BL`D{hvR#+v(;;#^BHFTB@m^Sw64F_Vo699BusH z==rbJtZ@I3&ENf-%5Rl!=W(H$_AtJ0!dl={y$bDe9$#TgW#DdO%<{tr%ldiUg-E0o z@?qRC&kPX#P8QppdwpoVO@BjlHTgmaNQAM-6eC1T1VhJB;_SPO0GF-47K6=w(+dFr zlNe$ga_Gg_%W)F(j;V)@2mnVwxW8=iqpBUFcbVQz#aTr&bo8VDKFf2J@Ads{`MbG2 z-t*7t@5Rn+Jzkmu5QGbaDy_Fa+=q{@^6T_kUVMEU7kzfV<%qHX&9)Y;sWPiMht8Zv5Ou_Y_ou*DD~@tL^XwBo5G=5>&?N&B5lK zmB8?)OX9=`E;k_G?QIa&zC#N0rEFiN0SMg@`S@8rgL{Em1TzEu4+++J06lrI8&IWr z(;}_X>7B)*SQ5_z>*f<{(0j*8W*K`Z?2yPn9 zebBMvd-#0VfuwHfVMJM=`Cha8yyzJYRYJgDWb$$I_8JbMPhWrcCaGL{dA`Mh%D@u? z0IT%fKC)d-s_n+x1ho-|#=~I0B4)o7h%Ia5m?D1E)hTCckvLT+iPUBd%qm5Zz)2n< z474VL8}h~eUqFvb>Fj<91Ob4BYx8&LaT^V3DJd1Qyxyb{_6Juk=&*-WrFX5Yte)vz zp^ElwzH$U?I~PUfyveyroD^$UTu^MRrU}yyx}e|k5!SSm64=S%7vEJfpeqWE`O1Dx zq03qo7*IdX@hJjOj^C6a{G&EC2du)*94L<7naG?=?Rr|dND3R;yC&^`w8qL@U_PMn zvQC#vyql?y^+R1Ojhr

      1o}*&UrNUA`^J!%XKr@!f6Fse__Ob#1$` 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

      l-;dLZAIYtCm9(jK4srF#dmdp*` z_e@*2fYCU~vBF3ag7e$Yl26)>LE*u z%A~dlb;h9($G?1Ecpc`DkFzqNNbq9$M?@*6dfffEL*PPPynvAGgisbjvkN$^X|*NN zA)ABL;BKPX;~~`xi-YhkcQ8AyqUud;6%120r0o$eIp4)+zElFFpw=8md<>ydpc}VS zcCn+dxGGejP{?8sgDwyUSCZoJ;j+GiZeMaxxnZ17Hbk%Ow7Tw35R)LKqe+v-aadjy zj)>A#`i;#GGX#NeJO4fS3_#Z&6R#UEyo_bHtpb-E?-Lk#j~LC)oSqJD7Wqp2?e+bU zm6#aV4if*1IqKe)8$>#zo%H6Ij+({U$%_-1jPaPTD3_t^e zpKkXi6TDjXjXH;F)WLcB#wz{8FidM-p#!Z>J8KhrqgC3G2MeIiI4a9?-bn4hHv7`Xxh2hZPv$cul_%6_gkp&33$)`*RMNr;QM|4lLBBzUJo)v)nML-Bj-|I? zwIjM4f$Lp>8yyiW#ew&T$=OWuY-0x?O+|`&jt4wL1sgE4j+2VMBAv`<*9Yrq%Dj@^}>tLN7o~jIh^`)y2+przTampEk zR~Tgps*z|R2d8Ei2d|Jh51a8$G4h5)pwNu-?40{rd1B>5k$AmEuMRk2qUY%6cXE6J zhS>aW`SKBhce;BppgNr0*Uu?B<`p)^8AxqdT2cLD$`ZBJKi}{2J&j;}{^u1T6U6m0jwTWD zV?Z6XLvtsYxZe?C0&MV*^Nf~AaEUp`W_hXfIJFw{#+OrT!}z-o<8kuUx{q}%C$~#R zdo#MyQ|s@_k*j8hupMxDI7 zbO$26w!NHb(*yfVeR$xKiE;~$j@|&op#`GYzH`Kr21*5AGr0!@rtTa^$)Wl>IXZtT zlbf00)kN;8{Zk8aagVgC_7b=_Luax*1Hwjgexv>fI0v7SDE&BR&>4TW8q^_)c7Mws z)-VW{SmCQ&e@5dZXpJ1N5SdMrWdlxIZ6!saNy8LSVq^7`P?9B$m`IVViPy{|S9 zedh-BnXl?Yt^n@}OPiQ>4QOrrv+RNU*bzYimVOaI4+mIOgSQ?hOhe#j@*)+By-|fk zE7a%uDhqC*SVv?v!^?T^QgwLhd=C4eV7zOKz6gf{M?4C?OwUActFWPoc|I`O@42!2 zp&_Ly=8d#?4O)U60mLuLf4IM@L$VT=!6PW4g4Hn{d)|6gxi&NIx^#?Hk2;S@OEw`} zu+NQW?a1@JHc}A-j2cB4b&p_+O|PITJE9Rv=q?;a06YAs)dJ#9j_x-=fbNJQ=i5KH zs4oTN0+7#QM*bZZcTq>wZcSoj>51#uS0kWyb^$ad2Eh?>$#Kp**Pv6Y(w{k`dlv}J zb3owp1$M;tqcg?k_#q#(~nB8r{dAnO(Ffop}ug(2B0n|Qmr+S zE!6R{PeGP1*uBU1ypHME<*gg9BU)p)F~&nvZq*m#XB%p_*-x?K%Wn&W_E>g_X0nb( zm^$-M{&TZIu{TD)iz--*fx)Tp|6fke^5K1dhYr5CnGtz4M=Ku?$N#$h)~@AKQ;Q50 zy!D4uJLai}^YS7;4<)Bdz5lyYd_O<)D-Gvfy13cw^_RBWEc^usZG1V1e2-8m$;=DhF!SM*VxCndU zw!IhQU^fFCO9%02IgM7FV3ouPy>Yj1UDH$;;?PI437{oDc+K8YE*>8pf(Bg^_B}+F zp2C~geHpBYnFO&Z2u=3$(eC=T-pxdsZd?ff(J;~QNso6~($W{ZA(klkn}GT>MiAmX zaf4KXe@mU_;EG`WIf5uU19kK?*~nn1BEztS54@3ZdJE&4IRk=NdVZFIs2k#92u?4r z_pd5I^y=?rT>t$NpdI0+_Ujx6t8TdZM4SdRn$zsn`HApT_A8LL`>}K>z>}m%T=(}~ z@FTktL?Ju(+j1%{j;WMCU)R;G_wmV8l1aVPyD!kg%`0rQ@zfOSbG{n@Zlq~-kZ-!! zV?~5{6cKxjeTI@QpYAt!BG8ROy53(zBObqZ%a}F;TS$RgRTtZcq7~GL_|nKaF(<%} zmD{+!xiLM`HSPnp`qixSDW$r1tiWw6>wgS!y1`#_G#91DPE6o2Q6vyX-d$ytpXq$1 ziX5-&3DxS{b*q*$(esR84$F-Wz$$I|>@z5$26a@S#Bh-2?%lOx@Xq&wtU;G}sQD|A zMlLH~R$5RWbolhv8ofg0KDZsD_Z(M34G$JL=nU0xe2L1e8kLb^FPi^xQmf+aEfU=K zd^7`CbxuNJ_W%RMKDTqfG>CP)z?kTMI(zJxY!W^_*7B0tb)+4ufHwo+W$>Y6&f2Bl zAz+Oh9K&?3h?c6EamYPrg-k?jL3X9ySCZx1J_-XTElHi&9bMr-1)b_GDVd49!iBCi))(+fB+2*yuKyUHrr|j*|Vsh15c}9HW zV{NY`bzVoxxJ=R~G*O_aUU5#~WHVly9<3(Bh+e0nCHnrwuFLSopLq8feiu)(t=E3XlCHlZ;sn~c$#>c;+{uF-uGO_5Qu6@%K)>oG47f`|E2m%PT_l(6U&jI z(mCSgJgk&CVehbq!`mhl2)i4h);L{;*$O*X1T#%B($uCm=Ue&%>Hg3B$ZT@y7Z8Q8 z=Q!-`#g6Wmzxp~HQ;7DK-uC-+Gz>)I*PKO6#3@99x`IG^ql$vu8vXcatEWhfAE+dt zJD9{7PbWCS%#IPn=Nt;JU@c7<#1Xlczb(N4lA@aYnfvk%G4fzzHOdLXGn)A@^ROR5fQ89OCNFuI7peu+`qlO0g@Deu zVNV(nMly=DB?|OH{btx#dV)Q9+G#J#pz_}4^lB3xzyNxLYO36M|uM$%s$D$=wJOEDo?n|c#fp9WV$3oo6%rHjnU z4`a*FImHrVv@)YNbUbpy0#ZB5GR>em1MXqHhmH05e7v#}l8pDd$XNY;rs-||n~%Ze zn&N(osE=mn@0{nsGgbEEB()l@!%KczW-f+q667Ywk(0f*nrPfY^j?Ei@X@>qVjmhr zZ3N(jh7E9Ho~1B8u5dJUnlvsQ#!pt?XgL>wV{HU2s|Fy35|1Gsye+p1Am=u>Z!EAa% z;EoZOXM3^_54Zc#iYB&795F2^X81{+$4|{g2hSFY!<0Cp*8FY;{BQzp`bNlWkkXGH zM=-fUOG-TkkxQci;!MXE?0B84k_1Wd?cKLL=0r0j088QthHkCQ;ee}>dUlG`4czeh z>V%*w^S#IC4)0osC)nop3Q8J8QgTEgCV~Ycg?)vv1ih6oIiJ$r?{RzH_wW7xylLJ| zgWchGZs*Ko+T3via$Vlbh>MIAi=V~R^86Tr=i5yn9c7TuiJk<-bB#Q&)5wX!5ZRU|aJr=-vu zA$snCNgji0YEV5H>TqpH2x;DPN42Gn7nUO;%n)ztSY<-S{1RP$Q1PEa7Tff0P6T>J z9lF>@WIOZ?TwRiv|I2>vfuvFD28z+=*vBL#L16U4YY~Vt7)b=eVUMT*D9!rprHYD z3-6R9GB!lUEqE2jE=G8ho@X<+GU13Ci-z5Nyvv&8t}NY+XI>9=CRpo+4HWj``nFz+ zU^gkUXZJfw<_CqW(2HboXg8SP;E*!b7ez0v!ONcfiPfi57=B z?jC2ks18Tj?<1dIEyuWXT$rbbopW--vl_*;wy)iBGf3r~Zxav{ea zrok#Zc_#k=h53ZU1GGt@GALi@hjAo{-73}cK+Azn7HR$=ZBSTeISHXjYXy*Cgj7Na`{vQbP;W5a4_0% zRm0ed2OU?Ab&PqyS{uo;LnL{znxb|@i!aDFa>)Xh%)rGA{7AOqZ4H2K( z$|t{Zcp}WJC#vyT*eiw319^W$!v#L!4n&ZO1EBpKtjNYicbgUX$(TN=1fv-b8&ru? zveSY{4oD;@6M(jX;oLt{68ZN^4HM*GSKyWMw zi#c0|(W$Ph(ejbU?x1UAek?d`qtjAN_`CEM;IS?+4p1(GENkd# z7+`?$?sbFJMh}DwIbx!KBBiVo;m~jcR(SQ%`??m{?$ht1KqaS&feI(*>4CT-co@1l zL3mt@d*LK3$K(@6Xyr}pu%mEB4meD)2y@2sP(12cj9D!M8AgF-Xk7sceK7P(E z!_QS5vFL^3)Mm?oLU3*q{I}t;mSc`1-)IKQ6fHi_3=18&>P0Ga`ud}3vQEDmPR#>k zEgZDfMgXD};}1MH0=~u)K$N7C?`@l^!{`R-8P3Psr_}C8VnLfgYFaiZ0u0^g=Um*U zfEE;HhcT|6ikZ&)9uM-}{qG$n9nwO546^S#07ur6N8~s6oszzsqWgZ{2iq6^a3cHR zKI34$4fAJpVs^kv5b^=w-Ghe{sH7o+2OMTjd9)qT+7ZF7znuzcXU`JgOPk;+JeY3c^*J2~m7Rlgh@eIFgzWZxRW@0%eJ$(JYBa z)P|)PTjHSYdIC_ejGoIS-o&1oK?)~CF&Jp4?WMnMzJ6l`3ph|I`oVMFXWg7CBBr-~ z_^4RsmS=T)U0YD77=t$gN;H0N(imv=8s;gFmbeYC--mb(^w@dA|JL~R^M(O0lTeKH zLR*&d$!_#%l2eOtORixM3jibyV@cW^+u719AkW`SDYK+Z9CU_e%ZIoaNeIh#cexw0 z+_mn%^yA0D;a_&2%g${NHi)<=M>8#Fqwak=i3>3B@~pLm8jViC;`~Ny+Z?1ah9zK) z%q1KgBPQxJl^kBsv3)%?0$`|d4)I)J!y)r1eI8L~J~!G_R|*zf`kSEh6;D+>iHhXv zul$%G92w~jOuO<&ME=ArBY)-?G}kV|>jLu^WkFl<;AFlI{n6~wN7HQ-KiG1;SG5X} zldk)eXdaZE%Q!yfqXU_x~Dcm$qf4(Gn|Xt1B|hc8;D+~+6O-t0d)@yRMq zx}Ps|QrN19aq%`W-sv@OvdHQDvx07bdBVqc8E{0q0rh_O%*CA0hm*0Sp$uV_ODBV3 zGSr^}8r_h&Dx&rEzCEA(cNu4*5}o=Ea1 z+?+h9rajDubtGO%!|<08mp3rvzP1OsEoF6EamD)uA3X7o7r-(`FjuMJTx*Y{A?zu{ zE3oGbN6T_>erqwdVqwJ?b6@0Kh~Roe$qQUKY@vVTDEl9z+MdvtuPagNLKGwr;|lYK z3)W^8c)E-`P?rwKRfn1(TKtsZh2(uRa|S*W(+8M+WdsfnA9*<#fVihGf5>yqV%!fL zdP~4>E5=&-{2g04Wz3yco#aV5#eq&ak68>hd{R1~$R5hMHEuX5t}wPUk=H+Q`xvTo zUzvw8&&#o<*5l7P-acCGu7X3Ae+1>{h8nVIUY?*g_ULJRW#UuR=!hlNklj={FLFH10UJ3Yr&P|2wmdg519T7T+GSF=^yFd|y3q&Emtk9x(?% zK7^pVudn9AF`?Iuu)i3L`8fk9;d@{&GeR##KKyHg=y!Oav>?(IJ!r3a@3-N5&Fpn2 zY&X7%-K3`OnrurH5E6%b;@bH-_il97_JfiU+d>Y1L~?c^V~{X80l!2@Hf}eu!>#HQ zLm!pVR8!blj`v~Zy0AG;2!OE>z1fIiov*J9fsAeTLYzDZ_@ZISj(0cV6`cYgbx!aD zV4q*lM?I4v`rS`$>H@3!h6Lb%@P~cH#v}o6pPN|!YFsDIh5NeWR%iOIL~pvH zkRO2d2MkfN5S+-k?<1{Tlhjm4l|?}jlz$&AE!JK^E!5PDkTM~D(@=?Bf9Fj(;_Pf> z=afwW(eVRP19$A_Hb7;|^e6P`2Vh(Ux3=(2^#uhj9Jp_%Q=8n^-&8rB81DE_CP8dWY)|6)%sRAj2VW$RDb^A{DC=gZRu>0+X0f|22Cw$N5kRM3r zrPApKXo#NLY12*HxoW|{kDX2I$(f`nS0)o<90`GqSCo}hkT;^`&|w-m`4!=4MN~S) zN{Ey$-@<^bDoIGf`Mvt(OL5!z*zyk(&`8j9@tw)%j`LuETlVDt(u6pOiOG@!hqHd%1cjbP2>@q1C&D?$_FF6ydAP zVxMT8FtyS&cF37lFv$EDi|8|kR16X<8Hcfl2Cz81=!91lzjE0Z%IByU?{L3Djw$_W zR?bCIylGYADQgN}P!+*~&F&f54EU!PZaFIP>pah8Cvdp7aqD@^%$fn$`URh7lv0g; zTsH+cyBbKMzg6=7yWMYaEkBL4e;T37cp{v|h}`(Y4n9vzR|gR4ng;m2hdCbSw&yQn zzjVz*+i^eew6Eo}#lpWMd@}hKyMcmu;^M`ojN+Jkid-3)7ch9pt<7wE0$@t7{7x6X zn7PNIRR0tWpUNCA&}!Vn!#@6-WL6fFxb_DTM0c02_=xqkJqZ3obU;2cY?qrQ+}RYn zC<=aE&W(kpHBK)MVp~yi?{>q}wST&DIEjbF0>7`gik`_zIX4?G2j>*S2GmKlg@!SN zaDn+i(d2SbXBnU)v;czA;Na3PJs+74~@J)cy}$Z}-}J{*F`2 zsw(isKH?~yvEA@ikAShI8&n@kgbjKdnelk&*el5?gO?k#-A1f)poAYQWbFW~VpO^E z5w*PYK6RzH6nlZ{P&?-r38NNjo|1|$JEbYjbVFnn=cRyue+ud7FzyueE=HG+pXmS$G|V^@acm69 za~{Xl+B>)$Jg8+{p7ZSLOgX*0z%_*Xdi{r9LOD^gV69<1$FiAXLh4O6@bL&Y33Z_H z_YKA`VCa~2hQKB`O$h^HOC$cDt*y7>z;^AT(pv%|eyL*(7T=pJNj~Ze&>~O=ykeIXb z@GeBY^hk_B=M!PXK?e|?A-r=(ByzXIy0Z1d6v6C#XYp;K{o@eh%pS*RH26ltLCqn* z>O;h8CYydU-usIN+5=z!0!HDRf6@6wADBfC0NY?9_<+$tz%&kUau)%j%8#7@+&PUm z#6>HJ0@&h*oGd$sVcGZ?Y4J?V9&Hh9%eN_pACnM(FyU;qfhj)-^LOwhGtr~I`wWy1 zP%~xWI3U*n=>SR&V)9M6sDy#Ej-s`}&w+CM8M|N8PK&#zB$Jmup)P$wg_D^8oYYea z2x^Oem%yv}P@|!hH9?H_b4-?u9Wa;(BP|Ps_jjx#uq`!u) zgtGi1fcz_xkyaURoHdRWu@4-|L!SAzRzs$|qYgWoqg%*osI4)T`WFL>BpE%EJvY#` zJsl(6dSbFUg}9hi!08K21|*miN7>207`fIX4}t^0FwdJgXBk zli+Z{<}&Jo%x=72kbGVv-Z)l-@~U{_(Pos@asB8YWc zsmRpgWk9@h2J?<9#0YX_7D{U60bdHEWrKWF@}2AqLfI9S``msjAT~to96cDuX-4)m zcj98AQzFa~cr|Oe-v=Moa&2=T49)K+TptITQMoquyEtPY{6-}mA#fV%i`z_B{mL-= z%m1&2k5MAmwI|(k_aSVPQPr5%H1@U7n1Rrksyx2F`y7paJjqYT@nMxpYQpvL+1k1O zQaz7g%=dmQ^|KkHbQDJvDtxF?7ST2h4US94c&6#ayh@g6ip z^J=g-qfQwoezGWv1=ON-Av=Yz<+_d4s2=E?_>?>s-kJ;!Hg4dLgy5*P7%eIB2!u9+ zTw!g;K^B=Ic#V7vKM%2ofNI>1f%A3e3~f9Q%&y;MA3KoP`?|sjJKZkChuBms67gpE z;4o{f{uMzvj^41HuPo_+&+xPiEg0h}bF%ywbMmlljD7Bwyl~^85jg2Ay zr>Q7z9$PSd1QVQyrelonGU;kC#tg-HZyQObMI2oR8(GYKH{2D9A?Ijmx)%&P$-Ih? zGR8$qEp~*xcn>yO9p0IWai~ne<1x$^iQ!F`7-Xo6!|YBkfD<@YoU#JrNw@;8~ziHY92XmhhM|c0)@6rd8{R;_P?ZV{+ld!Mk>r^Tu-a zzL^7TCvR^ayw(_BQr3CyOs+K7cisu)YmP%OE=C+N_)@5NQyM9I8AHd6V%|VF93O2e z=q;!@Tn*ovJJ;&Ez-!lNuddb{IN!wgXQjoz%J};}ik+qZKXXYd&UNy1tt&pCv+wpn zW=P3lzxQ5P?|quIC@*3>mcm?h@5cjdCk6<G7WQ3$}yv^2*+LyaJdQ_BfF5WR>U zj*bPhFj*e0xOWwTfIHEOF|Q6Ghe%MY3DH6;$0T9gq4oMZ+_T1)U|u#?;|nLI=Wyi7 z8J4eito?-*qXxmf)!xY^pxkxHVF$#-6xIEmz1=mZKudTtsC`i(huHYF3+tKq3J5_@ zx0&~Lo9}ZW%gYAWSIHd_YiuM2%uYFpK;S4X;B*HW|B55{vb@2;og86Ph$*t8Dgwg9 zir9ss+lfKp7U5^gDhWzRl1gqDL+<1s9*lHg@>tFLmkgN%gm+FqUCbZXW5A3?X{jPN z48@*gM~5ak&LjIiwtr!;hDjaDPetIX#O#ds-DiqN33@D$zc?g+q_~I@Az=t;$c0lI z_U*f9@O6LNy5>J`+pd`Xj*)rCbg{{WEU0^<_xQ1fiCHEAl`@4>2hZ6GkQrTp=11O$ z@(2^gbRH3+{f#3M(XpkzA0g{bI3pK@=^NlvKC^!Mf_eDBcy1ZFS zNEx;7QX~NZUKqv zKhZvy8&TUy}FovxNYRGlKl-N>B%q6uAp-$Af_ z81x~i&2&#q#sa32$n5Nqs$o$IH|O6{qjsj zF!rlBFNW~%nrzIPJg zglXSNy9?W66|&i3x4>WMYTiS4j@!Ce} zJ~Pq&k72y5 z$GXSQPT$WxM>aXnP;rYjEX8nPig$-dX@YO1QfQ0&gh@uZJ;3j!tKKlSmtMGblfzO` zUH+1muUyS2b$4(eh-y2Tr)VSoL?@(%%Tm-E8g)7V-W@O~&@=67e_;zIzxNj~q)^TB z2SVG@OPlP?pkKi1=0Jf{XB**S@mwo7rtZnoD$x8VJZ%WRNQH^Twf(?`sA_DD31Uhe zqw8}4Z|wwzhw%*2klf)g_Ze`Gkf^~2usTcTLKq?s&zA}JMSJ&1r4sa00tiJm^bsAT z1`0Gd6&jQiC%zT!J=wE_N{0M5><>oSy|%GtVY9Oii0(HZzwci|Ppo=_Rgq&j(&<1qQC~Sf|nQ$?*l#wS~mlI~A zsyH&J{E#zF9%+wruxCcZ^1b9-Fjb6umf2*@%b8>buK=oVpyY`LrQf&Ks~| zQ-%icFOE>e|1E6)wsr24F&(&HPn*3%Gd$p|s^Rv2yiPo$xBBetxsQ)-4;ONJ*xX8v zuf^-1(1yI0|9?4YhRFYiRy zd>4bsH=--qg(AmII=%VkCm}E^CejShoGa}G_)i;9pyn)Y#we~-?!sDI9yX(vF#~Wt z)OQD^t6(%jl}L{lq3uhJa>6adP~~&nn=}Us%!04?9`^fJKfNU#yk6YrIcN3vnd3uV zZLY@wg_4vY3m3ZF_?7MEzR3HNRfd1Q#pUp6B zguNJU7a?Bg(I&ibAp4LT-Xd|Tg(=X*Hii=mF{R_cqVFfyg}8!hE`39}1fK{4*kKI! z2t@c_+DiNW|G$aL`|T@1QA_Xp&NZ{anEQ%$`NteGnR7}$wssjimq|J->P_vBi4=p& z_YVt~5@p?Ny@6}(#@zN+x&GZ!#SG$fp#Z(tmsdrw%N`TtgqiBLLoP{KSuyBwt~k(y z6$2ko-HCdT!^Q%T-!mo@CjJMEJY>VZr2V{Sm~b*3bEXlG(*5Jv62|Gp z^ewEoE0YCf4{6P!4nI9dT4Vu;l*NU1N?VQo8!>Lbf0PvCOoOCef4Td8xXb$v@a zy88HSQ^qphr(Z(fZlN~ny+3(O$;}tS9BxesV-tVSuUJ1OATJCqp`gzg`otqoNF7E> zyE7uys)B~zH8-~^_B2x|Huy0t@R9$Ww$os^Hxm@O0_$f>f9U!D4;kj!Dt=B3JqIf*T!TL^)Z>-;Hy5zY-$T zkg+388ovnz3khU8%fo=DVHQr+jnFzl!L+8kUS&8+Y!VWy&AxZlVi3VBH01Q8LOo+(oPb@cv1O~?i^%V@y*cb7nnYAi3@Yqkjb^e z>_bD2y`^K1DhC5xZ3~cipJxu>`ZMTCLaK+MHV!GivaSc^!PMkt=)MOjj6~8RyZA)d zwBF*1pwUru{TIwXISlNh@k>*owhpg3w8ylvf(uFp%sNwU;DfndtHtW>r;R<8{P_XbI-fMJ>=q-;Bp)SA`;%oPg}Ps>__m~ zhAYzoF^_B_M=R!ATg1Colv?4rIF5PfoE; zot&)Zg*YX|N?%MLZjRmIfzllqC56KF4<*7?c#QW?T3_&s<0jSpJ@-FX%V`wgo|O7y z??=U9)U50neLh1z1<_Vda;e@LQ~pvR2w}QU55^e(4^bHS0LwAkmi}x_>@6w7uJcuzq~c88M0*jK3ICl5f_HvBLpNP|&_{xH@W&A$;S(Qk&XvRNIhG zX{j8GUN{+;*OK9AHS6Uwdf00uTHdP{X_CTbVi;lG?^hqo!^1?B z-A`1?p2ZQi`lKMIN!zI8?_;@@7r*!5ARHDJ7$Wl=%g|!(3`$~8167KNl)uaFW%!W1 zN2CUR#5sNPp-nHhs(cKvGcwN^1%+gr12NcMAQ>;Jwd_C6a6>Acl1)NXPpc6D4~oxG zeD0DIz@K1hPRP|$ba7+ck7+Hv21@{-fYnsea}H{ekMA_^f8T3!g8JE!RiEf>=Nx%t z*6P0edB7YOz{d<{zB&N*V)ak2;*?v6{*{fhiuXicti;i*?wmVmWa;0V=SJt8tjPy% z*~_Pz;WavU9`NUN6>5v2-K`YrJEIzh?T~wuOlfm2DEfoOV)31A0aEiC-bNeTH1j^u z>X0ouZ7Z0-b`EmYGYxbs;l{Wcq~9d!Wnrc@({a}|tMU5Hrn+}V=1lka?7l2?bpeM^ zd)pT8LVmI62s}G*Z^krps(I2Gt!>@pgS+P%IgD%GqlGSt zb@~Xbkai59vkW^?+MgqQz0~^g-f?g~m?vte-Z`BvXW7ZWT9VA^^5ha6l>r{h7E5d% zcHVrikr;a4&a_vOpw81c5HyI93Tgr12j5JB$Omi%xdCC>&IY4>C<^FrW0Kqs3QsoU zkUJfu5xFhHOADLDVX(C&+ChS$BXC4CvRyv|1c^KvjA|sxEh*%6^h6*?rjJG8?VvHP zipl9<_R&cYc=`5%e9$>Q3FEepHT+2T<&7!VXCDX2j2u}t!}6z#Wr%Lz&m0-0G3AyM zMLngyMYM+KOZhzUYfny=AyCpzTOgmI#d?{kAoMT9^B`<68+?}xghxf;SRa!_f&a0% z_o$FOJx!X3wuPAVy{0|kf^JX7wDD=c5phjTs0;yQ9%VCdvg@>z3(D9Nia=Z3W?ZXf zKfQCy+kuy!!4YxplqMZ_ftK7uf~>!tTT(YDXL~+7u_K9Y%*@&{k0RAqG}#x$r7fYU za9_1f7k7AJl)P8orG72uJiSU_?*0Y966CYj5R~lwD5<2;R!r}&ftXu?l~)BV)HvZ zUJb~T)`iUhaVNjvAZrhSKy$c5ayeX)WyhLMUPY(c3jt(lX>kes>1XnDo+I|4+9L;{ z@v1N_cd{cuI$K9~@NDQIwf;|vweNSVdi$%Q_33ha(B(KN=J#L!Vc)kU-DuLg72zz5 z3m}w$QGk?quIsw{eZ0yA7!2jrBnYW~G^u$)Er4J3z{Ypn4*k{@)OXR1VhAL^`>-BP z?`!5BN1|xI&JDqmd0xe5GZ8oO@7SUJxN?xI3XG>1=nG?U7Kw zHx385ht9v4cI(X%$0*|jah)|s?)SFOtV+_*2$v&)5{XU=a743~A2ARgeT$d##z1r>{>*3U;g=z3!#I`!{Z4O2#TPAXRw+4Qt|`}6s`j)oQ|)U}TfPT4Y- zlzX74?AzGd`IHJ|vF($eWZ{-_CupX{@OloBI^TMahBGG&vC5d)yHT#{hkJ(b+Ri`473KNT9}qm_-m1U3_^s0t z{Hc}E1_VOgAmt{Un-j;<3P*0UL8-_vK5V+@j%@cg8fm2Nf#d8R`rM-*ahEs86FQ0y zjNRF}$_yuxzE=V>7x2OVZ#$mim%h3Xfwb+$N+#<3JQmL~ za0CNMUw_6HNNZ7H*Ao*7g-Wy?(SmHMS} z%7TX0S6WB8#&K^&xbb~RhSMvKNkiauZkSUxd?gg3(9YSw_!eZiDs#e(HeU~fMPbU4 zg*xC1Tx{%l;)wd@&{8I3l*TZLDU9s>1TIuH+P}=+yo2DY>|ty=8ygA!5;m= z%5@~|pOPeoB~7XfZ41u=h~3JS2vC?Kff&ff$ZE4f&QT~YCJSahz9&7OGp#Yq9C>Ow zeP^i$1(@Ar9(oFR`6s83N0SiXh}d{BS;nOK*Ntk-l_G`)tS+>NiD&Dg zh+vFyZb~j-_2w1+ej)EWuR^0zEM`k=QPlzLl-sqs&blqMW6bG$!)(cAO^bt(7@T)DFo!(~~aYee_XWncWdYh4O&iTcMjHOeUARuD!_qkneqs5rj9GB3z z4*LdR&=QZK`+ggTcdVE#f;`FbLXP}laCYN>8oll4Vjek^LnJPD@H#yVwxP0jqnwTvWRdqw#1Q+Teb%_UdCk%qv=gzG*6?-&|Bl64Iuc;;V88`Z7&MG6k~=w5U^ zpwV87njY|#wuQt~Xv%KK*m)spWl{Itua^5;3HP7#6x92$yDB82ImUbWe$;{j`*DdOf- zY|yo#CtT00(6Yi<5c4k{=tR>_A)9Il@$^!0GVxA~1O9HH1I%HOAjomY0ki1dU*HBt znjYJD6~`Xe{zU5zO_4@x%TcmEH?AI^w01}`y@yKn3>D+OMcZTPhQLwE@j;y3Y-)sV z0gW5HN4hf-jA*BaUi46&hN*QGXOGPbkW7#GLy#B-AoaGNRS-B zbq`s8u5N|MBrcSBuc(~@fzQ5r5{=-(q1&PP&CJ+dac{m&BDWr2YurTWar`CbIB>KG zWIjTVbn^Q+;zA1--#%}y4Bs0AmoU#RtgGnq;MAt zxKDv$3R~8W3^t5hDg{;1<+*Wogz=U*_&XiW3zi?+VX+h=hn0W`}R^~Gp=iVB~!Yz=y-)~+bvbY%0p(lu!G z;NDC!8XXoR((OzmC7&fKsMI*hK94Xd(%ERHJo3-&=*k(HQq2R=Gi)yA;Ic#XC4w92 zN>Ncqc;x!`su%-8Xdm?~>Y2>4ZND8Dxn9|CZy3{sOOE6%M22ac3Uk&jEe1KBk?G<* zz4VWNk=~QWZ5I!z9&yPFmHKu^7NnK@-qm(+JQ@c?_JQ~^%` z*kgS@49^D|t07SsMLF?<^IgVp%liJ?9j1i*is z8&O|GF>VIG%TeE#UK#^g)4UaeXhjaQaM6q{`;|kyEn|>_dDz)8RJf65Pf^^dsfS?O6^+L8z3}Diy7v^jDg`jCA!$j3iv;dKD7pF12K)w#BMIpG-2#8s zYiZ?L%7P9MLVADko>Y>I$xaE_`x%tLE52rGa_F)wddL{_jv&4Q98^=#Ga(LBwc?+{ z{JVql`uM4R^6rym#KHD@#M!QMl~C%idX!-0eT7eW0UT0nbJx)&xHJl(vZ+ zABzf26dV`R4*;>Cc_lu(1#!Sk84)J2gf`sWvh$%z&C6J<=tc;(@= zPf5k;rhM4RBD(QCIocKy`Ruud>@UGAdJr&^T{D*USA* zLqeB!2{@d|H^!btBPHb~pywgOdF!?lKu|8%zXE1$SuC#XLs5=hw%iTJrn@a?s|zAh zAp2hDgwien|kVTKUl7#|CoXs2weiuC)HKoH{ zJp7|SXIv5Uk^$FL>N59JGkhpM>WTF_wA!%zIela!wV0rP}89_*1=IB9O+8Xnz-Re=OIEu|`Bq0Ir{ab$6>8sAU_XotERq6NRQ@{SC_!#~U4nhW z4r>!lgGhh5FwOb-rh7mlCuD*4MM}vdn&E?@`#@m)p~PNkaPaT~LD#^6rj-kRLHNX^ z_M2^vkD#l%p&UZVgtz^aVakfGRx(xkdRb1e`7X zN}U{4w+`ze8KWAZ`>OMKLwaYyRK80TNo5VA%oBJ~ z%>gU3AQOF}qHKCituR1P>KoLe8_N7hOTtoM4jg>y(_N__N5mScA^K3IiiN7z1b+GfiQfH32?f7E+hodSOc~jOo=Y#6eP{uyfmH8D29kIC+v4OcqVm zcz!7C``(3sCqX)(J{?*l>0xF?3UFH=h!4f2(j4MAX4bZmusysb9#0OT8Yb$4QdFl3 zj40~5>zEIb8_*KvE;WMx^8U3cd5QNmYO86##e(m?&5z{Z*~P)FWbAkE^}p-v?7HOr z-5yrrBfis9z<&vIx3c|CO-mOuQ&yZ)K;T_Z2h;{d(TJpR0*prsuyAz^)p&wvPNS*l zX7D-N9xq>`%dZq8NIFoDdt-VWb&La!5+fX$9AK^%MsU5~c!E=vxS$vUyfa`5>Mo9p zbbx?)3LHxD>lk~1tqC*rIc{mgOmhQQ_3t3`D#WN`d%YP@W#oEQ$pyH&rrHl@NuCo< zZV^|fEnou%e^;fyu*(H{N z;Sh)YnfN8>p<_o0?y_{(CyHV!LMl-8XdBsDLI&Px7I)-!#9dHENPLH}4b)~ICqm)8 zA1|QgD-BwjHK1>-80Eh3N0n0<$pfxr^rmvn&!UM2HgW6mATfgikWqV;m(qA4P@s<} zFe(l;0x=$u>g|j#6|Esp(7Uru;h-2Iq~N5U2Gn8;_U~GFjJT_>+It~a%o9{0;?lQ5 zS+THE$0p>tqj`6;Be^irWLF9n3qul8Ponw~E+cdgQ!I{vI4=CDiaUkRqPiQUNAAOG zfoBUBzlBFG4KX33K#SCK^zFB28>Wp{E1;tYAF`*}8WAR@9Hf-WG)D_xWD%gbH3Z#QeL-euywPpgs!P3>jL5fFLCmN= zbseK3u!*kIt_Rb)^k8~+S)S|U37#9OE?HBhC8n=EY*JOSL%nAP69?hr6^aC@=T55T z>uWCQS-^L2=2vO-y4@QW4Av!RET>$I2xU=oYQaAE{YCV`tdCfEFJ;qIK6-M=(2?e# zg{X=f>g-0^Kx`e6e!8aIYiYI}0->24~}j1kq-dPqm`%w4@VbFvrDF-%Zob4*YOe9y5%t zJi!4sD(I5`C6^}j%82Vv99T(|i4S!WGYY{tSXOxU!ptfNsND!r(_jY{?IM-r6MK0Q z0V2OzVSmdgvL#gyI%_gDw-GbmTa{}WPY9w@;Y|DPY*K(<=H>`FC|;Po6zN z(DKI~Cd@R{;)s4y_h)l-CdBY`6T~r+6H&*F2U{+3EKkWrG+6WaLmwo5zO`)Sk!53% z%KE|;QP^*DaS`<<%PDjiUI$r)q-kO_CXCDEMKzW~*JoB1tSe@;DLB#3b@a}YeG&B) z!>W{;WD4^X#QK{7oXlMX5;FQHqI}~w$|9A+LPs!{?;J~j z>v1XDsz=>@#b}c)W-HTGd9!r)udMk#1#cq`Dr0IwayGPOs2J24Y#Zvb!Q-8mN3Ikw zgR}nOqJC$eDSZst85%VT_LX`}5m&+L3rB%Vh)H{DUos=rt!9ea zcsV~OUA_b7|J_KdpZkvB-6F@|!j(D#n0|MsEsnK^U$R%8dz%X&fGrdbRR+%cpwiFJTM-Uk4pzfZStlV? z%-{x2KGpU~&PY85j$e0=&V1a4keR&R%vo)B5BZnrYn*|Fl{z_|6awW3MYwKBsy%!x zE{w;R#^=Ui!RQtm8RYXSZ|OWzX&|70X# z+kKz%*E&E;NC9|=)rY5R^gf?(!ARJuMadt}-&NW zvUc@qkhG^73r*CIT+tbb=!?|;%~FipD~RtsHVK}eXpAzQwcq)eu%#e0z-{(Z;`&f{ znaAm{gTBpiH|q!3G3ZX5#4@NDC@oGB7Lx-dePbu}c4I37A%camh_cv(Zu~Kz`v+WF z;g+VWz@|6~?2=(~DdD2*JrBM7rGM2mj86G%&~iS1$)wD24lNpgUfDNo6UnEwvtvLR z{)9-4PSfNW5jegLZO+Cef10Z>#@xaMH%xJf_cV3*mzg1_pc#$hOmGiZbyMQLL|)@e zqIuNi|F`ovhEcsAch6ltM6 zgP8dH;d!X|@Nn2sS8tE#UR<_Zp(L5283&+?qXb?i9oA~37G1uav>I7ki zq9Gc7ZgOU1VMG~RgvV$auOK!=WK1Ipc}e3CF08ZiWch78QO31Q)ci_0DkyqlpIYk9)p?g5}12hcn&&3WR`68Eo*_(&Gg z0W&BpJhA9-;DTQ7oezFs-VYc`C4rW9feVrZk?FMe#qKA%ija<~T+(*lifJi8E) zE-By-Shf?B^9W{-9I@?6|3SHmI&Oa1H^+gNsTjIC@MfZDvD#{Jv;QrX<&IJw+(*3h z@UONEg(+1kRqh2^*@q9wQNqrOdNz3WIb*E5^B*!EY-OxAw}X?gQN^&B`@S8l-G{=+ zB`nNMxw2chkwDaA5u2z=zOUtswLpY_TDr8WGADlkfbM~QQ8bw7(a95 z#3qoMJT8N_VBVm-2zWg2(vc4GjSBHhmBX@KqG>GoEcEm$?1kcRN5vFgR*E2T`x5YH}tvbC5bQa805$ZJZkzK!bsGJdA%=i zkaMjS7*Vb=wFe*(42~u=i#*=X+tuNya93?kmVI9~h`bKqH__j{bSQRiv#$Zq>%!O+@o>40M$20?ZfcEqO_+wrj!IMd?f zL~{jxn>1u*VY1JIi|=ctgsYP`J8&1#&Iz!v7lnd&`MV0ELu4yOFj*Cv!Au=2(;Y`u zt8XAM1t^E!QvgUJw2e{5wjO;iJmK5@)gj1`d69YB^0hh2Bq1zfwtcI24TJu`J8rgu z94&HZ#DLS}2hJEcxwo`DSv}z5?#9kd=X1gtZ9#AxH#@N@F&NTyyeAm0z}jE7oMR(t z_pZc^mk6p?kNe!bBp}=jFY^z*Iq;$qXVT-c`ugZUnNyhgo(i55&cwfL>N&^`D|{L~ zaP%i*5H?$XyB9K}O87+427ji~c0CDVDHBPz=?0nzKiS0*-XD?U9OLYh7+^ptFd!ER zWPZo-Q7zOfy~hX2RKerh>$jyC1(J9l>k#}+RwB;WUn>P*vGfd4t3byLU~d)SY^|+q zVxp{4G1%fj5X&OOtg(i}+F!3iK(jat)xD%`zHL2DoyQOPl|W~J;+iH6`$TyFodJ+QX;0 z_8IXIDH?i?KNJwb>6^A5`aP{_w{c-W8E(_VPJLw`CPhSq8v}l73KWRF3?oMT$nPV` zFU2&E`892xl|W-tmdh$N2z+G9)MlV@BcTS;G+kZzJg+*#VY@rNet)gvPiQyWEVMpwm=uCtL(tsY%pQ%b^ZG=gb zOxGHo*vKv-XlB}OSBbId^0Mkoq&<>`fg~hIKQ-_v#6rUg?7&E(SK{uj7LgmNyv-np zDI-HLRPY5y(G_i{(JmJd6VUu zZVa;phb~07$-<_?aUSjON^F1E5{6YBmQ(qo+A%BBh;nSzC^#YN1VAs{Zq(yN%}su7;7S1G&rpe`zRQJf*bR; z$5VTUGP6wHj!DB6JF}v(G{LSZ32s&ukL|0@(Q@@|{uzFHUlxjY(Y9eW*1P!ZL2Yx5 z4Y%&bMmo{Ddu8?Mh|*vU36o47+A4Vugqcxa=Ew8(LjPd#5aI>r_~HB*T>Kxv-!<$V zAKkRMa7Qs9F~jc9nPlLkSS5mXl&3>#)h;Oi4@cKE`{P}w<+)%&ujGD8#vx9MztYTF zh>~8k?mLt7poIsogFkk4oTIHj34h1r=Qg=M;_X^B+^-*m(y1g1DiSj4acS@{U{>*g zb_@N}93Ooc5i;aL%)U2?j8PQZ1%)Ed?7@7+JSCsK?k~lF-cb?Ellrne{-=;1{H_N2 zr#1Zcq@FfsJbAyx1$Jq(FS>POjm($aDh)zvtLxhXkik2WU#-sMULa6dn~R;MCA>uX zK5)MYUPPu2>Oe_;fk25(v#Mgqa`+aoeT3#)t3mz_gAk&U=PU!_f~+z$!$>8##)jD?0 zoF**Hh-xLC38k4PGu-*SvZ=zgob_2TBbwr^I8PJv?&2Dwtg_5^rsJ ztWh2k9A;3`>1Nb)ecZz`6Eys>rjiYR#Y`Es%?od##tMnLIp;pH{* z0AF0=Z*w`pQ^eVazZ9I;Z!^HN^7(8?0TldQ$G35;>zOdYo-D70<;PLxpdf|iObLC) zAf6l%3^+pi3)RvVDFn!-z}PxI`ZQrUqPwNZCqMIavyK7f&DY)l?u_?dYVr4@;ZScB zK~FVJ!P-5)P4|^{=5#^Wyh{E)!{Ef;lK)mb5p==5gBa_ZATUXBZv>}Zo@HD`8pA4* z=mb_sn6d#_r653v24*>MsjJuKd|%plhA4Nycipg&=w|#DxmAJ3USmlEGtgC3@M9bz z0(iGD7!btmxaSJu<`=LFnqiqxhU-5}QKW4{*D^E2oGdF~I^~n+OCv;L3fiNCSGgJ> z?t)w)p-@S9ID7t1`%!266_3)>(cpb+a-7@LPSLYjB0+hf5GBPe^SF{p0mF;wcCJqr z7590G*!~3|i8#>0tWfJ3z0 z8%>L15wiED-|>I&+l2*q6>T5ATIE}O>TZ~jDiSAqKu>Waf8`Cv8g{Ama^4?FuE6~V z$K^^nD33o2I<>>C4oLB;KQv*qgz-4vM+s+x!mDiHE#+B(3HTa~BZTG-*IXSx$SS4q+pfVfCF4B3 zzcI|cz4EriIfK8Q@~iftk(X-tSP9*0P95_2@tJm^N1Mh4)!b5NGfKTaJ3+Y)Lt~h1 zwY2LqBSuRWQ)|ej4-$`M;-%rN%1m@)6+Z^L(GZS%yNweF(#)skI`$9*U4e8F@e1*I zM50nWhR}f(Jk=j;)bYRsm9=-F^9W*e}fNQ$!e}c zxQn;Rl@$Id*RIaYH7ggAy@RpDIg9_u-GZ;SKK4NVCLuh}I+%1?KDKa&%$}|@;0eA`OV+W5ek_5Pi%{lf{ zhft;W(!ie#oH*eG5+Y5Z^krTwA!WVCS%F00GB{};#A`m04mYx#cy^ud0E|gC| zL%jJ`Ry`i)x?39!TE6)}Aa3w?``y-PEHM%^gZD^oMOfd9sTK z>L?dQ#J@AHDO6Y?}I zj%s`oNH*f}AMII5zomqncfna?fu2?C9k@B^hMeE96+v5&*xhoSAv2|8Um6=DvvsB1EjQc)i2g#ZVcG1ivGJL7S z+$AH=dCYb-1F|LTDh2g?)P4OX9eDd9U`XnZ^ri0+Vh1`!G+lO7bqWQFiPGG*zFiNi zxJaX~2VifN!gCFgh#G-vcG+Tyh?O0msPRc6DhVprG=N|cwDpfnK^c6)8nC2f-U%ZR zz8ks5MTQVBlW zxwXW~p4 zDaaL!qYn?at9O(PDl7MH15fp|;LZK6V9HfbAHjSKrA%QmjLS>a7KVDDp237YxO*`A z%N4sL-9uzuEpG}v>5LduL(yyH+16$=Ra6k^ot}yA!k~h5r5t% zylMr4%uqZji(^#Xy?!ltv6&vV8xoAeJo_RiDCfYBoJnsXgqmpK?VpFJ9F~D7Wk-Yq z*eCL3xxoHfu!&|7c>9AFg*l8qnMhj$ngStV=a!c^4JhPxDAHxVe*uap%cbw(V~d7`JB)ko6>U<-)LAS5EZQUs(wZp9R8fNMbmo>~3e!F~Wre z;#$0tqZ*jFC+v|%Rn|}|uiw% zHuDb-&3Tn-GIBw>5d?;4kle~1aT(e#`sZ*LE&NU zc2uE7>ww#|hcQbQ8$}3>3cI1d8{tA6g&1|{v15$!ZY#ow*A4#nskY(Ziah};Ee6bM zMi8VL15{s*9e^fSb*ZZDS@`WdNIQF8E^c2JHTPZJj*jMTrbt2(o{5?|i%YZFU`Ql| z*uWD5W;dgbsBODOt48{6V-+`Hu@P27U6wPXOj6$lwIVz1j!_W#8^C7lU2X-?+J#L) zcPyei<7L7cap?~fllhP{{)34D5eIaqOebE`2rlLC&CL7#0)I#SE~FPbi9s_%-`|jZ zJ$~0U3Y6aa8Lz4sewo1}{|15&%|zsgoig_@h6W%2J}!laJSsx-fe@O62PdxIJ4Z?3m(Zu&0cQFN$a0{Qy`w{d}|3(b$fU9 zn8-zQ!lg0VfL0~KIPP`=B^x4Y;jqn6Me&6K-Y0Qk0+8IXkTKGG$IYUp z8wA8eCc_`}2}8{lf|UP^d5_AA23r9miT&yOj;0q!Qr}eUi(xkN&D<`|+*>?$!G<0J zDyier+2%y=WCmHysqwk2O=LP`^ooIfv(i{75*uZ$>%d%)j0$n~z8qT+6db>S99B@Tw(r zc425{i-{fx10+Krrp9rM*cTRD7v0+9_85VfzHqAJb>}Oo_W`%_7DL@l1F~1s3-Fes zz~mGkIb4}0T+#IET%(A`yypcUd*Ju*`)9qcX>Yqfk={3)k5{XS)hM&Fgt{NJ<7B!p0}pdOD$z(h@K^!NA=xPB#E>?vW%!Fs37poFPfW0^^0cuU7Ib8%KH{y%szr2H0~e119tQ*HPah1+ z-8hwMMibSE)g*r;9sZDlAy-O_a~3IyK}r;7r+a~gE;b+47t;aaMHEZP#jsw_AsinH zbbXpwE`_Dp1@vhrhE=B$+bAP8RYqO=2c4&1Kw&F`n@WtFtSEo*yJ-bf)ktn4m!)=_ zaCt7%Be0u~ccssfJSBAGUzv3Qww{nNM@7?nqE&ex4Z{nFE(Br$ zDValtGKnvAE|g3)c6D^!s5X4n^O4EUFj+`GGhw+Df4hUvg9y)8zHh4eyL|2y_Qk{f z<>FG$`}sb%Cgq14N(WpBpL#lPE1k*b3!yX|#vG++nFY8Sz`NJhx*MJc|rKMNzSd2tF0P6t`t}*2n$f($Qm*8l@apF)6o88*@x>y5WL@*m5d%J^qWeX$XDdSMQEj zk=m$zL>lM{fmk)m+w16I(NqT_cQGTjUl7PsM?G0LBTpt`703vt5r-y`CbF z*hk=+qu*4mlz+U3%Y<1zP#rvh{c_u1blDKg2i@tZPY%a+&%CjcT=Za|9o8cp(cB(bOxL@y_Z`|KZ`{ec)lnFE_BocdnPrnQ zJX|y`;H(o18TJ!zm3j6Hio+JBtA^>m!bbS_n=0|$CB;u<$6WSJlTdc5y~ddF#6E@5 z*|p9)(kY9pQ;c5!bI&Xo&a;DL{R=quoaAqPSKVg~=c2ee8!sx{;vXA_68Oq$dQ|8( zb4>($D4VQEV<(_)g?_1>a5TAM54h@RlQ2_hcEP)nc=hIXN$J)Y3Qg}=!1sl#+Li|c z7Yn{Hr1W=+3ZHUQET9cK{qHxg@S_m=gFV@>>N4@&5PfGgs4#Ip;!@0RT#VK>uhoXK z5uMLf>)1(zM_T=-eZtHi@s$Sc0yHRm|4Bh@Rludu=6oWQBB4yQ8{K=-*|gi0fU#&H z4uE=;;7{W_#WoI3+9w5fH$HA!h<4(2b zyVb%%F9{tcSmONS%+SUy(9*ERSkuhs`8r5c(1vTuZxiM`s6;g#ki}WJLyW)0eVlg6 zP&DJgTV|V)qKLB)&wM3h2sNG|TVz`0%pW`{xDKjT^gNMTi?osZCn9L=Z8v%1A04y; z!gt4iCJUgp-WlRN(ho;lSnm8k8W@t4E9KvLq`JlNil2UYROcch<5SvsqKk$6)M44pI&uiI9SYd&j(03j_tl8m-vl)ei}S;8hh! zad!U{KB?E#b-q5CjoWiULb~8yA#69TBwJS7$?TxC}9m~Y#Hu>kYS1uKpMrUq6?z9Z$R=F)KmOfu+R$jb)B^D;baF1h$No;?6A9BpRGGx@yYQ| zkuQ$tSDMz6g(eVf6N<2TgB2mh1=J=V0_sYa{eHw1j71f=U+wD$BH8cWFsYYUE}~`k z$gII5bOqgaSmj;x4fJrmCCe9!A>4PCE$R;0(d-6m=*$;`vq?63o>9}km)>=q!*c$9Fq&m%2;**Ulu$GY6X#&r5B$Yp8|Bm6T@kyX zuc?@eJ9)H%2pRkSU?!2o!OAUJqdeT~dk6yyh+L}&qeOjQL^MK=`e`GBgV3>bOo2kF zFvRAWE9w-JL#&3n3PCfS1mUQ`dHJ8Q#E8 z;%ZsJK2?jJ!wh=S*yfl&ggS8b{fSPsKSa{l=&*LMtQ@x_>8k@jX>hIuFPNp%rB+F8 z!cjY@40=Rg>x4aM7)9$cw|`mVj;gPc!`Z%$@&1MNu@YY>&huBK%)1KHu?t(L9h7mw zk?kI)%+S4;sq?#88U1zcV{h|>3|lTb_rD;=%9*7*XJWp6#WH01)D6-zFDbEEAJA;= z(YKB7EGshZ+oRMse0aux&6s3kZ)SGXx;5^bHSyqmPCWEuNh9}SpX_`&hOs*}ua=z_z)JwIcQfi2C$vp(Z|W=fGC^XK9|4tGpdC@P20@ULpo483rYPs*M#7oTon2r% z>Y=RPHbi$Z$$ZnrT-Eu0XcU&lIY!SwwheaJnK#nr%hSB$o2I(d(nO{%gs|M6tQ-@S zHiemq8*8033PI1X6sHiQl)FU%_Sa@^%&~_&N6NpTjV-Dv1jA_>JW(;{*5GyeYN3bINhMi zj8&O-*@lVNbDBvd#;DAah93dgzlTT=SB3VpvA41ebRJ$qp@SsR+?i3Sch3oWtd9*C z{EmIm)}PQvu-=ea*qT~wm#Y6UdHS6pJAQ}G73>{6(r&PlrTB)_s9yyWCoBe~k%8?0 z*B!m)RqQ_+o?0*gyH5h z$jB}R%t}>=u_7~uv_OXeD`YJNSXmR^TL-D}hA_p5nH7TYO^YzfDMZko3xf1Ejd;Kp zgK8$l;H4UaNOdp-*dA{_=F5epSK)XB07F!Vv7#*o(dQI1%#2*Io-f<=`eHjoXbuRX z6IkKsYs1!f@LXZ#aS7e~N5^C1BWN3=fHU{84l}I-3^s7ZWHvkC>3(zF`($mZbM;bQ zDNX$)nFKlg^o5d^_AuWrvMlDQeJmk1_0VvjD-0qAlm-EqLMa`(`hJ}$^yqiBKdV_x ziOiMLakxES9_QBl{x(-`b^Mx_Fu_1xaN9LxPI&Alvqgj`$L->^N)pE5mFr?t5N}a( zy4<1A6!ECRhfnq-_B(yOf;`|mNwv(1qv1m2zG#%^DQUJ`Sw=`fD}V8U$SH=*M0Som z?`o<~HfZ5>T0N(GkSdBP3FUF?2pl#VXG_~UB$UE9s+I>)b|?=wy49B(Ne@DC2?$$_ zvy}K^>->m`IN(wS=}5H9&LkuYK=X?nh=H+@aGw*d7==LN2=Ww&cU8U&ZgeveQv=3K zj)JYR1r&n?d+Aa#$?^2Qu>53;$Z@M;uR!<*)G=wn4}q#KZGApZE(EqafgRH{=*JX3 zwg+Q^+RH~E@VqB5rg@A>i@WUg7EG0nGBo`vo5XpyI)_i4Wb&Rp=xU5InPe|<`Anse z*(VUrd@X-pVZW#L{z>`c0^e^!iK~Q6gY^}ueY079q%@YFr@>Hp@+wfcR4M|=k)mNj zs@a)i4cjKlrC2W9_92Y4Fo+gnxE?NOu-6;R**_I z6f_ult~Tjjaga`Z$+j?VJu^V-hSY{&x^1F1pCcA?=5|pZV90OmJM!+xq^m+|736Hc0zC}@Ix**_2Q(BU%-VSz zl)mW{e)xM-h2^~Ev^@8k3j)KzPA)_;A0aYBi{{nWvTl2<5}DyDVc?sw*PHS1})(dMUglUSZzEH>LcQu_CR(qlLH z+UaP`2#B?1_svKAsRSqg>r;Wj(A zLzm#^>B;VLB%AgSz3d(i1BnPgFox(eYy)=JU?qn1R@{hDWoM0!Cv$MdK=-Np17cyz z55-*I7h?aqI}Ad0_B2^Wki@F>D1S11PmJx+0nPb^Ub&)I zGm%i?6{-Vhx_Gh!VI;&!um>Z7J95e@SVCvdxqQq40K!Q5<`?5l(;tlrq5OXYzF))e z|9E@8ihG6K)pVZKj?=7fu<7h#oyc+Hj7a4?dnOxY5o*VECN#$B2KtYGKlU0|68kz} znB#-jP7lJ1BB&$>6eAJbiKjY=%>gofCHufH^h?X8>s8EIFQj$O}tmZR^(QOV3 zCR9<5hm{?abnW6SML4M9C7?$0=%d zf=Eew=8%3aj^ov#5pbt(k8Lk3@|Pan_|jA^ zL`H>Um2px@5ZcHW_QMI{raG&1$|58Urui(72!ICHhZhG5VcolN;6W$cKHmAyF3LW| zAnyOlRQci*`&>~uO=Sv>FfJ)R)YyG$T@^9DuqpK_Ey&9KuRhgG0OLLt=qRb+{FDzK zs-|XHsxC`*!REA2-4AxU5dV;m(2*yrcwX~M zjBdyIylO{`{!b0u(1)sn2jUq@l>?6DZAa54Z&I(Lww_D8J(b(+XGMix zggM>~$@VABgrQ zlp?N3jArMm9TEH9oyiVvDt9MZb=?Gah!=k+wu2Pjluh4RN<(GXL#;7bHrqq2 z-UcGWyfWf;5;{x<%kVzL$vGMah_{NfzOi5m4wfW{%GuxLZ-iRp7K);vm5vf4=h72;HkE$K3R6%sO}gSO8q zLk?#k$`3rMoad~4aevqd$qIK|TkS?N{bLgn;COkG=jFkJg_wGkH4wOk)c?wA0gCpu zmpwH5TbSb!&ZUR>-9|&0(PV}hQT~N=W(^-OFBS`VDGgO&2q$qzk{Z?$;7&Mc-gtod z;!o((gZQIpBu+o7NnpWK_XUN8u7BMs{MQlY?m2&EG#7tL=bQUI!IX{ldb{p9x}VqY z-4Fbqk$<{vl;pdEN9omb$2>RoMcUM5M^IumBa$j+1VEOP_@+hx-Hc$Y ztQP}pDhJXo258<1aW*ePxVnDdi(iRn;$fE7*$T&E5EHZP;k#cCdu}HN?r?T0Lsbyi z457vuq4Pj+#)y4kYSXzFgOVDZHbY`Cd@Y{($RZ#&RAvM~C5wsgblpI7 zfW7yOnxBNZ0=!kHI>_P7tam4|E1G* zajBo903VqCM7rI5dOQyrw`Z|>{dOW;0$^YWKvFjubTh8D43#6?DVf|eJK0Ir|DgJ& zAUfvZa{5*1hWNJT7)PdF_T32?k(pKK%EZWG#zsJ$Eq$A^5$@|2ZY)viXgFb{2O0 z*_ED#&#v_0m2$0ToaUfbX82y20?2`Ncp^{x6Tl&xo(U<6wQPwV*G>Bof{}9}$eZY< zLlCH#ptB~bRfuztMTnbaKLQkaE4I5zTrx{DPOnmD$F*ag z`8`(z2Up|9Jzis`iZXnO_&9M}@hIaFddh>DIr?WF3}1VV4Oa2iJkj;5OEdVqS0X<0?Ad>?c-~3FkK(v#Ik@&DT`iJ{k8yf#agDz+ z<4LF3sp~IOS!V2BKj$4wUercTE%<2XcT)B<%a_D7L%F^e>Lz5#o#bYxpnsU*PL5_S zVgS5YRtp+~bZxUOxMNe9NDg+e`=H10KpKAm5!ZAi3XnosyocsHV{YoKkVN*KPz59t zJ5K5DF`)>OoVG@r?GDGJA8~`>qEAH5Il?ofbQD%Ml(VgP;cJJ+p)p;3E0-SFwZuMw zV`7M;t9Y*2sjeJgZU4CPK*@sCr;5z!m2g@G0l2V(1cm6Rjh@aj z;Z{_Wyh6`8W}gY(`Gu^lA<0=UbIDp=!I@;K@MvuliYK2hQ$~HmA6_tHQ-iL~zs@n< znCm?eF@u|99i+qsw#a&Uk=1sO7VKysP?E=$fwbq+jLfWhl^(#-oLx-5xb#f!=7_n&m)!c~m5>t48G7yP5S&)0 zO;yN5KB{E`S+9lBl`l?#>=|nV>_K*ZlxH3_2vwK|(o9GgMJvgwv7Vibs)21n1b1Q0 zbt%9#Ccm%;gUuq?qCgD{L7|FctbjQn@|r&?+|z~SW=bAC>M@sSsZNUKoDFHC`U;w!^A&MEa9ZN-A&0VB2G_(_FdRjlBv zB(zI3B%eYO69PVz=1Bw(U6JtlHS9mr@t;q}^QH9tJr+`rC}*e)bOBk^Q(2vQyblEn zWP74c365Fgfrg4>y70xfhet=f>+e#7)=7ZUj(JH{nt*Qsl!!}Kqt~X#zhF;1_eMnm zvZ39c_@<&V^cawCEhC2VKzkHcCD*YC2!*=qT!TceJyi6gSCdW5WKQJ-H_yi%879MB z^EE*L#_oN{2(d_Ww|V5RC;@%9tyA1Z(-m(;6BKr-EXn=u*K$%g4p^h8DjOx;Ymy?o zx*Z&@p0t~1-03iaqKyqnodDWqcrZdLDZH?PDZlcD9BGlg3O+``q~@)Pzwc0yT=5$-UV_m+bIo9{InTaezY8kZ{RpdtMtK=3){^r z9!_MsWWkd*Gv%rDaWeMqwHLh~GcxeTVS0E6d4YwA&Q%uk8W$<*H+O2mubZqu@FdyX zPX!A{MRB}DRqBrRQL|kdSN*14#0(d;jR$t7a%YYtaxc$e8E>OaZI_PklND#z9;@D(0p3DAK3zik z>8Nz%`L0W-_j7je@)|m&L3E{Je&r908K0Zb^#ePrrPkxn8I(HZKx5yK!)VinJn7e7 z@1-o^1m+ik?sh)n)FL)^ObbAk4L3YN!4cy{pd~53p)XdnHbr?848+O(6PZ1!29M_H zPBEsFd?J=FkdlTdRQfrKfqfy`5tu<-smtE)59c_Oha>AgOCZIq?|SjDJXbfuD*UZ? zJHL)1t;6g6d{sTPPIK(Si-!}C5s3OmFemhnu6!dI%oJ1toI40MZnhe@dGmz?{QJO) zjlo0kEU8%Z!2A!rU!sWUHJNB+Am>qvuj`8?&*y$eURe5i=3%ClI~pPMsLB;6yDb@q zRP*BK6VEk)4lyf(nFuHQ2OQF*HSf8B@X|fl6F1k!)_` zoRp=K^vfxcUw-C%t1xo=WSRzIsB8n?#Pb91*vI8A@U9aWb=c(8*9lHZs3Unf4J1dy z_w<&P9u6F097X@r*4TBaVd){)m0;+N>W1XCA^L)Aymx#EN*@A_MKfOpTzJ6q0;Sd@ z;qj=WliR+?G4f}ThbKIP*tCpMgIg5!((-0ZrXamiksl|@Jw@o8a1+2%WznM)q9|1e5hV^3gWz)#!a4*u3HebJ)4VSPS6Al#s zp7;SH?hIVTL&uiy*9t}XXSSFiH$rEw!QT*$dx`)cU3$TUP4n8Ur7(;Lutk}wL%?-~KO-v&$E{H)z@Z<9k z2QsahdL!rfQMv+x-+FzGaLnz}BEj>97Fk@~%aXiHPnKVO$4DfPU5naK85NfoqM$>s zTxwU@9+XA^oKR8vZ!OR!$i~I|&L4w_uw9*&I(QurPjtg$mFBL69Yda=Fn4latosM}L+siHSlKv3u?|DG(Abg`&Pibvk z@{MXWld$hc9KG8G$vjj_My>W;wY&&aowUj+*3RUhfJrQ7IzqgO5t0dR)6s4$5)16Db;eQJB{(^Oa4NstJ?t zvR0_zEtrzEo}U=FAH2fGGM_QduV&6wF9pO{yNSnU_EsHc`f@^}vKaN@%b8`-Go}-d ziqbq+p*z!IM1kPqnBh>5OyW_8i!r?%I8cpdFfI=P6*cU~c*4m9eT=jk4;_UMn>F&l zDiqd(Q|r7`B0H?h4oQR6!NCqV1HjFP(NeET0{G?NlaP1Q)P@-7W*&pnKYR(NzU@Kn z(Gbui52oxluG7mFt7P@j4t5*HUTq-ll24#xX8N#e zYVwY(8a5ct6~kk_zZX*=ZjFJtFJpL}jh7K2h)W6aA~mAy zP=)aJFT{wC4WLK~@hZBCJ+B*i(sgVV-}T9i*0dXS&-$BBNAH8^{vDjPkMJ z8}Wxj5mnj_-5KZwbu*&&%`C>aKz_D8_Cn{dMk<62^8aGzL2h+R#p)p_MwS#2{>(c+ z^=@mlC>fl#t3JJVY1$hu7uv_&_a|`f1%$zdgqLGBkQ}%ujoF$$0**Jr77goBp*8=Z znLjFcLy=F05S`Uzr(>g!9%=C|^1VKz2PYkm`7Dr2hIbO^e3nMCfc&pu1+~mM%A)(B ziRKLNDE3EwL&a?)o3Ns#)O1m6vmLdY3Zk@;HEH5hoOB=?D*rh&BT30D)4yA3xQgbn zio_tp``d+3aeC}n>mk@5?rfB+wn%D2ac@ob$(^jo0q{N;Iz1u=6MptDtLPZXzU zJ6oKY+6F#;nB&yG!f}b1PSH3?-XdQsK;yDUa)=WvTL4Ge3>GDJwGF;m`X_ar*b;cND=sjFBnI7Y0@KlG;=9BIc?tjp=TZkee zl^B8kYkZR}oWl%PrVoST^eNY|85~Qelo)`OgJ78?+uXiDEWV0u$piF9*ddXok`O6yI4);_75m=&{M;m*FT%^G14n0}EiqkZ+eRJ5^>an7BgaB3WD0GN#d1 zeoLRu5BchcWp>=zKzEE!EQiL6wn{HxsEs0;$y!zV{iPdHfzkO%}W$7U=9WP6CFk-xncBJfQK zAxJDmC~Tur5wc=DH+6m9rLg7ZGi`q5#+jz7s)_3a#G&Ek8b7?*kZAgf5f?yP!*Zto z-sxIe2!=tCFcyTBe{O27_}-7qx*Q`4L{{Z zh!DVrMv0@c3C9jdJjZK0briIcf|5mOVJu8VMM@fl7>V>IhWKo9^pE4Alp(c z>jm!2PVE-ZaO{~(RP?AKf>%k4nULy9ySBNiChZq?u1iXMR-;h-I`SWc;h71zOSx&w zmdKY|VRGaY*3+Azt;^iy^DWy^cn^Z6aImj_&Pb?5o@w~6Zk?{HVn=MYiP_(#b9)Ef zp+!obRw)z>r()ifFsk>GVEWgc^tp@^w5pdwb}PHrZpwZcU6FNNxyV+I#{C+F`}yIq zOX$eFCuL^CylzSO_~VJl(8Fq4bB;e>OELEWV8>le;E$#|gd&33r|GCp+TEMkOmhO! z?3;LXV&BYxW>-R}Q`}yvxl(ONJvx5q?0HROEHn8&pzil(%dw}}A4>$8xU3E!|KN(G z29z6E$#A*$lDivps;nPl2wIRo#J5HE4+0%5dS0zh!9re7thM;RG`5mD1IJS|$hm)J zHuju;nj$HDg2Y|5_6rdWbLPfEy=@^v`;XXbnV%>vwNlCU4bX59)}8$$+GG=R;g!jj z!r`$Y6mp}FM)b!i-%p7q4QIlNEcs&OZAYZ-6Gc>3DJmcrjyH9l(rHvTu% znU^ZlhUIfspExc!A?;2_Z)|0|ad;wIjf=FTqagtM| zC`>7-igu5;lBkW&oY|hdp zl!<=C`(zbEj+!~e>e)}~%Kza3n9dEl(7Y{sH zi0M1CmXfx^D8Fe#Am=8IdN_3I5b`GlknPcov1BQSOjn4|?jHhp@F$E%0f{6q1(=!) z;y5^lc)_GAMnI3L6k@zYjKL};gm{t=!muyP21xMY?leYdhZTak=nhvpH$pQ8ud4h& zK^_xh2Bsj;5V67tObTH*B7-8}bh;euK=ULi=mHC|uoRR*WmR-kZtmxqfa*`dA3jK! z&DM{@D|G^&{GB$;Zie??0G}7#C8YeBD!{|VHinr=0Kl|?f{iC%?cH`XalZKKr5PGX zdY=}WkstMp;S9(aWP+{ne#66en5SoR5stiGFK|mhjcef{JU$S?hIwS3{ogn7-oO0G z8Q;jw88BGwFLbCsA9~j@`TF!a5)YJVLaYCB>4jDH9r0us$Ae2Qg;6ERhCF$9y2LxG z)V*f3_s}&G?Himo3y=9}w?m<{<_TnQL%CHk z^82GosYrNO+lj(LKW#d&pftVuGm?{`UC?0DHmay@(c7i&lGfO6G7x&v+xkcR%aYf` z*oQDjZ8E*GJ82`CEY?S6_l2XQmHP-RP8WJlYbsvMIsb)P{a0}p85YJd@A?Dm53yz0 zt{o%Zw(QAfFRuFxV=;^wg`4Z#$kq(nwxi==9L2{EfyEP$K+%UXHJ{Nqc|etReBuV*>z`YeOD1Ws3$V+AJQPM=^ayS+;ps@uG|;? z0dqg4KIRfAncnezd}F#!g6$KF`)v57`-ue;!2{rjPnZwSHGOw6;RB0;t|QL~lQgW6 zvU$%P zaxVU}5|)EJONDbDR~6XkpkZ)U9g*cKc`miaY>Ia9N17}hu))Y^1D}B#6-JX|0pnV( zv5Y9CsYh{TrBO@?z~&fMGD>&}ewor)MLC&C#60(8{Obf=e?#^WOL`(+9(r+@5w9lX z>FA=X5wQQala0GMB`}%cq%+yw`^@{E#%=1R4pT$M$6+S*4WX++K@en=pnn+!eyST8aY#R!uzx z=&+X3;A@NNk|MWgO^F;aLujE7!Hh_ZF-jDLsCgCwcsq$vI4J~3nG~YORzfg>R9}Y= zWf*)R2{t1{2-l4vjx$MOE~kaXl+Iv0G0hAJwiVj3dbzKwtDze4G9|`HgJcZ9F`A&i zKKrAi)|;Rkghm&bF=74m9_!Bh(T3?lPs)r$_`Vi%S%2&;H@y*^^|^OMA12oQqACq~ zaPODwRWN-f$Itj0MxAPDmUqy`X)PW+n+ywqIU`@j1FDgM-fH<$RtTdM)KG6f|W;km)G^bEdG?3N(IK&besjz*tdggC6ajgk*YjZuWqSjW(edm+LM z!EvmD(Sgtf?9sqbm}oj!GZ7*s>V5$za;X}>b3fBa3swdwrQ+@%l|ua(zz!#L2SGNf ztP-O=ER41IUr>B(=LLi2a|Zb|>f{e_w7_@R+A8Tnz}$B;9>UI$lP&F=;qj*ZA4%Xb z_Bju-)wa*e$CJ3dvjyfW`enU)GetciMmGFp3Wf?99K%^hyjU^1O}f z&gv%vjbGxYywTYg(YX72);hlP^ULnt!tV5k<}5byrTE`Gomm%udg)T2eb@<&%#miz z6C}s(@1h)hCK+{Pv-Cx)I(k&P^VGof5HelwtKsnMok%B^F5SsN2?%k%Ts&T@{~ngn z@*I^a#|tp;if`h44fMz;#pe@EX!46_|C=n@kbZRog2!=y3Yps?w?^;FMkR( z^})r-i<&)~O1r;@41kQ3uN7mJr}Te&NWD zOp5|c+_yZRELhYV(^-+tV%&;xE?fT^(+iwsjK62fVNA#%otDdcxW%+RPnVVaR4xSu zz&O|R{R&ZrJEUt(B0#xu-s(~n%$Yo-O>(PlWCk$O0(|7;JCx zVz`8Z?%{~wRg2cBUx#9e0pXdbDoe4#ghbUqo>v~@A8jz2^& z*(J}q)0&MRj5F!8nIy6pl;9_;dmbi!f&FFd?zP1F>qW^1m8>l>0 zei8x!y%-yzx2OhT4d}+u47I~x4is_~Lnuto3Ls$JUWlq-eF&}$yAuCvW5GId*R}gg z=j)^)?QfMu4nz>?oPGzBUAM0t*-zSUskEF)^-eWlgJvK*o6c7B!BEaA7+LjzxEFEx z#g6GBbfAQ()K|YWL6UN)ImIf7c*7@Y^MAN1x-aLVp##D2HU3yYp`KD0gn`dKS@(`b z3^J^AJ*=zhFgs9vhQ_xQweO*pdKhvGY-*XP#u&(ofqm@wpS+NJaZvS)S{;ba4N|mc zT`OZHL231Tj&B{O(v@XMdShzw+A(TGOZ%A4q&!{A^nnH79~M6c?ww#viC_%njruD4 z$Vl;t%ojSVnsoR0Nl_3EyGz7nBh&?PojRJ}5!{>@hP79nJk73C;O)(j_9;{e6s=2m zJV(hQkcf+mgkXecC;nLNxT;LO#-B;Z7)px`bkhHw*Xn2&#i=4Jigs?9hS~<;!EvoN z{(jkP4ePZn0}g!U#up8_C&t!xEwjM1|&T$Du@>?&yB^?sEi6u1gjFMcB=ROnUzvX3C1QND;U= zS2!FwGdcmxH%1V)sT;P*2jTdm5yE$d6aF4hdz5;x=)uxAh>x2us1(2a5MbkWG*~CS z6oZIY^>sBoq>fD>rCT^Q-R$;Mp@OP>JNZto2ddj_8;hTB#AX-bivye$U4`^#-<(v+ z4zDW%)lWR;4sYAl{h~eBZlQP}qp%#v|Ft0F$}nAh*k)2v*V=pjoIDd$=V0YssGn&F zhWT=23orTfw8qw5Pj%ZQIEb_y+n(?0wOkzfexHK57S)2T!0V-7ao<{)4Gi{Bi!s^axVP?(0lfMmxVh6f?hDz?myR#w zO{d1LC%XOH{fqM-F&U&|o+3d0_J3?;n!VrLH%tMGk_*ABw%td*mU>@)j!}NHz-|!e z4kr`yUfP%E^Z%7Skwc~#5_xDQ2Y)SfIQ1hTqeEZaN>B%Uyw}L)UgK6*PpnbGA5~sW_Poghk;`>qS$UtDW4LtA z7wqIh%8OzdV1YLHx0|{SC|y-6$vHnSmgn7V@WPfJ@6)ks!P`&H{WSZxmW%EBiR189 zV;@oDFQQ|8b~)Cu9i5g1X^3)_Mlh?S%7V-xb1&!(YKfg)apoy}{Qf3WjKwh5#=6n* zE|yeI8!#0OMU@(udxT?|)|>eW&(LEpMApIP�Ejd|1&UgX3QLI|ZK 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

      =B6tY$>ChsSc4WL^oyVDWo|S0hEC%|dd>In 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

      djbE!o zTBy6v#iw`N_g+Qvub4FZDi`$$e3-QJoE5-LQSatFi;s!^-P5kfzu#PIViIC2z|8@- z&=Sb2VZh-z5Llo-798)7OT*uZ&cn36sVh3p-d(TI@v!`L<~&>|wvqvwCEKl~BJSNY zR-Qq5&3pB83#e%(b#$IiLoMrULxQA z^IVv2W^olYBi)p3>-`rCZR}MBcwE(Ie*`#=gw~BgsxOEPksB^9JB{u@*)Mhx*VJc9Abh7277;8J`~xw1+mKwHyL5a0fRs-ZQm=c6^4UN|S&(REC}$ ze+@)hX-W%z&g^ly{(eBE8sh_e2L33G#Si|eo-gZ?KSV;SmqQv(K2KcDk4K|tq&dwm z^N>e>1laM>l=TehLp*kf(4{3LQ09^Bhr!A0f1YgVMSVc7`~B_XrW^x={cI4CgqZ@$ zzTUy+T7AvlTp{%k@isFK)V5-pZp@@8M9qitCT55|f_nwaAAvg%;Sbs8zyZbn@jq5z zwmxtYLekwCY5o9f*)89a_gyA@A4i&!6-bQj?0wQ)=+ zpPzp&e(Oq)0d^)6jt2d5uSm(0#Zih2*XzDJnWRFFFm1o+q5X{#FL(*pA9trogpb6` zXK#ye-=DUXZ@-_qU~j*_#KkR7Ue|gzosNf{TZUrJUQ>>;?kN|Pczc7l$j{JdWNn8!P37X}%&9~B2@uY{YK+zxeS!q>nxy#}ijWK1SyP6eburg-QJ z_aY1{jD|=_ZPfp?>NAL5!oZtBdL|wk_0Q-2pDZ%3H?RxySG&FQEWO@)&Egv;kr^7T z#>xBC6W&(2qdRGHsm24i>0j+154?&ExyO+Z_^;3#0HojJ(fH6yLqIq+d2!ehm>EH* zxk$x*S|Eqk`1V=GM{37O+;$X1vgm72)<1Z6cN>q>OLFLOJ%byc#!x|amv5m(obG!) zoU_*hlLW4mSIZ?|6loZRO$eaSGx+d4%Ptc7Kj5obK5$M!tz*m)t(*+vxDQrgSQ7FU zcQli4kjr~EYy#o-aV1vAByRUz)!^MEVGoz7FI%YC=Mr>O)gqm^rO}o_-vQi$q}5 zYd!Fpj|-g?DE4i0SB@M4$rlUeL~%%%6U!C|`@NyaP4bk8$uXe(9* zc{(3u=tTnzKi@v`9$Qxp?WoNDyvrVh>*bTkghmih%{U}5XLYA{n&yw?A*Vm#@OAw0 z%*?hw9(PY0rzLj}b<2`gRhbiq=H7D`7Qn9BsLrM{QGM@Qj;{g_$8Q7GUT?4c<(;EUr@trp9oh^ixiOC$4Gqvp zC8VS0+#E;HL-ay5jmDd{+QbmLqxp1R{MYgKTXsDwI+YvK366`tC7Iq?66ZM( z@*&CGdTg5RTY#Wtjd#w{0z

      t9bODxr6lqabpk@#tJTW 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

      kC*u;I!s2q^4?gr>*ev8JFx*v=P;wt%_pipwG5l zHqL5rf9mCMG>%+sD{yIbg;#59DU_V(KMKe8#+&@(Y2jgWmu!=4f&N||xq~R;foC+V;qlA_ZhQby18G`KCvw#f2Bhz+mE48Fjq(hf*n zqS;^aNYLaV&ERpRk&;}SujajV)~6p?ZBkY$NW!>A08c=$zX}kZ ziI1Ftao86JWSbg->KUWLFl$H{$JA7!w2Vl_rPNqH{{i1Wk|J||;516Zphmfh>!YVg z6cVylhxRQ{raVpI+u5nPsEPc^AFh5qZ);y)wZ2j4s&#O|F^;D%dzf$6xNfuhGnF(! z%`+Y^Iz-Vt?m8LLYz*wj(h=)a9U{hK_y^Km0hQ=^w15X2s0rH$^^!oE^Q&}gO0=yd z?Y3U&aJ3fqyoIVq<3r$Ax5k#~cSvMDKaCwwRAcc8@#PXYZ;d~{YDVK{yBpt6Ayb5X zEu-H$`ifMw6S(J_X|U7j;#=^}X@hee6}k;14V{M>#b%KTLm)wVPEBBctdb8<3+Z?3 zx0Gc@xrho+KvAF$^=xRWue6B6`0qnO`am~Mjr%4of8&@oHf7P>v{65^&agkf?nYzS z{@t4Gb~gI04whT)h4w73H(zYyIshii?q`wv_mTfI=-rz>kLK8IP_~M1Jo)rO_WAID z-ij>7Xg7#CpRv#OxZL?wy!TeJyXL0Po$s!*=1H^bJ~o{c6Kbc1WMnj-$qx&>jxh=`77i5IB1?OE}tKtzuw;o(wo3LNy@-LK0r`n{@-m2 zm);&%n(zL7et7aZW$k}+FVjD-yq$L0Vu`FAPG@@7dS{#>Y$J3nq(^H;Vcg_xOGWuy^c_T9|H@T zP;$t-Hl#;m-P7>R)P4rqj&-WC;IMFm@Osvah_?T_@mitzRR#)CrQq10nT3&?#6RF| zHLcjeBK!B~r2iaNxSd)?^?bRZN0AHnC9atgp3d{AIPko87rjhb;1=78GsbwXg}E-I zZpwH52E7w38-R+>LF{yIWuxM>dK0wbt5Ph?ipX|oaZj7KP-CJm<0Pa0twRII-0G3x zd@2p4MnRD=a|Y*&;o@nFdCD#_EbN&%PpjqEiy{WhhT&yI>|sflEfnsLie%)6c&3ii zB_$;)l@Mm)6d91~MC$apZuZ-<6e-$r5Aa{wcoYE=Q-;Tkc*CSE*&B>*q9Lfkk=+ux zXP=3^H!+EPqlA!Cem3dNsJb~1;^@k!gyvj_X9(A>qi0=Zs=&fMD*t>l@h!_yeg++g3w)Po9u{P=6KWn}l=Io3H<$yZ856xLrs?vlE zG5rGwsu}TwpD&DWkTZ_G2)%typ%Li$F~@h~nXjrcoMRU|d|?;hB^8uG{|B)&eq>@I zCwLMIoCZknbqEVOLzEnz;@d(2=m2q0kVjT1kT5-=Ut1=2zD&jF%e6_muBrHE#B~J* z>Vkq~$&&7b3!kcD((Bh-*8r|($qVGuCH1a4 z?93IHcT1`+uo_woede)PBVp6Ff^G#dr8o4P(u)@QRB2J{TwhB)ktwA_pXQVvHqd@7 z(#5o|_Pt@HG>7j^`I&P_X$!}Ae#Vh$7LjALg?s2Hu}_uF)Agpkd%y&&tsCBH<3sy? zqk41Xe7(OMEj2QKN1abI@9+0~z4&Y+@8kUOD@7mj^k<&lzYiZD#ShYkRyv!%2LqRb z?fCa<-;D;X^7@1WUYbHCp92T`hug_qZ@Nvk#^tbCBNzvRXs0JLlXR%#SLC7`voTo= z!yKK`DOY2VKt*D{Slkjl2`Xf#(%p(=if;ypnQqU`g~c-sWs~4O*-8Ij!OkBa+30f_wly?`s z@KANH6`I$!lx0R+%|lT)b5r!R$hD>=N-5GN8DM3ac?1txFxH{8-K>J#qg4ew55JvG z)+<_HS@%TNmu%^O8F?I(7fJ>?3%}XX-PPiR_x*CloJtXv<@5-VjAB6L!f@I8L!O=? zBKT0$D=w4?4ma;uD_)0CMpB%pNDr^Qme=B)Ft@QH+7VIYzBnYS5c?^tGk|#7fd%5#Vrx$DzC_ zrD4y2qmD=D!q(7T+ALePOxx+&H#%WAsvFg>dg<9yZrj@uWirjX=>kxG zIWv-z7eLW~Q?h)EE%P@EV~gs>_d^vqnPC{SsR}xtj)?-Hz6J7EaFBNx4Po>VlbWR+_;7PQplVmExvBzc#8<`?bdIcCV&dx#3T^5mOt zwNI-meZ}z017MJtWpT2oNt&AvO-)QWy$nS%!hNBssetyHm?44K6o?-S06v(yE_z|w z6vPg+AZqBt0Wlg~ESyXBAp@rV!Sg-kZj?SSyYYdfxE8;LhYH)vZ&L4`4*VBY*-YQV ze&VNa5D5tHPw?;m=v~d?P4%+v!|$kd(r?dy-uJ)zaOVm&D{jM?Q*5TQ%Ho1Bj+L~$ zK9DWifc+|~H&D^lP^jGj+M#K`=l|6hT+9q*lqc9X{rzsnOHKP}CR0nMy`>teYi}Tk z&22aEjWq}(10j3Ek39|4+y8V!mw;6M7Ul}KX&1esVTC?p)eXQeSrd4nvqkDO*>L`O-VGSB9)Sle~5tlJ3RI2A?Bs&Xyq{x zf8N%4@(-B&`mqOZ_Ja91OG^3Qz7cT^9ZbXb`?WI@A@+vC{4VkreDC?HZuaMgiG|=s zT%vL)|Fe<5s)TH6puC3~gzgEVXy__vDjX6=w|*98v3Se&8H*0f^;jVLTjBrK+{;sQ z)uhCUt}nQ4{jqJma&BCvkIE1`o%@{rI2kVH2$G{PcQmw4I7lQJWp8@l8#w{5F6^tA3sX1=F@XsBL2BoQ|A|j z!KYmslaKY3bHgvso#IqlJk3Ak`^BmZq^@Td)#5!pG3z}ZqBTI=cv?bB*i?Alq)xU7 z>!TstzPUjmHd#KP-Dc7fl>0tdl++lsJ^#2*%<-3c>LV9=DHwnBp< z5LHljV}ktyu`;#W5dZszofJh-h;Nmx*d%G&4}^Q1xP6va^}KwS+ahDf5EK_e*~sR- z&TkQp=IMPqTTsh-lP~!1W*v^wV8cxMFIf}GqaW&$<41^(_$i*=sBZ;}=20*Fh;(7n z$bIJ3w9WeZ6PaH>1=cTNx|2$M#Z>mlgxYoOZ)&Ma;k{;P_jQ|fb zi?y{h_$r@mrjJiTl7;4fC>WI8hmw)K1H4s7a9gC3JFbV72HM4`5-yY`(8(fU*3$1iiw?umw zfYY(%IZI_n^<&ixlP2r*DBnv{wMA`Sg}I()Qrp2^G)naT>8 zaa>kWs1+%hL!7s9mT?Kz`gJ>xn7+7tWGIi#&MjO&x3;ke=YmcZ671trYYUb!$=fy| zG08Jg?dCQZTGWhFDM?Ce!iP-kTW8pReH14U>*(!IHB>0Q(Hy-pow}&8)IzESvzqn> z=EDx1-kplJor55BPjH02A+~iI6R{YzqK9}#LZ{r^uL-J|>u()g*1XIcKyTeHC5;4sUdRiE$s{(q;m^d<1UzGwsEwHQg=CWWoX z(t%mlj3h~<3)FZb{PAsgJ%}^>& zxY<=z5I)OHK;&}nHC0Szs;4yHj-@?GxTf>e)Shp-%~druW~~){7dee23lPJ!LS(K z!6_7tZ5?zsTlw(LecRP~W@dI(aHhq1k+-HVT0eiF(MaA$3lF&Q9zV|q1y@`h<}wMWd?E%*aL4Bf927SO=xefYlLgr9DZsY>t72L^Vi!n;es% zkK+h1|J6IsrA=wljmbx9oBqqS|tf{W8!FD?%-az~c=k}sQ_OEBdvL24PURMX~gvybuwc8I$9i4tCS z

      cdcKG*0MsFTx)Hii< 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

      %{jDCLq!T!KyQHn#4Y=Qot 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

      nHL#P*>`mW(Q_JN0KD|doT)GbVdlTR?8*mg- zT zf75E*NP0X}^&F?oV~-N|Ior1RJr&rWGnL{>+dbIAzH{xr%Psealf7gAn0MlLUfeI& z2>I&saXC&NS-&-<4I9oAnVW9M=|efgle}QMUQhealI~z(J&sh+v>npIS^Zu9y;K%A zWew!l!}D2WyV*V_PfL=yEJWuK>*F|C9!@V8o;Y*94_kCRuf2pMEe`qVBqQ4PpZVgZ zd_RYrKOi%N`u}^Gu>IZ+-M2D#zQah<>zG_D3{4(ZT3@3=UQ+id*#9eq);0^}?Ij?! zkeDRc+B-GUL5sb6_*m=`Lj74?w}8j$d^LX4%0_m#jFIyD$JgCzP~!6wu;fu#-i`>2 zYJ7JZC)*6~qPx7^%OR?93gH9x~|fbIoXLvZ*uNgCcJ=(M*q>bAy}+Qg&5e0g)o_2;=41XV=TsPVWhCad-Rp02gyth`L9z{XbejcbmI> z-} z6N00(@c$d?-i5;7KSOBZWw*c{Z**tb!a(lThzN1Wi--r(zCXL~{zny)j=>gZc3IF! z!*n1N=Qe=5L}Av%$rlxNsUiEuHs@T7sJ7|io!ct&cYbftzG*+O1 zH~?k~$smx0K-N`Eb}J(|_cL9mjGHcmG%pUZY)yQ9jenbiFM>`tybS zKBv8>is?H4@R}~W%XM67%d)pygyOwOI zboAao@TKC+9s3ElSB(FPFPQRWVMmM%ql(Tnx0CU;`G2Vj-d53j zEi5HpBb|cFy%$%((*utP3z5We7q|X5g7RIz(Bpk) zbnbBaRKI6{J0$#1PRAQ(em;<`}=1`ECD)3aVH#k!kuI{KFSEe+VX`7bTm* z<^C$q0mgrq`dkks`_e1zHK-U-ZiiD@^(FRe4GIzB*nd73koEag^PXB2?XBM>G)J!c zpZJf(Grjvd#kln?0H;pPm5e$Yd|F<^Z&lMWFgfPU8lDikP~BnwW2F-^64 zEkR3K-861VtE((pHZ|ZyYO-PLjW-6#m-11&a+tHqPJDS8D(?UJHnofwC(y52su^V9 zQpR~!@=8Kv>zi)n6)IS-(an-{xf7|{h?QGZr&)=9-C0nk)2mucs}m3uYdP{n6l5df z(R!mQ$DgxAxiZm{X3bG*kruXui5j+9TV!CJj(tn23f%d&t|ca( znRv2ktzt$Sm*;H|g^IltDMgnW-K^PaGYe3xWT9StTr*+AlQ$kIwbPrjy^Ry+%%8IE zg@lCL*2Oa9Ji3va8eWT)A_`cuY)ch%5JXu~xsyIT_H;+1Zq|#nWWtXkz_L`M9$Gqc zA!5zJS3){dvuvdj9r~F>jGK35;F&hs6eS^EUArhq+fh^`s|vN7G$zwleC^p$(MHUy zc_PxsUnJRDw?-8qM9G;Lu`^Y(HWtg&Z|B8MeVanKjr=)nWvgPJ@5-@0h_T77p6*Gg z#=MO=S@7w|I+U?u5|!^`nV%lLcOl?Tn+U@~Rru8IQ`c6EjIuI{#d~-qp;{hD^A(?d z{z&^~M747r`Eh94u8z4o61u$Akk1QXv7rtcF%YA=y($za&dZAi>{KS|lVn&kp$a{_ znQC9Fi&feZa^|J4bxD))%AtEqOflo>q=stQEM(a}PTGR2o^G8;%@(iRmv0C0bmMdVD4*s+w%%?hR=z@zpR-sg* zf~pj1VTJjUt7nylek+>AVsx2T7K>(`fl*qdo8pNrEcRKg7cBasoP~>+u2)*Fh|wxk z#X_DsbZBOinF**}iE{lb_T$=Ol{r@?UC(q{Qqj9g^>5n0w*oUG+Q*A!M0VX2+WR!4 zit4d3Myr<JCCE+|Em5J# zMr?@@Cof7K30SMlLoySmPQ)m(tH`e@I8+joBR*TxENh7lY`YS$iZx8Jg<7p$b*IC) z&dS>{OtoI_aZj|Ksp{gdcEr?m$FY{m0+T;9`MPk5ylGaU+?up{b}3mD%)M+l6vL&j!Gsm~K9t#+%PphJR8B4?0DsJu3?^3f+R&u9q${BN7+l*I`(P~Ud*J|#g zdhAHr#ZH!SUZFo7+tDgjn@Y+Psz^eb73tg+DK%~O$F4O+6i0R$*(PhZ4-!@q z6)ZU^3QZAO%@%e2f~+jcVM1OTHBrZ^CFz$g)<&rD?Lzd4!oNdw)M7`=B3&eEAuiff zR=rj<+V(J6sdDvubGFfvgu2yl%Dpx$`$CR6 zGgPrQJgX?fzn>iq7qCi;i*-b&Qq@fh)^hH>m`MvK=UTlg%#F$Gm0~`tG%KT;#o9~X znJ-M7cy23^T&U)yg)9(|gsyt{ZQ(;T30m&n(1IAY&6m2K=;_bTB4xaaQQL|&DPoJd zUK-J_P)7A+G}D|RM#Bz{T3PD~W!U$x>yWi+o2}@fD#bWfXIqO(KHXO)*M%nX6|@Un zJaTsJ*DkzdRvgV%b<|2utWvB=$66{BXUW@o?iqD%S*bE~I@JYjNyrOqofRbN&WzaD z#S)b|OV6DnZKHcDcb%z^XSDJ{+;*(u-Lc z=+&clCFCk>5(3F59Q$-O+|{lfEYmSftDinKBV-iobCRu@8ED{$jAW}LuF{pQP|0Rw ze5hyLMw}{Bv`*QGNKvUyE_5@@*<$>Amb0L(8k;OwLqu6yY{sQ}hRJs5P?@q?C?PI= zdU7J69w@44op!|-)@q6-sQPf~qk^0~IQ3cBow-wM>zOXaTyrhS)utUKC<=Z%b*D?h zDD)yxyDMB;mF`E)CN_)_>glbfguJ+N(w_ISQ0T zoeUCj;oW-Bl@dEL+7-RIC+tQ&O_FEXqZ*AJRVO2UW=iYJu_EZH;l(OqvxQd8(O{>B zbTl>NvoBgw?AD)eJUki{(`PLn{?8MkYp9X)cc2{{z=O3j;O zh|@6Agds;jP>@1$D2fn}Kvd&gz>uzJt4d`$Q76#dQwj;piHePA`ccC&q824qi+(h@ zcri(rQ&`wlDBv*OuXOHQ$8AM-tK3gA-Q6~_&BLLqZF#r%2KX`8!R_p@!79F}aTd9F zSMMMx+hg3_j()v2=BGwJTgc-|z9}*=YmX*;c~iB|&l+wjf|00LZ_Kd@)mZVXR*`nJ ziu5gQkt&|KIjq*x7R1W*locBH^huXal--*s>x+FIInWh>3SDW|ZOEdG+G4jcN!P7b zt%9XkOH`?*w!4t&O^<#yIv6crlZtJrn$XHAYE_$8CcE_MRL46~7NSd^cJ+#Jk)wVZ zI&a*Of|T4^6RBemvMWnAnHem{7VSdYsc)@u3CzE}3I=;{|EmY3CQ)4%&vS(rb% zK?CRiloH)6V0hMY@=67tIBw^q_jXz@A#d~RKJ7(G+;twzmm~<=3xX~6-5%;x{*`CQ2=-IskVJk_t$od{zZp^zy?+o zXpmit@Syl%N;!n^MAZLw^S<0cOL>}pwKH^rO(g^g4GMS8+TjVz&E_TF-@ zxV?>KW_vF@<7>R&Ko+&rOKGsYw^vqv&EQkkIgA6P%D$atYmekDkxe`G@7& z_^;x5xGyn*Qu;$eMr@9IUv2E?^xpuDM@z|yFc>iZlCDuao`LsO< zPrrX}S%{fa1NXT<(evSYW^Fs{RC;dON0xlUz0k1Ti$}4bao+pp{MzD&qkqSu@e%FG zuXUDRkafM{>irY{df|S)m#*okd2r?UJ`&K-JQN%|5Bt6+2cu%>`rGnG&4)X4$$4M5 z{(q}3;qYIa=WiwGzJQ@qdEN4kK4%!asy{uQ)2W0=%-nayKLGTYUGrb|VV{W<3t`Dn~5}yK0sf67N1@-X+@H-{GqF!dJ40rM@A@?FN4{NySBLb!O>F8}%PNiGY0 zb0{!VZ2qUSe5Lv5eb_~X&2Q)Ctf=iK{8F6Hl|J9qa8-ZxWG1iWu&VAJ=~5&4*h>pJ zhcnH<6-AZxnVLV{+}f2mZ|fxNcwqTgdk-7w9fU#TnIa>jb9>iGI!IuIWK9VX2mp{k znaM-|ikv7VB{CqxlanN_cF?$3yuW_ue=38?a2!OZNM3%BdJm;im(<`0OFbQ{7b#TI zi+CS^sJ1l=%X-hPvh{WUePD8|l+Wt~gO8Wg5O#iJWBj)}PyDM|(pj-{DWg`H=`)&Y_RHOM4=&Hj zR=b;oc74_ZaoT@ct#rupn*P(*Ypt5}Jl0~XiTPWLZ(1(*i|SEjIt!xgyAAI!s^)eV z?QKtFCE0bpM(mL=rB5lH9D|?K)sat;0UG&K_ES_bFe7t$%J+G;ctA@SnjEJErHi4! zpN(TF$y?H#5?ADqXrbq1Kn#6FE4oVpAVmk25}t`*gCW zd(DGA(;x4ZXX=3Y+ht6G|7BfXy`$^>uTv#Ja={DE>+`%k>ucSz4dn3M!{h2aO@Mt| zpJ!oJ1-;+Z*Ku_%TGH}AFQ1XRVyo))9nO`P)n#d%8(4HyAe~p|DW6S?)_F-y@>lO? zSays)J$X*@E-HK$A9MIy=hxH!kIh&d70x5L;rdjP(`5?Re~3fssqywyOO-}6r|GxI zwxD|u3GRFcX8ZMKt5Vm=aZXJht~MT{&iZPX{m;PL?x-)x>uJ|<)JNu#;O$W_rR8|}|IzMg>tArgdv8TuK0N9e&$QQFyYc?A&O7xB zU0Hr)2FK;1Sy+DdC0~8^dp=rX%KV-mI9D$C`qix-W7bpBVa@_46edWNPz9KKx-HWv zoWcDt9KS$>O>isugzOU>6UL)W%28ktWUVpKz!+59oX4pX#P92-aZ9GTKYEK7m&U08 zh{%$eX&PW4fthFOH7>VL2rnU0GbmFw2#9rls9wjI%m^d9mrV{oXgB*E}&)90$yRU3S5n@(J*y%V#( z2B!3yi=`{{?$8;lV;Nst(fBn7GE~i^=?(dsYQ?FHYPuOFAAh-;oAX#{(|nZ~oaGyD z>6ooI+|3MQGHv`d8#$`Vrp=8q+In)Z)oq$IY}un`%^EOj$*WeZ*feO#lK$vYPf$)O zSM>FIm%a1;{N7Iofv?qR^jaM5I}3xp+pV^?Ei85`0~Rp#e}BKP*G=Z|_jlS|4uctr z!C&v=bGBP5<$qjV=Ho@5&*m}Mxftl>U(Ow)dA8a`XfzHQ3$_uy{>6n<%)k5Hoc+g9Xb~%m1S~T?>xmap>CN@c4Qaa`M3~UG@im zx6^{?^m+J>7Hel!H!Jw=QqZiG{Cz#%K7TWn4ium7@7Lez#re8?YK6;}Dwp)JtD{*n zCBk9ZsHdG zf+0D$hePRkUR%0XZXp+f@;LzjjshHP<^n`e)m3MLs;f1Psj2kRZv+;8F!AQ((`k9U4}LH4TEs(zXtDPXO*#JCGQl0G9NG$JQsCI33j?TnUTFbx#G1 zvFSmee*E}Qn9uWF&gak4N*F3l(lnKbv1UifQa3Y4{l$}tymdNH-`NR_nW6SY9(cKP(#p9sg z?ocX7gqcHc4SPO=dpwm{-NLcL>?C2oo13rR7s$W5zWZsV*l|XgWsr?J+)AoBIFwI5 zwI_1AotZ5ybe(YOomD#(`yt`uZrr--svEmYWp=u=^d4MUJ2JV8*|Uq)d=QO6_x!k| z8EmfPVa1NtSL@lP8`k+7wYRsTzdOC&Hpcxlr!lJy++zvsewORBi?<%*8!^7ynBjF= zy*3$cRrif&UI$irVF|*pwp&=`cMmIPyNlQ9FNK=KYQ5a9i_O!;zUb2aEnFunwT(|K zy)9)MHpa`Ywsl?kk0zN6vhB$gbk8WqdQhy53zxP=OYmXL9a}4to!c&B&dJ>}(`ogP zK+LS%{H!^7F?M;mQYQ|&_PSY;xpw{9WzRl)8`Q2YbE_YBt6lf&!$*E2R;c3Vp02k& zoIRIY40w3miab;9vBXpzcHv?%<5*#}ej9t(a9s1f--Y(wyzfrY%K!8%Gpz6xe$8ri z>&Dt@#aldeJaX1#`C+8(VTMy}FnHtG2RgA>Yn$zMeEoQ%ey%Qh^1e)Ip3ut)zSwzb z16N&@<3YpOvpBwUwXw=}@UP(1?3hnVoV$C!LL<4*<9NIgwrmGp=gf@l-J-ExOApWU ztNpDg#?9V#*H4IS{uKV~hG!Rx#?j+Fc{x@7ydF2vrIN8}{Jtm;C3Ce|*_h1sdHRm$ zLtnAsZty2hXuO$01As&XQfy6t4UM6(eoOsFT+jUCy5qjPEr^j49Gp24iG?UIkSQq= zOcWsmN+Cf+5Qsz)6?w$TAej;fND@dwar7rL0h(VcLD}`giuPC>zIzjDAO>F08_Z}v z+OZ_YVIzEcyQ2eq`O}|JfF|C)swGfqvC!4Ee%JMcmDr? z)BJusD;Kjf$U{+w4~4Lw47suttg8m=;?ZmS_{?TZbo{rrx67d+TjDpic+SqR2j9j0 z^70|%d+*J|t@%INEadi=q$3_qdl!(p`w5;CVUtTw^vApKH27-+G_GuLUF@qP2F^ye zdN(rJ?Ct*?Mn8#r4Zc!-E7s2{_8U(+bfpY3M|s@#ea_S}jaWSXlht%FS9ZTIdu95* zFLVBXLcr}R=|3R*Z259^m~w2fNIfyAd7>q$rwLkM6mCu_oPK^`X;Hj#Eg~7+cBT1C zB{3~q4?1{5KHrmXCx;f>v-7+bm06xEMClH{lCvwP=K6i7Ig=Lo$>T9x+Iwnku5rgh zYcO9c3Vr_Xc-*f4>E&ni!-?+iOAZ^7!Qh+HD#!lRDz}R;m6&$*ZufR?**8tU+1#Mx z`L1Jy7wG3XO>XDu^6KT#qeMgmG}9Ro2?6PT=F@}!sIsM7NwhWyZ6IwnAtusIfSW?* z<MGG_&$!3Wk_DDQx6*zIk5==F zeh#OCcgy~*!q{HtirP`3|M;uLf>U#rVwfa*CDA5S}LRBc>K+-0PP&#kjrFX|1D*+48e;IuD<&>tr2ep}x~@0JLeXx&3>poJwtm zufNR6WrTPZ2bE%m17w^uhBP(}f`&sOsBMF7rqgn0P~{MkZ6^dIn?h_G5+SHz3=}mD zum;9J;0S6=Bs58;#>i+*gg9s%LPK!GHXYkRGI}Uquz%Za%(A*WZ4KZs0NyrT1{8)mFveL?w zKk8nyZb5N=?g|#MBPSiD&=esGi9i0w@hZmBfPgoG50H=3oEpUrId7vj`J=BX(;de6 zgPR&oAO`EFZt;u5gg_l-^_Iwd*a7<+2HQhX2!@csjA^zprg)ZeoUib+)h0*ub8q>t z3vaq<&r%+2oc%jbYw}Kl&s9!;KhuS;(|x>|J_pAOqDw!N=GVJldA>e>SN~0_x$Z3c z$vCdI;zBd4ufk>hdi=vIPg#$ay}6P{UGb4w`15~vcl|H?yCwgASon9m{!JI_;VoN( z|5mfmfZgq`_CIEHoVNY>8qZco)g`&E+G`}`=xzKB<<}95&O2i9ydI9&IHDR0(nSp<0H~?y-X6BvNc2DsxPdf$vhxudg514EDU(Q8mAi2%oYJ(n%s6N+dM=)`- zR-(D#7n@3@+z#`R<8=0;1rCz>hR*Qf3LCFCU_0;ux|TXj7Rq+p+1NWv{9i?xJX5Qa zs2oka=Rz4m>i6gkK zuLxkyuE|fF-JJH>G+HBu>~_~iPRBtKqey|p0Jfn*w>TU~=6#=*@D^4XIgg8(!aYj! z5*Ipym2i?Fq>@m<0Gdq;KZ*Pm`QNkpr7t(e@2w0qd9Lxl@!$9RY7V`I`L2I4^)mcy zKi&Q|zJD(phI$satM|74PS`nGS}nGWkeG3vR;@o2CD@4fwg*VU)%SbfKiE&`)P>yt zq|TnMQ}}tVACI_?2GRCE%k|lwo;cJ!M=7-BIpXk^Up*DV-`>!?oWE{1*J-p7Tp1Gy6Xxy`H=(3_qx;4dn zecyHde@n5$*lM(g;0`v>?nz_h%M!a41ru0MG+FQC<5vwuS8==a~_=Yw<{(cUp$ zz8<}xoUOgnalY=cclLb-yFM@d?w0({-mxB5lRg~%DnQUjmIcB0*@9e2;`Fgm~1U1)3<^YzpP zbxJ$(BJU;QM$jA`Lf$a+`~B7D?V^b;8gK{o^{`^tc-&wqgvJG;UGmgG2d3&MC03MA z_Q03H`k!_}Ju@tgNg$GZLisw_n8q+|4WMP=O$PiGb%5Dy;UzCNI1#x1GT!}q(hJNR zL0a(IS&lg((w?!4&`Ss(Uf`XT1sS!E`z)BSF#GH?d_UgQ%;{=;3*JLIaf6%*miu4eoe!DI}ks7E6dfZe{CkT!(caGI92x_|z!I4x$7_ zP{&%FO{T;$ul~yv0DneAi_pKl_(?&Y9z(X6JI zbKB>OW(LuVfX)?Zdqw{{nG2-&e_Z|CS}pP|b2c7}EAIPAnXI|x;9ec2>6!Lg^jzN| z=sTU4OaGtS#C`p4Z~gcV^}vC+jvhdl63`n4k{)NwHc`;fJ|TXxbdxgo=*IJ zuVwLhzcJZ-zlFEX^|(7p|Hc{KMrR&0mr2`ImF54;U+>z{FKw_UfA457vCVM)BT*O) zf4lKLk7t~{Yg@F07qW@&|7P(mUK~=^6xb%%#?xsukinonOOj)b?7~LJ#`J5gGAV;S z*d^eVg&JOUiMWX?Y&{e?!vM=cQlXes-M0J_WdIKYzfhi9D}O*_Zx%@NSv*2aTSx z-zc(MHip5l>nG@QMI9gg|87!fImhrgD}~wI`#VSyJac`DJFQ-g{&ta^%TK8qto%$% zp`QT_8jL_Oh&r!nR|21#cZMV9G(*49mR1|Vw!xtiV`qe}u_3>j$s_A^NY6A%1#C#B zq$CpgQ7hu-E<}rd=pVAd6(nhnk%o2UHe`br?+1c>kCph$J0{1Fj=fz*K+`*!5FJmCLsHaTSO#ph9%h*Wn)CZ+&p=;S_1ZuAL)c5k^Tz4 zJY8D;mE7jwT{9Bp7`sCtgSe5HXAlU3-E(F-QZ#J9gg6SK0unWiA?>Z0foNa%lUl0YWn5Ax|^Y;`udI@E8V~7nx|` z{5t0Xi^Q;9-+krlyZ1dgwBb)&q8V``y|k8Z|8yVvz&MxUpFjNgDFMnbKJ&A+i|j$;TFMqsnhG^8f&BsY z)PxGd(Z_|$*|Oj1xvTj7SQ0*`YuMFa#PT)wj8G-v8eRW`tn2pQDz6~WkN%t_j?d_S zUP|}W7uu}}Px9NrdTJpp*J*l2V1@}lM=M3>wl#mhbc8Dt7}FgzczJ8Ig+=i5>h!et zKFShDf^*G;Bk{GzCHruSU)lc_3-&NQ_@~M%jZYw$kX(b~|95oy|L63+nl0e{93beJ zm0ur#k`aN+7`k~S%`h>rf89BMsQpV2ss0(-4tIq1)hH0StG8F4Yx}*$UDQv!i8PVe zjKjP1)#ANZ;Aj^x#qoa*?~|F9ngR1pGUwg+ick{aOev&|4-ERep-9_B%vJi%+G;gQUhIrJ*@6_)83&CU1(D3VF0|Nn*p8L zega2FK_EvzKl_lp>qrtjAzGc>R0JY%{l7@2gkzV@fBv8NyBH05nD&aF(qAos>U-{V zkXwUKUtx12lRU>rA$pdQEw~`cMStI@Q<3_0iB6+g^!9%HQ2gHRNc*y__`m$jgX`cr zkI@n;)m;_jT1=?CKRyt1{LlGHukeWb_bvYh91wq8NWr9bb}#b27BtgnP1_as$gB8x z51qr+Dfr?jA(bNjvQa~f9W{X7}UB%0fG zJ(p)H$6TYvx9g1W{4+Y{aay@foegD2_vw*sMdh^d+D=n<;dFI$J(`BiDET#%OxfZ) z%%go=98FK%oQ-C4e?OGD9Wm*c)-%4`vE0^KUgl1rg(vSX{npj7nd$qsQrrLaU!srS zO~|YJ@}>HFfA^zv{$JT&;F+YVprxr-PgC@!q}%EYUOGIU z4*Pw%mTmj-7W(<`|%F6xMOn&>p)A|9&0m2MKYYy`HZ$BJ{ zN6T=r+8QaV>}!f`U^%CBk}>HTlQK{XTWaxh0=#oIAL@#UKTsWJCfd($&uy_)6ydm) zr>C*g=WExhP^Ax@EX5@snu9UllQ}qcw!xs!h6?Xt4f+5UfOv@n;dX140P%6I*%)3E zfCO$fwe>vjzOnEQ;*m++0O4oCj1NiajVDzx(&!v_aO}C$EH)%lQwxR$5 zrpH6L*F@-JoCpqOIEiqB!f}50RopPwW>PsH9q#qO^LjP-p7-g7tD)^%)e6_Y%?yR~ zmn4E9aE1`#2>>9&Kyej)i6dWmNSg2gy}F75OVZaKa`U%RE3XY1B%$}CN0}7 zj>~1T!!aEW%yxRA(_A?H(6xtHCIe4#{paw1+eP~D3gkU>`Pi}r12QSZM+x|S&X^?IK*ORe9CPGlgu71M^JBzQLh zQ=C)17W9!xQoM)p!#?5W%U$mmd$reN19h7VwcX{??{-~yWi?^2(Q|xp(=<%FGClv7 zL!I)U!1-!+pG+^G&%o^PH`|MS#>pFV`dz*}IYw1q3)JORKkM*c<>0zr?ttu=*a#bK zCd9@Mv)A0+pPS`-_gUt<3%xH#PgT|R*r(mA>L^)qlN=r1(sonD_KkfW@55GK`rE(zP4@Nq&enL}&UfXG z@YC3i4Pxzg`#tfE-(4}QX9T>BwTyf#Y`P5NHqR;ATJY7wISbDIBW17}T{vphYP(D) zQJc388BVw*owLb^v>V0xuQz-Azp65gSm=S(cBs{zzc&6n?(Di;-?uTU*q8si3gl?v zvFDELy$#!5knV#oC&f>5``z+fD=Kwa z{H9AIkI3V3*m$75!`rzTLGi%J1;qb-w;L!W4CEY{)54D%>I6*r{@C}O=hiNJ>K|2y zSI-`7dHFgrp!uGRWnRRn|H_f)&+C8Dc3HvHjKPezkvfeN`F;3H;b(`_>k#9!KT#ke zb<+U({)xO_WgE}QF(x}(EL#>H|K~qQhATqxfwo~?zMf6{(Rn)h(XY7cH15@^Rv%uk zf!^cOxc(ippW3c7y@wyrw?O={G`^qT>&5zc7aLBdJC&U9R`a>4<=gQ?v#>Jy?~wmm zUy}LTyO968hXo>C%*94dqaSbIJ5qU_EKgTPR|ufZF4|DgABZTJ5_t^V;d zQ+AuV^Q+X&D^(TnJ4z|9$?!+I0vSrf%^;2{d(VeIy{ezGd~L2P-JEdTH&?Ddi8ZAv zIcGF48^gKc8hm;ivXM9e#{@-FpZ9R!aw-#FwNfPqlu-~$N*4VPbNcaIo7;YsH%vWg z_W^E@!Sb&T;S!z|K9lF;NC*SYLxTeQee{GXU+?FAo|8|_o@Dvo^yr8ELNbLW&5VUiOyr%a)nZA~p1-kN^ z-|*}1EWEA$%;bYKRd_!`Gdr!vu=pCcxL?hF|I6~1b~}o49DmHE;Yh2u+Q+lx;Ze4l z67KM>l3Y&Sf4W5F5J1x&rC;#r?EFum`1+fl0kSLhT<`h*o8<8e+4|lNX%KdQvSrfN zt(kP7jDj6C7=2IPs>q(+lR*EbK)s?j6R{O@u%dhA%%S(l-U?!?yM6roD(19m#E$cf ztDpP0>B;?$W6M6idWS4Qq&08nuD5nOT{TE8l9 zo9Jb4v7PNDwu+Qf%C9v(@XKg&zLT-dmCioSaP~rw9tUyKKct043+=b?b9UV=o64mw zLp=!Q=j8CsJZ-I>U1OFz%-+Gb{K+BifN{*}<#7!2sX-j)w^g@54l2rJXO+V1q!j>n z(%qE$(;nU9JnJ4EzPA>ScWV=qxN=@_$_~V)cZr^EBf88q>Tt*0(dea|CwB~#hym0y z;+X&;GZiQ3JWvxyXNrf~XZ4lcvaq868KVo}rFZ>3U2Dphy~w*=EYAVuUUrTPa zIbOe*;&SZs;JthEZG;dB1b|8P-f{g_**SOl@=xL5(S!-BW0tt z@uzj@yOmCPyEApfB|8ty`BtR&sDn{;bS*MSRtXL(rMT`1>H7D_dAvK=A+~a7X!&9? zQC8Ozfiic9>mxKyaP=@GKg;vXNFQTZ%q8-@U(5d3566F}b}O42a#F@+aZ=b?#4t!s zoM+kkKTp13T}JmEQ+9FQO?VwKI>Ah{ry{Z80I?tu2L*)gmNVuDBnL=9b0!-JXhiP! zoyY)VPh{$yapiOiu~nu@2O-9l#c0%#M3#ph+T`E}2HrTY7qTY&%LaT%RsCA#9x_)CXPNi>e}elK)%o~E`_ZMd?zPqCIPER(fhwiv{r|2}+G_sl{&QD0 z5BTTCgR_KP+ieC{M@5$DMMeOi$eL(G$P*+HC=)V@gapM1M9QF&5<( z^4449aCF~_-~Uu&=0!?(G+k`6p^N|4PowJP>tpTis<~9}UZp87&+8dVbvaj6O?20* zkC7K`Cp)zBHT~o1?LFOJ+wb;%@WGPW@lLYl%9A@?-{Zo8P`Uw0L`#bn;>H(8TKYJn zZ^Q3to52Rl9=HU`H#&!XF4-JYhyWb!a5N+$NF6OJGx+cdW#y1~0-sX^hZv{v&_S|O z)SMM4DeBkKAfW@_P6UKRJ~w@3`gq@k_iMux_&tv+a}qsPt!v$%SE9u~(D3}treygF zD)h17y`g1OK^~m+z#n`rEdQg3y_^R!K20=q7B8;k=s{qaSn`whiU?s&6-Q`KMufXQ z{od;J{Nz}6wkh3@w#vW!pUL{Z*E#Kqa(~3~;{2G59%Uo0z#R7vQGev&NcaL%`V#83 z&a$7|`dXB6ztcLYvggg}W$U`0FV!BKeudvVPoMqXURYB69%bUh7_rBx@B#_MzVxdh zhoSQyPLlr5ijU2kb4pir_#dlx9Pc;d{OT18m3fMPZbD^5j^CsIego3fQ2F&)7cdbA zuAhGO_RRb?>?VJ_|GO@|>3VscAN#>plf>yi!0 zfbGF+E+_A24g0`<@Y~SpzP3G~Q&-@$|=T2@5;N!6T2gg!=ybC5@GCCIQ#P|E` z#}&T*LbIIRdD%9A@Z=?aD)yd#8$T0iHr&ixZWkNlCenV|*P_>M&8Hcx|F(nU$)woK zHEZWq&*;*#{`Jtam{;}lQhOP*)Xp>cOS9dxX3lpJNsH;!a#*sG{jihFtj{tx9h}20 zJ338A?U-_cj4H$OAFyH!!H6^G(=umO@ny#UGi1%5XM@Axv+1*y^Ri~jc7dObnziiv z3>Y$2!l8>As>U9^_nm_V9zPWa<$YykRac>XRM*{q)}oqc?@dunK~YgnK}$PHKR-o7 zH9a%yYy?q}}zdAuEu`>E6C@pl@{UZ(wXw%Dtc$h%bqB|O*r z&hOUcaCkf&PFE`Lhoz{Dpq~D1^?I#H>NAk0<|VZ<;)ffJ|JOv-+(1)OwE${pU>y<@Adh-y?eb~1nlI*H|O#8`+dA!nYGH*OMQMmzg4cL)Ujlj z-|y;Q;)_BU!6 zUzR)j@rJLFscKs@-?iCp2%KDR<+Zzv@7oNnzHs7WuX9@mx7*5Xve(taEAChBtFzv+ zwwkUtX_gl{;Njhi;%v0Qwb@*@YIxM)dM{tO7a3tY*37hIRVbDxiJ0DAmX+ISch2Lt zlBLSyBh_;UAW(Wo_K7$!^DP13=8ms~Qsg)QRy`JH!iq2?bqnUX2Zxs!G@t|;Y+#c% zZ6Mh+f*6r`pj9y>{-W>xrSl|LRN(Xvme`+&e6s3uiM6)2XqHfoVsx9Asltzr&n6g!$1&4 z&-;f_SiPErpyy$50*9&hqlT1IT~U|6yJ%%%vl(4>D-j8VgupymErfu!lGCdpLjW8h z1B9_w3j?xB#fV%B0QbdEbV`fEdSxiV+(}t%0QzQ^TzY9Y`=U6tbd)ICsGosf4*$U4 zf7nR5XV)hjRE5FDZ=EI3y9M%J+4bmjJ+FoIcOh06^7udY2REF{=3iS@@?8Hb=Ha$) z6KwI#|1Is_J`O(@w!GqV8qcNL#E_&sm}dIW_fZJasBXB>ia zCI5LfngHyMLDOLB`H#vIT%pTe37=m9NE|oOb#S}56z6memZx_8GS0~kB*ZLIMY_WS9^^cc&!B*(AVB4(Wr8zB) zuyX|L@cgL%Cn!7f>3ay%u{!{jJNTz(OZ|?7=mUl|_fc*RI0Bc%DmW1Tmif(^SmTb0 zaO&${Bly~_{C_T^=V#`A;PJ0~Jq{k(8`bLP_PoqAZMrJ)ru%C6I!omC4K2_5q3-JK zjMimcwlr59Ew*m~K;w-AyxNqW#hWf3`U&^4V`_)|N2eNVURe5C3Q%O;MM^U6CBE2iM0LYxPCE4Mft(opq|lGq1s zfE0)xG~9+;`us48M4282dWz3#{R7LFz>TiL*DA4m_XHfO~L=Ls3 z*cT8|M00L_wKMQ;HoF)8_bjIq&3V3BJ|GR@Y!-3ArRvqv!ya>-W$PI9N?KjXp62B_MuIeh(n&!K-q?b*@hdIJG&ZH%*&|R<5*_)%&(RgV3L4u$Owf!w*>ZZ~kefTUg+PhcFYSr}GMbs@jnPY+6yBnfyF*e5u+t*uS#Oto5g37Pe zLaWXtI91zRs?p_)T zHzyDmab;rf7xQ=-Oj%niF{xv^p)uY!!qUm18?83;?4DqeGUA?a@f%MI2CjaUQ^S+N z+?1}>nCmJCW3v31tKEl$&CU&h=-Mg?d@#Pbf zCmC^@O^J&Y3m!8nC8Q}-7y+YX8M#IV9oExje)fyHRh1GWOkbYnzt|R8^9Rt#Sc>q_*~NAv$s~- z^C~iHU@X$v?I5otS7{tuL)hXA!G8&&V5?&YA|tw08aMQ>&&=K667fE(>~&vrXR^9O zOu}4;!vU9|^?DO3zVva7E4=}9GZ?C1h8%L7cTJ&qNmMA~vxU;XeX!%M+k>9I8)@xx z=2G7CqdpCp74I4LF`)B3tZy+`?G~0y5}i~t^2k9_9>8@-lP2C=ybOw388!rq*B6B? z<>JYg_E^C0J_f6|M(l|*n1IUONp@tDLLcwgE49FEM zE|&=e>KO&WlB6dERSIz`o*;Lz0L@M0OlvX26xbYWlf4klWwQoUWJ!hmV-(7;Ux+@$uBkmE^Y-;hjlkZ*_oiQtS0eP+mKBwv0SO zw?AtwgQ#sXqsB!>tsqknRNEUH8>M7Pjg5_s$%27FCQfM} zdUm6rVa7c^0={F6;Bij_zY$w7GZaS8R=j!iy31ONmW0W|op4f8m@SQnjaf*orqp35 zTrmKd7HG*N#*5O&nX;^0#Z-`99kkDoWn98JBysiMCKs?`VUVF2nMi~p{&C)#JO96r z8Ks$>8EZl2WfOW5s*MwH&^CobB`tK&!)X?lw%bjtrk@dH#HNO5z+jZ`G!_kJX>4#5 zzZI&>ln#o4BDw|I#-bY`Kq3qo@&Q#A;;(dyU_(@-OG+$kxfh#t^U;kvC_$RWI8LUd z?(jLo*2VL<_IZRA|a&r5;5Ul$gHIYJv*9JQlDB@QB3$RtE)H35+^#8sL* zXjOk4s0M*MCa;X702swmlJI67D(W=qby!_76fZEO;_-ln*-1#~-P@)gpk^AZJw@zx z-)5co#yqi&thk(4I~uXZ8A-ZVUO1hu*ITZ@tffj~ifIJVP?~E+6xV@LinPo^2oS4L z6(S%R!J;QZK*ba&ofJesQ9_v%2#O*nFib@W3Lyv-PzWTM7@~?OAkiX8B!WSr2{S^4 z5EU}Ta@J!TX_q1?cIi2>lbRvGq)9g1$X1k^q{haE4Z|RA7~&!aLP0e&iK1hR^Ma<_ zA}*DIvyG&#y2O`UN>!`Y$d!r}=0ubbRbk|*T#Q=`EGawo6IxsmdbN7|uVl(6DV{Z} z{A?HQC>3LEy;#kXKV`&Uky}KNo+!w}CW>5r{wFsUSmg$wY1>jZe9ozzWcS%z4;Xb^ zRF@sZ-6LdRzHjnWR6X=_yjLAdOvx;}+?DGR9peJIEL`C?#$I{a79h6%pY7H-i;$0X zxik&7n8R;yj1-}rtxfY=vd9p)Yn0HQwiJ6DemnX8uL=CIWnC`c%#_JKKCGDLRVJ%s zIabNaGU5tXB{xP?%9&dfG@B?gA`TSbhsLQ`+|=edg;i@=)zDiqIOgzBPYBBM^O11@sTvdbi;DN=58o%1_CfD96VEpdYG$!}QR1jum6aL9KgidBws zE?iSBu2L@7R*t2>n1x&fvB6Shz!l9r`RXS-DPzzN70-3tA~P-*@Ea(k$a1b zg>bhti$S*#wH~X#$UruWR$c0as`EI>*M4OToaqGwrdd;=g^Iv!X4@zW*Dd`F~P(E#dOB^0WCI-Hm&q z+lAb|52MfSxkxo_DcAFqNYaUDAwREh~+;mS#{lv42kiQ-|#w| zQL)LjmQ^5}=@KT%&Lt5hN>L|rE}WL$lZoN9qq$V1q9G*)A|R0vghWsU6OgBbR`u<` zrUxuU#H2Gbc09g{7ly_x-5&7GSH`gJ>CRxS+zv)=X9(nB3+yluW8Dc~$F3(wAw^FgO~^jVLnBUJXnx z!m`1AZz1h!7p$V{Sb2``=)0MVYqz<@X44xNe&Q~8T%ms&h5hV2k8ywH?I@9F*5jlv z6;2a>n;?>tlMUoThH#O$Zb2y=DkLT%rW^}K`U=XYP?^I+dx}*FmB$AhMc}%h33qok zgd9`5f~+ao-m@=A!Wn5E!(c#ieSZRryM4AJMqOSy=IZ^E>vz1~1Rg`{iy2c!c4`(O zeA@;6{x07kF)xqYK)5J`A7+UE-im79-vQ)0;qsqW-XF58TuVRps6p}?ID85Y`uJ9S z#%6pj{n~$TIfAe}FF(X`Q#->-e!q64FM#!@buFaPrLZseNrU%r3+!mgsd6nZU+rxd z{5_&aFZ63iG|}DPTZR$yU;cN@$!r+EkEgERM5qO8^?lEO?|X`r>VLLE8DI619n8~_ zl+rEzzE7O{zr}?~f4}L$-2bq;8j_Xx*tEL;@bgy%^mjm4*FM7@xmzR$W`@IlF{fvZq z{~deDO)u5>d!t5L;dV}%Q%U%gJLvFORErVcXt{-nj@$cQ`iT59Pj?_V?HyV-M^lE^ zrmmFi$~bYd_I3|04d|&AZeHC-lF|TkhyZJ9LfvaTidmO zD+Wk#rw;P#_5AOS1ji71&qsF71p_yO9-J$GLRc@1=FU&7_!WU=<*%T2)rZS-h_Au$ zC|nr}Vd{Aiqu$Pppyd5*p>#DwrRV#}FuQl&7ypmzy9tsMuTZt**lmCOojs)#M=k63 z7qmD|{^QEvaC$A=i5E4H5CH%u966(au-~x_vI;UqV z4+1bWzDwFtYGkBUMM+riX#E9$(@Wxi#Q)8b%j^Cu{_WZNzk9i>ke=_hmR^Y0e4T9K z$!z}W2=;sLCu~Us$be)_r`%EBNAQ=~|Bf;&?81e{+vm4EFUN>0iZlr6ms;7&ZTM~hIq(f5EE^t!lX?R|1?(z$jaFY zjKDMI-^#;}0gL+$E$o>tz(?J}gj-{=uM7SQ;Pl)R8C4~yZ z*n8Oh?mwg)ZFM4f{qMP~l@Hx7r5kB``F6f2ts`Tp1!jDVTB8@~%72q?rg2UYR?-M^ z-z#rY%u8>FA=_0ELd%>}@rd#O1|VRsyr|y4POKZwJK^O|!ph-J%N!Z-!DvVa1`p}` zD3GPmDSE1{1Aqp0;y}!EfbLE-4n1maSRLFvMwKByxp+`5uDo+npe(T7odjwYM2;I} zQmM<&OD}qGJ$eEgzt%+f9U2NXs20>#WdRepfWaEzZO0VC-Cxg<5`oJF0SGvDlZysP z7C+k29AYdjWPQ8lJO6QFU5t#ZozZK@4uu=P3|^;~CtbfUphNaGvk&0@l=OL&|8M>g z{kalVzdE+TKOssA7AUqSS3OZsna5pm;z z)`&2cl8#8?@ck1C`~7g(&{La8@%Vby|J=QGEhImm)A3hDG|#as*{ccw z$OcCu8DMG#0|r;((_6A=Z#v38I5q{Kv^rYp`R&n{|9o_RwO;j$nKI+l%QQEIvtvz9 zhUay{ZAU_8rv4k}Qrq)bW`Abi(@fNP3})44ssFwP__nGv!M{fL`6vzTUSmzQF`Csj zGUkS%Gh6c)Q(hr$>#$!e%oKCMW`8R!{xx_Io?=9GeD9 zg}n`4m5VABt0kozJH5WQ7j;WVJFZ;0Z=0*i<8iT=>Iun@&%4FqiST#2`;M1Kq0rqr)+rQPj*x}e_ z!{hPj|JAr0bwB}zG(oR4GQoc4?qGwzvZ@V@QQiupyf(iMBx_(mst^;hp>>C?28%6? z`E_c!xuCFazyv;ZH8mnNCszZI9j;9^G289-6YdfH+ZMZwjBnPp``{PCqIP=WG}}F!Q)-l@>l+? zQXKgB_i|S?xRR=rP5^d738(k_1NM)f@Hou7Uf+F|UBs^m@(=HVf7eKNyWI}M-&F}X zx{mMb^Tgq6I%@l>ulwCZwIwflur&Ve_ZyK}$^6g-p9_V$-Dao)ev{uR=g!JBOp`aO3lPALH6{y^r$n_c!e=`_uY(DVvEJ2})qUY`1vg ztNoEeg48EE1q9uFyHuI<0VqTze1WBbO5WxHV@jVUP&hZvoK2_&7}eF2f2ah2cB zGpoP{d7Y8Ld{ER84(9|W zHChj%32|L=mCFYDa5lSc(w=Y}PKY9xm^H!Hp}od7KvHnQ6M*L1Q=OBxMjN(Kcm~Id zX8W^igW16HeRnUVMY4S=k50`-mlc8Ko3+0%dz9Yp*QW#WUVuX!NeNh!fasKZyj+Y3 zCU;Zo496kBr1=--&kvWu|9%}w#To8?b51df zx2ZA8dG)Ig`$bft;np$|@ugm#o%_o<0gNQNO{SI#B!0*y@_G$C@{v4b`rPx3>arB) zXu_}0>Lx{hMm-C~?xZjF{vW%I6*m9=_V}u2zpI{$#$4>;|3v4n|9vE*|D$OYmq{UI zb45socJ^zE$@~vyH|J_}0Yf_@MA8UGx* z&Lix7zy6@TpJKlsb^cyyE^T)l_hP^EQ}b-lzki_O#MY;C`y)L2eHtgvDUsZ`w&(2U z<_COl_{Vp!RPOUCuep$xpK}Q=*Gdp0_eb=QAa&he!e|-%zAyJjaYd8gIO*!M=DsKf zTVx2J?`!4cB)Z5nlPYKP^zePQn-PhP)X@zU zF+;7QrGHY%Ho3A5_Ynw!uds&bbeY?caSl&oJC2%6A-7GR8Xj>N(L0B zq6Eqym?-5ttSI5$!4r7ev8iQeT#-ABiiL*l&ZT0I6wRV=jR>+;pIFF*W;~TEyUc7c3E*7o? zbxobp%>RFjGs0b-wZiUo_`j1Qo`%|G-KE(@4W7rS>N@_vF77?1JGoe5HW56mb{EhdUA&l=!=X z`E~2+Jam+Pl$jM&Gr?YifUQ?6P|;wD0}Ew^?$3rjxkaf36Q=~{>fotb;8e5K|7XEi zW~M7*;_5c(XC8FZg^N&YxpH$Ur3dnxL2a<8Fa7 z&<`esNFoPogR#=Z2AB>zpH93Vg+ljPE=%F4@S!ylL;Ab8HH*~r&0)!Oz; z#|HuD^H^;jTr(I>C5rz~Plx7N`8n8LK6i(_=k)=9o?5Uywgz@!oW5bKA1?t=wx8v1 zu0y&)-uhl{6cd*)E8%+1K3$nex9Q*Wsr~3S z(O6%1vn$oF$M5xDpUrb6eZMu&+y6hC{jsFYUHH?V-QK7DvewV!Cf5D;*xvO9g~vO* z9Y6|kUFTu4cC=X7#OYyey1Ewk5fAvFaVqQj`{pCFqq1(_vUuwb!=ronbZ2Cz(_A97 zoSlxzWTuM^n7sMAR+lw>eI=PSx+m*Fb-jMC{2QfrCG727y|rI$O!xha>U{ORO!h~6 zwZpFCvAlk_xC^OjXOhFyZLoOD2EM27?(*O^cb@w&I2|-D7ChaS){i^L-RHpvlq_cf z_99>5r&Gnvgr%GNMUUkFT3v0&$+_Iz|2l%Q>+=#I@L5`tpNWa{iF^Os6%J^{{zyzX z_eAgbi)4lBeK(faYxln~Z&1

      n+|4>``PEW!EHxY#dzva{rr84=k}$b0EIeJz?dg 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≫H^Ycwa7aBZ1mN+xWDvWMD;(;dVTiobJL97 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

      GG*5Adef#NSjj4x%Q&%0NMR$OZ|S_0)L7> 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�Y>88%4kT zKbIOR2*dmng*-@a?<2%sJg<~A5W(VC7nclIpvD5tz)k2Aa^?Gd-_3ySUE&Ef^pdKI1Z{9 zS~{y5%BfY|X6l$qnJP4t)hFC#Ag)mV*XH{l+TXJHd_IrP@_*^@cl=(b!_4>#@N~PB zb!`Yn@q$UPhBh_`L^JygN=bktzA+#IuwkFJgpyo?>5Cx(=_~wKzxs;!(*`f}=dkE{ z54U&h|J8n{Z|b~P2mC*`(bxI;LRoDj+B$tG4?{l%rQZDodU};@Ixe@quF-{27zbMj z1~H&*3>$3~!h|*?n1nECp@TzdHip4~3}YBH2zLJ2Z69zy){@$=Hd$~JU^bF$NK9!6 zqd<~@iLoR$fEy5y({4rDqZP~^#mh=}qxc{4Fl7AXzmY4Ya{a{QT(0dug;^sFov-o; zE=GTvc#ZySMvIbuGb-jeY!23sPN)41z%~ZXW37M|sfDm&5({f%OEwEZfXQ6yHF^BL z5y8L37omBN!a1Q5uBgYPT6o#nHTJF`58>t}{Or+g0N)ZfA2PwlgwRF2Qb&O8Ag zW0>Y;JT|DIo7523S0v9ip?*Ewx67&L-yiRXyPsGOXjKs`j0MUt6a>(g?Pb0+O}#P??k$d%$v4H z;@w`Z`(!WC_<$}l74vil;;p15l$QjXdx7|%t|Tpa7s5JVg*DaTXzB23EO4kSSuzOA z3@^{*1+a^#S6qwq?I@izq>@P_l1U_zNfePuAd*UuJpYIx?d0U4UIsr9y|OxGv&BcgUMJRDtyWGIgl`ll z2gXGD7O2-=H>{2dI(ukad~_6pX!=OpE`5KTe)m7UsX+|C^o~I^t0l2DyOm{ti$?t# zsrl{|%7f5f|JXhX*;h?1FQ|^y7C|r=%c@bO8Q`D1Ona98i9QuzdjX+2s5J(GMhN)^ zj494y6M)8e?B$05k%yE>3_LPM+;;qe+jUrY=w8mE+>;bxp@vfAs~j?fk$b1H>QyYW z-1VrH?0TpDJ{@^(7yb3*Rq(wJ9RK^7%J=rW9bNwi`TXy1W;m`2d`o?QuS^G<)#YK} zVJq|g`TrizPv!y6i-^IV~DcDGmIN%rWXH+)Q4x82ZvO*@oHj)>| zupm1PEa@!uqoOh0d?=SGdcwu5N+pcYgLm zT~S<$WU0UQ-Uj0aF@qavp*Dtl?lR<;ZhzuLGk{>Bi40(YojLN);d=|ps7~jH6oG?4 z!Lg(CKe-C5h$E0eFc#lWc{f1Qv?=6{_1#;0%cC&6fV-0iStBA(_amD};ehmAHj z+l+)Z+l(a5r?Za@`agEdlz*KTHzqmOHu`2PVaFm2UI6Zs;8yZL=LjKc8>G$c5ieHraWO*X4QM(>7e!VPA-m<4%yDZMODxYKW-f_g+?#O_30? z#-vc_hD$xu|35jwN|>PB!Q?or z{UQ9(|Y%lC7BW30UvOM zb`i7&;}5mo9u980%Q*rB7z%e?x2DKJwDYu~=<4J>1W4@qJ1_WcYU#4{J~tl2l!Dj3 z+}t9#-o_4-Pp7J2IR+>?1}@fwNa4 z3yzE{tEj{%3ZvuPPknC>GnBlu zyFXX^Y z7K=u*@w{S}^F^cO{`gH6jbz#_7P>{v!4*8n^FcwP8X?mNd5D7rgs($HG($zBo<^c* zu6_CtXicKgXtY`^H=lHk?}Y4bA3uNT<;xZKrx3sDUAdrBY1Ai4Xoi8LFvfr|!|KRm zdy1I{W%3N|nlzmKQPd?TQfj`{h8S%7Td#Ad)o(4mbz`Uf-=3;}pK!f{d1icic7A`v z+g^Kb@BRH#_@Q#^&&@eXu0!~<ygoV$0X;b zdjqfB3oxNqeAr~XbJI}LD{#gzZ3=B5hKA67*#Q8-4Yg+rmnwfBZ~H}USH6X} zYDGgyFk@iTZ4ICXz#CRHl7@g2X|za!KeKT1mHy>jbQ+sVK4#|mIP`L)yPIbloV7c$ z!9_lgCQ4h{cPP#O3oMLX#xhdHK>}fZLLdT2AjniS4huLYx9otHL2gmSA3G{>+}if1 za(5?kccal;ab*U`oKAj+#S?w;dBUc618UAOa779)I zfaq4mNs)I}H&BGZ#c$LTazs+K6Y70i6{M{Z z=GFS5*k8kJUv`u+Po^X-3-RIAh4~R7>0j{0`4(cM3g5(pDN_X2ZpVuB1#*(AT=}@^ zrRCRCmX5~G{g>y@1KV>RgT$-%RE(1-w)jgqR#r;ewm3 zaVFaUF-U;G?*lQELl#qA55$XR!KP{rPzFr5)y>NmEJ6Op!Gi`2Ah`8~b3cwnDwP9 z%V>6oXmrHw5%X5i?LDgHytTADL$o_Xv^!4;Z8SRg64(ugFFUDROJOfcTMcO&32Z1M zVJ(ELN~Tzigs$bV*bsIE9Z?$%R0K8hQrHM1VW%Sq4Tm4FK-gxZ!`}L+wW6E9`wg z`px=(PwD+XTD=bN>>3}sfh2uKl0l-i)s(mmXV0FInM;!6|uFQa4B!4)Os?@aL$&JZx^{Uu8%k#mQu z5mqP1*BHQ|`vnF;-iS#98Z7Xz2$0ek&<&)FtjBWBrC5 zY(7^%obR`%2a|qK{g1I;SUdUTI#}`r_HlRLfjjGG5_@q#avHJ*YW|@m==u;mLjrc> z4|B1XIkiee*Q?fYi1OHINH@LGB@A$FFFPWJdBU_L*6tJT&>{NLry=l<uE|K-d>}P0sl8K~f}vE-PPc;2?P`SdbuY@uDyR zMjD3V1%dRW-|q@bCZM~L!Mu+25Rmb(L*a&6y7c^r{-PgK?M4+ikn#QDzLM}a@!dm& zX#yNC$~LXVDnYHF4)G_F_q>UA6=;Dn*SNcP1ASeGOnv$%zUp&5Nq5oK`opDeu3D1( z`~WV))$b#(tb@{D^<6e&JwdkhaibiEbQA{e+ylXd;lbQGcZ%`%9a4-YR}4`LW@WrA zY7QglWTC)AWsu?%3QJR**C!kf!Dmy!qX#N7LG&9vplVv+^QlE8GEy4EYehhF3=h39 zs!%mmK~x3|&pcPcgo5xjSQ^kKaUaPCv_W7&U_oFX@G#xi$iO=w!o)maV5E0QozdMK zJUPb77yTm-4HJfN|BtVXJTy)o8aQ~^k~Uz8TO2$zaM8mO0hP=-(q%Z*(i5OVm5ly}U)Sy6IOc-hS^1I zx-69ZIn21w*&MG|$(3s^D=u(LAY(ZvR*pChI51prA;16y01z(DKg7(>89UX-L)=%@ zt$t+qT;GeXG(pK|Ps8^ah5L}`-E9Cv5Ia9-ex0S! z{;S&kt;kIbO|~#&K{yB#O{5GMhQW!iH2-Ivw9J;jcb=QKX5AbP{ryR6&dljmX_vyI zQ{7Z(%U^7TuJJTM0ziNa6bX?4m>?nn1Q`-RkRc^p!4&-OC)>)6$oX|n{f;~E-~$Xh zUHM_+mN^Pc)<7)3hue>L+z|5LoGp6fGs+#kQkXak8~S2kS_Vux|82$p7)QF(mN5-c*#lM)!JbIL~KIe8KL-yP|2 z#e)rp{(L;h!lU5(A5jrQ`CQlKFGJz4K>a5%v+b9QLL!s`knK?(Le=F0Rh52;dOmThT_kKsx?D*nF#=H(BZ>Mkr zf0M<|7lQI3t;f9M?Ah%V^d8I>kk=ewW4K3f5D#AZAZ_vInhxCYzW{yq z8*+H8u*c>P9$x$W@qH(ehKom#MWV-y7-5Du@arAAK0?LjHt^u88YR&Q_yCxOb?uS}hjg zw*j^}_8+`ErVFnKhXtdGhgzHp>tYyThrBx>v<%rSP}nDKYYoulb-O4yvv6`po>Cla ziQ;Bl7WC(s4C>+y<^#sd>*>$VO#1m=KeFzRd%fB(@Avca_PV_On$FjnOQ|pX@!x%Z zuBp2+zX$(x_l}NM5A^!)B=7E`i1o057}{A;1850ED!KcP01FCrjpm zqD|i5WHpireeOW%N8WGXtW1*B00$kExAOXKD5vZ42}4PVrZKhL1BQN9t|m6wB%2u8 z6}P`+uNGE5>m(r(ul7d?dhCFkLP@m7go3DqgxWybK~o|1o14Ukmk_4`11?920|*xW z?3L?{Ht50tOr{9TmKx>Z{FBlup&!~-d3}|708#^v*3Z~QfhX1GG+Gg4sYkZS`yd`ty8QZ+zNSgHzN=SQ?4Ki5!CeY zMHKk0qZ=X7|59=OckJTV^z8UkBK{nks9qP=`=5F=S?Ft5>Yj6ddN7eWTRjw`C7f<8 zk+{3Y*-NX7^d4%M-#PK9dJUyFIzDK!Ce42v&B0dotTz-L*2wCP8X2V?gV94DB=!dh z=J@WE-ETR0KB?R2-=t)AK2y=RG7fW2P&~e)v0Q%8^s|oX-7KNN_20^VkIePfbCjQ^ zBWvk+Ms$0sM}7=0B?K~{q`UmEWKk$vu$fmn`X}3oXw2lwMltW$(7Z6&92VrzB4YuJ z1`gTrm6v?foQaGiKXf^T0WvJ0?}yIO|ETD zJvNWkMWWGYv}(6D#fHOdIXdYu=03vJh8SUn7}o|E*^V5shzrJU)0G1ZeNz9)smsvl znsS7MT9uiA#S_5N>CiFbUfXaw->;VUz3dI=v&ZC|?|PBy@%lc#*T=M#Z;Sis^7nfE zSx&OqPUo|~;dc7L%KV)iJpWGLwqNrL@`m~NT>f@*?AJi;ESw+b-gDXNd#=Vr{J!$* zRobiykcohnbh}Dhzn?FmKWMnvZqPU20ho;-8~}09f^o+HPKm&AbsK;vBmkcN8~{-e zTjtN-;H)1H%1~r80u-b1aI!t!9PFtD(K3|FJp+NTti8)Z6a+XMkv>V9AOq)%7DQ~y;(7l2N_4ID){NheM*Vr z%8C;!s0BffilKYCed|qt1Xh6bpdLk-$R*yV7>(Kn}Wj`V%9}4#{J7v zENnnrZxaNO+X3!|LaNw&0p6a(QhSk%$S&`Dl#c)%(H+ybe9?2d{|9j7S^Nq!ecSgv zmx|HfSy9MAPaDZfvPGRoL69i78xr1mQ@0Q_rOgocEXaW5(NJ6tDB#z8d)q@TN~K;4)D1)9-ri>r?T#P{k)bd{f}BJ|g|_l;6xg#6 zK_ji|MMi&87?JlAu+134H_QL+xlqM7(fPkd);~6Qy{}6@IWw8joIPVJeMwKmzdHll z>(5~_Jl8d=Cz}hQ<-GSKivAo(nFWontro4wb3V>=KE!C8=tItos{-(&Ll{{@>!L5O z<{<=bNc^iFZ<~d7*948}L$S|=2*&-U-6BAGEF-2m=aY>LWDtf5M{ktdxCmmbMZ{sr zfCzj?W9%}IHaH%9&cDprHXlyg6&oAnm^*jS?igc(^aBlt__^R(k;}hoy^F^%$K`oa z##ppNMWWGRh8@vikDeWKxkaLPZ5D~#G+i*7Ef$MJ`AxxS@F}!vBKSy64Cr2T8p*U; zEf$HeTScPLXtY`(qSrdEptM>o8-!Xsax6FMI&oPKPQwlhC5I*)7c#@QEHK8y38EaB za%7;BX8fVCd7%hA(RRbwDK|3hCY+l!5Vq#gdfzwt;Vt3tKhqy=?3a(1!|!%|E#76z zrd9O5ynpAz%juc{krM;h(-|GF5-{WqepYBY4=x9E6 z*uZ#A9r|vxSpHw-Q(wD_ug+TQ_P9OJ&Q4A@+7v?C;tTga&l8u){hbd?wZ8N~0FIN> z5(xp={D!;my+TLOkU!%8LAbN#v-EkdN9gC}J(e%Gq1x15GcU^WyvK4Znya`KmTLU1 z1y}OA1y1C5yT67j|Lam0KbdU3@?Bg()uTZc`e%gPFB~RCQcY}nH!OEHOBb8mb@k}6+Y%( zPr^ul+I(KVvZdN?0LyF7Ps3Ur_aghv5=k7|5=JTV*iIPQbL1$4dH z`PkvNhb6nsXKePni^nsIIH$5V6+WnT0Pid`qZX2V~prc*nB$(hwjpBnUWaV7f1grRvfW8 zg5TWNC_N5r;b?tq{<~Yw_`Y}ez0iM^o&_BQf1kdum!t0L`MkoDKZmx;~)4cDz&`!t2>8W5LF>q-QJpnO+ZFRjSI*LiTp zM_C1jn+ig8L^OC$*}1-c&)@L>IQ(zxtA*jtk3+qF8$;nf>U@&<4YV*|(?=q%S$Mhm z@q6zL)Ytp}%FNt|>aFPsBKXjNv55eFxAm?4SgY`rZ%LUqbxAhU8xl>TZ9_uZkmKqY ztBaem_m)VsO#_@lX||BQUVKaORc@6huA{)9Z-BT;4Y&OwJj zJ8-d!!o@q#=`+liRP8A&aCYaqMTc0rFhBu3s5xJ9er&uM6Wfeu>_ch_KyoJ<_|$=w z4HJnXYrr9pJ5m`@+s9;M9FIo?Bez7D>$bRv0T?E{pJB}KwHOD0*&%3VfFYE0ybuh1 zq4%!s})F+!g+r$RJg7a&OrO)ryYh$H?d{bNNqM4$EH^tnLdhPVvf28+zGJLu!?ZhUFNBMXlvEo;eVTL~tc3O0;qs0Ex?sv0| zL;n!FA5IP;uF-vjD>Q7?kg8ET(%L1|O?dGAWLhnBp=Y_tqq2FBAv9V)32sj3aE>?8 zlpBjEO%{n|v}-Nut#vm)?G2)RkoUxDms2#+F1v5hbp@Maf^CKvdeX^pq9})x0@z7n z1{m4*C5PPt|FLJKSDRK5#m&H+%$UR!hDd*OyF-bKnZ-=3LPvQ*q9q_QtCizr1P+ix z)$#DTOLl)}{d}GOSChrua_98FKgs`v?|1Yp>e;1Vr_NgL{RE~(x#RiqobN;WD7@;Z zFG{Yju2awd-)Fb!{QX4!lS+TSA9&-b7gADDK}lBuXro1YKN4EOnOo^8G!Yo9|} zEynE|KDOP^m~(`3wye_~gNFb)X~zk`+f_DLPf0MmfQe85l^nb!UxMd~A@%YAMlqy! zN6h~G`cJEU;U=<~_|H6g3TNIkEbYJ8_}FkCGR!6f)*H8QUq}nA3N)KQnrRIK280Y? zkijOC0Wk<|)dV!b4WYD=TS^9X?12Mqu?dQ{xjdKct6r^&c&ou>D8V7IDwq(&CNZXg zyvpmByZw*!C4&9mMLnnKt1u{+m|OEIPrbzJ8VZ`-?dbU>odYvdqQ4T9)DaRooRx< zB`JDKIRcQHtTr%#ZolWXQR%N}WslPnQCk$6w_8e5=>rxhk&ULOEVbRB3F3BD)sgc+6F+U{d1B-MC$M(=X4)+(dkC|Fu z0UWvJ2Y5{Y{0fnjh408CG2Ft(@ivK2OQj6#b{6Zbk=iCfKC%$-Fl`D~O{K6YlUnWp zn8n*b3Xh1^IGVvi^i9h=d>Y#OElRq#T)~Zkn>Jn8UZV z3E5P{5lXE>mmjk8zW>_4zrnfu;mqlG{#1QlkMU<#<3mR~=$PyLy%Jv^$Ftd}^LYGy z{_mE4fi&!-)H2I%8{Go(gunCG_=;C2Hv{(dSSx>(mXD?1%+Bn5@ zE+47+nKz5fT-=(fTSI&t&B|)r-)50i|8R}u9RzX5XNLjD1Hd9LZEt5^?8G=0@bJKy zNLXmU&JH-RnhGFFm0TTCfms%RUF9mf-Kz8;iy8rq0&GbPVgMw?3<0nbY+U5zU7dRW zkrYRCsKQdpQyE5*v;6WBWp7;b{p#oLCzHuPAL}U}sLfZn5?|6y33JT-nUC!QhS&8|IS4@LW5ZOc`*JDL4f%IJ6)o-Dz+-gb;#knE=+ows*T8N1Ywn z{3qOGN%q|qEtKjC7_|6wd?|>idx7q0OXMDJuj+f1Wiu6g5|Rhxqwsy-!$M=Q7|goO zds;a}vnSt_yfYl3KI6TC@#Eq__*_nE-UdDn#1DU+On6*0n*8bjeqHNa+)`_>72T2g z9UhfQNf&!RB7UqjFyzKP2tZp?0HO=uwGT(jM07Y)o$;kvecTZ1n_TEsYY;4&tCO5zv7*?AmV{k1d2O~R} z#;)j$V6MU$z}4f;elda@0%IBFJ#E~NIEzK1(P4%dVU9DeFDYcV2;!rUO{3O%uwPFp zSxzfBEf$MKqFdzQG+HIJTtaBI(FNxSEf$MKqFMCXFGUIOu$nCr+ASRdEgls=q~Mm( zXtY>-Q+MwEvJJ4qzWvFD9gqcw0EUYUJ<(x@&`MHx*j*9QVk}r8%G}C~x!u1KclAfZm;y8uRqK8_x(TjRd-HHr@s37{zvt` z{=Y8|fj8qt;!;b1o6YO+wV8STCG}9y&r3{xzJ96uMpakB%XI#!m|GPH=R;rfl56W^ zo%{V)1*U4vXqtqSnwFoLnJguLp=WZoa1MlyI1;dsDZzZ;0a5^Gv+P@lEy$xYj-;|5 z1muy!5F|OpDSVFJBxt*2O5T!L0*fkr`{+gBVo9_nhJ@2>8wQ(b1lZFPV?!93R6&fnNQEeY3@NYuoR~3)$(N2$`-xedN$0E)2}2Qg`xzaBCe<1P!#rgdWq9Z%J#fMt zzs9PnelrZ?prqzYO6;uHn-a;);}&b1jX>Y)=A<_O2;l1%U4XWD=|Hawei+=;I4nCN z(P8xE&~f82jK*~G#i&PKIAhX`r2%$Q|L$=vlzVFl5COi?}d%4YgQQLH|hDYL8wnlbbBo5oUsFJIP z9_HB5@dzR0yMKWK*LhG7`#3;_-V@1pw8Efr%YyB)-R&N`+|xR?s~IysNP;{rtjE6Z zGo%wVi!0_=DDdQde1l|2^4{}iLdg@aL<$I!Fi#C;GY?!uxs4TpHG0qOn)aLso+nri`qE!E8sh7qp`0*>y6ev}Iy}>H;QILT z*#Jxr8aIm2pA=T)ZP&<51FKr-Ye6X5-JsOi4+Vaes$zyHy-U{x7pjBE2_LUYR9Yz^ zH^42gL=;JO;QyX@j>kn5xqVblj~fR=TyZ@gS9_*4dCiw0k9Y>{aA(Ddz6pWe{QONi zZrcv;)AL!eJ5eS$mK=rGZh|DBAZ{>k(TClu@V85~%UN#?&6gUWqj?7E%vfzhZU&7I z=0;`mqlYb$ExtRv+zw5*&W1kI3^vDwCygzL4$bk*FzObM>P4VlS`!Wn3^2#n58_qc z!VJc#5+7&gL1>oHF0>|#N7Ce~i{ovtyJe|&^ssx@X$&`~{w{1U~eJ`$HvcJdAW1R=D?=36-m6Vk9#rmv&kI&x0 z@=fn+3jy%1EOhuk|0k&4Kf9QE)ZZ>uZ|Cg#!e9a5K)BrV1P@T|EKhn{oS^GF9H=-W z!xeA#(yCcZ{-=lVdkGtVC9&K{zIXP|2N)vTH$Fxw-kRum89G=D>y+6Oj990U3RYMoE$Z&Gs1Z>g>tt%R|(wCr`8g=8bs+} zwDJx?vI}00)|iF9Czh+5myN$x_Sa#t0-gv$aae33wve$Ah?Z7}3(EB(z zQeErYAdw4R(!LmAe%Khsb7mk!NMIq12GELAF|K2;WR1VeVdsBKVa=i&ZH5@@-)1v~ zqS0uySYd`3W9bK2P+=uOytxy45g2Hi~p{^4Y{OIjF%G!qa_=o3RU>!dueA!Q2z#UcbI z`ie@1Zy)vT_ok-hHe{4$>ZXXDe{jz)F99(`N-+ak{l_X9KL@Io&A zd*WOb*w9@jtx~7CzpjhonkVkYNojNPtEKK?@R*~9m$_RZXjc8^-v8E{Wd*|2hw?W1 z_PS0wTD5wz$?;BsI{U-|fEPubgNl57S@*2_i^W_xq4i>Qx0T`La-WO636FnCNiL$_ z)8&MIRv(JO1e-t=u_6XAV`C7S5YX!3B`tVI_E0!HbHH57RXiD0OI<3AFvWjdNh*^` z2qe!HVHy=+1H-T^VpC_B$d!#0XeRsJl$N|?CNXBlWFBw~ao*XU>aneBQnWee7PgY+ zcJ*N}{+!be*s$}3j7|)?xcMV*;E#g~-e&SksF%DCaG0jhA==C2jxKsA3r;*#1;H88 zxr|_7#5Ct*a`!7zbJ9lSNrymkVW)N=T68;@GGHBCG3Yr$rbN2J3QXm&bZ7vw24WY7 zyiRPH@Wv*@7bC8F1PEI=>5mlw2GoJ22HK{j4S-n_+X@ILaKw}m492%!QsSM9jVKGg zbb|bV5-JR&*20vUU@oNm2?JDxjR*6@jR+bzm_k1o0rn4EoPnVW&a8*tM4^v_OgbCB zuVC6NA*3JEz8NW8ExKUWYzTq?@+e<4r`k$3JMxsLyOTe7)d6icD>@Jw_;bUIyKM;A z%QMZ-pyXslIVj*amQQiBmS!!L&RcIoRJ`f1e+l36q%SqM+Und&2tI7Cw=yDu0xj6C z<=RNywg(~*WZ5W?LbQFB_@0+dW6wvv|QmdS}hihnhl~` zLZWb5Epx$oFj_4ZfwfI0(S+J97K=o-i$~=m(P-JGlW4+k+(Kc$vxe$6r113YU571b zVVc1-ePjzmzE*LK5|pHy8v=-7iHC8{rQa8d3=q-9wxS5cE~%#-Ku>x;I+(~U)CR$v z5CSG3dq_mhx0Vn+C=scMvf=IKg)xt*{{0g(z}0@ z>dvpP(c$g;dp|GSPwoy^x$*G*k+OUIv-43hzS(coBwylN;|p7A+_?yvI}2wAYPP*?1hzeFGMc5b@5_gz~lLuQOs`Mpxz?F65xBp%c0 zcwg69y=9xUI5erRP459$CCV0X6;<8)z3WxB@KP9op{m-3gub)lkmXy01f`iT!Td2q zQsa-)XLkUaVn9jv`C!98&Ui_8D5;`sxA!ALt7TgXo%vMJh;fTrRkM^=p3f!)Cz-Sj z5G#jNzw}(|r$J%lam!xAT@cN4w>8bya@RHXj`w-IWjr!m^61X^_v^?99petHxbOE- zx*eJTzyf?qQnEz3{C{3*rWnxv4JfopXtWDQ-=fiIv|243a%~>57K{Jk38Gs?qS0u-f?Il5RznrmPbA*p zu)_>KyuUg15wj5|ob55t?2a%n_@<5~%^Y3VNf&Rr30jF%mlX(5Hwf8b@Ck=l+K54j zslD&Z3^0FM-)%wRkSCm*p8rJ`l`Yr(emR~VhxUSfT(6~astGTK;X{|>wbJoR%6t<} zspNK+DWIO2l$clShJy8aEHj^tq)M+xy2#`*uRglPQ~%F=nqWGLV)7Aw?}$lJJ6vsQ z?lT`qnfrYF_vRwqDxK158r-sVXZ9TXWxmNRW0t;4D2U>K8I?7TxNrsrxI@Gy1P%ZL zk+)*CKB@ZmcWnSomnX9o>yGabK^{^g2e9OSMc}HJNGq8Uaw&Q#GI4Trlr=My=_;9W zzBQl}m^*EjD~Ha`?*08wow;Y~nI`|IuG{{46nQX95CUvMnH?-rX-sH9*a8S>5(r`& zDKh@7^UuLuMJJbvlrCCRLVeJ2kntEb#HnNnBJ)WXQxdKCitD&ur~eqk#QMtb{tNZ@ zHeQ{2o$^(FLpHkW`Bc}P9)+{ho*c4Xofjn=TvpDx>*mhQm11g*A{r%k`b&SKW>uMV z*Qd9Rs+X&ly|!bPysOC$-k?biTK6q+;?noyj4Uw)Ymn!uaX?> za^ckodr|D8fsbe~=DS&VTlw(DH21ZkctO|s5Jhhj%Wmy8(hU+^rhmpLez z-}tSh6aL&hyQhnEd*jJI6_L7hy&h$CGlPv>w7WSuFlj|Rrkyxm zhQmw;@%yk_0M~pS!;U%2Q)p+gt~qE?aI#lz;6j8roKVwl3m`z+Xb(B)z(CmK_UIge zo+=9*Lmx}`nCnvY_rrXN`#-oo&x6&>jAc)K9@Fjn+6ft@94tx)hX{qXl%&BQi+@7y zE*V!#e2gkP(FXJ`L3z&EgCQRo6yE{AC_0h9D~G06c+%`?D z@7hVOYliE6OpVW~JGT*Jjj_ivoJR&!B$8SUdRTy7MS?k#=RuY%$dIXSc^zE>H88DEbTbhigJ(@jc;a`6Q}MKPTdSctH=@|rumq%Ozr2>N9-SU|9g2((y5 zgb5GjCPQnYDCSyk>_Rnw#wO7$vi%U>zI3t&?%TZMxC}g%Xou&QL1Fu%!|%%sFvA-^ymn)# zI02vVu~{8~M6kxCquK{n7oc0^>5STB5F=4A(-RE>CQ4~90qMf-Ht?od>HJOjJ+t1Q zboI)&yZck0FD3QuF86bR3R_vu?i$K@)zB{Nf>-|em~@nTlO2L<+G;Zs62H7Tw%^NVb>G|>0EBmLbQ zUBz{_f)0W@?PP|Fyuhu9ms-Gt*G=rm1=lo?yjw{&kkbHTNbB1kfAp?XJbSr09~Qhd z$L^<4|MKJ(*Zyq3JJo(#>aa<)AG~5vF)@ry18pY3F`!HvLl~Pt+D(lOrqgI_Z91Y7 z8)=|JV_=gVjRYjA`J(^2q|3=#Ji6cn+CbQbG!1|-b7U}0qy^~8wtbm~UdB%Uatkq_ zElmOmu}$~B&+7uj!nPBB31YGpOe$p>MCW>1^SzRjeXkf9_Re1mDt610oc~FMAe>b7 z<6MJD-zIj!jnyTF9i~A%adY`fZ-qyLLK(WkNwS0+Gk(d9C3MMEg}a3jm{QWpiN z(%f{XjzP`7%z2z!$OKWRy=jVcCspzzW7k`m8vQ4bq>j&Pl732WX{i(MP4)11$d4c7 zJKPXpB|LJ&lriMdT65Z~R5}8kG=5~rUbIN2^q!IC2Gm`0Q41!9IY~!ciL-}^VidTa zm(o0>EBFv}0A#U6h=R?fzr6?&gmn6br42Tw#LKC!J>N`~y#hu#3L^MKV91VOb3_bJ+je{t8 zb}-uF4j4f5uVp5^yh!%uN8Pi{_PLlusm(lH5m4-__98=>=wxH+_{ezpf6iaBh`!x4 zJ~cnL)Q8xY3|x$W(5)i8FSoC#vIi?X9Wuh3DPztK7??rDx8F$iK-{OsKaitQ8EAZa zp2q4f74)~$8un}XjOJLm<~cXmzLAQ>jraOLm+H1R-)8$@{>DKz9$4nRoP%M%6{A@2 zo|GTpi$$Wt3^C7!KVK4EbI`4T*dyj9Ut>R7Xtzuzi$uOD7LBrLG@C@ZrqMkn{pfl< zeG01m4HvhC01rX%zWC8-msK@ZGfftWZ5E3~qi%_1v~5#Kq}Xk`Wu|ZOwjN*)Juv^m zOgS*^%Rsdv!wfLSr`G4y_Xb#U4x{-HxkJ4#9A4IG_TJelb!Zd}f+YT!5)_CFV+h^` zzFp@~_SMwevf6{kO~(25y)@nVKiB8a;i&OY{G|3y9goMu=|$Le?&&-|-=o?7k6=xI zeZxKH?0#VVZxG&RDPQOAihtwW{j+X=dAooGYNEeU{k6DK^%l-Q{pck;|986E_1pCX zsx$pJF&8f5o4U%$%5YAOzWO2#I1YZjUY%VXZ%y8hzmw(mhWA@<7h`$Yd9`sAGBMH7 zHwZ{u_R>@F@UnX%0O+%XF+A`g!3_<9{{|pm(RanZVJ6dkr)A!yKRp~DxzvEY&!mO1 z$?`cYBE8(f_AT*O1cid069AZ&*1BN;Y+PeO0}>lR+8P*vu??_IB-jjSV-gb@8yJ{? zqeL{=elZLPXd4D5*uY@Z7&dx#LaKF3(iGDB=#5O-1eggnfl-Jdi3i|uofuM5lwFXo zZ?v#NnrRefohdKpSBDEAmcN>^^|ez<%0{~ECuK6}7UbF35*)N3voZrTC-PwG!w=T)Oz)7pjpAb|`m~GG4mjZ#F1Qcx`hXAA9U~WAl zt&Jh&i_e(F7%l^)sPIL`z(8)%ZkvV_A)_4jhmOc}$L;q{dvGBSAVF8+j2FBylOUUQ z#EC>Jp!AlgsZ*c5&N--26qHDc_XuV~^1h`3&WH9SBtD?J9}>|Whm8SG+JrwJwcLs7 z#7FUK)4viY1KNr~Sd9sw=ay;inLa$7qez3nK#6G{R^?H1SZv?U# z`yD?S3|>!NgjIW;0a8IkevK4R)5;&@_V`=B`CD?M;pvnvA_TT!Pr}5)CgFv%iN(7Z zFQB7Wyy_S=CUxZ)4ZNcS4b1~{ECOJAv{Ve-I`zHTIqwL);#0*saAFUtU zi$}#p<;x5|5WbkP_w0daz1${_Ni&Pq`fzAXqg?{gp*D~DMWbrqmeDnfXtZXtq4}^{ zKAJa3vivBqggfVU^a_IqS0aLo;lRqY8c{8SNSz0{6?|{ zki!ntvLyP zH0g_IVYJYFze$$(e4g%;s%|%5-SYmrJ082Q?ellKT=i4mSx=vb)!TU7%J`;y2)=sg ze-KM9YP|AO&y-&$x!*(Q!n^mEZ}`kfPq0_=`O)#b5EB+zn~}$TVKE=NFRS!Cr4mVt z2lDUApOc=QS!tWG#i*gZT_I(aIKDwgIn5)+It&gwt;w$Rf1W;eHe=DW)#)=?4p(XZ zQ=LC%yJR_a>+S*j+3x>%eA>?EUu&=5M1jgq9S2;897aR{N2h;@o%aug>gVH+_qqA* z9+&LYtNIZ_PPqN9?EJ)^m8<8Y^t2Qj6EDOuw2&)U2^IM`J9N=RA&7NKM4BC$ah2Tt z1XR&PgKXA|NUUfZK-+9+Y(rq!fwl}vY(WjNHa3JdlNu6i4R|np%&JqqzuAJj3-fWX zopa0eQ~k2nKdQ<{IT4#`2bqy zgYj@b8d%}#M+NLGy~J;i(=!*-wBcfZCa<~I?C15ES$Rv7giHb|_K^tkJFQ>gTQQ`k$- zT=Z8ib#(J}dRVTWdOZU472=mG!_GS22`+BSCTeZ!h{*A0XTzzWn5_f|^gw;)7nJ_} zmgFCdIWkv*5QJ{!SNPk?D~|r9yMR{WDLU3I;3`@<#xLysgulDhWcC#*%&*%cchcHK zwvHpeXinwR+3q!A|94*%_?Q(4Tgx&uKl%P}uS9;YRw=(h2}q0Hu=X>rvqVoglzMy@ zVZ{7yFxz2I15{rhxRwFNBaFkU{)9nW1lgM!%emKLFug zec{{k*UY8Z69w=qMlcxbje+RKHK2OnZb%pni5K1xgMbD&z=r<&QSIh>ufoQ4{YTU!@k0l8Z%#JYd5NeSqs9@QxY;`Ni|Qzba*-`zTBz!Y9+hNB*MGvPXrs zho3~f3N0T&bO`y-eI!~r{v!}#wL8uQbDst;H&!y8|=Y?(BjhRB|Skyk;oLqj09ET2z&-(l{{#eq_|oIpv@ zyF0?_1Be@KjnQsAp?wkV#Cd!4e7;X+gNx6epT*_6@33!!_VuI^Y;5;=JqUC z>HB+r-{>k2G$)phZ{bM!==XoV-Z|Kv+uzE=Nj(SgvwS`?%D>T;7Z2=xllAv9=f_ll zADbpN4lY&BUk^n(wfL`a65q6w^J99mMd@P^vP4Z?TdHI{*P04TMc&DCkyfhx6@8K9 zob@SP`v?KjnEF;V5V+Wu>>n2$l)yBry<#sm`5M~Aa&cWNEW{)H8Nvr;G~@ub{GkXx zBYijRmX~V>fsqBrv)frI(h5g|CHyXbPoGZ{hsIr}|E?Pt2nIAJHj3g3AFf6p;r}&n z|8NyEMTjAw5ZVNr1e0Jkl0cgfBsK{)CWbVIgxWxm#*mu^$uR;5U?H@G+HJHXlYUgS ze?fzHX&c#TMrlLG=WQp~_7e+~uL8d%H$?K3jCB+3bBqj?Rk^4O%Y(=Sa(=iBrou48 zx5lmo9FApEBEwOQs)ySwi=8QI|(vEIO3Z~E-?3i}5xFeairGLd&*AJU~9FkPyQL&egj-3l+U!c}By)4Eb&ax2NAhBep&6 z=qK6k(m27sVGob3rU5w#b-sY~4?oh&pd#1RaZ(w#^tw;Yqkw{~&!XG< zUnddCo}Wgu$V=0{0WioF>AQeD3t@ypv?;a#V*`%-f*SX_*K|^FjOb%<_F`y9i*o`P z-(peN{x;nP(YrB{Y;eu+rLe`f0KY^Z){8}=!wfL*&#FItV$o=qjLOE{I6V+TTJJ+G z0zy&Wo&gfUMcgNpcWVuRA4hAbOFLwRR3qr zpV{#Ac?sd_cK^MC`6;JuiD z_n(eGp5=bF`_?bLpnyL!5<&KulqL-@V*#-tjU_dH5R`@jGuVTt_0WTK!2b`c3-ydi zw2K&W|5OJ09JYNZNeLsrdV)Syb*P-iw~`Ra%6bN^NlznJ>CWj}qu^+aw7S zXl)Ion@O|+Y(g4nX*Aj!NNpxI#x|M;$~6pZ6JugP*aL00fMZNF8 zj8lE@-w9uOGK(#cc-sO*F!3pCS%%!J%3*H>eH$?(nJZ(=px9P6;W0BM{6PK zf(rc*42_GBCE}!1TUYV9hMrLG^Ej>aukUw06Vu?ivL$vfwupPN0MPC7DUScZb@DFSiQ++sZmmWERvu%;6!U z?Dec-%dgPh1PayhS@&Nx`m?A{iw89VU92`$K?*O+4#_bfB8BQ z>iamO`EMb${npM4M7oI8TeWS$&CNE6WwcAEx##CWXzx)i;zBOEX;9H~QM%!8dpCGyvZ2<7|3(SETua31+mSl>m3$=YXAZYgy}lzg3vC4^M!^tUJ2`X zVOcQ43}rF(0`L*=LOq1N_{N`pD5|;f1nW-a>yu|-yeDaFxYKOcg5q{D{X6qNiO%ZMpGSUpG>t*zf+mg9vcn3|A@x>)nygz?_K%a=eD&+iQhhT#TlkQrx>v#Qe zA`)y|3Irey#pMlYTBi`rXbEn1J>N~SP)&N9F$j3;_99a#BfDe3wz1lVz?y4TGUf-I zaJOd5UDNB-9!ntt{rxa(PYu1<#H1OpKR21@VfYJbkq~~4=YpQkX~tGd&fV~_)YGYs zi$;EKQMBIdNpk2z`yON8S{gkH`4G(KGLthzN3_-$bzRM>syQRN@qEH?V% zZ*KZ#7v|#IW1y^BEf#@ju*dEWg2NmX%SEG_TY}m>JrU-#Uo8ou_~^8X-&Sp}9Hxs! zqS36HO`{35&@Va*ULgsiRW^(!(P*?8;h8SViIWz8t-*s8<@+(p1 z{dgbSmVMLxeE*K8)B9bPTCQJp_gOJj`<{7z#@MGMqd?<;>pEKfAKx8Yt`drh+b-Q~ zf^nRCw!+N7tDAv}n1j1n7G7Z0OWGYJrY-8YCtN^xNDtW14W!zBG9nZtfkO!vhn}*p4*&5mVPIXHa;4r&?YltDlM8Egi;77G!f~9p?N@L55Nf;2CBAsLmiRL zkWU?H0BoAvkc?BtkfdntOUaZ7VuLOv2#m`p zq_1h~N0&B~aiq^`_BWIO^vIJzva*o-)#$_mwyRhuT1Y{@ zjht(O8#DDfcN=~0ZD}DB2!Lu^q+3I{x^3=wEW&`<4WKo|NPfd7TqHI5>s^Ar5%Eoe zxEMGq^TH>Y3m7>e7SK|-9v9f1utVyIH_40mUo8)^D2Pk%q4mWR8Yt4s5YxOrDoiR6 z_LrJ3*u(Z=+52gK!|KEHE%Wioc}W}YtB%3vxPG6{^3~-P9EYLhyS$`s>U~slF}CTi zv%4GiaOTCHyR_BhzNbUYQydxLExFl@uQS6T&y#RHsQE9K%dA#MHXDb_ve4@WMBs11YoqX{7-5Z@CoOL-hA(W(TcENb22Sf3 zT;Un%VH*RBVk9$D%0d7dAX=#L7z!bX{`Y&IzK>7s{^NH1{hz1P^VjlwU8nuun7OY< z-gS42{mS-!A$Xm?dz`)LDrw-)X><#|#}p!!K{1x!zdLth0R`LBqa@bjEjU z9Vu(&4Zrb@$nnj0?#w&s;`yuu1eX@z3h8i_Ly-po(H&qBk*?%|@QM|yGh- zvdLu&v`S(Pn?OJpr6e%mLro*Jr;G7C1g+p=T-3be&LO0@+J3sKH=c&SH2j8SEhj8d zPFLN?oO z+)|~vq+Wi#AVL8GiDulkj~tn2jDD07 z%V_TQIgRFOt)}*{WCkqKE`&{MG!BgdS#1~R!f55wXcF2j7KzH$ZMN{gDz5p*qn%X4 znZ*p8G3#0u7|#d$3l7+^vKmZhKDO1%xsfu(G!AAMLbAM{lAT&NyQ!Gd$x2knDJpjo zAY}kSFxv=Y3xVGPkVExi-cZnJXMUY!oS!K^e-31?>;2~R!p}~1eSM#YzpeT1eLgdD z5`Hh#3+(@%iP>bg)#3tnf_uX~{a5*(op}8dcK_*ooJy_kYQOrey-C@>Z6)R6?@ssA zfa*vo+823yjNgIj%FAq$v`O4mgrap;>$IG2`-rqa8fZsB>YxMXut?V7;*E7?Q#B@Z zl&+rofBE@aD($;XKlZtD-tW}@v;P#M{IPb_yWHU{nO401?g~shlnuPGDzuZgLS(e_rxfn>k>TK*bwn^WU1%9!ULBTpd9iFkPsFy@@GOHpbf5#LQKG#}nB z*s;KCvxoEz*AQ{lxKvp<(($E^3+K_6f)Xt~`NNx7w;x3B+XS68aQ|-IeNW~4(P0RQaEO$tex&A8D{fkE`>m0`h7+r;3nK0SN zYJ(aA6vp2PfWaPN*&n)(Ao)CR)oq6PX>&^`9d~N+U-eJ&9!0Ta?7avr7K=rOKZs-b z20qAjkF1U=*s!;$PnGrY=cL*!@lh4gXw*$6(P)?dcd*Ml+Uc*q84A9H6N^g3Xu@T} zZ4;zuv`eU)MWWFyE%)*-TEKw>_GdT(cJp{o;oVrl;q^s7Qy+kE1~>J zdp=*U#HZrY!o&8pT$qW_zbPk5M_L*;B3b`8XZjgwsCnCenrdmv43`=>N$EQ}1b7d^p&u4q1;hW3 z%l+Szp+p(w3eet3fcf{1OTwH zBm^-bw5afSkt}l5HTE$J6o}XIZ`*2@WwI=K;vT0LwK7xp74-WlYtHt3wX54}hTc`n zLj@-;haG49OL$d~j+!Acf~s2Py-#j9JV0ZI3~*tGYFPan_r&2Bv>hnO9zD8eYME%jnN;y;Rq z*+cfC54hgzi}VyMF>qG;Eu|MD$7Azb&lwuAZIUqaJQumw$8PV7_SGLp1Gt$$B<04*v2d9jxdVfhtM)Sx@M>oiEE<1Ef%0UqrfDj%B z2K)$X3&A9UF9W~?;_JV)*Rut}@GofGF9+pF83&NFTh6%zfuJqfAWe-2jF91A|F?wgZR;Z z9ur42KcHcc>KO3YUt^#q; zuTBA}=0j+-S|zkjq&o20Eg7vdK(t!)6~r2ev|23|j~tCoq8vUo_FH#XU2yrJ`q3_h z+>Kyj$gud*=$HQ{KUjE&h^Pf+k{ck!K*Op!C3YBKJ*j&(r#{tB77?3-^rFA7Qe)_dcle@x z$}-(QU!HoGwN2q7iC>zrth7B`rqsCE=4NgjldH!ZE|G%#==}3iMB8no+h`xLgnuS? z9`lcqNJjO5gS8#Wv)Tw^X||1h6(H^I>XeAbzH2@rpIBfkLUgGUg>N`5N3Oa zzJP@uDxeFdCF(=Q9>`|CRZ5Y=4dCQPSa`X@&@Q>P`W^Bvy6t7~#ddJVSKa6RXV)p2 zkHRk?9ZK$a&kZif@9wrt>p83>cfPaw$Cl*ubLAX&04O{kKIP?{W5LaMoCgxi3p;AE z`zm%dT#a%}@I{VZDqX~Qd5*})lRvV{LrAzGt#7~+L!xll6rkC_PrM>fZctJH;caPQ z3L2}R1TsR#ZaL@7@qM3wheLB5R=)alnZ|drQ2c6sHTfuawvn6TytQ%XJjS$W7PSo# z5a5G)hmmh6Y0Ij}X{?HC=i6Z+6sH43hM>oTjfLk~v`mRLq!Al;8!j`>LDvv|v>7sO zcq;sd@w+b)q_)%<|uLV$Is=^<4@hXobEHq^!+cG+>rO~ zu6gk~i!c7__-+m#p+OWyOYFmi_ozesF?WyMh9q<ZKmF7^(0`LUXRbFXtAlj?rw{pG!%NmaMOesGWJ2lRwktHAl+DicMb(QtFYh8Sb( zV~esrGQ()*Q)u)vk2%x(=M5M0;WSOFMWWGYmeFXn`hZX3O*PRY=fN$a(P-th)X1iosNc500L{J|GN--Rw&m>Xc4$h(NR%M`T0{4zn`zm-Rb1?d)aP} z$D=vg_D!to7pU*@_4qsU-wD6Zb`2yV&p)Hh5dUHC%K7wP4ZO_Ty$x+cvo}xeqMI;4 z_}S=WpeLzlXDGh(GHT-`Wj0pVEk}o%k#4Pz6!m0=DGAQu?aJeXg>Ed{x{#! zr}@}{U$95l>F3#h~(+L7)@!ac;j*8XxKjnR;bM8FnMeZ&(I58@fK^BKz#O@I)^wa}0ly$ENs z4nh@My-5!{JU~!Xxo|5BsQ`~ikTW`R=g0$%)wg0B&@2$(fs%KUn_`l_P{y$uz7Yg` zb>S}iu9`N4_v0c&e11f)k8HCs@IB`(+{9L|tA}2y3noX~VdsG`?xq)gVwNjJ87TVxcd^0y9ViGxdrI{%vE&o z6~sdYeSO7RU(a{N6maTdZrDxvNC)Dhauz7-3g32hdOKmvV6azYH9x{!fIRY47+S!J|ZIz$b^1lw>)v|2BegkEu7FyHrY z3sCu|V-T>!N#hF)F|Q0ZJy4Kgh8^EMtcVShx1lH*RQ%%Z%eJl?lVYHFl}S*q3MNGH zF{uwJb%JZ!X24PNh*?2p7si9b-jtZv%JSsZ&CK_CdoS;9Z`a!S2gkYL_Hkx=H%e7& zsD5jIzdwVYx_xXK-_y6TZK7|}F=2h8i-47yuuW2j^0W70L+K819B>6KqwRqD*e%f1 zX>(7MR2DT>+BxL2Nq<+!huRs~nUJ{JBY$t>{an7ordUpi?HLRk1qmb|{Ou6N#3`nP zBoksp+EBzzppy`rND$bD(3?m=#(}UDn39Hpu}QY#2{$1?CF>dkjbm`g{Al4!7(@#tP%_ z&%FD1;CxN?EHU5mUy*fzI+^?H{&d%}s6X2QGV7|Jknq|w=_fKoSm9ow9 zlGhMP`D*o6CKGbExW&nNJk%`wti;ifC|cW2tjdox^-g+m*9?0c2g9kH*ae)+S% zPthU?7}#SUP_XfU?C2I{J8|v3>4!(hjs9NJEih8 z>kIE!yqsa6%xm^C^6&2)c^*CgZ2l*_$n3mU2pa|!%z?DdlmM5;^1cp0E@}u0a|3nF zqY_L5f_+Yy@@cbVA_DTs3#@TNKG#ajq-6A@uq}}!a*ZzAI#NRENCUMH7y>_(8}m>W zc%p{Z07Cb<)+T-~*IaoB_?+_U!M(OQ*&BJ_AWgMzEJvVittDv#YzXaW)`>P(d?m>P z?8D%1OO42WTBV~sb7O`}n><#-JE`JN)MyN5Wp>ucf3D&Y9A&jgc(}XK1lcSYqpasA z=%+q~=$*|`{Q8+e>9;(ML($Id z)2#Hj_jQ|Swq=&{7-5#D+=mi)=WMI;tkhJ z_(t8JE2It}Uv1lOMmi4!e8dvU%iMEgWMM zKr~S{kM#^N!ykM;(y}^sQp8XDW@6qty{1x+A)`IyFZhj`CA4cM?V{Ewiz9}7(&$Yl z)^&PtPn(E~MWS~8q9vBs|0M0xNwium9(ln!SDb|ZbS8;qu-ksC*|r_IVr7SkVKiPm z>=CD2T)|j6}j#CT#eo#Y+Ixz7#g(j{8Jt#z>nv!XTfTqTAn5gNyZRR?yq^a z(EE3PFQ?PGOm7#V&FawmKeL_mB|hJ8KSQAF_jmuiz8?2Wmoe@B|2{tF#Qo=<>d#NE zANlt6dKUET9@u%wHj{S>)v)7(Rj7kaLHs-?Xk@D<_^AEm=ca3k5pm`f^-@p7*1c6C z=N9=&(u;N#)fbCY)24s+`uykDr@GQtWgdmwuCNcn)oG-4 z%?GLdemm&?{a=aix=-ofKfj#$zlXwjykbZ?P4os|fzOwx+w)ar)`^;P*(xoCNLX2> z2M_jk^E%v-(X|-?zyKSBKm=ow6~2DJkn?%l>uFJOFv4#aU{7FYrZP(=RN;yus~?6dCnCiD%$iY=hk zj~(N5_GawE8SIMVU>HF1IM!>0rY_L!TClKkf`5I^GQ^*p(dujE%CXMkf=7X}!fk^7 z40sqlFkI=dR{BhB6%ADk^wo~?x@$N&?6xeK&%P)=zdwGC=kC$yG5Ef+d+%&6*c`R5 zufdTH^mdzab5Lu4y_Xyv_D~9M0qn^Tc>nihxb-K7h3oi>rx-%)?Z?yw>w~Q;auPa+ zzFZCmk+4eHpFDxg3{%$~==VziUPuUy?1>@HIPTH00hvS_cQDpCXOY!BIK_0-V)?`l zHJ0O%#2!q3+cOrJIitIAE>;wBpozNKKcj*OaQazp03eyyXSy|=9|8~_NKR@XP>#?I zz#}sdWgPShZyD)a3VM>oXiyI7HZ*JX7Are=`5^m1Hel?7i+3;RiZl@Xgo_#FWSjbb z(fufb`bPe2-^XPL(5`;1ztzV&AM>Xq&FN-y?ZYhZ_rv>+BzJ##yWB2ti5f+}JYx{C zbxGRtAq$E_7h8n79^44lx7Hh$QY1UOg!UWobzS@A&4Qz6ay~DH?$X(4o_49~bNm;e zmHqBLHeK>=J!~n@_8vCttYv92iNZ$MPLyQz6Dfw%2&0Lbp9@xzi}pqmwaIAWQ*fsC4O~DPbSy3wkA3}zxi^`kPPZ?ZldjK2w^5+F5&T?* zi1oZ5_eGzBtv`MD&vPT0+M%nPS2%x02kd`*1%@LE#P*DH1<||#8hQzJ7K4^78@cVm z(cF%H`x#IkZv>8w33BX{eqNh#;w-x)fE;=RV^Tu(*%gB;(ONmHEPm*kA;Vaq3(s*N zie~?*K>v?E;C;MV3ooGq{N785x6*A2-y}v}a$N^J*Rva-LK#5>VZ=4S;Lp%~gU@TK zKD(1u{jR;sVEFsxK%L z0cJzJK@>#Dx8VeSd*(oR&81+OYW7XqMB^frle4p_`-H57r1W?EJ!;{+%$;*NZsY4c zTffuZvoH0Rzr1k7==eTXb&LHy98|YW)5%Z%l<&TM=ASqJu2=F~?_opD`~Oh;9rk|q z=c&Fj#oWz*7Vz<{wm0e}JTD%9_haUppTdHen66!JuGcOs?|6t%ta8^%`(BlExYn<{ z&L~`*znCeH^1FT>c|pQETTPMf6!v43j|F#~jp7cwY2PQgIz{80E*G0RS!?9cdhYN-W3LZb34z=q6X|PYR>3kW*VjT`R;He&fyJ)Q6JrE>B;36;t z57hfRdg*z8zt&r}K9^x{9po_nf5;SRHUWHdl#f55zQMcjb$E0S-AWj-|T7O&cp$}>fJdf8Z=)UnJl9e^nUt)S-<6m~?j9f%CG$X@{t~(u@ zO&f{L?e`E^J6=OGw+QTA9madBJ3m!)TV<8Q%gZG2{YTI8%6PuEYghe!E$J=iC(XLy z8?C^2FSFu7Pb4Wd`n}lKui>h01Ivj=d`;LR!q)@X@oziuZyY)HXf5Oe-s;<4CI@8e zoV$c|+?mX!Ni%K%fIUW_{of2Ph224O_<9}*_KXF}M|or1C@XS~VN2HD@c9Rx|Hj{8 zH)>IZ3#;03rPmiyjn|Qlc}zf41na)7K#FY5p_OYGdX55az46%|Em=bAYj!|~xe@+D zc2b-U55kfk0hP8_$smf0Nij9JCk~C?EQB6-ar%kMP8R(C(j7E9q#J{k=`Q-(K+Gp8 zT{M~n=iNx{eTTF4;>f-n_hk=ml!dRn6aM!S_8@@Vkb$mg@g>My}_aP7TDBTv&RV0*|F@eGDI^0<=bFA_L@6Ve;o?Vm7xUsRBl=w|)ReeolhXn3V@ zhIiUTY>~3_LB|uf?B_6Ol?1iOhs-}!_=p3_-S|9y%b|&`9QX||`+e(%IuU+2hHOg&A;m1aP6As;D)M7H@v%)#pxv-K# zp}TiR;peLac+|zw2Y(ZN`xPA+z49r1Q`eb-mq_CCTRttoJG6klX?}{b?)&n4E=_*& z>hmG!p|^*J0N+&y7oD6gzC9s#zQPBzNk8U&i>ggUaJWxx)Z5|vWvU-!IXR<*0+OhF zEY_BVc_F!>UoCktJiOv3UP(-~tO|I!4M^2C`4pL1Vv0yo`v$G#gDg*Q;53A_3KNPf zN>F83Ko-OvQv&inb7ekcg2RqdQxnm0A#lYnF=05ZmhKNrHt=8At@RSREeHF;ihy3F z8eRb{E*yj19cukg1F2|zM~K# zqM7bl?j}04eNS*gja_HZi`97E$^UN@IQF+cryGvM)J`gzlh_l}ZfGC(B^(sQ!UY)I z&H$dFNbN@WJ(sJEqt`vqrAVc?oW(hM_51HdKdt+r)ZBS~Sbt{|UF!60zixCAe!pz* zq6GVj>`b>mpYixg@%`VGze(Tsh5ldd_562V32J$xal~3i(DMD&>q@xZoPGAxtoqi)dENN1 zI1VAg0ok;L?EPm!kA?Z3f8Kom_4z(CL$JUAcW=)L2`)j14k&3a2HuC?iu3=QsR

      r(G;4#`Av#Jj^NLf=KBqin^>Ya+Yp!|;Zvd}wreWqDGQQF{_fAM8ZG z*r=>8ZwzNqGtEz>iTv)Ope+pBk?q>Ksl*e?eh?(D!t2Pj6H4vLjsN~(y}$kK2+I}h zRV)pJaie!}FyJdqCG7zU^$6pKkkP0(G@)do*I`nhLq-r@uJUJk3vj;c&tdJc-pS1n z#~l`R%r!Yv!l%9@p5IT}8mX7Kcsae0cdGS)fUmfnx+A^wa2%(`Qd+jCkkLpBPD+T_ z>oqANZ|ImDw%J)>qBqEdAI|q3)qzZa0QvhxMhI07?bL@D6asu_sRuGF=$nV;(n5=} zL+V0*=;(j~9f?)$J0P)kkl1f#p)UY+w0@Z<#QhHyYMr<^n$*wGa9)A$*ujUdmGMMZ zpaRKKf^|~gEIutsk$ktPaVN%A1r*2#bU4s)enI)6f=S$UM4zGy+=@fN+JMtml^kjW z`WLv=V6Tn=;ChKJ0+k(<8#Kgf_x-Xk@du)%z^=7#enr5Qn+ow76{1oy*ETjhokp}vV|ic9x&_zL~I@tR09ij zu}^AZkU({u*kud0y%T-!3aB=ckbNW$j)ZW=qL@f&8S_gy_n}kAt06~v8Ud&;6gxRI zmMj?xAMOR_2YKsAJl#M80|cgc>pew(F@vP8uu_a zKom;b4#f4wa=8GS^$>g)09ux4i|$=3wF7?{jk~9%dZX@0Gy&ICp$`Kw0YnwiBv5SF zkr@{|wm;Fxs3vA_^gTBLZX;^lrskav&8l{5R!qcXVbbuh9Nt_J+@gRc^07TS^2ck% zLmuL7QDV@is2FGmI^SGtCJ#-#p6V;8THrZWlsWnZtUN0=CJY0)DQHzJq9i;NptxtH z^+Lg(AJlaTcnN%wm4>Sp%k;)rHA5=LOt#1mNSTve-yiK8?qoe(bvrdYl$Bw zE5=P!geUI4m*74a7Y1XJlMmL_?tazWRmwHzS@7s^RHr?RVcC(?K+)iE$muPR9wc5D zq7K|=WwGOt}>URUa*r(;r4YGkZ~Wtl*Dgz@L?P*Fm;qQE50m&Ws7pVF7E zd5eP0y;Zv-$(ra`AnT}A?4DvrJ?R-u<-$I%vnagQ!KQ=m=}oH%D}SJy-{x=3hNuwL z998SJY%kbtn3D51adCJ#PTlFaBRWtn{26Z?72Zm`>Io8*$X7TEKvt<6%>~cyV2ESh|4PT>2lx~6>Yeb zNpDDo9m?`kMGxGtWX3aMnopqVk80RDAOA$!IGtD{(jVgO#~R42@@nHsLM$Ubso9jZ zn_o^+boTstP$pNTq!p`hemMf_HuHO>Ruz4Th|)2a{spjp9Dw6d8F6>EbYND*l;Y8qxmtbm}B zD$sF=y3IgY`AjaHl=kk$MYMG^=3^%SjvqA~F*XORs$c0f3T9#t zUo&ZzgAn0_Z09xCAj&c(ZBWVJEKV;;#h>gZ)Nzz}&oQ}`2{G3Xc$&(m%#I8~wv*)y z$|HqgOmjrqnj;FnszwZDlTGLW4`_J&L#uk@T+g7ZwPp0HLO08o4+8VeaR<-pF+=bR zn~6gXIEWL&8;KJ$8>cZc+w;3#+tXUid*x73L4Tdf$s!J54{_$d-JTiTa^SKZu-#QM zhQnJ{nD2*n8N+F?SHotNu4TaX(r|e0!in zcDKR15GDFXR*M(!RzePM+MHqA;x9QECI$VT33*}v6C?9&ZLPa5N`h*x85xGuRzb!J zB8o2A4=Y*(F}(?KokZ`8-ovJO#e`mC%ftjZ>Vhv=3X{gH?qt)Id^3u($SvkEn@e5sQ=^R{_rMSMbywrjj5}LQQ#dbl* z9-^Iz)r_Ck!bNhVhM~m2Brf*IDLu#l31xcWi?P=Hq{mF0BBrz5CEz-Whm~zQj8+D9 zkXaOOc(flciQgPYC29<$BUMh-oDOdeX&!8Ns{di&!$VyiWxiMk2kon_R?Z8u^sj1` z(iE!)l@E)geX7_I=)uy?gQgudkm)Wx+DxSi~M9dofRP z8{sUW;CeO9c1(=fhSud4vghkRMc8XcG%0-7o~9F|6Ybr0`#DCJgIzJlyjOSfT%LBI z*;v8i*H7wz7A+a&^`ce=4_-3#_}=tlpiNAMXOCW;Em>B z8$95$&d5XuKmy?{U@nN3(E1AT5hoMn+4reX>RO;sBD*s1f#?HR?|+8TKzv_KEfpW$2z#xbJ6U`Ro8wP2)wWx=Hc1%Fbh zn76YrHCsA7JiHGgpWR%u5g;pA&iY5bX_FWR1_nx#%`xnwLv8talo9qrsyP(A_M%mC z#>)44r>RfX%auKjQ;HSe;>=at20S--{Nbf%m*6^gUYlOuo_~>Cr>OjVv+(< zp#g+ZGfVWR*kZ!XPe2_~}7xJX#PlzS%kl)=DFP$T%A z7J7!8a9nc=1i``W>b^s|Z^oaQty$dr(bbV|txg8pY@dsxGgdde2`1jIT>mF+Z-p55 zo41)E?vFXVpxCWfKu_WwdW<67@8Xa6eXK0BsKH`J(h-yDC%wfG3Q+}-$Ayoft5^_p zwU%>>2X7f>4`m2FsyUpjtwVdjOcp=z>aj!S^&69SiF=tdP$5=lH2Y4wa)aq z1R)XJT-VcxTJ}hkyGaPn}uf9;A-_shOD-e%Gc`8Nr$!_f>Gq<#^5DgY5gK@ z#s;O=i`bf6wvSXtWmwM|ThHZp*%+`y6`_QEO6DYC@u5#SI`Z*(6k#nwgrBc0tNNl% zH(r>#MN8A3BPtS~1tHC4bd2q{fdCjt{3KsQL0#BZs9$?Vg0 zAuCuE1-5Phqdzx8AWFgP1#!W|a>U%p=zwxGtbj@p0>c}E#hw)wut)9yf&;Re!df7y zHyR6lnY?cH#e?%!yo}cAhRrWj^i=eekY5?6^cQ+kdRSQ$)@e*{_4M?#v=x<@QeHSI zS)~vXlIjtXrOC#p@bdB!U^1o1CZ#Bv%~4q$OTt4SP~;~ZCJhbIwIojohdrZ5 z!K$c$hr=YkkwOi+ndl)L+U1%qT>zknU<>v!&G>N#rH9DPFp|T==~18|D9})NI3sbaBu@-+ zI6Yc8y{)lwYd zR+NS!KM-j&Bq9(FgVSTmri6a#`xcJ^4gXJ601dB&NcFAvZ7?Ba1Q1c0Eh%U?gaMk) z&KhqWN{=CfT+ks6m8G|iv3{4Pi#!NlDCukKV(OCUlIZu+V_kfNRb=+J4#j^H9%*TS-lZmbhIEopPLuCTqfOJ_u=(5S7ghl`;i2u$402Y9S zRWyMxVy9OuC;)(eax`S%0RY>qP!xa|nY9^$6kGxSBUD*9Ak6w{;&nNrg^e=rDmpO~ z4|x{AK=@&s2{6QJkpSRZ_&-(6e*pl1_5gq%8G{kXqL9e~WPl1s2LI^)bpDIbwctom z0rLBga1j5C05AjvfvzkI1prDdJ>~yo0BHKBOZP_GeDkUc=N+~2`KU>|A4l_g!y=de z+Vp=qpy@5pG{u#l{d=a5ENMF@kYt8r5G(_Mv?Q`vVl==GI07S}fF?#g6Q4T{2%5SI zSNc~&fCl$}5fngC+O`TgvzOJAI?b_L*p?1z7CU_fdk4dkY0rJqBN zOzW1zS9A?~`Hy=+ByeJIhyolW2LN~oRJda5N34Q!pa8T;j{~5xf~r8VijBDBSTLkv z>~h) zrXu65SX!(;lW*`BnA2Q#6nNz{uUQ6#5brvH!k#VkB3DxhG@t-Y@`5N5uI!#~$#Ibu zqk?e{K_EQ!NisONn$RWt5S}u?#=HPG9A}9IJOJZ<((56KKnsmUcbt8^1&PK_7FO01d0%D{v)W2_WJkpPVt#lIEh zj5t~`6iZQP1OOcY=pY;l0x+X-ZK$hM7>Eze%wBs)mz;9e3XIL6kDdmzNLnIg!q$%u ziI3x}nR0u$j2@-zucC(br7wC_qj8VXyzPy&m|s~#+p;d7bLv&c8E>CM#DklfGtn%K zI1gMIac0F@P`Dje9jeh>$0;vRsT~Az3WT?K!3$>Oy#i&Py-}b{v8vuE@Jj=}5Imgb z$XZ5Vp<=%`fx_O{8O_WA!x=Rm*TD$~GGwXKf+8%?v^I%m_PWArO93~ngBr3$IiLy| zL9GJN-~bKz|1Q;N1gKyXIgUO900F>i$Aen1M-3HCO>&L(s`bEw8z@K(XrJMQOzRXS zxx$ebk*CauuQ0GwcP~JRv@Ui5Rzyj71Tz7g{iE_nZP^q(b|vM)x9`v$X z1WNE|J8lpwdln@^5LGiik_6C7GD94#^nVB~Ab~?65EdB-mK8Y(YGp!5*h_>SpbMel zp&r>F5Cb@u0H`J4fx&&a7#{&z-DF@{{EX2HB>EBv zYCwGeq7B6y6R9mAuse{@at9xQdj2h$$N|ZK?jCNWnXQ-+v_a_07LLKlhXpk(y|Sg)HJBTfon$WTFX4sY~EVo@Un8 zqg8VN09y9FkxM|9Oy?r0m}3h050+(YE2!7c&GO-aSfd!%;Y?q1yRfFyviI+aXHhXne^5LsU$i~Fb3@DCef^>Bto zQU=++yaxuSfUy5H6p~dFN(X?h1Fsld-qA!A+yl7zz69o%--PiIfYbF1Hq|%Wf2_^J zQTX{(ZrT6X8@Z_djrT|Q03H%Mx8nkg%+(!`%x8*^tlO)fd(snye z0CovTYB0VL>IDRU?#V6(-~&RvGz9Y~(h-Qan*p*a>lsnFm;Zwh^X_Zwl>|U^|LWic z+5+f=He{dCVbr)H3zq2iB@m11H$$=-$aV*a0Y3jaL{^{9A3(ODWh#XTV{jT-g+Qbt zPt98d66o$>FD7c^2Y_t8?FO1oCPt^s&pk|S8W%;?|$$1tL$h-429`1J76q5Om#Nn>H zWAul`;SjX{1iPJ;X1mh`|2Lnbdf;19|36*e2cEbkzW_wgOqU3!w@j5v6L#Jo2HJ4z zoE7)^KP6h^OzvAIzV&}e{8yaUVG>(F!T-{zp_ju^|F|EWw3fK)|C9YMpeRO8RR0Jg z2>=vC6E*wMl#fof5y>2++*lQqa*hzV-88c@cm<)2;05gAxBxc-06u~WtoQ*?QBh$# znldUJ2M(Z={hP>%3W$mI0CwF9^nZ~5Kk7yNKQ;hBfg|VByl6Nw0S2|@|3M?c_~G&;*)R|#fQbMg zKqkNv-mA(e|L(UMZ;l<)jhRj_)0N$f#+TAEKb9;(HC`v3&k`rdnwU3W%EI9YI6t69 zE~AD^$xnnCO&uQVTPKO%n`9hHfkg#wwcu2zfu?C@afyAaTb1!ePp(p^PPMxL7R#z z*L6Tv)RK6M`#$4I)F1`fvu^W=Nqk()s4G_Ow!DEC!JIusiZ23jn~z>i94y{ee*Gvm zpMR=Zu;TGYwMW~6fVq@UcZGH!tNFK)zy)%X>D}3TD}%PDt7fJcpTG5U2K;rA-EY9* z*fHnIROYe#fcxIBxQlM-?u~yix9*(n01m;%+Q9M77&}S(8L0i;F|!j&DVS zp?=K^U!}s&`x{LqKT3`A;wU+Z5}eW`WsIMxP1fEL+GB^e1r;NT{HO~n+5OvQeSxEu;;b;lJi6&=DLHZ)S_ivPd5FLrj*1{W4v@D->Kw@ zThS`=dRaJc8GM1LT7T>anV8R4qv;e4c-q;YAFv{3sCDn6{cb*2ajD#>Zn!po_)A7r z*zU)~7Vq}vwwIn`6aJ1D?Oq>EI|eU0H?p!gjZTlgd8L$3JVzy~T|b}e$Q=!45aJAe zQdu^qd9Ps^@rverD03~;cs_xn-uvbUg^u+vHN3)gXNg#l`VFPwYGlxH*KZ@@Ps>MX zE;NUgRvpT}7g^lBe?^yMeeFwB{Sw!Iph4;%*xgmp6nLMbKTIR7RkURL_72lnC2%6` zliSG?)l3tM^z*a>%jB=EMc>an%eEd;y~j_nD+U9HTF8`R-BTSDZ|=LqeQTWay97W* zPTy;Kln-f)%4e1>>WmGCuZby3mPu(nFNmB^>sW48 zYD`{r<|VddGh@**V46-&KF6FDo6WX#TK<*ti94NXXTvC)U3t!=%NciKL}Km!@K*TV z$jacIM4FAkDxTpUA^6;<04I8^6aA!UuCsBwTT#? z8D(vlerg#$aV=SWlT;2gOy%Pvckpam`beqk+xo`c<7ML~ylHKn`ib3v{n)mVz2@%lKBBY?v#$Duu=F>vZPlJ9rn~ za5)k+hNri)s!XT8uemqA@lS6v#=JXL-dwMWC~JSL=4l|hDms70cc^Sb?%h~X7RNmA zkanbAf3nRZ^EdPv)HSAI2Ht@=CGCq!+Ivu)KTx50L z<9*ZjeqlZj`sQpa$6i#j$l~L=7&~yfUZ>~!+j+u& zcKw^jj)IH0rElewWU#qN{s+ z=Zhop{xo(l@6yGGsiqzMiQ~)2ahUc_PoLks&!GMJNDF1(eB1N#g^N1|8)F}Ci=*zp z_9~)TWO!R;E~Xv*4IMRY=^Z3)bEjO|rCu4SYNZ|FEXOuI{M&0Bv=`Bs6}UtG9ji%_ z`s6t&{1?V+-(9qN5=>p1*njCibjstGSg>{l*$O@P)H8n3gPA+eFwr8*jh**IK`>HoTBQwXYpn z;h7~nqlJVMYj{z8-y<5Rl^aGiR~Ep;ASo3_A*qbJGG;y*-8d59xUh1oaNLNMZYLwn zu216|ja2uz;MkXvJk6c9kCkJis(3Sr_u6Ig8Bc84tzqCKHgEl>oQ~gOe#-Udp7*i) zk%bk@2R|#1+p10Y8w!IsFFJP0YcOwK_2s`x;r= z#UeB}u@}gdFIa*-f62#hs+?J;R%GP(Ej5RwocK?=!v@JwChISua^C9A#3WP3ebWog z2a!RG55*2W)lsuuh5D!0e~j;)XzL#wtLyV=1;xD`^zMKE&ClOAT_ptl7A|{!^?G}o ziBCQMUZ?1Z#iOg~u>AE{^IGD%x3UiK z6A^|<|2HKn8Ai0nrHR$%jv{Xr4(-z%gmt5|gN;r;@v#0X^zhI+W`3S4bXmbuBg0E5 zp!Q(>s?W2#ME29I82FK#eQf>>y9m}PX9b&)$x`Kl;BV@(jAOMduX53L$>0OVj2xO6 zZ>zh5TRV^Hzv#XcRx;twxA&#@I(=qNjxE;Bk9q_JF&J$mO(vc;O{29j*FXAa$>u!N5AQb!VDeQjCd&RE6}U6#Enb;pA3HW+ zUb`2)+0w~yHhFvd?%-6l)lw-cR?o9S>1{t)pKQYRsaJa*g^My5zglZSmI69EM*pHE zowxhlfmd_s)4KfDtCWRj`~??Y3m1PxPtKco%Iephhee*)kIcu-@e8ht1ZvHMRxdf< zwh60OsTcm%Xzld6{buS%VDWvkr9msPx_de6vGv&VVf$OmoBhe=ooB^?9$M|M-?6&9 z`STukqH1n!ta-xZg{}I*$+#(DgO~?>?0eKu;giuO6@|g}C{yDuQvbypoh{$YZ#qS4 z&2+7cvJw869h?n@0Y0q(FRV9}Xq`Q7e+YU#rXSwdXGTs*;<|d-=-FJ?M=<|%uQ^QF zSLupw5gZ-lcc2RzqEx&+mANqg#8MUeGVPO^XiBlOi3;)Am(B|7hWXjsalv2eRm`|k zYAc3~Te%DSL7#uEUsPj;L|RXFKXotlP~U7Zkz9Vl^+IHp%Osy?S%}+HDU`{0gS7fI zP&mes;?bB;p#E|NLCsBM+2mcGlgKq+ZseeSQ;wj?oPU&NPDV+-YNtWW zJjw42A*BwgoSZf`C&9G_%{!3hLvL^5G9t1bBj`OS}pk$b|pUDpI^-v2es}~eCfG1zsp;Qt}?$p>ufYI?vV+1>Z_qS_gPRU zo+Rkl6Al&D*=K%M(pc3&{WCzk9ON`bYHsDoRi)zvq%=1&ZT)FpQE=l0;m2lNL@ zf9b}zJG=!4w>~s)bc=Of>3FQ(JCC^Rh`cYkAXD4G_qpzQo|J-JzT_$~Tr?WUn3Lk1 z(_i|$?&Xf*1OD&ehtFi~rMVP#v1d>ArLMl9&Y!X>xzw+Uerx`^{)zeZT)9QGCpJgK zXXmK{)87)Nf6_nqCwGoA=MB{ySpTuH`{a`Q6xbb}Q+a3z6jA=D9H3_le9<=@vayd@ z%&bKE@uyY8obI)Eh)?{@>*ASmU3(=XhI}{TJtcGM*F_Ae=2XAGw^Rv2EpCf5A1o9a zhIjq&S?~PZ9hC-zGr81b^nV0Wx}-lC*&>a$+;yp|vJ)*W7Hzeyc*!+g75`Ijmz=hZNY#>#8gunMIJV3ut!w|xkl@(ZM_`0El!>K~VnvANxX(N}LuMr}5c*x|1rBSd{M+1A!y zbd%Wr?c1ZuImgfOqvu|0%pF8-jV4Z%*aFu@T~}(CZNHq6J8R7t9B@4?Sgcz%=-u}8 zH_5OKq9ebFdH*Z?{Las~FxC@7maw^XZXzC#_xh3>x#)@;lUm2i&z$%mE+@l{FU~(S zAN3DbS7jh4N%UIPD~8sW*NNr{wDLW%=Z3*#RPJ?>W6%Gb_Cz&EWIDSRDFidWXlp0A z5Ulz1(0O&Zf)^4c-s^ao=hARRo0#@Jpw#cy#B|i;%IhJ3Z{MXx?nL2edfrhRpF@2& z>9BKn>+b%EiFP#Eq_oUf-3ImX)Ix#vky5$KCF|KN{;lo3+1|#OK>ycMq4| zZ~78n?ald1NYq_D{!PBW`%9oPGdX!_Fn!{20v3!J~1ojs$| z<-yOdgEWpDWX%4GT1-{9KhJ%*DRuje`X{~p)f!XFBcFUls?(ngDnSQ{$o&_A9W5OzZK=0)Bf6cx{+mCW${)d zSJZ}eY_ZO?oc{cZb{x}f^xRnFL}6IM&Od9iMYKmP+JF8ngA=Zo{YQ1F*MAb|I==35 zIny+^uX5_zl2_b1G^J4znP+h3IjP&*>rpiwbF`RrjK*ZQ?bZ)ad%Ory;k>>bjkJ5F zu*zv_6fjbC^m2ic;s>9D1kGccZWf=$b2b&BloIvl>Q0HX9}KGJCyW!S2wv9FW*nb> zcr?KN5bwKI_f$r=QgJ+xYO!mv4wc$&`h38n{9-$@IwE^~0RNRnzWU0qDr*O?h0qPj zSfvwGo*;F0A6BPalf(O~XX7R1*sW2#5QbQYbdHJDIOFq{87;bynhwzokH0(l`659o zV$x52=NXb8qT2;3K4?#J3@UGW*mWOYeEaF*tVYi zyX6DY_BM|;PwGYyjdeetw+)-g^Ru9=)thDU+=a~@86F5hX57Ry zW5thht++k!u4>kwZb;9)6AKpW*Cl)BdTF$Ojb;;<`d2P|R_%Oe`N>A^H#ncJFgx5d zd++(RRr;;}wOAZVB%5p~4$4x=`SWmqt*V-@dl#w@Meu_P!#wOm> zV5Q@Ht})ctA5l|zToJSUX=qWQ;1e;cFGy?%vhd&`-?AFj?H zlSkq)8ot?XmW+#TeCMuP*I7Nn>Qc{l66bY3ynECb#C_vMNOj{_*nTD9uk)Z1H8f6U zZQV63o<)6^m_5bYXOq#SxzaU8^-(8kVa>RiwAR|s_UpkL0m)$Za&PNZV-F3!1W0BF z)NQN@jnVHfYYty?ggigR&xqj~{alhF!Y+~CUS6r|Is8*%nr z^7?h*`5O|DZXi{%D&~~u(eXreCF9Ker&@K9lqIPp{TQ0`@NIO^pm-c z15*JFZp?n;wuV^oJ;~WJC;gt`Vf?GTz_y#?tqfbParJnYsJ&lPdHIKjkK}b*EpcQs zkNjucg}g#o0>R}BC4M9auN01dD^vW5FfA`dd(ZP1Tim4z+)?K`8prZget)7&&D+aM zOvqz@(BWc#>Q*L7w5fT;Mg8wp17+&V+l9DWoftMBub2<#I3put{?)(BN_)s6&a${n z&A~Q-vAypkFzs`7gs4UeBivx^(3wakNh?FQU|!aupf}GgPZ^oKRyha=X-m^;%9Z{7 zU1Kog-B?51uJa5zbbjIDIkaq_FF1NonG)uomAZ5m-OjCjXu!4kVY%}yvOlm&qiLtF zAKj6D%T+&TeGq$nj5CG(sPs8a0H+Fj0vj>)nfL1csu06r>i)sp=9^_JlPitk-~4!Z zcZ-fcyJ;|}9z|X`{Uv$p78#D1k{#GK`arc&KRhhPdJ^EG^n9j1YIw2Xd8vqoB}N}% zMq{A}zixxk?9E4xi%%CE4u6$XhX$5&s{DDEhmW`K404=IGd|5f;GRaQU%bv6`0~9> zXGTbk)raHfbCPFXg=_E6vhzO@S_?9yxLir9-k-#$*!7R^Ew$SJ$))w}I6}H0mQ-;# z_$@KtrhnXv_S9yyI6&~Z2&5s2(2Wsg%?}+q^-JTRlk6aPf?Yl47|}(co}NYQ!Kq_e z;&yUE{hr!oC97{$i!4noYm9I!xQbJ1j;UF`LqtdcKSJfq`MrMKj{2!#3Son zcQ>9nSO0o3(p|8gXNUGT`!jh>cO#T1%~BXfKzVKqZqsb=YsKs96k6r!e?;?c~{yZZ67*P8Tv`_V9%K z>yG~qQ$Vc0pM;R8If&xmDfyq>)h)lRuD4z>L6E&)q;Yy4-=FhS2U%WzeS89xF56dK zRzc5f_k2=J72&xx(Z4l&-)=IQn70JE3idM*x^+*FCPTdvouB)oc^>8Y>isG*ykFvZ zYvRE+x0_<@KgRbeV)nf#b1{BQI{sw}HNBjBHtIjZrLp3{o36Q>E}Qp=d~_N1_e|bO z5Tz9_FKyv=ks>&}SrR2f4~8b^-T!0~q#So;xTFKrx9?Q9q#(eQ?6u3esj+%D@!m4F z=6XN9UYzfDwZiXbJ6LxfGttlQkB^{K5Y&(9^FJ?svTs)t# z)$45as!jX8CzHBoMTC1FUYCU@r?xuq`xt9YrGULZTe&Rse81>N3)iTi<4vZf!p) z8x#Ky&!zV-%klO|n1oNW|6S;aI!8@hrC*r->Z|h~-Cs-5bl0Jkl)V1c+1&IUT#Po^ z)m@zFbeDzX<^e!b)9wFIPgcyP|K826F~A($z+AYFS`HJ9tA`x%WQ}gRS1X#wET!_y zmrs|sI{oWLK#86a@MR zltuZ>3!6Mi)Z_g(|E@yMu_u8$TiM+7yvm5FcSy#sAAag?G z?oRFx-IvTnSgg8EN8e2T!+$#{=m^9riI&3iS9B+;Xs38FR*U`@0kp!2NQlXb219D2@ zNoDk~jxREN?ugnpJB`0Xdu-|Lsc#&`eC2(dOe_H0|Jx$pBi8jJ`(Bvk_PxhuNBr{x z5`Hg=MCh|;OB9DABUH_C_+v0BvE)OC4Hw%{5Ckm=36nu8QAmJBe<#_rY?jy!!15p} z6L1kN@xi|SL&I^`iY5Dn({x@&%lexv7xJQ)eGfnBdMw)g-NNSu&0&$YuLS2QR>(he zc!w&yJWHV=_LQK4D0DmtG#wK8 zmO(@6S{^O8cLC~#UAL0{?za|<#@}CKLv;N2f(PgTi->rL@S)d;%4^j4cslnSPERbR zRj<|J0Wtm z2UuLgs#iz%A0{&k-?8j^_Q=duyBY1)VtF>^=O@ZhI=~CmIIUP0gxX`x zf?_UjzF#$u>u^W=E_8;S+=)7&@2Rb2^96gYL0d5n6 zej{MEYGG}%&C>`_O}+MTUECsECU7h6n#_3s03PwvWj%9W8SWnr`q$x~ws6;id<(tb zJK4vXUWNpW^0 z9#M$dw02yD(}lm$^Bm2IA7A8jJUrosaKv^33p70J=R-J>I?l_x0cTSrAQC>Xg|G&kZXnMk0o z>#%vPk72-iudml&1a4YKqwM1jhWkEZ4>5yl`2V}_Y-UOMtxsOO$Bn z8Hul)(X{8Yd9Ld~MynF%|6cAu92Yz6`K_0V;P?nobedJ+(sm}M@;TP;rf*+5f|Dgx3LO8ja z@mQf!J;@U;izl5A&4!Pg`88R7RZhpL)}2;-JsPCKz!cE?kw1dMBJq&;5Ei6&`VlD1 z`n9di`O(kKFBF)+4a0VKPZVXn=6PKz>9LibV-*F;-p$_6`m~JB{kHI(k96+!uSUaV zmkR!_9zttNh4R{8{XpvC*PS)ZgT+QQ@%VX`94x>^B1yK(6 z?!N-`iO&y;4$EPCm*0nHt=RNk>(1G+Rt!ZGa{T5QN4Jq#0-+ z)?!J0=s5EAo4wt#EqjJ9$NRk;g;GF)T^Nv&TM|e>ers@Rech(i=Xg_id)TEFD^+g7 zJ^gX%G2sAL-lIrIt;hyXBY*JXAG~t*H^1)}WAf{z@87}CCEX0kz3hBHdHsofZA`$n z=5M&ory0DjOazMw*QYJ>oakkQGpd}abk2QB?}>O|NguUCO^ z(?;Qqt!9LQ7n(>$*Hxs27@`tMZowi+BxM3bgb4(;JryN+&@Ey?nOp!Q8V|R#RJ&f< zq>yhy+SIMou~i~yNCFj6+hxK9U2KglJlIk~NH*o;D#guEEBh92WvRW})**8jxQPlH zLKiVO5QvciL^$*{ND>2KJ?xdnfSWL1!DqXmgpVgU1iMHeNDsaHU`%9&UuZzN{v$(W zF%@EJ071#w5@`gQ#f8#H65QG!`P!V#%yL=~$G2GVJ4PvN&I-H(iY=VnvuN>m~t%`E!NO5soib z2)q894O#QU*)b)H1S?N(t$#JqCDUo=;+ia5U9M4v{vEYjU53j(ygGNUZDlzdJDo$8 z95vVW?w6hFJC^89t%ta>R%kE_+O-YYR_XP8yu zi2|!Vz_b4I;B>IYAJd~d_j6*u%V&H4ILofpCJtJeSE;DE1i!XVfYRX zp?q~y&fc~>{{t*c#oiNv6}|B{T_TcxF?vYs2+Q_G#)7)cHw zraprCe*HP_d;dB8rQT1I%ErgF5;qlQ=H<7=@cL4!8(3BFl-C1GvZ$%VZ8n%xwFG8efe)3-w&x|FRlni% ztE_og@JnyE+vZAAu&%8U+nGsQs5#8ZWKzoA=cN%j@so?23pYm>pprEj%`V=p-!O4E z=YnywmLiu#uW6dOcg|(x+S{_1!lbk@)r`=~jJ(TfR<F5b#1Gdbq6F3v=rw3%{5;{F+{&Wx>&sD`YO z6~J9`)e)r0X3A2$!W}ER>c5K)3r;58D`#UT7iX6W{?6fC>cgv;UBkxNpKzvz znnBpK8gw-5)yv-Rce_nm@$55mr;|CwZaCRhDx+j;6P)g8+d4a&2)Iu3G%r~u%k|Gr zyuL3$0~#2ZZeB}sxqLV(!e!&Rh0u$fe7Z~ka3-O{U&oh*DR(7CgR3>yB5!MXAUuA5 zC&QR|z8`POf8?i!Ety81_cBi|bd-OVRa(=PS(%%*fWlb`2AI#ka_0fE!Voe~5GCS#*M$9l?X&gXJIB8p z@BBYG{=Q5SFouf*>@)_C)V5nj2}}09-*Kh5*h_D+H#-P6U+H}$Vrcu*aFDR9t-amn zGtzWByu7G+A4QvrO}09eL9>jH2O)^Q_wYt;h0ad)h1Z!Q9roeIPtKzlYCdDmZVdP) z>=xzwM;rC(xgj|l_;|&uKc}m!30;+U?3G;Qm#Lp;Kc!@q#$c{jNxpvNbH3?jbhN7G zwi^bLo};&_!x!|fXLovW)!?awRT6mfE7R-4FQm+)a=R^Ch2A>-Zv0L(<0_d&>a?=$ zqoiG&MsO2i3)*+ADHq6<*tqS9H3d?F=3He;WUO{h6f(9|tvaixHFG4Jo56(v#@mku zNZCtgzs#f1EQ=i8O}RPG3yyD7Q#WasW`s{W9JFZ@u2RLSVtTZzkgJ@(opUc9opYOc zZdaX@$vR2UZXvjf@LAZrHfQAPiF_^mHlG^yvBT=Vn?27dx8?O*Ja$G78nxZEYxvr6 zbhsmZ)2MH2xgt4zBK{2PYb)9SrA<0u9kx{|L{k<@PJ?wtRbi22qPpTGFO@90MIxJP zF`7BLvn4w-a`HT73)rEy1+7`VogZ4rrN|^&%+EG7gL=hLb1A*H8=0K_c`#2m1$S=6 zQ-*MCvnrZbb{Vu*z6vi~({i#RA{|d8OC!U9>@13~Ta1{qtqEJKtqEDBLZ+ChIH44h z28cj|8HE_kh_oUO0=yMw-O**2@s2RbN?YfT9xUpww(w5uIc8%?Su2}oxOVW7xi}}f z)ziU~X{EwW^>}Q`$11AJA?I9{m6XR`=GyR6GMvqr-j&khxNIdRbeK8*0_O=-7L{d2 zq87(@ccjt7!QkIzYUSOF^NpU`?v_Q8k*xFWyLV36=R4KKRXZw^lcW-nUM*U(t*YM2 zoD8~+mXL!r3>Y(gUH%V7+1@jrR$TR7UQEr!byQb&cjtS*X2#zyDIm*Y%*N`C<;%uA zg}aQ(uxaUVF6Mp0T2gYe1m$xEE&}Du?=g7c|A(%0crCWF-BY!X1G@c4ad5P07+t2U z-v$-(+Pe%d$Ne`r$BCz_ecNs-wE-98VRy0C<$^~aewAO7)ZK2kRjtm(GTPv-TP@ZI z#$v$ZS0ypmDb*{5DVBiTvr6VWbESUn7b>sQQ-Y>b#zz@dr1tmXU2DmgIX79muIVc< zXW2Y6)vqN=qB3<@crFeu;^FUJF1zqwswSxAVKJHdTPfK}R6`?gn@4SCH=#Rk&NKH{ z<#RGB$xKwrzh&bcE40nZi1ABmX<%k#@8D9&eak-u<0`wiFS@0AOssMze68M|W5I41BIZfm zyM~);BOoaeHw*Glg?^fTp+ z*K#eYCpzI`*r>9VXce@LjaPY%w^STAsuO5vrzVwOBRD=AD@O%~g4k9VGo zp|>ijUe7rQ&uJGf<&!%bmfXwA&du2ISz1}yRbsiBZtdyoQ!{M^*OBDER!ln0;Mx%; z#$xhXCd~-auGnhg zwd8WkUcGjlZ@WCZ4R_c)^R^hBM+|Y($2#SP+c52J)bg#iktZ$g%De_Eb{Tn^wbzvw zT(M-Gmnn^I9W(5$=h;h|EV)W7`PW^#I4@aSb;_rbkwfO!8j!8Ials+%BaC|lBQF`c z!FlnwC7p_xCmFK0K6X!AX`gV;&b=#ahF{CGKMq{7t+{P?Gi<8;3)d%L@9}k6IzI6! zJ)?rO-7-#6h@*AMjxDSzd3!t*ocEkQK*;TTU8wG6NkvdfRXOKuGw+kzb2|YGp=Qk? zFwVWG?9jQO^0P;3L3A8Wn|B)-mfYOK4jz4m;I+1E!f%`}yT{opTe3FcTC@Xyvfn&Q zuHu{ZYP(mS(&aEkFHW1?P2C*x^bMS4X(Si1+{Y(}fv5#bx*BlYJ1*3Ks=hC2m}Jk@ zuMQnt5|#|7hMP=D6Vk4!XG=E>RwS#|)ygsEN=&?J?)R5;9+!lSwPuEk)ZwsYvYZz9 z$31D>+21hWHZz=v8+hUdq(+?CIX!1crBaribZCNN?bhTlKro(Ki_O@?&PT}A5_=-IkoHAP?K5Od?qf<(>mBi zo`ms-wk*e0O!vO(1Tm!qmFXq$HjsRc!3yUq$#dM*5v!PUj#vOp`tNMd@_N*a<41** z$8Au)N6F5YfIIQcS2^r0`I(eTsu95j_=HzU2hMsbsgg=nRkVJgd#dZ;2}P`5@pB{h zv%&AQuyDRNd&lHCoBM3bd1~tEY2zn7mjilSl=?YYI&t&f>^HgV|1$moC3h}78@AhI ztjg&mFPHyO#hTNJ!Y;91Z;_Vzen;Wk?@arZnmUzd$C zi*76JCEXqNpF1C)h1`A|cdscwSKWB~op&3^`dB*pR1eR-P|cqypP{tlu~#vVL9d3_ z;*Ub4aY7QZ5rq%_ANxqRsz?6+tsY{x^6vU_)ct;6k}6rMeZ4y(6O8HB^w60W&1jP6u_~n4^(NSh_Y*=Isz2(ZQihC}DpbKX zta*|pPbHi2x&pF$* z`?wuoX?+gLGy1dSvweGXYZRnhk2EyVqc*k+v+2&AxU=covr7_FDN>3{bt+t`xGPJ% zoqRQ{!vXH*(RwYt)$7TTs?GaWm$Q~_n-cTQS!%SYTgz_*+PA0Ay)x9>kz!n*ZhYvuC(wyv zC3v%S>zzkknpSMks5zBk%FAC|S(W2dqedNSS$zjTVc|R>Lc^N;s*@q=W`)`|ENdmZ zR-@Yb6yr~&Zyq`_syll1YLb(uPQ0r)td^{e*J~-bmS@hjKBYLr&uTc;tB)MX-FwnxHESel*d|Q17PLyUE=`w}Nl@OSK17LgiRh2`9y`{6l`Iy`QRb~`eQY%BjjVS!9`$>U<*#~5nsU|gs@ka*#og6rTBT;0 z=|{sis{@RJ6{AYeeYL z(XU>7`qgdCn=N|rD^$;lL^{=D#G387(XBdln{uFM}o}`U#fwHb_v~E9XFzPDBJBf8M6>6U4C&P->6;f8DUt0~ zp+d!qRwBD*hKe+y>4|17UDUaow^B^{hu2a&?#``dtjcO+pFW)GI2xNC-MeF>MvWVE zM@HSewv|@AIhpg^uWVzfUSoCQ9VymvVzoNWShG>$Yt^eJohr0w;G;sWi}&m2lw3Kr zNwJQ;JvMCQvy#o~a`Bqw$&%E!dR3VjFXX`;H0bTmg3TNoEML!qx*j4U?!*`6{~l-0 z5Wn3E@S24c4zKLJ_hNsy_TcpSsl&_tmVWkE-e3ds;q|f!cX;d)T=ieG++fo)990Ba zd5A}>a>)zyF?_a?AFxo0*a;{4NNpsA`cJh6ujoBgx)F^LqlR#v=U-%DG+DL z7YDgwxWGs~Lj)f|pb|dQ00envZ`uR1U~=sx(y?w@0RCR`1V3{KL6NtUA(J6B#RK>| zh*^oC`V2`Rw%F5U$8oM5-2t|)jUwY?NJ2qv=wDX+UcDBL92eIiBw%I+i_G3V<3d1s zCLkBeVfOVPNDQ_lc-P-p2l8S-acugpJ*0)I$Yy3kCks8kbY>%V(u9&eHeb2)*?ybZ zA2*Wn_XLC+9GNmqlQCjMB$7+8YU{c7;1Vrh_QYnlb}bdgDE+N{VT;1CC1V@0;4+{r zX&~}V2m`(}AUifBzrBb%m;9KEsMtWRIT9~k$&#gk3^6nc^FXb%fUK?qfOaO5Rx~7y zKb?O$cal-5JXlwjE%}D{mFu?Fi3>XYxOXjqB*0%!|mOi_Z)AD6Y z3%|O6fMx}shC&iCnBt+jf-0zwyTHOixolY4u|cM|cA*Jz92Wm?x%G7bw;M7L7%*ho z-&iqLU1?b4nDJR=RTwjycMFX|1i2=Ji_E$~n=7{~Ry2ZWE3WdBO*Gx&+b4MkIcTIL zE!#_Rwe?2FT8LNEYaR=MHOepvyllqn2Btwf=mLSda+m!2Job&C-BgoS({G{FDuXM z;~(1_ovu=^hKDQuCsa<|xb}-(zDVLfnM8krh==M97t>%ij%&C25;yO7x`UbtG&cLO z*vENIeUDrJ5?`U77Yt z>D*r)cHg9cG{iXTIPvs^eHsVdPU!e;Wc&Hy9xdZS=0N1YIhUS0&6xwRKQqn2g{;5T z^<u%^Uh$ z^vveBTNpSUw*z)-MVy_@{CqA`ZL{jRY;|}AiDT(z94^KZ(Lh!^;^R&w-AM3< z<3ko%XVQ89qfA(2)oQ#iE`ILPbR54zHVJA-6r#hg%g-9*GUJ!b%Kv_^t@peofVemP zHtHBQlVWU3tC&fp&ZB;$9Gf}TbPVe`UB)gVhX})AWOA?PwWG3)F1{BT^mxt!^$fOy zL5Xo3?;|rwB8`o-(rb!G?UBxY_~{zY?wg79eK+rq&v&~Iau#>UuPQHLv_IlJoY;{InBIV z#m4hXM~fqux&}E%P*CMQdg>?u*gw9cA%q-cVe`7GANfexX z%0m-c==I&s#1aLjw~-HRP9jGR_Z*~c@^L&A*DJHzcV7wLVx{0%lX}l)F$zmy9@r#F z%{IiOCJ@7J!MC?I^ARz&fo;QXaYA~91n62$0tf?QF~Qluwz0N|LFI_{IpMb1EBLHh z7dsmZeYF6Qy;jR`=b>{<$IWkKc(!i*Cx7yvksod`(o`91ia z$vggZL3h0mRv%u^vHxsA3nCD-p$ZZS>6YS%BXPJl79D+tQO$uAi zHaN}Ml_OR19h`HT+`PQB;5((g7a_9my4(@Lar_o#+rnCJO^r6#ynI7w-z`2_$eAa=2F@<$Mc;Wxc$b*V~c-Q!R$7?g(u(|Hhjb_@C?~(fkR34AksMZ zV#C6>q-g^B2qES2b5vJQ61muikDVA;ijSxBChh)@o%4MtsO3aoFHg(7gT=7rA3o5H z*Bu;o7EaoF!Iz zHN^K*ia{Zg2?P>JB#=oU5(xmA5(p&9Mn*$0ByNcb2sgLHmk_)J^WI!mtzBs9`ElV2 z4n3NY8}u>uq6?u3UPp(9t~#B`5z z`TmD8UH4qqgBfdx<$Aqg=cpF%fbLb{|sj)&4g&pjH*2$0mOFObx0%_F%E?ADvVu;=Bf z@w2;WMwV1_zD5r6%_feY%R#VDVL~-}zZt(5jPhO%v+MHs_mkmSz&>N4gRSc0WgAlG zH^$Y&b8vF6n|QjoJJahQQ2CMcDGtdKb26s|e$>X(M3L2KE9&ZJ{>0{fXUs z4*gJU_|9@&hYbc!XG&Wa$u-nHPGe);`AP-;=^Y1q+sO+>iEykqGlh*;L^hb)2FBZL zdV+6I@LeYNuk1K{dkdLdJaDIV?BsM^BzITPwW-kR@D*_nsKp#RoZ>S1+itFph3=Sd zZg6y#ExS1$<^{E22H$RN&~XOfD9{^^AuXX-TYYN-%Q&w1*+@kDW>^bc}B95EATnM{Um*;AVdvTP1T zq}ocefS&YQVM2uGOn6%m7iA7)J=c-xPj7`2&qo|Lwfmg$1(;Mj5cW|=yrM14`gGy} zzyIi41|f0nY+!o{Yb3@r&~fA(dtFvvImOSA>Y%G(nJ*X3_uW~Bhda(ozWB||j+P;E zyq}Dg&y?C%$`s(eEF>+1ZJ>@=5<&o(0zr`kB0-ljK{Ap_5@fxcKn^Hlh#1gi_3_QM z-5M7f(6`ft!o(6}vByNsuzi0Q)cC3F_`WY|R-UHy zw%cvC?D9Snf|q5sgMYV;w_6LK+3oWtbPrL8HgCx6*F;WhYR-AX6f}Z1ygi%FZ-wuC z)w#UP96u`>&r$O_5OD18997+sn@*3Jwp(q!9(rbW?}WoM1LT@E0|a4W7eTNQh8Uw_ zCODrEv7#x+3Dg8cF4Xbv){9Gr2N`qwicKa4z>Dzmdn+ z)k}ehvyZ=Q&4XPt1*XzLq`@IFcs~inC_4_%st0-^Onwo8f&6+cCjt% zK-tH!AdtY5V8)sOv8E_;@KAHCCq(6791ZRUzCiw4`6El8>LtE?L*2dsoOe$LTi^GF z^LfYcR#{xkbff{VoO(hRmffCfz(&MVq>%0$@na*_FhB@|6k9><)bA2?UrH&z* zoiuZNWEaL|a@RY|{ChxYFjqGV)Tt}Wjniw?(XvIaH7PyRJg)Wry0K700vJ2KLipm+ zLK3*q6?7qW(1i%&S~Z#tW+lMzKMynO_7+rnE=T>Pw_Lebqo)vH@qTZ;^ZVXXqj1*~ zsUJ4}$alNQx9V}a;bRJZw0z_?A+eaS=y-^WBWU^5y1raUUXl{B_~?*) zbaff+FQbZ70OPS@2OVm)9c9+p0{)C%ee|JW9VmnjG7bheK8Q*9UWaMm`O0r@_A=gc zefON`I?SFL|4G?h=)3-$k;Abi(KWDP!7xv4&r7{+YW0}7>b8v?o}X2nGMw(>U0tzb zUK_K8ykN63^CX1WgS<2nV1i8~jHW1P0&|3=5x|*6%&{e79aEU54hK7s7CI;JMtX7#c@=8s9Ty#0z53a+?@iD5o9Q?G2_IH+)oZ4CnjT zM?H^Gn^~gy7k6PAkAKMb-Y<{hYU7_#)?ks;v$`~Q|4Rq=bg&$|UbTsDB@w|uZ}{K! zLlCuU=N71lYSn?mw%3>DN}`89#E+SEvfN$j{c$&u63K%lW8$?->VC-FxJE zU$M;am7rU*ce~|xoksGrjJ7%!Zl33P3!H1dK4Wpza$LLbRUHRdb)5A0*S+5GQaE=n z6A24fS~>=sIw6Q8Y)Ip}{mi^yZCbsanATNAY>4=X3ikwjtH{FbX7J(T?IJ9>GeZ|= z;&L1>S*YGDNLexCgdvZ~6mOq{6h5u%Vu#{>fB4_2}6g*@Yq(zW~WCVg9DiGQmld4wL z*w7Lsx8naMxI|N`sm1oc?1x=h2dpKu7UcUm}0Jgx~O786+|JSc1j{IZ5PLMAd6PP;rCD% z1U&H|(gO9G`#Dz08jU8~OH;e?n#Tvm8+!SDgkI&PE^lKTE8y9|zX_$m%B_@G%~!+k z;dI>gNiE+jKxK0i{8n4ll6FxCVJTT$bZ-FqlS_#;Kfx4g5ZFdL0MjE zaTq{doUG-E*+aC3R#AoiBpO4?IzN-@VsbOzPS-xs;+!x`i{&7=);HF^b)Y<37f!l3 z4)Vk{BLfmtVR3?+Z6Zu3!f=w`i_Gvc=ARPIC7ly9yYDN=PnFxjxZK6O2Vp6`^UjgL zbKNGxv*7CDHWf)E8m%B20=vHSAv+LPkVuHao`f!x4OTQUPPFHA^*fSoNfqn9WX@50 z*VCI5Mc&R_n+2@J(RqjvE(NLVuk4MGdIplKWYDa107{_=5xd6KwM>3hN=*~ z3<&pmhYtUskAKA6JvnJ+oxi0Os4OYc5Tt;G0uZ4f``bXqLm1aA*5!gcOJkcNAtWU& z+-|p9l?#MPx{D8b2lF#Sb4pOfrUrOiJ~tDRk_&jgV}q04azMQ#InWn|gfDpkA#&;ay%zrG;2OB?KAt_v~EJ|A3M#)E_aRN zcbIrdNw(ZL^}Mem-F!XdEvrc(Z4NiOZMMUv18cqFxV{dqan{z+@jVO`Z6iUwC^%ZL z;O@m=5;(c{LlC~o0u(3^geXv$Lx(gkgS+f68qya%7a@)*eAt3k1bW_2DmAIG)#?oAyKys}ugE(cwY`h*+``t+bq_3#;mv1f8)RlU}ea;b67{)st z7-R}+6Ej79D85nxg&_z+K@F2o*3pPY(Y6hM*)yz-skPzxE*_b$4_&A5e~67< zST@AGhe{0~CXnK6k>!ZPe}h zpE+Km;WVRa_I!kIA|qU*Lz0IM;v(!ppRJ=rZ479JBO&JKN4?eI3|T(kzv@I3ET}Yu zBoGo3+q57su_JM~=lc!CIkt5AQL%kPHvDGabW8R>B`Q_yGGNAfaTs!D~gumCHVoeXh`AOTRoo3WwND=Gds~e=jX$P<@ud34pa(AY`sHgW8DW8=tQ z*+YUE&>mEMEBSD^fpBF~Od|RSfRHJA@bh0ZKE7mUWk*nuA_5m}hpO?AgptW{eJ0R2 zx+98ahke@eJ1T2(aBbg@eBo&EV3!ik3L!s(rr^~?)YsYP`@HAW#JKo9!C9z)m`V9Ykh}*W>bWG^|M$1$ zD+QGZLWPh>GmjXULKo@9W%OyXk6i&{>B$cVQ^xE>_mJd+-4Nq7%^DYv$`=^UpClu` zK1%c@tkMCrcm@!`u{MNprpJtjhX9fA@E-(7D|uF_VQQp`P>vLGndDsYR=FOAJ0O!iS0DM-yC zJ>E!y9Wjxg(vMQ_>S*qG`hBW7=|h(a5QUE(FJ%5thw9GorBgsv&=VEWG8PcT*BNg` z+eQSrF323b8!T=pray!U916?<3BHAwt840K9x1g0~}18p(4-@m3~WF+?+L z&*$Hbmr5_*CRmwJ7GIc%g$Z0jcvyuC;nx{wangwQQ`hohLKj?JhM|cMT^?^;9Fcl~ z*NfNYL|V`jXb4MSlRQ?wFz8j3hX3Dny`N=AHH;ujeuUI!vJ1O;B`f-KrX)Z*4N**3BVpK?0Y}tj?h$~15&WlZiR_r1uL_^*~qs{YS z#B;w;aYc0K!s-co*`M(pkKX97*oh0#WA1&3g8X=h!WOo3Liu9*L+R?sgvW2=Xo$)J zh3a41r@0h2tn9YiX)R5(ZCSSV@PkFZ6&x(I{G4~LDmUC5aJV6GnbE=Tv?}BI4nspm z(mMY0WXt{YgphTQm&2!bb-Lek?;l~|IEi=5>-+wP%IDXCjG)R0>XzvL7Pn!$UIBE= z?D(bVS5Un=^vmEb=)9WYmv&z{dDZd#LOwTkL9E+t0~!w}@RzppOV+RUUj=_<-&alj zlU%~|tK%<1zq0iUtX~y;Rq9v2UIl0OrRMya|F1^6h2Iy1UUhiI;g?vsHTQbO-B)~H z3(tpu?@Prl`n^Ky!@jRRyo&4>#P3V#_qF2}d|mN))!$d5UOjc|vtB`Wh2&RcyEWuj z*Ys<`FBH63cxB*Mi(XZDFz{>3FB-gOi(Z*{#pe{m$FDW%1MzOos6SwF`(w4|Z%*bN zvH;*6z&cxEchh)xBXV?}8>%|rbm0u-<{7pl)aMmYvnHIr1y*Kuf_gL^)KAM z+Wd>+ubjQ||K;}=$6c!aEB{x)Uon1F|7u9@A>G5Oj;K0J>QlZ4d(QD4QgpfAHJc(_ z!}Pd4q5B1=e*CIiz7LB5H_6yk6rDM$l~ z?Rg$Mj*2VR-u!4@a-V^;+H3!D2Oa#~>!sVc%gKMs5-#3t4VOqomKIoKu_aSTupsk( z$If|dp3B$HJjA6Qo_2;DIAmW1(#JaW+A7%oT%a>@{f}Gh@_7rX8aXfib1O?015VS& zFt}T3X=(XvtyW#GtGB90>gvzeAz6ICn>*9Hc6uUVLAPV6*_M(Z*;{R@j>`pMMsS-PCqN=c$(1kn63--mr^G@oLE?miS<|lUHWvEXviq~zqElFAw zxYgVhqN}1bYQ5Y-SMx1a-^WtCI?SlCw%f9@`aw1e2w+mS+a%L%ji+U32x$+5tb|gL zdZ8;)lT2kw8EiXY*=3dmIiE9scgj+{G^f9-maP~sTX+^Cj2<8u+d~SmXG-e3yjvhmSh;1;{&6f*_BEHpo~tZKBw|UePtx92)gWZvVAMfZM@j8-pcitu3aSE zlCjFmAg*y(MQ*n;rd4`!tRlBto(#<`Jk)}us#++{%reY3PS?!Xub1zdr)z}4tjw!z zvdYP@Sk+-;19w8py1c!Dyi~7J>IFh=Hl9++oy2`g7q*!cmigpHv~6B2C`J(~f@&%R zhyyC^a;!x{tP+ukvz6+$8P#|+Lrf6$6 z!v1mAP)1E#P>C@L&{eSnny^YzFJ0j6G|D@XaXW!*V65WkiLtl)|5R7RN5to2tm}Hw z@*Ir}%u$z)FTdK!Rh1)f&QG+=@H4MI!3yrDl&fK0DPYqsNxNC<7`#7&iwwJMvqNRJ z(6@)h7_VM0PWDz}SUPHOc2|~ISgK=c$QF(3+gpYEw@anW^NxG&3GiGO2iSamYn03~ z@#Ds01ZJw3F@cjDjn3!A$!F(XxB|F^a^PoJD;Z_`cpEIvb(pQS61Lkb;r8DiwR2A8 zxpy&EE{ny%y}63*+*fNZ_%3h1a@?^hmFIftcOC216;w`nihx+CS!UOnvcJJ>eIJ$B z>inO5mCWVa+Rbm8;XD-&r>zG0=xIiKZ%aczYrpRN47Ob!%fH3cU)h^H7wDG#nCcI;y{akENHf?B-s2L%Qylaa^CCdaS}_*;WJF->j^> zSav+8e9uU&4Yt_ZY#U5t9pBY?bL{9U;rbpRke96Fv?YwphpB`x-w&1K|DD_XNgfvV z4GcOO-5wz-*w!x-tt*VQdbPttV8>r4Dz8^7*`@nt%X2?8(mQw4`S`td?aj5@yXXJw zQHtgw<}0^2yDTi=Wl|kqMgtAagqczdSZ27+cU!TUf#g@WmuAu%x0HidU1|hQnnZ4`wd+sy+-v!XqusGXz9d8MXIBzd6E_qZKk4%94b}_PH{G^2G*z$(BFk<6efno#5Ra%L^LB01ui9)yHXo%F{UxJn8wD&HrZgS zRfL3z=D=-dkva1nD3sQbR`wy(u7|^d5SLNS96^^xj2Lu%Lc1klrP*cG{ z^LU{Qf=BD?TPA GSIva`n&6BF~;JZ^%6Z`YtPp+4l22*cI4(udv}0k`dzZRg#wJ zv28Hm?@jqibldBd+Or1B-IR}C8LZcNXo%bA@aiyQV^-HEqFbmImFK7?1L1bke&YHM zQvB+>!Jn&tpRty=?os_bxx-lFJEW?FNTt@*n8)Xen%j%ATZdrT?Sg-+&!R>2k{%_mr;y7TuzwZX^WEF(+@ra0`6}I_ z8nWO2G2u~nfml|M#3y;_{Ry#%G9|`YCJFz+{u`BB37>dvmdt%{5}wXgYuazL$Ejbg zt~DS0sJ0zFx1tBopRiCjcG+lN$_&GEU*+@^HU_}_KCzE>9>0^#S)uh6c@?147W#U^ z`41M>*7^1!^Zxp^1k2ywPuf_XzRWG&$>_^S?WMkY#8I=hEJuC&uyv<4u*ydB?;VTlw=`@(O#KCX1?RSoz` z^z(~dN9U6I3h2_&w&W0kJQzXM;~P%l&21Xp!Rau_Va9+-ua9+KC6rK{PZKHS; zv$Wk?3d>%Or|+F7zHrd_xqh;!-}M+<%vpMxo8gk${k}nbU1}c%RkyUq4)11j&)JHs zdbknou5qSNXR3aA(PiQ=oSvDRF!HH)^Zeb;aj*zTQthWdj{UCw=-ckGVCr|BO}5u6 z>__zvVpVOQmIvPD?v$D;>fe<%lnHj7(1j3DDY*M!$scGi0atlZsaowBN^f7BCY54I zku^ZT3OX>+YRAKeTLpz>6!ItbAbUPN8>*^31NO-4J<~UY^&?YVwb0km*C7M1lct$k za#)sVt9Xp2O^16T$R-nbk$i~-)Ot(?l*vX?DP9G-;Tkg>_VykM&2?KJU(?@@?cY)+ z;{vW@5caoz6V${$;y>TEEuQ`9bgiwFqW$b;TVt-GU!V+qMb67RnQ2deEp5;-U*CKe zXw_%3jr;fC_XVS0!0T`HTb)e5!u*|OTd6BN_*6wIUOB(+v<`hub}348=(B)aXzIqSJ+@T8juA}ttw}q2?Ow~8PqcZ;x73UctHn%jkvOflY8`DznQfCP{y0>;e z;LK()am3htOn+~4x?k}9@lap0q<*jUp2UJKs$VwVJrTK30r#}>*`B#=I{r^5H@``Z z6_u|pi0_4ItB}vjnAu7nV*gz4W`2uoVG?T-(? z_BwkVChuZ7Wsp|=&d_scpxKa)1PyD}J+M-O3Y>0~{;@jWEC(z{iN4VYl8~8jGYlMS z>dF-`C@}=O4?n+JtZINM5dssd|9O3ISw0@^II{q*3tJ9GWA3*Y*pyB z&APiI!)L;~&`eG~Dr_2gN3c@j^(sxj69OD08FWJx=J*t(8$<&sO{Qorzleo=d%8qnD1W}dWwcT8-{5gH?w|Gt6f_1 ziRV_jmwpFfR(GFn+)wc0_U^Ig zk%0flfERAR56_KH4Nlw^pQw*C`<&)Q{!(m|z~y9b%;i2#XLV-eyqL+dxIJ3`ohJQ6 zsd6?bt)5RUz_V=YRCCT!G4AD<@t!Sy>ddfP59ptJa(dk6u@W}ELSmbpY%gzStWImS z(cZo9FAsi5&(F^BGI!^`HSkhH^A zsF7te+`ApOF7!w{r+jqyo%fMZRn+q3+9$S&dzK|}o1Z+~ns&{{VU>a3R#s^0&~nyt z8G-x~hm{IY?kY>Q>m+^${Cg#0Xk5*f6NdX`pVct8nmbht z{>_qLlwAI%xc#SlT)Wu5%R}dz4F-|>+6}C+!9_Lk<3gW*_&dU0_AdLOM=hH}vxIHo zX*)9XMQM`FkKT2=K|UhpJ_J~lYdBRXFKNv6g@kshzBo*Q$V4?0isiD_bJm_tn|X9~ z1>t_KVUx5L%j;LnUdr1NpDCH?IB&dM0kULERcs|)^q76jgvD_pdUL+h9%)Qu?^t{| zX8yWxr2XpsZ5p!^%l7CSmBA&DKY4jsPx7YTU6;fpaW+&}zZ}Zb{mSfmw&+5eRpWaK zLp2sGi;q>KO*Eo}IZxbU1^c9Ah6h?*zTGYD(!SwVGNNzL3{^GW-W&^@Eu##Ymp*%X z$$}?8;;TceJUbt`w~46wng25X^}V})FE@K9xPH0b(ro*rqw-$GMdWx+U%!qgvE03z zGxfFJL9RTChlWiPE66tPr}IHPldhNEWG<*lz@T~R!O!pV9kUdc*oZrEFK~lXOc}?f zi@mc?{B-rL!>cH>h)rLtnfC9$cl?lrc1@kAZ@y1^+thu3KTToMtU^2EjXX@b^+LRe zeC2Siv;V;hDc7mKA|(ZL?~U>&d+8}`tfoogE4P12E$f;pFx9r#_#rP~dJ{ zwMOagFZowkvN2}AeLt}}9;qXRUw_Lq0XWpf3$?iph8*Q`I}98y-0dkvuuQrUy9kI9F;I4wnVDp>7!K&xtR z54+77Nr@{mUIF@(Ny44(>4H8=H_3xPEc;X7 z65r2WDj$hZ%-#5S(|mzdU;ZLAmy+02QFHauF?j6ug^7*($;%(v(fDV<7d4!5<*qk2 z-@Y2b%mAT8yIXFv0Ux)mOc(VNJ`@*5@Z5pbmz6OC#gGx`lBoemFBA$T2RR_)RRM^t z%I?2sZ#8#Zs?lNOqDpLC3g_6@)BSUS-FL74U5Y-lAT}&Z;H|33!+$W;)PC|DkqmR; zu;Qt$EBFmpYW;n6_5H5zWYpg^2%v1+Y+dNwv-#Oz)91#GyUZ?>dlYwn_0n)&*S+Ca zgu_C5)R&mbVz2!Ia;NIRW2o!y{mG?Szm`ajytYe`qYX^grLx~ME1ou%O0|n^OvY1_ zBdOhMdBV~eGK;?0GMALzO+KP+h$Q6N@7g;!Ob+Res7{WUOvZvaqprJZt20r-uB(8v znN*|=D2ybOv1AZs-dOMuR!^GO65Y5%28CT&3a3f2pwse1Oz++UH`K6l6GX%VcK9wr zGVnh>dYav>LTuR!zyF(D*sv!XOpx0w$TKmQabRZaY)LpB0xk>NnGI|%(Dw>#d<3JnIZI5;?*lL7?gG3up3 z^T_qd@&R5DQou!e%DK$0pli@b0(B!#A{D$iS9ytv9!)tbb3`{)b(-jX5_p#K7J3oU8V79(EvAcAbPQK! za)g1GgLWvgwUWueOkfKX<+NMN)9es$%CE1w-j4rRTCRD%wsZ0K;r9uhyPa=RO&V78 zd0rD_flFhq&1 zs5?YU>v!p=!{WFvVgJ+*7lf5={G)+HQcDZ=@~5!*!5Jy$n=d!_M+5HCUh|cfVMve+ zE0$V)Og`xb%!NV2a5G4wo`|6DGcYoPm$(;K&+5bU@7`ostMu$yU;L3}HZ2PYPf*i^ z!3x=Gbz1YTBUEjmJdkM+1vHt|qoIICm3w<>D#@hvPobE00>hHQOxGxqK_JS1f5?JO z5^Q0f64%YHv+Jy_KV)uE^rC{FQE)%xymqTr6BVvPDtQQIqNX4nq!AsnEBk=GI5Gm+ zWcq;Q!+){=;%DXW)~)V%y-VsA5MOq@^$^BA$`F&OvY^UTR%{(kIeBkaoT@GiLfx3F zOu!6;HCCh|BHJ5swNRW0PBe}bzXeOoW`a?wM^H1txWnmUxszewa2OvH`%RZ7L~Qw- znGu>>b;h95I$3V%VTNT=G}@oL$o^ZahC)5mS)X_nclTBD-I-q$cYuCNOD$+iJ zCM_`b8pTiww{C1QML1P58cc&eoAHsuX|8I zhQUC4YzjjeW`K|ZC_bzX(vNjuq0>djCQw45MC#jNX=yRwP%VmN(&~ll#!_IlQn>L; zC>Ql!N}04-`Jd@#T97Lj>Fu2jvE=9fY`K_qsKnp(s`Gm;DN3p7{)F?xad-y~>V$P3 zh8{FGh>a_6I=f1tzG45%e6HXN(cnA(Ha6ybTxuM&F6$u@>)pbDl8ePw0^@qVrXz>< z7~k{6X7F9@>v&psSy<`QFi54Ft}RDFiGIvC5vHox0dgeSKeSM`lQFwsoH3)Iwi+DQ zn<4?$cD%=}0?}6mk40+n7r??}(2Yb8;<_Fx+V7yHn!)#>B-^avw~iM(pS!0SLy_cp z4Eg&QN(h5XUsz&d!plEby8==Jlc~C}qH`ER-145%kGvKK)q!c)y>78VGK^HI!s$zrlL6#tOR^XTAW{DPtrZEb94b4g9``!1Fq8_+ zq#gstI;v1)Gw8;Wra=u(0HNTxi0z&f$eoiYk-5JO0_8FEG?7B5gWR(zbcmb%yxhx- z)Crsq368XW_ygfz_kEf0J?2XOr zi=soRm`QT#rotmouIy=U31k3aCo8)W9G7yGH4)H&rY(rcXmD zH6qK2g2&csIndwR*SPwysL0;v=TQoNlEhpSgU0*u>WS)SC;ujl|cb2sUDciqoYWuO7;Xl4v*XgfS z0W`O}KrjE%E47!2dsQ)H_bV6J4LCP!io?P|u&?x#N#{XJMd=y?^qOf`UUU zS%oZIg(NU2!m0UilTac$ft;q|?`%qsWYNl1tBB1s?cXIZ!V`;NMkkg+Aw8re#-bEe zSMA=oESyuc_?t=HnB5Rxj-mq+HUE@98&0^JpTm=YyfatVGmW~26GPTToRjN|H;Ush zlS^Jscv204K%H^RqGOnmu@(z{tV4=5JT!&TAwUKU*^-(A z0*=c8aiU{!L+@q(i=d@4q}{qV%I-K?Fl~2cyC}e+E&2AP%k@>MYAI)z&U6-AR;5KPEhkntR@yKAoWZ}EGh>}_A=@NUJ`6VB)OHJt%&23R=VfJT8+t*a%KaQ48F zw@8*a(Ke+8)_m2&aJXM#i+%Tce)@-6Em^zVe_lbRXW4y78Oj;@u(z)x zL=9>-LQyhrnkbZZN+QT#F?PIfe*B}Ivpc-~+fT@hnPh)V7}s)|_y<>cgxn(kZC2mR*>;(d(iQP zOvw!I7DydOokcRfTOO zbm?9&wFA3Qr~4Wbez-Z#>XSbi7DLF^%52aJnlVVcb_P{c{&Pm>S=Ok-$*ND&My?)0 zuZc(50K+eXA{pJ>30GNTKh;a94nF{r7NRAk@i4DbgYIn~+`P{#a)VJiU#a_k>l4~t z9B*?4!X)K)Is~Sk+IAP2OI0_vF{ zIPX`pOVi?`B6yfscYf6?L(Te6XFp$*@nmE=bv%ZCnECgZ$=tl@q$S~yN@$e$c}nQn zp3P@~t@mFx@p{u@i;)Oqepz95H1<(z#b^G2p^v6-_iyY;*}ql)S~hVa3G<2a zIam`_U_eVK$Yg$rb9{8_OH)zDyStp2SgTdny9W%vv%%b!5)BX$C)$(<&6k4Zy zo~Iv)B@Zt;{j{n}uy=AAhI6*GGMx}}sqF$p`t4_H0=_-!LyynC;S!I#LzNODD~vYf z=k+`g983Rhm24=t;BI>RV5?I;yPw)tSg893C!a-QuiPv)&t-R!&!}O?J)51xF3Njb zmgWikV%2gcC$~DVWA4jZ2^Y6gqEp7_!0B{51e}y>$L9=TjcZzFa!eq-*O_+9()a69 z+*4T%d9~6mIJ_dLjpUE0I7hZFJq`G>Ob*gYAnFa0@ARHemth4lSUUTQPGx(@m#Fk~b0*qe$`n-*v1k^NEL4!gY<=k#3rk*3^%7+8Wt!t> zb=kz~7$_7F`-IX4e!SFycKPSiVmI0C)~_gB9-kY~PR=_ik(niP}G^2%xr)pC*4AHs+BAxC`g-S6W&7GkweQO2LYARZY*tmXqn!C4Nm-pd{*`=%0{TX}=1wFfxP}IwR!9V5se~B8PCKT8Znfn*ldR8F7IMws zX3J)T^jQkCs;dRTjfmBL)2B2kHgq3uVs<f$<^YxTDAEJhmVNd>Qu?}vJqcOKbItg zjzdBbO+awjIFkvpNtCP0=gA&$(A9g9rIyrVa|1=R%ZBNnaMjGe8f-E2%^y`C&KgYX zZK4|q92IJ~@zlGwUO-*e=|B^qzLVCcxl~)1i2ab@ry<&m)lQ$+ia-2V$tJ-?U^S`; zdLSgq-!faO0_3V`Z>xAh`1 z)`Z1i!1;rHQ&zeA^emcmL=1XV=%cg5QK=Fqyu1Qzo3-cBqDn2621XyvZg{6xp?3zT z%^5!qw3ty~VG@#33lc@C^^5K0Pau3%&G~K#h1qXk(LYbu4WMCP<<}b6{_GAEqM`Jw zwQ($B$qx>+R0EhG1gvjTvVHV!eye$kk3iw5`1sS2!eQQ(49TUI-p5+rmF+=QIGsdWCveG`SuMV=(yJLr;gfqhBg37-rBs}^(b{}n9?HS#GK)@VxTk~>!}QO!l^QTqo)WZKH#b=8fzM=kEd&Ap3m4aANTiruu)KH!pFEh3Y%_S^Og04ADu=V(gJ)PE9SMMA8@Z_q93I1nT#}f zKu)LuBtIyQ6b;0N1`yUr4TDpa~O* z$zlDVN(F;GWlc^Kqdd%~DT7Uvm+;4kG8~q-@q?#~;p1j9{!QLb(;aw+^U(tVFLfc(x6YY1wykRMmdEV18m5y~@ng?Cr}XQ*|8piDP(lP$xb!@yoX_7t`&$ zx4q=FD}-b6j&Ow7k*5lRc|_s59$U!-qOgNlUg-?VYg8Dc#@}Nb!t3mjON$qe!7-!6 z`ma?OM^(A@{dUWf==%{9+f7Q!6*DIb|0>R6#4^FE4QDXs{-B+1G;mmKBv>R+rol2} zAvmm3Um=|ClonU%uOZ+b$7obhf{hodFLOHPXte&U^P%7;XG}~cwJg_p$h+Cq-anOz zcP>=!Wv!vxlX6e&Dr>7X30QKuckSL&f@d$yJ=3%>P^x1P$Ch9yWKvDd_4W95h?t^} zq3eTno}1{?NZvWU5p;DcZMNM! zW<(oo(_K*{h&}vC_?Tm31JAAG60J1M`9B#IppiX-mo%L)@MDEQm zQ%8ao@4T_N8Lc&qn?==1o8Cr68|i)lH9{2&pDr&xh(mi{<%IAZQP0kt$I z=dqR8gueZpc)P;(WfL;Xe-x-od;k}3FFy$MkO;iZp=m3+W*@;QbGBP+s%YL#UzsU5 z>|N1NL1!LxY&FtUH0Bx4IN_u2=4~)^>3O1M}Ss`>RBpgjsdQ4#r z?3LLnr$Df4<7CI+{X9|gjq!*CU4(y7J#Yn6p?;X}pYn3uzQTk#vZreXXS}FdaUZr| z%?H(c3Y%_C#YOp>X&03j8RRFKmy;Vv7c!L? zv}*}QTb6%#=X?`wvS6L%p#eVr7%XBcnBZu1>KNtK-!%*C<3l@T3m#-E(a~p~ncFC2 zc^g}qIB)S7X|?CtcV?{2RoGOCq_nhjJjq|1KV9njnfHyjVy3=QHm}gS^4!>u;9;40 zF8AlBS*?q8d$LE`9VG12!?aJs=^lpl#Cc19ks%%q^TuK0%zAUTy1_t)4-#M6eUZMc zLYassx1HsSPJZ$(RPIFl0*$m-2I{Wm|3G`ybl>QXTDj16%4sm}5T3N3D*Ow4xt2_3U)R{Whr^DTGC$+DE`R#N5Xu0Jco?xLU_^&ht!au(SpT z-6#I^woq2Q_kJ^0Bk)=AY%VUnv%M_wqrbVuPyAA|@vjv^R&dn&SJBdgqc6NL}=xR>pyQ=f%aW^&pWr>Ukg;5}e$$gY&+0**{O1de(KFSSaAgF^u_3h?2%nHh%fPANVya5l6($jw>HYIyQB-V?Y9H z_1-DBDx>UI@TDU)UR~EYcOi`@eV$GA)EurFZ zYE=1^A42|HUVS^@PbMu!_3B~|h80=#SL2fCI&W~?zu=hTj9PR)A34Uka3GtL%vVZE zTdagGHka8~T0u}_rNA{g+lFU!;_VOGANcnhA&ZX^q|=&?>f5Sikr|yLqo(vk3u9ud ziMd04oAu9G#Q+(}Q9mo`z3v93<@!F6z{H%}5-jt_{bREIUY3B-mO$FC96Np%Cv!Ez z+s@uCcvED$lEXoZ`@f6RzkaRln4F~5APbL=Tr&3+-V0~4`}oTWpR)NcGy{=VH=l#* zXO#W|7CPZ)GJZ2M#Kp@FdMod!A9O4; zI8W@fAHeTOHUuk_5;G@2dinv+;GcwR<{}q6kKc4U7cI^c@sed9mHhjC;B4jy#w6J_ zS$plhgj09U?}MXtKx}u;sue$W z6Q5E=T}lf{-%n=eBwCAoeO;4vnWfDs5ZNG!k*?ciOXp19Jn&t~=n$^&cdG$q%Vacn z|8BQ@^fs=#j^pLYhaU`n-b&vhJ#v&l*&9^)OPHI}DRhrhU3qdT83qV5B;5X^ z-sGcF4^mapyom`Gz~PtA!%hRASFOEFD34J^Z@>Ee%Q+ynPj$qVCovQn;kJ|Jxblud>8BgwCyFi|#e-uv}hzT)Z)vkc&=)V*b70X46R>Iyqqx zH_E7~ys8^89yRJnD=babwVRv)F3$JxD>oSG&yd_u5q8iSk7KeJWUZL0&daxJdUf<_ zaPdZb0kF`B|D~NX)6vA`(I>G=4GO~YWZ`urZ`a^24i#y4Y+Tj7o;lm<>I||#>1zla z?}$_ZQ$-nW`^wqX+>2m%(~nm?*B5)oem9a|M3iBGpP{2U;4(dxnNt-=z;h`pzl3uO z)l67}fOG%YJ1|;jAGFn%dy{9GO+}r519xA%emy=nUp}=r01(rqjKq-qkWc_*k_76K zVCQR%IY=_19RbsWfYqX*Ee!if_7!5PpA>W zmns;o(BMl*E;vUQfousIxJSoJIf;?xdd4c8pp7qg1u=7?P`b$CC59ywJXD>-=vzKK z@#m}i`+r2EtNjcF4({*nJ%$CDTcw$8b}INHWpwT);L@UL{-#irSGUg;nq~&Y4OK2rca~`-N<|VPIzTT z&TZH&9?K^fUmtF);m3|@Q*jb1_Zw;XkhWqNR~248w;s$2knTYT(hn3-IezLZu>&ElJHeB*|~zSNo0D@8khMn z`ttPmeec5W&pUa+90{zzTrGGg(XI!?L`nJcU6}CB_S2i(KV&!d&Oh^hrA*Z>;8tL+ z%ngW?izoo|tBTyg+uWr%t+j&^7LvmF(PC&o0)n!xP8mPB^cVH76kCTeavU zTrO~65{id{mr!UZ71ARoB^+z?c>LG((Hx=&$Emg9Wk#gMt1YJ9t|&Bw z$O(f+igT!m4V~3sy@C94-#o3rj10LLsCenz{h>bhLd+9i%ctERRCmn);Z=o&ap*v2 zE{fc;c7vAw6>*Xn0QR|x1Zp6J>mz? zf<&HRTgGzbe16FN4KYY75zrp(=z8j#ek9b){wTFzY^;B3Rb{gA0VI;6Mu@A>bu4@K zjO+K_!QGtN%9@9xC`b>n+0xAL#A-JVn-?{;wkKpXKR&xEa5ZNw46~mLl zAj=&~e3wve)HZbQP4%DS^8VZV!&Xn0GktHGX-Ro%gW4V6%hrvQ8?JKPh<9Dh$Ouy1 zu3An!^?Grgs&9hhjMaPp+n3&ivk4GP(qkPN8(tPhcT1cBkeG-|m4~EBabJ!LUgL41 zeT4Y%r07t_Vz%xwzv!jU^RF1fV>4~b&l)FQuh^{?1HlecY(%eGr>lJPSJ`X}hCl20 zgb0au{N!zv9_B-R;UV{TZJHmfRDLymHbH`!N_LG^ue3)z6ogq7(nl4b zP*A|*%=$RJ6P(^h<65g%?0tvUt*Lx3_}534R=>#QR+=@OK90 z48!$@KYf{)OrrwUz);GisuV&_U2=C)>PknB;0Z{{Ic2ZBwcF#fq^M1)E#Z%T3CswF zA95y7b4XTbj@%E=jllrbWz*`(*wk3|caOyfj;mW2RSm+%(n?C?D{x~s(#nZ$)n%5( z{?i@C1XGy2fsp{rDt4s3ntFmyMq=r7&PRY(5GUL;J`_7py1SG4=Cd=E^>3ds=LXSy zNyTT+QJiuwUfjKvWQN_)Y5p!PUoI)qNls?J*&I#Fcq_`h-?<5gOK3>=2C9O-Dy<{G z3&!qJ6e&Yff#RiN2u_r>r0TL%S`G*XsB45K69}QMoI3V%=N36RIqh9c>+Z-sE*b}y zN7raTc1s={TzSH7D=bC>Ko|RbZ2Q@dr8nz5Xr({%;-!gnQ5VngjkkWhrsd^Cp_^9L z^(8&eDMYA-A|lsm_!jDfI7tq8A_6#r#1X>8IcmtEprnHhS&f}d7N3-i;4OWN_LYeG$s;I0M<%Qh*bv{Ghzh~`n; zWuRQzbn4H~9f^V%DM*s8+f-z(-Ha=mx|M?8{l%p645dmuOP`B#4<_f4ukzh4+A-Bs z4`5*|^wGy}c7WrJL~_#Zh#4Ry@Obzj+vm|jPJeDw;f%%$b%Xdxg2rBQO4HFUMo=e8D=i%_wY%##1Ms>J<6Pa>4kLISH9_7Zzp~-T#<` z&P*gip$adIk0O?I0O6aSZ)n74#RyUnUY;&%#v#}mh<@%_xXl*)P%f?T2N%UhDlMG-+)PV$xE~t!>!Q7Aqg0{ zD~hr=0yxkQF4A(~=HcdE8+cm8FzN0&)nVr>#eyK=asR1kr8sL8S3epIFRbIaJi#AY z*tZ7f<*;Rz#rXh6MW)oq?OT^nJL&N1y~ua5tdsBF8F^Pn@fjP`8!x744(UeuQ>dTd zcp*aX7=1toY9&6ZEmo~UA|5px^=+SF2BX6D85!5~r^|5sK+9-yFJ9l0A@8(73*o+) z6LYzqZyO9*UdNaV#tZ=pF+n5)k%Fk^;QB968CLRGJhqP9uD1?CWCD>PgCCf6mzCv~ z*q4?&i9m^(HmS*swb3Lp_n!o6moG5_~!tL~1YDYcGr$s>*&(u`7D>oDtO1u_Z+S@2jr^_P6?+Sv~@y$1;Tpye7S8PsC&lX

    m9gP6oSU2L8RV^!-8^pCg#f*Q@>Z*~} z*DnpThVy3o@f|t+Y!bc><^!3cr@=^gcAT4S77w{ri>E=pNB%@%i*b?_4C`p?9yrBl z*v$@Yw%(}Eacz{!y>7!5N&4*>#H+^A$n$O&ChF@9ZMBL+!!!jFi_|g_XQR?iD1{hi z>lxe{<1}@`fMX8hWm(lmb`{()3#_7zOzw%nNv@WNUFC`+luxmh_K4kovIay5H84a0 zS@5&pEi$A;MF7gc+#s_ROFyb=1LXI}sPr7HF8z23%+7<;XY@7`6#Is_NIwpy<*zz@T43h&!36 zKbcq(XmHNRe>$Vj@rn9RY5!OlI33c%J3#hG1c9Jg2{q6HDNWA3Tph~MTe+>eX3DKy zcWz&KPyTSd*4T%fO~vk_r21Xb0tN?%fP|+96FS~1QI;8MI^52Z;~Fju*9(Klm-~n zYaMx{d(3IKq8-P9g+P8UKh%Dq`u2i5QVl31LJ&@{@BUBU{onk*hupj5 zo11i&A+9tlGeHOA7U}OOuYN=vDtHWA`l#@kDsev@dZ zOOe>2wP7N@4q@)=NNox#M!~SsD9A#Vqd=mZdR+ogBh6SAqb9KjaB8fBax$emhQ&<6 zp5sL8;U<|{lsjW|xMKLhrkxaT58Z_0Arpa?c#j5M-4A1`O){w2dEC!$TcdSJjqOmB|E zrIv+NgJ(g?-Z*~k#ys-W8=c*E?NgDAh^DFhw&rP-Pc^mr+qsgT^0b$#J9E2TS&HoE zQi8v}bFJ52ZZ`JV3YKC&QR3{pvuWY)j`TKyE9XEnd#l_4^`L6C#=P@HXb9?VTW32-BZ*5W8b};4`zH*=R9kF z`Tgbmdd*=VPXry&{v)SeTmQ<;kMJGtM#kWx&nqS&3MCQd1}!QX#N(fvzUv95*4AvJ zCM0VLw!gExZEVSQqt)aazZZJ^{7E+L>!|r;{S<+DtTv%?4y@SZZfdJ45aR-c4mlsz z%M)tTVAiiP`zZl9FOpLgO3REikx3Of4bkDk7XdrMgRDo22X{uKq!?1&T+mppcb-K` zjc#hT%F`oZfcmk81<9bL>jRe!58 z=(-$PRoxe6O5^y%72CO8*Z@KET!ea%0T2vKh%b`{>;Xdp6ilfR9G|BApEvb*oSp8A z`k!gw{x&!aocG?r?v(I&`4Vj?wwSw(j=?K!ZQ9zpj@daLMH2T_kM#7ZTiDhWrkkzT z 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≦Fc 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 z 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