From 0e92fcac39ebaff41ec8280d736687fbc63e2a44 Mon Sep 17 00:00:00 2001 From: Mr Martian Date: Mon, 30 Sep 2024 17:54:49 -0600 Subject: [PATCH] dataStore/dataStructures ready. proj4 and more readers complete --- benchmarks/stores.ts | 111 +- bun.lockb | Bin 185616 -> 110943 bytes package.json | 11 +- .../.github/workflows/build-and-test.yml | 31 - proj4js-master/.gitignore | 7 - proj4js-master/.jshintrc | 12 - proj4js-master/.npmignore | 3 - proj4js-master/AUTHORS | 25 - proj4js-master/Gruntfile.js | 128 - proj4js-master/LICENSE.md | 29 - proj4js-master/PUBLISHING.md | 22 - proj4js-master/README.md | 196 - proj4js-master/REFERENCES.md | 33 - proj4js-master/bower.json | 24 - proj4js-master/bun.lockb | Bin 135373 -> 0 bytes proj4js-master/changelog.md | 21 - proj4js-master/component.json | 17 - proj4js-master/lib/Point.js | 34 - proj4js-master/lib/Proj.js | 75 - proj4js-master/lib/adjust_axis.js | 61 - proj4js-master/lib/checkSanity.js | 15 - proj4js-master/lib/common/acosh.js | 3 - proj4js-master/lib/common/adjust_lat.js | 6 - proj4js-master/lib/common/adjust_lon.js | 7 - proj4js-master/lib/common/adjust_zone.js | 14 - proj4js-master/lib/common/asinh.js | 4 - proj4js-master/lib/common/asinhy.js | 9 - proj4js-master/lib/common/asinz.js | 6 - proj4js-master/lib/common/atanh.js | 3 - proj4js-master/lib/common/clens.js | 15 - proj4js-master/lib/common/clens_cmplx.js | 32 - proj4js-master/lib/common/cosh.js | 5 - proj4js-master/lib/common/e0fn.js | 3 - proj4js-master/lib/common/e1fn.js | 3 - proj4js-master/lib/common/e2fn.js | 3 - proj4js-master/lib/common/e3fn.js | 3 - proj4js-master/lib/common/fL.js | 5 - proj4js-master/lib/common/gN.js | 4 - proj4js-master/lib/common/gatg.js | 15 - proj4js-master/lib/common/hypot.js | 8 - proj4js-master/lib/common/imlfn.js | 16 - proj4js-master/lib/common/invlatiso.js | 13 - proj4js-master/lib/common/iqsfnz.js | 32 - proj4js-master/lib/common/latiso.js | 16 - proj4js-master/lib/common/log1py.js | 6 - proj4js-master/lib/common/mlfn.js | 3 - proj4js-master/lib/common/msfnz.js | 4 - proj4js-master/lib/common/phi2z.js | 17 - proj4js-master/lib/common/pj_enfn.js | 24 - proj4js-master/lib/common/pj_inv_mlfn.js | 23 - proj4js-master/lib/common/pj_mlfn.js | 5 - proj4js-master/lib/common/qsfnz.js | 10 - proj4js-master/lib/common/sign.js | 3 - proj4js-master/lib/common/sinh.js | 5 - proj4js-master/lib/common/srat.js | 3 - proj4js-master/lib/common/tanh.js | 5 - proj4js-master/lib/common/toPoint.js | 13 - proj4js-master/lib/common/tsfnz.js | 8 - proj4js-master/lib/constants/Datum.js | 109 - proj4js-master/lib/constants/Ellipsoid.js | 266 - proj4js-master/lib/constants/PrimeMeridian.js | 16 - proj4js-master/lib/constants/units.js | 4 - proj4js-master/lib/constants/values.js | 29 - proj4js-master/lib/core.js | 86 - proj4js-master/lib/datum.js | 39 - proj4js-master/lib/datumUtils.js | 247 - proj4js-master/lib/datum_transform.js | 201 - proj4js-master/lib/defs.js | 55 - proj4js-master/lib/deriveConstants.js | 48 - proj4js-master/lib/extend.js | 14 - proj4js-master/lib/global.js | 11 - proj4js-master/lib/includedProjections.js | 71 - proj4js-master/lib/index.js | 22 - proj4js-master/lib/match.js | 17 - proj4js-master/lib/nadgrid.js | 140 - proj4js-master/lib/parseCode.js | 62 - proj4js-master/lib/projString.js | 145 - proj4js-master/lib/projections.js | 39 - proj4js-master/lib/projections/aea.js | 129 - proj4js-master/lib/projections/aeqd.js | 208 - proj4js-master/lib/projections/bonne.js | 114 - proj4js-master/lib/projections/cass.js | 108 - proj4js-master/lib/projections/cea.js | 70 - proj4js-master/lib/projections/eqc.js | 48 - proj4js-master/lib/projections/eqdc.js | 117 - proj4js-master/lib/projections/eqearth.js | 93 - proj4js-master/lib/projections/equi.js | 48 - proj4js-master/lib/projections/etmerc.js | 172 - proj4js-master/lib/projections/gauss.js | 52 - proj4js-master/lib/projections/geocent.js | 27 - proj4js-master/lib/projections/geos.js | 160 - proj4js-master/lib/projections/gnom.js | 104 - proj4js-master/lib/projections/gstmerc.js | 63 - proj4js-master/lib/projections/krovak.js | 106 - proj4js-master/lib/projections/laea.js | 298 - proj4js-master/lib/projections/lcc.js | 150 - proj4js-master/lib/projections/longlat.js | 16 - proj4js-master/lib/projections/merc.js | 101 - proj4js-master/lib/projections/mill.js | 52 - proj4js-master/lib/projections/moll.js | 83 - proj4js-master/lib/projections/nzmg.js | 226 - proj4js-master/lib/projections/omerc.js | 244 - proj4js-master/lib/projections/ortho.js | 91 - proj4js-master/lib/projections/poly.js | 135 - proj4js-master/lib/projections/qsc.js | 368 - proj4js-master/lib/projections/robin.js | 161 - proj4js-master/lib/projections/sinu.js | 115 - proj4js-master/lib/projections/somerc.js | 86 - proj4js-master/lib/projections/stere.js | 188 - proj4js-master/lib/projections/sterea.js | 65 - proj4js-master/lib/projections/tmerc.js | 174 - proj4js-master/lib/projections/tpers.js | 169 - proj4js-master/lib/projections/utm.js | 30 - proj4js-master/lib/projections/vandg.js | 129 - proj4js-master/lib/transform.js | 115 - proj4js-master/package-lock.json | 7011 ----------------- proj4js-master/package.json | 46 - proj4js-master/publish.sh | 21 - proj4js-master/test/BETA2007.gsb | Bin 83696 -> 0 bytes proj4js-master/test/amd.html | 63 - proj4js-master/test/opt.html | 25 - proj4js-master/test/package.json.js | 1 - proj4js-master/test/test.js | 567 -- proj4js-master/test/testData.js | 891 --- src/dataStore/file.ts | 261 +- src/dataStore/index.ts | 6 - src/dataStore/kv/file.ts | 93 +- src/dataStore/kv/index.ts | 18 +- src/dataStore/kv/mmap.ts | 43 + src/dataStore/mmap.ts | 187 +- src/dataStore/multimap/file.ts | 46 + src/dataStore/multimap/index.ts | 33 +- src/dataStore/multimap/mmap.ts | 41 + src/dataStore/vector/file.ts | 58 + src/dataStore/vector/index.ts | 57 +- src/dataStore/vector/mmap.ts | 53 + src/dataStructures/pointCluster.ts | 77 +- src/dataStructures/pointIndex.ts | 109 +- src/dataStructures/uint64.ts | 72 + src/geometry/index.ts | 6 +- src/proj4/constants/datums.ts | 14 +- src/proj4/datum.ts | 130 +- src/proj4/parseCode.ts | 9 +- src/proj4/projections/base.ts | 3 + src/proj4/projections/index.ts | 2 + src/proj4/transformer.ts | 18 +- src/readers/README.md | 2 +- src/readers/geotiff/constants.ts | 91 +- src/readers/geotiff/decoder.ts | 2 +- src/readers/geotiff/image.ts | 34 +- src/readers/geotiff/index.ts | 24 +- src/readers/geotiff/jpeg.ts | 2 +- src/readers/geotiff/proj.ts | 10 +- src/readers/nadgrid.ts | 200 +- src/readers/netCDF/data.ts | 66 + src/readers/netCDF/header.ts | 296 + src/readers/netCDF/index.ts | 219 + src/readers/netCDF/parser.ts | 164 + src/readers/netCDF/type.ts | 140 + src/util/polyfills/image.ts | 6 +- .../proj4/fixtures}/ntv2_0_downsampled.gsb | Bin tests/proj4/index.test.ts | 168 - tests/proj4/mgrs.test.ts | 7 +- tests/proj4/nadgrid.test.ts | 103 + tests/readers/geotiff/fixtures/ntv2_0.gsb | Bin 0 -> 13817072 bytes tests/readers/geotiff/proj4.test.ts | 8 +- tmpTests2.ts | 49 +- 167 files changed, 2142 insertions(+), 16855 deletions(-) delete mode 100644 proj4js-master/.github/workflows/build-and-test.yml delete mode 100644 proj4js-master/.gitignore delete mode 100644 proj4js-master/.jshintrc delete mode 100644 proj4js-master/.npmignore delete mode 100644 proj4js-master/AUTHORS delete mode 100644 proj4js-master/Gruntfile.js delete mode 100644 proj4js-master/LICENSE.md delete mode 100644 proj4js-master/PUBLISHING.md delete mode 100644 proj4js-master/README.md delete mode 100644 proj4js-master/REFERENCES.md delete mode 100644 proj4js-master/bower.json delete mode 100755 proj4js-master/bun.lockb delete mode 100644 proj4js-master/changelog.md delete mode 100644 proj4js-master/component.json delete mode 100644 proj4js-master/lib/Point.js delete mode 100644 proj4js-master/lib/Proj.js delete mode 100644 proj4js-master/lib/adjust_axis.js delete mode 100644 proj4js-master/lib/checkSanity.js delete mode 100644 proj4js-master/lib/common/acosh.js delete mode 100644 proj4js-master/lib/common/adjust_lat.js delete mode 100644 proj4js-master/lib/common/adjust_lon.js delete mode 100644 proj4js-master/lib/common/adjust_zone.js delete mode 100644 proj4js-master/lib/common/asinh.js delete mode 100644 proj4js-master/lib/common/asinhy.js delete mode 100644 proj4js-master/lib/common/asinz.js delete mode 100644 proj4js-master/lib/common/atanh.js delete mode 100644 proj4js-master/lib/common/clens.js delete mode 100644 proj4js-master/lib/common/clens_cmplx.js delete mode 100644 proj4js-master/lib/common/cosh.js delete mode 100644 proj4js-master/lib/common/e0fn.js delete mode 100644 proj4js-master/lib/common/e1fn.js delete mode 100644 proj4js-master/lib/common/e2fn.js delete mode 100644 proj4js-master/lib/common/e3fn.js delete mode 100644 proj4js-master/lib/common/fL.js delete mode 100644 proj4js-master/lib/common/gN.js delete mode 100644 proj4js-master/lib/common/gatg.js delete mode 100644 proj4js-master/lib/common/hypot.js delete mode 100644 proj4js-master/lib/common/imlfn.js delete mode 100644 proj4js-master/lib/common/invlatiso.js delete mode 100644 proj4js-master/lib/common/iqsfnz.js delete mode 100644 proj4js-master/lib/common/latiso.js delete mode 100644 proj4js-master/lib/common/log1py.js delete mode 100644 proj4js-master/lib/common/mlfn.js delete mode 100644 proj4js-master/lib/common/msfnz.js delete mode 100644 proj4js-master/lib/common/phi2z.js delete mode 100644 proj4js-master/lib/common/pj_enfn.js delete mode 100644 proj4js-master/lib/common/pj_inv_mlfn.js delete mode 100644 proj4js-master/lib/common/pj_mlfn.js delete mode 100644 proj4js-master/lib/common/qsfnz.js delete mode 100644 proj4js-master/lib/common/sign.js delete mode 100644 proj4js-master/lib/common/sinh.js delete mode 100644 proj4js-master/lib/common/srat.js delete mode 100644 proj4js-master/lib/common/tanh.js delete mode 100644 proj4js-master/lib/common/toPoint.js delete mode 100644 proj4js-master/lib/common/tsfnz.js delete mode 100644 proj4js-master/lib/constants/Datum.js delete mode 100644 proj4js-master/lib/constants/Ellipsoid.js delete mode 100644 proj4js-master/lib/constants/PrimeMeridian.js delete mode 100644 proj4js-master/lib/constants/units.js delete mode 100644 proj4js-master/lib/constants/values.js delete mode 100644 proj4js-master/lib/core.js delete mode 100644 proj4js-master/lib/datum.js delete mode 100644 proj4js-master/lib/datumUtils.js delete mode 100644 proj4js-master/lib/datum_transform.js delete mode 100644 proj4js-master/lib/defs.js delete mode 100644 proj4js-master/lib/deriveConstants.js delete mode 100644 proj4js-master/lib/extend.js delete mode 100644 proj4js-master/lib/global.js delete mode 100644 proj4js-master/lib/includedProjections.js delete mode 100644 proj4js-master/lib/index.js delete mode 100644 proj4js-master/lib/match.js delete mode 100644 proj4js-master/lib/nadgrid.js delete mode 100644 proj4js-master/lib/parseCode.js delete mode 100644 proj4js-master/lib/projString.js delete mode 100644 proj4js-master/lib/projections.js delete mode 100644 proj4js-master/lib/projections/aea.js delete mode 100644 proj4js-master/lib/projections/aeqd.js delete mode 100644 proj4js-master/lib/projections/bonne.js delete mode 100644 proj4js-master/lib/projections/cass.js delete mode 100644 proj4js-master/lib/projections/cea.js delete mode 100644 proj4js-master/lib/projections/eqc.js delete mode 100644 proj4js-master/lib/projections/eqdc.js delete mode 100644 proj4js-master/lib/projections/eqearth.js delete mode 100644 proj4js-master/lib/projections/equi.js delete mode 100644 proj4js-master/lib/projections/etmerc.js delete mode 100644 proj4js-master/lib/projections/gauss.js delete mode 100644 proj4js-master/lib/projections/geocent.js delete mode 100644 proj4js-master/lib/projections/geos.js delete mode 100644 proj4js-master/lib/projections/gnom.js delete mode 100644 proj4js-master/lib/projections/gstmerc.js delete mode 100644 proj4js-master/lib/projections/krovak.js delete mode 100644 proj4js-master/lib/projections/laea.js delete mode 100644 proj4js-master/lib/projections/lcc.js delete mode 100644 proj4js-master/lib/projections/longlat.js delete mode 100644 proj4js-master/lib/projections/merc.js delete mode 100644 proj4js-master/lib/projections/mill.js delete mode 100644 proj4js-master/lib/projections/moll.js delete mode 100644 proj4js-master/lib/projections/nzmg.js delete mode 100644 proj4js-master/lib/projections/omerc.js delete mode 100644 proj4js-master/lib/projections/ortho.js delete mode 100644 proj4js-master/lib/projections/poly.js delete mode 100644 proj4js-master/lib/projections/qsc.js delete mode 100644 proj4js-master/lib/projections/robin.js delete mode 100644 proj4js-master/lib/projections/sinu.js delete mode 100644 proj4js-master/lib/projections/somerc.js delete mode 100644 proj4js-master/lib/projections/stere.js delete mode 100644 proj4js-master/lib/projections/sterea.js delete mode 100644 proj4js-master/lib/projections/tmerc.js delete mode 100644 proj4js-master/lib/projections/tpers.js delete mode 100644 proj4js-master/lib/projections/utm.js delete mode 100644 proj4js-master/lib/projections/vandg.js delete mode 100644 proj4js-master/lib/transform.js delete mode 100644 proj4js-master/package-lock.json delete mode 100644 proj4js-master/package.json delete mode 100755 proj4js-master/publish.sh delete mode 100644 proj4js-master/test/BETA2007.gsb delete mode 100644 proj4js-master/test/amd.html delete mode 100644 proj4js-master/test/opt.html delete mode 100644 proj4js-master/test/package.json.js delete mode 100644 proj4js-master/test/test.js delete mode 100644 proj4js-master/test/testData.js create mode 100644 src/dataStore/kv/mmap.ts create mode 100644 src/dataStore/multimap/mmap.ts create mode 100644 src/dataStore/vector/mmap.ts create mode 100644 src/dataStructures/uint64.ts create mode 100644 src/readers/netCDF/data.ts create mode 100644 src/readers/netCDF/header.ts create mode 100644 src/readers/netCDF/index.ts create mode 100644 src/readers/netCDF/parser.ts create mode 100644 src/readers/netCDF/type.ts rename {proj4js-master/test => tests/proj4/fixtures}/ntv2_0_downsampled.gsb (100%) create mode 100644 tests/proj4/nadgrid.test.ts create mode 100644 tests/readers/geotiff/fixtures/ntv2_0.gsb diff --git a/benchmarks/stores.ts b/benchmarks/stores.ts index b209a624..6fa4e4db 100644 --- a/benchmarks/stores.ts +++ b/benchmarks/stores.ts @@ -1,5 +1,5 @@ -import { Database } from 'bun:sqlite'; -// import { S2FileStore } from '../src/dataStore/file'; +// import { Database } from 'bun:sqlite'; +import { S2FileStore } from '../src/dataStore/file'; import { S2MMapStore } from '../src/dataStore/mmap'; // import { open } from 'lmdb'; import tmp from 'tmp'; @@ -7,11 +7,11 @@ import tmp from 'tmp'; tmp.setGracefulCleanup(); const dir = tmp.dirSync({ prefix: 'store_benchmarks' }); -// const TEST_SIZE = 1_000_000; const TEST_SIZE = 100_000; -const mmapStore = new S2MMapStore<{ a: number }>(`${dir.name}/mmap`, false, false); -// const fileStore = new S2FileStore<{ a: number }>(`${dir.name}/file`, false, false); +/// ---------------------------------------------- + +const mmapStore = new S2MMapStore<{ a: number }>(`${dir.name}/mmap`); const mmapAddStart = Bun.nanoseconds(); for (let i = 0; i < TEST_SIZE; i++) { @@ -25,14 +25,14 @@ console.info('mmap Add time: ', mmapAddSeconds); // lets sort: const mmapSortStart = Bun.nanoseconds(); -await mmapStore.switchToReadState(); +await mmapStore.sort(); const mmapSortEnd = Bun.nanoseconds(); const mmapSortSeconds = (mmapSortEnd - mmapSortStart) / 1_000_000_000; console.info('mmap Sort time: ', mmapSortSeconds); // query const mmapQueryStart = Bun.nanoseconds(); -const mmapRes = mmapStore.get(22, 1); +const mmapRes = await mmapStore.get(22, 1); const mmapQueryEnd = Bun.nanoseconds(); const mmapQuerySeconds = (mmapQueryEnd - mmapQueryStart) / 1_000_000_000; console.info('mmap Query time: ', mmapQuerySeconds, mmapRes); @@ -41,20 +41,35 @@ console.info('mmap total time: ', mmapAddSeconds + mmapSortSeconds + mmapQuerySe /// ---------------------------------------------- -// const fileAddStart = Bun.nanoseconds(); -// for (let i = 0; i < 10_000; i++) fileStore.set(i, { a: i }); -// const fileAddEnd = Bun.nanoseconds(); -// const fileAddSeconds = (fileAddEnd - fileAddStart) / 1_000_000_000; -// console.info('file Add time: ', fileAddSeconds); +const fileStore = new S2FileStore<{ a: number }>(`${dir.name}/file`); + +const fileAddStart = Bun.nanoseconds(); +for (let i = 0; i < TEST_SIZE; i++) { + const rand = getRandomInt(0, TEST_SIZE); + fileStore.set(rand, { a: rand }); +} +fileStore.set(22, { a: 22 }); +const fileAddEnd = Bun.nanoseconds(); +const fileAddSeconds = (fileAddEnd - fileAddStart) / 1_000_000_000; +console.info('file Add time: ', fileAddSeconds); + +// lets sort: +const fileSortStart = Bun.nanoseconds(); +await fileStore.sort(); +const fileSortEnd = Bun.nanoseconds(); +const fileSortSeconds = (fileSortEnd - fileSortStart) / 1_000_000_000; +console.info('file Sort time: ', fileSortSeconds); + +// query +const fileQueryStart = Bun.nanoseconds(); +const fileRes = await fileStore.get(22, 1); +const fileQueryEnd = Bun.nanoseconds(); +const fileQuerySeconds = (fileQueryEnd - fileQueryStart) / 1_000_000_000; +console.info('file Query time: ', fileQuerySeconds, fileRes); -// // lets sort: -// const fileSortStart = Bun.nanoseconds(); -// fileStore.has(0); -// const fileSortEnd = Bun.nanoseconds(); -// const fileSortSeconds = (fileSortEnd - fileSortStart) / 1_000_000_000; -// console.info('file Sort time: ', fileSortSeconds); +console.info('file total time: ', fileAddSeconds + fileSortSeconds + fileQuerySeconds); -// console.info('file total time: ', fileAddSeconds + fileSortSeconds); +fileStore.close(); /// ---------------------------------------------- @@ -81,35 +96,35 @@ console.info('mmap total time: ', mmapAddSeconds + mmapSortSeconds + mmapQuerySe /// ---------------------------------------------- -const db = new Database(`${dir.name}/sqlite.db`); -db.exec(` - CREATE TABLE IF NOT EXISTS data ( - hi INTEGER NOT NULL, - lo INTEGER NOT NULL, - value BLOB NOT NULL - ); - CREATE INDEX IF NOT EXISTS idx_hi_lo ON data (hi, lo); -`); - -// Adding data as BLOB to SQLite -const sqliteAddStart = Bun.nanoseconds(); -const insert = db.prepare('INSERT INTO data (hi, lo, value) VALUES (?, ?, ?)'); -for (let i = 0; i < TEST_SIZE; i++) { - const rand = getRandomInt(0, TEST_SIZE); - insert.run(0, rand, Buffer.from(JSON.stringify({ a: rand }))); // Storing Buffer as BLOB -} -const sqliteAddEnd = Bun.nanoseconds(); -const sqliteAddSeconds = (sqliteAddEnd - sqliteAddStart) / 1_000_000_000; -console.info('SQLite Add time: ', sqliteAddSeconds); - -// Let's perform a simple lookup to simulate a query -const sqliteQueryStart = Bun.nanoseconds(); -const res = db.prepare('SELECT * FROM data WHERE hi = ? AND lo = ?').get(0, 22); // Query the first entry -const sqliteQueryEnd = Bun.nanoseconds(); -const sqliteQuerySeconds = (sqliteQueryEnd - sqliteQueryStart) / 1_000_000_000; -console.info('SQLite Query time: ', sqliteQuerySeconds, res); - -console.info('SQLite total time: ', sqliteAddSeconds + sqliteQuerySeconds); +// const db = new Database(`${dir.name}/sqlite.db`); +// db.exec(` +// CREATE TABLE IF NOT EXISTS data ( +// hi INTEGER NOT NULL, +// lo INTEGER NOT NULL, +// value BLOB NOT NULL +// ); +// CREATE INDEX IF NOT EXISTS idx_hi_lo ON data (hi, lo); +// `); + +// // Adding data as BLOB to SQLite +// const sqliteAddStart = Bun.nanoseconds(); +// const insert = db.prepare('INSERT INTO data (hi, lo, value) VALUES (?, ?, ?)'); +// for (let i = 0; i < TEST_SIZE; i++) { +// const rand = getRandomInt(0, TEST_SIZE); +// insert.run(0, rand, Buffer.from(JSON.stringify({ a: rand }))); // Storing Buffer as BLOB +// } +// const sqliteAddEnd = Bun.nanoseconds(); +// const sqliteAddSeconds = (sqliteAddEnd - sqliteAddStart) / 1_000_000_000; +// console.info('SQLite Add time: ', sqliteAddSeconds); + +// // Let's perform a simple lookup to simulate a query +// const sqliteQueryStart = Bun.nanoseconds(); +// const res = db.prepare('SELECT * FROM data WHERE hi = ? AND lo = ?').get(0, 22); // Query the first entry +// const sqliteQueryEnd = Bun.nanoseconds(); +// const sqliteQuerySeconds = (sqliteQueryEnd - sqliteQueryStart) / 1_000_000_000; +// console.info('SQLite Query time: ', sqliteQuerySeconds, res); + +// console.info('SQLite total time: ', sqliteAddSeconds + sqliteQuerySeconds); /** * Generate a random whole number between two given values. diff --git a/bun.lockb b/bun.lockb index 008a64f691ba751e03921bdd35ac433a3d62cde0..f54d843546b39ebc3434e40a380ca5d8d09b8661 100755 GIT binary patch delta 23511 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 AbN~PV diff --git a/package.json b/package.json index 2054e57b..4d4fa5ab 100755 --- a/package.json +++ b/package.json @@ -63,16 +63,16 @@ "homepage": "https://github.com/Open-S2/s2-tools#readme", "devDependencies": { "@skypack/package-check": "^0.2.2", - "@types/bun": "^1.1.9", + "@types/bun": "^1.1.10", "@types/node": "^22.5.5", "@types/tmp": "^0.2.6", - "eslint": "^9.10.0", + "eslint": "^9.11.1", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-jsdoc": "^50.2.3", + "eslint-plugin-jsdoc": "^50.3.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-tsdoc": "^0.3.0", "geotiff": "^2.1.3", - "lmdb": "^3.1.2", + "lmdb": "^3.1.3", "nextafter": "^1.0.0", "prettier": "^3.3.3", "robust-orientation": "^1.2.1", @@ -80,11 +80,10 @@ "typedoc": "^0.26.7", "typedoc-plugin-coverage": "^3.3.0", "typescript": "^5.6.2", - "typescript-eslint": "^8.5.0" + "typescript-eslint": "^8.7.0" }, "dependencies": { "earclip": "^1.1.0", - "latest": "^0.2.0", "open-vector-tile": "^1.3.0", "s2-tilejson": "^1.6.0", "s2json-spec": "^1.5.5", diff --git a/proj4js-master/.github/workflows/build-and-test.yml b/proj4js-master/.github/workflows/build-and-test.yml deleted file mode 100644 index b1ce32d7..00000000 --- a/proj4js-master/.github/workflows/build-and-test.yml +++ /dev/null @@ -1,31 +0,0 @@ -# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs - -name: Node.js CI - -on: - push: - branches: [ "master" ] - pull_request: - branches: [ "master" ] - -jobs: - build: - - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [14.x, 16.x, 18.x] - # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ - - steps: - - uses: actions/checkout@v3 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - cache: 'npm' - - run: npm ci - - run: npm run build --if-present - - run: npm test diff --git a/proj4js-master/.gitignore b/proj4js-master/.gitignore deleted file mode 100644 index e7af7c18..00000000 --- a/proj4js-master/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -*~ -node_modules -.c9revisions -coverage -projs.js -.DS_STORE -dist diff --git a/proj4js-master/.jshintrc b/proj4js-master/.jshintrc deleted file mode 100644 index 86a6e6fa..00000000 --- a/proj4js-master/.jshintrc +++ /dev/null @@ -1,12 +0,0 @@ -{ - "esversion": 6, - "curly": true, - "eqeqeq": true, - "latedef": "nofunc", - "undef": true, - "unused": true, - "trailing": true, - "indent": 2, - "browser": true, - "node": true -} \ No newline at end of file diff --git a/proj4js-master/.npmignore b/proj4js-master/.npmignore deleted file mode 100644 index f085fab8..00000000 --- a/proj4js-master/.npmignore +++ /dev/null @@ -1,3 +0,0 @@ -*~ -.c9revisions -coverage diff --git a/proj4js-master/AUTHORS b/proj4js-master/AUTHORS deleted file mode 100644 index 1d39107a..00000000 --- a/proj4js-master/AUTHORS +++ /dev/null @@ -1,25 +0,0 @@ -Mike Adair -Richard Greenwood -Calvin Metcalf -Richard Marsden (http://www.winwaed.com) -#credit for -#src/projCode/gnom.js -#src/projCode/cea.js -T. Mittan -#credit for -#src/projCode/eqdc.js -#src/projCode/equi.js -#src/projCode/merc.js -#src/projCode/mill.js -#src/projCode/omerc.js -#src/projCode/ortho.js -#src/projCode/poly.js -#src/projCode/poly.js -D. Steinwand -#credit for -#src/projCode/merc.js -#src/projCode/laea.js -#src/projCode/moll.js -S. Nelson -#credit for -#src/projCode/moll.js \ No newline at end of file diff --git a/proj4js-master/Gruntfile.js b/proj4js-master/Gruntfile.js deleted file mode 100644 index 20f38993..00000000 --- a/proj4js-master/Gruntfile.js +++ /dev/null @@ -1,128 +0,0 @@ -var json = require('rollup-plugin-json'); -var nodeResolve = require('rollup-plugin-node-resolve'); -var replace = require('rollup-plugin-replace'); -var pkg = require('./package.json'); - -var projs = [ - 'tmerc', - 'etmerc', - 'utm', - 'sterea', - 'stere', - 'somerc', - 'omerc', - 'lcc', - 'krovak', - 'cass', - 'laea', - 'aea', - 'gnom', - 'cea', - 'eqc', - 'poly', - 'nzmg', - 'mill', - 'sinu', - 'moll', - 'eqdc', - 'vandg', - 'aeqd', - 'ortho', - 'qsc', - 'robin', - 'geocent', - 'tpers', - 'geos', - 'eqearth', - 'bonne' -]; -module.exports = function (grunt) { - grunt.initConfig({ - pkg: grunt.file.readJSON('package.json'), - connect: { - server: { - options: { - port: process.env.PORT || 8080, - base: '.' - } - } - }, - mocha_phantomjs: { - all: { - options: { - reporter: "dot", - urls: [ //my ide requries process.env.IP and PORT - "http://" + (process.env.IP || "127.0.0.1") + ":" + (process.env.PORT || "8080") + "/test/amd.html", - "http://" + (process.env.IP || "127.0.0.1") + ":" + (process.env.PORT || "8080") + "/test/opt.html" - ] - } - } - }, - jshint: { - options: { - jshintrc: "./.jshintrc" - }, - all: ['./lib/*.js', './lib/*/*.js'] - }, - rollup: { - options: { - format: "umd", - moduleName: "proj4", - plugins: [ - replace({ - __VERSION__: pkg.version - }), - json(), - nodeResolve() - ] - }, - files: { - dest: './dist/proj4-src.js', - src: './lib/index.js', - }, - }, - uglify: { - options: { - report: 'gzip', - mangle:{ - reserved: ['proj4','Projection','Point'] - }, - }, - all: { - src: 'dist/proj4-src.js', - dest: 'dist/proj4.js' - } - } - }); - grunt.loadNpmTasks('grunt-rollup'); - grunt.loadNpmTasks('grunt-contrib-uglify'); - grunt.loadNpmTasks('grunt-contrib-jshint'); - grunt.loadNpmTasks('grunt-contrib-connect'); - grunt.loadNpmTasks('grunt-mocha-phantomjs'); - grunt.registerTask('custom',function(){ - grunt.task.run('rollup', 'uglify'); - var projections = this.args; - if(projections[0]==='default'){ - grunt.file.write('./projs.js','export default function(){}'); - return; - } - if(projections[0]==='all'){ - projections = projs; - } - grunt.file.write('./projs.js',[ - projections.map(function(proj) { - return "import " + proj + " from './lib/projections/" + proj + "';"; - }).join("\n"), - "export default function(proj4){", - projections.map(function(proj) { - return " proj4.Proj.projections.add(" + proj + ");" - }).join("\n"), - "}" - ].join("\n")); - }); - grunt.registerTask('build',function(){ - var args = this.args.length?this.args[0].split(','):['default']; - grunt.task.run('jshint', 'custom:'+args.join(':')); - }); - grunt.registerTask('default', ['build:all', 'connect','mocha_phantomjs']); -}; diff --git a/proj4js-master/LICENSE.md b/proj4js-master/LICENSE.md deleted file mode 100644 index d1d91072..00000000 --- a/proj4js-master/LICENSE.md +++ /dev/null @@ -1,29 +0,0 @@ -## Proj4js -- Javascript reprojection library. - -Authors: -- Mike Adair madairATdmsolutions.ca -- Richard Greenwood richATgreenwoodmap.com -- Didier Richard didier.richardATign.fr -- Stephen Irons stephen.ironsATclear.net.nz -- Olivier Terral oterralATgmail.com -- Calvin Metcalf cmetcalfATappgeo.com - -Copyright (c) 2014, Mike Adair, Richard Greenwood, Didier Richard, Stephen Irons, Olivier Terral and Calvin Metcalf - - 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/proj4js-master/PUBLISHING.md b/proj4js-master/PUBLISHING.md deleted file mode 100644 index c8e969a7..00000000 --- a/proj4js-master/PUBLISHING.md +++ /dev/null @@ -1,22 +0,0 @@ -Publishing -=== - -Make sure you have the latest from the main branch: - - git pull origin master - -Use `tin` to update the version number in the `package.json`, `component.json` & `bower.json`. - - tin -v x.y.z - -Then run the publish script - - ./publish.sh - -afterwards don't forget to update the versions to be a prerelease of the next version, so if you just published 1.1.1 then: - - tin -v 1.1.2-alpha - npm install - git add package.json package-lock.json component.json bower.json - git commit -m 'update version to 1.1.2-alpha' - git push origin master diff --git a/proj4js-master/README.md b/proj4js-master/README.md deleted file mode 100644 index 1736641b..00000000 --- a/proj4js-master/README.md +++ /dev/null @@ -1,196 +0,0 @@ -# PROJ4JS ![Build Status](https://github.com/proj4js/proj4js/actions/workflows/build-and-test.yml/badge.svg) - -Proj4js is a JavaScript library to transform point coordinates from one coordinate system to another, including datum transformations. -Originally a port of [PROJ](https://proj.org/) ([then known as PROJ.4](https://proj.org/faq.html#what-happened-to-proj-4)) and GCTCP C ([Archive](https://web.archive.org/web/20130523091752/http://edcftp.cr.usgs.gov/pub/software/gctpc/)) it is -a part of the [MetaCRS](https://trac.osgeo.org/metacrs/wiki) group of projects. - -## Installing - -Depending on your preferences - -```bash -npm install proj4 -bower install proj4 -component install proj4js/proj4js -``` - -or just manually grab the file `proj4.js` from the [latest release](https://github.com/proj4js/proj4js/releases)'s `dist/` folder. - -If you do not want to download anything, Proj4js is also hosted on [cdnjs](https://www.cdnjs.com/libraries/proj4js) for direct use in your browser applications. - -## Using - -The basic signature is: - -```javascript -proj4([fromProjection, ]toProjection[, coordinates]) -``` - -Projections can be proj or wkt strings. - -Wkt strings must be in form of [version 1](https://docs.ogc.org/is/18-010r7/18-010r7.html#196) (earlier than 2015). Have a look at the [wkt-parser](https://github.com/proj4js/wkt-parser) for more info, or use proj strings instead. - -Coordinates may be an object of the form `{x:x,y:y}` or an array of the form `[x,y]`. - -When all 3 arguments are given, the result is that the coordinates are transformed from projection1 to projection 2. And returned in the same format that they were given in. - -```javascript -var firstProjection = 'PROJCS["NAD83 / Massachusetts Mainland",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4269"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.68333333333333],PARAMETER["standard_parallel_2",41.71666666666667],PARAMETER["latitude_of_origin",41],PARAMETER["central_meridian",-71.5],PARAMETER["false_easting",200000],PARAMETER["false_northing",750000],AUTHORITY["EPSG","26986"],AXIS["X",EAST],AXIS["Y",NORTH]]'; -var secondProjection = "+proj=gnom +lat_0=90 +lon_0=0 +x_0=6300000 +y_0=6300000 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"; -//I'm not going to redefine those two in latter examples. -proj4(firstProjection,secondProjection,[-122.305887, 58.9465872]); -// [-2690575.447893817, 36622916.8071244564] -``` - -The library can also parse coordinates provided with an elevation and measure, again as an object of the form `{x:x,y:y,z:z,m:m}` or an array of the form `[x,y,z,m]`. - -```javascript -proj4(firstProjection,secondProjection,[-122.305887, 58.9465872,10]); -// [-2690575.447893817, 36622916.8071244564, 10] -``` - -If only 1 projection is given then it is assumed that it is being projected *from* WGS84 (fromProjection is WGS84). - -```javascript -proj4(firstProjection,[-71,41]); -// [242075.00535055372, 750123.32090043] -``` - -If no coordinates are given an object with two methods is returned, its methods are `forward` which projects from the first projection to the second and `inverse` which projects from the second to the first. - -```javascript -proj4(firstProjection,secondProjection).forward([-122.305887, 58.9465872]); -// [-2690575.447893817, 36622916.8071244564] -proj4(secondProjection,firstProjection).inverse([-122.305887, 58.9465872]); -// [-2690575.447893817, 36622916.8071244564] -``` - -And as above if only one projection is given, it's assumed to be coming from wgs84: - -```javascript -proj4(firstProjection).forward([-71,41]); -// [242075.00535055372, 750123.32090043] -proj4(firstProjection).inverse([242075.00535055372, 750123.32090043]); -// [-71, 40.99999999999986] -``` -Note: The generation of the floating point value `40.99999999999986` in this example represents the fact that some variance in precision is involved in any conversion between one coordinate reference system and another. - -## Named Projections - -If you prefer to define a projection as a string and reference it that way, you may use the proj4.defs method which can be called 2 ways, with a name and projection: - -```js -proj4.defs('WGS84', "+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"); -``` - -or with an array - -```js -proj4.defs([ - [ - 'EPSG:4326', - '+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees'], - [ - 'EPSG:4269', - '+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees' - ] -]); -``` - -you can then do - -```js -proj4('EPSG:4326'); -``` - -instead of writing out the whole proj definition, by default proj4 has the following projections predefined: - -- 'EPSG:4326', which has the following alias - - 'WGS84' -- 'EPSG:4269' -- 'EPSG:3857', which has the following aliases - - 'EPSG:3785' - - 'GOOGLE' - - 'EPSG:900913' - - 'EPSG:102113' - -Defined projections can also be accessed through the proj4.defs function (`proj4.defs('EPSG:4326')`). - -proj4.defs can also be used to define a named alias: - -```javascript -proj4.defs('urn:x-ogc:def:crs:EPSG:4326', proj4.defs('EPSG:4326')); -``` - -## Axis order - -By default, proj4 uses `[x,y]` axis order for projected (cartesian) coordinate systems and `[x=longitude,y=latitude]` for geographic coordinates. To enforce the axis order of the provided proj or wkt string, use the -```javascript -proj4(fromProjection, toProjection).forward(coordinate, enforceAxis); -proj4(fromProjection, toProjection).inverse(coordinate, enforceAxis); -``` -signatures with `enforceAxis` set to `true`: -```javascript -proj4('+proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees +axis=neu', firstProjection).forward([41, -71], true); -// [242075.00535055372, 750123.32090043] -proj4('+proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees +axis=neu', firstProjection).inverse([242075.00535055372, 750123.32090043], true); -//[40.99999999999986, -71] -//the floating points to answer your question -``` - -## Grid Based Datum Adjustments - -To use `+nadgrids=` in a proj definition, first read your NTv2 `.gsb` file (e.g. from https://github.com/OSGeo/proj-datumgrid) into an ArrayBuffer, then pass it to `proj4.nadgrid`. E.g: - -```javascript -const buffer = fs.readFileSync('ntv2.gsb').buffer -proj4.nadgrid('key', buffer); -``` - -then use the given key in your definition, e.g. `+nadgrids=@key,null`. See [Grid Based Datum Adjustments](https://proj.org/usage/transformation.html?highlight=nadgrids#grid-based-datum-adjustments). - -## TypeScript - -TypeScript implementation was added to the [DefinitelyTyped repository](https://github.com/DefinitelyTyped/DefinitelyTyped). - -```bash -$ npm install --save @types/proj4 -``` - -## Developing -To set up build tools make sure you have node and grunt-cli installed and then run `npm install`. - -To do the complete build and browser tests run - -```bash -node_modules/.bin/grunt -``` - -To run node tests run - -```bash -npm test -``` - -To run node tests with coverage run - -```bash -npm test --coverage -``` - -To create a build with only default projections (latlon and Mercator) run - -```bash -node_modules/.bin/grunt build -``` - -To create a build with only custom projections include a comma separated list of projections codes (the file name in 'lib/projections' without the '.js') after a colon, e.g. - -```bash -node_modules/.bin/grunt build:tmerc -#includes transverse Mercator -node_modules/.bin/grunt build:lcc -#includes lambert conformal conic -node_modules/.bin/grunt build:omerc,moll -#includes oblique Mercator and Mollweide -``` diff --git a/proj4js-master/REFERENCES.md b/proj4js-master/REFERENCES.md deleted file mode 100644 index 114fda43..00000000 --- a/proj4js-master/REFERENCES.md +++ /dev/null @@ -1,33 +0,0 @@ -1. Snyder, John P., "Map Projections--A Working Manual", U.S. Geological Survey - Professional Paper 1395 (Supersedes USGS Bulletin 1532), - United States Government Printing Office, Washington D.C., 1987. - Accessed: 2016-05-09. https://pubs.er.usgs.gov/publication/pp1395 -2. Snyder, John P. and Voxland, Philip M., "An Album of Map Projections", - U.S. Geological Survey Professional Paper 1453 , - United State Government Printing Office, Washington D.C., 1989. - Accessed: 2016-05-09. https://pubs.er.usgs.gov/publication/pp1453 -3. "Cartographic Projection Procedures for the UNIX Environment- - A User's Manual" by Gerald I. Evenden, - USGS Open File Report 90-284 and Release 4 Interim Reports (2003). - Accessed: 2016-06-09. http://www2.bren.ucsb.edu/~frew/ESM264/private/proj_manual.pdf -4. Snyder, John P., "Flattening the Earth - - Two Thousand Years of Map Projections", Univ. Chicago Press, 1993 -5. Wolfram Mathworld "Gnomonic Projection" - http://mathworld.wolfram.com/GnomonicProjection.html - Accessed: 12th November 2009 -6. "New Equal-Area Map Projections for Noncircular Regions", John P. Snyder, - The American Cartographer, Vol 15, No. 4, October 1988, pp. 341-355. -7. Snyder, John P., "Map Projections--A Working Manual", U.S. Geological - Survey Professional Paper 1395 (Supersedes USGS Bulletin 1532), United - State Government Printing Office, Washington D.C., 1987. - Access date 2016-05-09. https://pubs.er.usgs.gov/publication/pp1395 -8. "Software Documentation for GCTP General Cartographic Transformation - Package", U.S. Geological Survey National Mapping Division, May 1982. -9. Department of Land and Survey Technical Circular 1973/32 - http://www.linz.govt.nz/docs/miscellaneous/nz-map-definition.pdf -10. OSG Technical Report 4.1 - http://www.linz.govt.nz/docs/miscellaneous/nzmg.pdf -11. Formules et constantes pour le Calcul pour la - projection cylindrique conforme à axe oblique et pour la transformation entre - des systèmes de référence. - http://www.swisstopo.admin.ch/internet/swisstopo/fr/home/topics/survey/sys/refsys/switzerland.parsysrelated1.31216.downloadList.77004.DownloadFile.tmp/swissprojectionfr.pdf diff --git a/proj4js-master/bower.json b/proj4js-master/bower.json deleted file mode 100644 index d45cfdcb..00000000 --- a/proj4js-master/bower.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "proj4", - "version": "2.12.2-alpha", - "description": "Proj4js is a JavaScript library to transform point coordinates from one coordinate system to another, including datum transformations.", - "homepage": "https://github.com/proj4js/proj4js", - "main": "dist/proj4.js", - "keywords": [ - "gis", - "projections", - "geospatial", - "transform", - "datum" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "node_modules", - "bower_components", - "test", - "tests", - "almond", - "src" - ] -} diff --git a/proj4js-master/bun.lockb b/proj4js-master/bun.lockb deleted file mode 100755 index b10468f9efb53e33732e60d7b598af05d272cabf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 135373 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�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 diff --git a/proj4js-master/changelog.md b/proj4js-master/changelog.md deleted file mode 100644 index 7901d495..00000000 --- a/proj4js-master/changelog.md +++ /dev/null @@ -1,21 +0,0 @@ -Change log -=== -- 2.2.1: Documentation fixes and added proj4.defs('name') as an alias for proj4.defs['name']; - -- 2.1.4: dist folder is added back in after accidentally omitting it in 2.1.1 - -- 2.1.3: skipped as issues with the dist folder are ironed out. - -- 2.1.2: added sensible defaults for false eastings/northings - -- 2.1.1: tweaks to how we publish it, fixes related to errors with the OSGB36 and Reseau National Belge 1972 datums, we took the first steps towards depreciating the proj4.Point class. - -- 2.1.0: targeted builds for projections are now supported, and internally projection creation is more modular. - -- 2.0.3: mgrs is broken out into it's own module loaded via npm. - -- 2.0.2: module common is broken up into a collection of smaller modules. - -- 2.0.1: fix typo in eqc projection. - -- 2.0.0: we start the change log. \ No newline at end of file diff --git a/proj4js-master/component.json b/proj4js-master/component.json deleted file mode 100644 index e917cefa..00000000 --- a/proj4js-master/component.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "proj4", - "version": "2.12.2-alpha", - "description": "Proj4js is a JavaScript library to transform point coordinates from one coordinate system to another, including datum transformations.", - "repo": "proj4js/proj4js", - "keywords": [ - "projections", - "proj4", - "transform", - "crs" - ], - "license": "MIT", - "main": "dist/proj4.js", - "scripts": [ - "dist/proj4.js" - ] -} diff --git a/proj4js-master/lib/Point.js b/proj4js-master/lib/Point.js deleted file mode 100644 index 91b12ab4..00000000 --- a/proj4js-master/lib/Point.js +++ /dev/null @@ -1,34 +0,0 @@ -import {toPoint, forward} from 'mgrs'; - -function Point(x, y, z) { - if (!(this instanceof Point)) { - return new Point(x, y, z); - } - if (Array.isArray(x)) { - this.x = x[0]; - this.y = x[1]; - this.z = x[2] || 0.0; - } else if(typeof x === 'object') { - this.x = x.x; - this.y = x.y; - this.z = x.z || 0.0; - } else if (typeof x === 'string' && typeof y === 'undefined') { - var coords = x.split(','); - this.x = parseFloat(coords[0], 10); - this.y = parseFloat(coords[1], 10); - this.z = parseFloat(coords[2], 10) || 0.0; - } else { - this.x = x; - this.y = y; - this.z = z || 0.0; - } - console.warn('proj4.Point will be removed in version 3, use proj4.toPoint'); -} - -Point.fromMGRS = function(mgrsStr) { - return new Point(toPoint(mgrsStr)); -}; -Point.prototype.toMGRS = function(accuracy) { - return forward([this.x, this.y], accuracy); -}; -export default Point; diff --git a/proj4js-master/lib/Proj.js b/proj4js-master/lib/Proj.js deleted file mode 100644 index 885f4bb5..00000000 --- a/proj4js-master/lib/Proj.js +++ /dev/null @@ -1,75 +0,0 @@ -import parseCode from './parseCode'; -import extend from './extend'; -import projections from './projections'; -import {sphere as dc_sphere, eccentricity as dc_eccentricity} from './deriveConstants'; -import Datum from './constants/Datum'; -import datum from './datum'; -import match from './match'; -import {getNadgrids} from "./nadgrid"; - -function Projection(srsCode,callback) { - if (!(this instanceof Projection)) { - return new Projection(srsCode); - } - callback = callback || function(error){ - if(error){ - throw error; - } - }; - var json = parseCode(srsCode); - // console.log('json', json) - if(typeof json !== 'object'){ - callback('Could not parse to valid json: ' + srsCode); - return; - } - var ourProj = Projection.projections.get(json.projName); - if(!ourProj){ - callback('Could not get projection name from: ' + srsCode); - return; - } - if (json.datumCode && json.datumCode !== 'none') { - var datumDef = match(Datum, json.datumCode); - if (datumDef) { - json.datum_params = json.datum_params || (datumDef.towgs84 ? datumDef.towgs84.split(',') : null); - json.ellps = datumDef.ellipse; - json.datumName = datumDef.datumName ? datumDef.datumName : json.datumCode; - } - } - json.k0 = json.k0 || 1.0; - json.axis = json.axis || 'enu'; - json.ellps = json.ellps || 'wgs84'; - json.lat1 = json.lat1 || json.lat0; // Lambert_Conformal_Conic_1SP, for example, needs this - - var sphere_ = dc_sphere(json.a, json.b, json.rf, json.ellps, json.sphere); - var ecc = dc_eccentricity(sphere_.a, sphere_.b, sphere_.rf, json.R_A); - var nadgrids = getNadgrids(json.nadgrids); - var datumObj = json.datum || datum(json.datumCode, json.datum_params, sphere_.a, sphere_.b, ecc.es, ecc.ep2, - nadgrids); - - extend(this, json); // transfer everything over from the projection because we don't know what we'll need - extend(this, ourProj); // transfer all the methods from the projection - - // copy the 4 things over we calculated in deriveConstants.sphere - this.a = sphere_.a; - this.b = sphere_.b; - this.rf = sphere_.rf; - this.sphere = sphere_.sphere; - - // copy the 3 things we calculated in deriveConstants.eccentricity - this.es = ecc.es; - this.e = ecc.e; - this.ep2 = ecc.ep2; - - // add in the datum object - this.datum = datumObj; - - // init the projection - this.init(); - - // legecy callback from back in the day when it went to spatialreference.org - callback(null, this); - -} -Projection.projections = projections; -Projection.projections.start(); -export default Projection; diff --git a/proj4js-master/lib/adjust_axis.js b/proj4js-master/lib/adjust_axis.js deleted file mode 100644 index f36c895c..00000000 --- a/proj4js-master/lib/adjust_axis.js +++ /dev/null @@ -1,61 +0,0 @@ -export default function(crs, denorm, point) { - var xin = point.x, - yin = point.y, - zin = point.z || 0.0; - var v, t, i; - var out = {}; - for (i = 0; i < 3; i++) { - if (denorm && i === 2 && point.z === undefined) { - continue; - } - if (i === 0) { - v = xin; - if ("ew".indexOf(crs.axis[i]) !== -1) { - t = 'x'; - } else { - t = 'y'; - } - - } - else if (i === 1) { - v = yin; - if ("ns".indexOf(crs.axis[i]) !== -1) { - t = 'y'; - } else { - t = 'x'; - } - } - else { - v = zin; - t = 'z'; - } - switch (crs.axis[i]) { - case 'e': - out[t] = v; - break; - case 'w': - out[t] = -v; - break; - case 'n': - out[t] = v; - break; - case 's': - out[t] = -v; - break; - case 'u': - if (point[t] !== undefined) { - out.z = v; - } - break; - case 'd': - if (point[t] !== undefined) { - out.z = -v; - } - break; - default: - //console.log("ERROR: unknow axis ("+crs.axis[i]+") - check definition of "+crs.projName); - return null; - } - } - return out; -} diff --git a/proj4js-master/lib/checkSanity.js b/proj4js-master/lib/checkSanity.js deleted file mode 100644 index d2bdf1d1..00000000 --- a/proj4js-master/lib/checkSanity.js +++ /dev/null @@ -1,15 +0,0 @@ -export default function (point) { - checkCoord(point.x); - checkCoord(point.y); -} -function checkCoord(num) { - if (typeof Number.isFinite === 'function') { - if (Number.isFinite(num)) { - return; - } - throw new TypeError('coordinates must be finite numbers'); - } - if (typeof num !== 'number' || num !== num || !isFinite(num)) { - throw new TypeError('coordinates must be finite numbers'); - } -} diff --git a/proj4js-master/lib/common/acosh.js b/proj4js-master/lib/common/acosh.js deleted file mode 100644 index 4997f3cd..00000000 --- a/proj4js-master/lib/common/acosh.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(x) { - return 2 * Math.log(Math.sqrt((x + 1) / 2) + Math.sqrt((x - 1) / 2)); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/adjust_lat.js b/proj4js-master/lib/common/adjust_lat.js deleted file mode 100644 index be4c6678..00000000 --- a/proj4js-master/lib/common/adjust_lat.js +++ /dev/null @@ -1,6 +0,0 @@ -import {HALF_PI} from '../constants/values'; -import sign from './sign'; - -export default function(x) { - return (Math.abs(x) < HALF_PI) ? x : (x - (sign(x) * Math.PI)); -} diff --git a/proj4js-master/lib/common/adjust_lon.js b/proj4js-master/lib/common/adjust_lon.js deleted file mode 100644 index e2f60a3c..00000000 --- a/proj4js-master/lib/common/adjust_lon.js +++ /dev/null @@ -1,7 +0,0 @@ - -import {TWO_PI, SPI} from '../constants/values'; -import sign from './sign'; - -export default function(x) { - return (Math.abs(x) <= SPI) ? x : (x - (sign(x) * TWO_PI)); -} diff --git a/proj4js-master/lib/common/adjust_zone.js b/proj4js-master/lib/common/adjust_zone.js deleted file mode 100644 index 49d457b9..00000000 --- a/proj4js-master/lib/common/adjust_zone.js +++ /dev/null @@ -1,14 +0,0 @@ -import adjust_lon from './adjust_lon'; - -export default function(zone, lon) { - if (zone === undefined) { - zone = Math.floor((adjust_lon(lon) + Math.PI) * 30 / Math.PI) + 1; - - if (zone < 0) { - return 0; - } else if (zone > 60) { - return 60; - } - } - return zone; -} diff --git a/proj4js-master/lib/common/asinh.js b/proj4js-master/lib/common/asinh.js deleted file mode 100644 index 51627eea..00000000 --- a/proj4js-master/lib/common/asinh.js +++ /dev/null @@ -1,4 +0,0 @@ -export default function(x) { - var s = (x >= 0 ? 1 : -1); - return s * (Math.log(Math.abs(x) + Math.sqrt(x * x + 1))); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/asinhy.js b/proj4js-master/lib/common/asinhy.js deleted file mode 100644 index a153f170..00000000 --- a/proj4js-master/lib/common/asinhy.js +++ /dev/null @@ -1,9 +0,0 @@ -import hypot from './hypot'; -import log1py from './log1py'; - -export default function(x) { - var y = Math.abs(x); - y = log1py(y * (1 + y / (hypot(1, y) + 1))); - - return x < 0 ? -y : y; -} diff --git a/proj4js-master/lib/common/asinz.js b/proj4js-master/lib/common/asinz.js deleted file mode 100644 index 8f27ed69..00000000 --- a/proj4js-master/lib/common/asinz.js +++ /dev/null @@ -1,6 +0,0 @@ -export default function(x) { - if (Math.abs(x) > 1) { - x = (x > 1) ? 1 : -1; - } - return Math.asin(x); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/atanh.js b/proj4js-master/lib/common/atanh.js deleted file mode 100644 index 2b082dc4..00000000 --- a/proj4js-master/lib/common/atanh.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(x) { - return Math.log((x - 1) / (x + 1)) / 2; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/clens.js b/proj4js-master/lib/common/clens.js deleted file mode 100644 index 79ece524..00000000 --- a/proj4js-master/lib/common/clens.js +++ /dev/null @@ -1,15 +0,0 @@ -export default function(pp, arg_r) { - var r = 2 * Math.cos(arg_r); - var i = pp.length - 1; - var hr1 = pp[i]; - var hr2 = 0; - var hr; - - while (--i >= 0) { - hr = -hr2 + r * hr1 + pp[i]; - hr2 = hr1; - hr1 = hr; - } - - return Math.sin(arg_r) * hr; -} diff --git a/proj4js-master/lib/common/clens_cmplx.js b/proj4js-master/lib/common/clens_cmplx.js deleted file mode 100644 index d149d8c8..00000000 --- a/proj4js-master/lib/common/clens_cmplx.js +++ /dev/null @@ -1,32 +0,0 @@ -import sinh from './sinh'; -import cosh from './cosh'; - -export default function(pp, arg_r, arg_i) { - var sin_arg_r = Math.sin(arg_r); - var cos_arg_r = Math.cos(arg_r); - var sinh_arg_i = sinh(arg_i); - var cosh_arg_i = cosh(arg_i); - var r = 2 * cos_arg_r * cosh_arg_i; - var i = -2 * sin_arg_r * sinh_arg_i; - var j = pp.length - 1; - var hr = pp[j]; - var hi1 = 0; - var hr1 = 0; - var hi = 0; - var hr2; - var hi2; - - while (--j >= 0) { - hr2 = hr1; - hi2 = hi1; - hr1 = hr; - hi1 = hi; - hr = -hr2 + r * hr1 - i * hi1 + pp[j]; - hi = -hi2 + i * hr1 + r * hi1; - } - - r = sin_arg_r * cosh_arg_i; - i = cos_arg_r * sinh_arg_i; - - return [r * hr - i * hi, r * hi + i * hr]; -} diff --git a/proj4js-master/lib/common/cosh.js b/proj4js-master/lib/common/cosh.js deleted file mode 100644 index 8b5174eb..00000000 --- a/proj4js-master/lib/common/cosh.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function(x) { - var r = Math.exp(x); - r = (r + 1 / r) / 2; - return r; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/e0fn.js b/proj4js-master/lib/common/e0fn.js deleted file mode 100644 index 33501ac6..00000000 --- a/proj4js-master/lib/common/e0fn.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(x) { - return (1 - 0.25 * x * (1 + x / 16 * (3 + 1.25 * x))); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/e1fn.js b/proj4js-master/lib/common/e1fn.js deleted file mode 100644 index c4c85002..00000000 --- a/proj4js-master/lib/common/e1fn.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(x) { - return (0.375 * x * (1 + 0.25 * x * (1 + 0.46875 * x))); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/e2fn.js b/proj4js-master/lib/common/e2fn.js deleted file mode 100644 index 55539a70..00000000 --- a/proj4js-master/lib/common/e2fn.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(x) { - return (0.05859375 * x * x * (1 + 0.75 * x)); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/e3fn.js b/proj4js-master/lib/common/e3fn.js deleted file mode 100644 index 6010428c..00000000 --- a/proj4js-master/lib/common/e3fn.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(x) { - return (x * x * x * (35 / 3072)); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/fL.js b/proj4js-master/lib/common/fL.js deleted file mode 100644 index 8440cd57..00000000 --- a/proj4js-master/lib/common/fL.js +++ /dev/null @@ -1,5 +0,0 @@ -import {HALF_PI} from '../constants/values'; - -export default function(x, L) { - return 2 * Math.atan(x * Math.exp(L)) - HALF_PI; -} diff --git a/proj4js-master/lib/common/gN.js b/proj4js-master/lib/common/gN.js deleted file mode 100644 index 29bd5f05..00000000 --- a/proj4js-master/lib/common/gN.js +++ /dev/null @@ -1,4 +0,0 @@ -export default function(a, e, sinphi) { - var temp = e * sinphi; - return a / Math.sqrt(1 - temp * temp); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/gatg.js b/proj4js-master/lib/common/gatg.js deleted file mode 100644 index 597f196d..00000000 --- a/proj4js-master/lib/common/gatg.js +++ /dev/null @@ -1,15 +0,0 @@ -export default function(pp, B) { - var cos_2B = 2 * Math.cos(2 * B); - var i = pp.length - 1; - var h1 = pp[i]; - var h2 = 0; - var h; - - while (--i >= 0) { - h = -h2 + cos_2B * h1 + pp[i]; - h2 = h1; - h1 = h; - } - - return (B + h * Math.sin(2 * B)); -} diff --git a/proj4js-master/lib/common/hypot.js b/proj4js-master/lib/common/hypot.js deleted file mode 100644 index 7b210a79..00000000 --- a/proj4js-master/lib/common/hypot.js +++ /dev/null @@ -1,8 +0,0 @@ -export default function(x, y) { - x = Math.abs(x); - y = Math.abs(y); - var a = Math.max(x, y); - var b = Math.min(x, y) / (a ? a : 1); - - return a * Math.sqrt(1 + Math.pow(b, 2)); -} diff --git a/proj4js-master/lib/common/imlfn.js b/proj4js-master/lib/common/imlfn.js deleted file mode 100644 index 70859dc2..00000000 --- a/proj4js-master/lib/common/imlfn.js +++ /dev/null @@ -1,16 +0,0 @@ -export default function(ml, e0, e1, e2, e3) { - var phi; - var dphi; - - phi = ml / e0; - for (var i = 0; i < 15; i++) { - dphi = (ml - (e0 * phi - e1 * Math.sin(2 * phi) + e2 * Math.sin(4 * phi) - e3 * Math.sin(6 * phi))) / (e0 - 2 * e1 * Math.cos(2 * phi) + 4 * e2 * Math.cos(4 * phi) - 6 * e3 * Math.cos(6 * phi)); - phi += dphi; - if (Math.abs(dphi) <= 0.0000000001) { - return phi; - } - } - - //..reportError("IMLFN-CONV:Latitude failed to converge after 15 iterations"); - return NaN; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/invlatiso.js b/proj4js-master/lib/common/invlatiso.js deleted file mode 100644 index 1417f381..00000000 --- a/proj4js-master/lib/common/invlatiso.js +++ /dev/null @@ -1,13 +0,0 @@ -import fL from './fL'; - -export default function(eccent, ts) { - var phi = fL(1, ts); - var Iphi = 0; - var con = 0; - do { - Iphi = phi; - con = eccent * Math.sin(Iphi); - phi = fL(Math.exp(eccent * Math.log((1 + con) / (1 - con)) / 2), ts); - } while (Math.abs(phi - Iphi) > 1.0e-12); - return phi; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/iqsfnz.js b/proj4js-master/lib/common/iqsfnz.js deleted file mode 100644 index 6231355d..00000000 --- a/proj4js-master/lib/common/iqsfnz.js +++ /dev/null @@ -1,32 +0,0 @@ -import {HALF_PI} from '../constants/values'; - -export default function(eccent, q) { - var temp = 1 - (1 - eccent * eccent) / (2 * eccent) * Math.log((1 - eccent) / (1 + eccent)); - if (Math.abs(Math.abs(q) - temp) < 1.0E-6) { - if (q < 0) { - return (-1 * HALF_PI); - } - else { - return HALF_PI; - } - } - //var phi = 0.5* q/(1-eccent*eccent); - var phi = Math.asin(0.5 * q); - var dphi; - var sin_phi; - var cos_phi; - var con; - for (var i = 0; i < 30; i++) { - sin_phi = Math.sin(phi); - cos_phi = Math.cos(phi); - con = eccent * sin_phi; - dphi = Math.pow(1 - con * con, 2) / (2 * cos_phi) * (q / (1 - eccent * eccent) - sin_phi / (1 - con * con) + 0.5 / eccent * Math.log((1 - con) / (1 + con))); - phi += dphi; - if (Math.abs(dphi) <= 0.0000000001) { - return phi; - } - } - - //console.log("IQSFN-CONV:Latitude failed to converge after 30 iterations"); - return NaN; -} diff --git a/proj4js-master/lib/common/latiso.js b/proj4js-master/lib/common/latiso.js deleted file mode 100644 index 61e0b09d..00000000 --- a/proj4js-master/lib/common/latiso.js +++ /dev/null @@ -1,16 +0,0 @@ -import {HALF_PI} from '../constants/values'; - -export default function(eccent, phi, sinphi) { - if (Math.abs(phi) > HALF_PI) { - return Number.NaN; - } - if (phi === HALF_PI) { - return Number.POSITIVE_INFINITY; - } - if (phi === -1 * HALF_PI) { - return Number.NEGATIVE_INFINITY; - } - - var con = eccent * sinphi; - return Math.log(Math.tan((HALF_PI + phi) / 2)) + eccent * Math.log((1 - con) / (1 + con)) / 2; -} diff --git a/proj4js-master/lib/common/log1py.js b/proj4js-master/lib/common/log1py.js deleted file mode 100644 index ad63730b..00000000 --- a/proj4js-master/lib/common/log1py.js +++ /dev/null @@ -1,6 +0,0 @@ -export default function(x) { - var y = 1 + x; - var z = y - 1; - - return z === 0 ? x : x * Math.log(y) / z; -} diff --git a/proj4js-master/lib/common/mlfn.js b/proj4js-master/lib/common/mlfn.js deleted file mode 100644 index 53dc3d2e..00000000 --- a/proj4js-master/lib/common/mlfn.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(e0, e1, e2, e3, phi) { - return (e0 * phi - e1 * Math.sin(2 * phi) + e2 * Math.sin(4 * phi) - e3 * Math.sin(6 * phi)); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/msfnz.js b/proj4js-master/lib/common/msfnz.js deleted file mode 100644 index 433f3470..00000000 --- a/proj4js-master/lib/common/msfnz.js +++ /dev/null @@ -1,4 +0,0 @@ -export default function(eccent, sinphi, cosphi) { - var con = eccent * sinphi; - return cosphi / (Math.sqrt(1 - con * con)); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/phi2z.js b/proj4js-master/lib/common/phi2z.js deleted file mode 100644 index 3c70422e..00000000 --- a/proj4js-master/lib/common/phi2z.js +++ /dev/null @@ -1,17 +0,0 @@ -import {HALF_PI} from '../constants/values'; - -export default function(eccent, ts) { - var eccnth = 0.5 * eccent; - var con, dphi; - var phi = HALF_PI - 2 * Math.atan(ts); - for (var i = 0; i <= 15; i++) { - con = eccent * Math.sin(phi); - dphi = HALF_PI - 2 * Math.atan(ts * (Math.pow(((1 - con) / (1 + con)), eccnth))) - phi; - phi += dphi; - if (Math.abs(dphi) <= 0.0000000001) { - return phi; - } - } - //console.log("phi2z has NoConvergence"); - return -9999; -} diff --git a/proj4js-master/lib/common/pj_enfn.js b/proj4js-master/lib/common/pj_enfn.js deleted file mode 100644 index 5d9be385..00000000 --- a/proj4js-master/lib/common/pj_enfn.js +++ /dev/null @@ -1,24 +0,0 @@ -var C00 = 1; -var C02 = 0.25; -var C04 = 0.046875; -var C06 = 0.01953125; -var C08 = 0.01068115234375; -var C22 = 0.75; -var C44 = 0.46875; -var C46 = 0.01302083333333333333; -var C48 = 0.00712076822916666666; -var C66 = 0.36458333333333333333; -var C68 = 0.00569661458333333333; -var C88 = 0.3076171875; - -export default function(es) { - var en = []; - en[0] = C00 - es * (C02 + es * (C04 + es * (C06 + es * C08))); - en[1] = es * (C22 - es * (C04 + es * (C06 + es * C08))); - var t = es * es; - en[2] = t * (C44 - es * (C46 + es * C48)); - t *= es; - en[3] = t * (C66 - es * C68); - en[4] = t * es * C88; - return en; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/pj_inv_mlfn.js b/proj4js-master/lib/common/pj_inv_mlfn.js deleted file mode 100644 index 9b4d5077..00000000 --- a/proj4js-master/lib/common/pj_inv_mlfn.js +++ /dev/null @@ -1,23 +0,0 @@ -import pj_mlfn from "./pj_mlfn"; -import {EPSLN} from '../constants/values'; - -var MAX_ITER = 20; - -export default function(arg, es, en) { - console.log('pjInvMlfn', arg, es, en); - var k = 1 / (1 - es); - var phi = arg; - for (var i = MAX_ITER; i; --i) { /* rarely goes over 2 iterations */ - var s = Math.sin(phi); - var t = 1 - es * s * s; - //t = this.pj_mlfn(phi, s, Math.cos(phi), en) - arg; - //phi -= t * (t * Math.sqrt(t)) * k; - t = (pj_mlfn(phi, s, Math.cos(phi), en) - arg) * (t * Math.sqrt(t)) * k; - phi -= t; - if (Math.abs(t) < EPSLN) { - return phi; - } - } - //..reportError("cass:pj_inv_mlfn: Convergence error"); - return phi; -} diff --git a/proj4js-master/lib/common/pj_mlfn.js b/proj4js-master/lib/common/pj_mlfn.js deleted file mode 100644 index 6e898c3d..00000000 --- a/proj4js-master/lib/common/pj_mlfn.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function(phi, sphi, cphi, en) { - cphi *= sphi; - sphi *= sphi; - return (en[0] * phi - cphi * (en[1] + sphi * (en[2] + sphi * (en[3] + sphi * en[4])))); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/qsfnz.js b/proj4js-master/lib/common/qsfnz.js deleted file mode 100644 index 6afb50a3..00000000 --- a/proj4js-master/lib/common/qsfnz.js +++ /dev/null @@ -1,10 +0,0 @@ -export default function(eccent, sinphi) { - var con; - if (eccent > 1.0e-7) { - con = eccent * sinphi; - return ((1 - eccent * eccent) * (sinphi / (1 - con * con) - (0.5 / eccent) * Math.log((1 - con) / (1 + con)))); - } - else { - return (2 * sinphi); - } -} \ No newline at end of file diff --git a/proj4js-master/lib/common/sign.js b/proj4js-master/lib/common/sign.js deleted file mode 100644 index c97da629..00000000 --- a/proj4js-master/lib/common/sign.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(x) { - return x<0 ? -1 : 1; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/sinh.js b/proj4js-master/lib/common/sinh.js deleted file mode 100644 index db3fe4d2..00000000 --- a/proj4js-master/lib/common/sinh.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function(x) { - var r = Math.exp(x); - r = (r - 1 / r) / 2; - return r; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/srat.js b/proj4js-master/lib/common/srat.js deleted file mode 100644 index 171b6279..00000000 --- a/proj4js-master/lib/common/srat.js +++ /dev/null @@ -1,3 +0,0 @@ -export default function(esinp, exp) { - return (Math.pow((1 - esinp) / (1 + esinp), exp)); -} \ No newline at end of file diff --git a/proj4js-master/lib/common/tanh.js b/proj4js-master/lib/common/tanh.js deleted file mode 100644 index 782414a2..00000000 --- a/proj4js-master/lib/common/tanh.js +++ /dev/null @@ -1,5 +0,0 @@ -export default function(x) { - var r = Math.exp(x); - r = (r - 1 / r) / (r + 1 / r); - return r; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/toPoint.js b/proj4js-master/lib/common/toPoint.js deleted file mode 100644 index 7226892e..00000000 --- a/proj4js-master/lib/common/toPoint.js +++ /dev/null @@ -1,13 +0,0 @@ -export default function (array){ - var out = { - x: array[0], - y: array[1] - }; - if (array.length>2) { - out.z = array[2]; - } - if (array.length>3) { - out.m = array[3]; - } - return out; -} \ No newline at end of file diff --git a/proj4js-master/lib/common/tsfnz.js b/proj4js-master/lib/common/tsfnz.js deleted file mode 100644 index 6702d852..00000000 --- a/proj4js-master/lib/common/tsfnz.js +++ /dev/null @@ -1,8 +0,0 @@ -import {HALF_PI} from '../constants/values'; - -export default function(eccent, phi, sinphi) { - var con = eccent * sinphi; - var com = 0.5 * eccent; - con = Math.pow(((1 - con) / (1 + con)), com); - return (Math.tan(0.5 * (HALF_PI - phi)) / con); -} diff --git a/proj4js-master/lib/constants/Datum.js b/proj4js-master/lib/constants/Datum.js deleted file mode 100644 index 38aa246c..00000000 --- a/proj4js-master/lib/constants/Datum.js +++ /dev/null @@ -1,109 +0,0 @@ -var exports = {}; -export {exports as default}; -exports.wgs84 = { - towgs84: "0,0,0", - ellipse: "WGS84", - datumName: "WGS84" -}; - -exports.ch1903 = { - towgs84: "674.374,15.056,405.346", - ellipse: "bessel", - datumName: "swiss" -}; - -exports.ggrs87 = { - towgs84: "-199.87,74.79,246.62", - ellipse: "GRS80", - datumName: "Greek_Geodetic_Reference_System_1987" -}; - -exports.nad83 = { - towgs84: "0,0,0", - ellipse: "GRS80", - datumName: "North_American_Datum_1983" -}; - -exports.nad27 = { - nadgrids: "@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat", - ellipse: "clrk66", - datumName: "North_American_Datum_1927" -}; - -exports.potsdam = { - towgs84: "598.1,73.7,418.2,0.202,0.045,-2.455,6.7", - ellipse: "bessel", - datumName: "Potsdam Rauenberg 1950 DHDN" -}; - -exports.carthage = { - towgs84: "-263.0,6.0,431.0", - ellipse: "clark80", - datumName: "Carthage 1934 Tunisia" -}; - -exports.hermannskogel = { - towgs84: "577.326,90.129,463.919,5.137,1.474,5.297,2.4232", - ellipse: "bessel", - datumName: "Hermannskogel" -}; - -exports.militargeographische_institut = { - towgs84: "577.326,90.129,463.919,5.137,1.474,5.297,2.4232", - ellipse: "bessel", - datumName: "Militar-Geographische Institut" -}; - -exports.osni52 = { - towgs84: "482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15", - ellipse: "airy", - datumName: "Irish National" -}; - -exports.ire65 = { - towgs84: "482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15", - ellipse: "mod_airy", - datumName: "Ireland 1965" -}; - -exports.rassadiran = { - towgs84: "-133.63,-157.5,-158.62", - ellipse: "intl", - datumName: "Rassadiran" -}; - -exports.nzgd49 = { - towgs84: "59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993", - ellipse: "intl", - datumName: "New Zealand Geodetic Datum 1949" -}; - -exports.osgb36 = { - towgs84: "446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894", - ellipse: "airy", - datumName: "Airy 1830" -}; - -exports.s_jtsk = { - towgs84: "589,76,480", - ellipse: 'bessel', - datumName: 'S-JTSK (Ferro)' -}; - -exports.beduaram = { - towgs84: '-106,-87,188', - ellipse: 'clrk80', - datumName: 'Beduaram' -}; - -exports.gunung_segara = { - towgs84: '-403,684,41', - ellipse: 'bessel', - datumName: 'Gunung Segara Jakarta' -}; - -exports.rnb72 = { - towgs84: "106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1", - ellipse: "intl", - datumName: "Reseau National Belge 1972" -}; diff --git a/proj4js-master/lib/constants/Ellipsoid.js b/proj4js-master/lib/constants/Ellipsoid.js deleted file mode 100644 index 6e5fba10..00000000 --- a/proj4js-master/lib/constants/Ellipsoid.js +++ /dev/null @@ -1,266 +0,0 @@ -var exports = {}; -export {exports as default}; -exports.MERIT = { - a: 6378137.0, - rf: 298.257, - ellipseName: "MERIT 1983" -}; - -exports.SGS85 = { - a: 6378136.0, - rf: 298.257, - ellipseName: "Soviet Geodetic System 85" -}; - -exports.GRS80 = { - a: 6378137.0, - rf: 298.257222101, - ellipseName: "GRS 1980(IUGG, 1980)" -}; - -exports.IAU76 = { - a: 6378140.0, - rf: 298.257, - ellipseName: "IAU 1976" -}; - -exports.airy = { - a: 6377563.396, - b: 6356256.910, - ellipseName: "Airy 1830" -}; - -exports.APL4 = { - a: 6378137, - rf: 298.25, - ellipseName: "Appl. Physics. 1965" -}; - -exports.NWL9D = { - a: 6378145.0, - rf: 298.25, - ellipseName: "Naval Weapons Lab., 1965" -}; - -exports.mod_airy = { - a: 6377340.189, - b: 6356034.446, - ellipseName: "Modified Airy" -}; - -exports.andrae = { - a: 6377104.43, - rf: 300.0, - ellipseName: "Andrae 1876 (Den., Iclnd.)" -}; - -exports.aust_SA = { - a: 6378160.0, - rf: 298.25, - ellipseName: "Australian Natl & S. Amer. 1969" -}; - -exports.GRS67 = { - a: 6378160.0, - rf: 298.2471674270, - ellipseName: "GRS 67(IUGG 1967)" -}; - -exports.bessel = { - a: 6377397.155, - rf: 299.1528128, - ellipseName: "Bessel 1841" -}; - -exports.bess_nam = { - a: 6377483.865, - rf: 299.1528128, - ellipseName: "Bessel 1841 (Namibia)" -}; - -exports.clrk66 = { - a: 6378206.4, - b: 6356583.8, - ellipseName: "Clarke 1866" -}; - -exports.clrk80 = { - a: 6378249.145, - rf: 293.4663, - ellipseName: "Clarke 1880 mod." -}; - -exports.clrk80ign = { - a: 6378249.2, - b: 6356515, - rf: 293.4660213, - ellipseName: "Clarke 1880 (IGN)" -}; - -exports.clrk58 = { - a: 6378293.645208759, - rf: 294.2606763692654, - ellipseName: "Clarke 1858" -}; - -exports.CPM = { - a: 6375738.7, - rf: 334.29, - ellipseName: "Comm. des Poids et Mesures 1799" -}; - -exports.delmbr = { - a: 6376428.0, - rf: 311.5, - ellipseName: "Delambre 1810 (Belgium)" -}; - -exports.engelis = { - a: 6378136.05, - rf: 298.2566, - ellipseName: "Engelis 1985" -}; - -exports.evrst30 = { - a: 6377276.345, - rf: 300.8017, - ellipseName: "Everest 1830" -}; - -exports.evrst48 = { - a: 6377304.063, - rf: 300.8017, - ellipseName: "Everest 1948" -}; - -exports.evrst56 = { - a: 6377301.243, - rf: 300.8017, - ellipseName: "Everest 1956" -}; - -exports.evrst69 = { - a: 6377295.664, - rf: 300.8017, - ellipseName: "Everest 1969" -}; - -exports.evrstSS = { - a: 6377298.556, - rf: 300.8017, - ellipseName: "Everest (Sabah & Sarawak)" -}; - -exports.fschr60 = { - a: 6378166.0, - rf: 298.3, - ellipseName: "Fischer (Mercury Datum) 1960" -}; - -exports.fschr60m = { - a: 6378155.0, - rf: 298.3, - ellipseName: "Fischer 1960" -}; - -exports.fschr68 = { - a: 6378150.0, - rf: 298.3, - ellipseName: "Fischer 1968" -}; - -exports.helmert = { - a: 6378200.0, - rf: 298.3, - ellipseName: "Helmert 1906" -}; - -exports.hough = { - a: 6378270.0, - rf: 297.0, - ellipseName: "Hough" -}; - -exports.intl = { - a: 6378388.0, - rf: 297.0, - ellipseName: "International 1909 (Hayford)" -}; - -exports.kaula = { - a: 6378163.0, - rf: 298.24, - ellipseName: "Kaula 1961" -}; - -exports.lerch = { - a: 6378139.0, - rf: 298.257, - ellipseName: "Lerch 1979" -}; - -exports.mprts = { - a: 6397300.0, - rf: 191.0, - ellipseName: "Maupertius 1738" -}; - -exports.new_intl = { - a: 6378157.5, - b: 6356772.2, - ellipseName: "New International 1967" -}; - -exports.plessis = { - a: 6376523.0, - rf: 6355863.0, - ellipseName: "Plessis 1817 (France)" -}; - -exports.krass = { - a: 6378245.0, - rf: 298.3, - ellipseName: "Krassovsky, 1942" -}; - -exports.SEasia = { - a: 6378155.0, - b: 6356773.3205, - ellipseName: "Southeast Asia" -}; - -exports.walbeck = { - a: 6376896.0, - b: 6355834.8467, - ellipseName: "Walbeck" -}; - -exports.WGS60 = { - a: 6378165.0, - rf: 298.3, - ellipseName: "WGS 60" -}; - -exports.WGS66 = { - a: 6378145.0, - rf: 298.25, - ellipseName: "WGS 66" -}; - -exports.WGS7 = { - a: 6378135.0, - rf: 298.26, - ellipseName: "WGS 72" -}; - -export var WGS84 = exports.WGS84 = { - a: 6378137.0, - rf: 298.257223563, - ellipseName: "WGS 84" -}; - -exports.sphere = { - a: 6370997.0, - b: 6370997.0, - ellipseName: "Normal Sphere (r=6370997)" -}; diff --git a/proj4js-master/lib/constants/PrimeMeridian.js b/proj4js-master/lib/constants/PrimeMeridian.js deleted file mode 100644 index 8e81d50d..00000000 --- a/proj4js-master/lib/constants/PrimeMeridian.js +++ /dev/null @@ -1,16 +0,0 @@ -var exports = {}; -export {exports as default}; - -exports.greenwich = 0.0; //"0dE", -exports.lisbon = -9.131906111111; //"9d07'54.862\"W", -exports.paris = 2.337229166667; //"2d20'14.025\"E", -exports.bogota = -74.080916666667; //"74d04'51.3\"W", -exports.madrid = -3.687938888889; //"3d41'16.58\"W", -exports.rome = 12.452333333333; //"12d27'8.4\"E", -exports.bern = 7.439583333333; //"7d26'22.5\"E", -exports.jakarta = 106.807719444444; //"106d48'27.79\"E", -exports.ferro = -17.666666666667; //"17d40'W", -exports.brussels = 4.367975; //"4d22'4.71\"E", -exports.stockholm = 18.058277777778; //"18d3'29.8\"E", -exports.athens = 23.7163375; //"23d42'58.815\"E", -exports.oslo = 10.722916666667; //"10d43'22.5\"E" diff --git a/proj4js-master/lib/constants/units.js b/proj4js-master/lib/constants/units.js deleted file mode 100644 index 39ed6f81..00000000 --- a/proj4js-master/lib/constants/units.js +++ /dev/null @@ -1,4 +0,0 @@ -export default { - ft: {to_meter: 0.3048}, - 'us-ft': {to_meter: 1200 / 3937} -}; diff --git a/proj4js-master/lib/constants/values.js b/proj4js-master/lib/constants/values.js deleted file mode 100644 index df4335e4..00000000 --- a/proj4js-master/lib/constants/values.js +++ /dev/null @@ -1,29 +0,0 @@ -export var PJD_3PARAM = 1; -export var PJD_7PARAM = 2; -export var PJD_GRIDSHIFT = 3; -export var PJD_WGS84 = 4; // WGS84 or equivalent -export var PJD_NODATUM = 5; // WGS84 or equivalent -export var SRS_WGS84_SEMIMAJOR = 6378137.0; // only used in grid shift transforms -export var SRS_WGS84_SEMIMINOR = 6356752.314; // only used in grid shift transforms -export var SRS_WGS84_ESQUARED = 0.0066943799901413165; // only used in grid shift transforms -export var SEC_TO_RAD = 4.84813681109535993589914102357e-6; -export var HALF_PI = Math.PI / 2; -// ellipoid pj_set_ell.c -export var SIXTH = 0.1666666666666666667; -/* 1/6 */ -export var RA4 = 0.04722222222222222222; -/* 17/360 */ -export var RA6 = 0.02215608465608465608; -export var EPSLN = 1.0e-10; -// you'd think you could use Number.EPSILON above but that makes -// Mollweide get into an infinate loop. - -export var D2R = 0.01745329251994329577; -export var R2D = 57.29577951308232088; -export var FORTPI = Math.PI/4; -export var TWO_PI = Math.PI * 2; -// SPI is slightly greater than Math.PI, so values that exceed the -180..180 -// degree range by a tiny amount don't get wrapped. This prevents points that -// have drifted from their original location along the 180th meridian (due to -// floating point error) from changing their sign. -export var SPI = 3.14159265359; diff --git a/proj4js-master/lib/core.js b/proj4js-master/lib/core.js deleted file mode 100644 index 823b05bf..00000000 --- a/proj4js-master/lib/core.js +++ /dev/null @@ -1,86 +0,0 @@ -import proj from './Proj'; -import transform from './transform'; -var wgs84 = proj('WGS84'); - -function transformer(from, to, coords, enforceAxis) { - var transformedArray, out, keys; - if (Array.isArray(coords)) { - transformedArray = transform(from, to, coords, enforceAxis) || {x: NaN, y: NaN}; - if (coords.length > 2) { - if ((typeof from.name !== 'undefined' && from.name === 'geocent') || (typeof to.name !== 'undefined' && to.name === 'geocent')) { - if (typeof transformedArray.z === 'number') { - return [transformedArray.x, transformedArray.y, transformedArray.z].concat(coords.slice(3)); - } else { - return [transformedArray.x, transformedArray.y, coords[2]].concat(coords.slice(3)); - } - } else { - return [transformedArray.x, transformedArray.y].concat(coords.slice(2)); - } - } else { - return [transformedArray.x, transformedArray.y]; - } - } else { - out = transform(from, to, coords, enforceAxis); - keys = Object.keys(coords); - if (keys.length === 2) { - return out; - } - keys.forEach(function (key) { - if ((typeof from.name !== 'undefined' && from.name === 'geocent') || (typeof to.name !== 'undefined' && to.name === 'geocent')) { - if (key === 'x' || key === 'y' || key === 'z') { - return; - } - } else { - if (key === 'x' || key === 'y') { - return; - } - } - out[key] = coords[key]; - }); - return out; - } -} - -function checkProj(item) { - if (item instanceof proj) { - return item; - } - if (item.oProj) { - return item.oProj; - } - return proj(item); -} - -function proj4(fromProj, toProj, coord) { - fromProj = checkProj(fromProj); - var single = false; - var obj; - if (typeof toProj === 'undefined') { - toProj = fromProj; - fromProj = wgs84; - single = true; - } else if (typeof toProj.x !== 'undefined' || Array.isArray(toProj)) { - coord = toProj; - toProj = fromProj; - fromProj = wgs84; - single = true; - } - toProj = checkProj(toProj); - if (coord) { - return transformer(fromProj, toProj, coord); - } else { - obj = { - forward: function (coords, enforceAxis) { - return transformer(fromProj, toProj, coords, enforceAxis); - }, - inverse: function (coords, enforceAxis) { - return transformer(toProj, fromProj, coords, enforceAxis); - } - }; - if (single) { - obj.oProj = toProj; - } - return obj; - } -} -export default proj4; \ No newline at end of file diff --git a/proj4js-master/lib/datum.js b/proj4js-master/lib/datum.js deleted file mode 100644 index 9d82f526..00000000 --- a/proj4js-master/lib/datum.js +++ /dev/null @@ -1,39 +0,0 @@ -import {PJD_3PARAM, PJD_7PARAM, PJD_GRIDSHIFT, PJD_WGS84, PJD_NODATUM, SEC_TO_RAD} from './constants/values'; - -function datum(datumCode, datum_params, a, b, es, ep2, nadgrids) { - var out = {}; - - if (datumCode === undefined || datumCode === 'none') { - out.datum_type = PJD_NODATUM; - } else { - out.datum_type = PJD_WGS84; - } - - if (datum_params) { - out.datum_params = datum_params.map(parseFloat); - if (out.datum_params[0] !== 0 || out.datum_params[1] !== 0 || out.datum_params[2] !== 0) { - out.datum_type = PJD_3PARAM; - } - if (out.datum_params.length > 3) { - if (out.datum_params[3] !== 0 || out.datum_params[4] !== 0 || out.datum_params[5] !== 0 || out.datum_params[6] !== 0) { - out.datum_type = PJD_7PARAM; - out.datum_params[3] *= SEC_TO_RAD; - out.datum_params[4] *= SEC_TO_RAD; - out.datum_params[5] *= SEC_TO_RAD; - out.datum_params[6] = (out.datum_params[6] / 1000000.0) + 1.0; - } - } - } - - if (nadgrids) { - out.datum_type = PJD_GRIDSHIFT; - out.grids = nadgrids; - } - out.a = a; //datum object also uses these values - out.b = b; - out.es = es; - out.ep2 = ep2; - return out; -} - -export default datum; diff --git a/proj4js-master/lib/datumUtils.js b/proj4js-master/lib/datumUtils.js deleted file mode 100644 index a064db7c..00000000 --- a/proj4js-master/lib/datumUtils.js +++ /dev/null @@ -1,247 +0,0 @@ -'use strict'; -import {PJD_3PARAM, PJD_7PARAM, HALF_PI} from './constants/values'; -export function compareDatums(source, dest) { - if (source.datum_type !== dest.datum_type) { - return false; // false, datums are not equal - } else if (source.a !== dest.a || Math.abs(source.es - dest.es) > 0.000000000050) { - // the tolerance for es is to ensure that GRS80 and WGS84 - // are considered identical - return false; - } else if (source.datum_type === PJD_3PARAM) { - return (source.datum_params[0] === dest.datum_params[0] && source.datum_params[1] === dest.datum_params[1] && source.datum_params[2] === dest.datum_params[2]); - } else if (source.datum_type === PJD_7PARAM) { - return (source.datum_params[0] === dest.datum_params[0] && source.datum_params[1] === dest.datum_params[1] && source.datum_params[2] === dest.datum_params[2] && source.datum_params[3] === dest.datum_params[3] && source.datum_params[4] === dest.datum_params[4] && source.datum_params[5] === dest.datum_params[5] && source.datum_params[6] === dest.datum_params[6]); - } else { - return true; // datums are equal - } -} // cs_compare_datums() - -/* - * The function Convert_Geodetic_To_Geocentric converts geodetic coordinates - * (latitude, longitude, and height) to geocentric coordinates (X, Y, Z), - * according to the current ellipsoid parameters. - * - * Latitude : Geodetic latitude in radians (input) - * Longitude : Geodetic longitude in radians (input) - * Height : Geodetic height, in meters (input) - * X : Calculated Geocentric X coordinate, in meters (output) - * Y : Calculated Geocentric Y coordinate, in meters (output) - * Z : Calculated Geocentric Z coordinate, in meters (output) - * - */ -export function geodeticToGeocentric(p, es, a) { - var Longitude = p.x; - var Latitude = p.y; - var Height = p.z ? p.z : 0; //Z value not always supplied - - var Rn; /* Earth radius at location */ - var Sin_Lat; /* Math.sin(Latitude) */ - var Sin2_Lat; /* Square of Math.sin(Latitude) */ - var Cos_Lat; /* Math.cos(Latitude) */ - - /* - ** Don't blow up if Latitude is just a little out of the value - ** range as it may just be a rounding issue. Also removed longitude - ** test, it should be wrapped by Math.cos() and Math.sin(). NFW for PROJ.4, Sep/2001. - */ - if (Latitude < -HALF_PI && Latitude > -1.001 * HALF_PI) { - Latitude = -HALF_PI; - } else if (Latitude > HALF_PI && Latitude < 1.001 * HALF_PI) { - Latitude = HALF_PI; - } else if (Latitude < -HALF_PI) { - /* Latitude out of range */ - //..reportError('geocent:lat out of range:' + Latitude); - return { x: -Infinity, y: -Infinity, z: p.z }; - } else if (Latitude > HALF_PI) { - /* Latitude out of range */ - return { x: Infinity, y: Infinity, z: p.z }; - } - - if (Longitude > Math.PI) { - Longitude -= (2 * Math.PI); - } - Sin_Lat = Math.sin(Latitude); - Cos_Lat = Math.cos(Latitude); - Sin2_Lat = Sin_Lat * Sin_Lat; - Rn = a / (Math.sqrt(1.0e0 - es * Sin2_Lat)); - return { - x: (Rn + Height) * Cos_Lat * Math.cos(Longitude), - y: (Rn + Height) * Cos_Lat * Math.sin(Longitude), - z: ((Rn * (1 - es)) + Height) * Sin_Lat - }; -} // cs_geodetic_to_geocentric() - -export function geocentricToGeodetic(p, es, a, b) { - console.log('geocentricToGeodetic', p, es, a, b) - /* local defintions and variables */ - /* end-criterium of loop, accuracy of sin(Latitude) */ - var genau = 1e-12; - var genau2 = (genau * genau); - var maxiter = 30; - - var P; /* distance between semi-minor axis and location */ - var RR; /* distance between center and location */ - var CT; /* sin of geocentric latitude */ - var ST; /* cos of geocentric latitude */ - var RX; - var RK; - var RN; /* Earth radius at location */ - var CPHI0; /* cos of start or old geodetic latitude in iterations */ - var SPHI0; /* sin of start or old geodetic latitude in iterations */ - var CPHI; /* cos of searched geodetic latitude */ - var SPHI; /* sin of searched geodetic latitude */ - var SDPHI; /* end-criterium: addition-theorem of sin(Latitude(iter)-Latitude(iter-1)) */ - var iter; /* # of continous iteration, max. 30 is always enough (s.a.) */ - - var X = p.x; - var Y = p.y; - var Z = p.z ? p.z : 0.0; //Z value not always supplied - var Longitude; - var Latitude; - var Height; - - P = Math.sqrt(X * X + Y * Y); - RR = Math.sqrt(X * X + Y * Y + Z * Z); - - /* special cases for latitude and longitude */ - if (P / a < genau) { - - /* special case, if P=0. (X=0., Y=0.) */ - Longitude = 0.0; - - /* if (X,Y,Z)=(0.,0.,0.) then Height becomes semi-minor axis - * of ellipsoid (=center of mass), Latitude becomes PI/2 */ - if (RR / a < genau) { - Latitude = HALF_PI; - Height = -b; - return { - x: p.x, - y: p.y, - z: p.z - }; - } - } else { - /* ellipsoidal (geodetic) longitude - * interval: -PI < Longitude <= +PI */ - Longitude = Math.atan2(Y, X); - } - - /* -------------------------------------------------------------- - * Following iterative algorithm was developped by - * "Institut for Erdmessung", University of Hannover, July 1988. - * Internet: www.ife.uni-hannover.de - * Iterative computation of CPHI,SPHI and Height. - * Iteration of CPHI and SPHI to 10**-12 radian resp. - * 2*10**-7 arcsec. - * -------------------------------------------------------------- - */ - CT = Z / RR; - ST = P / RR; - RX = 1.0 / Math.sqrt(1.0 - es * (2.0 - es) * ST * ST); - CPHI0 = ST * (1.0 - es) * RX; - SPHI0 = CT * RX; - iter = 0; - - /* loop to find sin(Latitude) resp. Latitude - * until |sin(Latitude(iter)-Latitude(iter-1))| < genau */ - do { - iter++; - RN = a / Math.sqrt(1.0 - es * SPHI0 * SPHI0); - - /* ellipsoidal (geodetic) height */ - Height = P * CPHI0 + Z * SPHI0 - RN * (1.0 - es * SPHI0 * SPHI0); - - RK = es * RN / (RN + Height); - RX = 1.0 / Math.sqrt(1.0 - RK * (2.0 - RK) * ST * ST); - CPHI = ST * (1.0 - RK) * RX; - SPHI = CT * RX; - SDPHI = SPHI * CPHI0 - CPHI * SPHI0; - CPHI0 = CPHI; - SPHI0 = SPHI; - } - while (SDPHI * SDPHI > genau2 && iter < maxiter); - - /* ellipsoidal (geodetic) latitude */ - Latitude = Math.atan(SPHI / Math.abs(CPHI)); - console.log('LATITUDE A 1', SPHI, CPHI, Latitude); - return { - x: Longitude, - y: Latitude, - z: Height - }; -} // cs_geocentric_to_geodetic() - -/****************************************************************/ -// pj_geocentic_to_wgs84( p ) -// p = point to transform in geocentric coordinates (x,y,z) - - -/** point object, nothing fancy, just allows values to be - passed back and forth by reference rather than by value. - Other point classes may be used as long as they have - x and y properties, which will get modified in the transform method. -*/ -export function geocentricToWgs84(p, datum_type, datum_params) { - - if (datum_type === PJD_3PARAM) { - // if( x[io] === HUGE_VAL ) - // continue; - return { - x: p.x + datum_params[0], - y: p.y + datum_params[1], - z: p.z + datum_params[2], - }; - } else if (datum_type === PJD_7PARAM) { - var Dx_BF = datum_params[0]; - var Dy_BF = datum_params[1]; - var Dz_BF = datum_params[2]; - var Rx_BF = datum_params[3]; - var Ry_BF = datum_params[4]; - var Rz_BF = datum_params[5]; - var M_BF = datum_params[6]; - // if( x[io] === HUGE_VAL ) - // continue; - return { - x: M_BF * (p.x - Rz_BF * p.y + Ry_BF * p.z) + Dx_BF, - y: M_BF * (Rz_BF * p.x + p.y - Rx_BF * p.z) + Dy_BF, - z: M_BF * (-Ry_BF * p.x + Rx_BF * p.y + p.z) + Dz_BF - }; - } -} // cs_geocentric_to_wgs84 - -/****************************************************************/ -// pj_geocentic_from_wgs84() -// coordinate system definition, -// point to transform in geocentric coordinates (x,y,z) -export function geocentricFromWgs84(p, datum_type, datum_params) { - - if (datum_type === PJD_3PARAM) { - //if( x[io] === HUGE_VAL ) - // continue; - return { - x: p.x - datum_params[0], - y: p.y - datum_params[1], - z: p.z - datum_params[2], - }; - - } else if (datum_type === PJD_7PARAM) { - var Dx_BF = datum_params[0]; - var Dy_BF = datum_params[1]; - var Dz_BF = datum_params[2]; - var Rx_BF = datum_params[3]; - var Ry_BF = datum_params[4]; - var Rz_BF = datum_params[5]; - var M_BF = datum_params[6]; - var x_tmp = (p.x - Dx_BF) / M_BF; - var y_tmp = (p.y - Dy_BF) / M_BF; - var z_tmp = (p.z - Dz_BF) / M_BF; - //if( x[io] === HUGE_VAL ) - // continue; - - return { - x: x_tmp + Rz_BF * y_tmp - Ry_BF * z_tmp, - y: -Rz_BF * x_tmp + y_tmp + Rx_BF * z_tmp, - z: Ry_BF * x_tmp - Rx_BF * y_tmp + z_tmp - }; - } //cs_geocentric_from_wgs84() -} diff --git a/proj4js-master/lib/datum_transform.js b/proj4js-master/lib/datum_transform.js deleted file mode 100644 index 37c39641..00000000 --- a/proj4js-master/lib/datum_transform.js +++ /dev/null @@ -1,201 +0,0 @@ -import { - PJD_3PARAM, - PJD_7PARAM, - PJD_GRIDSHIFT, - PJD_NODATUM, - R2D, - SRS_WGS84_ESQUARED, - SRS_WGS84_SEMIMAJOR, SRS_WGS84_SEMIMINOR -} from './constants/values'; - -import {geodeticToGeocentric, geocentricToGeodetic, geocentricToWgs84, geocentricFromWgs84, compareDatums} from './datumUtils'; -import adjust_lon from "./common/adjust_lon"; -function checkParams(type) { - return (type === PJD_3PARAM || type === PJD_7PARAM); -} - -export default function(source, dest, point) { - // Short cut if the datums are identical. - if (compareDatums(source, dest)) { - return point; // in this case, zero is sucess, - // whereas cs_compare_datums returns 1 to indicate TRUE - // confusing, should fix this - } - - // Explicitly skip datum transform by setting 'datum=none' as parameter for either source or dest - if (source.datum_type === PJD_NODATUM || dest.datum_type === PJD_NODATUM) { - return point; - } - - // If this datum requires grid shifts, then apply it to geodetic coordinates. - var source_a = source.a; - var source_es = source.es; - if (source.datum_type === PJD_GRIDSHIFT) { - var gridShiftCode = applyGridShift(source, false, point); - if (gridShiftCode !== 0) { - return undefined; - } - source_a = SRS_WGS84_SEMIMAJOR; - source_es = SRS_WGS84_ESQUARED; - } - - var dest_a = dest.a; - var dest_b = dest.b; - var dest_es = dest.es; - if (dest.datum_type === PJD_GRIDSHIFT) { - dest_a = SRS_WGS84_SEMIMAJOR; - dest_b = SRS_WGS84_SEMIMINOR; - dest_es = SRS_WGS84_ESQUARED; - } - - // Do we need to go through geocentric coordinates? - if (source_es === dest_es && source_a === dest_a && !checkParams(source.datum_type) && !checkParams(dest.datum_type)) { - return point; - } - - // Convert to geocentric coordinates. - point = geodeticToGeocentric(point, source_es, source_a); - console.log('DATUM 1 A: ', point) - // Convert between datums - console.log('source.datum_params', source.datum_params) - if (checkParams(source.datum_type)) { - point = geocentricToWgs84(point, source.datum_type, source.datum_params); - } - console.log('DATUM 1 B: ', point) - if (checkParams(dest.datum_type)) { - point = geocentricFromWgs84(point, dest.datum_type, dest.datum_params); - } - console.log('DATUM 1 C: ', point) - point = geocentricToGeodetic(point, dest_es, dest_a, dest_b); - console.log('DATUM 1 D: ', point) - - if (dest.datum_type === PJD_GRIDSHIFT) { - var destGridShiftResult = applyGridShift(dest, true, point); - if (destGridShiftResult !== 0) { - return undefined; - } - } - - return point; -} - -export function applyGridShift(source, inverse, point) { - if (source.grids === null || source.grids.length === 0) { - console.log('Grid shift grids not found'); - return -1; - } - var input = {x: -point.x, y: point.y}; - var output = {x: Number.NaN, y: Number.NaN}; - var onlyMandatoryGrids = false; - var attemptedGrids = []; - outer: - for (var i = 0; i < source.grids.length; i++) { - var grid = source.grids[i]; - attemptedGrids.push(grid.name); - if (grid.isNull) { - output = input; - break; - } - onlyMandatoryGrids = grid.mandatory; - if (grid.grid === null) { - if (grid.mandatory) { - console.log("Unable to find mandatory grid '" + grid.name + "'"); - return -1; - } - continue; - } - var subgrids = grid.grid.subgrids; - for (var j = 0, jj = subgrids.length; j < jj; j++) { - var subgrid = subgrids[j]; - // skip tables that don't match our point at all - var epsilon = (Math.abs(subgrid.del[1]) + Math.abs(subgrid.del[0])) / 10000.0; - var minX = subgrid.ll[0] - epsilon; - var minY = subgrid.ll[1] - epsilon; - var maxX = subgrid.ll[0] + (subgrid.lim[0] - 1) * subgrid.del[0] + epsilon; - var maxY = subgrid.ll[1] + (subgrid.lim[1] - 1) * subgrid.del[1] + epsilon; - if (minY > input.y || minX > input.x || maxY < input.y || maxX < input.x ) { - continue; - } - output = applySubgridShift(input, inverse, subgrid); - if (!isNaN(output.x)) { - break outer; - } - } - } - if (isNaN(output.x)) { - console.log("Failed to find a grid shift table for location '"+ - -input.x * R2D + " " + input.y * R2D + " tried: '" + attemptedGrids + "'"); - return -1; - } - point.x = -output.x; - point.y = output.y; - return 0; -} - -function applySubgridShift(pin, inverse, ct) { - var val = {x: Number.NaN, y: Number.NaN}; - if (isNaN(pin.x)) { return val; } - var tb = {x: pin.x, y: pin.y}; - tb.x -= ct.ll[0]; - tb.y -= ct.ll[1]; - tb.x = adjust_lon(tb.x - Math.PI) + Math.PI; - var t = nadInterpolate(tb, ct); - if (inverse) { - if (isNaN(t.x)) { - return val; - } - t.x = tb.x - t.x; - t.y = tb.y - t.y; - var i = 9, tol = 1e-12; - var dif, del; - do { - del = nadInterpolate(t, ct); - if (isNaN(del.x)) { - console.log("Inverse grid shift iteration failed, presumably at grid edge. Using first approximation."); - break; - } - dif = {x: tb.x - (del.x + t.x), y: tb.y - (del.y + t.y)}; - t.x += dif.x; - t.y += dif.y; - } while (i-- && Math.abs(dif.x) > tol && Math.abs(dif.y) > tol); - if (i < 0) { - console.log("Inverse grid shift iterator failed to converge."); - return val; - } - val.x = adjust_lon(t.x + ct.ll[0]); - val.y = t.y + ct.ll[1]; - } else { - if (!isNaN(t.x)) { - val.x = pin.x + t.x; - val.y = pin.y + t.y; - } - } - return val; -} - -function nadInterpolate(pin, ct) { - var t = {x: pin.x / ct.del[0], y: pin.y / ct.del[1]}; - var indx = {x: Math.floor(t.x), y: Math.floor(t.y)}; - var frct = {x: t.x - 1.0 * indx.x, y: t.y - 1.0 * indx.y}; - var val= {x: Number.NaN, y: Number.NaN}; - var inx; - if (indx.x < 0 || indx.x >= ct.lim[0]) { - return val; - } - if (indx.y < 0 || indx.y >= ct.lim[1]) { - return val; - } - inx = (indx.y * ct.lim[0]) + indx.x; - var f00 = {x: ct.cvs[inx][0], y: ct.cvs[inx][1]}; - inx++; - var f10= {x: ct.cvs[inx][0], y: ct.cvs[inx][1]}; - inx += ct.lim[0]; - var f11 = {x: ct.cvs[inx][0], y: ct.cvs[inx][1]}; - inx--; - var f01 = {x: ct.cvs[inx][0], y: ct.cvs[inx][1]}; - var m11 = frct.x * frct.y, m10 = frct.x * (1.0 - frct.y), - m00 = (1.0 - frct.x) * (1.0 - frct.y), m01 = (1.0 - frct.x) * frct.y; - val.x = (m00 * f00.x + m10 * f10.x + m01 * f01.x + m11 * f11.x); - val.y = (m00 * f00.y + m10 * f10.y + m01 * f01.y + m11 * f11.y); - return val; -} diff --git a/proj4js-master/lib/defs.js b/proj4js-master/lib/defs.js deleted file mode 100644 index 6655c800..00000000 --- a/proj4js-master/lib/defs.js +++ /dev/null @@ -1,55 +0,0 @@ -import globals from './global'; -import parseProj from './projString'; -import wkt from 'wkt-parser'; - -function defs(name) { - /*global console*/ - var that = this; - if (arguments.length === 2) { - var def = arguments[1]; - if (typeof def === 'string') { - if (def.charAt(0) === '+') { - defs[name] = parseProj(arguments[1]); - } - else { - defs[name] = wkt(arguments[1]); - } - } else { - defs[name] = def; - } - } - else if (arguments.length === 1) { - if (Array.isArray(name)) { - return name.map(function(v) { - if (Array.isArray(v)) { - defs.apply(that, v); - } - else { - defs(v); - } - }); - } - else if (typeof name === 'string') { - if (name in defs) { - return defs[name]; - } - } - else if ('EPSG' in name) { - defs['EPSG:' + name.EPSG] = name; - } - else if ('ESRI' in name) { - defs['ESRI:' + name.ESRI] = name; - } - else if ('IAU2000' in name) { - defs['IAU2000:' + name.IAU2000] = name; - } - else { - console.log(name); - } - return; - } - - -} -globals(defs); -export default defs; diff --git a/proj4js-master/lib/deriveConstants.js b/proj4js-master/lib/deriveConstants.js deleted file mode 100644 index fd8b382a..00000000 --- a/proj4js-master/lib/deriveConstants.js +++ /dev/null @@ -1,48 +0,0 @@ -import {SIXTH, RA4, RA6, EPSLN} from './constants/values'; -import {default as Ellipsoid, WGS84} from './constants/Ellipsoid'; -import match from './match'; - -export function eccentricity(a, b, rf, R_A) { - var a2 = a * a; // used in geocentric - var b2 = b * b; // used in geocentric - var es = (a2 - b2) / a2; // e ^ 2 - var e = 0; - if (R_A) { - a *= 1 - es * (SIXTH + es * (RA4 + es * RA6)); - a2 = a * a; - es = 0; - } else { - e = Math.sqrt(es); // eccentricity - } - var ep2 = (a2 - b2) / b2; // used in geocentric - return { - es: es, - e: e, - ep2: ep2 - }; -} -export function sphere(a, b, rf, ellps, sphere) { - if (!a) { // do we have an ellipsoid? - var ellipse = match(Ellipsoid, ellps); - if (!ellipse) { - ellipse = WGS84; - } - a = ellipse.a; - b = ellipse.b; - rf = ellipse.rf; - } - - if (rf && !b) { - b = (1.0 - 1.0 / rf) * a; - } - if (rf === 0 || Math.abs(a - b) < EPSLN) { - sphere = true; - b = a; - } - return { - a: a, - b: b, - rf: rf, - sphere: sphere - }; -} diff --git a/proj4js-master/lib/extend.js b/proj4js-master/lib/extend.js deleted file mode 100644 index bcd759f9..00000000 --- a/proj4js-master/lib/extend.js +++ /dev/null @@ -1,14 +0,0 @@ -export default function(destination, source) { - destination = destination || {}; - var value, property; - if (!source) { - return destination; - } - for (property in source) { - value = source[property]; - if (value !== undefined) { - destination[property] = value; - } - } - return destination; -} diff --git a/proj4js-master/lib/global.js b/proj4js-master/lib/global.js deleted file mode 100644 index 476a131a..00000000 --- a/proj4js-master/lib/global.js +++ /dev/null @@ -1,11 +0,0 @@ -export default function(defs) { - defs('EPSG:4326', "+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"); - defs('EPSG:4269', "+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees"); - defs('EPSG:3857', "+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs"); - - defs.WGS84 = defs['EPSG:4326']; - defs['EPSG:3785'] = defs['EPSG:3857']; // maintain backward compat, official code is 3857 - defs.GOOGLE = defs['EPSG:3857']; - defs['EPSG:900913'] = defs['EPSG:3857']; - defs['EPSG:102113'] = defs['EPSG:3857']; -} diff --git a/proj4js-master/lib/includedProjections.js b/proj4js-master/lib/includedProjections.js deleted file mode 100644 index 17cb595c..00000000 --- a/proj4js-master/lib/includedProjections.js +++ /dev/null @@ -1,71 +0,0 @@ -import tmerc from "./projections/tmerc"; -import utm from "./projections/utm"; -import sterea from "./projections/sterea"; -import stere from "./projections/stere"; -import somerc from "./projections/somerc"; -import omerc from "./projections/omerc"; -import lcc from "./projections/lcc"; -import krovak from "./projections/krovak"; -import cass from "./projections/cass"; -import laea from "./projections/laea"; -import aea from "./projections/aea"; -import gnom from "./projections/gnom"; -import cea from "./projections/cea"; -import eqc from "./projections/eqc"; -import poly from "./projections/poly"; -import nzmg from "./projections/nzmg"; -import mill from "./projections/mill"; -import sinu from "./projections/sinu"; -import moll from "./projections/moll"; -import eqdc from "./projections/eqdc"; -import vandg from "./projections/vandg"; -import aegd from "./projections/aeqd"; -import etmerc from './projections/etmerc'; -import qsc from './projections/qsc'; -import robin from './projections/robin'; -import geocent from './projections/geocent'; -import tpers from './projections/tpers'; -import geos from './projections/geos'; -import eqearth from "./projections/eqearth"; -import bonne from "./projections/bonne"; -import gstmerc from "./projections/gstmerc"; - -var projs = [ - tmerc, - utm, - sterea, - stere, - somerc, - omerc, - lcc, - krovak, - cass, - laea, - aea, - gnom, - cea, - eqc, - poly, - nzmg, - mill, - sinu, - moll, - eqdc, - vandg, - aegd, - etmerc, - qsc, - robin, - geocent, - tpers, - geos, - eqearth, - bonne, - gstmerc -]; - -export default function (proj4) { - projs.forEach(function (proj) { - proj4.Proj.projections.add(proj); - }); -} \ No newline at end of file diff --git a/proj4js-master/lib/index.js b/proj4js-master/lib/index.js deleted file mode 100644 index bb5ec0bf..00000000 --- a/proj4js-master/lib/index.js +++ /dev/null @@ -1,22 +0,0 @@ -import proj4 from './core'; -import Proj from "./Proj"; -import Point from "./Point"; -import common from "./common/toPoint"; -import defs from "./defs"; -import nadgrid from "./nadgrid"; -import transform from "./transform"; -import mgrs from "mgrs"; -import includedProjections from "../projs"; - -proj4.defaultDatum = 'WGS84'; //default datum -proj4.Proj = Proj; -proj4.WGS84 = new proj4.Proj('WGS84'); -proj4.Point = Point; -proj4.toPoint = common; -proj4.defs = defs; -proj4.nadgrid = nadgrid; -proj4.transform = transform; -proj4.mgrs = mgrs; -proj4.version = '__VERSION__'; -includedProjections(proj4); -export default proj4; diff --git a/proj4js-master/lib/match.js b/proj4js-master/lib/match.js deleted file mode 100644 index 595e1667..00000000 --- a/proj4js-master/lib/match.js +++ /dev/null @@ -1,17 +0,0 @@ -var ignoredChar = /[\s_\-\/\(\)]/g; -export default function match(obj, key) { - if (obj[key]) { - return obj[key]; - } - var keys = Object.keys(obj); - var lkey = key.toLowerCase().replace(ignoredChar, ''); - var i = -1; - var testkey, processedKey; - while (++i < keys.length) { - testkey = keys[i]; - processedKey = testkey.toLowerCase().replace(ignoredChar, ''); - if (processedKey === lkey) { - return obj[testkey]; - } - } -} diff --git a/proj4js-master/lib/nadgrid.js b/proj4js-master/lib/nadgrid.js deleted file mode 100644 index 1924ef06..00000000 --- a/proj4js-master/lib/nadgrid.js +++ /dev/null @@ -1,140 +0,0 @@ -/** - * Resources for details of NTv2 file formats: - * - https://web.archive.org/web/20140127204822if_/http://www.mgs.gov.on.ca:80/stdprodconsume/groups/content/@mgs/@iandit/documents/resourcelist/stel02_047447.pdf - * - http://mimaka.com/help/gs/html/004_NTV2%20Data%20Format.htm - */ - -var loadedNadgrids = {}; - -/** - * Load a binary NTv2 file (.gsb) to a key that can be used in a proj string like +nadgrids=. Pass the NTv2 file - * as an ArrayBuffer. - */ -export default function nadgrid(key, data) { - var view = new DataView(data); - var isLittleEndian = detectLittleEndian(view); - var header = readHeader(view, isLittleEndian); - var subgrids = readSubgrids(view, header, isLittleEndian); - var nadgrid = {header: header, subgrids: subgrids}; - loadedNadgrids[key] = nadgrid; - return nadgrid; -} - -/** - * Given a proj4 value for nadgrids, return an array of loaded grids - */ -export function getNadgrids(nadgrids) { - // Format details: http://proj.maptools.org/gen_parms.html - if (nadgrids === undefined) { return null; } - var grids = nadgrids.split(','); - return grids.map(parseNadgridString); -} - -function parseNadgridString(value) { - if (value.length === 0) { - return null; - } - var optional = value[0] === '@'; - if (optional) { - value = value.slice(1); - } - if (value === 'null') { - return {name: 'null', mandatory: !optional, grid: null, isNull: true}; - } - return { - name: value, - mandatory: !optional, - grid: loadedNadgrids[value] || null, - isNull: false - }; -} - -function secondsToRadians(seconds) { - return (seconds / 3600) * Math.PI / 180; -} - -function detectLittleEndian(view) { - var nFields = view.getInt32(8, false); - if (nFields === 11) { - return false; - } - nFields = view.getInt32(8, true); - if (nFields !== 11) { - console.warn('Failed to detect nadgrid endian-ness, defaulting to little-endian'); - } - return true; -} - -function readHeader(view, isLittleEndian) { - return { - nFields: view.getInt32(8, isLittleEndian), - nSubgridFields: view.getInt32(24, isLittleEndian), - nSubgrids: view.getInt32(40, isLittleEndian), - shiftType: decodeString(view, 56, 56 + 8).trim(), - fromSemiMajorAxis: view.getFloat64(120, isLittleEndian), - fromSemiMinorAxis: view.getFloat64(136, isLittleEndian), - toSemiMajorAxis: view.getFloat64(152, isLittleEndian), - toSemiMinorAxis: view.getFloat64(168, isLittleEndian), - }; -} - -function decodeString(view, start, end) { - return String.fromCharCode.apply(null, new Uint8Array(view.buffer.slice(start, end))); -} - -function readSubgrids(view, header, isLittleEndian) { - var gridOffset = 176; - var grids = []; - for (var i = 0; i < header.nSubgrids; i++) { - var subHeader = readGridHeader(view, gridOffset, isLittleEndian); - var nodes = readGridNodes(view, gridOffset, subHeader, isLittleEndian); - var lngColumnCount = Math.round( - 1 + (subHeader.upperLongitude - subHeader.lowerLongitude) / subHeader.longitudeInterval); - var latColumnCount = Math.round( - 1 + (subHeader.upperLatitude - subHeader.lowerLatitude) / subHeader.latitudeInterval); - // Proj4 operates on radians whereas the coordinates are in seconds in the grid - grids.push({ - ll: [secondsToRadians(subHeader.lowerLongitude), secondsToRadians(subHeader.lowerLatitude)], - del: [secondsToRadians(subHeader.longitudeInterval), secondsToRadians(subHeader.latitudeInterval)], - lim: [lngColumnCount, latColumnCount], - count: subHeader.gridNodeCount, - cvs: mapNodes(nodes) - }); - gridOffset += 176 + subHeader.gridNodeCount * 16; - } - return grids; -} - -function mapNodes(nodes) { - return nodes.map(function (r) {return [secondsToRadians(r.longitudeShift), secondsToRadians(r.latitudeShift)];}); -} - -function readGridHeader(view, offset, isLittleEndian) { - return { - name: decodeString(view, offset + 8, offset + 16).trim(), - parent: decodeString(view, offset + 24, offset + 24 + 8).trim(), - lowerLatitude: view.getFloat64(offset + 72, isLittleEndian), - upperLatitude: view.getFloat64(offset + 88, isLittleEndian), - lowerLongitude: view.getFloat64(offset + 104, isLittleEndian), - upperLongitude: view.getFloat64(offset + 120, isLittleEndian), - latitudeInterval: view.getFloat64(offset + 136, isLittleEndian), - longitudeInterval: view.getFloat64(offset + 152, isLittleEndian), - gridNodeCount: view.getInt32(offset + 168, isLittleEndian) - }; -} - -function readGridNodes(view, offset, gridHeader, isLittleEndian) { - var nodesOffset = offset + 176; - var gridRecordLength = 16; - var gridShiftRecords = []; - for (var i = 0; i < gridHeader.gridNodeCount; i++) { - var record = { - latitudeShift: view.getFloat32(nodesOffset + i * gridRecordLength, isLittleEndian), - longitudeShift: view.getFloat32(nodesOffset + i * gridRecordLength + 4, isLittleEndian), - latitudeAccuracy: view.getFloat32(nodesOffset + i * gridRecordLength + 8, isLittleEndian), - longitudeAccuracy: view.getFloat32(nodesOffset + i * gridRecordLength + 12, isLittleEndian), - }; - gridShiftRecords.push(record); - } - return gridShiftRecords; -} diff --git a/proj4js-master/lib/parseCode.js b/proj4js-master/lib/parseCode.js deleted file mode 100644 index 6d2f95fe..00000000 --- a/proj4js-master/lib/parseCode.js +++ /dev/null @@ -1,62 +0,0 @@ -import defs from './defs'; -import wkt from 'wkt-parser'; -import projStr from './projString'; -import match from './match'; -function testObj(code){ - return typeof code === 'string'; -} -function testDef(code){ - return code in defs; -} -var codeWords = ['PROJECTEDCRS', 'PROJCRS', 'GEOGCS','GEOCCS','PROJCS','LOCAL_CS', 'GEODCRS', 'GEODETICCRS', 'GEODETICDATUM', 'ENGCRS', 'ENGINEERINGCRS']; -function testWKT(code){ - return codeWords.some(function (word) { - return code.indexOf(word) > -1; - }); -} -var codes = ['3857', '900913', '3785', '102113']; -function checkMercator(item) { - var auth = match(item, 'authority'); - if (!auth) { - return; - } - var code = match(auth, 'epsg'); - return code && codes.indexOf(code) > -1; -} -function checkProjStr(item) { - var ext = match(item, 'extension'); - if (!ext) { - return; - } - return match(ext, 'proj4'); -} -function testProj(code){ - return code[0] === '+'; -} -function parse(code){ - if (testObj(code)) { - //check to see if this is a WKT string - if (testDef(code)) { - return defs[code]; - } - if (testWKT(code)) { - var out = wkt(code); - // test of spetial case, due to this being a very common and often malformed - if (checkMercator(out)) { - return defs['EPSG:3857']; - } - var maybeProjStr = checkProjStr(out); - if (maybeProjStr) { - return projStr(maybeProjStr); - } - return out; - } - if (testProj(code)) { - return projStr(code); - } - }else{ - return code; - } -} - -export default parse; diff --git a/proj4js-master/lib/projString.js b/proj4js-master/lib/projString.js deleted file mode 100644 index 53e96730..00000000 --- a/proj4js-master/lib/projString.js +++ /dev/null @@ -1,145 +0,0 @@ -import {D2R} from './constants/values'; -import PrimeMeridian from './constants/PrimeMeridian'; -import units from './constants/units'; -import match from './match'; - -export default function(defData) { - var self = {}; - var paramObj = defData.split('+').map(function(v) { - return v.trim(); - }).filter(function(a) { - return a; - }).reduce(function(p, a) { - var split = a.split('='); - split.push(true); - p[split[0].toLowerCase()] = split[1]; - return p; - }, {}); - var paramName, paramVal, paramOutname; - var params = { - proj: 'projName', - datum: 'datumCode', - rf: function(v) { - self.rf = parseFloat(v); - }, - lat_0: function(v) { - self.lat0 = v * D2R; - }, - lat_1: function(v) { - self.lat1 = v * D2R; - }, - lat_2: function(v) { - self.lat2 = v * D2R; - }, - lat_ts: function(v) { - self.lat_ts = v * D2R; - }, - lon_0: function(v) { - self.long0 = v * D2R; - }, - lon_1: function(v) { - self.long1 = v * D2R; - }, - lon_2: function(v) { - self.long2 = v * D2R; - }, - alpha: function(v) { - self.alpha = parseFloat(v) * D2R; - }, - gamma: function(v) { - self.rectified_grid_angle = parseFloat(v); - }, - lonc: function(v) { - self.longc = v * D2R; - }, - x_0: function(v) { - self.x0 = parseFloat(v); - }, - y_0: function(v) { - self.y0 = parseFloat(v); - }, - k_0: function(v) { - self.k0 = parseFloat(v); - }, - k: function(v) { - self.k0 = parseFloat(v); - }, - a: function(v) { - self.a = parseFloat(v); - }, - b: function(v) { - self.b = parseFloat(v); - }, - r: function(v) { - self.a = self.b = parseFloat(v); - }, - r_a: function() { - self.R_A = true; - }, - zone: function(v) { - self.zone = parseInt(v, 10); - }, - south: function() { - self.utmSouth = true; - }, - towgs84: function(v) { - self.datum_params = v.split(",").map(function(a) { - return parseFloat(a); - }); - }, - to_meter: function(v) { - self.to_meter = parseFloat(v); - }, - units: function(v) { - self.units = v; - var unit = match(units, v); - if (unit) { - self.to_meter = unit.to_meter; - } - }, - from_greenwich: function(v) { - self.from_greenwich = v * D2R; - }, - pm: function(v) { - var pm = match(PrimeMeridian, v); - self.from_greenwich = (pm ? pm : parseFloat(v)) * D2R; - }, - nadgrids: function(v) { - if (v === '@null') { - self.datumCode = 'none'; - } - else { - self.nadgrids = v; - } - }, - axis: function(v) { - var legalAxis = "ewnsud"; - if (v.length === 3 && legalAxis.indexOf(v.substr(0, 1)) !== -1 && legalAxis.indexOf(v.substr(1, 1)) !== -1 && legalAxis.indexOf(v.substr(2, 1)) !== -1) { - self.axis = v; - } - }, - approx: function() { - self.approx = true; - } - }; - for (paramName in paramObj) { - paramVal = paramObj[paramName]; - if (paramName in params) { - paramOutname = params[paramName]; - if (typeof paramOutname === 'function') { - paramOutname(paramVal); - } - else { - self[paramOutname] = paramVal; - } - } - else { - self[paramName] = paramVal; - } - } - if(typeof self.datumCode === 'string' && self.datumCode !== "WGS84"){ - self.datumCode = self.datumCode.toLowerCase(); - } - - return self; -} diff --git a/proj4js-master/lib/projections.js b/proj4js-master/lib/projections.js deleted file mode 100644 index 6667b447..00000000 --- a/proj4js-master/lib/projections.js +++ /dev/null @@ -1,39 +0,0 @@ -import merc from "./projections/merc"; -import longlat from "./projections/longlat"; -var projs = [merc, longlat]; -var names = {}; -var projStore = []; - -function add(proj, i) { - var len = projStore.length; - if (!proj.names) { - console.log(i); - return true; - } - projStore[len] = proj; - proj.names.forEach(function(n) { - names[n.toLowerCase()] = len; - }); - return this; -} - -export {add}; - -export function get(name) { - if (!name) { - return false; - } - var n = name.toLowerCase(); - if (typeof names[n] !== 'undefined' && projStore[names[n]]) { - return projStore[names[n]]; - } -} - -export function start() { - projs.forEach(add); -} -export default { - start: start, - add: add, - get: get -}; diff --git a/proj4js-master/lib/projections/aea.js b/proj4js-master/lib/projections/aea.js deleted file mode 100644 index 4cfbc970..00000000 --- a/proj4js-master/lib/projections/aea.js +++ /dev/null @@ -1,129 +0,0 @@ -import msfnz from '../common/msfnz'; -import qsfnz from '../common/qsfnz'; -import adjust_lon from '../common/adjust_lon'; -import asinz from '../common/asinz'; -import {EPSLN} from '../constants/values'; - -export function init() { - - if (Math.abs(this.lat1 + this.lat2) < EPSLN) { - return; - } - this.temp = this.b / this.a; - this.es = 1 - Math.pow(this.temp, 2); - this.e3 = Math.sqrt(this.es); - - this.sin_po = Math.sin(this.lat1); - this.cos_po = Math.cos(this.lat1); - this.t1 = this.sin_po; - this.con = this.sin_po; - this.ms1 = msfnz(this.e3, this.sin_po, this.cos_po); - this.qs1 = qsfnz(this.e3, this.sin_po); - - this.sin_po = Math.sin(this.lat2); - this.cos_po = Math.cos(this.lat2); - this.t2 = this.sin_po; - this.ms2 = msfnz(this.e3, this.sin_po, this.cos_po); - this.qs2 = qsfnz(this.e3, this.sin_po); - - this.sin_po = Math.sin(this.lat0); - this.cos_po = Math.cos(this.lat0); - this.t3 = this.sin_po; - this.qs0 = qsfnz(this.e3, this.sin_po); - - if (Math.abs(this.lat1 - this.lat2) > EPSLN) { - this.ns0 = (this.ms1 * this.ms1 - this.ms2 * this.ms2) / (this.qs2 - this.qs1); - } - else { - this.ns0 = this.con; - } - this.c = this.ms1 * this.ms1 + this.ns0 * this.qs1; - this.rh = this.a * Math.sqrt(this.c - this.ns0 * this.qs0) / this.ns0; -} - -/* Albers Conical Equal Area forward equations--mapping lat,long to x,y - -------------------------------------------------------------------*/ -export function forward(p) { - - var lon = p.x; - var lat = p.y; - - this.sin_phi = Math.sin(lat); - this.cos_phi = Math.cos(lat); - - var qs = qsfnz(this.e3, this.sin_phi); - var rh1 = this.a * Math.sqrt(this.c - this.ns0 * qs) / this.ns0; - var theta = this.ns0 * adjust_lon(lon - this.long0); - var x = rh1 * Math.sin(theta) + this.x0; - var y = this.rh - rh1 * Math.cos(theta) + this.y0; - - p.x = x; - p.y = y; - return p; -} - -export function inverse(p) { - var rh1, qs, con, theta, lon, lat; - - p.x -= this.x0; - p.y = this.rh - p.y + this.y0; - if (this.ns0 >= 0) { - rh1 = Math.sqrt(p.x * p.x + p.y * p.y); - con = 1; - } - else { - rh1 = -Math.sqrt(p.x * p.x + p.y * p.y); - con = -1; - } - theta = 0; - if (rh1 !== 0) { - theta = Math.atan2(con * p.x, con * p.y); - } - con = rh1 * this.ns0 / this.a; - if (this.sphere) { - lat = Math.asin((this.c - con * con) / (2 * this.ns0)); - } - else { - qs = (this.c - con * con) / this.ns0; - lat = this.phi1z(this.e3, qs); - } - - lon = adjust_lon(theta / this.ns0 + this.long0); - p.x = lon; - p.y = lat; - return p; -} - -/* Function to compute phi1, the latitude for the inverse of the - Albers Conical Equal-Area projection. --------------------------------------------*/ -export function phi1z(eccent, qs) { - var sinphi, cosphi, con, com, dphi; - var phi = asinz(0.5 * qs); - if (eccent < EPSLN) { - return phi; - } - - var eccnts = eccent * eccent; - for (var i = 1; i <= 25; i++) { - sinphi = Math.sin(phi); - cosphi = Math.cos(phi); - con = eccent * sinphi; - com = 1 - con * con; - dphi = 0.5 * com * com / cosphi * (qs / (1 - eccnts) - sinphi / com + 0.5 / eccent * Math.log((1 - con) / (1 + con))); - phi = phi + dphi; - if (Math.abs(dphi) <= 1e-7) { - return phi; - } - } - return null; -} - -export var names = ["Albers_Conic_Equal_Area", "Albers", "aea"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names, - phi1z: phi1z -}; diff --git a/proj4js-master/lib/projections/aeqd.js b/proj4js-master/lib/projections/aeqd.js deleted file mode 100644 index 1a60c9df..00000000 --- a/proj4js-master/lib/projections/aeqd.js +++ /dev/null @@ -1,208 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; -import {HALF_PI, EPSLN} from '../constants/values'; - -import mlfn from '../common/mlfn'; -import e0fn from '../common/e0fn'; -import e1fn from '../common/e1fn'; -import e2fn from '../common/e2fn'; -import e3fn from '../common/e3fn'; -import gN from '../common/gN'; -import asinz from '../common/asinz'; -import imlfn from '../common/imlfn'; - - - -export function init() { - this.sin_p12 = Math.sin(this.lat0); - this.cos_p12 = Math.cos(this.lat0); -} - -export function forward(p) { - var lon = p.x; - var lat = p.y; - var sinphi = Math.sin(p.y); - var cosphi = Math.cos(p.y); - var dlon = adjust_lon(lon - this.long0); - var e0, e1, e2, e3, Mlp, Ml, tanphi, Nl1, Nl, psi, Az, G, H, GH, Hs, c, kp, cos_c, s, s2, s3, s4, s5; - if (this.sphere) { - if (Math.abs(this.sin_p12 - 1) <= EPSLN) { - //North Pole case - p.x = this.x0 + this.a * (HALF_PI - lat) * Math.sin(dlon); - p.y = this.y0 - this.a * (HALF_PI - lat) * Math.cos(dlon); - return p; - } - else if (Math.abs(this.sin_p12 + 1) <= EPSLN) { - //South Pole case - p.x = this.x0 + this.a * (HALF_PI + lat) * Math.sin(dlon); - p.y = this.y0 + this.a * (HALF_PI + lat) * Math.cos(dlon); - return p; - } - else { - //default case - cos_c = this.sin_p12 * sinphi + this.cos_p12 * cosphi * Math.cos(dlon); - c = Math.acos(cos_c); - kp = c ? c / Math.sin(c) : 1; - p.x = this.x0 + this.a * kp * cosphi * Math.sin(dlon); - p.y = this.y0 + this.a * kp * (this.cos_p12 * sinphi - this.sin_p12 * cosphi * Math.cos(dlon)); - return p; - } - } - else { - e0 = e0fn(this.es); - e1 = e1fn(this.es); - e2 = e2fn(this.es); - e3 = e3fn(this.es); - if (Math.abs(this.sin_p12 - 1) <= EPSLN) { - //North Pole case - Mlp = this.a * mlfn(e0, e1, e2, e3, HALF_PI); - Ml = this.a * mlfn(e0, e1, e2, e3, lat); - p.x = this.x0 + (Mlp - Ml) * Math.sin(dlon); - p.y = this.y0 - (Mlp - Ml) * Math.cos(dlon); - return p; - } - else if (Math.abs(this.sin_p12 + 1) <= EPSLN) { - //South Pole case - Mlp = this.a * mlfn(e0, e1, e2, e3, HALF_PI); - Ml = this.a * mlfn(e0, e1, e2, e3, lat); - p.x = this.x0 + (Mlp + Ml) * Math.sin(dlon); - p.y = this.y0 + (Mlp + Ml) * Math.cos(dlon); - return p; - } - else { - //Default case - tanphi = sinphi / cosphi; - Nl1 = gN(this.a, this.e, this.sin_p12); - Nl = gN(this.a, this.e, sinphi); - psi = Math.atan((1 - this.es) * tanphi + this.es * Nl1 * this.sin_p12 / (Nl * cosphi)); - Az = Math.atan2(Math.sin(dlon), this.cos_p12 * Math.tan(psi) - this.sin_p12 * Math.cos(dlon)); - if (Az === 0) { - s = Math.asin(this.cos_p12 * Math.sin(psi) - this.sin_p12 * Math.cos(psi)); - } - else if (Math.abs(Math.abs(Az) - Math.PI) <= EPSLN) { - s = -Math.asin(this.cos_p12 * Math.sin(psi) - this.sin_p12 * Math.cos(psi)); - } - else { - s = Math.asin(Math.sin(dlon) * Math.cos(psi) / Math.sin(Az)); - } - G = this.e * this.sin_p12 / Math.sqrt(1 - this.es); - H = this.e * this.cos_p12 * Math.cos(Az) / Math.sqrt(1 - this.es); - GH = G * H; - Hs = H * H; - s2 = s * s; - s3 = s2 * s; - s4 = s3 * s; - s5 = s4 * s; - c = Nl1 * s * (1 - s2 * Hs * (1 - Hs) / 6 + s3 / 8 * GH * (1 - 2 * Hs) + s4 / 120 * (Hs * (4 - 7 * Hs) - 3 * G * G * (1 - 7 * Hs)) - s5 / 48 * GH); - p.x = this.x0 + c * Math.sin(Az); - p.y = this.y0 + c * Math.cos(Az); - return p; - } - } - - -} - -export function inverse(p) { - p.x -= this.x0; - p.y -= this.y0; - var rh, z, sinz, cosz, lon, lat, con, e0, e1, e2, e3, Mlp, M, N1, psi, Az, cosAz, tmp, A, B, D, Ee, F, sinpsi; - if (this.sphere) { - rh = Math.sqrt(p.x * p.x + p.y * p.y); - if (rh > (2 * HALF_PI * this.a)) { - return; - } - z = rh / this.a; - - sinz = Math.sin(z); - cosz = Math.cos(z); - - lon = this.long0; - if (Math.abs(rh) <= EPSLN) { - lat = this.lat0; - } - else { - lat = asinz(cosz * this.sin_p12 + (p.y * sinz * this.cos_p12) / rh); - con = Math.abs(this.lat0) - HALF_PI; - if (Math.abs(con) <= EPSLN) { - if (this.lat0 >= 0) { - lon = adjust_lon(this.long0 + Math.atan2(p.x, - p.y)); - } - else { - lon = adjust_lon(this.long0 - Math.atan2(-p.x, p.y)); - } - } - else { - /*con = cosz - this.sin_p12 * Math.sin(lat); - if ((Math.abs(con) < EPSLN) && (Math.abs(p.x) < EPSLN)) { - //no-op, just keep the lon value as is - } else { - var temp = Math.atan2((p.x * sinz * this.cos_p12), (con * rh)); - lon = adjust_lon(this.long0 + Math.atan2((p.x * sinz * this.cos_p12), (con * rh))); - }*/ - lon = adjust_lon(this.long0 + Math.atan2(p.x * sinz, rh * this.cos_p12 * cosz - p.y * this.sin_p12 * sinz)); - } - } - - p.x = lon; - p.y = lat; - return p; - } - else { - e0 = e0fn(this.es); - e1 = e1fn(this.es); - e2 = e2fn(this.es); - e3 = e3fn(this.es); - if (Math.abs(this.sin_p12 - 1) <= EPSLN) { - //North pole case - Mlp = this.a * mlfn(e0, e1, e2, e3, HALF_PI); - rh = Math.sqrt(p.x * p.x + p.y * p.y); - M = Mlp - rh; - lat = imlfn(M / this.a, e0, e1, e2, e3); - lon = adjust_lon(this.long0 + Math.atan2(p.x, - 1 * p.y)); - p.x = lon; - p.y = lat; - return p; - } - else if (Math.abs(this.sin_p12 + 1) <= EPSLN) { - //South pole case - Mlp = this.a * mlfn(e0, e1, e2, e3, HALF_PI); - rh = Math.sqrt(p.x * p.x + p.y * p.y); - M = rh - Mlp; - - lat = imlfn(M / this.a, e0, e1, e2, e3); - lon = adjust_lon(this.long0 + Math.atan2(p.x, p.y)); - p.x = lon; - p.y = lat; - return p; - } - else { - //default case - rh = Math.sqrt(p.x * p.x + p.y * p.y); - Az = Math.atan2(p.x, p.y); - N1 = gN(this.a, this.e, this.sin_p12); - cosAz = Math.cos(Az); - tmp = this.e * this.cos_p12 * cosAz; - A = -tmp * tmp / (1 - this.es); - B = 3 * this.es * (1 - A) * this.sin_p12 * this.cos_p12 * cosAz / (1 - this.es); - D = rh / N1; - Ee = D - A * (1 + A) * Math.pow(D, 3) / 6 - B * (1 + 3 * A) * Math.pow(D, 4) / 24; - F = 1 - A * Ee * Ee / 2 - D * Ee * Ee * Ee / 6; - psi = Math.asin(this.sin_p12 * Math.cos(Ee) + this.cos_p12 * Math.sin(Ee) * cosAz); - lon = adjust_lon(this.long0 + Math.asin(Math.sin(Az) * Math.sin(Ee) / Math.cos(psi))); - sinpsi = Math.sin(psi); - lat = Math.atan2((sinpsi - this.es * F * this.sin_p12) * Math.tan(psi), sinpsi * (1 - this.es)); - p.x = lon; - p.y = lat; - return p; - } - } - -} - -export var names = ["Azimuthal_Equidistant", "aeqd"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/bonne.js b/proj4js-master/lib/projections/bonne.js deleted file mode 100644 index 90b4343f..00000000 --- a/proj4js-master/lib/projections/bonne.js +++ /dev/null @@ -1,114 +0,0 @@ -import adjust_lat from "../common/adjust_lat"; -import adjust_lon from "../common/adjust_lon"; -import hypot from "../common/hypot"; -import pj_enfn from "../common/pj_enfn"; -import pj_inv_mlfn from "../common/pj_inv_mlfn"; -import pj_mlfn from "../common/pj_mlfn"; -import { HALF_PI } from "../constants/values"; - -var EPS10 = 1e-10; - -export function init() { - var c; - - this.phi1 = this.lat1; - if (Math.abs(this.phi1) < EPS10) { - throw new Error(); - } - console.log('BONNE INIT', this) - if (this.es) { - this.en = pj_enfn(this.es); - this.m1 = pj_mlfn(this.phi1, this.am1 = Math.sin(this.phi1), - c = Math.cos(this.phi1), this.en); - this.am1 = c / (Math.sqrt(1 - this.es * this.am1 * this.am1) * this.am1); - this.inverse = e_inv; - this.forward = e_fwd; - } else { - if (Math.abs(this.phi1) + EPS10 >= HALF_PI) { - this.cphi1 = 0; - } - else { - this.cphi1 = 1 / Math.tan(this.phi1); - } - this.inverse = s_inv; - this.forward = s_fwd; - } -} - -function e_fwd(p) { - var lam = adjust_lon(p.x - (this.long0 || 0)); - var phi = p.y; - var rh, E, c; - rh = this.am1 + this.m1 - pj_mlfn(phi, E = Math.sin(phi), c = Math.cos(phi), this.en); - E = c * lam / (rh * Math.sqrt(1 - this.es * E * E)); - p.x = rh * Math.sin(E); - p.y = this.am1 - rh * Math.cos(E); - - p.x = this.a * p.x + (this.x0 || 0); - p.y = this.a * p.y + (this.y0 || 0); - return p; -} - -function e_inv(p) { - p.x = (p.x - (this.x0 || 0)) / this.a; - p.y = (p.y - (this.y0 || 0)) / this.a; - - var s, rh, lam, phi; - rh = hypot(p.x, p.y = this.am1 - p.y); - phi = pj_inv_mlfn(this.am1 + this.m1 - rh, this.es, this.en); - if ((s = Math.abs(phi)) < HALF_PI) { - s = Math.sin(phi); - lam = rh * Math.atan2(p.x, p.y) * Math.sqrt(1 - this.es * s * s) / Math.cos(phi); - } else if (Math.abs(s - HALF_PI) <= EPS10) { - lam = 0; - } - else { - throw new Error(); - } - p.x = adjust_lon(lam + (this.long0 || 0)); - p.y = adjust_lat(phi); - return p; -} - -function s_fwd(p) { - var lam = adjust_lon(p.x - (this.long0 || 0)); - var phi = p.y; - var E, rh; - rh = this.cphi1 + this.phi1 - phi; - if (Math.abs(rh) > EPS10) { - p.x = rh * Math.sin(E = lam * Math.cos(phi) / rh); - p.y = this.cphi1 - rh * Math.cos(E); - } else { - p.x = p.y = 0; - } - - p.x = this.a * p.x + (this.x0 || 0); - p.y = this.a * p.y + (this.y0 || 0); - return p; -} - -function s_inv(p) { - p.x = (p.x - (this.x0 || 0)) / this.a; - p.y = (p.y - (this.y0 || 0)) / this.a; - - var lam, phi; - var rh = hypot(p.x, p.y = this.cphi1 - p.y); - phi = this.cphi1 + this.phi1 - rh; - if (Math.abs(phi) > HALF_PI) { - throw new Error(); - } - if (Math.abs(Math.abs(phi) - HALF_PI) <= EPS10) { - lam = 0; - } else { - lam = rh * Math.atan2(p.x, p.y) / Math.cos(phi); - } - p.x = adjust_lon(lam + (this.long0 || 0)); - p.y = adjust_lat(phi); - return p; -} - -export var names = ["bonne", "Bonne (Werner lat_1=90)"]; -export default { - init: init, - names: names -}; \ No newline at end of file diff --git a/proj4js-master/lib/projections/cass.js b/proj4js-master/lib/projections/cass.js deleted file mode 100644 index 74f4d388..00000000 --- a/proj4js-master/lib/projections/cass.js +++ /dev/null @@ -1,108 +0,0 @@ -import mlfn from '../common/mlfn'; -import e0fn from '../common/e0fn'; -import e1fn from '../common/e1fn'; -import e2fn from '../common/e2fn'; -import e3fn from '../common/e3fn'; -import gN from '../common/gN'; -import adjust_lon from '../common/adjust_lon'; -import adjust_lat from '../common/adjust_lat'; -import imlfn from '../common/imlfn'; -import {HALF_PI, EPSLN} from '../constants/values'; - -export function init() { - if (!this.sphere) { - this.e0 = e0fn(this.es); - this.e1 = e1fn(this.es); - this.e2 = e2fn(this.es); - this.e3 = e3fn(this.es); - this.ml0 = this.a * mlfn(this.e0, this.e1, this.e2, this.e3, this.lat0); - } -} - -/* Cassini forward equations--mapping lat,long to x,y - -----------------------------------------------------------------------*/ -export function forward(p) { - - /* Forward equations - -----------------*/ - var x, y; - var lam = p.x; - var phi = p.y; - lam = adjust_lon(lam - this.long0); - - if (this.sphere) { - x = this.a * Math.asin(Math.cos(phi) * Math.sin(lam)); - y = this.a * (Math.atan2(Math.tan(phi), Math.cos(lam)) - this.lat0); - } - else { - //ellipsoid - var sinphi = Math.sin(phi); - var cosphi = Math.cos(phi); - var nl = gN(this.a, this.e, sinphi); - var tl = Math.tan(phi) * Math.tan(phi); - var al = lam * Math.cos(phi); - var asq = al * al; - var cl = this.es * cosphi * cosphi / (1 - this.es); - var ml = this.a * mlfn(this.e0, this.e1, this.e2, this.e3, phi); - - x = nl * al * (1 - asq * tl * (1 / 6 - (8 - tl + 8 * cl) * asq / 120)); - y = ml - this.ml0 + nl * sinphi / cosphi * asq * (0.5 + (5 - tl + 6 * cl) * asq / 24); - - - } - - p.x = x + this.x0; - p.y = y + this.y0; - return p; -} - -/* Inverse equations - -----------------*/ -export function inverse(p) { - p.x -= this.x0; - p.y -= this.y0; - var x = p.x / this.a; - var y = p.y / this.a; - var phi, lam; - - if (this.sphere) { - var dd = y + this.lat0; - phi = Math.asin(Math.sin(dd) * Math.cos(x)); - lam = Math.atan2(Math.tan(x), Math.cos(dd)); - } - else { - /* ellipsoid */ - var ml1 = this.ml0 / this.a + y; - var phi1 = imlfn(ml1, this.e0, this.e1, this.e2, this.e3); - if (Math.abs(Math.abs(phi1) - HALF_PI) <= EPSLN) { - p.x = this.long0; - p.y = HALF_PI; - if (y < 0) { - p.y *= -1; - } - return p; - } - var nl1 = gN(this.a, this.e, Math.sin(phi1)); - - var rl1 = nl1 * nl1 * nl1 / this.a / this.a * (1 - this.es); - var tl1 = Math.pow(Math.tan(phi1), 2); - var dl = x * this.a / nl1; - var dsq = dl * dl; - phi = phi1 - nl1 * Math.tan(phi1) / rl1 * dl * dl * (0.5 - (1 + 3 * tl1) * dl * dl / 24); - lam = dl * (1 - dsq * (tl1 / 3 + (1 + 3 * tl1) * tl1 * dsq / 15)) / Math.cos(phi1); - - } - - p.x = adjust_lon(lam + this.long0); - p.y = adjust_lat(phi); - return p; - -} - -export var names = ["Cassini", "Cassini_Soldner", "cass"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/cea.js b/proj4js-master/lib/projections/cea.js deleted file mode 100644 index 68fc2adb..00000000 --- a/proj4js-master/lib/projections/cea.js +++ /dev/null @@ -1,70 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; -import qsfnz from '../common/qsfnz'; -import msfnz from '../common/msfnz'; -import iqsfnz from '../common/iqsfnz'; - -/* - reference: - "Cartographic Projection Procedures for the UNIX Environment- - A User's Manual" by Gerald I. Evenden, - USGS Open File Report 90-284and Release 4 Interim Reports (2003) -*/ -export function init() { - //no-op - if (!this.sphere) { - this.k0 = msfnz(this.e, Math.sin(this.lat_ts), Math.cos(this.lat_ts)); - } -} - -/* Cylindrical Equal Area forward equations--mapping lat,long to x,y - ------------------------------------------------------------*/ -export function forward(p) { - var lon = p.x; - var lat = p.y; - var x, y; - /* Forward equations - -----------------*/ - var dlon = adjust_lon(lon - this.long0); - if (this.sphere) { - x = this.x0 + this.a * dlon * Math.cos(this.lat_ts); - y = this.y0 + this.a * Math.sin(lat) / Math.cos(this.lat_ts); - } - else { - var qs = qsfnz(this.e, Math.sin(lat)); - x = this.x0 + this.a * this.k0 * dlon; - y = this.y0 + this.a * qs * 0.5 / this.k0; - } - - p.x = x; - p.y = y; - return p; -} - -/* Cylindrical Equal Area inverse equations--mapping x,y to lat/long - ------------------------------------------------------------*/ -export function inverse(p) { - p.x -= this.x0; - p.y -= this.y0; - var lon, lat; - - if (this.sphere) { - lon = adjust_lon(this.long0 + (p.x / this.a) / Math.cos(this.lat_ts)); - lat = Math.asin((p.y / this.a) * Math.cos(this.lat_ts)); - } - else { - lat = iqsfnz(this.e, 2 * p.y * this.k0 / this.a); - lon = adjust_lon(this.long0 + p.x / (this.a * this.k0)); - } - - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["cea"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/eqc.js b/proj4js-master/lib/projections/eqc.js deleted file mode 100644 index 44513280..00000000 --- a/proj4js-master/lib/projections/eqc.js +++ /dev/null @@ -1,48 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; -import adjust_lat from '../common/adjust_lat'; - -export function init() { - - this.x0 = this.x0 || 0; - this.y0 = this.y0 || 0; - this.lat0 = this.lat0 || 0; - this.long0 = this.long0 || 0; - this.lat_ts = this.lat_ts || 0; - this.title = this.title || "Equidistant Cylindrical (Plate Carre)"; - - this.rc = Math.cos(this.lat_ts); -} - -// forward equations--mapping lat,long to x,y -// ----------------------------------------------------------------- -export function forward(p) { - - var lon = p.x; - var lat = p.y; - - var dlon = adjust_lon(lon - this.long0); - var dlat = adjust_lat(lat - this.lat0); - p.x = this.x0 + (this.a * dlon * this.rc); - p.y = this.y0 + (this.a * dlat); - return p; -} - -// inverse equations--mapping x,y to lat/long -// ----------------------------------------------------------------- -export function inverse(p) { - - var x = p.x; - var y = p.y; - - p.x = adjust_lon(this.long0 + ((x - this.x0) / (this.a * this.rc))); - p.y = adjust_lat(this.lat0 + ((y - this.y0) / (this.a))); - return p; -} - -export var names = ["Equirectangular", "Equidistant_Cylindrical", "eqc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/eqdc.js b/proj4js-master/lib/projections/eqdc.js deleted file mode 100644 index fcf03e1d..00000000 --- a/proj4js-master/lib/projections/eqdc.js +++ /dev/null @@ -1,117 +0,0 @@ -import e0fn from '../common/e0fn'; -import e1fn from '../common/e1fn'; -import e2fn from '../common/e2fn'; -import e3fn from '../common/e3fn'; -import msfnz from '../common/msfnz'; -import mlfn from '../common/mlfn'; -import adjust_lon from '../common/adjust_lon'; -import adjust_lat from '../common/adjust_lat'; -import imlfn from '../common/imlfn'; -import {EPSLN} from '../constants/values'; - -export function init() { - - /* Place parameters in static storage for common use - -------------------------------------------------*/ - // Standard Parallels cannot be equal and on opposite sides of the equator - if (Math.abs(this.lat1 + this.lat2) < EPSLN) { - return; - } - this.lat2 = this.lat2 || this.lat1; - this.temp = this.b / this.a; - this.es = 1 - Math.pow(this.temp, 2); - this.e = Math.sqrt(this.es); - this.e0 = e0fn(this.es); - this.e1 = e1fn(this.es); - this.e2 = e2fn(this.es); - this.e3 = e3fn(this.es); - - this.sinphi = Math.sin(this.lat1); - this.cosphi = Math.cos(this.lat1); - - this.ms1 = msfnz(this.e, this.sinphi, this.cosphi); - this.ml1 = mlfn(this.e0, this.e1, this.e2, this.e3, this.lat1); - - if (Math.abs(this.lat1 - this.lat2) < EPSLN) { - this.ns = this.sinphi; - } - else { - this.sinphi = Math.sin(this.lat2); - this.cosphi = Math.cos(this.lat2); - this.ms2 = msfnz(this.e, this.sinphi, this.cosphi); - this.ml2 = mlfn(this.e0, this.e1, this.e2, this.e3, this.lat2); - this.ns = (this.ms1 - this.ms2) / (this.ml2 - this.ml1); - } - this.g = this.ml1 + this.ms1 / this.ns; - this.ml0 = mlfn(this.e0, this.e1, this.e2, this.e3, this.lat0); - this.rh = this.a * (this.g - this.ml0); -} - -/* Equidistant Conic forward equations--mapping lat,long to x,y - -----------------------------------------------------------*/ -export function forward(p) { - var lon = p.x; - var lat = p.y; - var rh1; - - /* Forward equations - -----------------*/ - if (this.sphere) { - rh1 = this.a * (this.g - lat); - } - else { - var ml = mlfn(this.e0, this.e1, this.e2, this.e3, lat); - rh1 = this.a * (this.g - ml); - } - var theta = this.ns * adjust_lon(lon - this.long0); - var x = this.x0 + rh1 * Math.sin(theta); - var y = this.y0 + this.rh - rh1 * Math.cos(theta); - p.x = x; - p.y = y; - return p; -} - -/* Inverse equations - -----------------*/ -export function inverse(p) { - p.x -= this.x0; - p.y = this.rh - p.y + this.y0; - var con, rh1, lat, lon; - if (this.ns >= 0) { - rh1 = Math.sqrt(p.x * p.x + p.y * p.y); - con = 1; - } - else { - rh1 = -Math.sqrt(p.x * p.x + p.y * p.y); - con = -1; - } - var theta = 0; - if (rh1 !== 0) { - theta = Math.atan2(con * p.x, con * p.y); - } - - if (this.sphere) { - lon = adjust_lon(this.long0 + theta / this.ns); - lat = adjust_lat(this.g - rh1 / this.a); - p.x = lon; - p.y = lat; - return p; - } - else { - var ml = this.g - rh1 / this.a; - lat = imlfn(ml, this.e0, this.e1, this.e2, this.e3); - lon = adjust_lon(this.long0 + theta / this.ns); - p.x = lon; - p.y = lat; - return p; - } - -} - -export var names = ["Equidistant_Conic", "eqdc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/eqearth.js b/proj4js-master/lib/projections/eqearth.js deleted file mode 100644 index e407e1b1..00000000 --- a/proj4js-master/lib/projections/eqearth.js +++ /dev/null @@ -1,93 +0,0 @@ -/** - * Copyright 2018 Bernie Jenny, Monash University, Melbourne, Australia. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * Equal Earth is a projection inspired by the Robinson projection, but unlike - * the Robinson projection retains the relative size of areas. The projection - * was designed in 2018 by Bojan Savric, Tom Patterson and Bernhard Jenny. - * - * Publication: - * Bojan Savric, Tom Patterson & Bernhard Jenny (2018). The Equal Earth map - * projection, International Journal of Geographical Information Science, - * DOI: 10.1080/13658816.2018.1504949 - * - * Code released August 2018 - * Ported to JavaScript and adapted for mapshaper-proj by Matthew Bloch August 2018 - * Modified for proj4js by Andreas Hocevar by Andreas Hocevar March 2024 - */ - -import adjust_lon from "../common/adjust_lon"; - -var A1 = 1.340264, - A2 = -0.081106, - A3 = 0.000893, - A4 = 0.003796, - M = Math.sqrt(3) / 2.0; - -export function init() { - this.es = 0; - this.long0 = this.long0 !== undefined ? this.long0 : 0; -} - -export function forward(p) { - var lam = adjust_lon(p.x - this.long0); - var phi = p.y; - var paramLat = Math.asin(M * Math.sin(phi)), - paramLatSq = paramLat * paramLat, - paramLatPow6 = paramLatSq * paramLatSq * paramLatSq; - p.x = lam * Math.cos(paramLat) / - (M * (A1 + 3 * A2 * paramLatSq + paramLatPow6 * (7 * A3 + 9 * A4 * paramLatSq))); - p.y = paramLat * (A1 + A2 * paramLatSq + paramLatPow6 * (A3 + A4 * paramLatSq)); - - p.x = this.a * p.x + this.x0; - p.y = this.a * p.y + this.y0; - return p; -} - -export function inverse(p) { - p.x = (p.x - this.x0) / this.a; - p.y = (p.y - this.y0) / this.a; - - var EPS = 1e-9, - NITER = 12, - paramLat = p.y, - paramLatSq, paramLatPow6, fy, fpy, dlat, i; - - for (i = 0; i < NITER; ++i) { - paramLatSq = paramLat * paramLat; - paramLatPow6 = paramLatSq * paramLatSq * paramLatSq; - fy = paramLat * (A1 + A2 * paramLatSq + paramLatPow6 * (A3 + A4 * paramLatSq)) - p.y; - fpy = A1 + 3 * A2 * paramLatSq + paramLatPow6 * (7 * A3 + 9 * A4 * paramLatSq); - paramLat -= dlat = fy / fpy; - if (Math.abs(dlat) < EPS) { - break; - } - } - paramLatSq = paramLat * paramLat; - paramLatPow6 = paramLatSq * paramLatSq * paramLatSq; - p.x = M * p.x * (A1 + 3 * A2 * paramLatSq + paramLatPow6 * (7 * A3 + 9 * A4 * paramLatSq)) / - Math.cos(paramLat); - p.y = Math.asin(Math.sin(paramLat) / M); - - p.x = adjust_lon(p.x + this.long0); - return p; -} - -export var names = ["eqearth", "Equal Earth", "Equal_Earth"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; \ No newline at end of file diff --git a/proj4js-master/lib/projections/equi.js b/proj4js-master/lib/projections/equi.js deleted file mode 100644 index f91a522a..00000000 --- a/proj4js-master/lib/projections/equi.js +++ /dev/null @@ -1,48 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; - -export function init() { - this.x0 = this.x0 || 0; - this.y0 = this.y0 || 0; - this.lat0 = this.lat0 || 0; - this.long0 = this.long0 || 0; - ///this.t2; -} - -/* Equirectangular forward equations--mapping lat,long to x,y - ---------------------------------------------------------*/ -export function forward(p) { - - var lon = p.x; - var lat = p.y; - - var dlon = adjust_lon(lon - this.long0); - var x = this.x0 + this.a * dlon * Math.cos(this.lat0); - var y = this.y0 + this.a * lat; - - this.t1 = x; - this.t2 = Math.cos(this.lat0); - p.x = x; - p.y = y; - return p; -} - -/* Equirectangular inverse equations--mapping x,y to lat/long - ---------------------------------------------------------*/ -export function inverse(p) { - - p.x -= this.x0; - p.y -= this.y0; - var lat = p.y / this.a; - - var lon = adjust_lon(this.long0 + p.x / (this.a * Math.cos(this.lat0))); - p.x = lon; - p.y = lat; -} - -export var names = ["equi"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/etmerc.js b/proj4js-master/lib/projections/etmerc.js deleted file mode 100644 index 0d32f5bc..00000000 --- a/proj4js-master/lib/projections/etmerc.js +++ /dev/null @@ -1,172 +0,0 @@ -// Heavily based on this etmerc projection implementation -// https://github.com/mbloch/mapshaper-proj/blob/master/src/projections/etmerc.js - -import tmerc from '../projections/tmerc'; -import sinh from '../common/sinh'; -import hypot from '../common/hypot'; -import asinhy from '../common/asinhy'; -import gatg from '../common/gatg'; -import clens from '../common/clens'; -import clens_cmplx from '../common/clens_cmplx'; -import adjust_lon from '../common/adjust_lon'; - -export function init() { - if (!this.approx && (isNaN(this.es) || this.es <= 0)) { - throw new Error('Incorrect elliptical usage. Try using the +approx option in the proj string, or PROJECTION["Fast_Transverse_Mercator"] in the WKT.'); - } - if (this.approx) { - // When '+approx' is set, use tmerc instead - tmerc.init.apply(this); - this.forward = tmerc.forward; - this.inverse = tmerc.inverse; - } - - this.x0 = this.x0 !== undefined ? this.x0 : 0; - this.y0 = this.y0 !== undefined ? this.y0 : 0; - this.long0 = this.long0 !== undefined ? this.long0 : 0; - this.lat0 = this.lat0 !== undefined ? this.lat0 : 0; - - this.cgb = []; - this.cbg = []; - this.utg = []; - this.gtu = []; - - var f = this.es / (1 + Math.sqrt(1 - this.es)); - var n = f / (2 - f); - var np = n; - - this.cgb[0] = n * (2 + n * (-2 / 3 + n * (-2 + n * (116 / 45 + n * (26 / 45 + n * (-2854 / 675 )))))); - this.cbg[0] = n * (-2 + n * ( 2 / 3 + n * ( 4 / 3 + n * (-82 / 45 + n * (32 / 45 + n * (4642 / 4725)))))); - - np = np * n; - this.cgb[1] = np * (7 / 3 + n * (-8 / 5 + n * (-227 / 45 + n * (2704 / 315 + n * (2323 / 945))))); - this.cbg[1] = np * (5 / 3 + n * (-16 / 15 + n * ( -13 / 9 + n * (904 / 315 + n * (-1522 / 945))))); - - np = np * n; - this.cgb[2] = np * (56 / 15 + n * (-136 / 35 + n * (-1262 / 105 + n * (73814 / 2835)))); - this.cbg[2] = np * (-26 / 15 + n * (34 / 21 + n * (8 / 5 + n * (-12686 / 2835)))); - - np = np * n; - this.cgb[3] = np * (4279 / 630 + n * (-332 / 35 + n * (-399572 / 14175))); - this.cbg[3] = np * (1237 / 630 + n * (-12 / 5 + n * ( -24832 / 14175))); - - np = np * n; - this.cgb[4] = np * (4174 / 315 + n * (-144838 / 6237)); - this.cbg[4] = np * (-734 / 315 + n * (109598 / 31185)); - - np = np * n; - this.cgb[5] = np * (601676 / 22275); - this.cbg[5] = np * (444337 / 155925); - - np = Math.pow(n, 2); - this.Qn = this.k0 / (1 + n) * (1 + np * (1 / 4 + np * (1 / 64 + np / 256))); - - this.utg[0] = n * (-0.5 + n * ( 2 / 3 + n * (-37 / 96 + n * ( 1 / 360 + n * (81 / 512 + n * (-96199 / 604800)))))); - this.gtu[0] = n * (0.5 + n * (-2 / 3 + n * (5 / 16 + n * (41 / 180 + n * (-127 / 288 + n * (7891 / 37800)))))); - - this.utg[1] = np * (-1 / 48 + n * (-1 / 15 + n * (437 / 1440 + n * (-46 / 105 + n * (1118711 / 3870720))))); - this.gtu[1] = np * (13 / 48 + n * (-3 / 5 + n * (557 / 1440 + n * (281 / 630 + n * (-1983433 / 1935360))))); - - np = np * n; - this.utg[2] = np * (-17 / 480 + n * (37 / 840 + n * (209 / 4480 + n * (-5569 / 90720 )))); - this.gtu[2] = np * (61 / 240 + n * (-103 / 140 + n * (15061 / 26880 + n * (167603 / 181440)))); - - np = np * n; - this.utg[3] = np * (-4397 / 161280 + n * (11 / 504 + n * (830251 / 7257600))); - this.gtu[3] = np * (49561 / 161280 + n * (-179 / 168 + n * (6601661 / 7257600))); - - np = np * n; - this.utg[4] = np * (-4583 / 161280 + n * (108847 / 3991680)); - this.gtu[4] = np * (34729 / 80640 + n * (-3418889 / 1995840)); - - np = np * n; - this.utg[5] = np * (-20648693 / 638668800); - this.gtu[5] = np * (212378941 / 319334400); - - var Z = gatg(this.cbg, this.lat0); - this.Zb = -this.Qn * (Z + clens(this.gtu, 2 * Z)); -} - -export function forward(p) { - var Ce = adjust_lon(p.x - this.long0); - var Cn = p.y; - - Cn = gatg(this.cbg, Cn); - var sin_Cn = Math.sin(Cn); - var cos_Cn = Math.cos(Cn); - var sin_Ce = Math.sin(Ce); - var cos_Ce = Math.cos(Ce); - - Cn = Math.atan2(sin_Cn, cos_Ce * cos_Cn); - Ce = Math.atan2(sin_Ce * cos_Cn, hypot(sin_Cn, cos_Cn * cos_Ce)); - Ce = asinhy(Math.tan(Ce)); - - var tmp = clens_cmplx(this.gtu, 2 * Cn, 2 * Ce); - - Cn = Cn + tmp[0]; - Ce = Ce + tmp[1]; - - var x; - var y; - - if (Math.abs(Ce) <= 2.623395162778) { - x = this.a * (this.Qn * Ce) + this.x0; - y = this.a * (this.Qn * Cn + this.Zb) + this.y0; - } - else { - x = Infinity; - y = Infinity; - } - - p.x = x; - p.y = y; - - return p; -} - -export function inverse(p) { - var Ce = (p.x - this.x0) * (1 / this.a); - var Cn = (p.y - this.y0) * (1 / this.a); - - Cn = (Cn - this.Zb) / this.Qn; - Ce = Ce / this.Qn; - - var lon; - var lat; - - if (Math.abs(Ce) <= 2.623395162778) { - var tmp = clens_cmplx(this.utg, 2 * Cn, 2 * Ce); - - Cn = Cn + tmp[0]; - Ce = Ce + tmp[1]; - Ce = Math.atan(sinh(Ce)); - - var sin_Cn = Math.sin(Cn); - var cos_Cn = Math.cos(Cn); - var sin_Ce = Math.sin(Ce); - var cos_Ce = Math.cos(Ce); - - Cn = Math.atan2(sin_Cn * cos_Ce, hypot(sin_Ce, cos_Ce * cos_Cn)); - Ce = Math.atan2(sin_Ce, cos_Ce * cos_Cn); - - lon = adjust_lon(Ce + this.long0); - lat = gatg(this.cgb, Cn); - } - else { - lon = Infinity; - lat = Infinity; - } - - p.x = lon; - p.y = lat; - - return p; -} - -export var names = ["Extended_Transverse_Mercator", "Extended Transverse Mercator", "etmerc", "Transverse_Mercator", "Transverse Mercator", "Gauss Kruger", "Gauss_Kruger", "tmerc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/gauss.js b/proj4js-master/lib/projections/gauss.js deleted file mode 100644 index df237975..00000000 --- a/proj4js-master/lib/projections/gauss.js +++ /dev/null @@ -1,52 +0,0 @@ -import srat from '../common/srat'; -var MAX_ITER = 20; -import {HALF_PI, FORTPI} from '../constants/values'; - -export function init() { - var sphi = Math.sin(this.lat0); - var cphi = Math.cos(this.lat0); - cphi *= cphi; - this.rc = Math.sqrt(1 - this.es) / (1 - this.es * sphi * sphi); - this.C = Math.sqrt(1 + this.es * cphi * cphi / (1 - this.es)); - this.phic0 = Math.asin(sphi / this.C); - this.ratexp = 0.5 * this.C * this.e; - this.K = Math.tan(0.5 * this.phic0 + FORTPI) / (Math.pow(Math.tan(0.5 * this.lat0 + FORTPI), this.C) * srat(this.e * sphi, this.ratexp)); -} - -export function forward(p) { - var lon = p.x; - var lat = p.y; - - p.y = 2 * Math.atan(this.K * Math.pow(Math.tan(0.5 * lat + FORTPI), this.C) * srat(this.e * Math.sin(lat), this.ratexp)) - HALF_PI; - p.x = this.C * lon; - return p; -} - -export function inverse(p) { - var DEL_TOL = 1e-14; - var lon = p.x / this.C; - var lat = p.y; - var num = Math.pow(Math.tan(0.5 * lat + FORTPI) / this.K, 1 / this.C); - for (var i = MAX_ITER; i > 0; --i) { - lat = 2 * Math.atan(num * srat(this.e * Math.sin(p.y), - 0.5 * this.e)) - HALF_PI; - if (Math.abs(lat - p.y) < DEL_TOL) { - break; - } - p.y = lat; - } - /* convergence failed */ - if (!i) { - return null; - } - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["gauss"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/geocent.js b/proj4js-master/lib/projections/geocent.js deleted file mode 100644 index 8ceadf88..00000000 --- a/proj4js-master/lib/projections/geocent.js +++ /dev/null @@ -1,27 +0,0 @@ -import { - geodeticToGeocentric, - geocentricToGeodetic -} from '../datumUtils'; - -export function init() { - this.name = 'geocent'; - -} - -export function forward(p) { - var point = geodeticToGeocentric(p, this.es, this.a); - return point; -} - -export function inverse(p) { - var point = geocentricToGeodetic(p, this.es, this.a, this.b); - return point; -} - -export var names = ["Geocentric", 'geocentric', "geocent", "Geocent"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; \ No newline at end of file diff --git a/proj4js-master/lib/projections/geos.js b/proj4js-master/lib/projections/geos.js deleted file mode 100644 index 5c11a435..00000000 --- a/proj4js-master/lib/projections/geos.js +++ /dev/null @@ -1,160 +0,0 @@ -import hypot from '../common/hypot'; - -export function init() { - this.flip_axis = (this.sweep === 'x' ? 1 : 0); - this.h = Number(this.h); - this.radius_g_1 = this.h / this.a; - - if (this.radius_g_1 <= 0 || this.radius_g_1 > 1e10) { - throw new Error(); - } - - this.radius_g = 1.0 + this.radius_g_1; - this.C = this.radius_g * this.radius_g - 1.0; - - if (this.es !== 0.0) { - var one_es = 1.0 - this.es; - var rone_es = 1 / one_es; - - this.radius_p = Math.sqrt(one_es); - this.radius_p2 = one_es; - this.radius_p_inv2 = rone_es; - - this.shape = 'ellipse'; // Use as a condition in the forward and inverse functions. - } else { - this.radius_p = 1.0; - this.radius_p2 = 1.0; - this.radius_p_inv2 = 1.0; - - this.shape = 'sphere'; // Use as a condition in the forward and inverse functions. - } - - if (!this.title) { - this.title = "Geostationary Satellite View"; - } -} - -function forward(p) { - var lon = p.x; - var lat = p.y; - var tmp, v_x, v_y, v_z; - lon = lon - this.long0; - - if (this.shape === 'ellipse') { - lat = Math.atan(this.radius_p2 * Math.tan(lat)); - var r = this.radius_p / hypot(this.radius_p * Math.cos(lat), Math.sin(lat)); - - v_x = r * Math.cos(lon) * Math.cos(lat); - v_y = r * Math.sin(lon) * Math.cos(lat); - v_z = r * Math.sin(lat); - - if (((this.radius_g - v_x) * v_x - v_y * v_y - v_z * v_z * this.radius_p_inv2) < 0.0) { - console.log('HEHREHREHRHERHEHRHERH ERRRROOOOOORRRRR!!!!!!!') - p.x = Number.NaN; - p.y = Number.NaN; - return p; - } - - tmp = this.radius_g - v_x; - if (this.flip_axis) { - p.x = this.radius_g_1 * Math.atan(v_y / hypot(v_z, tmp)); - p.y = this.radius_g_1 * Math.atan(v_z / tmp); - } else { - p.x = this.radius_g_1 * Math.atan(v_y / tmp); - p.y = this.radius_g_1 * Math.atan(v_z / hypot(v_y, tmp)); - } - } else if (this.shape === 'sphere') { - tmp = Math.cos(lat); - v_x = Math.cos(lon) * tmp; - v_y = Math.sin(lon) * tmp; - v_z = Math.sin(lat); - tmp = this.radius_g - v_x; - - if (this.flip_axis) { - p.x = this.radius_g_1 * Math.atan(v_y / hypot(v_z, tmp)); - p.y = this.radius_g_1 * Math.atan(v_z / tmp); - } else { - p.x = this.radius_g_1 * Math.atan(v_y / tmp); - p.y = this.radius_g_1 * Math.atan(v_z / hypot(v_y, tmp)); - } - } - p.x = p.x * this.a; - p.y = p.y * this.a; - return p; -} - -function inverse(p) { - var v_x = -1.0; - var v_y = 0.0; - var v_z = 0.0; - var a, b, det, k; - - p.x = p.x / this.a; - p.y = p.y / this.a; - - if (this.shape === 'ellipse') { - if (this.flip_axis) { - v_z = Math.tan(p.y / this.radius_g_1); - v_y = Math.tan(p.x / this.radius_g_1) * hypot(1.0, v_z); - } else { - v_y = Math.tan(p.x / this.radius_g_1); - v_z = Math.tan(p.y / this.radius_g_1) * hypot(1.0, v_y); - } - - var v_zp = v_z / this.radius_p; - a = v_y * v_y + v_zp * v_zp + v_x * v_x; - b = 2 * this.radius_g * v_x; - det = (b * b) - 4 * a * this.C; - - if (det < 0.0) { - p.x = Number.NaN; - p.y = Number.NaN; - return p; - } - - k = (-b - Math.sqrt(det)) / (2.0 * a); - v_x = this.radius_g + k * v_x; - v_y *= k; - v_z *= k; - - p.x = Math.atan2(v_y, v_x); - p.y = Math.atan(v_z * Math.cos(p.x) / v_x); - p.y = Math.atan(this.radius_p_inv2 * Math.tan(p.y)); - } else if (this.shape === 'sphere') { - if (this.flip_axis) { - v_z = Math.tan(p.y / this.radius_g_1); - v_y = Math.tan(p.x / this.radius_g_1) * Math.sqrt(1.0 + v_z * v_z); - } else { - v_y = Math.tan(p.x / this.radius_g_1); - v_z = Math.tan(p.y / this.radius_g_1) * Math.sqrt(1.0 + v_y * v_y); - } - - a = v_y * v_y + v_z * v_z + v_x * v_x; - b = 2 * this.radius_g * v_x; - det = (b * b) - 4 * a * this.C; - if (det < 0.0) { - p.x = Number.NaN; - p.y = Number.NaN; - return p; - } - - k = (-b - Math.sqrt(det)) / (2.0 * a); - v_x = this.radius_g + k * v_x; - v_y *= k; - v_z *= k; - - p.x = Math.atan2(v_y, v_x); - p.y = Math.atan(v_z * Math.cos(p.x) / v_x); - } - p.x = p.x + this.long0; - return p; -} - -export var names = ["Geostationary Satellite View", "Geostationary_Satellite", "geos"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names, -}; - diff --git a/proj4js-master/lib/projections/gnom.js b/proj4js-master/lib/projections/gnom.js deleted file mode 100644 index 066cff86..00000000 --- a/proj4js-master/lib/projections/gnom.js +++ /dev/null @@ -1,104 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; -import asinz from '../common/asinz'; -import {EPSLN} from '../constants/values'; - -/* - reference: - Wolfram Mathworld "Gnomonic Projection" - http://mathworld.wolfram.com/GnomonicProjection.html - Accessed: 12th November 2009 - */ -export function init() { - - /* Place parameters in static storage for common use - -------------------------------------------------*/ - this.sin_p14 = Math.sin(this.lat0); - this.cos_p14 = Math.cos(this.lat0); - // Approximation for projecting points to the horizon (infinity) - this.infinity_dist = 1000 * this.a; - this.rc = 1; -} - -/* Gnomonic forward equations--mapping lat,long to x,y - ---------------------------------------------------*/ -export function forward(p) { - var sinphi, cosphi; /* sin and cos value */ - var dlon; /* delta longitude value */ - var coslon; /* cos of longitude */ - var ksp; /* scale factor */ - var g; - var x, y; - var lon = p.x; - var lat = p.y; - /* Forward equations - -----------------*/ - dlon = adjust_lon(lon - this.long0); - - sinphi = Math.sin(lat); - cosphi = Math.cos(lat); - - coslon = Math.cos(dlon); - g = this.sin_p14 * sinphi + this.cos_p14 * cosphi * coslon; - ksp = 1; - if ((g > 0) || (Math.abs(g) <= EPSLN)) { - x = this.x0 + this.a * ksp * cosphi * Math.sin(dlon) / g; - y = this.y0 + this.a * ksp * (this.cos_p14 * sinphi - this.sin_p14 * cosphi * coslon) / g; - } - else { - - // Point is in the opposing hemisphere and is unprojectable - // We still need to return a reasonable point, so we project - // to infinity, on a bearing - // equivalent to the northern hemisphere equivalent - // This is a reasonable approximation for short shapes and lines that - // straddle the horizon. - - x = this.x0 + this.infinity_dist * cosphi * Math.sin(dlon); - y = this.y0 + this.infinity_dist * (this.cos_p14 * sinphi - this.sin_p14 * cosphi * coslon); - - } - p.x = x; - p.y = y; - return p; -} - -export function inverse(p) { - var rh; /* Rho */ - var sinc, cosc; - var c; - var lon, lat; - - /* Inverse equations - -----------------*/ - p.x = (p.x - this.x0) / this.a; - p.y = (p.y - this.y0) / this.a; - - p.x /= this.k0; - p.y /= this.k0; - - if ((rh = Math.sqrt(p.x * p.x + p.y * p.y))) { - c = Math.atan2(rh, this.rc); - sinc = Math.sin(c); - cosc = Math.cos(c); - - lat = asinz(cosc * this.sin_p14 + (p.y * sinc * this.cos_p14) / rh); - lon = Math.atan2(p.x * sinc, rh * this.cos_p14 * cosc - p.y * this.sin_p14 * sinc); - lon = adjust_lon(this.long0 + lon); - } - else { - lat = this.phic0; - lon = 0; - } - - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["gnom"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/gstmerc.js b/proj4js-master/lib/projections/gstmerc.js deleted file mode 100644 index 763dc68a..00000000 --- a/proj4js-master/lib/projections/gstmerc.js +++ /dev/null @@ -1,63 +0,0 @@ -import latiso from '../common/latiso'; -import sinh from '../common/sinh'; -import cosh from '../common/cosh'; -import invlatiso from '../common/invlatiso'; - -export function init() { - - // array of: a, b, lon0, lat0, k0, x0, y0 - var temp = this.b / this.a; - this.e = Math.sqrt(1 - temp * temp); - this.lc = this.long0; - this.rs = Math.sqrt(1 + this.e * this.e * Math.pow(Math.cos(this.lat0), 4) / (1 - this.e * this.e)); - var sinz = Math.sin(this.lat0); - var pc = Math.asin(sinz / this.rs); - var sinzpc = Math.sin(pc); - this.cp = latiso(0, pc, sinzpc) - this.rs * latiso(this.e, this.lat0, sinz); - this.n2 = this.k0 * this.a * Math.sqrt(1 - this.e * this.e) / (1 - this.e * this.e * sinz * sinz); - this.xs = this.x0; - this.ys = this.y0 - this.n2 * pc; - - if (!this.title) { - this.title = "Gauss Schreiber transverse mercator"; - } -} - -// forward equations--mapping lat,long to x,y -// ----------------------------------------------------------------- -export function forward(p) { - - var lon = p.x; - var lat = p.y; - - var L = this.rs * (lon - this.lc); - var Ls = this.cp + (this.rs * latiso(this.e, lat, Math.sin(lat))); - var lat1 = Math.asin(Math.sin(L) / cosh(Ls)); - var Ls1 = latiso(0, lat1, Math.sin(lat1)); - p.x = this.xs + (this.n2 * Ls1); - p.y = this.ys + (this.n2 * Math.atan(sinh(Ls) / Math.cos(L))); - return p; -} - -// inverse equations--mapping x,y to lat/long -// ----------------------------------------------------------------- -export function inverse(p) { - - var x = p.x; - var y = p.y; - - var L = Math.atan(sinh((x - this.xs) / this.n2) / Math.cos((y - this.ys) / this.n2)); - var lat1 = Math.asin(Math.sin((y - this.ys) / this.n2) / cosh((x - this.xs) / this.n2)); - var LC = latiso(0, lat1, Math.sin(lat1)); - p.x = this.lc + L / this.rs; - p.y = invlatiso(this.e, (LC - this.cp) / this.rs); - return p; -} - -export var names = ["gstmerg", "gstmerc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/krovak.js b/proj4js-master/lib/projections/krovak.js deleted file mode 100644 index 620cf7d9..00000000 --- a/proj4js-master/lib/projections/krovak.js +++ /dev/null @@ -1,106 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; - -export function init() { - this.a = 6377397.155; - this.es = 0.006674372230614; - this.e = Math.sqrt(this.es); - if (!this.lat0) { - this.lat0 = 0.863937979737193; - } - if (!this.long0) { - this.long0 = 0.7417649320975901 - 0.308341501185665; - } - /* if scale not set default to 0.9999 */ - if (!this.k0) { - this.k0 = 0.9999; - } - this.s45 = 0.785398163397448; /* 45 */ - this.s90 = 2 * this.s45; - this.fi0 = this.lat0; - this.e2 = this.es; - this.e = Math.sqrt(this.e2); - this.alfa = Math.sqrt(1 + (this.e2 * Math.pow(Math.cos(this.fi0), 4)) / (1 - this.e2)); - this.uq = 1.04216856380474; - this.u0 = Math.asin(Math.sin(this.fi0) / this.alfa); - this.g = Math.pow((1 + this.e * Math.sin(this.fi0)) / (1 - this.e * Math.sin(this.fi0)), this.alfa * this.e / 2); - this.k = Math.tan(this.u0 / 2 + this.s45) / Math.pow(Math.tan(this.fi0 / 2 + this.s45), this.alfa) * this.g; - this.k1 = this.k0; - this.n0 = this.a * Math.sqrt(1 - this.e2) / (1 - this.e2 * Math.pow(Math.sin(this.fi0), 2)); - this.s0 = 1.37008346281555; - this.n = Math.sin(this.s0); - this.ro0 = this.k1 * this.n0 / Math.tan(this.s0); - this.ad = this.s90 - this.uq; -} - -/* ellipsoid */ -/* calculate xy from lat/lon */ -/* Constants, identical to inverse transform function */ -export function forward(p) { - var gfi, u, deltav, s, d, eps, ro; - var lon = p.x; - var lat = p.y; - var delta_lon = adjust_lon(lon - this.long0); - /* Transformation */ - gfi = Math.pow(((1 + this.e * Math.sin(lat)) / (1 - this.e * Math.sin(lat))), (this.alfa * this.e / 2)); - u = 2 * (Math.atan(this.k * Math.pow(Math.tan(lat / 2 + this.s45), this.alfa) / gfi) - this.s45); - deltav = -delta_lon * this.alfa; - s = Math.asin(Math.cos(this.ad) * Math.sin(u) + Math.sin(this.ad) * Math.cos(u) * Math.cos(deltav)); - d = Math.asin(Math.cos(u) * Math.sin(deltav) / Math.cos(s)); - eps = this.n * d; - ro = this.ro0 * Math.pow(Math.tan(this.s0 / 2 + this.s45), this.n) / Math.pow(Math.tan(s / 2 + this.s45), this.n); - p.y = ro * Math.cos(eps) / 1; - p.x = ro * Math.sin(eps) / 1; - - if (!this.czech) { - p.y *= -1; - p.x *= -1; - } - return (p); -} - -/* calculate lat/lon from xy */ -export function inverse(p) { - var u, deltav, s, d, eps, ro, fi1; - var ok; - - /* Transformation */ - /* revert y, x*/ - var tmp = p.x; - p.x = p.y; - p.y = tmp; - if (!this.czech) { - p.y *= -1; - p.x *= -1; - } - ro = Math.sqrt(p.x * p.x + p.y * p.y); - eps = Math.atan2(p.y, p.x); - d = eps / Math.sin(this.s0); - s = 2 * (Math.atan(Math.pow(this.ro0 / ro, 1 / this.n) * Math.tan(this.s0 / 2 + this.s45)) - this.s45); - u = Math.asin(Math.cos(this.ad) * Math.sin(s) - Math.sin(this.ad) * Math.cos(s) * Math.cos(d)); - deltav = Math.asin(Math.cos(s) * Math.sin(d) / Math.cos(u)); - p.x = this.long0 - deltav / this.alfa; - fi1 = u; - ok = 0; - var iter = 0; - do { - p.y = 2 * (Math.atan(Math.pow(this.k, - 1 / this.alfa) * Math.pow(Math.tan(u / 2 + this.s45), 1 / this.alfa) * Math.pow((1 + this.e * Math.sin(fi1)) / (1 - this.e * Math.sin(fi1)), this.e / 2)) - this.s45); - if (Math.abs(fi1 - p.y) < 0.0000000001) { - ok = 1; - } - fi1 = p.y; - iter += 1; - } while (ok === 0 && iter < 15); - if (iter >= 15) { - return null; - } - - return (p); -} - -export var names = ["Krovak", "krovak"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/laea.js b/proj4js-master/lib/projections/laea.js deleted file mode 100644 index b3f6a51f..00000000 --- a/proj4js-master/lib/projections/laea.js +++ /dev/null @@ -1,298 +0,0 @@ - -import {HALF_PI, EPSLN, FORTPI} from '../constants/values'; - -import qsfnz from '../common/qsfnz'; -import adjust_lon from '../common/adjust_lon'; - -/* - reference - "New Equal-Area Map Projections for Noncircular Regions", John P. Snyder, - The American Cartographer, Vol 15, No. 4, October 1988, pp. 341-355. - */ - -export var S_POLE = 1; - -export var N_POLE = 2; -export var EQUIT = 3; -export var OBLIQ = 4; - -/* Initialize the Lambert Azimuthal Equal Area projection - ------------------------------------------------------*/ -export function init() { - var t = Math.abs(this.lat0); - if (Math.abs(t - HALF_PI) < EPSLN) { - this.mode = this.lat0 < 0 ? this.S_POLE : this.N_POLE; - } - else if (Math.abs(t) < EPSLN) { - this.mode = this.EQUIT; - } - else { - this.mode = this.OBLIQ; - } - if (this.es > 0) { - var sinphi; - - this.qp = qsfnz(this.e, 1); - this.mmf = 0.5 / (1 - this.es); - this.apa = authset(this.es); - switch (this.mode) { - case this.N_POLE: - this.dd = 1; - break; - case this.S_POLE: - this.dd = 1; - break; - case this.EQUIT: - this.rq = Math.sqrt(0.5 * this.qp); - this.dd = 1 / this.rq; - this.xmf = 1; - this.ymf = 0.5 * this.qp; - break; - case this.OBLIQ: - this.rq = Math.sqrt(0.5 * this.qp); - sinphi = Math.sin(this.lat0); - this.sinb1 = qsfnz(this.e, sinphi) / this.qp; - this.cosb1 = Math.sqrt(1 - this.sinb1 * this.sinb1); - this.dd = Math.cos(this.lat0) / (Math.sqrt(1 - this.es * sinphi * sinphi) * this.rq * this.cosb1); - this.ymf = (this.xmf = this.rq) / this.dd; - this.xmf *= this.dd; - break; - } - } - else { - if (this.mode === this.OBLIQ) { - this.sinph0 = Math.sin(this.lat0); - this.cosph0 = Math.cos(this.lat0); - } - } -} - -/* Lambert Azimuthal Equal Area forward equations--mapping lat,long to x,y - -----------------------------------------------------------------------*/ -export function forward(p) { - - /* Forward equations - -----------------*/ - var x, y, coslam, sinlam, sinphi, q, sinb, cosb, b, cosphi; - var lam = p.x; - var phi = p.y; - - lam = adjust_lon(lam - this.long0); - if (this.sphere) { - sinphi = Math.sin(phi); - cosphi = Math.cos(phi); - coslam = Math.cos(lam); - if (this.mode === this.OBLIQ || this.mode === this.EQUIT) { - y = (this.mode === this.EQUIT) ? 1 + cosphi * coslam : 1 + this.sinph0 * sinphi + this.cosph0 * cosphi * coslam; - if (y <= EPSLN) { - return null; - } - y = Math.sqrt(2 / y); - x = y * cosphi * Math.sin(lam); - y *= (this.mode === this.EQUIT) ? sinphi : this.cosph0 * sinphi - this.sinph0 * cosphi * coslam; - } - else if (this.mode === this.N_POLE || this.mode === this.S_POLE) { - if (this.mode === this.N_POLE) { - coslam = -coslam; - } - if (Math.abs(phi + this.lat0) < EPSLN) { - return null; - } - y = FORTPI - phi * 0.5; - y = 2 * ((this.mode === this.S_POLE) ? Math.cos(y) : Math.sin(y)); - x = y * Math.sin(lam); - y *= coslam; - } - } - else { - sinb = 0; - cosb = 0; - b = 0; - coslam = Math.cos(lam); - sinlam = Math.sin(lam); - sinphi = Math.sin(phi); - q = qsfnz(this.e, sinphi); - if (this.mode === this.OBLIQ || this.mode === this.EQUIT) { - sinb = q / this.qp; - cosb = Math.sqrt(1 - sinb * sinb); - } - switch (this.mode) { - case this.OBLIQ: - b = 1 + this.sinb1 * sinb + this.cosb1 * cosb * coslam; - break; - case this.EQUIT: - b = 1 + cosb * coslam; - break; - case this.N_POLE: - b = HALF_PI + phi; - q = this.qp - q; - break; - case this.S_POLE: - b = phi - HALF_PI; - q = this.qp + q; - break; - } - if (Math.abs(b) < EPSLN) { - return null; - } - switch (this.mode) { - case this.OBLIQ: - case this.EQUIT: - b = Math.sqrt(2 / b); - if (this.mode === this.OBLIQ) { - y = this.ymf * b * (this.cosb1 * sinb - this.sinb1 * cosb * coslam); - } - else { - y = (b = Math.sqrt(2 / (1 + cosb * coslam))) * sinb * this.ymf; - } - x = this.xmf * b * cosb * sinlam; - break; - case this.N_POLE: - case this.S_POLE: - if (q >= 0) { - x = (b = Math.sqrt(q)) * sinlam; - y = coslam * ((this.mode === this.S_POLE) ? b : -b); - } - else { - x = y = 0; - } - break; - } - } - - p.x = this.a * x + this.x0; - p.y = this.a * y + this.y0; - return p; -} - -/* Inverse equations - -----------------*/ -export function inverse(p) { - p.x -= this.x0; - p.y -= this.y0; - var x = p.x / this.a; - var y = p.y / this.a; - var lam, phi, cCe, sCe, q, rho, ab; - if (this.sphere) { - var cosz = 0, - rh, sinz = 0; - - rh = Math.sqrt(x * x + y * y); - phi = rh * 0.5; - if (phi > 1) { - return null; - } - phi = 2 * Math.asin(phi); - if (this.mode === this.OBLIQ || this.mode === this.EQUIT) { - sinz = Math.sin(phi); - cosz = Math.cos(phi); - } - switch (this.mode) { - case this.EQUIT: - phi = (Math.abs(rh) <= EPSLN) ? 0 : Math.asin(y * sinz / rh); - x *= sinz; - y = cosz * rh; - break; - case this.OBLIQ: - phi = (Math.abs(rh) <= EPSLN) ? this.lat0 : Math.asin(cosz * this.sinph0 + y * sinz * this.cosph0 / rh); - x *= sinz * this.cosph0; - y = (cosz - Math.sin(phi) * this.sinph0) * rh; - break; - case this.N_POLE: - y = -y; - phi = HALF_PI - phi; - break; - case this.S_POLE: - phi -= HALF_PI; - break; - } - lam = (y === 0 && (this.mode === this.EQUIT || this.mode === this.OBLIQ)) ? 0 : Math.atan2(x, y); - } - else { - ab = 0; - if (this.mode === this.OBLIQ || this.mode === this.EQUIT) { - x /= this.dd; - y *= this.dd; - rho = Math.sqrt(x * x + y * y); - if (rho < EPSLN) { - p.x = this.long0; - p.y = this.lat0; - return p; - } - sCe = 2 * Math.asin(0.5 * rho / this.rq); - cCe = Math.cos(sCe); - x *= (sCe = Math.sin(sCe)); - if (this.mode === this.OBLIQ) { - ab = cCe * this.sinb1 + y * sCe * this.cosb1 / rho; - q = this.qp * ab; - y = rho * this.cosb1 * cCe - y * this.sinb1 * sCe; - } - else { - ab = y * sCe / rho; - q = this.qp * ab; - y = rho * cCe; - } - } - else if (this.mode === this.N_POLE || this.mode === this.S_POLE) { - if (this.mode === this.N_POLE) { - y = -y; - } - q = (x * x + y * y); - if (!q) { - p.x = this.long0; - p.y = this.lat0; - return p; - } - ab = 1 - q / this.qp; - if (this.mode === this.S_POLE) { - ab = -ab; - } - } - lam = Math.atan2(x, y); - phi = authlat(Math.asin(ab), this.apa); - } - - p.x = adjust_lon(this.long0 + lam); - p.y = phi; - return p; -} - -/* determine latitude from authalic latitude */ -var P00 = 0.33333333333333333333; - -var P01 = 0.17222222222222222222; -var P02 = 0.10257936507936507936; -var P10 = 0.06388888888888888888; -var P11 = 0.06640211640211640211; -var P20 = 0.01641501294219154443; - -function authset(es) { - var t; - var APA = []; - APA[0] = es * P00; - t = es * es; - APA[0] += t * P01; - APA[1] = t * P10; - t *= es; - APA[0] += t * P02; - APA[1] += t * P11; - APA[2] = t * P20; - return APA; -} - -function authlat(beta, APA) { - var t = beta + beta; - return (beta + APA[0] * Math.sin(t) + APA[1] * Math.sin(t + t) + APA[2] * Math.sin(t + t + t)); -} - -export var names = ["Lambert Azimuthal Equal Area", "Lambert_Azimuthal_Equal_Area", "laea"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names, - S_POLE: S_POLE, - N_POLE: N_POLE, - EQUIT: EQUIT, - OBLIQ: OBLIQ -}; diff --git a/proj4js-master/lib/projections/lcc.js b/proj4js-master/lib/projections/lcc.js deleted file mode 100644 index bb92b3f4..00000000 --- a/proj4js-master/lib/projections/lcc.js +++ /dev/null @@ -1,150 +0,0 @@ -import msfnz from '../common/msfnz'; -import tsfnz from '../common/tsfnz'; -import sign from '../common/sign'; -import adjust_lon from '../common/adjust_lon'; -import phi2z from '../common/phi2z'; -import {HALF_PI, EPSLN} from '../constants/values'; -export function init() { - - //double lat0; /* the reference latitude */ - //double long0; /* the reference longitude */ - //double lat1; /* first standard parallel */ - //double lat2; /* second standard parallel */ - //double r_maj; /* major axis */ - //double r_min; /* minor axis */ - //double false_east; /* x offset in meters */ - //double false_north; /* y offset in meters */ - - //the above value can be set with proj4.defs - //example: proj4.defs("EPSG:2154","+proj=lcc +lat_1=49 +lat_2=44 +lat_0=46.5 +lon_0=3 +x_0=700000 +y_0=6600000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"); - - if (!this.lat2) { - this.lat2 = this.lat1; - } //if lat2 is not defined - if (!this.k0) { - this.k0 = 1; - } - this.x0 = this.x0 || 0; - this.y0 = this.y0 || 0; - // Standard Parallels cannot be equal and on opposite sides of the equator - if (Math.abs(this.lat1 + this.lat2) < EPSLN) { - return; - } - - var temp = this.b / this.a; - this.e = Math.sqrt(1 - temp * temp); - - var sin1 = Math.sin(this.lat1); - var cos1 = Math.cos(this.lat1); - var ms1 = msfnz(this.e, sin1, cos1); - var ts1 = tsfnz(this.e, this.lat1, sin1); - - var sin2 = Math.sin(this.lat2); - var cos2 = Math.cos(this.lat2); - var ms2 = msfnz(this.e, sin2, cos2); - var ts2 = tsfnz(this.e, this.lat2, sin2); - - var ts0 = tsfnz(this.e, this.lat0, Math.sin(this.lat0)); - - if (Math.abs(this.lat1 - this.lat2) > EPSLN) { - this.ns = Math.log(ms1 / ms2) / Math.log(ts1 / ts2); - } - else { - this.ns = sin1; - } - if (isNaN(this.ns)) { - this.ns = sin1; - } - this.f0 = ms1 / (this.ns * Math.pow(ts1, this.ns)); - this.rh = this.a * this.f0 * Math.pow(ts0, this.ns); - if (!this.title) { - this.title = "Lambert Conformal Conic"; - } -} - -// Lambert Conformal conic forward equations--mapping lat,long to x,y -// ----------------------------------------------------------------- -export function forward(p) { - - var lon = p.x; - var lat = p.y; - - // singular cases : - if (Math.abs(2 * Math.abs(lat) - Math.PI) <= EPSLN) { - lat = sign(lat) * (HALF_PI - 2 * EPSLN); - } - - var con = Math.abs(Math.abs(lat) - HALF_PI); - var ts, rh1; - if (con > EPSLN) { - ts = tsfnz(this.e, lat, Math.sin(lat)); - rh1 = this.a * this.f0 * Math.pow(ts, this.ns); - } - else { - con = lat * this.ns; - if (con <= 0) { - return null; - } - rh1 = 0; - } - var theta = this.ns * adjust_lon(lon - this.long0); - p.x = this.k0 * (rh1 * Math.sin(theta)) + this.x0; - p.y = this.k0 * (this.rh - rh1 * Math.cos(theta)) + this.y0; - - return p; -} - -// Lambert Conformal Conic inverse equations--mapping x,y to lat/long -// ----------------------------------------------------------------- -export function inverse(p) { - - var rh1, con, ts; - var lat, lon; - var x = (p.x - this.x0) / this.k0; - var y = (this.rh - (p.y - this.y0) / this.k0); - if (this.ns > 0) { - rh1 = Math.sqrt(x * x + y * y); - con = 1; - } - else { - rh1 = -Math.sqrt(x * x + y * y); - con = -1; - } - var theta = 0; - if (rh1 !== 0) { - theta = Math.atan2((con * x), (con * y)); - } - if ((rh1 !== 0) || (this.ns > 0)) { - con = 1 / this.ns; - ts = Math.pow((rh1 / (this.a * this.f0)), con); - lat = phi2z(this.e, ts); - if (lat === -9999) { - return null; - } - } - else { - lat = -HALF_PI; - } - lon = adjust_lon(theta / this.ns + this.long0); - - p.x = lon; - p.y = lat; - return p; -} - -export var names = [ - "Lambert Tangential Conformal Conic Projection", - "Lambert_Conformal_Conic", - "Lambert_Conformal_Conic_1SP", - "Lambert_Conformal_Conic_2SP", - "lcc", - "Lambert Conic Conformal (1SP)", - "Lambert Conic Conformal (2SP)" -]; - -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/longlat.js b/proj4js-master/lib/projections/longlat.js deleted file mode 100644 index 7e66e7d0..00000000 --- a/proj4js-master/lib/projections/longlat.js +++ /dev/null @@ -1,16 +0,0 @@ -export function init() { - //no-op for longlat -} - -function identity(pt) { - return pt; -} -export {identity as forward}; -export {identity as inverse}; -export var names = ["longlat", "identity"]; -export default { - init: init, - forward: identity, - inverse: identity, - names: names -}; diff --git a/proj4js-master/lib/projections/merc.js b/proj4js-master/lib/projections/merc.js deleted file mode 100644 index 0117b2c7..00000000 --- a/proj4js-master/lib/projections/merc.js +++ /dev/null @@ -1,101 +0,0 @@ -import msfnz from '../common/msfnz'; - -import adjust_lon from '../common/adjust_lon'; -import tsfnz from '../common/tsfnz'; -import phi2z from '../common/phi2z'; -import {FORTPI, R2D, EPSLN, HALF_PI} from '../constants/values'; -export function init() { - // console.log('INIIIIIIIIIIIIIIIIT', this) - var con = this.b / this.a; - this.es = 1 - con * con; - if(!('x0' in this)){ - this.x0 = 0; - } - if(!('y0' in this)){ - this.y0 = 0; - } - this.e = Math.sqrt(this.es); - if (this.lat_ts) { - if (this.sphere) { - this.k0 = Math.cos(this.lat_ts); - } - else { - this.k0 = msfnz(this.e, Math.sin(this.lat_ts), Math.cos(this.lat_ts)); - } - } - else { - if (!this.k0) { - if (this.k) { - this.k0 = this.k; - } - else { - this.k0 = 1; - } - } - } -} - -/* Mercator forward equations--mapping lat,long to x,y - --------------------------------------------------*/ - -export function forward(p) { - var lon = p.x; - var lat = p.y; - // convert to radians - if (lat * R2D > 90 && lat * R2D < -90 && lon * R2D > 180 && lon * R2D < -180) { - return null; - } - - var x, y; - if (Math.abs(Math.abs(lat) - HALF_PI) <= EPSLN) { - return null; - } - else { - if (this.sphere) { - x = this.x0 + this.a * this.k0 * adjust_lon(lon - this.long0); - y = this.y0 + this.a * this.k0 * Math.log(Math.tan(FORTPI + 0.5 * lat)); - } - else { - var sinphi = Math.sin(lat); - var ts = tsfnz(this.e, lat, sinphi); - x = this.x0 + this.a * this.k0 * adjust_lon(lon - this.long0); - y = this.y0 - this.a * this.k0 * Math.log(ts); - } - p.x = x; - p.y = y; - return p; - } -} - -/* Mercator inverse equations--mapping x,y to lat/long - --------------------------------------------------*/ -export function inverse(p) { - - var x = p.x - this.x0; - var y = p.y - this.y0; - var lon, lat; - - if (this.sphere) { - lat = HALF_PI - 2 * Math.atan(Math.exp(-y / (this.a * this.k0))); - } - else { - var ts = Math.exp(-y / (this.a * this.k0)); - lat = phi2z(this.e, ts); - if (lat === -9999) { - return null; - } - } - lon = adjust_lon(this.long0 + x / (this.a * this.k0)); - - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["Mercator", "Popular Visualisation Pseudo Mercator", "Mercator_1SP", "Mercator_Auxiliary_Sphere", "merc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/mill.js b/proj4js-master/lib/projections/mill.js deleted file mode 100644 index 3d6ff0d6..00000000 --- a/proj4js-master/lib/projections/mill.js +++ /dev/null @@ -1,52 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; - -/* - reference - "New Equal-Area Map Projections for Noncircular Regions", John P. Snyder, - The American Cartographer, Vol 15, No. 4, October 1988, pp. 341-355. - */ - - -/* Initialize the Miller Cylindrical projection - -------------------------------------------*/ -export function init() { - //no-op -} - -/* Miller Cylindrical forward equations--mapping lat,long to x,y - ------------------------------------------------------------*/ -export function forward(p) { - var lon = p.x; - var lat = p.y; - /* Forward equations - -----------------*/ - var dlon = adjust_lon(lon - this.long0); - var x = this.x0 + this.a * dlon; - var y = this.y0 + this.a * Math.log(Math.tan((Math.PI / 4) + (lat / 2.5))) * 1.25; - - p.x = x; - p.y = y; - return p; -} - -/* Miller Cylindrical inverse equations--mapping x,y to lat/long - ------------------------------------------------------------*/ -export function inverse(p) { - p.x -= this.x0; - p.y -= this.y0; - - var lon = adjust_lon(this.long0 + p.x / this.a); - var lat = 2.5 * (Math.atan(Math.exp(0.8 * p.y / this.a)) - Math.PI / 4); - - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["Miller_Cylindrical", "mill"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/moll.js b/proj4js-master/lib/projections/moll.js deleted file mode 100644 index faa2e51e..00000000 --- a/proj4js-master/lib/projections/moll.js +++ /dev/null @@ -1,83 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; -export function init() {} -import {EPSLN} from '../constants/values'; -/* Mollweide forward equations--mapping lat,long to x,y - ----------------------------------------------------*/ -export function forward(p) { - - /* Forward equations - -----------------*/ - var lon = p.x; - var lat = p.y; - - var delta_lon = adjust_lon(lon - this.long0); - var theta = lat; - var con = Math.PI * Math.sin(lat); - - /* Iterate using the Newton-Raphson method to find theta - -----------------------------------------------------*/ - while (true) { - var delta_theta = -(theta + Math.sin(theta) - con) / (1 + Math.cos(theta)); - theta += delta_theta; - if (Math.abs(delta_theta) < EPSLN) { - break; - } - } - theta /= 2; - - /* If the latitude is 90 deg, force the x coordinate to be "0 + false easting" - this is done here because of precision problems with "cos(theta)" - --------------------------------------------------------------------------*/ - if (Math.PI / 2 - Math.abs(lat) < EPSLN) { - delta_lon = 0; - } - var x = 0.900316316158 * this.a * delta_lon * Math.cos(theta) + this.x0; - var y = 1.4142135623731 * this.a * Math.sin(theta) + this.y0; - - p.x = x; - p.y = y; - return p; -} - -export function inverse(p) { - var theta; - var arg; - - /* Inverse equations - -----------------*/ - p.x -= this.x0; - p.y -= this.y0; - arg = p.y / (1.4142135623731 * this.a); - - /* Because of division by zero problems, 'arg' can not be 1. Therefore - a number very close to one is used instead. - -------------------------------------------------------------------*/ - if (Math.abs(arg) > 0.999999999999) { - arg = 0.999999999999; - } - theta = Math.asin(arg); - var lon = adjust_lon(this.long0 + (p.x / (0.900316316158 * this.a * Math.cos(theta)))); - if (lon < (-Math.PI)) { - lon = -Math.PI; - } - if (lon > Math.PI) { - lon = Math.PI; - } - arg = (2 * theta + Math.sin(2 * theta)) / Math.PI; - if (Math.abs(arg) > 1) { - arg = 1; - } - var lat = Math.asin(arg); - - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["Mollweide", "moll"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/nzmg.js b/proj4js-master/lib/projections/nzmg.js deleted file mode 100644 index be0741d7..00000000 --- a/proj4js-master/lib/projections/nzmg.js +++ /dev/null @@ -1,226 +0,0 @@ -import {SEC_TO_RAD} from '../constants/values'; - -/* - reference - Department of Land and Survey Technical Circular 1973/32 - http://www.linz.govt.nz/docs/miscellaneous/nz-map-definition.pdf - OSG Technical Report 4.1 - http://www.linz.govt.nz/docs/miscellaneous/nzmg.pdf - */ - -/** - * iterations: Number of iterations to refine inverse transform. - * 0 -> km accuracy - * 1 -> m accuracy -- suitable for most mapping applications - * 2 -> mm accuracy - */ -export var iterations = 1; - -export function init() { - this.A = []; - this.A[1] = 0.6399175073; - this.A[2] = -0.1358797613; - this.A[3] = 0.063294409; - this.A[4] = -0.02526853; - this.A[5] = 0.0117879; - this.A[6] = -0.0055161; - this.A[7] = 0.0026906; - this.A[8] = -0.001333; - this.A[9] = 0.00067; - this.A[10] = -0.00034; - - this.B_re = []; - this.B_im = []; - this.B_re[1] = 0.7557853228; - this.B_im[1] = 0; - this.B_re[2] = 0.249204646; - this.B_im[2] = 0.003371507; - this.B_re[3] = -0.001541739; - this.B_im[3] = 0.041058560; - this.B_re[4] = -0.10162907; - this.B_im[4] = 0.01727609; - this.B_re[5] = -0.26623489; - this.B_im[5] = -0.36249218; - this.B_re[6] = -0.6870983; - this.B_im[6] = -1.1651967; - - this.C_re = []; - this.C_im = []; - this.C_re[1] = 1.3231270439; - this.C_im[1] = 0; - this.C_re[2] = -0.577245789; - this.C_im[2] = -0.007809598; - this.C_re[3] = 0.508307513; - this.C_im[3] = -0.112208952; - this.C_re[4] = -0.15094762; - this.C_im[4] = 0.18200602; - this.C_re[5] = 1.01418179; - this.C_im[5] = 1.64497696; - this.C_re[6] = 1.9660549; - this.C_im[6] = 2.5127645; - - this.D = []; - this.D[1] = 1.5627014243; - this.D[2] = 0.5185406398; - this.D[3] = -0.03333098; - this.D[4] = -0.1052906; - this.D[5] = -0.0368594; - this.D[6] = 0.007317; - this.D[7] = 0.01220; - this.D[8] = 0.00394; - this.D[9] = -0.0013; -} - -/** - New Zealand Map Grid Forward - long/lat to x/y - long/lat in radians - */ -export function forward(p) { - var n; - var lon = p.x; - var lat = p.y; - - var delta_lat = lat - this.lat0; - var delta_lon = lon - this.long0; - - // 1. Calculate d_phi and d_psi ... // and d_lambda - // For this algorithm, delta_latitude is in seconds of arc x 10-5, so we need to scale to those units. Longitude is radians. - var d_phi = delta_lat / SEC_TO_RAD * 1E-5; - var d_lambda = delta_lon; - var d_phi_n = 1; // d_phi^0 - - var d_psi = 0; - for (n = 1; n <= 10; n++) { - d_phi_n = d_phi_n * d_phi; - d_psi = d_psi + this.A[n] * d_phi_n; - } - - // 2. Calculate theta - var th_re = d_psi; - var th_im = d_lambda; - - // 3. Calculate z - var th_n_re = 1; - var th_n_im = 0; // theta^0 - var th_n_re1; - var th_n_im1; - - var z_re = 0; - var z_im = 0; - for (n = 1; n <= 6; n++) { - th_n_re1 = th_n_re * th_re - th_n_im * th_im; - th_n_im1 = th_n_im * th_re + th_n_re * th_im; - th_n_re = th_n_re1; - th_n_im = th_n_im1; - z_re = z_re + this.B_re[n] * th_n_re - this.B_im[n] * th_n_im; - z_im = z_im + this.B_im[n] * th_n_re + this.B_re[n] * th_n_im; - } - - // 4. Calculate easting and northing - p.x = (z_im * this.a) + this.x0; - p.y = (z_re * this.a) + this.y0; - - return p; -} - -/** - New Zealand Map Grid Inverse - x/y to long/lat - */ -export function inverse(p) { - var n; - var x = p.x; - var y = p.y; - - var delta_x = x - this.x0; - var delta_y = y - this.y0; - - // 1. Calculate z - var z_re = delta_y / this.a; - var z_im = delta_x / this.a; - - // 2a. Calculate theta - first approximation gives km accuracy - var z_n_re = 1; - var z_n_im = 0; // z^0 - var z_n_re1; - var z_n_im1; - - var th_re = 0; - var th_im = 0; - for (n = 1; n <= 6; n++) { - z_n_re1 = z_n_re * z_re - z_n_im * z_im; - z_n_im1 = z_n_im * z_re + z_n_re * z_im; - z_n_re = z_n_re1; - z_n_im = z_n_im1; - th_re = th_re + this.C_re[n] * z_n_re - this.C_im[n] * z_n_im; - th_im = th_im + this.C_im[n] * z_n_re + this.C_re[n] * z_n_im; - } - - // 2b. Iterate to refine the accuracy of the calculation - // 0 iterations gives km accuracy - // 1 iteration gives m accuracy -- good enough for most mapping applications - // 2 iterations bives mm accuracy - for (var i = 0; i < this.iterations; i++) { - var th_n_re = th_re; - var th_n_im = th_im; - var th_n_re1; - var th_n_im1; - - var num_re = z_re; - var num_im = z_im; - for (n = 2; n <= 6; n++) { - th_n_re1 = th_n_re * th_re - th_n_im * th_im; - th_n_im1 = th_n_im * th_re + th_n_re * th_im; - th_n_re = th_n_re1; - th_n_im = th_n_im1; - num_re = num_re + (n - 1) * (this.B_re[n] * th_n_re - this.B_im[n] * th_n_im); - num_im = num_im + (n - 1) * (this.B_im[n] * th_n_re + this.B_re[n] * th_n_im); - } - - th_n_re = 1; - th_n_im = 0; - var den_re = this.B_re[1]; - var den_im = this.B_im[1]; - for (n = 2; n <= 6; n++) { - th_n_re1 = th_n_re * th_re - th_n_im * th_im; - th_n_im1 = th_n_im * th_re + th_n_re * th_im; - th_n_re = th_n_re1; - th_n_im = th_n_im1; - den_re = den_re + n * (this.B_re[n] * th_n_re - this.B_im[n] * th_n_im); - den_im = den_im + n * (this.B_im[n] * th_n_re + this.B_re[n] * th_n_im); - } - - // Complex division - var den2 = den_re * den_re + den_im * den_im; - th_re = (num_re * den_re + num_im * den_im) / den2; - th_im = (num_im * den_re - num_re * den_im) / den2; - } - - // 3. Calculate d_phi ... // and d_lambda - var d_psi = th_re; - var d_lambda = th_im; - var d_psi_n = 1; // d_psi^0 - - var d_phi = 0; - for (n = 1; n <= 9; n++) { - d_psi_n = d_psi_n * d_psi; - d_phi = d_phi + this.D[n] * d_psi_n; - } - - // 4. Calculate latitude and longitude - // d_phi is calcuated in second of arc * 10^-5, so we need to scale back to radians. d_lambda is in radians. - var lat = this.lat0 + (d_phi * SEC_TO_RAD * 1E5); - var lon = this.long0 + d_lambda; - - p.x = lon; - p.y = lat; - - return p; -} - -export var names = ["New_Zealand_Map_Grid", "nzmg"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/omerc.js b/proj4js-master/lib/projections/omerc.js deleted file mode 100644 index 72627bf9..00000000 --- a/proj4js-master/lib/projections/omerc.js +++ /dev/null @@ -1,244 +0,0 @@ -import tsfnz from '../common/tsfnz'; -import adjust_lon from '../common/adjust_lon'; -import phi2z from '../common/phi2z'; -import { D2R, EPSLN, HALF_PI, TWO_PI, FORTPI } from '../constants/values'; - -var TOL = 1e-7; - -function isTypeA(P) { - var typeAProjections = ['Hotine_Oblique_Mercator','Hotine_Oblique_Mercator_Azimuth_Natural_Origin']; - var projectionName = typeof P.PROJECTION === "object" ? Object.keys(P.PROJECTION)[0] : P.PROJECTION; - - return 'no_uoff' in P || 'no_off' in P || typeAProjections.indexOf(projectionName) !== -1; -} - - -/* Initialize the Oblique Mercator projection - ------------------------------------------*/ -export function init() { - var con, com, cosph0, D, F, H, L, sinph0, p, J, gamma = 0, - gamma0, lamc = 0, lam1 = 0, lam2 = 0, phi1 = 0, phi2 = 0, alpha_c = 0, AB; - - // only Type A uses the no_off or no_uoff property - // https://github.com/OSGeo/proj.4/issues/104 - this.no_off = isTypeA(this); - this.no_rot = 'no_rot' in this; - - var alp = false; - if ("alpha" in this) { - alp = true; - } - - var gam = false; - if ("rectified_grid_angle" in this) { - gam = true; - } - - if (alp) { - alpha_c = this.alpha; - } - - if (gam) { - gamma = (this.rectified_grid_angle * D2R); - } - console.log('GAMMA START', gamma) - - if (alp || gam) { - lamc = this.longc; - } else { - lam1 = this.long1; - phi1 = this.lat1; - lam2 = this.long2; - phi2 = this.lat2; - - if (Math.abs(phi1 - phi2) <= TOL || (con = Math.abs(phi1)) <= TOL || - Math.abs(con - HALF_PI) <= TOL || Math.abs(Math.abs(this.lat0) - HALF_PI) <= TOL || - Math.abs(Math.abs(phi2) - HALF_PI) <= TOL) { - throw new Error(); - } - } - - var one_es = 1.0 - this.es; - com = Math.sqrt(one_es); - - if (Math.abs(this.lat0) > EPSLN) { - sinph0 = Math.sin(this.lat0); - cosph0 = Math.cos(this.lat0); - con = 1 - this.es * sinph0 * sinph0; - this.B = cosph0 * cosph0; - this.B = Math.sqrt(1 + this.es * this.B * this.B / one_es); - this.A = this.B * this.k0 * com / con; - D = this.B * com / (cosph0 * Math.sqrt(con)); - F = D * D -1; - - if (F <= 0) { - F = 0; - } else { - F = Math.sqrt(F); - if (this.lat0 < 0) { - F = -F; - } - } - - this.E = F += D; - this.E *= Math.pow(tsfnz(this.e, this.lat0, sinph0), this.B); - } else { - this.B = 1 / com; - this.A = this.k0; - this.E = D = F = 1; - } - - if (alp || gam) { - if (alp) { - gamma0 = Math.asin(Math.sin(alpha_c) / D); - if (!gam) { - gamma = alpha_c; - } - } else { - gamma0 = gamma; - alpha_c = Math.asin(D * Math.sin(gamma0)); - } - this.lam0 = lamc - Math.asin(0.5 * (F - 1 / F) * Math.tan(gamma0)) / this.B; - } else { - H = Math.pow(tsfnz(this.e, phi1, Math.sin(phi1)), this.B); - L = Math.pow(tsfnz(this.e, phi2, Math.sin(phi2)), this.B); - F = this.E / H; - p = (L - H) / (L + H); - J = this.E * this.E; - J = (J - L * H) / (J + L * H); - con = lam1 - lam2; - - if (con < -Math.pi) { - lam2 -=TWO_PI; - } else if (con > Math.pi) { - lam2 += TWO_PI; - } - - this.lam0 = adjust_lon(0.5 * (lam1 + lam2) - Math.atan(J * Math.tan(0.5 * this.B * (lam1 - lam2)) / p) / this.B); - gamma0 = Math.atan(2 * Math.sin(this.B * adjust_lon(lam1 - this.lam0)) / (F - 1 / F)); - gamma = alpha_c = Math.asin(D * Math.sin(gamma0)); - } - - console.log('gamma', gamma) - - this.singam = Math.sin(gamma0); - this.cosgam = Math.cos(gamma0); - this.sinrot = Math.sin(gamma); - this.cosrot = Math.cos(gamma); - - this.rB = 1 / this.B; - this.ArB = this.A * this.rB; - this.BrA = 1 / this.ArB; - AB = this.A * this.B; - - if (this.no_off) { - this.u_0 = 0; - } else { - this.u_0 = Math.abs(this.ArB * Math.atan(Math.sqrt(D * D - 1) / Math.cos(alpha_c))); - - if (this.lat0 < 0) { - this.u_0 = - this.u_0; - } - } - - F = 0.5 * gamma0; - this.v_pole_n = this.ArB * Math.log(Math.tan(FORTPI - F)); - this.v_pole_s = this.ArB * Math.log(Math.tan(FORTPI + F)); -} - - -/* Oblique Mercator forward equations--mapping lat,long to x,y - ----------------------------------------------------------*/ -export function forward(p) { - var coords = {}; - var S, T, U, V, W, temp, u, v; - p.x = p.x - this.lam0; - - if (Math.abs(Math.abs(p.y) - HALF_PI) > EPSLN) { - W = this.E / Math.pow(tsfnz(this.e, p.y, Math.sin(p.y)), this.B); - - temp = 1 / W; - S = 0.5 * (W - temp); - T = 0.5 * (W + temp); - V = Math.sin(this.B * p.x); - U = (S * this.singam - V * this.cosgam) / T; - - if (Math.abs(Math.abs(U) - 1.0) < EPSLN) { - throw new Error(); - } - - v = 0.5 * this.ArB * Math.log((1 - U)/(1 + U)); - temp = Math.cos(this.B * p.x); - - if (Math.abs(temp) < TOL) { - u = this.A * p.x; - } else { - u = this.ArB * Math.atan2((S * this.cosgam + V * this.singam), temp); - } - } else { - v = p.y > 0 ? this.v_pole_n : this.v_pole_s; - u = this.ArB * p.y; - } - - if (this.no_rot) { - coords.x = u; - coords.y = v; - } else { - u -= this.u_0; - coords.x = v * this.cosrot + u * this.sinrot; - coords.y = u * this.cosrot - v * this.sinrot; - } - - coords.x = (this.a * coords.x + this.x0); - coords.y = (this.a * coords.y + this.y0); - - return coords; -} - -export function inverse(p) { - var u, v, Qp, Sp, Tp, Vp, Up; - var coords = {}; - - p.x = (p.x - this.x0) * (1.0 / this.a); - p.y = (p.y - this.y0) * (1.0 / this.a); - - if (this.no_rot) { - v = p.y; - u = p.x; - } else { - v = p.x * this.cosrot - p.y * this.sinrot; - u = p.y * this.cosrot + p.x * this.sinrot + this.u_0; - } - - Qp = Math.exp(-this.BrA * v); - Sp = 0.5 * (Qp - 1 / Qp); - Tp = 0.5 * (Qp + 1 / Qp); - Vp = Math.sin(this.BrA * u); - Up = (Vp * this.cosgam + Sp * this.singam) / Tp; - - if (Math.abs(Math.abs(Up) - 1) < EPSLN) { - coords.x = 0; - coords.y = Up < 0 ? -HALF_PI : HALF_PI; - } else { - coords.y = this.E / Math.sqrt((1 + Up) / (1 - Up)); - coords.y = phi2z(this.e, Math.pow(coords.y, 1 / this.B)); - - if (coords.y === Infinity) { - throw new Error(); - } - - coords.x = -this.rB * Math.atan2((Sp * this.cosgam - Vp * this.singam), Math.cos(this.BrA * u)); - } - - coords.x += this.lam0; - - return coords; -} - -export var names = ["Hotine_Oblique_Mercator", "Hotine Oblique Mercator", "Hotine_Oblique_Mercator_Azimuth_Natural_Origin", "Hotine_Oblique_Mercator_Two_Point_Natural_Origin", "Hotine_Oblique_Mercator_Azimuth_Center", "Oblique_Mercator", "omerc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/ortho.js b/proj4js-master/lib/projections/ortho.js deleted file mode 100644 index ed9f32e2..00000000 --- a/proj4js-master/lib/projections/ortho.js +++ /dev/null @@ -1,91 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; -import asinz from '../common/asinz'; -import {EPSLN, HALF_PI} from '../constants/values'; - -export function init() { - //double temp; /* temporary variable */ - - /* Place parameters in static storage for common use - -------------------------------------------------*/ - this.sin_p14 = Math.sin(this.lat0); - this.cos_p14 = Math.cos(this.lat0); -} - -/* Orthographic forward equations--mapping lat,long to x,y - ---------------------------------------------------*/ -export function forward(p) { - var sinphi, cosphi; /* sin and cos value */ - var dlon; /* delta longitude value */ - var coslon; /* cos of longitude */ - var ksp; /* scale factor */ - var g, x, y; - var lon = p.x; - var lat = p.y; - /* Forward equations - -----------------*/ - dlon = adjust_lon(lon - this.long0); - - sinphi = Math.sin(lat); - cosphi = Math.cos(lat); - - coslon = Math.cos(dlon); - g = this.sin_p14 * sinphi + this.cos_p14 * cosphi * coslon; - ksp = 1; - if ((g > 0) || (Math.abs(g) <= EPSLN)) { - x = this.a * ksp * cosphi * Math.sin(dlon); - y = this.y0 + this.a * ksp * (this.cos_p14 * sinphi - this.sin_p14 * cosphi * coslon); - } - p.x = x; - p.y = y; - return p; -} - -export function inverse(p) { - var rh; /* height above ellipsoid */ - var z; /* angle */ - var sinz, cosz; /* sin of z and cos of z */ - var con; - var lon, lat; - /* Inverse equations - -----------------*/ - p.x -= this.x0; - p.y -= this.y0; - rh = Math.sqrt(p.x * p.x + p.y * p.y); - z = asinz(rh / this.a); - - sinz = Math.sin(z); - cosz = Math.cos(z); - - lon = this.long0; - if (Math.abs(rh) <= EPSLN) { - lat = this.lat0; - p.x = lon; - p.y = lat; - return p; - } - lat = asinz(cosz * this.sin_p14 + (p.y * sinz * this.cos_p14) / rh); - con = Math.abs(this.lat0) - HALF_PI; - if (Math.abs(con) <= EPSLN) { - if (this.lat0 >= 0) { - lon = adjust_lon(this.long0 + Math.atan2(p.x, - p.y)); - } - else { - lon = adjust_lon(this.long0 - Math.atan2(-p.x, p.y)); - } - p.x = lon; - p.y = lat; - return p; - } - lon = adjust_lon(this.long0 + Math.atan2((p.x * sinz), rh * this.cos_p14 * cosz - p.y * this.sin_p14 * sinz)); - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["ortho"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/poly.js b/proj4js-master/lib/projections/poly.js deleted file mode 100644 index be6f77bf..00000000 --- a/proj4js-master/lib/projections/poly.js +++ /dev/null @@ -1,135 +0,0 @@ -import e0fn from '../common/e0fn'; -import e1fn from '../common/e1fn'; -import e2fn from '../common/e2fn'; -import e3fn from '../common/e3fn'; -import adjust_lon from '../common/adjust_lon'; -import adjust_lat from '../common/adjust_lat'; -import mlfn from '../common/mlfn'; -import {EPSLN} from '../constants/values'; - -import gN from '../common/gN'; -var MAX_ITER = 20; - -export function init() { - /* Place parameters in static storage for common use - -------------------------------------------------*/ - this.temp = this.b / this.a; - this.es = 1 - Math.pow(this.temp, 2); // devait etre dans tmerc.js mais n y est pas donc je commente sinon retour de valeurs nulles - this.e = Math.sqrt(this.es); - this.e0 = e0fn(this.es); - this.e1 = e1fn(this.es); - this.e2 = e2fn(this.es); - this.e3 = e3fn(this.es); - this.ml0 = this.a * mlfn(this.e0, this.e1, this.e2, this.e3, this.lat0); //si que des zeros le calcul ne se fait pas -} - -/* Polyconic forward equations--mapping lat,long to x,y - ---------------------------------------------------*/ -export function forward(p) { - var lon = p.x; - var lat = p.y; - var x, y, el; - var dlon = adjust_lon(lon - this.long0); - el = dlon * Math.sin(lat); - if (this.sphere) { - if (Math.abs(lat) <= EPSLN) { - x = this.a * dlon; - y = -1 * this.a * this.lat0; - } - else { - x = this.a * Math.sin(el) / Math.tan(lat); - y = this.a * (adjust_lat(lat - this.lat0) + (1 - Math.cos(el)) / Math.tan(lat)); - } - } - else { - if (Math.abs(lat) <= EPSLN) { - x = this.a * dlon; - y = -1 * this.ml0; - } - else { - var nl = gN(this.a, this.e, Math.sin(lat)) / Math.tan(lat); - x = nl * Math.sin(el); - y = this.a * mlfn(this.e0, this.e1, this.e2, this.e3, lat) - this.ml0 + nl * (1 - Math.cos(el)); - } - - } - p.x = x + this.x0; - p.y = y + this.y0; - return p; -} - -/* Inverse equations - -----------------*/ -export function inverse(p) { - var lon, lat, x, y, i; - var al, bl; - var phi, dphi; - x = p.x - this.x0; - y = p.y - this.y0; - - if (this.sphere) { - if (Math.abs(y + this.a * this.lat0) <= EPSLN) { - lon = adjust_lon(x / this.a + this.long0); - lat = 0; - } - else { - al = this.lat0 + y / this.a; - bl = x * x / this.a / this.a + al * al; - phi = al; - var tanphi; - for (i = MAX_ITER; i; --i) { - tanphi = Math.tan(phi); - dphi = -1 * (al * (phi * tanphi + 1) - phi - 0.5 * (phi * phi + bl) * tanphi) / ((phi - al) / tanphi - 1); - phi += dphi; - if (Math.abs(dphi) <= EPSLN) { - lat = phi; - break; - } - } - lon = adjust_lon(this.long0 + (Math.asin(x * Math.tan(phi) / this.a)) / Math.sin(lat)); - } - } - else { - if (Math.abs(y + this.ml0) <= EPSLN) { - lat = 0; - lon = adjust_lon(this.long0 + x / this.a); - } - else { - - al = (this.ml0 + y) / this.a; - bl = x * x / this.a / this.a + al * al; - phi = al; - var cl, mln, mlnp, ma; - var con; - for (i = MAX_ITER; i; --i) { - con = this.e * Math.sin(phi); - cl = Math.sqrt(1 - con * con) * Math.tan(phi); - mln = this.a * mlfn(this.e0, this.e1, this.e2, this.e3, phi); - mlnp = this.e0 - 2 * this.e1 * Math.cos(2 * phi) + 4 * this.e2 * Math.cos(4 * phi) - 6 * this.e3 * Math.cos(6 * phi); - ma = mln / this.a; - dphi = (al * (cl * ma + 1) - ma - 0.5 * cl * (ma * ma + bl)) / (this.es * Math.sin(2 * phi) * (ma * ma + bl - 2 * al * ma) / (4 * cl) + (al - ma) * (cl * mlnp - 2 / Math.sin(2 * phi)) - mlnp); - phi -= dphi; - if (Math.abs(dphi) <= EPSLN) { - lat = phi; - break; - } - } - - //lat=phi4z(this.e,this.e0,this.e1,this.e2,this.e3,al,bl,0,0); - cl = Math.sqrt(1 - this.es * Math.pow(Math.sin(lat), 2)) * Math.tan(lat); - lon = adjust_lon(this.long0 + Math.asin(x * cl / this.a) / Math.sin(lat)); - } - } - - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["Polyconic", "poly"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/qsc.js b/proj4js-master/lib/projections/qsc.js deleted file mode 100644 index 2ce4bf6c..00000000 --- a/proj4js-master/lib/projections/qsc.js +++ /dev/null @@ -1,368 +0,0 @@ -// QSC projection rewritten from the original PROJ4 -// https://github.com/OSGeo/proj.4/blob/master/src/PJ_qsc.c - -import {EPSLN, TWO_PI, SPI, HALF_PI, FORTPI} from '../constants/values'; - -/* constants */ -var FACE_ENUM = { - FRONT: 1, - RIGHT: 2, - BACK: 3, - LEFT: 4, - TOP: 5, - BOTTOM: 6 -}; - -var AREA_ENUM = { - AREA_0: 1, - AREA_1: 2, - AREA_2: 3, - AREA_3: 4 -}; - -export function init() { - - this.x0 = this.x0 || 0; - this.y0 = this.y0 || 0; - this.lat0 = this.lat0 || 0; - this.long0 = this.long0 || 0; - this.lat_ts = this.lat_ts || 0; - this.title = this.title || "Quadrilateralized Spherical Cube"; - - /* Determine the cube face from the center of projection. */ - if (this.lat0 >= HALF_PI - FORTPI / 2.0) { - this.face = FACE_ENUM.TOP; - } else if (this.lat0 <= -(HALF_PI - FORTPI / 2.0)) { - this.face = FACE_ENUM.BOTTOM; - } else if (Math.abs(this.long0) <= FORTPI) { - this.face = FACE_ENUM.FRONT; - } else if (Math.abs(this.long0) <= HALF_PI + FORTPI) { - this.face = this.long0 > 0.0 ? FACE_ENUM.RIGHT : FACE_ENUM.LEFT; - } else { - this.face = FACE_ENUM.BACK; - } - - /* Fill in useful values for the ellipsoid <-> sphere shift - * described in [LK12]. */ - if (this.es !== 0) { - this.one_minus_f = 1 - (this.a - this.b) / this.a; - this.one_minus_f_squared = this.one_minus_f * this.one_minus_f; - } -} - -// QSC forward equations--mapping lat,long to x,y -// ----------------------------------------------------------------- -export function forward(p) { - var xy = {x: 0, y: 0}; - var lat, lon; - var theta, phi; - var t, mu; - /* nu; */ - var area = {value: 0}; - - // move lon according to projection's lon - p.x -= this.long0; - - /* Convert the geodetic latitude to a geocentric latitude. - * This corresponds to the shift from the ellipsoid to the sphere - * described in [LK12]. */ - if (this.es !== 0) {//if (P->es != 0) { - lat = Math.atan(this.one_minus_f_squared * Math.tan(p.y)); - } else { - lat = p.y; - } - - /* Convert the input lat, lon into theta, phi as used by QSC. - * This depends on the cube face and the area on it. - * For the top and bottom face, we can compute theta and phi - * directly from phi, lam. For the other faces, we must use - * unit sphere cartesian coordinates as an intermediate step. */ - lon = p.x; //lon = lp.lam; - if (this.face === FACE_ENUM.TOP) { - phi = HALF_PI - lat; - if (lon >= FORTPI && lon <= HALF_PI + FORTPI) { - area.value = AREA_ENUM.AREA_0; - theta = lon - HALF_PI; - } else if (lon > HALF_PI + FORTPI || lon <= -(HALF_PI + FORTPI)) { - area.value = AREA_ENUM.AREA_1; - theta = (lon > 0.0 ? lon - SPI : lon + SPI); - } else if (lon > -(HALF_PI + FORTPI) && lon <= -FORTPI) { - area.value = AREA_ENUM.AREA_2; - theta = lon + HALF_PI; - } else { - area.value = AREA_ENUM.AREA_3; - theta = lon; - } - } else if (this.face === FACE_ENUM.BOTTOM) { - phi = HALF_PI + lat; - if (lon >= FORTPI && lon <= HALF_PI + FORTPI) { - area.value = AREA_ENUM.AREA_0; - theta = -lon + HALF_PI; - } else if (lon < FORTPI && lon >= -FORTPI) { - area.value = AREA_ENUM.AREA_1; - theta = -lon; - } else if (lon < -FORTPI && lon >= -(HALF_PI + FORTPI)) { - area.value = AREA_ENUM.AREA_2; - theta = -lon - HALF_PI; - } else { - area.value = AREA_ENUM.AREA_3; - theta = (lon > 0.0 ? -lon + SPI : -lon - SPI); - } - } else { - var q, r, s; - var sinlat, coslat; - var sinlon, coslon; - - if (this.face === FACE_ENUM.RIGHT) { - lon = qsc_shift_lon_origin(lon, +HALF_PI); - } else if (this.face === FACE_ENUM.BACK) { - lon = qsc_shift_lon_origin(lon, +SPI); - } else if (this.face === FACE_ENUM.LEFT) { - lon = qsc_shift_lon_origin(lon, -HALF_PI); - } - sinlat = Math.sin(lat); - coslat = Math.cos(lat); - sinlon = Math.sin(lon); - coslon = Math.cos(lon); - q = coslat * coslon; - r = coslat * sinlon; - s = sinlat; - - if (this.face === FACE_ENUM.FRONT) { - phi = Math.acos(q); - theta = qsc_fwd_equat_face_theta(phi, s, r, area); - } else if (this.face === FACE_ENUM.RIGHT) { - phi = Math.acos(r); - theta = qsc_fwd_equat_face_theta(phi, s, -q, area); - } else if (this.face === FACE_ENUM.BACK) { - phi = Math.acos(-q); - theta = qsc_fwd_equat_face_theta(phi, s, -r, area); - } else if (this.face === FACE_ENUM.LEFT) { - phi = Math.acos(-r); - theta = qsc_fwd_equat_face_theta(phi, s, q, area); - } else { - /* Impossible */ - phi = theta = 0; - area.value = AREA_ENUM.AREA_0; - } - } - - /* Compute mu and nu for the area of definition. - * For mu, see Eq. (3-21) in [OL76], but note the typos: - * compare with Eq. (3-14). For nu, see Eq. (3-38). */ - mu = Math.atan((12 / SPI) * (theta + Math.acos(Math.sin(theta) * Math.cos(FORTPI)) - HALF_PI)); - t = Math.sqrt((1 - Math.cos(phi)) / (Math.cos(mu) * Math.cos(mu)) / (1 - Math.cos(Math.atan(1 / Math.cos(theta))))); - - /* Apply the result to the real area. */ - if (area.value === AREA_ENUM.AREA_1) { - mu += HALF_PI; - } else if (area.value === AREA_ENUM.AREA_2) { - mu += SPI; - } else if (area.value === AREA_ENUM.AREA_3) { - mu += 1.5 * SPI; - } - - /* Now compute x, y from mu and nu */ - xy.x = t * Math.cos(mu); - xy.y = t * Math.sin(mu); - xy.x = xy.x * this.a + this.x0; - xy.y = xy.y * this.a + this.y0; - - p.x = xy.x; - p.y = xy.y; - return p; -} - -// QSC inverse equations--mapping x,y to lat/long -// ----------------------------------------------------------------- -export function inverse(p) { - var lp = {lam: 0, phi: 0}; - var mu, nu, cosmu, tannu; - var tantheta, theta, cosphi, phi; - var t; - var area = {value: 0}; - - /* de-offset */ - p.x = (p.x - this.x0) / this.a; - p.y = (p.y - this.y0) / this.a; - - /* Convert the input x, y to the mu and nu angles as used by QSC. - * This depends on the area of the cube face. */ - nu = Math.atan(Math.sqrt(p.x * p.x + p.y * p.y)); - mu = Math.atan2(p.y, p.x); - if (p.x >= 0.0 && p.x >= Math.abs(p.y)) { - area.value = AREA_ENUM.AREA_0; - } else if (p.y >= 0.0 && p.y >= Math.abs(p.x)) { - area.value = AREA_ENUM.AREA_1; - mu -= HALF_PI; - } else if (p.x < 0.0 && -p.x >= Math.abs(p.y)) { - area.value = AREA_ENUM.AREA_2; - mu = (mu < 0.0 ? mu + SPI : mu - SPI); - } else { - area.value = AREA_ENUM.AREA_3; - mu += HALF_PI; - } - - /* Compute phi and theta for the area of definition. - * The inverse projection is not described in the original paper, but some - * good hints can be found here (as of 2011-12-14): - * http://fits.gsfc.nasa.gov/fitsbits/saf.93/saf.9302 - * (search for "Message-Id: <9302181759.AA25477 at fits.cv.nrao.edu>") */ - t = (SPI / 12) * Math.tan(mu); - tantheta = Math.sin(t) / (Math.cos(t) - (1 / Math.sqrt(2))); - theta = Math.atan(tantheta); - cosmu = Math.cos(mu); - tannu = Math.tan(nu); - cosphi = 1 - cosmu * cosmu * tannu * tannu * (1 - Math.cos(Math.atan(1 / Math.cos(theta)))); - if (cosphi < -1) { - cosphi = -1; - } else if (cosphi > +1) { - cosphi = +1; - } - - /* Apply the result to the real area on the cube face. - * For the top and bottom face, we can compute phi and lam directly. - * For the other faces, we must use unit sphere cartesian coordinates - * as an intermediate step. */ - if (this.face === FACE_ENUM.TOP) { - phi = Math.acos(cosphi); - lp.phi = HALF_PI - phi; - if (area.value === AREA_ENUM.AREA_0) { - lp.lam = theta + HALF_PI; - } else if (area.value === AREA_ENUM.AREA_1) { - lp.lam = (theta < 0.0 ? theta + SPI : theta - SPI); - } else if (area.value === AREA_ENUM.AREA_2) { - lp.lam = theta - HALF_PI; - } else /* area.value == AREA_ENUM.AREA_3 */ { - lp.lam = theta; - } - } else if (this.face === FACE_ENUM.BOTTOM) { - phi = Math.acos(cosphi); - lp.phi = phi - HALF_PI; - if (area.value === AREA_ENUM.AREA_0) { - lp.lam = -theta + HALF_PI; - } else if (area.value === AREA_ENUM.AREA_1) { - lp.lam = -theta; - } else if (area.value === AREA_ENUM.AREA_2) { - lp.lam = -theta - HALF_PI; - } else /* area.value == AREA_ENUM.AREA_3 */ { - lp.lam = (theta < 0.0 ? -theta - SPI : -theta + SPI); - } - } else { - /* Compute phi and lam via cartesian unit sphere coordinates. */ - var q, r, s; - q = cosphi; - t = q * q; - if (t >= 1) { - s = 0; - } else { - s = Math.sqrt(1 - t) * Math.sin(theta); - } - t += s * s; - if (t >= 1) { - r = 0; - } else { - r = Math.sqrt(1 - t); - } - /* Rotate q,r,s into the correct area. */ - if (area.value === AREA_ENUM.AREA_1) { - t = r; - r = -s; - s = t; - } else if (area.value === AREA_ENUM.AREA_2) { - r = -r; - s = -s; - } else if (area.value === AREA_ENUM.AREA_3) { - t = r; - r = s; - s = -t; - } - /* Rotate q,r,s into the correct cube face. */ - if (this.face === FACE_ENUM.RIGHT) { - t = q; - q = -r; - r = t; - } else if (this.face === FACE_ENUM.BACK) { - q = -q; - r = -r; - } else if (this.face === FACE_ENUM.LEFT) { - t = q; - q = r; - r = -t; - } - /* Now compute phi and lam from the unit sphere coordinates. */ - lp.phi = Math.acos(-s) - HALF_PI; - lp.lam = Math.atan2(r, q); - if (this.face === FACE_ENUM.RIGHT) { - lp.lam = qsc_shift_lon_origin(lp.lam, -HALF_PI); - } else if (this.face === FACE_ENUM.BACK) { - lp.lam = qsc_shift_lon_origin(lp.lam, -SPI); - } else if (this.face === FACE_ENUM.LEFT) { - lp.lam = qsc_shift_lon_origin(lp.lam, +HALF_PI); - } - } - - /* Apply the shift from the sphere to the ellipsoid as described - * in [LK12]. */ - if (this.es !== 0) { - var invert_sign; - var tanphi, xa; - invert_sign = (lp.phi < 0 ? 1 : 0); - tanphi = Math.tan(lp.phi); - xa = this.b / Math.sqrt(tanphi * tanphi + this.one_minus_f_squared); - lp.phi = Math.atan(Math.sqrt(this.a * this.a - xa * xa) / (this.one_minus_f * xa)); - if (invert_sign) { - lp.phi = -lp.phi; - } - } - - lp.lam += this.long0; - p.x = lp.lam; - p.y = lp.phi; - return p; -} - -/* Helper function for forward projection: compute the theta angle - * and determine the area number. */ -function qsc_fwd_equat_face_theta(phi, y, x, area) { - var theta; - if (phi < EPSLN) { - area.value = AREA_ENUM.AREA_0; - theta = 0.0; - } else { - theta = Math.atan2(y, x); - if (Math.abs(theta) <= FORTPI) { - area.value = AREA_ENUM.AREA_0; - } else if (theta > FORTPI && theta <= HALF_PI + FORTPI) { - area.value = AREA_ENUM.AREA_1; - theta -= HALF_PI; - } else if (theta > HALF_PI + FORTPI || theta <= -(HALF_PI + FORTPI)) { - area.value = AREA_ENUM.AREA_2; - theta = (theta >= 0.0 ? theta - SPI : theta + SPI); - } else { - area.value = AREA_ENUM.AREA_3; - theta += HALF_PI; - } - } - return theta; -} - -/* Helper function: shift the longitude. */ -function qsc_shift_lon_origin(lon, offset) { - var slon = lon + offset; - if (slon < -SPI) { - slon += TWO_PI; - } else if (slon > +SPI) { - slon -= TWO_PI; - } - return slon; -} - -export var names = ["Quadrilateralized Spherical Cube", "Quadrilateralized_Spherical_Cube", "qsc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; - diff --git a/proj4js-master/lib/projections/robin.js b/proj4js-master/lib/projections/robin.js deleted file mode 100644 index f335bd7a..00000000 --- a/proj4js-master/lib/projections/robin.js +++ /dev/null @@ -1,161 +0,0 @@ -// Robinson projection -// Based on https://github.com/OSGeo/proj.4/blob/master/src/PJ_robin.c -// Polynomial coeficients from http://article.gmane.org/gmane.comp.gis.proj-4.devel/6039 - -import {HALF_PI, D2R, R2D, EPSLN} from '../constants/values'; -import adjust_lon from '../common/adjust_lon'; - -var COEFS_X = [ - [1.0000, 2.2199e-17, -7.15515e-05, 3.1103e-06], - [0.9986, -0.000482243, -2.4897e-05, -1.3309e-06], - [0.9954, -0.00083103, -4.48605e-05, -9.86701e-07], - [0.9900, -0.00135364, -5.9661e-05, 3.6777e-06], - [0.9822, -0.00167442, -4.49547e-06, -5.72411e-06], - [0.9730, -0.00214868, -9.03571e-05, 1.8736e-08], - [0.9600, -0.00305085, -9.00761e-05, 1.64917e-06], - [0.9427, -0.00382792, -6.53386e-05, -2.6154e-06], - [0.9216, -0.00467746, -0.00010457, 4.81243e-06], - [0.8962, -0.00536223, -3.23831e-05, -5.43432e-06], - [0.8679, -0.00609363, -0.000113898, 3.32484e-06], - [0.8350, -0.00698325, -6.40253e-05, 9.34959e-07], - [0.7986, -0.00755338, -5.00009e-05, 9.35324e-07], - [0.7597, -0.00798324, -3.5971e-05, -2.27626e-06], - [0.7186, -0.00851367, -7.01149e-05, -8.6303e-06], - [0.6732, -0.00986209, -0.000199569, 1.91974e-05], - [0.6213, -0.010418, 8.83923e-05, 6.24051e-06], - [0.5722, -0.00906601, 0.000182, 6.24051e-06], - [0.5322, -0.00677797, 0.000275608, 6.24051e-06] -]; - -var COEFS_Y = [ - [-5.20417e-18, 0.0124, 1.21431e-18, -8.45284e-11], - [0.0620, 0.0124, -1.26793e-09, 4.22642e-10], - [0.1240, 0.0124, 5.07171e-09, -1.60604e-09], - [0.1860, 0.0123999, -1.90189e-08, 6.00152e-09], - [0.2480, 0.0124002, 7.10039e-08, -2.24e-08], - [0.3100, 0.0123992, -2.64997e-07, 8.35986e-08], - [0.3720, 0.0124029, 9.88983e-07, -3.11994e-07], - [0.4340, 0.0123893, -3.69093e-06, -4.35621e-07], - [0.4958, 0.0123198, -1.02252e-05, -3.45523e-07], - [0.5571, 0.0121916, -1.54081e-05, -5.82288e-07], - [0.6176, 0.0119938, -2.41424e-05, -5.25327e-07], - [0.6769, 0.011713, -3.20223e-05, -5.16405e-07], - [0.7346, 0.0113541, -3.97684e-05, -6.09052e-07], - [0.7903, 0.0109107, -4.89042e-05, -1.04739e-06], - [0.8435, 0.0103431, -6.4615e-05, -1.40374e-09], - [0.8936, 0.00969686, -6.4636e-05, -8.547e-06], - [0.9394, 0.00840947, -0.000192841, -4.2106e-06], - [0.9761, 0.00616527, -0.000256, -4.2106e-06], - [1.0000, 0.00328947, -0.000319159, -4.2106e-06] -]; - -var FXC = 0.8487; -var FYC = 1.3523; -var C1 = R2D/5; // rad to 5-degree interval -var RC1 = 1/C1; -var NODES = 18; - -var poly3_val = function(coefs, x) { - return coefs[0] + x * (coefs[1] + x * (coefs[2] + x * coefs[3])); -}; - -var poly3_der = function(coefs, x) { - return coefs[1] + x * (2 * coefs[2] + x * 3 * coefs[3]); -}; - -function newton_rapshon(f_df, start, max_err, iters) { - var x = start; - for (; iters; --iters) { - var upd = f_df(x); - x -= upd; - if (Math.abs(upd) < max_err) { - break; - } - } - return x; -} - -export function init() { - this.x0 = this.x0 || 0; - this.y0 = this.y0 || 0; - this.long0 = this.long0 || 0; - this.es = 0; - this.title = this.title || "Robinson"; -} - -export function forward(ll) { - var lon = adjust_lon(ll.x - this.long0); - - var dphi = Math.abs(ll.y); - var i = Math.floor(dphi * C1); - if (i < 0) { - i = 0; - } else if (i >= NODES) { - i = NODES - 1; - } - dphi = R2D * (dphi - RC1 * i); - var xy = { - x: poly3_val(COEFS_X[i], dphi) * lon, - y: poly3_val(COEFS_Y[i], dphi) - }; - if (ll.y < 0) { - xy.y = -xy.y; - } - - xy.x = xy.x * this.a * FXC + this.x0; - xy.y = xy.y * this.a * FYC + this.y0; - return xy; -} - -export function inverse(xy) { - var ll = { - x: (xy.x - this.x0) / (this.a * FXC), - y: Math.abs(xy.y - this.y0) / (this.a * FYC) - }; - - if (ll.y >= 1) { // pathologic case - ll.x /= COEFS_X[NODES][0]; - ll.y = xy.y < 0 ? -HALF_PI : HALF_PI; - } else { - // find table interval - var i = Math.floor(ll.y * NODES); - if (i < 0) { - i = 0; - } else if (i >= NODES) { - i = NODES - 1; - } - for (;;) { - if (COEFS_Y[i][0] > ll.y) { - --i; - } else if (COEFS_Y[i+1][0] <= ll.y) { - ++i; - } else { - break; - } - } - // linear interpolation in 5 degree interval - var coefs = COEFS_Y[i]; - var t = 5 * (ll.y - coefs[0]) / (COEFS_Y[i+1][0] - coefs[0]); - // find t so that poly3_val(coefs, t) = ll.y - t = newton_rapshon(function(x) { - return (poly3_val(coefs, x) - ll.y) / poly3_der(coefs, x); - }, t, EPSLN, 100); - - ll.x /= poly3_val(COEFS_X[i], t); - ll.y = (5 * i + t) * D2R; - if (xy.y < 0) { - ll.y = -ll.y; - } - } - - ll.x = adjust_lon(ll.x + this.long0); - return ll; -} - -export var names = ["Robinson", "robin"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/sinu.js b/proj4js-master/lib/projections/sinu.js deleted file mode 100644 index 7ff57637..00000000 --- a/proj4js-master/lib/projections/sinu.js +++ /dev/null @@ -1,115 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; -import adjust_lat from '../common/adjust_lat'; -import pj_enfn from '../common/pj_enfn'; -var MAX_ITER = 20; -import pj_mlfn from '../common/pj_mlfn'; -import pj_inv_mlfn from '../common/pj_inv_mlfn'; -import {EPSLN, HALF_PI} from '../constants/values'; - -import asinz from '../common/asinz'; - - -export function init() { - /* Place parameters in static storage for common use - -------------------------------------------------*/ - - - if (!this.sphere) { - this.en = pj_enfn(this.es); - } - else { - this.n = 1; - this.m = 0; - this.es = 0; - this.C_y = Math.sqrt((this.m + 1) / this.n); - this.C_x = this.C_y / (this.m + 1); - } - -} - -/* Sinusoidal forward equations--mapping lat,long to x,y - -----------------------------------------------------*/ -export function forward(p) { - var x, y; - var lon = p.x; - var lat = p.y; - /* Forward equations - -----------------*/ - lon = adjust_lon(lon - this.long0); - - if (this.sphere) { - if (!this.m) { - lat = this.n !== 1 ? Math.asin(this.n * Math.sin(lat)) : lat; - } - else { - var k = this.n * Math.sin(lat); - for (var i = MAX_ITER; i; --i) { - var V = (this.m * lat + Math.sin(lat) - k) / (this.m + Math.cos(lat)); - lat -= V; - if (Math.abs(V) < EPSLN) { - break; - } - } - } - x = this.a * this.C_x * lon * (this.m + Math.cos(lat)); - y = this.a * this.C_y * lat; - - } - else { - - var s = Math.sin(lat); - var c = Math.cos(lat); - y = this.a * pj_mlfn(lat, s, c, this.en); - x = this.a * lon * c / Math.sqrt(1 - this.es * s * s); - } - - p.x = x; - p.y = y; - return p; -} - -export function inverse(p) { - var lat, temp, lon, s; - - p.x -= this.x0; - lon = p.x / this.a; - p.y -= this.y0; - lat = p.y / this.a; - - if (this.sphere) { - lat /= this.C_y; - lon = lon / (this.C_x * (this.m + Math.cos(lat))); - if (this.m) { - lat = asinz((this.m * lat + Math.sin(lat)) / this.n); - } - else if (this.n !== 1) { - lat = asinz(Math.sin(lat) / this.n); - } - lon = adjust_lon(lon + this.long0); - lat = adjust_lat(lat); - } - else { - lat = pj_inv_mlfn(p.y / this.a, this.es, this.en); - s = Math.abs(lat); - if (s < HALF_PI) { - s = Math.sin(lat); - temp = this.long0 + p.x * Math.sqrt(1 - this.es * s * s) / (this.a * Math.cos(lat)); - //temp = this.long0 + p.x / (this.a * Math.cos(lat)); - lon = adjust_lon(temp); - } - else if ((s - EPSLN) < HALF_PI) { - lon = this.long0; - } - } - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["Sinusoidal", "sinu"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/somerc.js b/proj4js-master/lib/projections/somerc.js deleted file mode 100644 index 18cdccb6..00000000 --- a/proj4js-master/lib/projections/somerc.js +++ /dev/null @@ -1,86 +0,0 @@ -/* - references: - Formules et constantes pour le Calcul pour la - projection cylindrique conforme à axe oblique et pour la transformation entre - des systèmes de référence. - http://www.swisstopo.admin.ch/internet/swisstopo/fr/home/topics/survey/sys/refsys/switzerland.parsysrelated1.31216.downloadList.77004.DownloadFile.tmp/swissprojectionfr.pdf - */ - -export function init() { - var phy0 = this.lat0; - this.lambda0 = this.long0; - var sinPhy0 = Math.sin(phy0); - var semiMajorAxis = this.a; - var invF = this.rf; - var flattening = 1 / invF; - var e2 = 2 * flattening - Math.pow(flattening, 2); - var e = this.e = Math.sqrt(e2); - this.R = this.k0 * semiMajorAxis * Math.sqrt(1 - e2) / (1 - e2 * Math.pow(sinPhy0, 2)); - this.alpha = Math.sqrt(1 + e2 / (1 - e2) * Math.pow(Math.cos(phy0), 4)); - this.b0 = Math.asin(sinPhy0 / this.alpha); - var k1 = Math.log(Math.tan(Math.PI / 4 + this.b0 / 2)); - var k2 = Math.log(Math.tan(Math.PI / 4 + phy0 / 2)); - var k3 = Math.log((1 + e * sinPhy0) / (1 - e * sinPhy0)); - this.K = k1 - this.alpha * k2 + this.alpha * e / 2 * k3; -} - -export function forward(p) { - var Sa1 = Math.log(Math.tan(Math.PI / 4 - p.y / 2)); - var Sa2 = this.e / 2 * Math.log((1 + this.e * Math.sin(p.y)) / (1 - this.e * Math.sin(p.y))); - var S = -this.alpha * (Sa1 + Sa2) + this.K; - - // spheric latitude - var b = 2 * (Math.atan(Math.exp(S)) - Math.PI / 4); - - // spheric longitude - var I = this.alpha * (p.x - this.lambda0); - - // psoeudo equatorial rotation - var rotI = Math.atan(Math.sin(I) / (Math.sin(this.b0) * Math.tan(b) + Math.cos(this.b0) * Math.cos(I))); - - var rotB = Math.asin(Math.cos(this.b0) * Math.sin(b) - Math.sin(this.b0) * Math.cos(b) * Math.cos(I)); - - p.y = this.R / 2 * Math.log((1 + Math.sin(rotB)) / (1 - Math.sin(rotB))) + this.y0; - p.x = this.R * rotI + this.x0; - return p; -} - -export function inverse(p) { - var Y = p.x - this.x0; - var X = p.y - this.y0; - - var rotI = Y / this.R; - var rotB = 2 * (Math.atan(Math.exp(X / this.R)) - Math.PI / 4); - - var b = Math.asin(Math.cos(this.b0) * Math.sin(rotB) + Math.sin(this.b0) * Math.cos(rotB) * Math.cos(rotI)); - var I = Math.atan(Math.sin(rotI) / (Math.cos(this.b0) * Math.cos(rotI) - Math.sin(this.b0) * Math.tan(rotB))); - - var lambda = this.lambda0 + I / this.alpha; - - var S = 0; - var phy = b; - var prevPhy = -1000; - var iteration = 0; - while (Math.abs(phy - prevPhy) > 0.0000001) { - if (++iteration > 20) { - //...reportError("omercFwdInfinity"); - return; - } - //S = Math.log(Math.tan(Math.PI / 4 + phy / 2)); - S = 1 / this.alpha * (Math.log(Math.tan(Math.PI / 4 + b / 2)) - this.K) + this.e * Math.log(Math.tan(Math.PI / 4 + Math.asin(this.e * Math.sin(phy)) / 2)); - prevPhy = phy; - phy = 2 * Math.atan(Math.exp(S)) - Math.PI / 2; - } - - p.x = lambda; - p.y = phy; - return p; -} - -export var names = ["somerc"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/stere.js b/proj4js-master/lib/projections/stere.js deleted file mode 100644 index 2118f9a1..00000000 --- a/proj4js-master/lib/projections/stere.js +++ /dev/null @@ -1,188 +0,0 @@ -import {EPSLN, HALF_PI} from '../constants/values'; - -import sign from '../common/sign'; -import msfnz from '../common/msfnz'; -import tsfnz from '../common/tsfnz'; -import phi2z from '../common/phi2z'; -import adjust_lon from '../common/adjust_lon'; - -export function ssfn_(phit, sinphi, eccen) { - sinphi *= eccen; - return (Math.tan(0.5 * (HALF_PI + phit)) * Math.pow((1 - sinphi) / (1 + sinphi), 0.5 * eccen)); -} - -export function init() { - - // setting default parameters - this.x0 = this.x0 || 0; - this.y0 = this.y0 || 0; - this.lat0 = this.lat0 || 0; - this.long0 = this.long0 || 0; - - console.log('BEGIN!!!!!!!!', this.k0) - - this.coslat0 = Math.cos(this.lat0); - this.sinlat0 = Math.sin(this.lat0); - if (this.sphere) { - if (this.k0 === 1 && !isNaN(this.lat_ts) && Math.abs(this.coslat0) <= EPSLN) { - console.log('BEGIN CASE A!') - this.k0 = 0.5 * (1 + sign(this.lat0) * Math.sin(this.lat_ts)); - } - } - else { - if (Math.abs(this.coslat0) <= EPSLN) { - if (this.lat0 > 0) { - //North pole - //trace('stere:north pole'); - this.con = 1; - } - else { - //South pole - //trace('stere:south pole'); - this.con = -1; - } - } - this.cons = Math.sqrt(Math.pow(1 + this.e, 1 + this.e) * Math.pow(1 - this.e, 1 - this.e)); - if (this.k0 === 1 && !isNaN(this.lat_ts) && Math.abs(this.coslat0) <= EPSLN && Math.abs(Math.cos(this.lat_ts)) > EPSLN) { - // When k0 is 1 (default value) and lat_ts is a vaild number and lat0 is at a pole and lat_ts is not at a pole - // Recalculate k0 using formula 21-35 from p161 of Snyder, 1987 - console.log('BEGIN CASE B!') - this.k0 = 0.5 * this.cons * msfnz(this.e, Math.sin(this.lat_ts), Math.cos(this.lat_ts)) / tsfnz(this.e, this.con * this.lat_ts, this.con * Math.sin(this.lat_ts)); - } - this.ms1 = msfnz(this.e, this.sinlat0, this.coslat0); - this.X0 = 2 * Math.atan(this.ssfn_(this.lat0, this.sinlat0, this.e)) - HALF_PI; - this.cosX0 = Math.cos(this.X0); - this.sinX0 = Math.sin(this.X0); - } - console.log('HERHEHRHERHEHRHEHR A 2', this.k0); -} - -// Stereographic forward equations--mapping lat,long to x,y -export function forward(p) { - var lon = p.x; - var lat = p.y; - var sinlat = Math.sin(lat); - var coslat = Math.cos(lat); - var A, X, sinX, cosX, ts, rh; - var dlon = adjust_lon(lon - this.long0); - - if (Math.abs(Math.abs(lon - this.long0) - Math.PI) <= EPSLN && Math.abs(lat + this.lat0) <= EPSLN) { - //case of the origine point - //trace('stere:this is the origin point'); - p.x = NaN; - p.y = NaN; - return p; - } - if (this.sphere) { - //trace('stere:sphere case'); - A = 2 * this.k0 / (1 + this.sinlat0 * sinlat + this.coslat0 * coslat * Math.cos(dlon)); - p.x = this.a * A * coslat * Math.sin(dlon) + this.x0; - p.y = this.a * A * (this.coslat0 * sinlat - this.sinlat0 * coslat * Math.cos(dlon)) + this.y0; - return p; - } - else { - X = 2 * Math.atan(this.ssfn_(lat, sinlat, this.e)) - HALF_PI; - cosX = Math.cos(X); - sinX = Math.sin(X); - if (Math.abs(this.coslat0) <= EPSLN) { - ts = tsfnz(this.e, lat * this.con, this.con * sinlat); - rh = 2 * this.a * this.k0 * ts / this.cons; - p.x = this.x0 + rh * Math.sin(lon - this.long0); - p.y = this.y0 - this.con * rh * Math.cos(lon - this.long0); - //trace(p.toString()); - return p; - } - else if (Math.abs(this.sinlat0) < EPSLN) { - //Eq - //trace('stere:equateur'); - A = 2 * this.a * this.k0 / (1 + cosX * Math.cos(dlon)); - p.y = A * sinX; - } - else { - //other case - //trace('stere:normal case'); - A = 2 * this.a * this.k0 * this.ms1 / (this.cosX0 * (1 + this.sinX0 * sinX + this.cosX0 * cosX * Math.cos(dlon))); - p.y = A * (this.cosX0 * sinX - this.sinX0 * cosX * Math.cos(dlon)) + this.y0; - } - p.x = A * cosX * Math.sin(dlon) + this.x0; - } - //trace(p.toString()); - return p; -} - -//* Stereographic inverse equations--mapping x,y to lat/long -export function inverse(p) { - p.x -= this.x0; - p.y -= this.y0; - var lon, lat, ts, ce, Chi; - var rh = Math.sqrt(p.x * p.x + p.y * p.y); - if (this.sphere) { - var c = 2 * Math.atan(rh / (2 * this.a * this.k0)); - lon = this.long0; - lat = this.lat0; - if (rh <= EPSLN) { - p.x = lon; - p.y = lat; - return p; - } - lat = Math.asin(Math.cos(c) * this.sinlat0 + p.y * Math.sin(c) * this.coslat0 / rh); - if (Math.abs(this.coslat0) < EPSLN) { - if (this.lat0 > 0) { - lon = adjust_lon(this.long0 + Math.atan2(p.x, - 1 * p.y)); - } - else { - lon = adjust_lon(this.long0 + Math.atan2(p.x, p.y)); - } - } - else { - lon = adjust_lon(this.long0 + Math.atan2(p.x * Math.sin(c), rh * this.coslat0 * Math.cos(c) - p.y * this.sinlat0 * Math.sin(c))); - } - p.x = lon; - p.y = lat; - return p; - } - else { - if (Math.abs(this.coslat0) <= EPSLN) { - if (rh <= EPSLN) { - lat = this.lat0; - lon = this.long0; - p.x = lon; - p.y = lat; - //trace(p.toString()); - return p; - } - p.x *= this.con; - p.y *= this.con; - ts = rh * this.cons / (2 * this.a * this.k0); - lat = this.con * phi2z(this.e, ts); - lon = this.con * adjust_lon(this.con * this.long0 + Math.atan2(p.x, - 1 * p.y)); - } - else { - ce = 2 * Math.atan(rh * this.cosX0 / (2 * this.a * this.k0 * this.ms1)); - lon = this.long0; - if (rh <= EPSLN) { - Chi = this.X0; - } - else { - Chi = Math.asin(Math.cos(ce) * this.sinX0 + p.y * Math.sin(ce) * this.cosX0 / rh); - lon = adjust_lon(this.long0 + Math.atan2(p.x * Math.sin(ce), rh * this.cosX0 * Math.cos(ce) - p.y * this.sinX0 * Math.sin(ce))); - } - lat = -1 * phi2z(this.e, Math.tan(0.5 * (HALF_PI + Chi))); - } - } - p.x = lon; - p.y = lat; - - //trace(p.toString()); - return p; - -} - -export var names = ["stere", "Stereographic_South_Pole", "Polar Stereographic (variant B)", "Polar_Stereographic"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names, - ssfn_: ssfn_ -}; diff --git a/proj4js-master/lib/projections/sterea.js b/proj4js-master/lib/projections/sterea.js deleted file mode 100644 index a90f43c9..00000000 --- a/proj4js-master/lib/projections/sterea.js +++ /dev/null @@ -1,65 +0,0 @@ -import gauss from './gauss'; -import adjust_lon from '../common/adjust_lon'; -import hypot from '../common/hypot'; - -export function init() { - gauss.init.apply(this); - if (!this.rc) { - return; - } - this.sinc0 = Math.sin(this.phic0); - this.cosc0 = Math.cos(this.phic0); - this.R2 = 2 * this.rc; - if (!this.title) { - this.title = "Oblique Stereographic Alternative"; - } -} - -export function forward(p) { - var sinc, cosc, cosl, k; - p.x = adjust_lon(p.x - this.long0); - gauss.forward.apply(this, [p]); - sinc = Math.sin(p.y); - cosc = Math.cos(p.y); - cosl = Math.cos(p.x); - k = this.k0 * this.R2 / (1 + this.sinc0 * sinc + this.cosc0 * cosc * cosl); - p.x = k * cosc * Math.sin(p.x); - p.y = k * (this.cosc0 * sinc - this.sinc0 * cosc * cosl); - p.x = this.a * p.x + this.x0; - p.y = this.a * p.y + this.y0; - return p; -} - -export function inverse(p) { - var sinc, cosc, lon, lat, rho; - p.x = (p.x - this.x0) / this.a; - p.y = (p.y - this.y0) / this.a; - - p.x /= this.k0; - p.y /= this.k0; - if ((rho = hypot(p.x, p.y))) { - var c = 2 * Math.atan2(rho, this.R2); - sinc = Math.sin(c); - cosc = Math.cos(c); - lat = Math.asin(cosc * this.sinc0 + p.y * sinc * this.cosc0 / rho); - lon = Math.atan2(p.x * sinc, rho * this.cosc0 * cosc - p.y * this.sinc0 * sinc); - } - else { - lat = this.phic0; - lon = 0; - } - - p.x = lon; - p.y = lat; - gauss.inverse.apply(this, [p]); - p.x = adjust_lon(p.x + this.long0); - return p; -} - -export var names = ["Stereographic_North_Pole", "Oblique_Stereographic", "sterea","Oblique Stereographic Alternative","Double_Stereographic"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/tmerc.js b/proj4js-master/lib/projections/tmerc.js deleted file mode 100644 index 8a778357..00000000 --- a/proj4js-master/lib/projections/tmerc.js +++ /dev/null @@ -1,174 +0,0 @@ -// Heavily based on this tmerc projection implementation -// https://github.com/mbloch/mapshaper-proj/blob/master/src/projections/tmerc.js - -import pj_enfn from '../common/pj_enfn'; -import pj_mlfn from '../common/pj_mlfn'; -import pj_inv_mlfn from '../common/pj_inv_mlfn'; -import adjust_lon from '../common/adjust_lon'; - -import {EPSLN, HALF_PI} from '../constants/values'; -import sign from '../common/sign'; - -export function init() { - this.x0 = this.x0 !== undefined ? this.x0 : 0; - this.y0 = this.y0 !== undefined ? this.y0 : 0; - this.long0 = this.long0 !== undefined ? this.long0 : 0; - this.lat0 = this.lat0 !== undefined ? this.lat0 : 0; - - if (this.es) { - this.en = pj_enfn(this.es); - this.ml0 = pj_mlfn(this.lat0, Math.sin(this.lat0), Math.cos(this.lat0), this.en); - } -} - -/** - Transverse Mercator Forward - long/lat to x/y - long/lat in radians - */ -export function forward(p) { - var lon = p.x; - var lat = p.y; - - var delta_lon = adjust_lon(lon - this.long0); - var con; - var x, y; - var sin_phi = Math.sin(lat); - var cos_phi = Math.cos(lat); - - if (!this.es) { - var b = cos_phi * Math.sin(delta_lon); - - if ((Math.abs(Math.abs(b) - 1)) < EPSLN) { - return (93); - } - else { - x = 0.5 * this.a * this.k0 * Math.log((1 + b) / (1 - b)) + this.x0; - y = cos_phi * Math.cos(delta_lon) / Math.sqrt(1 - Math.pow(b, 2)); - b = Math.abs(y); - - if (b >= 1) { - if ((b - 1) > EPSLN) { - return (93); - } - else { - y = 0; - } - } - else { - y = Math.acos(y); - } - - if (lat < 0) { - y = -y; - } - - y = this.a * this.k0 * (y - this.lat0) + this.y0; - } - } - else { - console.log('ELSE', this.en, this.a, this.x0, this.k0, this.ep2, this.es, this.ml0, this.y0); - var al = cos_phi * delta_lon; - var als = Math.pow(al, 2); - var c = this.ep2 * Math.pow(cos_phi, 2); - var cs = Math.pow(c, 2); - var tq = Math.abs(cos_phi) > EPSLN ? Math.tan(lat) : 0; - var t = Math.pow(tq, 2); - var ts = Math.pow(t, 2); - con = 1 - this.es * Math.pow(sin_phi, 2); - al = al / Math.sqrt(con); - var ml = pj_mlfn(lat, sin_phi, cos_phi, this.en); - - x = this.a * (this.k0 * al * (1 + - als / 6 * (1 - t + c + - als / 20 * (5 - 18 * t + ts + 14 * c - 58 * t * c + - als / 42 * (61 + 179 * ts - ts * t - 479 * t))))) + - this.x0; - - y = this.a * (this.k0 * (ml - this.ml0 + - sin_phi * delta_lon * al / 2 * (1 + - als / 12 * (5 - t + 9 * c + 4 * cs + - als / 30 * (61 + ts - 58 * t + 270 * c - 330 * t * c + - als / 56 * (1385 + 543 * ts - ts * t - 3111 * t)))))) + - this.y0; - } - - p.x = x; - p.y = y; - - return p; -} - -/** - Transverse Mercator Inverse - x/y to long/lat - */ -export function inverse(p) { - var con, phi; - var lat, lon; - var x = (p.x - this.x0) * (1 / this.a); - var y = (p.y - this.y0) * (1 / this.a); - - if (!this.es) { - var f = Math.exp(x / this.k0); - var g = 0.5 * (f - 1 / f); - var temp = this.lat0 + y / this.k0; - var h = Math.cos(temp); - con = Math.sqrt((1 - Math.pow(h, 2)) / (1 + Math.pow(g, 2))); - lat = Math.asin(con); - - if (y < 0) { - lat = -lat; - } - - if ((g === 0) && (h === 0)) { - lon = 0; - } - else { - lon = adjust_lon(Math.atan2(g, h) + this.long0); - } - } - else { // ellipsoidal form - con = this.ml0 + y / this.k0; - phi = pj_inv_mlfn(con, this.es, this.en); - - if (Math.abs(phi) < HALF_PI) { - var sin_phi = Math.sin(phi); - var cos_phi = Math.cos(phi); - var tan_phi = Math.abs(cos_phi) > EPSLN ? Math.tan(phi) : 0; - var c = this.ep2 * Math.pow(cos_phi, 2); - var cs = Math.pow(c, 2); - var t = Math.pow(tan_phi, 2); - var ts = Math.pow(t, 2); - con = 1 - this.es * Math.pow(sin_phi, 2); - var d = x * Math.sqrt(con) / this.k0; - var ds = Math.pow(d, 2); - con = con * tan_phi; - - lat = phi - (con * ds / (1 - this.es)) * 0.5 * (1 - - ds / 12 * (5 + 3 * t - 9 * c * t + c - 4 * cs - - ds / 30 * (61 + 90 * t - 252 * c * t + 45 * ts + 46 * c - - ds / 56 * (1385 + 3633 * t + 4095 * ts + 1574 * ts * t)))); - - lon = adjust_lon(this.long0 + (d * (1 - - ds / 6 * (1 + 2 * t + c - - ds / 20 * (5 + 28 * t + 24 * ts + 8 * c * t + 6 * c - - ds / 42 * (61 + 662 * t + 1320 * ts + 720 * ts * t)))) / cos_phi)); - } - else { - lat = HALF_PI * sign(y); - lon = 0; - } - } - - p.x = lon; - p.y = lat; - - return p; -} - -export var names = ["Fast_Transverse_Mercator", "Fast Transverse Mercator"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/tpers.js b/proj4js-master/lib/projections/tpers.js deleted file mode 100644 index 45141429..00000000 --- a/proj4js-master/lib/projections/tpers.js +++ /dev/null @@ -1,169 +0,0 @@ - -var mode = { - N_POLE: 0, - S_POLE: 1, - EQUIT: 2, - OBLIQ: 3 -}; - -import { D2R, HALF_PI, EPSLN } from "../constants/values"; -import hypot from "../common/hypot"; - -var params = { - h: { def: 100000, num: true }, // default is Karman line, no default in PROJ.7 - azi: { def: 0, num: true, degrees: true }, // default is North - tilt: { def: 0, num: true, degrees: true }, // default is Nadir - long0: { def: 0, num: true }, // default is Greenwich, conversion to rad is automatic - lat0: { def: 0, num: true } // default is Equator, conversion to rad is automatic -}; - -export function init() { - Object.keys(params).forEach(function (p) { - if (typeof this[p] === "undefined") { - this[p] = params[p].def; - } else if (params[p].num && isNaN(this[p])) { - throw new Error("Invalid parameter value, must be numeric " + p + " = " + this[p]); - } else if (params[p].num) { - this[p] = parseFloat(this[p]); - } - if (params[p].degrees) { - this[p] = this[p] * D2R; - } - }.bind(this)); - - if (Math.abs((Math.abs(this.lat0) - HALF_PI)) < EPSLN) { - this.mode = this.lat0 < 0 ? mode.S_POLE : mode.N_POLE; - } else if (Math.abs(this.lat0) < EPSLN) { - this.mode = mode.EQUIT; - } else { - this.mode = mode.OBLIQ; - this.sinph0 = Math.sin(this.lat0); - this.cosph0 = Math.cos(this.lat0); - } - - this.pn1 = this.h / this.a; // Normalize relative to the Earth's radius - - if (this.pn1 <= 0 || this.pn1 > 1e10) { - throw new Error("Invalid height"); - } - - this.p = 1 + this.pn1; - this.rp = 1 / this.p; - this.h1 = 1 / this.pn1; - this.pfact = (this.p + 1) * this.h1; - this.es = 0; - - var omega = this.tilt; - var gamma = this.azi; - this.cg = Math.cos(gamma); - this.sg = Math.sin(gamma); - this.cw = Math.cos(omega); - this.sw = Math.sin(omega); -} - -export function forward(p) { - p.x -= this.long0; - var sinphi = Math.sin(p.y); - var cosphi = Math.cos(p.y); - var coslam = Math.cos(p.x); - var x, y; - switch (this.mode) { - case mode.OBLIQ: - y = this.sinph0 * sinphi + this.cosph0 * cosphi * coslam; - break; - case mode.EQUIT: - y = cosphi * coslam; - break; - case mode.S_POLE: - y = -sinphi; - break; - case mode.N_POLE: - y = sinphi; - break; - } - y = this.pn1 / (this.p - y); - x = y * cosphi * Math.sin(p.x); - - switch (this.mode) { - case mode.OBLIQ: - y *= this.cosph0 * sinphi - this.sinph0 * cosphi * coslam; - break; - case mode.EQUIT: - y *= sinphi; - break; - case mode.N_POLE: - y *= -(cosphi * coslam); - break; - case mode.S_POLE: - y *= cosphi * coslam; - break; - } - - // Tilt - var yt, ba; - yt = y * this.cg + x * this.sg; - ba = 1 / (yt * this.sw * this.h1 + this.cw); - x = (x * this.cg - y * this.sg) * this.cw * ba; - y = yt * ba; - - p.x = x * this.a; - p.y = y * this.a; - return p; -} - -export function inverse(p) { - p.x /= this.a; - p.y /= this.a; - var r = { x: p.x, y: p.y }; - - // Un-Tilt - var bm, bq, yt; - yt = 1 / (this.pn1 - p.y * this.sw); - bm = this.pn1 * p.x * yt; - bq = this.pn1 * p.y * this.cw * yt; - p.x = bm * this.cg + bq * this.sg; - p.y = bq * this.cg - bm * this.sg; - - var rh = hypot(p.x, p.y); - if (Math.abs(rh) < EPSLN) { - r.x = 0; - r.y = p.y; - } else { - var cosz, sinz; - sinz = 1 - rh * rh * this.pfact; - sinz = (this.p - Math.sqrt(sinz)) / (this.pn1 / rh + rh / this.pn1); - cosz = Math.sqrt(1 - sinz * sinz); - switch (this.mode) { - case mode.OBLIQ: - r.y = Math.asin(cosz * this.sinph0 + p.y * sinz * this.cosph0 / rh); - p.y = (cosz - this.sinph0 * Math.sin(r.y)) * rh; - p.x *= sinz * this.cosph0; - break; - case mode.EQUIT: - r.y = Math.asin(p.y * sinz / rh); - p.y = cosz * rh; - p.x *= sinz; - break; - case mode.N_POLE: - r.y = Math.asin(cosz); - p.y = -p.y; - break; - case mode.S_POLE: - r.y = -Math.asin(cosz); - break; - } - r.x = Math.atan2(p.x, p.y); - } - - p.x = r.x + this.long0; - p.y = r.y; - return p; -} - -export var names = ["Tilted_Perspective", "tpers"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/projections/utm.js b/proj4js-master/lib/projections/utm.js deleted file mode 100644 index 60ec67b3..00000000 --- a/proj4js-master/lib/projections/utm.js +++ /dev/null @@ -1,30 +0,0 @@ -import adjust_zone from '../common/adjust_zone'; -import etmerc from './etmerc'; -export var dependsOn = 'etmerc'; -import {D2R} from '../constants/values'; - - -export function init() { - var zone = adjust_zone(this.zone, this.long0); - if (zone === undefined) { - throw new Error('unknown utm zone'); - } - this.lat0 = 0; - console.log('ZOME', this.zone, zone, this.long0); - this.long0 = ((6 * Math.abs(zone)) - 183) * D2R; - console.log('ZONE AFTER', this.zone, zone, this.long0); - this.x0 = 500000; - this.y0 = this.utmSouth ? 10000000 : 0; - this.k0 = 0.9996; - - etmerc.init.apply(this); - this.forward = etmerc.forward; - this.inverse = etmerc.inverse; -} - -export var names = ["Universal Transverse Mercator System", "utm"]; -export default { - init: init, - names: names, - dependsOn: dependsOn -}; diff --git a/proj4js-master/lib/projections/vandg.js b/proj4js-master/lib/projections/vandg.js deleted file mode 100644 index 1f1b5030..00000000 --- a/proj4js-master/lib/projections/vandg.js +++ /dev/null @@ -1,129 +0,0 @@ -import adjust_lon from '../common/adjust_lon'; - -import {HALF_PI, EPSLN} from '../constants/values'; - -import asinz from '../common/asinz'; - -/* Initialize the Van Der Grinten projection - ----------------------------------------*/ -export function init() { - //this.R = 6370997; //Radius of earth - this.R = this.a; -} - -export function forward(p) { - - var lon = p.x; - var lat = p.y; - - /* Forward equations - -----------------*/ - var dlon = adjust_lon(lon - this.long0); - var x, y; - - if (Math.abs(lat) <= EPSLN) { - x = this.x0 + this.R * dlon; - y = this.y0; - } - var theta = asinz(2 * Math.abs(lat / Math.PI)); - if ((Math.abs(dlon) <= EPSLN) || (Math.abs(Math.abs(lat) - HALF_PI) <= EPSLN)) { - x = this.x0; - if (lat >= 0) { - y = this.y0 + Math.PI * this.R * Math.tan(0.5 * theta); - } - else { - y = this.y0 + Math.PI * this.R * -Math.tan(0.5 * theta); - } - // return(OK); - } - var al = 0.5 * Math.abs((Math.PI / dlon) - (dlon / Math.PI)); - var asq = al * al; - var sinth = Math.sin(theta); - var costh = Math.cos(theta); - - var g = costh / (sinth + costh - 1); - var gsq = g * g; - var m = g * (2 / sinth - 1); - var msq = m * m; - var con = Math.PI * this.R * (al * (g - msq) + Math.sqrt(asq * (g - msq) * (g - msq) - (msq + asq) * (gsq - msq))) / (msq + asq); - if (dlon < 0) { - con = -con; - } - x = this.x0 + con; - //con = Math.abs(con / (Math.PI * this.R)); - var q = asq + g; - con = Math.PI * this.R * (m * q - al * Math.sqrt((msq + asq) * (asq + 1) - q * q)) / (msq + asq); - if (lat >= 0) { - //y = this.y0 + Math.PI * this.R * Math.sqrt(1 - con * con - 2 * al * con); - y = this.y0 + con; - } - else { - //y = this.y0 - Math.PI * this.R * Math.sqrt(1 - con * con - 2 * al * con); - y = this.y0 - con; - } - p.x = x; - p.y = y; - return p; -} - -/* Van Der Grinten inverse equations--mapping x,y to lat/long - ---------------------------------------------------------*/ -export function inverse(p) { - var lon, lat; - var xx, yy, xys, c1, c2, c3; - var a1; - var m1; - var con; - var th1; - var d; - - /* inverse equations - -----------------*/ - p.x -= this.x0; - p.y -= this.y0; - con = Math.PI * this.R; - xx = p.x / con; - yy = p.y / con; - xys = xx * xx + yy * yy; - c1 = -Math.abs(yy) * (1 + xys); - c2 = c1 - 2 * yy * yy + xx * xx; - c3 = -2 * c1 + 1 + 2 * yy * yy + xys * xys; - d = yy * yy / c3 + (2 * c2 * c2 * c2 / c3 / c3 / c3 - 9 * c1 * c2 / c3 / c3) / 27; - a1 = (c1 - c2 * c2 / 3 / c3) / c3; - m1 = 2 * Math.sqrt(-a1 / 3); - con = ((3 * d) / a1) / m1; - if (Math.abs(con) > 1) { - if (con >= 0) { - con = 1; - } - else { - con = -1; - } - } - th1 = Math.acos(con) / 3; - if (p.y >= 0) { - lat = (-m1 * Math.cos(th1 + Math.PI / 3) - c2 / 3 / c3) * Math.PI; - } - else { - lat = -(-m1 * Math.cos(th1 + Math.PI / 3) - c2 / 3 / c3) * Math.PI; - } - - if (Math.abs(xx) < EPSLN) { - lon = this.long0; - } - else { - lon = adjust_lon(this.long0 + Math.PI * (xys - 1 + Math.sqrt(1 + 2 * (xx * xx - yy * yy) + xys * xys)) / 2 / xx); - } - - p.x = lon; - p.y = lat; - return p; -} - -export var names = ["Van_der_Grinten_I", "VanDerGrinten", "vandg"]; -export default { - init: init, - forward: forward, - inverse: inverse, - names: names -}; diff --git a/proj4js-master/lib/transform.js b/proj4js-master/lib/transform.js deleted file mode 100644 index 07deae26..00000000 --- a/proj4js-master/lib/transform.js +++ /dev/null @@ -1,115 +0,0 @@ -import {D2R, R2D, PJD_3PARAM, PJD_7PARAM, PJD_GRIDSHIFT} from './constants/values'; -import datum_transform from './datum_transform'; -import adjust_axis from './adjust_axis'; -import proj from './Proj'; -import toPoint from './common/toPoint'; -import checkSanity from './checkSanity'; - -function checkNotWGS(source, dest) { - return ( - (source.datum.datum_type === PJD_3PARAM || source.datum.datum_type === PJD_7PARAM || source.datum.datum_type === PJD_GRIDSHIFT) && dest.datumCode !== 'WGS84') || - ((dest.datum.datum_type === PJD_3PARAM || dest.datum.datum_type === PJD_7PARAM || dest.datum.datum_type === PJD_GRIDSHIFT) && source.datumCode !== 'WGS84'); -} - -export default function transform(source, dest, point, enforceAxis) { - console.log('BEGIN TRANSFORM', source, dest, enforceAxis) - var wgs84; - if (Array.isArray(point)) { - point = toPoint(point); - } else { - // Clone the point object so inputs don't get modified - point = { - x: point.x, - y: point.y, - z: point.z, - m: point.m - }; - } - var hasZ = point.z !== undefined; - checkSanity(point); - // Workaround for datum shifts towgs84, if either source or destination projection is not wgs84 - if (source.datum && dest.datum && checkNotWGS(source, dest)) { - wgs84 = new proj('WGS84'); - console.log('THIS IS CALLED A') - point = transform(source, wgs84, point, enforceAxis); - source = wgs84; - } - // DGR, 2010/11/12 - if (enforceAxis && source.axis !== 'enu') { - point = adjust_axis(source, false, point); - } - // Transform source points to long/lat, if they aren't already. - if (source.projName === 'longlat') { - point = { - x: point.x * D2R, - y: point.y * D2R, - z: point.z || 0 - }; - } else { - if (source.to_meter) { - console.log('METER!', source.to_meter) - point = { - x: point.x * source.to_meter, - y: point.y * source.to_meter, - z: point.z || 0 - }; - } - point = source.inverse(point); // Convert Cartesian to longlat - if (!point) { - return; - } - console.log('STEP 1: INVERSE A', point) - } - // Adjust for the prime meridian if necessary - if (source.from_greenwich) { - point.x += source.from_greenwich; - } - - // Convert datums if needed, and if possible. - point = datum_transform(source.datum, dest.datum, point); - if (!point) { - return; - } - - console.log('STEP 2: MID DATUM A', point); - - // Adjust for the prime meridian if necessary - if (dest.from_greenwich) { - point = { - x: point.x - dest.from_greenwich, - y: point.y, - z: point.z || 0 - }; - } - - if (dest.projName === 'longlat') { - // convert radians to decimal degrees - point = { - x: point.x * R2D, - y: point.y * R2D, - z: point.z || 0 - }; - } else { // else project - // console.log('STEP 3: FORWARD A DEST: ', dest); - point = dest.forward(point); - console.log('STEP 3: FORWARD A', point); - if (dest.to_meter) { - point = { - x: point.x / dest.to_meter, - y: point.y / dest.to_meter, - z: point.z || 0 - }; - } - } - console.log('STEP 4: METER A', point); - - // DGR, 2010/11/12 - if (enforceAxis && dest.axis !== 'enu') { - return adjust_axis(dest, true, point); - } - - if (point && !hasZ) { - delete point.z; - } - return point; -} diff --git a/proj4js-master/package-lock.json b/proj4js-master/package-lock.json deleted file mode 100644 index e2de1b31..00000000 --- a/proj4js-master/package-lock.json +++ /dev/null @@ -1,7011 +0,0 @@ -{ - "name": "proj4", - "version": "2.12.2-alpha", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "name": "proj4", - "version": "2.12.2-alpha", - "license": "MIT", - "dependencies": { - "mgrs": "1.0.0", - "wkt-parser": "^1.3.3" - }, - "devDependencies": { - "chai": "~4.1.2", - "curl-amd": "^0.8.12", - "grunt": "^1.0.1", - "grunt-cli": "~1.2.0", - "grunt-contrib-connect": "~1.0.2", - "grunt-contrib-jshint": "~3.2.0", - "grunt-contrib-uglify": "~3.1.0", - "grunt-mocha-phantomjs": "~4.0.0", - "grunt-rollup": "^6.0.0", - "istanbul": "~0.4.5", - "mocha": "~4.0.0", - "rollup": "^0.50.0", - "rollup-plugin-json": "^2.3.0", - "rollup-plugin-node-resolve": "^3.0.0", - "rollup-plugin-replace": "^2.0.0", - "tin": "~0.5.0" - } - }, - "node_modules/abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, - "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, - "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/amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.4.2" - } - }, - "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "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/array-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-slice": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "dependencies": { - "safer-buffer": "~2.1.0" - } - }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true - }, - "node_modules/aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "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==", - "dev": true - }, - "node_modules/basic-auth": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", - "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", - "dev": true, - "dependencies": { - "safe-buffer": "5.1.2" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "dependencies": { - "tweetnacl": "^0.14.3" - } - }, - "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/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/browser-stdout": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", - "integrity": "sha512-7Rfk377tpSM9TWBEeHs0FlDZGoAIei2V/4MdZJoFMBFAK6BqLpxAIUepGRHGdPFgGsLb02PXovC4qddyHvQqTg==", - "dev": true - }, - "node_modules/browserify-zlib": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "integrity": "sha512-19OEpq7vWgsH6WkvkBJQDFvJS1uPcbFOQ4v9CU839dO+ZZXUZO6XpE6hNCqvlIIj+4fZvRiJ6DsAQ382GwiyTQ==", - "dev": true, - "dependencies": { - "pako": "~0.2.0" - } - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "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/builtin-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-2.0.0.tgz", - "integrity": "sha512-3U5kUA5VPsRUA3nofm/BXX7GVHKfxz0hOBAPxXrIvHzlDRkQVqEn6yi8QJegxl4LzOHLdvb7XF5dVawa/VVYBg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==", - "dev": true, - "dependencies": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "node_modules/chai": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz", - "integrity": "sha512-YTHf80rJ8M5/cJoFKEV1y3PnexbGs0vSHjouRRU8gLM05Nc3Mqq9zor/P4SCqB/sgvKRLvya7wHLC1XQ9pTjgQ==", - "dev": true, - "dependencies": { - "assertion-error": "^1.0.1", - "check-error": "^1.0.1", - "deep-eql": "^3.0.0", - "get-func-name": "^2.0.0", - "pathval": "^1.0.0", - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/cli": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz", - "integrity": "sha512-41U72MB56TfUMGndAKK8vJ78eooOD4Z5NOL4xEfjc0c23s+6EYKXlXsmACBVclLP1yOfWCgEganVzddVrSNoTg==", - "dev": true, - "dependencies": { - "exit": "0.1.2", - "glob": "^7.1.1" - }, - "engines": { - "node": ">=0.2.5" - } - }, - "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/colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", - "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/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "engines": [ - "node >= 0.8" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/concat-stream/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/concat-stream/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/concat-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/connect-livereload": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", - "integrity": "sha512-3KnRwsWf4VmP01I4hCDQqTc4e2UxOvJIi8i08GiwqX2oymzxNFY7PqjFkwHglYTJ0yzUJkO5yqdPxVaIz3Pbug==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha512-duS7VP5pvfsNLDvL1O4VOEbw37AI3A4ZUQYemvDlnpGrNu9tprR7BYWpDYwC0Xia0Zxz5ZupdiIrUp0GH1aXfg==", - "dev": true, - "dependencies": { - "date-now": "^0.1.4" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "node_modules/curl-amd": { - "version": "0.8.12", - "resolved": "https://registry.npmjs.org/curl-amd/-/curl-amd-0.8.12.tgz", - "integrity": "sha512-7rTMBicetW3SM6syQfp76U91/TRPRYKz32OfaA0OH2E/EXXOnpvY44x+neGT5UFW8S8Fq5hjkYWe8KOGwLZuVA==", - "dev": true - }, - "node_modules/currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", - "dev": true, - "dependencies": { - "array-find-index": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha512-AsElvov3LoNB7tf5k37H2jYSB+ZZPMT5sG2QjJCcdlV5chIv6htBUBUui2IKRjgtKAKtCBN7Zbwa+MtwLjSeNw==", - "dev": true - }, - "node_modules/dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "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-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=0.12" - } - }, - "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 - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/diff": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz", - "integrity": "sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" - } - }, - "node_modules/dom-serializer/node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/dom-serializer/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true - }, - "node_modules/domhandler": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", - "integrity": "sha512-q9bUwjfp7Eif8jWxxxPSykdRZAb6GkguBGSgvvCrhI9wB71W2K/Kvv4E61CF/mcCfnVJDeDWx/Vb/uAqbDj6UQ==", - "dev": true, - "dependencies": { - "domelementtype": "1" - } - }, - "node_modules/domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==", - "dev": true, - "dependencies": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/entities": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz", - "integrity": "sha512-LbLqfXgJMmy81t+7c14mnulFHJ170cM6E+0vMXR9k/ZiZwgX8i5pNgjTCX3SO4VeUsFLV+8InixoretwU+MjBQ==", - "dev": true - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "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/escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==", - "dev": true, - "dependencies": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=0.12.0" - }, - "optionalDependencies": { - "source-map": "~0.2.0" - } - }, - "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/estree-walker": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", - "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", - "dev": true - }, - "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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/eventemitter2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==", - "dev": true - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", - "dev": true, - "dependencies": { - "homedir-polyfill": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "node_modules/extract-zip": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", - "dev": true, - "dependencies": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - } - }, - "node_modules/extract-zip/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true, - "engines": [ - "node >=0.6.0" - ] - }, - "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 - }, - "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 - }, - "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 - }, - "node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" - } - }, - "node_modules/figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - }, - "engines": { - "node": ">=0.10.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/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", - "dev": true, - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/findup-sync": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha512-z8Nrwhi6wzxNMIbxlrTzuUW6KWuKkogZ/7OdDVq+0+kxn77KUH1nipx8iU6suqkHqc4y6n7a9A8IpmxY/pTjWg==", - "dev": true, - "dependencies": { - "glob": "~5.0.0" - }, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/findup-sync/node_modules/glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", - "dev": true, - "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/fined": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", - "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", - "dev": true, - "dependencies": { - "expand-tilde": "^2.0.2", - "is-plain-object": "^2.0.3", - "object.defaults": "^1.1.0", - "object.pick": "^1.2.0", - "parse-filepath": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/flagged-respawn": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", - "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", - "dev": true, - "dependencies": { - "for-in": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs-extra": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz", - "integrity": "sha512-VerQV6vEKuhDWD2HGOybV6v5I73syoc/cXAbKlgTC7M/oFVEtklWlp9QH2Ijw3IaWDOQcMkldSPa7zXy79Z/UQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0" - } - }, - "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/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/getobject": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", - "integrity": "sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" - } - }, - "node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "dependencies": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", - "dev": true, - "dependencies": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "node_modules/growl": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", - "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", - "dev": true, - "engines": { - "node": ">=4.x" - } - }, - "node_modules/grunt": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz", - "integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==", - "dev": true, - "dependencies": { - "dateformat": "~3.0.3", - "eventemitter2": "~0.4.13", - "exit": "~0.1.2", - "findup-sync": "~0.3.0", - "glob": "~7.1.6", - "grunt-cli": "~1.4.3", - "grunt-known-options": "~2.0.0", - "grunt-legacy-log": "~3.0.0", - "grunt-legacy-util": "~2.0.1", - "iconv-lite": "~0.4.13", - "js-yaml": "~3.14.0", - "minimatch": "~3.0.4", - "mkdirp": "~1.0.4", - "nopt": "~3.0.6", - "rimraf": "~3.0.2" - }, - "bin": { - "grunt": "bin/grunt" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/grunt-cli": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz", - "integrity": "sha512-8oM6ZAe4yG8Y7co/Ejc9613AixyN+gdCADyAFvJ1BbHGvrNa0ltaqrEWXV9P/W0gbQbAh3C8swJIaDuAX7syiw==", - "dev": true, - "dependencies": { - "findup-sync": "~0.3.0", - "grunt-known-options": "~1.1.0", - "nopt": "~3.0.6", - "resolve": "~1.1.0" - }, - "bin": { - "grunt": "bin/grunt" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/grunt-cli/node_modules/grunt-known-options": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/grunt-contrib-connect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/grunt-contrib-connect/-/grunt-contrib-connect-1.0.2.tgz", - "integrity": "sha512-7OPoyfGrpOYzuiRPzGyzWDe/xFcjttXe1ztVSFS8TAVBtpfXeeOV9RiwuyqA4yN1UeOG2Pnpx8s0DcUDAu21Gw==", - "dev": true, - "dependencies": { - "async": "^1.5.2", - "connect": "^3.4.0", - "connect-livereload": "^0.5.0", - "http2": "^3.3.4", - "morgan": "^1.6.1", - "opn": "^4.0.0", - "portscanner": "^1.0.0", - "serve-index": "^1.7.1", - "serve-static": "^1.10.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "peerDependencies": { - "grunt": ">=0.4.0" - } - }, - "node_modules/grunt-contrib-jshint": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-3.2.0.tgz", - "integrity": "sha512-pcXWCSZWfoMSvcV4BwH21TUtLtcX0Ms8IGuOPIcLeXK3fud9KclY7iqMKY94jFx8TxZzh028YYtpR+io8DiEaQ==", - "dev": true, - "dependencies": { - "chalk": "~4.1.2", - "hooker": "^0.2.3", - "jshint": "~2.13.4" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/grunt-contrib-jshint/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/grunt-contrib-jshint/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, - "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/grunt-contrib-jshint/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/grunt-contrib-uglify": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-3.1.0.tgz", - "integrity": "sha512-4Dx6HOI4ipP4wOqHZEGYYLmBGMccfS6XAI8OOBCiLhLEN54CtxVdCYgT83dPdhxLpXFhNpG89frRjfqcos4H5w==", - "dev": true, - "dependencies": { - "chalk": "^1.0.0", - "maxmin": "^1.1.0", - "uglify-js": "~3.0.4", - "uri-path": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/grunt-known-options": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-2.0.0.tgz", - "integrity": "sha512-GD7cTz0I4SAede1/+pAbmJRG44zFLPipVtdL9o3vqx9IEyb7b4/Y3s7r6ofI3CchR5GvYJ+8buCSioDv5dQLiA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/grunt-legacy-log": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-3.0.0.tgz", - "integrity": "sha512-GHZQzZmhyq0u3hr7aHW4qUH0xDzwp2YXldLPZTCjlOeGscAOWWPftZG3XioW8MasGp+OBRIu39LFx14SLjXRcA==", - "dev": true, - "dependencies": { - "colors": "~1.1.2", - "grunt-legacy-log-utils": "~2.1.0", - "hooker": "~0.2.3", - "lodash": "~4.17.19" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/grunt-legacy-log-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.1.0.tgz", - "integrity": "sha512-lwquaPXJtKQk0rUM1IQAop5noEpwFqOXasVoedLeNzaibf/OPWjKYvvdqnEHNmU+0T0CaReAXIbGo747ZD+Aaw==", - "dev": true, - "dependencies": { - "chalk": "~4.1.0", - "lodash": "~4.17.19" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/grunt-legacy-log-utils/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/grunt-legacy-log-utils/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, - "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/grunt-legacy-log-utils/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/grunt-legacy-util": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-2.0.1.tgz", - "integrity": "sha512-2bQiD4fzXqX8rhNdXkAywCadeqiPiay0oQny77wA2F3WF4grPJXCvAcyoWUJV+po/b15glGkxuSiQCK299UC2w==", - "dev": true, - "dependencies": { - "async": "~3.2.0", - "exit": "~0.1.2", - "getobject": "~1.0.0", - "hooker": "~0.2.3", - "lodash": "~4.17.21", - "underscore.string": "~3.3.5", - "which": "~2.0.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/grunt-legacy-util/node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/grunt-mocha-phantomjs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/grunt-mocha-phantomjs/-/grunt-mocha-phantomjs-4.0.0.tgz", - "integrity": "sha512-yYChubnh9MRcSx82vW9BhBcfyPUanfEzGA91LFbXvppHV6gIXYxugja2V2Awo6LCmrp26w6lVqYdkbZ3GO2gcw==", - "dev": true, - "dependencies": { - "async": "^1.5.2", - "mocha-phantomjs-core": "^1.3.0", - "object-assign": "^4.1.0", - "phantomjs-prebuilt": "^2.1.3" - }, - "peerDependencies": { - "grunt": ">=0.4.0" - } - }, - "node_modules/grunt-rollup": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/grunt-rollup/-/grunt-rollup-6.0.0.tgz", - "integrity": "sha512-nICpGA4CbgNtvdNMNPoytV+Fa9MJuhRSVk4Odfcw7v6lrJmfZw4iJniNBeZrYkW09gT7qADylIivJaVqzF4fmA==", - "dev": true, - "dependencies": { - "rollup": "0.50.0" - }, - "engines": { - "node": ">= 4.0.0" - }, - "peerDependencies": { - "grunt": ">=0.4.0" - } - }, - "node_modules/grunt-rollup/node_modules/rollup": { - "version": "0.50.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.50.0.tgz", - "integrity": "sha512-7RqCBQ9iwsOBPkjYgoIaeUij606mSkDMExP0NT7QDI3bqkHYQHrQ83uoNIXwPcQm/vP2VbsUz3kiyZZ1qPlLTQ==", - "dev": true, - "bin": { - "rollup": "bin/rollup" - } - }, - "node_modules/grunt/node_modules/grunt-cli": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.3.tgz", - "integrity": "sha512-9Dtx/AhVeB4LYzsViCjUQkd0Kw0McN2gYpdmGYKtE2a5Yt7v1Q+HYZVWhqXc/kGnxlMtqKDxSwotiGeFmkrCoQ==", - "dev": true, - "dependencies": { - "grunt-known-options": "~2.0.0", - "interpret": "~1.1.0", - "liftup": "~3.0.1", - "nopt": "~4.0.1", - "v8flags": "~3.2.0" - }, - "bin": { - "grunt": "bin/grunt" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/grunt/node_modules/grunt-cli/node_modules/nopt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", - "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", - "dev": true, - "dependencies": { - "abbrev": "1", - "osenv": "^0.1.4" - }, - "bin": { - "nopt": "bin/nopt.js" - } - }, - "node_modules/gzip-size": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-1.0.0.tgz", - "integrity": "sha512-mu66twX6zg8WB6IPfUtrquS7fjwGnDJ7kdVcggd5rpjwBItQKjHtvhu6VcQMkqPYAR7DjWpEaN3xiBSNmxvzPg==", - "dev": true, - "dependencies": { - "browserify-zlib": "^0.1.4", - "concat-stream": "^1.4.1" - }, - "bin": { - "gzip-size": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, - "node_modules/handlebars/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/handlebars/node_modules/uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", - "dev": true, - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "deprecated": "this library is no longer supported", - "dev": true, - "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "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": "2.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz", - "integrity": "sha512-jZ38TU/EBiGKrmyTNNZgnvCZHNowiRI4+w/I9noMlekHTZH3KyGgvJLmhSgykeAQ9j2SYPDosM0Bg3wHfzibAQ==", - "dev": true, - "dependencies": { - "is-stream": "^1.0.1", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha512-z/GDPjlRMNOa2XJiB4em8wJpuuBfrFOlYKTZxtpkdr1uPdibHI8rYA3MY0KDObpVyaes0e/aunid/t88ZI2EKA==", - "dev": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "dependencies": { - "parse-passwd": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hooker": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha512-t+UerCsQviSymAInD01Pw+Dn/usmz1sRO+3Zk1+lx8eg+WKpD2ulcwWqHHL0+aseRBr+3+vIhiG1K1JTwaIcTA==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/htmlparser2": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", - "integrity": "sha512-hBxEg3CYXe+rPIua8ETe7tmG3XDn9B0edOE/e9wH2nLczxzgdu0m0aNHY+5wFZiviLWLdANPJTssa92dMcXQ5Q==", - "dev": true, - "dependencies": { - "domelementtype": "1", - "domhandler": "2.3", - "domutils": "1.5", - "entities": "1.0", - "readable-stream": "1.1" - } - }, - "node_modules/http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/http-errors/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/http-errors/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "node_modules/http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, - "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" - } - }, - "node_modules/http2": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/http2/-/http2-3.3.7.tgz", - "integrity": "sha512-puSi8M8WNlFJm9Pk4c/Mbz9Gwparuj3gO9/RRO5zv6piQ0FY+9Qywp0PdWshYgsMJSalixFY7eC6oPu0zRxLAQ==", - "deprecated": "Use the built-in module in node 9.0.0 or newer, instead", - "dev": true, - "engines": { - "node": ">=0.12.0 <9.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==", - "dev": true, - "dependencies": { - "repeating": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "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/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "node_modules/interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==", - "dev": true - }, - "node_modules/is-absolute": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", - "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", - "dev": true, - "dependencies": { - "is-relative": "^1.0.0", - "is-windows": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", - "dev": true - }, - "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-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-relative": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", - "dev": true, - "dependencies": { - "is-unc-path": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "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-unc-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", - "dev": true, - "dependencies": { - "unc-path-regex": "^0.1.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", - "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/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, - "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/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "node_modules/istanbul": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", - "integrity": "sha512-nMtdn4hvK0HjUlzr1DrKSUY8ychprt8dzHOgY2KXsIhHu5PuQQEOTM27gV9Xblyon7aUH/TSFIjRHEODF/FRPg==", - "deprecated": "This module is no longer maintained, try this instead:\n npm i nyc\nVisit https://istanbul.js.org/integrations for other alternatives.", - "dev": true, - "dependencies": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "istanbul": "lib/cli.js" - } - }, - "node_modules/istanbul/node_modules/glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", - "dev": true, - "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/istanbul/node_modules/has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/istanbul/node_modules/supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", - "dev": true, - "dependencies": { - "has-flag": "^1.0.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/istanbul/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "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/js-yaml/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/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "node_modules/jshint": { - "version": "2.13.6", - "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.13.6.tgz", - "integrity": "sha512-IVdB4G0NTTeQZrBoM8C5JFVLjV2KtZ9APgybDA1MK73xb09qFs0jCXyQLnCOp1cSZZZbvhq/6mfXHUTaDkffuQ==", - "dev": true, - "dependencies": { - "cli": "~1.0.0", - "console-browserify": "1.1.x", - "exit": "0.1.x", - "htmlparser2": "3.8.x", - "lodash": "~4.17.21", - "minimatch": "~3.0.2", - "strip-json-comments": "1.0.x" - }, - "bin": { - "jshint": "bin/jshint" - } - }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": 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 - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/kew": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz", - "integrity": "sha512-IG6nm0+QtAMdXt9KvbgbGdvY50RSrw+U4sGZg+KlrSKPJEwVE5JVoI3d7RWfSMdBQneRheeAOj3lIjX5VL/9RQ==", - "dev": true - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.9" - } - }, - "node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/liftup": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/liftup/-/liftup-3.0.1.tgz", - "integrity": "sha512-yRHaiQDizWSzoXk3APcA71eOI/UuhEkNN9DiW2Tt44mhYzX4joFoCZlxsSOF7RyeLlfqzFLQI1ngFq3ggMPhOw==", - "dev": true, - "dependencies": { - "extend": "^3.0.2", - "findup-sync": "^4.0.0", - "fined": "^1.2.0", - "flagged-respawn": "^1.0.1", - "is-plain-object": "^2.0.4", - "object.map": "^1.0.1", - "rechoir": "^0.7.0", - "resolve": "^1.19.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/liftup/node_modules/findup-sync": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", - "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", - "dev": true, - "dependencies": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^4.0.2", - "resolve-dir": "^1.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/liftup/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==", - "dev": true, - "dependencies": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.8" - } - }, - "node_modules/make-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", - "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/maxmin": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/maxmin/-/maxmin-1.1.0.tgz", - "integrity": "sha512-jypoV6wTPuz/ngkc2sDZnFvpvx14QICNKS/jK9RbkmiQQJZ4JWstIszA8iT/z9tPSF/vXQ5qtG0h65N9tiLIKA==", - "dev": true, - "dependencies": { - "chalk": "^1.0.0", - "figures": "^1.0.1", - "gzip-size": "^1.0.0", - "pretty-bytes": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==", - "dev": true, - "dependencies": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mgrs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", - "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==" - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", - "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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/mocha": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-4.0.1.tgz", - "integrity": "sha512-evDmhkoA+cBNiQQQdSKZa2b9+W2mpLoj50367lhy+Klnx9OV8XlCIhigUnn1gaTFLQCa0kdNhEGDr0hCXOQFDw==", - "dev": true, - "dependencies": { - "browser-stdout": "1.3.0", - "commander": "2.11.0", - "debug": "3.1.0", - "diff": "3.3.1", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "growl": "1.10.3", - "he": "1.1.1", - "mkdirp": "0.5.1", - "supports-color": "4.4.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" - }, - "engines": { - "node": ">= 4.0.0", - "npm": ">= 2.15.11" - } - }, - "node_modules/mocha-phantomjs-core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mocha-phantomjs-core/-/mocha-phantomjs-core-1.3.1.tgz", - "integrity": "sha512-Jz/3d3WnZw3A5kygxiRsPkNpSK8p5ki20oCjtLlVq8SZAaXKisbH/HOCeuK8lkSJf4hHEoPZkzU/5yxVuf1AIg==", - "dev": true - }, - "node_modules/mocha/node_modules/debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/mocha/node_modules/glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/mocha/node_modules/has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mocha/node_modules/minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", - "dev": true - }, - "node_modules/mocha/node_modules/mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", - "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)", - "dev": true, - "dependencies": { - "minimist": "0.0.8" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", - "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "dev": true, - "dependencies": { - "has-flag": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/morgan": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", - "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", - "dev": true, - "dependencies": { - "basic-auth": "~2.0.1", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-finished": "~2.3.0", - "on-headers": "~1.0.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - } - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.defaults": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", - "dev": true, - "dependencies": { - "array-each": "^1.0.1", - "array-slice": "^1.0.0", - "for-own": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==", - "dev": true, - "dependencies": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "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/opn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", - "integrity": "sha512-iPBWbPP4OEOzR1xfhpGLDh+ypKBOygunZhM9jBtA7FS5sKjEiMZw0EFb82hnDOmTZX90ZWLoZKUza4cVt8MexA==", - "dev": true, - "dependencies": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "dependencies": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "node_modules/pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==", - "dev": true - }, - "node_modules/parse-filepath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", - "dev": true, - "dependencies": { - "is-absolute": "^1.0.0", - "map-cache": "^0.2.0", - "path-root": "^0.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", - "dev": true, - "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", - "dev": true, - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "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-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-root": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", - "dev": true, - "dependencies": { - "path-root-regex": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-root-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "node_modules/phantomjs-prebuilt": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz", - "integrity": "sha512-PIiRzBhW85xco2fuj41FmsyuYHKjKuXWmhjy3A/Y+CMpN/63TV+s9uzfVhsUwFe0G77xWtHBG8xmXf5BqEUEuQ==", - "deprecated": "this package is now deprecated", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "es6-promise": "^4.0.3", - "extract-zip": "^1.6.5", - "fs-extra": "^1.0.0", - "hasha": "^2.2.0", - "kew": "^0.7.0", - "progress": "^1.1.8", - "request": "^2.81.0", - "request-progress": "^2.0.1", - "which": "^1.2.10" - }, - "bin": { - "phantomjs": "bin/phantomjs" - } - }, - "node_modules/phantomjs-prebuilt/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "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/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", - "dev": true, - "dependencies": { - "pinkie": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/portscanner": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-1.2.0.tgz", - "integrity": "sha512-3MCx40XO6ChNJJHw1tTFukQK/M/8FacGZK/vGbnrKpozObrJzembYtfi7ZdA2hkF2Lojg77XhsKUPvF8eHKcDA==", - "dev": true, - "dependencies": { - "async": "1.5.2" - }, - "engines": { - "node": ">=0.4", - "npm": ">=1.0.0" - } - }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/pretty-bytes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-1.0.4.tgz", - "integrity": "sha512-LNisJvAjy+hruxp3GV4IkZZscTI34+ISfeM1hesB9V6ezIDfXYrBi9TIXVjjMcEB4QFN7tL+dFDEk4s8jMBMyA==", - "dev": true, - "dependencies": { - "get-stdin": "^4.0.1", - "meow": "^3.1.0" - }, - "bin": { - "pretty-bytes": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "node_modules/progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", - "dev": true, - "dependencies": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", - "dev": true, - "dependencies": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/rechoir": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", - "dev": true, - "dependencies": { - "resolve": "^1.9.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/rechoir/node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==", - "dev": true, - "dependencies": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==", - "dev": true, - "dependencies": { - "is-finite": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", - "dev": true, - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/request-progress": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz", - "integrity": "sha512-dxdraeZVUNEn9AvLrxkgB2k6buTlym71dJk1fk4v8j3Ou3RKNm07BcgbHdj2lLgYGfqX71F+awb1MR+tWPFJzA==", - "dev": true, - "dependencies": { - "throttleit": "^1.0.0" - } - }, - "node_modules/resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==", - "dev": true - }, - "node_modules/resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", - "dev": true, - "dependencies": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - }, - "engines": { - "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/rollup": { - "version": "0.50.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.50.1.tgz", - "integrity": "sha512-XwrnqjSTk+yR8GbP6hiJuVe83MVmBw/gm4P3qP34A10fRXvv6ppl0ZUg1+Pj1tIZSR/aw5ZaILLEiVxwXIAdAw==", - "dev": true, - "bin": { - "rollup": "bin/rollup" - } - }, - "node_modules/rollup-plugin-json": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-2.3.1.tgz", - "integrity": "sha512-alQQQVPo2z9pl6LSK8QqyDlWwCH5KeE8YxgQv7fa/SeTxz+gQe36jBjcha7hQW68MrVh9Ms71EQaMZDAG3w2yw==", - "deprecated": "This module has been deprecated and is no longer maintained. Please use @rollup/plugin-json.", - "dev": true, - "dependencies": { - "rollup-pluginutils": "^2.0.1" - }, - "peerDependencies": { - "rollup": "< 0.59.0" - } - }, - "node_modules/rollup-plugin-node-resolve": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.4.0.tgz", - "integrity": "sha512-PJcd85dxfSBWih84ozRtBkB731OjXk0KnzN0oGp7WOWcarAFkVa71cV5hTJg2qpVsV2U8EUwrzHP3tvy9vS3qg==", - "deprecated": "This package has been deprecated and is no longer maintained. Please use @rollup/plugin-node-resolve.", - "dev": true, - "dependencies": { - "builtin-modules": "^2.0.0", - "is-module": "^1.0.0", - "resolve": "^1.1.6" - } - }, - "node_modules/rollup-plugin-replace": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-replace/-/rollup-plugin-replace-2.2.0.tgz", - "integrity": "sha512-/5bxtUPkDHyBJAKketb4NfaeZjL5yLZdeUihSfbF2PQMz+rSTEb8ARKoOl3UBT4m7/X+QOXJo3sLTcq+yMMYTA==", - "deprecated": "This module has moved and is now available at @rollup/plugin-replace. Please update your dependencies. This version is no longer maintained.", - "dev": true, - "dependencies": { - "magic-string": "^0.25.2", - "rollup-pluginutils": "^2.6.0" - } - }, - "node_modules/rollup-pluginutils": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", - "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", - "dev": true, - "dependencies": { - "estree-walker": "^0.6.1" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "node_modules/send/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/send/node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "dependencies": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "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.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA==", - "dev": true, - "optional": true, - "dependencies": { - "amdefine": ">=0.0.4" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", - "dev": true - }, - "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/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/string/-/string-1.6.1.tgz", - "integrity": "sha512-HjS4ixm3n26s7G7aj7frqsiiM/lA1vz4zoOMHD6CfT7niMZv3nqspyKWAdnYBklKQM7xYuGfUn3jDLR18WlsPQ==", - "dev": true - }, - "node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", - "dev": true - }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", - "dev": true, - "dependencies": { - "is-utf8": "^0.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==", - "dev": true, - "dependencies": { - "get-stdin": "^4.0.1" - }, - "bin": { - "strip-indent": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-json-comments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", - "integrity": "sha512-AOPG8EBc5wAikaG1/7uFCNFJwnKOuQwFTpYBdTW6OvWHeZBQBrAA/amefHGrEiOnCPcLFZK6FUPtWVKpQVIRgg==", - "dev": true, - "bin": { - "strip-json-comments": "cli.js" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", - "dev": true - }, - "node_modules/tin": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/tin/-/tin-0.5.0.tgz", - "integrity": "sha512-lHhMm3Fy0+g9EBkH6+C6b8V5lm9SmvtpMO2scLAg/Fo0Ou94ogxDGf3PL6T2o7bgQMfYm9UAT6+U1Ppy/6CHZw==", - "dev": true, - "dependencies": { - "commander": "~2.0.0", - "semver": "~2.2.1", - "string": "~1.6.0" - }, - "bin": { - "tin": "bin/tin" - } - }, - "node_modules/tin/node_modules/commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha512-qebjpyeaA/nJ4w3EO2cV2++/zEkccPnjWogzA2rff+Lk8ILI75vULeTmyd4wPxWdKwtP3J+G39IXVZadh0UHyw==", - "dev": true, - "engines": { - "node": ">= 0.6.x" - } - }, - "node_modules/tin/node_modules/semver": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz", - "integrity": "sha512-zM5SE887Z8Ixx9cGaFnu9Wd8xr0RFwixASZcvUh2QGnf/1uxYmyetDzhzkEdDKipmZPq/JTB0gLo1Sg59LXkQQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "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/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true - }, - "node_modules/uglify-js": { - "version": "3.0.28", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.28.tgz", - "integrity": "sha512-0h/qGay016GG2lVav3Kz174F3T2Vjlz2v6HCt+WDQpoXfco0hWwF5gHK9yh88mUYvIC+N7Z8NT8WpjSp1yoqGA==", - "dev": true, - "dependencies": { - "commander": "~2.11.0", - "source-map": "~0.5.1" - }, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/uglify-js/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unc-path-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/underscore.string": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.6.tgz", - "integrity": "sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==", - "dev": true, - "dependencies": { - "sprintf-js": "^1.1.1", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": "*" - } - }, - "node_modules/underscore.string/node_modules/sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "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, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/uri-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/uri-path/-/uri-path-1.0.0.tgz", - "integrity": "sha512-8pMuAn4KacYdGMkFaoQARicp4HSw24/DHOVKWqVRJ8LhhAwPPFpdGvdL9184JVmUwe7vz7Z9n6IqI6t5n2ELdg==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/v8flags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", - "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", - "dev": true, - "dependencies": { - "homedir-polyfill": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/verror/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "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/wkt-parser": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.3.tgz", - "integrity": "sha512-ZnV3yH8/k58ZPACOXeiHaMuXIiaTk1t0hSUVisbO0t4RjA5wPpUytcxeyiN2h+LZRrmuHIh/1UlrR9e7DHDvTw==" - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - "dev": true - }, - "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/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - } - }, - "dependencies": { - "abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", - "dev": true - }, - "array-slice": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "basic-auth": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", - "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", - "dev": true, - "requires": { - "safe-buffer": "5.1.2" - } - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "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, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-stdout": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", - "integrity": "sha512-7Rfk377tpSM9TWBEeHs0FlDZGoAIei2V/4MdZJoFMBFAK6BqLpxAIUepGRHGdPFgGsLb02PXovC4qddyHvQqTg==", - "dev": true - }, - "browserify-zlib": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "integrity": "sha512-19OEpq7vWgsH6WkvkBJQDFvJS1uPcbFOQ4v9CU839dO+ZZXUZO6XpE6hNCqvlIIj+4fZvRiJ6DsAQ382GwiyTQ==", - "dev": true, - "requires": { - "pako": "~0.2.0" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true - }, - "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 - }, - "builtin-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-2.0.0.tgz", - "integrity": "sha512-3U5kUA5VPsRUA3nofm/BXX7GVHKfxz0hOBAPxXrIvHzlDRkQVqEn6yi8QJegxl4LzOHLdvb7XF5dVawa/VVYBg==", - "dev": true - }, - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true - }, - "chai": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz", - "integrity": "sha512-YTHf80rJ8M5/cJoFKEV1y3PnexbGs0vSHjouRRU8gLM05Nc3Mqq9zor/P4SCqB/sgvKRLvya7wHLC1XQ9pTjgQ==", - "dev": true, - "requires": { - "assertion-error": "^1.0.1", - "check-error": "^1.0.1", - "deep-eql": "^3.0.0", - "get-func-name": "^2.0.0", - "pathval": "^1.0.0", - "type-detect": "^4.0.0" - } - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==", - "dev": true - }, - "cli": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cli/-/cli-1.0.1.tgz", - "integrity": "sha512-41U72MB56TfUMGndAKK8vJ78eooOD4Z5NOL4xEfjc0c23s+6EYKXlXsmACBVclLP1yOfWCgEganVzddVrSNoTg==", - "dev": true, - "requires": { - "exit": "0.1.2", - "glob": "^7.1.1" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - } - }, - "connect-livereload": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.5.4.tgz", - "integrity": "sha512-3KnRwsWf4VmP01I4hCDQqTc4e2UxOvJIi8i08GiwqX2oymzxNFY7PqjFkwHglYTJ0yzUJkO5yqdPxVaIz3Pbug==", - "dev": true - }, - "console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha512-duS7VP5pvfsNLDvL1O4VOEbw37AI3A4ZUQYemvDlnpGrNu9tprR7BYWpDYwC0Xia0Zxz5ZupdiIrUp0GH1aXfg==", - "dev": true, - "requires": { - "date-now": "^0.1.4" - } - }, - "core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true - }, - "curl-amd": { - "version": "0.8.12", - "resolved": "https://registry.npmjs.org/curl-amd/-/curl-amd-0.8.12.tgz", - "integrity": "sha512-7rTMBicetW3SM6syQfp76U91/TRPRYKz32OfaA0OH2E/EXXOnpvY44x+neGT5UFW8S8Fq5hjkYWe8KOGwLZuVA==", - "dev": true - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha512-AsElvov3LoNB7tf5k37H2jYSB+ZZPMT5sG2QjJCcdlV5chIv6htBUBUui2IKRjgtKAKtCBN7Zbwa+MtwLjSeNw==", - "dev": true - }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "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 - }, - "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "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 - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true - }, - "detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", - "dev": true - }, - "diff": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz", - "integrity": "sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww==", - "dev": true - }, - "dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" - }, - "dependencies": { - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - } - } - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true - }, - "domhandler": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.3.0.tgz", - "integrity": "sha512-q9bUwjfp7Eif8jWxxxPSykdRZAb6GkguBGSgvvCrhI9wB71W2K/Kvv4E61CF/mcCfnVJDeDWx/Vb/uAqbDj6UQ==", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==", - "dev": true, - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true - }, - "entities": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.0.0.tgz", - "integrity": "sha512-LbLqfXgJMmy81t+7c14mnulFHJ170cM6E+0vMXR9k/ZiZwgX8i5pNgjTCX3SO4VeUsFLV+8InixoretwU+MjBQ==", - "dev": true - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "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 - }, - "escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==", - "dev": true, - "requires": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.2.0" - } - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", - "dev": true - }, - "estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==", - "dev": true - }, - "estree-walker": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", - "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true - }, - "eventemitter2": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==", - "dev": true - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extract-zip": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", - "dev": true, - "requires": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true - }, - "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 - }, - "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 - }, - "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 - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "requires": { - "pend": "~1.2.0" - } - }, - "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - } - }, - "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, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "findup-sync": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha512-z8Nrwhi6wzxNMIbxlrTzuUW6KWuKkogZ/7OdDVq+0+kxn77KUH1nipx8iU6suqkHqc4y6n7a9A8IpmxY/pTjWg==", - "dev": true, - "requires": { - "glob": "~5.0.0" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "fined": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", - "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "is-plain-object": "^2.0.3", - "object.defaults": "^1.1.0", - "object.pick": "^1.2.0", - "parse-filepath": "^1.0.1" - } - }, - "flagged-respawn": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", - "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", - "dev": true - }, - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true - }, - "fs-extra": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz", - "integrity": "sha512-VerQV6vEKuhDWD2HGOybV6v5I73syoc/cXAbKlgTC7M/oFVEtklWlp9QH2Ijw3IaWDOQcMkldSPa7zXy79Z/UQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0" - } - }, - "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 - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==", - "dev": true - }, - "getobject": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", - "integrity": "sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - }, - "dependencies": { - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "growl": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz", - "integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==", - "dev": true - }, - "grunt": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz", - "integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==", - "dev": true, - "requires": { - "dateformat": "~3.0.3", - "eventemitter2": "~0.4.13", - "exit": "~0.1.2", - "findup-sync": "~0.3.0", - "glob": "~7.1.6", - "grunt-cli": "~1.4.3", - "grunt-known-options": "~2.0.0", - "grunt-legacy-log": "~3.0.0", - "grunt-legacy-util": "~2.0.1", - "iconv-lite": "~0.4.13", - "js-yaml": "~3.14.0", - "minimatch": "~3.0.4", - "mkdirp": "~1.0.4", - "nopt": "~3.0.6", - "rimraf": "~3.0.2" - }, - "dependencies": { - "grunt-cli": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.3.tgz", - "integrity": "sha512-9Dtx/AhVeB4LYzsViCjUQkd0Kw0McN2gYpdmGYKtE2a5Yt7v1Q+HYZVWhqXc/kGnxlMtqKDxSwotiGeFmkrCoQ==", - "dev": true, - "requires": { - "grunt-known-options": "~2.0.0", - "interpret": "~1.1.0", - "liftup": "~3.0.1", - "nopt": "~4.0.1", - "v8flags": "~3.2.0" - }, - "dependencies": { - "nopt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", - "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", - "dev": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - } - } - } - } - }, - "grunt-cli": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz", - "integrity": "sha512-8oM6ZAe4yG8Y7co/Ejc9613AixyN+gdCADyAFvJ1BbHGvrNa0ltaqrEWXV9P/W0gbQbAh3C8swJIaDuAX7syiw==", - "dev": true, - "requires": { - "findup-sync": "~0.3.0", - "grunt-known-options": "~1.1.0", - "nopt": "~3.0.6", - "resolve": "~1.1.0" - }, - "dependencies": { - "grunt-known-options": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", - "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", - "dev": true - } - } - }, - "grunt-contrib-connect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/grunt-contrib-connect/-/grunt-contrib-connect-1.0.2.tgz", - "integrity": "sha512-7OPoyfGrpOYzuiRPzGyzWDe/xFcjttXe1ztVSFS8TAVBtpfXeeOV9RiwuyqA4yN1UeOG2Pnpx8s0DcUDAu21Gw==", - "dev": true, - "requires": { - "async": "^1.5.2", - "connect": "^3.4.0", - "connect-livereload": "^0.5.0", - "http2": "^3.3.4", - "morgan": "^1.6.1", - "opn": "^4.0.0", - "portscanner": "^1.0.0", - "serve-index": "^1.7.1", - "serve-static": "^1.10.0" - } - }, - "grunt-contrib-jshint": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-3.2.0.tgz", - "integrity": "sha512-pcXWCSZWfoMSvcV4BwH21TUtLtcX0Ms8IGuOPIcLeXK3fud9KclY7iqMKY94jFx8TxZzh028YYtpR+io8DiEaQ==", - "dev": true, - "requires": { - "chalk": "~4.1.2", - "hooker": "^0.2.3", - "jshint": "~2.13.4" - }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "grunt-contrib-uglify": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-3.1.0.tgz", - "integrity": "sha512-4Dx6HOI4ipP4wOqHZEGYYLmBGMccfS6XAI8OOBCiLhLEN54CtxVdCYgT83dPdhxLpXFhNpG89frRjfqcos4H5w==", - "dev": true, - "requires": { - "chalk": "^1.0.0", - "maxmin": "^1.1.0", - "uglify-js": "~3.0.4", - "uri-path": "^1.0.0" - } - }, - "grunt-known-options": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-2.0.0.tgz", - "integrity": "sha512-GD7cTz0I4SAede1/+pAbmJRG44zFLPipVtdL9o3vqx9IEyb7b4/Y3s7r6ofI3CchR5GvYJ+8buCSioDv5dQLiA==", - "dev": true - }, - "grunt-legacy-log": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-3.0.0.tgz", - "integrity": "sha512-GHZQzZmhyq0u3hr7aHW4qUH0xDzwp2YXldLPZTCjlOeGscAOWWPftZG3XioW8MasGp+OBRIu39LFx14SLjXRcA==", - "dev": true, - "requires": { - "colors": "~1.1.2", - "grunt-legacy-log-utils": "~2.1.0", - "hooker": "~0.2.3", - "lodash": "~4.17.19" - } - }, - "grunt-legacy-log-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.1.0.tgz", - "integrity": "sha512-lwquaPXJtKQk0rUM1IQAop5noEpwFqOXasVoedLeNzaibf/OPWjKYvvdqnEHNmU+0T0CaReAXIbGo747ZD+Aaw==", - "dev": true, - "requires": { - "chalk": "~4.1.0", - "lodash": "~4.17.19" - }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "grunt-legacy-util": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-2.0.1.tgz", - "integrity": "sha512-2bQiD4fzXqX8rhNdXkAywCadeqiPiay0oQny77wA2F3WF4grPJXCvAcyoWUJV+po/b15glGkxuSiQCK299UC2w==", - "dev": true, - "requires": { - "async": "~3.2.0", - "exit": "~0.1.2", - "getobject": "~1.0.0", - "hooker": "~0.2.3", - "lodash": "~4.17.21", - "underscore.string": "~3.3.5", - "which": "~2.0.2" - }, - "dependencies": { - "async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - } - } - }, - "grunt-mocha-phantomjs": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/grunt-mocha-phantomjs/-/grunt-mocha-phantomjs-4.0.0.tgz", - "integrity": "sha512-yYChubnh9MRcSx82vW9BhBcfyPUanfEzGA91LFbXvppHV6gIXYxugja2V2Awo6LCmrp26w6lVqYdkbZ3GO2gcw==", - "dev": true, - "requires": { - "async": "^1.5.2", - "mocha-phantomjs-core": "^1.3.0", - "object-assign": "^4.1.0", - "phantomjs-prebuilt": "^2.1.3" - } - }, - "grunt-rollup": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/grunt-rollup/-/grunt-rollup-6.0.0.tgz", - "integrity": "sha512-nICpGA4CbgNtvdNMNPoytV+Fa9MJuhRSVk4Odfcw7v6lrJmfZw4iJniNBeZrYkW09gT7qADylIivJaVqzF4fmA==", - "dev": true, - "requires": { - "rollup": "0.50.0" - }, - "dependencies": { - "rollup": { - "version": "0.50.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.50.0.tgz", - "integrity": "sha512-7RqCBQ9iwsOBPkjYgoIaeUij606mSkDMExP0NT7QDI3bqkHYQHrQ83uoNIXwPcQm/vP2VbsUz3kiyZZ1qPlLTQ==", - "dev": true - } - } - }, - "gzip-size": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-1.0.0.tgz", - "integrity": "sha512-mu66twX6zg8WB6IPfUtrquS7fjwGnDJ7kdVcggd5rpjwBItQKjHtvhu6VcQMkqPYAR7DjWpEaN3xiBSNmxvzPg==", - "dev": true, - "requires": { - "browserify-zlib": "^0.1.4", - "concat-stream": "^1.4.1" - } - }, - "handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", - "dev": true, - "requires": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4", - "wordwrap": "^1.0.0" - }, - "dependencies": { - "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 - }, - "uglify-js": { - "version": "3.17.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", - "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", - "dev": true, - "optional": true - } - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "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 - }, - "hasha": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz", - "integrity": "sha512-jZ38TU/EBiGKrmyTNNZgnvCZHNowiRI4+w/I9noMlekHTZH3KyGgvJLmhSgykeAQ9j2SYPDosM0Bg3wHfzibAQ==", - "dev": true, - "requires": { - "is-stream": "^1.0.1", - "pinkie-promise": "^2.0.0" - } - }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha512-z/GDPjlRMNOa2XJiB4em8wJpuuBfrFOlYKTZxtpkdr1uPdibHI8rYA3MY0KDObpVyaes0e/aunid/t88ZI2EKA==", - "dev": true - }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "hooker": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha512-t+UerCsQviSymAInD01Pw+Dn/usmz1sRO+3Zk1+lx8eg+WKpD2ulcwWqHHL0+aseRBr+3+vIhiG1K1JTwaIcTA==", - "dev": true - }, - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "htmlparser2": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.3.tgz", - "integrity": "sha512-hBxEg3CYXe+rPIua8ETe7tmG3XDn9B0edOE/e9wH2nLczxzgdu0m0aNHY+5wFZiviLWLdANPJTssa92dMcXQ5Q==", - "dev": true, - "requires": { - "domelementtype": "1", - "domhandler": "2.3", - "domutils": "1.5", - "entities": "1.0", - "readable-stream": "1.1" - } - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "dependencies": { - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "http2": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/http2/-/http2-3.3.7.tgz", - "integrity": "sha512-puSi8M8WNlFJm9Pk4c/Mbz9Gwparuj3gO9/RRO5zv6piQ0FY+9Qywp0PdWshYgsMJSalixFY7eC6oPu0zRxLAQ==", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "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, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==", - "dev": true - }, - "is-absolute": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", - "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", - "dev": true, - "requires": { - "is-relative": "^1.0.0", - "is-windows": "^1.0.1" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true - }, - "is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true - }, - "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, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", - "dev": true - }, - "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 - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-relative": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", - "dev": true, - "requires": { - "is-unc-path": "^1.0.0" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "is-unc-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", - "dev": true, - "requires": { - "unc-path-regex": "^0.1.2" - } - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", - "dev": true - }, - "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 - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true - }, - "istanbul": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", - "integrity": "sha512-nMtdn4hvK0HjUlzr1DrKSUY8ychprt8dzHOgY2KXsIhHu5PuQQEOTM27gV9Xblyon7aUH/TSFIjRHEODF/FRPg==", - "dev": true, - "requires": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", - "dev": true - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "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, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "dependencies": { - "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 - } - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", - "dev": true - }, - "jshint": { - "version": "2.13.6", - "resolved": "https://registry.npmjs.org/jshint/-/jshint-2.13.6.tgz", - "integrity": "sha512-IVdB4G0NTTeQZrBoM8C5JFVLjV2KtZ9APgybDA1MK73xb09qFs0jCXyQLnCOp1cSZZZbvhq/6mfXHUTaDkffuQ==", - "dev": true, - "requires": { - "cli": "~1.0.0", - "console-browserify": "1.1.x", - "exit": "0.1.x", - "htmlparser2": "3.8.x", - "lodash": "~4.17.21", - "minimatch": "~3.0.2", - "strip-json-comments": "1.0.x" - } - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "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 - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "kew": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz", - "integrity": "sha512-IG6nm0+QtAMdXt9KvbgbGdvY50RSrw+U4sGZg+KlrSKPJEwVE5JVoI3d7RWfSMdBQneRheeAOj3lIjX5VL/9RQ==", - "dev": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.9" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "liftup": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/liftup/-/liftup-3.0.1.tgz", - "integrity": "sha512-yRHaiQDizWSzoXk3APcA71eOI/UuhEkNN9DiW2Tt44mhYzX4joFoCZlxsSOF7RyeLlfqzFLQI1ngFq3ggMPhOw==", - "dev": true, - "requires": { - "extend": "^3.0.2", - "findup-sync": "^4.0.0", - "fined": "^1.2.0", - "flagged-respawn": "^1.0.1", - "is-plain-object": "^2.0.4", - "object.map": "^1.0.1", - "rechoir": "^0.7.0", - "resolve": "^1.19.0" - }, - "dependencies": { - "findup-sync": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", - "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^4.0.2", - "resolve-dir": "^1.0.1" - } - }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - } - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.8" - } - }, - "make-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", - "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", - "dev": true - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true - }, - "maxmin": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/maxmin/-/maxmin-1.1.0.tgz", - "integrity": "sha512-jypoV6wTPuz/ngkc2sDZnFvpvx14QICNKS/jK9RbkmiQQJZ4JWstIszA8iT/z9tPSF/vXQ5qtG0h65N9tiLIKA==", - "dev": true, - "requires": { - "chalk": "^1.0.0", - "figures": "^1.0.1", - "gzip-size": "^1.0.0", - "pretty-bytes": "^1.0.0" - } - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - } - }, - "mgrs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", - "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==" - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", - "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", - "dev": true - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "mocha": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-4.0.1.tgz", - "integrity": "sha512-evDmhkoA+cBNiQQQdSKZa2b9+W2mpLoj50367lhy+Klnx9OV8XlCIhigUnn1gaTFLQCa0kdNhEGDr0hCXOQFDw==", - "dev": true, - "requires": { - "browser-stdout": "1.3.0", - "commander": "2.11.0", - "debug": "3.1.0", - "diff": "3.3.1", - "escape-string-regexp": "1.0.5", - "glob": "7.1.2", - "growl": "1.10.3", - "he": "1.1.1", - "mkdirp": "0.5.1", - "supports-color": "4.4.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "glob": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng==", - "dev": true - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha512-miQKw5Hv4NS1Psg2517mV4e4dYNaO3++hjAvLOAzKqZ61rH8NS1SK+vbfBWZ5PY/Me/bEWhUwqMghEW5Fb9T7Q==", - "dev": true - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha512-SknJC52obPfGQPnjIkXbmA6+5H15E+fR+E4iR2oQ3zzCLbd7/ONua69R/Gw7AgkTLsRG+r5fzksYwWe1AgTyWA==", - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "supports-color": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", - "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "dev": true, - "requires": { - "has-flag": "^2.0.0" - } - } - } - }, - "mocha-phantomjs-core": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mocha-phantomjs-core/-/mocha-phantomjs-core-1.3.1.tgz", - "integrity": "sha512-Jz/3d3WnZw3A5kygxiRsPkNpSK8p5ki20oCjtLlVq8SZAaXKisbH/HOCeuK8lkSJf4hHEoPZkzU/5yxVuf1AIg==", - "dev": true - }, - "morgan": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz", - "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==", - "dev": true, - "requires": { - "basic-auth": "~2.0.1", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-finished": "~2.3.0", - "on-headers": "~1.0.2" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - } - } - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true - }, - "object.defaults": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", - "dev": true, - "requires": { - "array-each": "^1.0.1", - "array-slice": "^1.0.0", - "for-own": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "object.map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==", - "dev": true, - "requires": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true - }, - "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, - "requires": { - "wrappy": "1" - } - }, - "opn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", - "integrity": "sha512-iPBWbPP4OEOzR1xfhpGLDh+ypKBOygunZhM9jBtA7FS5sKjEiMZw0EFb82hnDOmTZX90ZWLoZKUza4cVt8MexA==", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==", - "dev": true - }, - "parse-filepath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", - "dev": true, - "requires": { - "is-absolute": "^1.0.0", - "map-cache": "^0.2.0", - "path-root": "^0.1.1" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", - "dev": true - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "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 - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-root": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", - "dev": true, - "requires": { - "path-root-regex": "^0.1.0" - } - }, - "path-root-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", - "dev": true - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true - }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "phantomjs-prebuilt": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz", - "integrity": "sha512-PIiRzBhW85xco2fuj41FmsyuYHKjKuXWmhjy3A/Y+CMpN/63TV+s9uzfVhsUwFe0G77xWtHBG8xmXf5BqEUEuQ==", - "dev": true, - "requires": { - "es6-promise": "^4.0.3", - "extract-zip": "^1.6.5", - "fs-extra": "^1.0.0", - "hasha": "^2.2.0", - "kew": "^0.7.0", - "progress": "^1.1.8", - "request": "^2.81.0", - "request-progress": "^2.0.1", - "which": "^1.2.10" - }, - "dependencies": { - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "portscanner": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-1.2.0.tgz", - "integrity": "sha512-3MCx40XO6ChNJJHw1tTFukQK/M/8FacGZK/vGbnrKpozObrJzembYtfi7ZdA2hkF2Lojg77XhsKUPvF8eHKcDA==", - "dev": true, - "requires": { - "async": "1.5.2" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true - }, - "pretty-bytes": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-1.0.4.tgz", - "integrity": "sha512-LNisJvAjy+hruxp3GV4IkZZscTI34+ISfeM1hesB9V6ezIDfXYrBi9TIXVjjMcEB4QFN7tL+dFDEk4s8jMBMyA==", - "dev": true, - "requires": { - "get-stdin": "^4.0.1", - "meow": "^3.1.0" - } - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw==", - "dev": true - }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "rechoir": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", - "dev": true, - "requires": { - "resolve": "^1.9.0" - }, - "dependencies": { - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - } - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "request-progress": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz", - "integrity": "sha512-dxdraeZVUNEn9AvLrxkgB2k6buTlym71dJk1fk4v8j3Ou3RKNm07BcgbHdj2lLgYGfqX71F+awb1MR+tWPFJzA==", - "dev": true, - "requires": { - "throttleit": "^1.0.0" - } - }, - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==", - "dev": true - }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - } - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "rollup": { - "version": "0.50.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.50.1.tgz", - "integrity": "sha512-XwrnqjSTk+yR8GbP6hiJuVe83MVmBw/gm4P3qP34A10fRXvv6ppl0ZUg1+Pj1tIZSR/aw5ZaILLEiVxwXIAdAw==", - "dev": true - }, - "rollup-plugin-json": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-2.3.1.tgz", - "integrity": "sha512-alQQQVPo2z9pl6LSK8QqyDlWwCH5KeE8YxgQv7fa/SeTxz+gQe36jBjcha7hQW68MrVh9Ms71EQaMZDAG3w2yw==", - "dev": true, - "requires": { - "rollup-pluginutils": "^2.0.1" - } - }, - "rollup-plugin-node-resolve": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.4.0.tgz", - "integrity": "sha512-PJcd85dxfSBWih84ozRtBkB731OjXk0KnzN0oGp7WOWcarAFkVa71cV5hTJg2qpVsV2U8EUwrzHP3tvy9vS3qg==", - "dev": true, - "requires": { - "builtin-modules": "^2.0.0", - "is-module": "^1.0.0", - "resolve": "^1.1.6" - } - }, - "rollup-plugin-replace": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-replace/-/rollup-plugin-replace-2.2.0.tgz", - "integrity": "sha512-/5bxtUPkDHyBJAKketb4NfaeZjL5yLZdeUihSfbF2PQMz+rSTEb8ARKoOl3UBT4m7/X+QOXJo3sLTcq+yMMYTA==", - "dev": true, - "requires": { - "magic-string": "^0.25.2", - "rollup-pluginutils": "^2.6.0" - } - }, - "rollup-pluginutils": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", - "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", - "dev": true, - "requires": { - "estree-walker": "^0.6.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "dependencies": { - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - } - }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - } - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "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 - }, - "source-map": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA==", - "dev": true, - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - }, - "sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", - "dev": true - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - }, - "string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/string/-/string-1.6.1.tgz", - "integrity": "sha512-HjS4ixm3n26s7G7aj7frqsiiM/lA1vz4zoOMHD6CfT7niMZv3nqspyKWAdnYBklKQM7xYuGfUn3jDLR18WlsPQ==", - "dev": true - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "strip-json-comments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.4.tgz", - "integrity": "sha512-AOPG8EBc5wAikaG1/7uFCNFJwnKOuQwFTpYBdTW6OvWHeZBQBrAA/amefHGrEiOnCPcLFZK6FUPtWVKpQVIRgg==", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==", - "dev": true - }, - "tin": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/tin/-/tin-0.5.0.tgz", - "integrity": "sha512-lHhMm3Fy0+g9EBkH6+C6b8V5lm9SmvtpMO2scLAg/Fo0Ou94ogxDGf3PL6T2o7bgQMfYm9UAT6+U1Ppy/6CHZw==", - "dev": true, - "requires": { - "commander": "~2.0.0", - "semver": "~2.2.1", - "string": "~1.6.0" - }, - "dependencies": { - "commander": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz", - "integrity": "sha512-qebjpyeaA/nJ4w3EO2cV2++/zEkccPnjWogzA2rff+Lk8ILI75vULeTmyd4wPxWdKwtP3J+G39IXVZadh0UHyw==", - "dev": true - }, - "semver": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-2.2.1.tgz", - "integrity": "sha512-zM5SE887Z8Ixx9cGaFnu9Wd8xr0RFwixASZcvUh2QGnf/1uxYmyetDzhzkEdDKipmZPq/JTB0gLo1Sg59LXkQQ==", - "dev": true - } - } - }, - "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, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true - }, - "uglify-js": { - "version": "3.0.28", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.28.tgz", - "integrity": "sha512-0h/qGay016GG2lVav3Kz174F3T2Vjlz2v6HCt+WDQpoXfco0hWwF5gHK9yh88mUYvIC+N7Z8NT8WpjSp1yoqGA==", - "dev": true, - "requires": { - "commander": "~2.11.0", - "source-map": "~0.5.1" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true - } - } - }, - "unc-path-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", - "dev": true - }, - "underscore.string": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.6.tgz", - "integrity": "sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==", - "dev": true, - "requires": { - "sprintf-js": "^1.1.1", - "util-deprecate": "^1.0.2" - }, - "dependencies": { - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true - } - } - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "uri-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/uri-path/-/uri-path-1.0.0.tgz", - "integrity": "sha512-8pMuAn4KacYdGMkFaoQARicp4HSw24/DHOVKWqVRJ8LhhAwPPFpdGvdL9184JVmUwe7vz7Z9n6IqI6t5n2ELdg==", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "v8flags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", - "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "dependencies": { - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true - } - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wkt-parser": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.3.tgz", - "integrity": "sha512-ZnV3yH8/k58ZPACOXeiHaMuXIiaTk1t0hSUVisbO0t4RjA5wPpUytcxeyiN2h+LZRrmuHIh/1UlrR9e7DHDvTw==" - }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - "dev": true - }, - "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 - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - } - } -} diff --git a/proj4js-master/package.json b/proj4js-master/package.json deleted file mode 100644 index 442faefb..00000000 --- a/proj4js-master/package.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "name": "proj4", - "version": "2.12.2-alpha", - "description": "Proj4js is a JavaScript library to transform point coordinates from one coordinate system to another, including datum transformations.", - "homepage": "https://proj4js.github.io/proj4js/", - "main": "dist/proj4-src.js", - "module": "lib/index.js", - "directories": { - "test": "test", - "doc": "docs" - }, - "scripts": { - "prepare": "grunt", - "build": "grunt", - "build:tmerc": "grunt build:tmerc", - "test": "npm run build && istanbul test node_modules/mocha/bin/_mocha test/test.js" - }, - "repository": { - "type": "git", - "url": "git://github.com/proj4js/proj4js.git" - }, - "author": "", - "license": "MIT", - "devDependencies": { - "chai": "~4.1.2", - "curl-amd": "^0.8.12", - "grunt": "^1.0.1", - "grunt-cli": "~1.2.0", - "grunt-contrib-connect": "~1.0.2", - "grunt-contrib-jshint": "~3.2.0", - "grunt-contrib-uglify": "~3.1.0", - "grunt-mocha-phantomjs": "~4.0.0", - "grunt-rollup": "^6.0.0", - "istanbul": "~0.4.5", - "mocha": "~4.0.0", - "rollup": "^0.50.0", - "rollup-plugin-json": "^2.3.0", - "rollup-plugin-node-resolve": "^3.0.0", - "rollup-plugin-replace": "^2.0.0", - "tin": "~0.5.0" - }, - "dependencies": { - "mgrs": "1.0.0", - "wkt-parser": "^1.3.3" - } -} diff --git a/proj4js-master/publish.sh b/proj4js-master/publish.sh deleted file mode 100755 index d4ad0780..00000000 --- a/proj4js-master/publish.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -# get current version -VERSION=$(node -e "console.log(require('./package.json').version)") - -# Build -git checkout -b build -node_modules/.bin/grunt -git add dist -f -git commit -m "build $VERSION" - -# Tag and push -git tag -f v$VERSION -m "v$VERSION" -git push --tags git@github.com:proj4js/proj4js.git $VERSION - -# Publish -npm publish - -# Cleanup -git checkout master -git branch -D build diff --git a/proj4js-master/test/BETA2007.gsb b/proj4js-master/test/BETA2007.gsb deleted file mode 100644 index 69cd3346164266d56d9756a35026b0a615e02a94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83696 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 UhWPx~qdaiLfHwa;YW)B4Kc0^;4FCWD diff --git a/proj4js-master/test/amd.html b/proj4js-master/test/amd.html deleted file mode 100644 index 477a1d7a..00000000 --- a/proj4js-master/test/amd.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - Mocha Tests - - - - -
- - - - - - - diff --git a/proj4js-master/test/opt.html b/proj4js-master/test/opt.html deleted file mode 100644 index a0abcd56..00000000 --- a/proj4js-master/test/opt.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - Mocha Tests - - -
- - - - - - - - \ No newline at end of file diff --git a/proj4js-master/test/package.json.js b/proj4js-master/test/package.json.js deleted file mode 100644 index b82c0d23..00000000 --- a/proj4js-master/test/package.json.js +++ /dev/null @@ -1 +0,0 @@ -define({version : "curl is dumb"}); \ No newline at end of file diff --git a/proj4js-master/test/test.js b/proj4js-master/test/test.js deleted file mode 100644 index 514c12d2..00000000 --- a/proj4js-master/test/test.js +++ /dev/null @@ -1,567 +0,0 @@ -// You can do this in the grunt config for each mocha task, see the `options` config - - -// Start the main app logic. - -function startTests(chai, proj4, testPoints) { - - - var assert = chai.assert; - proj4.defs([ - ["EPSG:102018", "+proj=gnom +lat_0=90 +lon_0=0 +x_0=6300000 +y_0=6300000 +ellps=WGS84 +datum=WGS84 +units=m +no_defs"], - ["testmerc", "+proj=merc +lon_0=5.937 +lat_ts=45.027 +ellps=sphere"], - ["testmerc2", "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +units=m +k=1.0 +nadgrids=@null +no_defs"] - ]); - proj4.defs('esriOnline', 'PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]]'); - - describe('parse', function() { - it('should parse units', function() { - assert.equal(proj4.defs('testmerc2').units, 'm'); - }); - }); - - describe('proj2proj', function() { - it('should work transforming from one projection to another', function() { - var sweref99tm = '+proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs'; - var rt90 = '+lon_0=15.808277777799999 +lat_0=0.0 +k=1.0 +x_0=1500000.0 +y_0=0.0 +proj=tmerc +ellps=bessel +units=m +towgs84=414.1,41.3,603.1,-0.855,2.141,-7.023,0 +no_defs'; - var rslt = proj4(sweref99tm, rt90).forward([319180, 6399862]); - assert.closeTo(rslt[0], 1271137.927561178, 0.000001); - assert.closeTo(rslt[1], 6404230.291456626, 0.000001); - }); - it('should work with a proj object', function() { - var sweref99tm = proj4('+proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs'); - var rt90 = proj4('+lon_0=15.808277777799999 +lat_0=0.0 +k=1.0 +x_0=1500000.0 +y_0=0.0 +proj=tmerc +ellps=bessel +units=m +towgs84=414.1,41.3,603.1,-0.855,2.141,-7.023,0 +no_defs'); - var rslt = proj4(sweref99tm, rt90).forward([319180, 6399862]); - assert.closeTo(rslt[0], 1271137.927561178, 0.000001); - assert.closeTo(rslt[1], 6404230.291456626, 0.000001); - }); - }); - - describe('proj4', function() { - describe('core', function() { - testPoints.forEach(function(testPoint) { - describe(testPoint.code, function() { - var xyAcc = 2, - llAcc = 6; - if ('acc' in testPoint) { - if ('xy' in testPoint.acc) { - xyAcc = testPoint.acc.xy; - } - if ('ll' in testPoint.acc) { - llAcc = testPoint.acc.ll; - } - } - var xyEPSLN = Math.pow(10, - 1 * xyAcc); - var llEPSLN = Math.pow(10, - 1 * llAcc); - describe('traditional', function() { - it('should work with forwards', function() { - var proj = new proj4.Proj(testPoint.code); - var xy = proj4.transform(proj4.WGS84, proj, proj4.toPoint(testPoint.ll)); - assert.closeTo(xy.x, testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy.y, testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('should work with backwards', function() { - var proj = new proj4.Proj(testPoint.code); - var ll = proj4.transform(proj, proj4.WGS84, proj4.toPoint(testPoint.xy)); - assert.closeTo(ll.x, testPoint.ll[0], llEPSLN, 'lng is close'); - assert.closeTo(ll.y, testPoint.ll[1], llEPSLN, 'lat is close'); - }); - }); - describe('new method 2 param', function() { - it('shortcut method should work with an array', function() { - var xy = proj4(testPoint.code, testPoint.ll); - assert.closeTo(xy[0], testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy[1], testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('shortcut method should work with an object', function() { - var pt = { - x: testPoint.ll[0], - y: testPoint.ll[1] - }; - var xy = proj4(testPoint.code, pt); - assert.closeTo(xy.x, testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy.y, testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('shortcut method should work with a point object', function() { - var pt = proj4.toPoint(testPoint.ll); - var xy = proj4(testPoint.code, pt); - assert.closeTo(xy.x, testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy.y, testPoint.xy[1], xyEPSLN, 'y is close'); - }); - }); - describe('new method 3 param', function() { - it('shortcut method should work with an array', function() { - var xy = proj4(proj4.WGS84, testPoint.code, testPoint.ll); - assert.closeTo(xy[0], testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy[1], testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('shortcut method should work with an object', function() { - var pt = { - x: testPoint.ll[0], - y: testPoint.ll[1] - }; - var xy = proj4(proj4.WGS84, testPoint.code, pt); - assert.closeTo(xy.x, testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy.y, testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('shortcut method should work with a point object', function() { - var pt = proj4.toPoint(testPoint.ll); - var xy = proj4(proj4.WGS84, testPoint.code, pt); - assert.closeTo(xy.x, testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy.y, testPoint.xy[1], xyEPSLN, 'y is close'); - }); - }); - describe('new method 3 param other way', function() { - it('shortcut method should work with an array', function() { - var ll = proj4(testPoint.code, proj4.WGS84, testPoint.xy); - assert.closeTo(ll[0], testPoint.ll[0], llEPSLN, 'x is close'); - assert.closeTo(ll[1], testPoint.ll[1], llEPSLN, 'y is close'); - }); - it('shortcut method should work with an object', function() { - var pt = { - x: testPoint.xy[0], - y: testPoint.xy[1] - }; - // in case of geocentric proj we need Z value. - if (typeof testPoint.xy[2] === 'number') { - pt.z = testPoint.xy[2] - } - var ll = proj4(testPoint.code, proj4.WGS84, pt); - assert.closeTo(ll.x, testPoint.ll[0], llEPSLN, 'x is close'); - assert.closeTo(ll.y, testPoint.ll[1], llEPSLN, 'y is close'); - }); - it('shortcut method should work with a point object', function() { - var pt = proj4.toPoint(testPoint.xy); - var ll = proj4(testPoint.code, proj4.WGS84, pt); - assert.closeTo(ll.x, testPoint.ll[0], llEPSLN, 'x is close'); - assert.closeTo(ll.y, testPoint.ll[1], llEPSLN, 'y is close'); - }); - }); - describe('1 param', function() { - it('forwards', function() { - var xy = proj4(testPoint.code).forward(testPoint.ll); - assert.closeTo(xy[0], testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy[1], testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('inverse', function() { - var ll = proj4(testPoint.code).inverse(testPoint.xy); - assert.closeTo(ll[0], testPoint.ll[0], llEPSLN, 'x is close'); - assert.closeTo(ll[1], testPoint.ll[1], llEPSLN, 'y is close'); - }); - }); - describe('proj object', function() { - it('should work with a 2 element array', function() { - const ll = [testPoint.ll[0], testPoint.ll[1]]; - Object.freeze(ll); - var xy = proj4(new proj4.Proj(testPoint.code), ll); - assert.closeTo(xy[0], testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy[1], testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('should work wit a 3 element array', function() { - const llz = [testPoint.ll[0], testPoint.ll[1], 0]; - Object.freeze(llz); - var xy = proj4(new proj4.Proj(testPoint.code), llz); - assert.closeTo(xy[0], testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy[1], testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('should work on element', function() { - var xy = proj4(new proj4.Proj(testPoint.code)).forward(testPoint.ll); - assert.closeTo(xy[0], testPoint.xy[0], xyEPSLN, 'x is close'); - assert.closeTo(xy[1], testPoint.xy[1], xyEPSLN, 'y is close'); - }); - it('should work 3 element point object', function() { - var pt = proj4.toPoint(testPoint.xy); - var ll = proj4(new proj4.Proj(testPoint.code), proj4.WGS84, pt); - assert.closeTo(ll.x, testPoint.ll[0], llEPSLN, 'x is close'); - assert.closeTo(ll.y, testPoint.ll[1], llEPSLN, 'y is close'); - }); - }); - describe('proj coord object', function() { - it('should not be modified', function() { - var expected = {x: 100000, y: 100000}; - var inpxy = {x: expected.x, y: expected.y}; - proj4('EPSG:3857', proj4.WGS84, inpxy); - - assert.deepEqual(inpxy, expected, "input is unmodified"); - }); - }); - }); - }); - }); - describe('points', function () { - it('should not create a z if none was provided', function() { - const result = proj4( - 'GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]', - 'PROJCS["OSGB 1936 / British National Grid",GEOGCS["OSGB 1936",DATUM["OSGB_1936",SPHEROID["Airy 1830",6377563.396,299.3249646,AUTHORITY["EPSG","7001"]],AUTHORITY["EPSG","6277"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4277"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",49],PARAMETER["central_meridian",-2],PARAMETER["scale_factor",0.9996012717],PARAMETER["false_easting",400000],PARAMETER["false_northing",-100000],AUTHORITY["EPSG","27700"],AXIS["Easting",EAST],AXIS["Northing",NORTH]]', - {x: -0.12793738, y: 51.507747}); - assert.closeTo(result.x, 530018.229301635, 1e-6); - assert.closeTo(result.y, 180418.4380560551, 1e-6); - assert.equal(result.z, undefined); - }); - it('should return null for transform of [0, 0] for EPSG:3413 -> EPSG:3857', function () { - var point = proj4.transform( - proj4.Proj('+proj=stere +lat_0=90 +lat_ts=70 +lon_0=-45 +k=1 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs'), - proj4.Proj('EPSG:3857'), - [0, 0] - ); - assert.strictEqual(point, null); - }); - it('should ignore stuff it does not know', function () { - var sweref99tm = '+proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs'; - var rt90 = '+lon_0=15.808277777799999 +lat_0=0.0 +k=1.0 +x_0=1500000.0 +y_0=0.0 +proj=tmerc +ellps=bessel +units=m +towgs84=414.1,41.3,603.1,-0.855,2.141,-7.023,0 +no_defs'; - var rslt = proj4(sweref99tm, rt90).forward({ - x: 319180, - y: 6399862, - z: 0, - m: 1000, - method: function () { - return 'correct answer'; - } - }); - assert.closeTo(rslt.x, 1271137.927561178, 0.000001); - assert.closeTo(rslt.y, 6404230.291456626, 0.000001); - assert.equal(rslt.z, 0); - assert.equal(rslt.m, 1000); - assert.equal(rslt.method(), 'correct answer'); - }); - it('should be able to compute X Y Z M in geocenteric coordinates', function () { - var epsg4978 = '+proj=geocent +datum=WGS84 +units=m +no_defs'; - var rslt = proj4(epsg4978).forward({ - x: -7.76166, - y: 39.19685, - z: 0, - m: 1000, - method: function () { - return 'correct answer'; - } - }); - assert.closeTo(rslt.x, 4904199.584207411, 0.000001); - assert.closeTo(rslt.y, -668448.8153664203, 0.000001); - assert.closeTo(rslt.z, 4009276.930771821, 0.000001); - assert.equal(rslt.m, 1000); - assert.equal(rslt.method(), 'correct answer'); - }); - }); - describe('points array', function () { - it('should ignore stuff it does not know', function () { - var sweref99tm = '+proj=utm +zone=33 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs'; - var rt90 = '+lon_0=15.808277777799999 +lat_0=0.0 +k=1.0 +x_0=1500000.0 +y_0=0.0 +proj=tmerc +ellps=bessel +units=m +towgs84=414.1,41.3,603.1,-0.855,2.141,-7.023,0 +no_defs'; - var rslt = proj4(sweref99tm, rt90).forward([ - 319180, - 6399862, - 0, - 1000, - ]); - assert.closeTo(rslt[0], 1271137.927561178, 0.000001); - assert.closeTo(rslt[1], 6404230.291456626, 0.000001); - assert.equal(rslt[2], 0); - assert.equal(rslt[3], 1000); - }); - it('should be able to compute X Y Z M in geocenteric coordinates', function () { - var epsg4978 = '+proj=geocent +datum=WGS84 +units=m +no_defs'; - var rslt = proj4(epsg4978).forward([ - -7.76166, - 39.19685, - 0, - 1000 - ]); - assert.closeTo(rslt[0], 4904199.584207411, 0.000001); - assert.closeTo(rslt[1], -668448.8153664203, 0.000001); - assert.closeTo(rslt[2], 4009276.930771821, 0.000001); - assert.equal(rslt[3], 1000); - }); - }); - - it('should use [x,y] axis order', function() { - var enu = 'PROJCS["NAD83 / Massachusetts Mainland", GEOGCS["NAD83", DATUM["North American Datum 1983", SPHEROID["GRS 1980", 6378137.0, 298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], AUTHORITY["EPSG","6269"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic longitude", EAST], AXIS["Geodetic latitude", NORTH], AUTHORITY["EPSG","4269"]], PROJECTION["Lambert_Conformal_Conic_2SP", AUTHORITY["EPSG","9802"]], PARAMETER["central_meridian", -71.5], PARAMETER["latitude_of_origin", 41.0], PARAMETER["standard_parallel_1", 42.68333333333334], PARAMETER["false_easting", 200000.0], PARAMETER["false_northing", 750000.0], PARAMETER["scale_factor", 1.0], PARAMETER["standard_parallel_2", 41.71666666666667], UNIT["m", 1.0], AXIS["Easting", EAST], AXIS["Northing", NORTH], AUTHORITY["EPSG","26986"]]'; - var neu = 'PROJCS["NAD83 / Massachusetts Mainland NE", GEOGCS["NAD83", DATUM["North American Datum 1983", SPHEROID["GRS 1980", 6378137.0, 298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], AUTHORITY["EPSG","6269"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic latitude", NORTH], AXIS["Geodetic longitude", EAST], AUTHORITY["EPSG","4269"]], PROJECTION["Lambert_Conformal_Conic_2SP", AUTHORITY["EPSG","9802"]], PARAMETER["central_meridian", -71.5], PARAMETER["latitude_of_origin", 41.0], PARAMETER["standard_parallel_1", 42.68333333333334], PARAMETER["false_easting", 200000.0], PARAMETER["false_northing", 750000.0], PARAMETER["scale_factor", 1.0], PARAMETER["standard_parallel_2", 41.71666666666667], UNIT["m", 1.0], AXIS["Northing", NORTH], AXIS["Easting", EAST], AUTHORITY["EPSG","26986"]]'; - var rslt = proj4(enu, neu).forward({ - x: 10.2, - y: 43.4 - }); - assert.closeTo(rslt.x, 10.2, 0.000001); - assert.closeTo(rslt.y, 43.4, 0.000001); - }); - - it('should use correct axis order with proj4.transform()', function() { - var enu = 'PROJCS["NAD83 / Massachusetts Mainland", GEOGCS["NAD83", DATUM["North American Datum 1983", SPHEROID["GRS 1980", 6378137.0, 298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], AUTHORITY["EPSG","6269"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic longitude", EAST], AXIS["Geodetic latitude", NORTH], AUTHORITY["EPSG","4269"]], PROJECTION["Lambert_Conformal_Conic_2SP", AUTHORITY["EPSG","9802"]], PARAMETER["central_meridian", -71.5], PARAMETER["latitude_of_origin", 41.0], PARAMETER["standard_parallel_1", 42.68333333333334], PARAMETER["false_easting", 200000.0], PARAMETER["false_northing", 750000.0], PARAMETER["scale_factor", 1.0], PARAMETER["standard_parallel_2", 41.71666666666667], UNIT["m", 1.0], AXIS["Easting", EAST], AXIS["Northing", NORTH], AUTHORITY["EPSG","26986"]]'; - var neu = 'PROJCS["NAD83 / Massachusetts Mainland NE", GEOGCS["NAD83", DATUM["North American Datum 1983", SPHEROID["GRS 1980", 6378137.0, 298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], AUTHORITY["EPSG","6269"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic latitude", NORTH], AXIS["Geodetic longitude", EAST], AUTHORITY["EPSG","4269"]], PROJECTION["Lambert_Conformal_Conic_2SP", AUTHORITY["EPSG","9802"]], PARAMETER["central_meridian", -71.5], PARAMETER["latitude_of_origin", 41.0], PARAMETER["standard_parallel_1", 42.68333333333334], PARAMETER["false_easting", 200000.0], PARAMETER["false_northing", 750000.0], PARAMETER["scale_factor", 1.0], PARAMETER["standard_parallel_2", 41.71666666666667], UNIT["m", 1.0], AXIS["Northing", NORTH], AXIS["Easting", EAST], AUTHORITY["EPSG","26986"]]'; - var rslt = proj4(enu, neu).forward({ - x: 10.2, - y: 43.4 - }, true); - assert.closeTo(rslt.x, 43.4, 0.000001); - assert.closeTo(rslt.y, 10.2, 0.000001); - }); - - it('axes should be invertable with proj4.transform()', function () { - var enu = '+proj=longlat +axis=enu'; - var esu = '+proj=longlat +axis=esu'; - var wnu = '+proj=longlat +axis=wnu'; - var result = proj4(enu, esu).forward({x: 40, y: 50}, true); - assert.closeTo(result.x, 40, 0.000001); - assert.closeTo(result.y, -50, 0.000001); - var result = proj4(enu, wnu).forward({x: 40, y: 50}, true); - assert.closeTo(result.x, -40, 0.000001); - assert.closeTo(result.y, 50, 0.000001); - }); - - describe('defs', function () { - assert.equal(proj4.defs('testmerc'), proj4.defs['testmerc']); - proj4.defs('foo', '+proj=merc +lon_0=5.937 +lat_ts=45.027 +ellps=sphere'); - assert.typeOf(proj4.defs['foo'], 'object'); - proj4.defs('urn:x-ogc:def:crs:EPSG:4326', proj4.defs('EPSG:4326')); - assert.strictEqual(proj4.defs['urn:x-ogc:def:crs:EPSG:4326'], proj4.defs['EPSG:4326']); - - describe('wkt', function () { - it('should provide the correct conversion factor for WKT GEOGCS projections', function () { - proj4.defs('EPSG:4269', 'GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4269"]]'); - assert.equal(proj4.defs['EPSG:4269'].to_meter, 6378137 * 0.01745329251994328); - - proj4.defs('EPSG:4279', 'GEOGCS["OS(SN)80",DATUM["OS_SN_1980",SPHEROID["Airy 1830",6377563.396,299.3249646,AUTHORITY["EPSG","7001"]],AUTHORITY["EPSG","6279"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4279"]]'); - assert.equal(proj4.defs['EPSG:4279'].to_meter, 6377563.396 * 0.01745329251994328); - }); - it('should parse wkt and proj4 of the same crs and result in the same params', function () { - var s1 = 'GEOGCS["PSD93",DATUM["PDO_Survey_Datum_1993",SPHEROID["Clarke 1880 (RGS)",6378249.145,293.465,AUTHORITY["EPSG","7012"]],TOWGS84[-180.624,-225.516,173.919,-0.81,-1.898,8.336,16.7101],AUTHORITY["EPSG","6134"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4134"]]'; - var s2 = '+proj=longlat +ellps=clrk80 +towgs84=-180.624,-225.516,173.919,-0.81,-1.898,8.336,16.7101 +no_defs'; - var crs1 = proj4(s1); - var crs2 = proj4(s2); - assert.equal(crs1.oProj.a, crs2.oProj.a); - // proj4 has different ellipsoid parameters that EPSG: http://epsg.io/4134 - // assert.equal(crs1.oProj.b, crs2.oProj.b); - }); - it('should handled defined points correctly', function () { - var prj = '+proj=utm +zone=31'; - var proj = proj4(prj); - var res = proj.forward([3, 0]); - assert.deepEqual(res, [500000, 0]); - }); - }); - }); - describe('errors', function() { - it('should throw an error for an unknown ref', function() { - assert.throws(function() { - new proj4.Proj('fake one'); - }, 'fake one', 'should work'); - }); - it('should throw when passed null', function() { - assert.throws(function() { - proj4('+proj=utm +zone=31', [null, 0]); - }, 'coordinates must be finite numbers', 'should work'); - }); - it('should throw when passed NaN', function() { - assert.throws(function() { - proj4('+proj=utm +zone=31', [0, NaN]); - }, 'coordinates must be finite numbers', 'should work'); - }); - it('should throw when passed Infinity', function() { - assert.throws(function() { - proj4('+proj=utm +zone=31', [Infinity, 0]); - }, 'coordinates must be finite numbers', 'should work'); - }); - it('should throw when passed -Infinity', function() { - assert.throws(function() { - proj4('+proj=utm +zone=31', [-Infinity, 0]); - }, 'coordinates must be finite numbers', 'should work'); - }); - }); - describe('utility', function() { - it('should have MGRS available in the proj4.util namespace', function() { - assert.typeOf(proj4.mgrs, "object", "MGRS available in the proj4.util namespace"); - }); - it('should have fromMGRS method added to proj4.Point prototype', function() { - assert.typeOf(proj4.Point.fromMGRS, "function", "fromMGRS method added to proj4.Point prototype"); - }); - it('should have toMGRS method added to proj4.Point prototype', function() { - assert.typeOf(proj4.Point.prototype.toMGRS, "function", "toMGRS method added to proj4.Point prototype"); - }); - - describe('First MGRS set', function() { - var mgrs = "33UXP04"; - var point = proj4.Point.fromMGRS(mgrs); - it('Longitude of point from MGRS correct.', function() { - assert.equal(point.x.toPrecision(7), "16.41450", "Longitude of point from MGRS correct."); - }); - it('Latitude of point from MGRS correct.', function() { - assert.equal(point.y.toPrecision(7), "48.24949", "Latitude of point from MGRS correct."); - }); - it('MGRS reference with highest accuracy correct.', function() { - assert.equal(point.toMGRS(), "33UXP0500444998", "MGRS reference with highest accuracy correct."); - }); - it('MGRS reference with 1-digit accuracy correct.', function() { - assert.equal(point.toMGRS(1), mgrs, "MGRS reference with 1-digit accuracy correct."); - }); - }); - describe('Second MGRS set', function() { - var mgrs = "24XWT783908"; // near UTM zone border, so there are two ways to reference this - var point = proj4.Point.fromMGRS(mgrs); - it("Longitude of point from MGRS correct.", function() { - assert.equal(point.x.toPrecision(7), "-32.66433", "Longitude of point from MGRS correct."); - }); - it("Latitude of point from MGRS correct.", function() { - assert.equal(point.y.toPrecision(7), "83.62778", "Latitude of point from MGRS correct."); - }); - it("MGRS reference with 3-digit accuracy correct.", function() { - assert.equal(point.toMGRS(3), "25XEN041865", "MGRS reference with 3-digit accuracy correct."); - }); - }); - describe('Defs and Datum definition', function() { - proj4.defs("EPSG:5514", "+proj=krovak +lat_0=49.5 +lon_0=24.83333333333333 +alpha=30.28813972222222 +k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +pm=greenwich +units=m +no_defs +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56"); - var point = proj4.transform(proj4.Proj("WGS84"), proj4.Proj("EPSG:5514"), - proj4.toPoint([12.806988, 49.452262])); - it("Longitude of point from WGS84 correct.", function() { - assert.equal(point.x.toPrecision(8), "-868208.61", "Longitude of point from WGS84 correct."); - }); - it("Latitude of point from WGS84 correct.", function() { - assert.equal(point.y.toPrecision(9), "-1095793.64", "Latitude of point from WGS84 correct."); - }); - var point2 = proj4.transform(proj4.Proj("WGS84"), proj4.Proj("EPSG:5514"), - proj4.toPoint([12.806988, 49.452262])); - it("Longitude of point from WGS84 with second call for EPSG:5514 correct.", function() { - assert.equal(point2.x.toPrecision(8), "-868208.61", "Longitude of point from WGS84 correct."); - }); - it("Latitude of point from WGS84 with second call for EPSG:5514 correct.", function() { - assert.equal(point2.y.toPrecision(9), "-1095793.64", "Latitude of point from WGS84 correct."); - }); - }); - }); - - describe('Nadgrids BETA2007', function() { - var tests = [ - ['EPSG:31466', 'EPSG:4326', 2559552, 5670982, 6.850861772, 51.170707759, 0.0000001, 0.01], - ['EPSG:31466', 'EPSG:3857', 2559552, 5670982, 762634.443931574, 6651545.680265270, 0.01, 0.01], - ['EPSG:31466', 'EPSG:25832', 2559552, 5670982, 349757.381712518, 5671004.065049540, 0.01, 0.01], - ]; - - function initializeNadgrid(buffer) { - proj4.nadgrid('BETA2007.gsb', buffer); - proj4.defs('EPSG:31466', '+proj=tmerc +lat_0=0 +lon_0=6 +k=1 +x_0=2500000 +y_0=0 +ellps=bessel +nadgrids=BETA2007.gsb +units=m +no_defs +type=crs'); - proj4.defs('EPSG:25832', '+proj=utm +zone=32 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs'); - } - - before(function(done) { - if (typeof XMLHttpRequest !== 'undefined') { - const xhr = new XMLHttpRequest(); - xhr.open('GET', 'BETA2007.gsb', true); - xhr.responseType = 'arraybuffer'; - xhr.addEventListener('load', function() { - initializeNadgrid(xhr.response); - done(); - }); - xhr.addEventListener('error', done); - xhr.send(); - } else if (typeof require === 'function') { - const fs = require('fs'); - const path = require('path'); - fs.readFile(path.join(__dirname, 'BETA2007.gsb'), function(err, data) { - if (err) { - done(err); - } else { - initializeNadgrid(data.buffer); - done(); - } - }) - } - }); - - tests.forEach(function(test) { - var fromProj = test[0]; - var toProj = test[1]; - var fromX = test[2]; - var fromY = test[3]; - var toX = test[4]; - var toY = test[5]; - var fromPrecision = test[6]; - var toPrecision = test[7]; - it('should transform ' + fromProj + ' to ' + toProj, function () { - var transformed = proj4(fromProj, toProj, [fromX, fromY]); - assert.approximately(transformed[0], toX, fromPrecision); - assert.approximately(transformed[1], toY, fromPrecision); - }); - it('should transform ' + toProj + ' to ' + fromProj, function () { - var transformed = proj4(toProj, fromProj, [toX, toY]); - assert.approximately(transformed[0], fromX, toPrecision); - assert.approximately(transformed[1], fromY, toPrecision); - }); - }); - }); - - describe('Nadgrids ntv2', function() { - var tests = [ - [-44.382211538462, 40.3768, -44.380749, 40.377457], // just inside the lower limit - [-87.617788, 59.623262, -87.617659, 59.623441], // just inside the upper limit - [-44.5, 40.5, -44.498553, 40.500632], // inside the first square - [-60, 50, -59.999192, 50.000058], // a general point towards the middle of the grid - [0, 0, 0, 0] // fall back to null - ]; - - var converter; - - function initializeNadgrid(buffer) { - proj4.nadgrid('ntv2', buffer); - proj4.defs('ntv2_from', '+proj=longlat +ellps=clrk66 +nadgrids=@ignorable,ntv2,null'); - proj4.defs('ntv2_to', '+proj=longlat +datum=WGS84 +no_defs'); - converter = proj4('ntv2_from', 'ntv2_to'); - } - - before(function(done) { - if (typeof XMLHttpRequest !== 'undefined') { - const xhr = new XMLHttpRequest(); - xhr.open('GET', 'ntv2_0_downsampled.gsb', true); - xhr.responseType = 'arraybuffer'; - xhr.addEventListener('load', function() { - initializeNadgrid(xhr.response); - done(); - }); - xhr.addEventListener('error', done); - xhr.send(); - } else if (typeof require === 'function') { - const fs = require('fs'); - const path = require('path'); - fs.readFile(path.join(__dirname, 'ntv2_0_downsampled.gsb'), function(err, data) { - if (err) { - done(err); - } else { - initializeNadgrid(data.buffer); - done(); - } - }) - } - }); - - tests.forEach(function(test) { - var fromLng = test[0]; - var fromLat = test[1]; - var toLng = test[2]; - var toLat = test[3]; - it('should interpolate ' + [fromLng, fromLat] + ' to ' + [toLng, toLat], function () { - var actual = converter.forward([fromLng, fromLat]); - assert.approximately(actual[0], toLng, 0.000001); - assert.approximately(actual[1], toLat, 0.000001); - }); - }); - - var inverseTests = [ - [-44.5, 40.5, -44.498553, 40.500632], - [-60, 50, -59.999192, 50.000058] - ]; - - inverseTests.forEach(function(test) { - var fromLng = test[0]; - var fromLat = test[1]; - var toLng = test[2]; - var toLat = test[3]; - it('should inverse interpolate ' + [toLng, toLat] + ' to ' + [fromLng, fromLat], function () { - var actual = converter.inverse([toLng, toLat]); - assert.approximately(actual[0], fromLng, 0.000001); - assert.approximately(actual[1], fromLat, 0.000001); - }); - }); - }); - }); -} -if(typeof process !== 'undefined'&&process.toString() === '[object process]'){ - (function(){ - startTests(require('chai'), require('../dist/proj4-src'), require('./testData')); - })(); -} diff --git a/proj4js-master/test/testData.js b/proj4js-master/test/testData.js deleted file mode 100644 index d431d53d..00000000 --- a/proj4js-master/test/testData.js +++ /dev/null @@ -1,891 +0,0 @@ -var testPoints = [ - {code: 'testmerc', - xy: [-45007.0787624, 4151725.59875], - ll: [5.364315,46.623154] - }, - {code: 'testmerc2', - xy: [4156404,7480076.5], - ll: [37.33761240175515, 55.60447049026976] - }, - {code: 'PROJCS["CH1903 / LV03",GEOGCS["CH1903",DATUM["D_CH1903",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Hotine_Oblique_Mercator_Azimuth_Center"],PARAMETER["latitude_of_center",46.95240555555556],PARAMETER["longitude_of_center",7.439583333333333],PARAMETER["azimuth",90],PARAMETER["scale_factor",1],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000],UNIT["Meter",1]]', - xy: [660013.4882918689, 185172.17110117766], - ll: [8.225, 46.815], - acc:{ - xy: 0.1, - ll: 5 - } - }, - {code: 'PROJCS["CH1903 / LV03",GEOGCS["CH1903",DATUM["CH1903",SPHEROID["Bessel 1841",6377397.155,299.1528128,AUTHORITY["EPSG","7004"]],TOWGS84[674.4,15.1,405.3,0,0,0,0],AUTHORITY["EPSG","6149"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4149"]],PROJECTION["Hotine_Oblique_Mercator_Azimuth_Center"],PARAMETER["latitude_of_center",46.95240555555556],PARAMETER["longitude_of_center",7.439583333333333],PARAMETER["azimuth",90],PARAMETER["rectified_grid_angle",90],PARAMETER["scale_factor",1],PARAMETER["false_easting",600000],PARAMETER["false_northing",200000],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Y",EAST],AXIS["X",NORTH],AUTHORITY["EPSG","21781"]]', - xy: [660013.4882918689, 185172.17110117766], - ll: [8.225, 46.815], - acc:{ - xy: 0.1, - ll: 5 - } - }, - {code: 'PROJCS["NAD83 / Massachusetts Mainland",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4269"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",42.68333333333333],PARAMETER["standard_parallel_2",41.71666666666667],PARAMETER["latitude_of_origin",41],PARAMETER["central_meridian",-71.5],PARAMETER["false_easting",200000],PARAMETER["false_northing",750000],AUTHORITY["EPSG","26986"],AXIS["X",EAST],AXIS["Y",NORTH]]', - xy: [ 231394.84,902621.11], - ll: [-71.11881762742996,42.37346263960867] - }, - {code: 'PROJCS["NAD83 / Massachusetts Mainland",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["standard_parallel_1",42.68333333333333],PARAMETER["standard_parallel_2",41.71666666666667],PARAMETER["latitude_of_origin",41],PARAMETER["central_meridian",-71.5],PARAMETER["false_easting",200000],PARAMETER["false_northing",750000],UNIT["Meter",1]]', - xy: [ 231394.84,902621.11], - ll: [-71.11881762742996,42.37346263960867] - }, - {code:'PROJCS["NAD83 / Massachusetts Mainland", GEOGCS["NAD83", DATUM["North American Datum 1983", SPHEROID["GRS 1980", 6378137.0, 298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], AUTHORITY["EPSG","6269"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic longitude", EAST], AXIS["Geodetic latitude", NORTH], AUTHORITY["EPSG","4269"]], PROJECTION["Lambert_Conformal_Conic_2SP", AUTHORITY["EPSG","9802"]], PARAMETER["central_meridian", -71.5], PARAMETER["latitude_of_origin", 41.0], PARAMETER["standard_parallel_1", 42.68333333333334], PARAMETER["false_easting", 200000.0], PARAMETER["false_northing", 750000.0], PARAMETER["scale_factor", 1.0], PARAMETER["standard_parallel_2", 41.71666666666667], UNIT["m", 1.0], AXIS["Easting", EAST], AXIS["Northing", NORTH], AUTHORITY["EPSG","26986"]]', - xy: [ 231394.84,902621.11], - ll: [-71.11881762742996,42.37346263960867] - }, - {code: 'PROJCS["Asia_North_Equidistant_Conic",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",95],PARAMETER["Standard_Parallel_1",15],PARAMETER["Standard_Parallel_2",65],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1]]', - xy: [88280.59904432714, 111340.90165417176], - ll: [96,31] - }, - {code: 'PROJCS["Asia_North_Equidistant_Conic",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Conic"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",95],PARAMETER["Standard_Parallel_1",15],PARAMETER["Standard_Parallel_2",65],PARAMETER["Latitude_Of_Origin",30],UNIT["Meter",1],AUTHORITY["EPSG","102026"]]', - xy: [88280.59904432714, 111340.90165417176], - ll: [96,31] - }, - {code: 'PROJCS["World_Sinusoidal",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Sinusoidal"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54008"]]', - xy: [738509.49,5874620.38], - ll: [11.0, 53.0] - }, - {code: 'PROJCS["World_Sinusoidal",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Sinusoidal"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1]]', - xy: [738509.49,5874620.38], - ll: [11.0, 53.0] - }, - {code: 'PROJCS["ETRS89 / ETRS-LAEA",GEOGCS["ETRS89",DATUM["D_ETRS_1989",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_origin",52],PARAMETER["central_meridian",10],PARAMETER["false_easting",4321000],PARAMETER["false_northing",3210000],UNIT["Meter",1]]', - xy: [4388138.60, 3321736.46], - ll: [11.0, 53.0] - }, - {code: 'PROJCS["ETRS89 / ETRS-LAEA",GEOGCS["ETRS89",DATUM["European_Terrestrial_Reference_System_1989",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6258"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4258"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Lambert_Azimuthal_Equal_Area"],PARAMETER["latitude_of_center",52],PARAMETER["longitude_of_center",10],PARAMETER["false_easting",4321000],PARAMETER["false_northing",3210000],AUTHORITY["EPSG","3035"],AXIS["X",EAST],AXIS["Y",NORTH]]', - xy: [4388138.60, 3321736.46], - ll: [11.0, 53.0] - }, - {code: 'EPSG:102018', - xy: [350577.5930806119, 4705857.070634324], - ll: [-75,46] - }, {code: '+proj=gnom +lat_0=90 +lon_0=0 +x_0=6300000 +y_0=6300000 +ellps=WGS84 +datum=WGS84 +units=m +no_defs', - xy: [350577.5930806119, 4705857.070634324], - ll: [-75,46] - }, - {code: 'PROJCS["NAD83(CSRS) / UTM zone 17N",GEOGCS["NAD83(CSRS)",DATUM["D_North_American_1983_CSRS98",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]', - xy: [411461.807497, 4700123.744402], - ll: [-82.07666015625, 42.448388671875] - }, - {code: 'PROJCS["NAD83(CSRS) / UTM zone 17N",GEOGCS["NAD83(CSRS)",DATUM["NAD83_Canadian_Spatial_Reference_System",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6140"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4617"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-81],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],AUTHORITY["EPSG","2958"],AXIS["Easting",EAST],AXIS["Northing",NORTH]]', - xy: [411461.807497, 4700123.744402], - ll: [-82.07666015625, 42.448388671875] - }, - {code: 'PROJCS["ETRS89 / UTM zone 32N",GEOGCS["ETRS89",DATUM["European_Terrestrial_Reference_System_1989",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6258"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4258"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","25832"]]', - xy: [-1877994.66, 3932281.56], - ll: [-16.10000000237, 32.879999998812] - }, - {code: 'PROJCS["NAD27 / UTM zone 14N",GEOGCS["NAD27 Coordinate System",DATUM["D_North American Datum 1927 (NAD27)",SPHEROID["Clarke_1866",6378206.4,294.97869821391]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-99],PARAMETER["scale_factor",0.9996],UNIT["Meter (m)",1]]', - xy: [2026074.9192811155, 12812891.606450122], - ll: [51.517955776474096, 61.56941794249017] - }, - {code: 'PROJCS["World_Mollweide",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mollweide"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","54009"]]', - xy: [3891383.58309223, 6876758.9933288], - ll: [60,60] - }, - {code: 'PROJCS["World_Mollweide",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mollweide"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1]]', - xy: [3891383.58309223, 6876758.9933288], - ll: [60,60] - }, - { - code:'PROJCS["NAD83 / BC Albers",GEOGCS["NAD83",DATUM["North_American_Datum_1983",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],AUTHORITY["EPSG","6269"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4269"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Albers_Conic_Equal_Area"],PARAMETER["standard_parallel_1",50],PARAMETER["standard_parallel_2",58.5],PARAMETER["latitude_of_center",45],PARAMETER["longitude_of_center",-126],PARAMETER["false_easting",1000000],PARAMETER["false_northing",0],AUTHORITY["EPSG","3005"],AXIS["Easting",EAST],AXIS["Northing",NORTH]]', - ll:[-126.54, 54.15], - xy:[964813.103719, 1016486.305862] - }, { - code:'PROJCS["NAD83 / BC Albers",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Albers"],PARAMETER["standard_parallel_1",50],PARAMETER["standard_parallel_2",58.5],PARAMETER["latitude_of_origin",45],PARAMETER["central_meridian",-126],PARAMETER["false_easting",1000000],PARAMETER["false_northing",0],UNIT["Meter",1]]', - ll:[-126.54, 54.15], - xy:[964813.103719, 1016486.305862] - }, - { - code:'PROJCS["Azimuthal_Equidistant",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1]]', - ll:[0, 0], - xy:[0, 0] - }, - { - code:'PROJCS["Sphere_Azimuthal_Equidistant",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",0],UNIT["Meter",1]]', - ll:[0, 0], - xy:[0, 0] - }, - { - code:'PROJCS["North_Pole_Azimuthal_Equidistant",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",90],UNIT["Meter",1]]', - ll:[50.977303830208, 30.915260093747], - xy:[5112279.911077, -4143196.76625] - }, - { - code:'PROJCS["North_Pole_Azimuthal_Equidistant",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Azimuthal_Equidistant"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],PARAMETER["Latitude_Of_Origin",90],UNIT["Meter",1],AUTHORITY["EPSG","102016"]]', - ll:[50.977303830208, 30.915260093747], - xy:[5112279.911077, -4143196.76625] - }, - { - code:'PROJCS["Mount Dillon / Tobago Grid",GEOGCS["Mount Dillon",DATUM["Mount_Dillon",SPHEROID["Clarke 1858",6378293.645208759,294.2606763692654,AUTHORITY["EPSG","7007"]],AUTHORITY["EPSG","6157"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4157"]],UNIT["Clarke\'s link",0.201166195164,AUTHORITY["EPSG","9039"]],PROJECTION["Cassini_Soldner"],PARAMETER["latitude_of_origin",11.25217861111111],PARAMETER["central_meridian",-60.68600888888889],PARAMETER["false_easting",187500],PARAMETER["false_northing",180000],AUTHORITY["EPSG","2066"],AXIS["Easting",EAST],AXIS["Northing",NORTH]]', - ll:[-60.676753018, 11.2487234308], - xy:[192524.3061766178, 178100.2740019509], - acc:{ - ll:1, - xy:-4 - } - }, { - code:'PROJCS["Mount Dillon / Tobago Grid",GEOGCS["Mount Dillon",DATUM["D_Mount_Dillon",SPHEROID["Clarke_1858",6378293.645208759,294.2606763692654]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Cassini"],PARAMETER["latitude_of_origin",11.25217861111111],PARAMETER["central_meridian",-60.68600888888889],PARAMETER["false_easting",187500],PARAMETER["false_northing",180000],UNIT["Clarke\'s link",0.201166195164]]', - ll:[-60.676753018, 11.2487234308], - xy:[192524.3061766178, 178100.2740019509], - acc:{ - ll:1, - xy:-4 - } - }, - // { - // code:'EPSG:3975', - // ll:[-9.764450683, 25.751953], - // xy:[-942135.525095996, 3178441.8667094777] - // }, - { - code:'PROJCS["World Equidistant Cylindrical (Sphere)",GEOGCS["Unspecified datum based upon the GRS 1980 Authalic Sphere",DATUM["Not_specified_based_on_GRS_1980_Authalic_Sphere",SPHEROID["GRS 1980 Authalic Sphere",6371007,0,AUTHORITY["EPSG","7048"]],AUTHORITY["EPSG","6047"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4047"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Equirectangular"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],AUTHORITY["EPSG","3786"],AXIS["X",EAST],AXIS["Y",NORTH]]', - ll:[-1.7539371169976, 12.632997701986], - xy:[-195029.12334755991, 1395621.9368162225], - acc:{ - ll:2 - } - }, { - code:'PROJCS["World Equidistant Cylindrical (Sphere)",GEOGCS["Unspecified datum based upon the GRS 1980 Authalic Sphere",DATUM["D_",SPHEROID["GRS_1980_Authalic_Sphere",6371007,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Equidistant_Cylindrical"],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1]]', - ll:[-1.7539371169976, 12.632997701986], - xy:[-195029.12334755991, 1395621.9368162225], - acc:{ - ll:2 - } - }, - { - code:'PROJCS["Segara / NEIEZ",GEOGCS["Segara",DATUM["Gunung_Segara",SPHEROID["Bessel 1841",6377397.155,299.1528128,AUTHORITY["EPSG","7004"]],AUTHORITY["EPSG","6613"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4613"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",110],PARAMETER["scale_factor",0.997],PARAMETER["false_easting",3900000],PARAMETER["false_northing",900000],AUTHORITY["EPSG","3000"],AXIS["X",EAST],AXIS["Y",NORTH]]', - ll:[116.65547897884308 , -0.6595605286983485], - xy:[4638523.040740433, 827245.2586932715] - }, { - code:'PROJCS["Segara / NEIEZ",GEOGCS["Segara",DATUM["D_Gunung_Segara",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Mercator"],PARAMETER["central_meridian",110],PARAMETER["scale_factor",0.997],PARAMETER["false_easting",3900000],PARAMETER["false_northing",900000],UNIT["Meter",1]]', - ll:[116.65547897884308 , -0.6595605286983485], - xy:[4638523.040740433, 827245.2586932715] - }, - { - code:'PROJCS["Beduaram / TM 13 NE",GEOGCS["Beduaram",DATUM["Beduaram",SPHEROID["Clarke 1880 (IGN)",6378249.2,293.4660212936269,AUTHORITY["EPSG","7011"]],TOWGS84[-106,-87,188,0,0,0,0],AUTHORITY["EPSG","6213"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4213"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",13],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],AUTHORITY["EPSG","2931"],AXIS["X",EAST],AXIS["Y",NORTH]]', - ll:[5, 25], - xy:[-308919.1234711099, 2788738.255936392] - }, - { - code:'PROJCS["Beduaram / TM 13 NE",GEOGCS["Beduaram",DATUM["D_Beduaram",SPHEROID["Clarke_1880_IGN",6378249.2,293.4660212936269]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",13],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]', - ll:[5, 25], - xy:[-308919.1234711099, 2788738.255936392] - }, - { - code: '+proj=lcc +lat_1=49.5 +lat_0=49.5 +lon_0=0 +k_0=0.999877341 +x_0=600000 +y_0=1200000 +ellps=clrk80ign +pm=paris +towgs84=-168,-60,320,0,0,0,0 +units=m +no_defs +type=crs', - ll:[2.294482, 48.859045], - xy:[596916.561147926957, 1128733.073948238511] - }, - { - code:'PROJCS["S-JTSK (Ferro) / Krovak",GEOGCS["S-JTSK (Ferro)",DATUM["S_JTSK_Ferro",SPHEROID["Bessel 1841",6377397.155,299.1528128,AUTHORITY["EPSG","7004"]],AUTHORITY["EPSG","6818"]],PRIMEM["Ferro",-17.66666666666667,AUTHORITY["EPSG","8909"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4818"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Krovak"],PARAMETER["latitude_of_center",49.5],PARAMETER["longitude_of_center",42.5],PARAMETER["azimuth",30.28813972222222],PARAMETER["pseudo_standard_parallel_1",78.5],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0],AUTHORITY["EPSG","2065"],AXIS["Y",WEST],AXIS["X",SOUTH]]', - ll:[17.323583231075897, 49.39440725405376], - xy:[-544115.474379, -1144058.330762] - },{ - code:'PROJCS["S-JTSK (Ferro) / Krovak",GEOGCS["S-JTSK (Ferro)",DATUM["D_S_JTSK",SPHEROID["Bessel_1841",6377397.155,299.1528128]],PRIMEM["Ferro",-17.66666666666667],UNIT["Degree",0.017453292519943295]],PROJECTION["Krovak"],PARAMETER["latitude_of_center",49.5],PARAMETER["longitude_of_center",42.5],PARAMETER["azimuth",30.28813972222222],PARAMETER["pseudo_standard_parallel_1",78.5],PARAMETER["scale_factor",0.9999],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1]]', - ll:[17.323583231075897, 49.39440725405376], - xy:[-544115.474379, -1144058.330762] - },{ - code:'PROJCS["Sphere_Miller_Cylindrical",GEOGCS["GCS_Sphere",DATUM["D_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Miller_Cylindrical"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1]]', - ll:[-1.3973289073953, 12.649176474268513 ], - xy:[-155375.88535614178, 1404635.2633403721], - acc:{ - ll:3 - } - },{ - code:'PROJCS["Sphere_Miller_Cylindrical",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Miller_Cylindrical"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53003"]]', - ll:[-1.3973289073953, 12.649176474268513 ], - xy:[-155375.88535614178, 1404635.2633403721], - acc:{ - ll:3 - } - },{ - code:'PROJCS["NZGD49 / New Zealand Map Grid",GEOGCS["NZGD49",DATUM["D_New_Zealand_1949",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["New_Zealand_Map_Grid"],PARAMETER["latitude_of_origin",-41],PARAMETER["central_meridian",173],PARAMETER["false_easting",2510000],PARAMETER["false_northing",6023150],UNIT["Meter",1]]', - ll:[172.465, -40.7], - xy:[2464770.343667, 6056137.861919] - },{ - code:'PROJCS["NZGD49 / New Zealand Map Grid",GEOGCS["NZGD49",DATUM["New_Zealand_Geodetic_Datum_1949",SPHEROID["International 1924",6378388,297,AUTHORITY["EPSG","7022"]],TOWGS84[59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993],AUTHORITY["EPSG","6272"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4272"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["New_Zealand_Map_Grid"],PARAMETER["latitude_of_origin",-41],PARAMETER["central_meridian",173],PARAMETER["false_easting",2510000],PARAMETER["false_northing",6023150],AUTHORITY["EPSG","27200"],AXIS["Easting",EAST],AXIS["Northing",NORTH]]', - ll:[172.465, -40.7], - xy:[2464770.343667, 6056137.861919] - },{ - code: 'PROJCS["Rassadiran / Nakhl e Taqi", GEOGCS["Rassadiran", DATUM["Rassadiran", SPHEROID["International 1924",6378388,297, AUTHORITY["EPSG","7022"]], TOWGS84[-133.63,-157.5,-158.62,0,0,0,0], AUTHORITY["EPSG","6153"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4153"]], PROJECTION["Hotine_Oblique_Mercator_Azimuth_Center"], PARAMETER["latitude_of_center",27.51882880555555], PARAMETER["longitude_of_center",52.60353916666667], PARAMETER["azimuth",0.5716611944444444], PARAMETER["rectified_grid_angle",0.5716611944444444], PARAMETER["scale_factor",0.999895934], PARAMETER["false_easting",658377.437], PARAMETER["false_northing",3044969.194], UNIT["metre",1, AUTHORITY["EPSG","9001"]], AXIS["Easting",EAST], AXIS["Northing",NORTH], AUTHORITY["EPSG","2057"]]', - ll: [52.605, 27.5], - xy: [658511.261946, 3043003.05468], - acc: { - ll: 8, - xy: 6 - } - },{ - code:'PROJCS["SAD69 / Brazil Polyconic",GEOGCS["SAD69",DATUM["D_South_American_1969",SPHEROID["GRS_1967_SAD69",6378160,298.25]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Polyconic"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-54],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000],UNIT["Meter",1]]', - ll:[-49.221772553812, -0.34551739237581], - xy:[5531902.134932, 9961660.779347], - acc:{ - ll:3, - xy:-2 - } - },{ - code:'PROJCS["SAD69 / Brazil Polyconic",GEOGCS["SAD69",DATUM["South_American_Datum_1969",SPHEROID["GRS 1967 (SAD69)",6378160,298.25,AUTHORITY["EPSG","7050"]],AUTHORITY["EPSG","6618"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4618"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Polyconic"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-54],PARAMETER["false_easting",5000000],PARAMETER["false_northing",10000000],AUTHORITY["EPSG","29101"],AXIS["X",EAST],AXIS["Y",NORTH]]', - ll:[-49.221772553812, -0.34551739237581], - xy:[5531902.134932, 9961660.779347], - acc:{ - ll:3, - xy:-2 - } - },{ - code:'PROJCS["WGS 84 / UPS North",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Polar_Stereographic"],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",2000000],AUTHORITY["EPSG","32661"],AXIS["Easting",UNKNOWN],AXIS["Northing",UNKNOWN]]', - ll:[0, 75], - xy:[2000000, 325449.806286] - },{ - code:'PROJCS["WGS 84 / UPS North",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Stereographic_North_Pole"],PARAMETER["standard_parallel_1",90],PARAMETER["central_meridian",0],PARAMETER["scale_factor",0.994],PARAMETER["false_easting",2000000],PARAMETER["false_northing",2000000],UNIT["Meter",1]]', - ll:[0, 75], - xy:[2000000, 325449.806286] - },{ - code:'+proj=aeqd +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs', - ll:[2, 0], - xy:[222638.98158654713, 0] - },{ - code:'+proj=aeqd +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs', - ll:[89, 0], - xy:[9907434.680601358, 0] - },{ -// code:'+proj=aeqd +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs', -// ll:[91, 0], -// xy:[10130073.6622, 0] -// },{ - code:'+proj=aeqd +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs', - ll:[91, 0], - xy:[10118738.32, 0.00] - },{ - code:'+proj=laea +lat_0=2 +lon_0=1 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs', - ll:[1, 2], - xy:[0, 0] - },{ - code:'+proj=laea +lat_0=1 +lon_0=1 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs', - ll:[1, 1], - xy:[0, 0] - },{ - code:'+proj=laea +lat_0=1 +lon_0=1 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs', - ll:[2, 1], - xy:[111176.58, 16.93] - },{ - code:'+proj=laea +lat_0=1 +lon_0=1 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs', - ll:[1, 2], - xy:[0.00,111193.52] - },{ - code:'+proj=laea +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs', - ll:[19, 0], - xy:[2103036.59, 0.00] - },{ - code:'+proj=stere +lat_0=-90 +lat_ts=-70 +lon_0=0 +k=1 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs"', - ll:[0, -72.5], - xy:[0, 1910008.78441421] - },{ - code:'+proj=stere +lat_0=-90 +lon_0=0 +x_0=0 +y_0=0 +a=3396000 +b=3396000 +units=m +no_defs', - ll:[0, -72.5], - xy:[0, 1045388.79] - },{ - code:'+proj=stere', - ll:[0, -72.5], - xy:[0, -9334375.897187851] - },{ - // Test that lat_ts at a pole is handled correctly in stere projection - code:'+no_defs +units=m +ellps=GRS80 +lon_0=0 +proj=stere +lat_ts=90.0 +lat_0=90 +x_0=0 +y_0=0', - ll:[69.648700, 18.955781], - xy:[8527917.706, -3163255.729] - },{ - code:'PROJCS["WGS 84 / NSIDC Sea Ice Polar Stereographic South", GEOGCS["WGS 84", DATUM["World Geodetic System 1984", SPHEROID["WGS 84", 6378137.0, 298.257223563, AUTHORITY["EPSG","7030"]], AUTHORITY["EPSG","6326"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic longitude", EAST], AXIS["Geodetic latitude", NORTH], AUTHORITY["EPSG","4326"]], PROJECTION["Polar Stereographic (variant B)", AUTHORITY["EPSG","9829"]], PARAMETER["central_meridian", 0.0], PARAMETER["Standard_Parallel_1", -70.0], PARAMETER["false_easting", 0.0], PARAMETER["false_northing", 0.0], UNIT["m", 1.0], AXIS["Easting", "North along 90 deg East"], AXIS["Northing", "North along 0 deg"], AUTHORITY["EPSG","3976"]]', - ll:[0, -72.5], - xy:[0, 1910008.78441421] - },{ - code:'PROJCS["NAD83(CSRS98) / New Brunswick Stereo (deprecated)",GEOGCS["NAD83(CSRS98)",DATUM["D_North_American_1983_CSRS98",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Stereographic_North_Pole"],PARAMETER["standard_parallel_1",46.5],PARAMETER["central_meridian",-66.5],PARAMETER["scale_factor",0.999912],PARAMETER["false_easting",2500000],PARAMETER["false_northing",7500000],UNIT["Meter",1]]', - ll:[-66.415, 46.34], - xy:[2506543.370459, 7482219.546176] - },{ - code:'PROJCS["NAD83(CSRS98) / New Brunswick Stereo (deprecated)",GEOGCS["NAD83(CSRS98)",DATUM["NAD83_Canadian_Spatial_Reference_System",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6140"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9108"]],AUTHORITY["EPSG","4140"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Oblique_Stereographic"],PARAMETER["latitude_of_origin",46.5],PARAMETER["central_meridian",-66.5],PARAMETER["scale_factor",0.999912],PARAMETER["false_easting",2500000],PARAMETER["false_northing",7500000],AUTHORITY["EPSG","2036"],AXIS["Easting",EAST],AXIS["Northing",NORTH]]', - ll:[-66.415, 46.34], - xy:[2506543.370459, 7482219.546176] - },{ - code:'PROJCS["Sphere_Van_der_Grinten_I",GEOGCS["GCS_Sphere",DATUM["D_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Van_der_Grinten_I"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1]]', - ll:[-1.41160801956, 67.40891366748], - xy:[-125108.675828, 9016899.042114], - acc:{ - ll:0, - xy:-5 - } - },{ - code:'PROJCS["Sphere_Van_der_Grinten_I",GEOGCS["GCS_Sphere",DATUM["Not_specified_based_on_Authalic_Sphere",SPHEROID["Sphere",6371000,0]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["VanDerGrinten"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1],AUTHORITY["EPSG","53029"]]', - ll:[-1.41160801956, 67.40891366748], - xy:[-125108.675828, 9016899.042114], - acc:{ - ll:0, - xy:-5 - } - },{ - code:'PROJCS["NAD_1983_StatePlane_New_Jersey_FIPS_2900_Feet",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",492125.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-74.5],PARAMETER["Scale_Factor",0.9999],PARAMETER["Latitude_Of_Origin",38.83333333333334],UNIT["Foot_US",0.3048006096012192]]', - ll:[-74,41], - xy:[630128.205,789591.522] - }, - { - code:'esriOnline', - ll:[-74,41], - xy:[-8237642.318702244, 5012341.663847514] - }, - { - code: '+proj=sinu +lon_0=0 +x_0=0 +y_0=0 +a=6371000 +b=6371000 +units=m +no_defs', - xy: [736106.55, 5893331.11], - ll: [11.0, 53.0] - }, - { - code:'PROJCS["Belge 1972 / Belgian Lambert 72",GEOGCS["Belge 1972",DATUM["Reseau_National_Belge_1972",SPHEROID["International 1924",6378388,297,AUTHORITY["EPSG","7022"]],TOWGS84[106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1],AUTHORITY["EPSG","6313"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4313"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.16666723333333],PARAMETER["standard_parallel_2",49.8333339],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",4.367486666666666],PARAMETER["false_easting",150000.013],PARAMETER["false_northing",5400088.438],AUTHORITY["EPSG","31370"],AXIS["X",EAST],AXIS["Y",NORTH]]', - xy:[104588.196404, 193175.582367], - ll:[3.7186701465384533,51.04642936832842] - }, - { - code:'PROJCS["Belge 1972 / Belgian Lambert 72",GEOGCS["Belge 1972",DATUM["D_Belge_1972",SPHEROID["International_1924",6378388,297]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["standard_parallel_1",51.16666723333333],PARAMETER["standard_parallel_2",49.8333339],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",4.367486666666666],PARAMETER["false_easting",150000.013],PARAMETER["false_northing",5400088.438],UNIT["Meter",1]]', - xy:[104588.196404, 193175.582367], - ll:[3.7186701465384533,51.04642936832842] - }, - { - code:'PROJCS["Belge 1972 / Belgian Lambert 72",GEOGCS["Belge 1972",DATUM["Reseau_National_Belge_1972",SPHEROID["International 1924",6378388,297,AUTHORITY["EPSG","7022"]],TOWGS84[-106.8686,52.2978,-103.7239,-0.3366,0.457,-1.8422,-1.2747],AUTHORITY["EPSG","6313"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4313"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.16666723333333],PARAMETER["standard_parallel_2",49.8333339],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",4.367486666666666],PARAMETER["false_easting",150000.013],PARAMETER["false_northing",5400088.438],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],AUTHORITY["EPSG","31370"]]', - xy:[104469.69796438649, 193146.39675426576], - ll:[3.7186701465384533,51.04642936832842] - }, - { - code:'PROJCS["Belge 1972 / Belgian Lambert 72",GEOGCS["Belge 1972",DATUM["Reseau_National_Belge_1972",SPHEROID["International 1924",6378388,297,AUTHORITY["EPSG","7022"]],TOWGS84[-99.059,53.322,-112.486,-0.419,0.83,-1.885,-1],AUTHORITY["EPSG","6313"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4313"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.16666723333333],PARAMETER["standard_parallel_2",49.8333339],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",4.367486666666666],PARAMETER["false_easting",150000.013],PARAMETER["false_northing",5400088.438],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],AUTHORITY["EPSG","31370"]]', - xy:[104468.8305227503, 193169.6828284394], - ll:[3.7186701465384533,51.04642936832842] - }, - { - code:'PROJCS["Belge 1972 / Belgian Lambert 72",GEOGCS["Belge 1972",DATUM["Reseau_National_Belge_1972",SPHEROID["International 1924",6378388,297,AUTHORITY["EPSG","7022"]],TOWGS84[-125.8,79.9,-100.5,0,0,0,0],AUTHORITY["EPSG","6313"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4313"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",51.16666723333333],PARAMETER["standard_parallel_2",49.8333339],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",4.367486666666666],PARAMETER["false_easting",150000.013],PARAMETER["false_northing",5400088.438],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],AUTHORITY["EPSG","31370"]]', - xy:[104412.1099068548, 193116.8535417635], - ll:[3.7186701465384533,51.04642936832842] - }, - { - code:'+proj=lcc +lat_1=51.16666723333333 +lat_2=49.8333339 +lat_0=90 +lon_0=4.367486666666666 +x_0=150000.013 +y_0=5400088.438 +ellps=intl +towgs84=106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1 +units=m +no_defs ', - xy:[104588.196404, 193175.582367], - ll:[3.7186701465384533,51.04642936832842] - }, - { - code: 'PROJCS["JAD2001 / Jamaica Metric Grid",GEOGCS["JAD2001",DATUM["Jamaica_2001",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6758"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4758"]],PROJECTION["Lambert_Conformal_Conic_1SP"],PARAMETER["latitude_of_origin",18],PARAMETER["central_meridian",-77],PARAMETER["scale_factor",1],PARAMETER["false_easting",750000],PARAMETER["false_northing",650000],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","3448"]]', - xy: [7578825.28673236, 11374595.814939449], - ll: [44.2312, 76.4860], - }, - { - code:"+proj=tmerc +lat_0=49 +lon_0=-2 +k=0.9996012717 +x_0=400000 +y_0=-100000 +ellps=airy +datum=OSGB36 +units=m +no_defs", - ll:[-3.20078, 55.96056], - xy:[325132.0089586496, 674822.638235305] - }, - { - code:"+proj=krovak +lat_0=49.5 +lon_0=24.83333333333333 +alpha=30.28813972222222 +k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +pm=greenwich +units=m +no_defs +towgs84=570.8,85.7,462.8,4.998,1.587,5.261,3.56", - ll: [12.806988, 49.452262], - xy: [-868208.61, -1095793.64] - }, - { - code:"+proj=tmerc +lat_0=40.5 +lon_0=-110.0833333333333 +k=0.9999375 +x_0=800000.0000101599 +y_0=99999.99998983997 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=us-ft +no_defs", - ll: [-110.8, 43.5], - xy: [2434515.870, 1422072.711] - }, - // QSC WGS84 - { - code: '+proj=qsc +lat_0=0 +lon_0=0 +units=m +datum=WGS84', - ll: [2, 1], - xy: [304638.4508447283296846, 164123.8709293559950311] - }, - { - code: '+proj=qsc +lat_0=0 +lon_0=90 +units=m +datum=WGS84', - ll: [2, 1], - xy: [-11576764.4717786349356174, 224687.8649776891397778] - }, - { - code: '+proj=qsc +lat_0=0 +lon_0=180 +units=m +datum=WGS84', - ll: [2, 1], - xy: [-15631296.4526007361710072, 8421356.1168374437838793] - }, - { - code: '+proj=qsc +lat_0=0 +lon_0=-90 +units=m +datum=WGS84', - ll: [2, 1], - xy: [11988027.5987015366554260, 232669.8736086514254566 - ] - }, - { - code: '+proj=qsc +lat_0=90 +lon_0=0 +units=m +datum=WGS84', - ll: [2, 1], - xy: [456180.4073964518611319, -11678366.5914389267563820 - ] - }, - { - code: '+proj=qsc +lat_0=-90 +lon_0=0 +units=m +datum=WGS84', - ll: [2, 1], - xy: [464158.3228444084525108, 11882603.8180405404418707] - }, - // QSC WGS84 WKT - { - code: 'PROJCS["unnamed",GEOGCS["WGS 84",DATUM["unknown",SPHEROID["WGS84",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Quadrilateralized_Spherical_Cube"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",0],UNIT["Meter",1]]', - ll: [2, 1], - xy: [304638.4508447283296846, 164123.8709293559950311] - }, - { - code: 'PROJCS["unnamed",GEOGCS["WGS 84",DATUM["unknown",SPHEROID["WGS84",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Quadrilateralized_Spherical_Cube"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",90],UNIT["Meter",1]]', - ll: [2, 1], - xy: [-11576764.4717786349356174, 224687.8649776891397778] - }, - { - code: 'PROJCS["unnamed",GEOGCS["WGS 84",DATUM["unknown",SPHEROID["WGS84",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Quadrilateralized_Spherical_Cube"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",180],UNIT["Meter",1]]', - ll: [2, 1], - xy: [-15631296.4526007361710072, 8421356.1168374437838793] - }, - { - code: 'PROJCS["unnamed",GEOGCS["WGS 84",DATUM["unknown",SPHEROID["WGS84",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Quadrilateralized_Spherical_Cube"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-90],UNIT["Meter",1]]', - ll: [2, 1], - xy: [11988027.5987015366554260, 232669.8736086514254566 - ] - }, - { - code: 'PROJCS["unnamed",GEOGCS["WGS 84",DATUM["unknown",SPHEROID["WGS84",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Quadrilateralized_Spherical_Cube"],PARAMETER["latitude_of_origin",90],PARAMETER["central_meridian",0],UNIT["Meter",1]]', - ll: [2, 1], - xy: [456180.4073964518611319, -11678366.5914389267563820 - ] - }, - { - code: 'PROJCS["unnamed",GEOGCS["WGS 84",DATUM["unknown",SPHEROID["WGS84",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Quadrilateralized_Spherical_Cube"],PARAMETER["latitude_of_origin",-90],PARAMETER["central_meridian",0],UNIT["Meter",1]]', - ll: [2, 1], - xy: [464158.3228444084525108, 11882603.8180405404418707] - }, - // QSC Mars - { - code: '+proj=qsc +units=m +a=3396190 +b=3376200 +lat_0=0 +lon_0=0', - ll: [2, 1], - xy: [162139.9347801624389831, 86935.6184961361577734] - }, - { - code: '+proj=qsc +units=m +a=3396190 +b=3376200 +lat_0=0 +lon_0=90', - ll: [2, 1], - xy: [-6164327.7345527401193976,119033.1141843862715177] - }, - { - code: '+proj=qsc +units=m +a=3396190 +b=3376200 +lat_0=0 +lon_0=180', - ll: [2, 1], - xy: [-8327904.7183852149173617, 4465226.5862284321337938] - }, - { - code: '+proj=qsc +units=m +a=3396190 +b=3376200 +lat_0=0 +lon_0=-90', - ll: [2, 1], - xy: [6383315.0547841880470514, 123261.7574065744993277] - }, - { - code: '+proj=qsc +units=m +a=3396190 +b=3376200 +lat_0=90 +lon_0=0', - ll: [2, 1], - xy: [242914.9289354820502922, -6218701.0766915259882808] - }, - { - code: '+proj=qsc +units=m +a=3396190 +b=3376200 +lat_0=-90 +lon_0=0', - ll: [2, 1], - xy: [247141.3965058987669181, 6326900.0192015860229731] - }, - // Robinson - { - code: '+proj=robin +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs', - ll: [-15, -35], - xy: [-1335949.91, -3743319.07], - acc: {ll: 4, xy: 0} - }, - { - code: '+proj=robin +lon_0=0 +x_0=0 +y_0=0 +datum=WGS84 +units=m +no_defs', - ll: [-10, 50], - xy: [-819964.60, 5326895.52], - acc: {ll: 4, xy: 0} - }, - { - code: '+proj=robin +a=6400000', - ll: [80, -20], - xy: [7449059.80, -2146370.56], - acc: {ll: 4, xy: 0} - }, - { - code: '+proj=robin +lon_0=15 +x_0=100000 +y_0=100000 +datum=WGS84', - ll: [-35, 40], - xy: [-4253493.26, 4376351.58], - acc: {ll: 4, xy: 0} - }, - { - code: 'PROJCS["World_Robinson",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Robinson"],PARAMETER["False_Easting",0],PARAMETER["False_Northing",0],PARAMETER["Central_Meridian",0],UNIT["Meter",1]]', - ll: [20, 40], - xy: [1741397.30, 4276351.58], - acc: {ll: 4, xy: 0} - }, - { - code: 'PROJCS["World_Robinson",GEOGCS["GCS_WGS_1984",DATUM["WGS_1984",SPHEROID["WGS_1984",6378137,298.257223563]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Robinson"],PARAMETER["False_Easting",100000],PARAMETER["False_Northing",100000],PARAMETER["Central_Meridian",15],UNIT["Meter",1]]', - ll: [-35, 40], - xy: [-4253493.26, 4376351.58], - acc: {ll: 4, xy: 0} - }, - { - code: '+proj=robin +lon_0=162 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs', - ll: [-90, 22], - xy: [9987057.08, 2352946.55], - acc: {ll: 4, xy: 0} - }, - // check that coordinates at 180 and -180 deg. longitude don't wrap around - { - code: 'EPSG:3857', - ll: [-180, 0], - xy: [-20037508.342789, 0] - }, - { - code: 'EPSG:3857', - ll: [180, 0], - xy: [20037508.342789, 0] - }, - // these test cases are taken from mapshaper-proj and the test results match - { - code: '+proj=tmerc +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5', - ll: [2, 1], - xy: [222650.79679577847, 110642.2294119271] - }, - { - code: '+proj=tmerc +approx +a=6400000 +lat_1=0.5 +lat_2=2 +n=0.5', - ll: [2, 1], - xy: [223413.46640632232, 111769.14504059685] - }, - { - code: '+proj=etmerc +zone=30 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5', - ll: [2, 1], - xy: [222650.7967975856, 110642.2294119332] - }, - { - code: '+proj=etmerc +k=0.998 +lon_0=-20 +datum=WGS84 +x_0=10000 +y_0=20000', - ll: [2, 1], - xy: [2516532.477709202, 139083.35793371277] - }, - { - code: '+proj=utm +zone=30 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5', - ll: [2, 1], - xy: [1057002.405491298, 110955.14117594929] - }, - { - code: '+proj=utm +lon_0=-3 +ellps=GRS80 +lat_1=0.5 +lat_2=2 +n=0.5', - ll: [2, 1], - xy: [1057002.4052152266, 110955.14117382761] - }, - // these test cases are related to the original issue on GitHub - { - code: '+proj=utm +zone=33 +datum=WGS84 +units=m +no_defs', - ll: [2, 1], - xy: [-959006.4926646841, 113457.31956265299] - }, - { - code: '+proj=utm +zone=33 +datum=WGS84 +units=m +no_defs', - ll: [31, 70], - xy: [1104629.4356366363, 7845845.077685604] - }, - // these test cases are for Norway snow flake zones - { - code: '+proj=utm +zone=31 +datum=WGS84 +units=m +no_defs', - ll: [59.121778, 1.508527], - xy: [8089746.634775677, 301230.8618526573] - }, - { - code: '+proj=utm +zone=32 +datum=WGS84 +units=m +no_defs', - ll: [59.121778, 1.508527], - xy: [6969865.865375574, 261237.08330733588] - }, - { - code: '+proj=utm +zone=33 +datum=WGS84 +units=m +no_defs', - ll: [59.121778, 1.508527], - xy: [5984417.050333044, 232959.75386279594] - }, - { - code: '+proj=utm +zone=34 +datum=WGS84 +units=m +no_defs', - ll: [79.070672, 20.520579], - xy: [7421462.108989433, 3922366.25143021] - }, - { - code: '+proj=utm +zone=35 +datum=WGS84 +units=m +no_defs', - ll: [79.070672, 20.520579], - xy: [6548241.281523044, 3478520.1422119136] - }, - // these test cases are for the margin zones 1 and 60 - { - code: '+proj=utm +zone=1 +datum=WGS84 +units=m +no_defs', - ll: [-177, 60], - xy: [500000, 6651411.190362714] - }, - { - code: '+proj=utm +zone=60 +datum=WGS84 +units=m +no_defs', - ll: [177, 60], - xy: [500000.0000000014, 6651411.190362714] - }, - { - code: '+proj=lcc +lat_1=46.8 +lat_0=46.8 +lon_0=0 +k_0=0.99987742 +x_0=600000 +y_0=2200000 +a=6378249.2 +b=6356515 +towgs84=-168,-60,320,0,0,0,0 +pm=paris +units=m +no_defs', - ll: [1.4477496, 46.8692953], - xy: [532247.285, 2208091.8723] - }, - { - code: '+proj=utm +zone=33 +units=m +no_defs', - ll: [2, 1], - xy: [-959006.4926646841, 113457.31956265299] - }, - { - code: '+proj=utm +zone=33 +units=m', - ll: [2, 1], - xy: [-959006.4926646841, 113457.31956265299] - }, - { - code: '+proj=utm +zone=33', - ll: [2, 1], - xy: [-959006.4926646841, 113457.31956265299] - }, - { - code: 'PROJCS["CUSTOM_OBLIQUE_MERCATOR", GEOGCS["WGS 84", DATUM["World Geodetic System 1984", SPHEROID["WGS 84", 6378137.0, 298.257223563]], PRIMEM["Greenwich", 0.0], UNIT["degree", 0.017453292519943295], AXIS["Geodetic latitude", NORTH], AXIS["Geodetic longitude", EAST]], PROJECTION["Hotine_Oblique_Mercator_Azimuth_Center", AUTHORITY["EPSG", "9815"]], PARAMETER["latitude_of_center", 37.50832038], PARAMETER["longitude_of_center", -122.25064809], PARAMETER["azimuth", 45.0], PARAMETER["rectified_grid_angle", -3.99], PARAMETER["scale_factor", 1.0], PARAMETER["false_easting", -361.25], PARAMETER["false_northing", 254.915], UNIT["foot", 0.3048], AXIS["Easting", EAST], AXIS["Northing", NORTH]]', - xy: [-361.2499999983702, 254.91500000283122], - ll: [-122.25064809, 37.50832038], - acc:{ - ll: 3, - xy: 8 - } - }, - // Omerc Type A - #273 - { - code: '+proj=omerc +lat_0=4 +lonc=102.25 +alpha=323.0257964666666 +k=0.99984 +x_0=804671 +y_0=0 +no_uoff +gamma=323.1301023611111 +ellps=GRS80 +units=m +no_defs', - xy: [412597.532715, 338944.957259], - ll: [101.70979078430528, 3.06268465621428], - acc:{ - ll: 2, - xy: -3 - } - }, - { - code: 'PROJCS["GDM2000 / Peninsula RSO", GEOGCS["GDM2000", DATUM["Geodetic_Datum_of_Malaysia_2000", SPHEROID["GRS 1980",6378137,298.257222101, AUTHORITY["EPSG","7019"]], AUTHORITY["EPSG","6742"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4742"]], PROJECTION["Hotine_Oblique_Mercator"], PARAMETER["latitude_of_center",4], PARAMETER["longitude_of_center",102.25], PARAMETER["azimuth",323.0257964666666], PARAMETER["rectified_grid_angle",323.1301023611111], PARAMETER["scale_factor",0.99984], PARAMETER["false_easting",804671], PARAMETER["false_northing",0], UNIT["metre",1, AUTHORITY["EPSG","9001"]], AXIS["Easting",EAST], AXIS["Northing",NORTH], AUTHORITY["EPSG","3375"]]', - xy: [412597.532715, 338944.957259], - ll: [101.70979078430528, 3.06268465621428], - acc:{ - ll: 7, - xy: 6 - } - }, - // EPSG:3468 - { - code: '+proj=omerc +lat_0=57 +lonc=-133.6666666666667 +alpha=323.1301023611111 +k=0.9999 +x_0=5000000 +y_0=-5000000 +no_uoff +gamma=323.1301023611111 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs', - xy: [1264314.74, -763162.04], - ll: [-128.115000029, 44.8150000066], - acc:{ - ll: 9, - xy: 4 - } - }, - { - code: 'PROJCS["NAD83(NSRS2007) / Alaska zone 1", GEOGCS["NAD83(NSRS2007)", DATUM["NAD83_National_Spatial_Reference_System_2007", SPHEROID["GRS 1980",6378137,298.257222101, AUTHORITY["EPSG","7019"]], TOWGS84[0,0,0,0,0,0,0], AUTHORITY["EPSG","6759"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.0174532925199433, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4759"]], PROJECTION["Hotine_Oblique_Mercator"], PARAMETER["latitude_of_center",57], PARAMETER["longitude_of_center",-133.6666666666667], PARAMETER["azimuth",323.1301023611111], PARAMETER["rectified_grid_angle",323.1301023611111], PARAMETER["scale_factor",0.9999], PARAMETER["false_easting",5000000], PARAMETER["false_northing",-5000000], UNIT["metre",1, AUTHORITY["EPSG","9001"]], AXIS["X",EAST], AXIS["Y",NORTH], AUTHORITY["EPSG","3468"]]', - xy: [1264314.74, -763162.04], - ll: [-128.115000029, 44.8150000066], - acc:{ - ll: 9, - xy: 4 - } - }, - // Omerc Type B - #308 - { - code: '+proj=omerc +lat_0=37.4769061 +lonc=141.0039618 +alpha=202.22 +k=1 +x_0=138 +y_0=77.65 +ellps=WGS84 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs', - xy: [168.2438, 64.1736], - ll: [141.003611, 37.476802], - acc:{ - ll: 9, - xy: 4 - } - }, - { - code: 'PROJCS["UNK / Oblique_Mercator",GEOGCS["UNK",DATUM["Unknown datum",SPHEROID["WGS 84", 6378137.0, 298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.017453292519943295]],PROJECTION["Oblique_Mercator"],PARAMETER["latitude_of_center",37.4769061],PARAMETER["longitude_of_center",141.0039618],PARAMETER["central_meridian",141.0039618],PARAMETER["azimuth",202.22],PARAMETER["scale_factor",1],PARAMETER["false_easting",138],PARAMETER["false_northing",77.65],UNIT["Meter",1]]', - xy: [168.2438, 64.1736], - ll: [141.003611, 37.476802], - acc:{ - ll: 9, - xy: 4 - } - }, - // Test with Feet - { - code: 'PROJCS["UNK / Oblique_Mercator",GEOGCS["UNK",DATUM["Unknown datum",SPHEROID["WGS 84", 6378137.0, 298.257223563]],PRIMEM["Greenwich",0],UNIT["degree",0.017453292519943295]],PROJECTION["Oblique_Mercator"],PARAMETER["latitude_of_center",37.4769061],PARAMETER["longitude_of_center",141.0039618],PARAMETER["central_meridian",141.0039618],PARAMETER["azimuth",202.22],PARAMETER["scale_factor",1],PARAMETER["false_easting",138],PARAMETER["false_northing",77.65],UNIT["Foot_US",0.3048006096012192]]', - xy: [237.22488871325027, 33.43626458451221], - ll: [141.003611, 37.476802], - }, - { - code: 'PROJCS["WGS 84 / Pseudo-Mercator", GEOGCS["WGS 84", DATUM["World Geodetic System 1984", SPHEROID["WGS 84", 6378137.0, 0, AUTHORITY["EPSG","7030"]], AUTHORITY["EPSG","6326"]], PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], UNIT["degree", 0.017453292519943295], AXIS["Geodetic latitude", NORTH], AXIS["Geodetic longitude", EAST], AUTHORITY["EPSG","4326"]], PROJECTION["Popular Visualisation Pseudo Mercator", AUTHORITY["EPSG","1024"]], PARAMETER["semi_minor", 6378137.0], PARAMETER["latitude_of_origin", 0.0], PARAMETER["central_meridian", 0.0], PARAMETER["scale_factor", 1.0], PARAMETER["false_easting", 0.0], PARAMETER["false_northing", 0.0], UNIT["m", 1.0], AXIS["Easting", EAST], AXIS["Northing", NORTH], AUTHORITY["EPSG","3857"]]', - xy: [-12523490.49256873, 5166512.50707369], - ll: [-112.50042920000004, 42.036926809999976] - }, - { - code: 'PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","9999"]]', - xy: [-12523490.49256873, 5166512.50707369], - ll: [-112.50042920000004, 42.036926809999976] - }, - { - code: '+proj=geocent +datum=WGS84 +units=m +no_defs', - ll: [-7.56234, 38.96618, 0], - xy: [4922499, -653508, 3989398], - acc: { - ll: 0, - xy: 0 - } - }, - { - code: '+proj=geocent +ellps=GRS80 +units=m +no_defs', - ll: [-7.56234, 38.96618, 1], - xy: [4922499, -653508, 3989399], - acc: { - ll: 0, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +azi=20', - ll: [2, 1], - xy: [170820.288955531, 180460.865555805], - acc: { - ll: 5, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +azi=20', - ll: [2, -1], - xy: [246853.941538942, -28439.878035775], - acc: { - ll: 5, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +azi=20', - ll: [-2, 1], - xy: [-246853.941538942, 28439.878035775], - acc: { - ll: 5, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +azi=20', - ll: [-2, -1], - xy: [-170820.288955531, -180460.865555805], - acc: { - ll: 5, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +tilt=20', - ll: [2, 1], - xy: [213598.340357101, 113687.930830744], - acc: { - ll: 5, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +tilt=20', - ll: [2, -1], - xy: [231609.982792523, -123274.645577324], - acc: { - ll: 5, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +tilt=20', - ll: [-2, 1], - xy: [-213598.340357101, 113687.930830744], - acc: { - ll: 5, - xy: 0 - } - }, - { - code: '+proj=tpers +a=6400000 +h=1000000 +tilt=20', - ll: [-2, -1], - xy: [-231609.982792523, -123274.645577324], - acc: { - ll: 5, - xy: 0 - } - }, - // Geostationary - Ellipsoid - X Sweep - { - code: '+proj=geos +sweep=x +lon_0=-75 +h=35786023 +a=6378137.0 +b=6356752.314', - ll: [-95, 25], - xy: [-1920508.77, 2605680.03], - }, - // Geostationary - Ellipsoid - Y Sweep - { - code: '+proj=geos +sweep=y +lon_0=-75 +h=35786023 +a=6378137.0 +b=6356752.314', - ll: [-95, 25], - xy: [-1925601.20, 2601922.01], - }, - // Geostationary - Sphere - X Sweep - { - code: '+proj=geos +sweep=x +lon_0=-75 +h=35786023 +a=6378137.0 +b=6378137.0', - ll: [-95, 25], - xy: [-1919131.48, 2621384.15], - }, - // Geostationary - Sphere - Y Sweep - { - code: '+proj=geos +sweep=y +lon_0=-75 +h=35786023 +a=6378137.0 +b=6378137.0', - ll: [-95, 25], - xy: [-1924281.93, 2617608.82], - }, - // WKT - Arctic Polar Stereographic - { - code: 'PROJCS["WGS 84 / Arctic Polar Stereographic",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Polar_Stereographic"],PARAMETER["latitude_of_origin",71],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AUTHORITY["EPSG","3995"]]', - ll: [0, 90], - xy: [0, 0], - }, - { - code: 'PROJCS["WGS 84 / Arctic Polar Stereographic",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Polar_Stereographic"],PARAMETER["latitude_of_origin",71],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AUTHORITY["EPSG","3995"]]', - ll: [0, 0], - xy: [0, -12367396.218459858], - }, - // WKT - Antarctic Polar Stereographic - { - code: 'PROJCS["WGS 84 / Antarctic Polar Stereographic",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Polar_Stereographic"],PARAMETER["latitude_of_origin",-71],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],AUTHORITY["EPSG","3031"]]', - ll: [0, -90], - xy: [0, 0], - }, - { - code: 'PROJCS["WGS 84 / Antarctic Polar Stereographic",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],PROJECTION["Polar_Stereographic"],PARAMETER["latitude_of_origin",-71],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],AUTHORITY["EPSG","3031"]]', - ll: [0, 0], - xy: [0, 12367396.218459858], - }, - { - code: '+proj=eqearth +lon_0=0 +x_0=0 +y_0=0 +R=6371008.7714 +units=m +no_defs +type=crs', - ll: [16, 48], - xy: [1284600.7230114893, 5794915.366010354] - }, - { - code: '+proj=eqearth +lon_0=150 +x_0=0 +y_0=0 +R=6371008.7714 +units=m +no_defs +type=crs', - ll: [16, 48], - xy: [-10758531.055221224, 5794915.366010354] - }, - { - code: '+proj=bonne +lat_1=10 +lon_0=10', - ll: [4.9, 52.366667], - xy: [-347381.937958562, 4700204.94589969] - }, - { - code: '+proj=bonne +a=6400000 +lat_1=0.5 +lat_2=2', - ll: [2, 1], - xy: [223368.11557252839, 55884.555246393575] - }, - { - code: '+proj=bonne +ellps=GRS80 +lat_1=0.5 +lat_2=2', - ll: [2, 1], - xy: [222605.29609715697, 55321.139565494814] - } -]; -if (typeof module !== 'undefined') { - module.exports = testPoints; -} else if (typeof define === 'function') { - define(function () { - return testPoints; - }); -} diff --git a/src/dataStore/file.ts b/src/dataStore/file.ts index d8a7af83..202fbd2e 100644 --- a/src/dataStore/file.ts +++ b/src/dataStore/file.ts @@ -1,12 +1,22 @@ +import externalSort from './externalSort'; import { closeSync, fstatSync, openSync, readSync, writeSync } from 'fs'; - -import type { Uint64Cell } from '../wasm/uint64'; -import type { Key, Stringifiable } from '..'; - -/** A low/high pair for faster comparisons */ -interface LowHigh { - low: number; - high: number; +import { compare, toCell } from '../dataStructures/uint64'; + +import type { Stringifiable } from '..'; +import type { Uint64, Uint64Cell } from '../dataStructures/uint64'; + +/** Options to create a S2FileStore */ +export interface Options { + /** If true, then the values are stored in the index section of the keys file */ + valuesAreIndex?: boolean; + /** If true, then the data is already sorted and get calls can be immediately returned */ + isSorted?: boolean; + /** The maximum heap size in bytes for each grouping of data. */ + maxHeap?: number; + /** The number of threads to use for sorting */ + threadCount?: number; + /** If desired, a temporary directory to use */ + tmpDir?: string; } /** @@ -19,47 +29,55 @@ export class S2FileStore { #state: 'read' | 'write' = 'read'; #size = 0; #sorted: boolean; + #maxHeap?: number; + #threadCount?: number; + #tmpDir?: string; // options #indexIsValues = false; // write params #valueOffset = 0; - #keyFd: number; - #valueFd: number; + // read write fd + #keyFd: number = -1; + #valueFd: number = -1; /** * Builds a new File based KV - * @param path - the path to the file - * @param isSorted - set to true if the keys are already sorted - * @param valuesAreIndex - set to true if the values are stored in the index section of the keys file + * @param fileName - the path + file name without the extension + * @param options - the options of how the store should be created and ued */ constructor( - public readonly path: string, - isSorted = false, - valuesAreIndex = false, + public readonly fileName: string, + options?: Options, ) { - this.#sorted = isSorted; - this.#indexIsValues = valuesAreIndex; - this.#keyFd = openSync(`${path}.keys`, 'a'); - if (!this.#indexIsValues) this.#valueFd = openSync(`${path}.values`, 'a'); - else this.#valueFd = -1; + this.#sorted = options?.isSorted ?? false; + this.#indexIsValues = options?.valuesAreIndex ?? false; + this.#maxHeap = options?.maxHeap; + this.#threadCount = options?.threadCount; + this.#tmpDir = options?.tmpDir; + if (!this.#sorted) this.#switchToWriteState(); // Update the size if the file already existed const stat = fstatSync(this.#keyFd); if (stat.size >= 16) this.#size = stat.size / 16; } + /** @returns - the length of the store */ + get length(): number { + return this.#size; + } + /** * Adds a value to be associated with a key - * @param key - the key + * @param key - the uint64 id * @param value - the value to store */ - set(key: Key, value: V): void { - if (this.#state !== 'read') throw new Error('Can no longer write to KVFile store.'); + set(key: Uint64, value: V): void { + this.#switchToWriteState(); // prepare value const valueStr = JSON.stringify(value); const valueBuf = Buffer.from(valueStr); // write key offset as a uint64 const buffer = Buffer.alloc(16); - const { low, high } = this.#getLowHigh(key); + const { low, high } = toCell(key); buffer.writeUInt32LE(low, 0); buffer.writeUInt32LE(high, 4); // write value offset to point to the value position in the `${path}.values` @@ -91,15 +109,15 @@ export class S2FileStore { * @param bigint - set to true if the key is a bigint * @returns the value if the map contains values for the key */ - get(key: Key, max?: number, bigint = false): V[] | undefined { - this.#switchToWriteState(); + async get(key: Uint64, max?: number, bigint = false): Promise { + await this.#switchToReadState(); let lowerIndex = this.#lowerBound(key); if (lowerIndex >= this.#size) return undefined; + const { low: lowID, high: highID } = toCell(key); const res: V[] = []; const buffer = Buffer.alloc(16); while (true) { readSync(this.#keyFd, buffer, 0, 16, lowerIndex * 16); - const { low: lowID, high: highID } = this.#getLowHigh(key); if (buffer.readUInt32LE(0) !== lowID || buffer.readUInt32LE(4) !== highID) break; const valueOffset = buffer.readUInt32LE(8); const valueLength = buffer.readUInt32LE(12); @@ -120,98 +138,83 @@ export class S2FileStore { return res; } - /** - * Check if the map contains the key - * @param key - the key - * @returns true if the map contains value(s) for the key - */ - has(key: Key): boolean { - this.#switchToWriteState(); - const lowerIndex = this.#lowerBound(key); - if (lowerIndex >= this.#size) return false; - const { low: lowID, high: highID } = this.#getLowHigh(key); - const buffer = Buffer.alloc(8); - readSync(this.#keyFd, buffer, 0, 8, lowerIndex * 16); - const low = buffer.readUInt32LE(0); - const high = buffer.readUInt32LE(4); - return low === lowID && high === highID; + /** Sort the data if not sorted */ + async sort(): Promise { + await this.#switchToReadState(); } - /** Switches to write state if in read. Also sort the keys. */ - #switchToWriteState(): void { - if (this.#state === 'write') return; - if (this.#state === 'read') { - this.#state = 'write'; - closeSync(this.#keyFd); - if (!this.#indexIsValues) closeSync(this.#valueFd); - this.#keyFd = openSync(`${this.path}.keys`, 'r+'); - if (!this.#indexIsValues) this.#valueFd = openSync(`${this.path}.values`, 'r+'); - this.#sort(); + /** + * Iterates over all values in the store + * @param bigint - set to true if the value is a bigint stored in the index + * @yields an iterator + */ + async *entries(bigint = false): AsyncIterableIterator<{ key: Uint64Cell; value: V }> { + await this.#switchToReadState(); + for (let i = 0; i < this.#size; i++) { + const buffer = Buffer.alloc(16); + readSync(this.#keyFd, buffer, 0, 16, i * 16); + const keyLow = buffer.readUInt32LE(0); + const keyHigh = buffer.readUInt32LE(4); + const valueOffset = buffer.readUInt32LE(8); + const valueLength = buffer.readUInt32LE(12); + if (this.#indexIsValues) { + const value = bigint + ? ((BigInt(valueOffset) + (BigInt(valueLength) << 32n)) as unknown as V) + : ((valueOffset + (valueLength << 32)) as unknown as V); + yield { key: { low: keyLow, high: keyHigh }, value }; + } else { + const valueBuf = Buffer.alloc(valueLength); + readSync(this.#valueFd, valueBuf, 0, valueLength, valueOffset); + const value = JSON.parse(valueBuf.toString()) as V; + yield { key: { low: keyLow, high: keyHigh }, value }; + } } } - /** Sort the data */ - #sort(): void { - if (this.#sorted) return; - this.#quickSort(0, this.#size - 1); - this.#sorted = true; + /** Closes the store */ + close(): void { + if (this.#keyFd >= 0) closeSync(this.#keyFd); + if (!this.#indexIsValues && this.#valueFd >= 0) closeSync(this.#valueFd); } - /** - * TODO: Running in parallel can be faster - * @param low - low index inclusive - * @param high - high index inclusive - */ - #quickSort(low: number, high: number): void { - if (low >= high) return; - const pivot = this.#partition(low, high); - this.#quickSort(low, pivot - 1); - this.#quickSort(pivot + 1, high); + /** Switches to write state if in read. */ + #switchToWriteState(): void { + if (this.#state === 'write') return; + this.#state = 'write'; + this.close(); + this.#keyFd = openSync(`${this.fileName}.keys`, 'w'); + if (!this.#indexIsValues) this.#valueFd = openSync(`${this.fileName}.values`, 'w'); } - /** - * @param low - low index inclusive - * @param high - high index inclusive - * @returns the index of the pivot - */ - #partition(low: number, high: number): number { - const pivot = this.#getKey(high); - let i = low - 1; - for (let j = low; j < high; j++) { - const jLohi = this.#getKey(j); - if (this.#compareLowHigh(jLohi, pivot) <= 0) { - i++; - this.#swapKeys(i, j); - } - } - this.#swapKeys(i + 1, high); - return i + 1; + /** Switches to read state if in write. Also sort the keys. */ + async #switchToReadState(): Promise { + if (this.#state === 'read') return; + this.#state = 'read'; + this.close(); + await this.#sort(); + this.#keyFd = openSync(`${this.fileName}.sortedkeys`, 'r'); + if (!this.#indexIsValues) this.#valueFd = openSync(`${this.fileName}.values`, 'r'); } - /** - * Swap the keys at i and j including their pointers to values - * @param i - the index of the i-th key - * @param j - the index of the j-th key - */ - #swapKeys(i: number, j: number): void { - if (i === j) return; - const iKey = Buffer.alloc(16); - const jKey = Buffer.alloc(16); - readSync(this.#keyFd, iKey, 0, 16, i * 16); - readSync(this.#keyFd, jKey, 0, 16, j * 16); - writeSync(this.#keyFd, jKey, 0, 16, i * 16); - writeSync(this.#keyFd, iKey, 0, 16, j * 16); - readSync(this.#keyFd, iKey, 0, 16, i * 16); - readSync(this.#keyFd, jKey, 0, 16, j * 16); + /** Sort the data */ + async #sort(): Promise { + if (this.#sorted) return; + await externalSort( + [`${this.fileName}.keys`], + `${this.fileName}.sortedKeys`, + this.#maxHeap, + this.#threadCount, + this.#tmpDir, + ); + this.#sorted = true; } /** * @param id - the id to search for * @returns the starting index from the lower bound of the id */ - #lowerBound(id: Key): number { - const loHiID = this.#getLowHigh(id); - this.#sort(); + #lowerBound(id: Uint64): number { + const loHiID = toCell(id); // lower bound search let lo: number = 0; let hi: number = this.#size; @@ -220,7 +223,7 @@ export class S2FileStore { while (lo < hi) { mid = Math.floor(lo + (hi - lo) / 2); const loHi = this.#getKey(mid); - if (this.#compareLowHigh(loHi, loHiID) === -1) { + if (compare(loHi, loHiID) === -1) { lo = mid + 1; } else { hi = mid; @@ -234,51 +237,9 @@ export class S2FileStore { * @param index - the index to get the key from * @returns the key */ - #getKey(index: number): LowHigh { - // read in the key - const buffer = Buffer.alloc(8); - readSync(this.#keyFd, buffer, 0, 4, index * 16); - return { - low: buffer.readUInt32LE(0), - high: buffer.readUInt32LE(4), - }; - } - - /** - * @param lohiA - the first LowHigh - * @param lohiB - the second LowHigh - * @returns -1 | 0 | 1 - */ - #compareLowHigh(lohiA: LowHigh, lohiB: LowHigh): -1 | 0 | 1 { - if (lohiA.high < lohiB.high) return -1; - if (lohiA.high > lohiB.high) return 1; - if (lohiA.low < lohiB.low) return -1; - if (lohiA.low > lohiB.low) return 1; - return 0; - } - - /** - * @param key - the key used by the S2FileStore - * @returns the low and high parts of the key - */ - #getLowHigh(key: Key): LowHigh { - if (typeof key === 'number') { - const keyBig = BigInt(key); - return { - low: Number(keyBig & 0xffffffffn), - high: Number(keyBig >> 32n) & 0xffffffff, - }; - } else if (typeof key === 'bigint') { - return { - low: Number(key & 0xffffffffn), - high: Number(key >> 32n) & 0xffffffff, - }; - } else { - const { low, high } = key as Uint64Cell; - return { - low, - high, - }; - } + #getKey(index: number): Uint64Cell { + const buf = Buffer.alloc(8); + readSync(this.#keyFd, buf, 0, 8, index * 16); + return { low: buf.readUint32LE(0), high: buf.readUint32LE(4) }; } } diff --git a/src/dataStore/index.ts b/src/dataStore/index.ts index 183184a2..8a9a8091 100644 --- a/src/dataStore/index.ts +++ b/src/dataStore/index.ts @@ -1,11 +1,5 @@ -import type { S2CellId } from '..'; -import type { Uint64Cell } from '../wasm/uint64'; - export * from './kv'; export * from './multimap'; -/** Always a uint64. Sometimes a number is enough though */ -export type Key = number | S2CellId | Uint64Cell; - /** Any type of value that can be stored as a string */ export type Stringifiable = string | object | number | boolean | null; diff --git a/src/dataStore/kv/file.ts b/src/dataStore/kv/file.ts index 3606c549..836ffe9c 100644 --- a/src/dataStore/kv/file.ts +++ b/src/dataStore/kv/file.ts @@ -1,89 +1,48 @@ -import { closeSync, openSync, writeSync } from 'fs'; +import { S2FileStore } from '../file'; import type { KVStore } from '.'; -import type { Key, Stringifiable } from '..'; +import type { Stringifiable } from '..'; +import type { Uint64Cell } from '../../dataStructures/uint64'; -/** - * NOTE: The File KVStore is designed to be used in states: - * - write-only. The initial state is write-only. Write all you need to before reading - * - read-only. Once you have written everything, the first read will lock the file to be static - * and read-only. - */ -export class KVFile implements KVStore { - state: 'read' | 'write' = 'read'; - // write params - #valueOffset = 0; - #keyWriteFd: number; - #valueWriteFd: number; - // read params +/** File based multimap store */ +export class FileMultiMap implements KVStore { + #store: S2FileStore; /** - * Builds a new File based KV - * @param file - the path to the file + * Builds a new MultiMap file store + * @param fileName - the path + file name without the extension */ - constructor(file: string) { - this.#keyWriteFd = openSync(`${file}.keys`, 'a'); - this.#valueWriteFd = openSync(`${file}.values`, 'a'); + constructor(fileName: string) { + this.#store = new S2FileStore(fileName); } - /** - * Adds a value to be associated with a key - * @param key - the key - * @param value - the value to store - */ - set(key: K, value: V): void { - if (this.state !== 'read') throw new Error('Can no longer write to KVFile store.'); - // write key offset as a uint64 - const buffer = Buffer.alloc(8); - if (typeof key === 'number') { - buffer.writeUInt32LE(key & 0xffffffff, 0); - buffer.writeUInt32LE((key >>> 32) & 0xffffffff, 4); - } else { - const keyBuffer = Buffer.from( - (key as DataView).buffer, - (key as DataView).byteOffset, - (key as DataView).byteLength, - ); - keyBuffer.copy(buffer, 0, 0, 8); - } - buffer.writeUInt32LE(this.#valueOffset & 0xffffffff, 8); - buffer.writeUInt32LE((this.#valueOffset >>> 32) & 0xffffffff, 12); - writeSync(this.#keyWriteFd, buffer); - // write value and update value offset - const valueStr = JSON.stringify(value); - const valueBuf = Buffer.from(valueStr); - writeSync(this.#valueWriteFd, valueBuf); - this.#valueOffset += valueBuf.byteLength; + /** @returns - the length of the map */ + get length(): number { + return this.#store.length; } /** - * Gets the value associated with a key + * Adds a value to the list of values associated with a key * @param key - the key - * @returns the value if the map contains values for the key + * @param value - the value to store */ - get(key: K): V | undefined { - this.#switchToWriteState(); - return undefined; + set(key: Uint64Cell, value: V): void { + this.#store.set(key, value); } /** - * Check if the map contains the key + * Gets the list of values associated with a key * @param key - the key - * @returns true if the map contains value(s) for the key + * @returns the list of values if the map contains values for the key */ - has(key: K): boolean { - this.#switchToWriteState(); - return false; + async get(key: Uint64Cell): Promise { + const value = await this.#store.get(key, 0); + if (value === undefined) return undefined; + return value[0] as V; } - /** Switches to write state if in read. Also sort the keys. */ - #switchToWriteState(): void { - if (this.state === 'write') return; - if (this.state === 'read') { - this.state = 'write'; - closeSync(this.#keyWriteFd); - closeSync(this.#valueWriteFd); - // TODO: SORT KEYS - } + /** Closes the store */ + close(): void { + this.#store.close(); } } diff --git a/src/dataStore/kv/index.ts b/src/dataStore/kv/index.ts index a0a378af..ccaaa2d9 100644 --- a/src/dataStore/kv/index.ts +++ b/src/dataStore/kv/index.ts @@ -1,11 +1,17 @@ -import type { Key, Stringifiable } from '..'; +import type { Stringifiable } from '..'; +import type { Uint64Cell } from '../../dataStructures/uint64'; /** Represents a key-value store */ -export interface KVStore { - get: (key: K) => V | undefined; - set: (key: K, value: V) => void; - has: (key: K) => boolean; +export interface KVStore { + length: number; + get: ((key: Uint64Cell) => V | undefined) | ((key: Uint64Cell) => Promise); + set: (key: Uint64Cell, value: V) => void; } /** Just a placeholder to explain what a local key-value store essentially is */ -export class KV extends Map implements KVStore {} +export class KV extends Map implements KVStore { + /** @returns - the length of the map */ + get length(): number { + return this.size; + } +} diff --git a/src/dataStore/kv/mmap.ts b/src/dataStore/kv/mmap.ts new file mode 100644 index 00000000..b481cc19 --- /dev/null +++ b/src/dataStore/kv/mmap.ts @@ -0,0 +1,43 @@ +import { S2MMapStore } from '../mmap'; + +import type { KVStore } from '.'; +import type { Stringifiable } from '..'; +import type { Uint64Cell } from '../../dataStructures/uint64'; + +/** File based multimap store */ +export class FileMultiMap implements KVStore { + #store: S2MMapStore; + + /** + * Builds a new MultiMap file store + * @param fileName - the path + file name without the extension + */ + constructor(fileName: string) { + this.#store = new S2MMapStore(fileName); + } + + /** @returns - the length of the map */ + get length(): number { + return this.#store.length; + } + + /** + * Adds a value to the list of values associated with a key + * @param key - the key + * @param value - the value to store + */ + set(key: Uint64Cell, value: V): void { + this.#store.set(key, value); + } + + /** + * Gets the list of values associated with a key + * @param key - the key + * @returns the list of values if the map contains values for the key + */ + async get(key: Uint64Cell): Promise { + const value = await this.#store.get(key, 0); + if (value === undefined) return undefined; + return value[0] as V; + } +} diff --git a/src/dataStore/mmap.ts b/src/dataStore/mmap.ts index 8cd3620f..547f7e4f 100644 --- a/src/dataStore/mmap.ts +++ b/src/dataStore/mmap.ts @@ -1,14 +1,23 @@ import externalSort from './externalSort'; import { mmap } from 'bun'; import { closeSync, fstatSync, openSync, writeSync } from 'fs'; - -import type { Uint64Cell } from '../wasm/uint64'; -import type { Key, Stringifiable } from '..'; - -/** A low/high pair for faster comparisons */ -interface LowHigh { - low: number; - high: number; +import { compare, toCell } from '../dataStructures/uint64'; + +import type { Stringifiable } from '..'; +import type { Uint64, Uint64Cell } from '../dataStructures/uint64'; + +/** Options to create a S2MMapStore */ +export interface Options { + /** If true, then the values are stored in the index section of the keys file */ + valuesAreIndex?: boolean; + /** If true, then the data is already sorted and get calls can be immediately returned */ + isSorted?: boolean; + /** The maximum heap size in bytes for each grouping of data. */ + maxHeap?: number; + /** The number of threads to use for sorting */ + threadCount?: number; + /** If desired, a temporary directory to use */ + tmpDir?: string; } /** @@ -18,53 +27,60 @@ interface LowHigh { * and read-only. */ export class S2MMapStore { - #state: 'read' | 'write' = 'write'; + #state: 'read' | 'write' = 'read'; #size = 0; #sorted: boolean; + #maxHeap?: number; + #threadCount?: number; + #tmpDir?: string; // options #indexIsValues = false; // write params #valueOffset = 0; - #keyFd: number; - #valueFd: number; + #keyFd: number = -1; + #valueFd: number = -1; // readers #keyReader!: Uint8Array; #valueReader!: Uint8Array; /** * Builds a new File based KV - * @param fileName - the file name without the extension - * @param isSorted - set to true if the keys are already sorted - * @param valuesAreIndex - set to true if the values are stored in the index section of the keys file + * @param fileName - the path + file name without the extension + * @param options - the options of how the store should be created and ued */ constructor( public readonly fileName: string, - isSorted = false, - valuesAreIndex = false, + options?: Options, ) { - this.#sorted = isSorted; - this.#indexIsValues = valuesAreIndex; - this.#keyFd = openSync(`${fileName}.keys`, 'a'); - if (!this.#indexIsValues) this.#valueFd = openSync(`${fileName}.values`, 'a'); - else this.#valueFd = -1; + this.#sorted = options?.isSorted ?? false; + this.#indexIsValues = options?.valuesAreIndex ?? false; + this.#maxHeap = options?.maxHeap; + this.#threadCount = options?.threadCount; + this.#tmpDir = options?.tmpDir; + if (!this.#sorted) this.#switchToWriteState(); // Update the size if the file already existed const stat = fstatSync(this.#keyFd); if (stat.size >= 16) this.#size = stat.size / 16; } + /** @returns - the length of the store */ + get length(): number { + return this.#size; + } + /** * Adds a value to be associated with a key - * @param key - the key + * @param key - the uint64 id * @param value - the value to store */ - set(key: Key, value: V): void { - if (this.#state !== 'write') throw new Error('Can no longer write to KVFile store.'); + set(key: Uint64, value: V): void { + this.#switchToWriteState(); // prepare value const valueStr = JSON.stringify(value); const valueBuf = Buffer.from(valueStr); // write key offset as a uint64 const buffer = Buffer.alloc(16); - const { low, high } = this.#getLowHigh(key); + const { low, high } = toCell(key); buffer.writeUInt32LE(low, 0); buffer.writeUInt32LE(high, 4); // write value offset to point to the value position in the `${path}.values` @@ -96,11 +112,11 @@ export class S2MMapStore { * @param bigint - set to true if the key is a bigint * @returns the value if the map contains values for the key */ - get(key: Key, max?: number, bigint = false): V[] | undefined { - if (!this.#sorted) throw new Error('Not sorted, please call "switchToReadState" first'); + async get(key: Uint64, max?: number, bigint = false): Promise { + await this.#switchToReadState(); let lowerIndex = this.#lowerBound(key); if (lowerIndex >= this.#size) return undefined; - const { low: lowID, high: highID } = this.#getLowHigh(key); + const { low: lowID, high: highID } = toCell(key); const res: V[] = []; while (true) { const keySlice = this.#keyReader.subarray(lowerIndex * 16, lowerIndex * 16 + 16); @@ -125,29 +141,53 @@ export class S2MMapStore { return res; } + /** Sort the data if not sorted */ + async sort(): Promise { + await this.#switchToReadState(); + } + /** - * Check if the map contains the key - * @param key - the key - * @returns true if the map contains value(s) for the key + * Iterates over all values in the store + * @param bigint - set to true if the value is a bigint stored in the index + * @yields an iterator */ - has(key: Key): boolean { - if (!this.#sorted) throw new Error('Not sorted, please call "switchToReadState" first'); - const lowerIndex = this.#lowerBound(key); - if (lowerIndex >= this.#size) return false; - const { low: lowID, high: highID } = this.#getLowHigh(key); - const keySlice = this.#keyReader.subarray(lowerIndex * 16, lowerIndex * 16 + 8); - const buf = Buffer.from(keySlice); - const low = buf.readUint32LE(0); - const high = buf.readUint32LE(4); - return low === lowID && high === highID; + async *entries(bigint = false): AsyncIterableIterator<{ key: Uint64Cell; value: V }> { + await this.#switchToReadState(); + for (let i = 0; i < this.#size; i++) { + const keySlice = this.#keyReader.subarray(i * 16, i * 16 + 16); + const buffer = Buffer.from(keySlice); + const keyLow = buffer.readUInt32LE(0); + const keyHigh = buffer.readUInt32LE(4); + const valueOffset = buffer.readUInt32LE(8); + const valueLength = buffer.readUInt32LE(12); + if (this.#indexIsValues) { + const value = bigint + ? ((BigInt(valueOffset) + (BigInt(valueLength) << 32n)) as unknown as V) + : ((valueOffset + (valueLength << 32)) as unknown as V); + yield { key: { low: keyLow, high: keyHigh }, value }; + } else { + const valSlice = this.#valueReader.subarray(valueOffset, valueOffset + valueLength); + const valueBuf = Buffer.from(valSlice); + const value = JSON.parse(valueBuf.toString()) as V; + yield { key: { low: keyLow, high: keyHigh }, value }; + } + } + } + + /** Switches to write state if in read. */ + #switchToWriteState(): void { + if (this.#state === 'write') return; + this.#state = 'write'; + this.#keyFd = openSync(`${this.fileName}.keys`, 'w'); + if (!this.#indexIsValues) this.#valueFd = openSync(`${this.fileName}.values`, 'w'); } /** Switches to read state if in write. Also sort the keys. */ - async switchToReadState(): Promise { + async #switchToReadState(): Promise { if (this.#state === 'read') return; this.#state = 'read'; - closeSync(this.#keyFd); - if (!this.#indexIsValues) closeSync(this.#valueFd); + if (this.#keyFd > 0) closeSync(this.#keyFd); + if (!this.#indexIsValues && this.#valueFd > 0) closeSync(this.#valueFd); await this.#sort(); this.#keyReader = mmap(`${this.fileName}.sortedkeys`); if (!this.#indexIsValues) this.#valueReader = mmap(`${this.fileName}.values`); @@ -156,7 +196,13 @@ export class S2MMapStore { /** Sort the data */ async #sort(): Promise { if (this.#sorted) return; - await externalSort([`${this.fileName}.keys`], `${this.fileName}.sortedKeys`); + await externalSort( + [`${this.fileName}.keys`], + `${this.fileName}.sortedKeys`, + this.#maxHeap, + this.#threadCount, + this.#tmpDir, + ); this.#sorted = true; } @@ -164,8 +210,8 @@ export class S2MMapStore { * @param id - the id to search for * @returns the starting index from the lower bound of the id */ - #lowerBound(id: Key): number { - const loHiID = this.#getLowHigh(id); + #lowerBound(id: Uint64): number { + const loHiID = toCell(id); // lower bound search let lo: number = 0; let hi: number = this.#size; @@ -174,7 +220,7 @@ export class S2MMapStore { while (lo < hi) { mid = Math.floor(lo + (hi - lo) / 2); const loHi = this.#getKey(mid); - if (this.#compareLowHigh(loHi, loHiID) === -1) { + if (compare(loHi, loHiID) === -1) { lo = mid + 1; } else { hi = mid; @@ -188,50 +234,9 @@ export class S2MMapStore { * @param index - the index to get the key from * @returns the key */ - #getKey(index: number): LowHigh { + #getKey(index: number): Uint64Cell { const key = this.#keyReader.subarray(index * 16, index * 16 + 8); const buf = Buffer.from(key); - return { - low: buf.readUint32LE(0), - high: buf.readUint32LE(4), - }; - } - - /** - * @param lohiA - the first LowHigh - * @param lohiB - the second LowHigh - * @returns -1 | 0 | 1 - */ - #compareLowHigh(lohiA: LowHigh, lohiB: LowHigh): -1 | 0 | 1 { - if (lohiA.high < lohiB.high) return -1; - if (lohiA.high > lohiB.high) return 1; - if (lohiA.low < lohiB.low) return -1; - if (lohiA.low > lohiB.low) return 1; - return 0; - } - - /** - * @param key - the key used by the S2MMapStore - * @returns the low and high parts of the key - */ - #getLowHigh(key: Key): LowHigh { - if (typeof key === 'number') { - const keyBig = BigInt(key); - return { - low: Number(keyBig & 0xffffffffn), - high: Number(keyBig >> 32n) & 0xffffffff, - }; - } else if (typeof key === 'bigint') { - return { - low: Number(key & 0xffffffffn), - high: Number(key >> 32n) & 0xffffffff, - }; - } else { - const { low, high } = key as Uint64Cell; - return { - low, - high, - }; - } + return { low: buf.readUint32LE(0), high: buf.readUint32LE(4) }; } } diff --git a/src/dataStore/multimap/file.ts b/src/dataStore/multimap/file.ts index e69de29b..68354b2f 100644 --- a/src/dataStore/multimap/file.ts +++ b/src/dataStore/multimap/file.ts @@ -0,0 +1,46 @@ +import { S2FileStore } from '../file'; + +import type { MultiMapStore } from '.'; +import type { Stringifiable } from '..'; +import type { Uint64Cell } from '../../dataStructures/uint64'; + +/** File based multimap store */ +export class FileMultiMap implements MultiMapStore { + #store: S2FileStore; + + /** + * Builds a new MultiMap file store + * @param fileName - the path + file name without the extension + */ + constructor(fileName: string) { + this.#store = new S2FileStore(fileName); + } + + /** @returns - the length of the map */ + get length(): number { + return this.#store.length; + } + + /** + * Adds a value to the list of values associated with a key + * @param key - the key + * @param value - the value to store + */ + set(key: Uint64Cell, value: V): void { + this.#store.set(key, value); + } + + /** + * Gets the list of values associated with a key + * @param key - the key + * @returns the list of values if the map contains values for the key + */ + async get(key: Uint64Cell): Promise { + return await this.#store.get(key); + } + + /** Closes the store */ + close(): void { + this.#store.close(); + } +} diff --git a/src/dataStore/multimap/index.ts b/src/dataStore/multimap/index.ts index 4c76425e..ab2f013f 100644 --- a/src/dataStore/multimap/index.ts +++ b/src/dataStore/multimap/index.ts @@ -1,27 +1,33 @@ -import type { Key, Stringifiable } from '..'; +import type { Stringifiable } from '..'; +import type { Uint64Cell } from '../../dataStructures/uint64'; /** Represents a key-value store */ -export interface MultiMapStore { - get: (key: K) => V[] | undefined; - set: (key: K, value: V) => void; - has: (key: K) => boolean; +export interface MultiMapStore { + length: number; + get: ((key: Uint64Cell) => V[] | undefined) | ((key: Uint64Cell) => Promise); + set: (key: Uint64Cell, value: V) => void; } /** A local multimap key-value store */ -export class MultiMap implements MultiMapStore { - private map: Map; +export class MultiMap implements MultiMapStore { + private map: Map; /** Builds a new MultiMap */ constructor() { this.map = new Map(); } + /** @returns - the length of the map */ + get length(): number { + return this.map.size; + } + /** * Adds a value to the list of values associated with a key * @param key - the key * @param value - the value to store */ - set(key: K, value: V): void { + set(key: Uint64Cell, value: V): void { const list = this.get(key); if (list === undefined) { this.map.set(key, [value]); @@ -35,16 +41,7 @@ export class MultiMap implements MultiMapStore * @param key - the key * @returns the list of values if the map contains values for the key */ - get(key: K): V[] | undefined { + get(key: Uint64Cell): V[] | undefined { return this.map.get(key); } - - /** - * Check if the map contains the key - * @param key - the key - * @returns true if the map contains value(s) for the key - */ - has(key: K): boolean { - return this.map.has(key); - } } diff --git a/src/dataStore/multimap/mmap.ts b/src/dataStore/multimap/mmap.ts new file mode 100644 index 00000000..0c42c928 --- /dev/null +++ b/src/dataStore/multimap/mmap.ts @@ -0,0 +1,41 @@ +import { S2MMapStore } from '../mmap'; + +import type { MultiMapStore } from '.'; +import type { Stringifiable } from '..'; +import type { Uint64Cell } from '../../dataStructures/uint64'; + +/** File based multimap store */ +export class FileMultiMap implements MultiMapStore { + #store: S2MMapStore; + + /** + * Builds a new MultiMap file store + * @param fileName - the path + file name without the extension + */ + constructor(fileName: string) { + this.#store = new S2MMapStore(fileName); + } + + /** @returns - the length of the map */ + get length(): number { + return this.#store.length; + } + + /** + * Adds a value to the list of values associated with a key + * @param key - the key + * @param value - the value to store + */ + set(key: Uint64Cell, value: V): void { + this.#store.set(key, value); + } + + /** + * Gets the list of values associated with a key + * @param key - the key + * @returns the list of values if the map contains values for the key + */ + async get(key: Uint64Cell): Promise { + return await this.#store.get(key); + } +} diff --git a/src/dataStore/vector/file.ts b/src/dataStore/vector/file.ts index e69de29b..567c710f 100644 --- a/src/dataStore/vector/file.ts +++ b/src/dataStore/vector/file.ts @@ -0,0 +1,58 @@ +import { S2FileStore } from '../file'; + +import type { VectorKey, VectorStore } from '.'; + +/** File based vector store */ +export class FileVector implements VectorStore { + #store: S2FileStore; + /** @param fileName - the path + file name without the extension */ + constructor(fileName: string) { + this.#store = new S2FileStore(fileName); + } + + /** @returns the length of the store */ + get length(): number { + return this.#store.length; + } + + /** @param value - store the value */ + push(value: V): void { + this.#store.set(value.cell, value); + } + + /** + * @param index - the position in the store to get the value from + * @returns the value + */ + async get(index: number): Promise { + const value = await this.#store.get(index); + if (value === undefined) throw new Error('Value not found'); + return value[0] as V; + } + + /** Sort the store */ + async sort(): Promise { + await this.#store.sort(); + } + + /** + * iterate through the values + * @yields an iterator + */ + async *values(): AsyncGenerator { + for await (const { value } of this.#store.entries()) yield value as V; + } + + /** + * iterate through the values + * @returns an iterator + */ + [Symbol.iterator](): AsyncGenerator { + return this.values(); + } + + /** Closes the store */ + close(): void { + this.#store.close(); + } +} diff --git a/src/dataStore/vector/index.ts b/src/dataStore/vector/index.ts index 4bb1a2f7..6d83a1e5 100644 --- a/src/dataStore/vector/index.ts +++ b/src/dataStore/vector/index.ts @@ -1,17 +1,27 @@ -import type { Stringifiable } from '../'; +import { compare } from '../../dataStructures/uint64'; + +import type { Uint64Cell } from '../../dataStructures/uint64'; + +/** The kind of input required to store a vector for proper indexing */ +export interface VectorKey { + cell: Uint64Cell; +} /** Represents a vector store or an array */ -export interface VectorStore { +export interface VectorStore { push: (value: V) => void; - get: (index: number) => V; - sort: (compareFn?: (a: V, b: V) => number) => void; - length: () => number; - values: () => IterableIterator; - [Symbol.iterator]: () => IterableIterator; + get: (index: number) => Promise; + length: number; + values: (() => Generator) | (() => AsyncGenerator); + sort: (() => void) | (() => Promise); + [Symbol.iterator]: (() => Generator) | (() => AsyncGenerator); } -/** Just a placeholder to explain what a local key-value store essentially is */ -export class Vector implements VectorStore { +/** A constructor for a vector store */ +export type VectorStoreConstructor = new () => VectorStore; + +/** A local vector key-value store */ +export class Vector implements VectorStore { #store: V[] = []; /** @param value - the value to store */ @@ -23,36 +33,35 @@ export class Vector implements VectorStore { * @param index - the position in the store to get the value from * @returns the value */ - get(index: number): V { - return this.#store[index]; - } - - /** - * Sort the store - * @param compareFn - the compare function explaining how the data should be sorted - */ - sort(compareFn?: (a: V, b: V) => number): void { - this.#store.sort(compareFn); + async get(index: number): Promise { + return await this.#store[index]; } /** @returns the length of the store */ - length(): number { + get length(): number { return this.#store.length; } /** * iterate through the values - * @returns an iterator + * @yields an iterator */ - values(): IterableIterator { - return this.#store.values(); + *values(): Generator { + for (const value of this.#store) yield value; + } + + /** Sort the store in place */ + sort(): void { + this.#store.sort((a, b): -1 | 0 | 1 => { + return compare(a.cell, b.cell); + }); } /** * iterate through the values * @returns an iterator */ - [Symbol.iterator](): IterableIterator { + [Symbol.iterator](): Generator { return this.values(); } } diff --git a/src/dataStore/vector/mmap.ts b/src/dataStore/vector/mmap.ts new file mode 100644 index 00000000..9267d57c --- /dev/null +++ b/src/dataStore/vector/mmap.ts @@ -0,0 +1,53 @@ +import { S2MMapStore } from '../mmap'; + +import type { VectorKey, VectorStore } from '.'; + +/** File based vector store */ +export class FileVector implements VectorStore { + #store: S2MMapStore; + /** @param fileName - the path + file name without the extension */ + constructor(fileName: string) { + this.#store = new S2MMapStore(fileName); + } + + /** @returns the length of the store */ + get length(): number { + return this.#store.length; + } + + /** @param value - store the value */ + push(value: V): void { + this.#store.set(value.cell, value); + } + + /** + * @param index - the position in the store to get the value from + * @returns the value + */ + async get(index: number): Promise { + const value = await this.#store.get(index); + if (value === undefined) throw new Error('Value not found'); + return value[0] as V; + } + + /** Sort the store */ + async sort(): Promise { + await this.#store.sort(); + } + + /** + * iterate through the values + * @yields an iterator + */ + async *values(): AsyncGenerator { + for await (const { value } of this.#store.entries()) yield value as V; + } + + /** + * iterate through the values + * @returns an iterator + */ + [Symbol.iterator](): AsyncGenerator { + return this.values(); + } +} diff --git a/src/dataStructures/pointCluster.ts b/src/dataStructures/pointCluster.ts index de117a61..24ae5175 100644 --- a/src/dataStructures/pointCluster.ts +++ b/src/dataStructures/pointCluster.ts @@ -11,11 +11,19 @@ import { toST, } from '../geometry/s2/point'; +import type { PointShape } from './pointIndex'; import type { S1ChordAngle } from '../geometry/s1/chordAngle'; import type { Face, Point3D, Projection, Properties, S2CellId } from '../geometry'; +import type { VectorStoreConstructor } from '../dataStore/vector'; + +/** The kind of input required to store a point for proper indexing */ +export type ClusterStore = VectorStoreConstructor>; + /** Options for point clustering */ export interface ClusterOptions { + /** type of store to use. Defaults to an in memory store */ + store?: ClusterStore; /** projection to use */ projection?: Projection; /** Name of the layer to build when requesting a tile */ @@ -29,25 +37,27 @@ export interface ClusterOptions { } /** A cluster is a storage device to maintain groups of information in a cluster */ -export class Cluster { - visited: boolean = false; - sum: number = 1; +export interface Cluster { + properties: Properties; + visited: boolean; + sum: number; +} - /** - * @param ref - the reference data - */ - constructor(public ref: Properties) {} +/** + * @param properties - the properties associated with the cluster + * @returns - a new cluster + */ +function newCluster(properties: Properties): Cluster { + return { properties, visited: false, sum: 1 }; +} - /** - * @param ref - the reference data - * @param sum - the sum of points - * @returns - a new cluster - */ - static fromSum(ref: Properties, sum: number): Cluster { - const cluster = new Cluster(ref); - cluster.sum = sum; - return cluster; - } +/** + * @param properties - the properties associated with the cluster + * @param sum - the sum of the cluster + * @returns - a new cluster with the correct sum and properties data + */ +function sumToCluster(properties: Properties, sum: number): Cluster { + return { properties, visited: false, sum }; } /** Compare two data items, return true to merge data */ @@ -60,7 +70,6 @@ export default class PointCluster { minzoom: number; maxzoom: number; radius: number; - // { [zoom]: Index } indexes = new Map>(); /** @param options - cluster options on how to build the cluster */ @@ -71,7 +80,7 @@ export default class PointCluster { this.maxzoom = Math.min(options?.maxzoom ?? 16, 29); this.radius = options?.radius ?? 40; for (let zoom = this.minzoom; zoom <= this.maxzoom; zoom++) { - this.indexes.set(zoom, new PointIndex()); + this.indexes.set(zoom, new PointIndex(options?.store)); } } @@ -82,7 +91,7 @@ export default class PointCluster { */ insert(point: Point3D, data: Properties): void { const maxzoomIndex = this.indexes.get(this.maxzoom); - maxzoomIndex?.insert(point, new Cluster(data)); + maxzoomIndex?.insert(point, newCluster(data)); } /** @@ -109,7 +118,7 @@ export default class PointCluster { * Build the clusters when done adding points * @param cmp_ - custom compare function */ - buildClusters(cmp_?: Comparitor): void { + async buildClusters(cmp_?: Comparitor): Promise { const { minzoom, maxzoom } = this; // const cmp = cmp_ orelse defaultCmp; const cmp: Comparitor = cmp_ ?? ((_a: Properties, _b: Properties) => true); @@ -117,7 +126,7 @@ export default class PointCluster { const curIndex = this.indexes.get(zoom); const queryIndex = this.indexes.get(zoom - 1); if (curIndex === undefined || queryIndex === undefined) throw new Error('Index not found'); - if (zoom === maxzoom) this.#cluster(zoom, queryIndex, curIndex, cmp); + if (zoom === maxzoom) await this.#cluster(zoom, queryIndex, curIndex, cmp); } } @@ -127,14 +136,14 @@ export default class PointCluster { * @param currIndex - the index to insert into * @param cmp - the compare function */ - #cluster( + async #cluster( zoom: number, queryIndex: PointIndex, currIndex: PointIndex, cmp: Comparitor, - ): void { + ): Promise { const radius = this.#getLevelRadius(zoom); - for (const clusterPoint of queryIndex) { + for await (const clusterPoint of queryIndex) { const { point, data: clusterData } = clusterPoint; if (clusterData.visited) continue; clusterData.visited = true; @@ -142,10 +151,10 @@ export default class PointCluster { const newClusterPoint = mulScalar(point, clusterData.sum); let newNumPoints = clusterData.sum; // joining all points found within radius - const points = queryIndex.searchRadius(point, radius); + const points = await queryIndex.searchRadius(point, radius); for (const { point: foundPoint, data: foundData } of points) { // only add points that match or have not been visited already - if (!cmp(clusterData.ref, foundData.ref) || foundData.visited) continue; + if (!cmp(clusterData.properties, foundData.properties) || foundData.visited) continue; foundData.visited = true; // weighted add to newClusterPoint position addMut(newClusterPoint, mulScalar(foundPoint, foundData.sum)); @@ -155,7 +164,7 @@ export default class PointCluster { divMutScalar(newClusterPoint, newNumPoints); normalize(newClusterPoint); // store the new cluster point - currIndex.insert(newClusterPoint, Cluster.fromSum(clusterData.ref, newNumPoints)); + currIndex.insert(newClusterPoint, sumToCluster(clusterData.properties, newNumPoints)); } } @@ -163,33 +172,33 @@ export default class PointCluster { * @param id - the cell id * @returns - the data within the range of the tile id */ - getCellData(id: S2CellId): undefined | Point[] { + async getCellData(id: S2CellId): Promise[]> { const { minzoom, maxzoom, indexes } = this; const zoom = level(id); if (zoom < minzoom) return; const [min, max] = range(id); const levelIndex = indexes.get(Math.min(zoom, maxzoom)); - return levelIndex?.searchRange(min, max); + return await levelIndex?.searchRange(min, max); } /** * @param id - the id of the vector tile * @returns - the vector tile */ - getTile(id: S2CellId): undefined | Tile { - const data = this.getCellData(id); + async getTile(id: S2CellId): Promise { + const data = await this.getCellData(id); if (data === undefined) return; const tile = new Tile(id); for (const { point, data: cluster } of data) { const [face, s, t] = toST(point); - const { sum, ref } = cluster; + const { sum, properties } = cluster; tile.addFeature( { type: 'VectorFeature', face, geometry: { is3D: false, type: 'Point', coordinates: { x: s, y: t, m: { sum } } }, - properties: ref, + properties, }, this.layerName, ); diff --git a/src/dataStructures/pointIndex.ts b/src/dataStructures/pointIndex.ts index c1bdc7b0..8156627b 100644 --- a/src/dataStructures/pointIndex.ts +++ b/src/dataStructures/pointIndex.ts @@ -1,49 +1,71 @@ -import Uint64CellGenerator from '../wasm/uint64'; +import { Vector } from '../dataStore/vector'; import { fromS2Points } from '../geometry/s1/chordAngle'; import { range } from '../geometry'; +import { compare, fromS2Point, toCell } from '../dataStructures/uint64'; import { fromS1ChordAngle, getIntersectingCells } from '../geometry/s2/cap'; -import type { S1ChordAngle } from '../geometry/s1/chordAngle'; -import type { Uint64Cell } from '../wasm/uint64'; -import type { Point3D, S2CellId } from '../geometry'; +import { fromLonLat, fromST } from '../geometry/s2/point'; -/** A point shape to be indexed */ -export class PointShape { - /** - * @param cell - the cell that defines the point - * @param point - the point to track current location - * @param data - the data associated with the point - */ - constructor( - public cell: Uint64Cell, - public point: Point3D, - public data: T, - ) {} +import type { S1ChordAngle } from '../geometry/s1/chordAngle'; +import type { Stringifiable } from '../dataStore'; +import type { Face, Point3D } from '../geometry'; +import type { Uint64, Uint64Cell } from '../dataStructures/uint64'; +import type { VectorStore, VectorStoreConstructor } from '../dataStore/vector'; + +/** The kind of input required to store a point for proper indexing */ +export interface PointShape { + cell: Uint64Cell; + point: Point3D; + data: T; } /** An index of cells with radius queries */ -export default class PointIndex { - #store: PointShape[] = []; +export default class PointIndex { + #store: VectorStore>; #unsorted: boolean = false; - cellGen = new Uint64CellGenerator(); + + /** @param store - the store to index. May be an in memory or disk */ + constructor(store: VectorStoreConstructor> = Vector) { + this.#store = new store(); + } /** * @param point - the point to be indexed * @param data - the data associated with the point */ insert(point: Point3D, data: T): void { - const cell = this.cellGen.fromS2Point(point); - this.#store.push(new PointShape(cell, point, data)); + this.#store.push({ cell: fromS2Point(point), point, data }); this.#unsorted = true; } + /** + * Add a lon-lat pair to the cluster + * @param lon - longitude in degrees + * @param lat - latitude in degrees + * @param data - the data associated with the point + */ + insertLonLat(lon: number, lat: number, data: T): void { + this.insert(fromLonLat(lon, lat), data); + } + + /** + * @param face - the face of the cell + * @param s - the s coordinate + * @param t - the t coordinate + * @param data - the data associated with the point + */ + insertFaceST(face: Face, s: number, t: number, data: T): void { + this.insert(fromST(face, s, t), data); + } + /** * iterate through the points - * @returns an iterator + * @yields a PointShape */ - [Symbol.iterator](): IterableIterator> { - this.#sort(); - return this.#store.values(); + async *[Symbol.asyncIterator](): AsyncGenerator> { + await this.#sort(); + // return this.#store.values(); + for (const value of this.#store) yield value; } /** @@ -51,17 +73,15 @@ export default class PointIndex { * @param points - array of the points to add */ insertPoints(points: PointShape[]): void { - this.#store.push(...points); + for (const point of points) this.#store.push(point); this.#unsorted = true; } /** Sort the index in place if unsorted */ - #sort(): void { + async #sort(): Promise { if (!this.#unsorted) return; - this.#store.sort((a, b) => { - return a.cell.compare(b.cell); - }); + await this.#store.sort(); this.#unsorted = false; } @@ -70,9 +90,9 @@ export default class PointIndex { * @param id - input id to seek the starting index of the search * @returns the starting index */ - lowerBound(id: S2CellId): number { - const cellID = this.cellGen.fromBigInt(id); - this.#sort(); + async lowerBound(id: Uint64): Promise { + const cellID = toCell(id); + await this.#sort(); // lower bound search let lo: number = 0; let hi: number = this.#store.length; @@ -80,7 +100,8 @@ export default class PointIndex { while (lo < hi) { mid = Math.floor(lo + (hi - lo) / 2); - if (this.#store[mid].cell.compare(cellID) === -1) { + const { cell: midCell } = await this.#store.get(mid); + if (compare(midCell, cellID) === -1) { lo = mid + 1; } else { hi = mid; @@ -95,14 +116,16 @@ export default class PointIndex { * @param high - the upper bound * @returns the points in the range */ - searchRange(low: S2CellId, high: S2CellId): PointShape[] { - this.#sort(); + async searchRange(low: Uint64, high: Uint64): Promise[]> { + await this.#sort(); const res: PointShape[] = []; - let lo = this.lowerBound(low); - const hiID = this.cellGen.fromBigInt(high); + let lo = await this.lowerBound(low); + const hiID = toCell(high); - while (lo < this.#store.length && this.#store[lo].cell.compare(hiID) <= 0) { - res.push(this.#store[lo]); + while (true) { + const currLo = await this.#store.get(lo); + if (lo < this.#store.length && compare(currLo.cell, hiID) <= 0) break; + res.push(currLo); lo++; } @@ -114,8 +137,8 @@ export default class PointIndex { * @param radius - the search radius * @returns the points within the radius */ - searchRadius(target: Point3D, radius: S1ChordAngle): PointShape[] { - this.#sort(); + async searchRadius(target: Point3D, radius: S1ChordAngle): Promise[]> { + await this.#sort(); const res: PointShape[] = []; if (radius < 0) return res; const cap = fromS1ChordAngle(target, radius, undefined); @@ -123,7 +146,7 @@ export default class PointIndex { // iterate each covering s2cell min-max range on store. check distance from found // store Cells to target and if within radius add to results const [min, max] = range(cell); - for (const point of this.searchRange(min, max)) { + for (const point of await this.searchRange(min, max)) { if (fromS2Points(target, point.point) < radius) res.push(point); } } diff --git a/src/dataStructures/uint64.ts b/src/dataStructures/uint64.ts new file mode 100644 index 00000000..0ecab741 --- /dev/null +++ b/src/dataStructures/uint64.ts @@ -0,0 +1,72 @@ +import { S2Point, fromS2Point as fromS2, fromST } from '../geometry'; + +import type { Face, Point3D, S2CellId } from '../geometry'; + +/** An Uint64Cell contains all the information needed to uniquely identify a 64-bit cell */ +export interface Uint64Cell { + low: number; + high: number; +} + +/** The 64-bit cell id in BigInt, Number, or Uint64Cell form */ +export type Uint64 = number | S2CellId | Uint64Cell; + +/** + * Convert a BigInt to an Uint64Cell representation + * @param id - the 64-bit cell id in BigInt or number form + * @returns - an Uint64Cell with the appropriate id and functions + */ +export function toCell(id: Uint64): Uint64Cell { + if (typeof id === 'object') return id; + const bigint = BigInt(id); + return { + low: Number(bigint & 0xffffffffn), + high: Number(bigint >> 32n) & 0xffffffff, + }; +} + +/** + * Convert a lon/lat to an Uint64Cell representation + * @param lon - longitude + * @param lat - latitude + * @returns - an Uint64Cell with the appropriate id and functions + */ +export function fromLonLat(lon: number, lat: number): Uint64Cell { + const { toST, fromLonLat } = S2Point; + const [face, s, t] = toST(fromLonLat(lon, lat)); + return fromFaceST(face, s, t); +} + +/** + * Convert a face/s/t to an Uint64Cell representation + * @param face - face on the sphere + * @param s - x position + * @param t - y position + * @returns - an Uint64Cell with the appropriate id and functions + */ +export function fromFaceST(face: Face, s: number, t: number): Uint64Cell { + const id = fromST(face, s, t); + return toCell(id); +} + +/** + * @param point - a vector point on the sphere + * @returns - an Uint64Cell with the appropriate id and functions + */ +export function fromS2Point(point: Point3D): Uint64Cell { + const id = fromS2(point); + return toCell(id); +} + +/** + * @param a - the first cell + * @param b - the second cell + * @returns -1 | 0 | 1 + */ +export function compare(a: Uint64Cell, b: Uint64Cell): -1 | 0 | 1 { + if (a.high < b.high) return -1; + if (a.high > b.high) return 1; + if (a.low < b.low) return -1; + if (a.low > b.low) return 1; + return 0; +} diff --git a/src/geometry/index.ts b/src/geometry/index.ts index c08c12c4..1f5afd1a 100644 --- a/src/geometry/index.ts +++ b/src/geometry/index.ts @@ -61,7 +61,7 @@ export interface BaseFeature< M = Record, D extends MValue = MValue, P extends Properties = Properties, - G = Geometry | VectorGeometry, + G = Geometry | VectorGeometry, > { type: T; id?: number; @@ -82,14 +82,14 @@ export type VectorFeature< M = Record, D extends MValue = MValue, P extends Properties = Properties, - G = VectorGeometry, + G = VectorGeometry, > = BaseFeature<'VectorFeature', M, D, P, G>; /** S2 Feature */ export interface S2Feature< M = Record, D extends MValue = MValue, P extends Properties = Properties, - G = VectorGeometry, + G = VectorGeometry, > extends BaseFeature<'S2Feature', M, D, P, G> { face: Face; } diff --git a/src/proj4/constants/datums.ts b/src/proj4/constants/datums.ts index 727650e9..bcc3a395 100644 --- a/src/proj4/constants/datums.ts +++ b/src/proj4/constants/datums.ts @@ -40,13 +40,6 @@ const nad83: ToWGS84Datum = { datumName: 'North_American_Datum_1983', }; -/** North_American_Datum_1927 Datum */ -const nad27: NADGRIDSDatum = { - nadgrids: ['@conus', '@alaska', '@ntv2_0.gsb', '@ntv1_can.dat'], - ellipse: 'clrk66', - datumName: 'North_American_Datum_1927', -}; - /** Potsdam Rauenberg 1950 DHDN Datum */ const potsdam: ToWGS84Datum = { datumParams: [598.1, 73.7, 418.2, 0.202, 0.045, -2.455, 6.7], @@ -158,6 +151,13 @@ export const DATUMS: Record = { gunung_segara, }; +/** North_American_Datum_1927 Datum */ +const nad27: NADGRIDSDatum = { + nadgrids: ['@conus', '@alaska', '@ntv2_0.gsb', '@ntv1_can.dat'], + ellipse: 'clrk66', + datumName: 'North_American_Datum_1927', +}; + export const NAD_GRIDS: Record = { nad27, }; diff --git a/src/proj4/datum.ts b/src/proj4/datum.ts index a1780419..05e6f438 100644 --- a/src/proj4/datum.ts +++ b/src/proj4/datum.ts @@ -7,7 +7,6 @@ import { PJD_GRIDSHIFT, PJD_NODATUM, PJD_WGS84, - R2D, SEC_TO_RAD, SRS_WGS84_ESQUARED, SRS_WGS84_SEMIMAJOR, @@ -15,23 +14,25 @@ import { } from './constants'; import type { DatumParams } from 's2-tools/readers/wkt'; +import type { NadSubGrid } from 's2-tools/readers/nadgrid'; import type { VectorPoint } from 's2-tools/geometry'; -import type { ProjectionParams, ProjectionTransform } from '.'; +import type { ProjectionParams, ProjectionTransform, Transformer } from '.'; const { abs, sin, cos, sqrt, atan2, atan, PI, floor } = Math; /** * @param params - projection specific parameters to be adjusted * @param nadgrids - nad grid data if applicable + * @param transformer - the projection transformer to potentially pull data from */ -export function buildDatum(params: ProjectionParams): void { +export function buildDatum(params: ProjectionParams, transformer: Transformer): void { if (params.datumCode === undefined || params.datumCode === 'none') { params.datumType = PJD_NODATUM; } else { params.datumType = PJD_WGS84; } - // TODO: If datumParams is undefined, check against datum constants using datumCode + // If datumParams is undefined, check against datum constants using datumCode if (params.datumParams === undefined) { const datum = DATUMS[params.datumCode?.toLowerCase() ?? '']; if (datum !== undefined) { @@ -61,11 +62,11 @@ export function buildDatum(params: ProjectionParams): void { } } - // TODO: Just upgrade datumType if grids exists in params - // if (params.nadgrids) { - // params.datumType = PJD_GRIDSHIFT; - // params.grids = params.nadgrids; - // } + // Upgrade datumType if grids exists in params and pull in the grids we need + if (params.nadgrids !== undefined) { + params.datumType = PJD_GRIDSHIFT; + params.grids = transformer.getGridsFromString(params.nadgrids); + } } /** @@ -335,7 +336,7 @@ function checkParams(type: number): boolean { * @param source * @param dest */ -export function checkNotWGS(source: ProjectionTransform, dest: ProjectionTransform) { +export function checkNotWGS(source: ProjectionTransform, dest: ProjectionTransform): boolean { return ( ((source.datumType === PJD_3PARAM || source.datumType === PJD_7PARAM || @@ -364,14 +365,13 @@ export function datumTransform( if (source.datumType === PJD_NODATUM || dest.datumType === PJD_NODATUM) return; // If this datum requires grid shifts, then apply it to geodetic coordinates. - let source_a = source.a; - let source_es = source.es; + let sourceA = source.a; + let sourceEs = source.es; if (source.datumType === PJD_GRIDSHIFT) { // source - const gridShiftCode = applyGridShift(source, false, point); - if (gridShiftCode !== 0) return; - source_a = SRS_WGS84_SEMIMAJOR; - source_es = SRS_WGS84_ESQUARED; + applyGridShift(source, false, point); + sourceA = SRS_WGS84_SEMIMAJOR; + sourceEs = SRS_WGS84_ESQUARED; } let dest_a = dest.a; @@ -385,25 +385,22 @@ export function datumTransform( // Do we need to go through geocentric coordinates? if ( - source_es === dest_es && - source_a === dest_a && + sourceEs === dest_es && + sourceA === dest_a && !checkParams(source.datumType) && !checkParams(dest.datumType) ) return; // Convert to geocentric coordinates. - geodeticToGeocentric(point, source_es, source_a); + geodeticToGeocentric(point, sourceEs, sourceA); // Convert between datums if (checkParams(source.datumType)) geocentricToWgs84(point, source.datumType, source.datumParams); if (checkParams(dest.datumType)) geocentricFromWgs84(point, dest.datumType, dest.datumParams); // Convert back to geodetic coordinates. geocentricToGeodetic(point, dest_es, dest_a, dest_b); - if (dest.datumType === PJD_GRIDSHIFT) { - const destGridShiftResult = applyGridShift(dest, true, point); - if (destGridShiftResult !== 0) return; - } + if (dest.datumType === PJD_GRIDSHIFT) applyGridShift(dest, true, point); } /** @@ -411,25 +408,27 @@ export function datumTransform( * @param inverse * @param point */ -export function applyGridShift(source, inverse, point) { - if (source.grids === null || source.grids.length === 0) { - throw new Error('Grid shift grids not found'); - } +export function applyGridShift( + source: ProjectionTransform, + inverse: boolean, + point: VectorPoint, +): void { + const { grids } = source; + if (grids === undefined) throw new Error('Grid shift grids not found'); const input = { x: -point.x, y: point.y }; let output = { x: Number.NaN, y: Number.NaN }; - let onlyMandatoryGrids = false; const attemptedGrids = []; - outer: for (let i = 0; i < source.grids.length; i++) { - const grid = source.grids[i]; + outer: for (const grid of grids) { attemptedGrids.push(grid.name); if (grid.isNull) { output = input; break; } - onlyMandatoryGrids = grid.mandatory; - if (grid.grid === null) { + if (grid.grid === undefined) { if (grid.mandatory) { - throw new Error(`Unable to find mandatory grid '${grid.name}'`); + console.warn( + `Unable to find mandatory grid '${grid.name}'. Maybe have an incorrect result.`, + ); } continue; } @@ -437,11 +436,11 @@ export function applyGridShift(source, inverse, point) { for (let j = 0, jj = subgrids.length; j < jj; j++) { const subgrid = subgrids[j]; // skip tables that don't match our point at all - const epsilon = (abs(subgrid.del[1]) + abs(subgrid.del[0])) / 10000.0; - const minX = subgrid.ll[0] - epsilon; - const minY = subgrid.ll[1] - epsilon; - const maxX = subgrid.ll[0] + (subgrid.lim[0] - 1) * subgrid.del[0] + epsilon; - const maxY = subgrid.ll[1] + (subgrid.lim[1] - 1) * subgrid.del[1] + epsilon; + const epsilon = (abs(subgrid.del.y) + abs(subgrid.del.x)) / 10000.0; + const minX = subgrid.ll.x - epsilon; + const minY = subgrid.ll.y - epsilon; + const maxX = subgrid.ll.x + (subgrid.lim.x - 1) * subgrid.del.x + epsilon; + const maxY = subgrid.ll.y + (subgrid.lim.y - 1) * subgrid.del.y + epsilon; if (minY > input.y || minX > input.x || maxY < input.y || maxX < input.x) { continue; } @@ -452,13 +451,13 @@ export function applyGridShift(source, inverse, point) { } } if (isNaN(output.x)) { - throw new Error( - `Failed to find a grid shift table for location '${-input.x * R2D} ${input.y * R2D}' tried: '${attemptedGrids}'`, - ); + return; + // throw new Error( + // `Failed to find a grid shift table for location '${-input.x * R2D} ${input.y * R2D}' tried: '${attemptedGrids}'`, + // ); } point.x = -output.x; point.y = output.y; - return 0; } /** @@ -466,20 +465,15 @@ export function applyGridShift(source, inverse, point) { * @param inverse * @param ct */ -function applySubgridShift(pin, inverse, ct) { +function applySubgridShift(pin: VectorPoint, inverse: boolean, ct: NadSubGrid): VectorPoint { const val = { x: Number.NaN, y: Number.NaN }; - if (isNaN(pin.x)) { - return val; - } const tb = { x: pin.x, y: pin.y }; - tb.x -= ct.ll[0]; - tb.y -= ct.ll[1]; + tb.x -= ct.ll.x; + tb.y -= ct.ll.y; tb.x = adjustLon(tb.x - PI) + PI; const t = nadInterpolate(tb, ct); if (inverse) { - if (isNaN(t.x)) { - return val; - } + if (isNaN(t.x)) return val; t.x = tb.x - t.x; t.y = tb.y - t.y; let i = 9; @@ -495,12 +489,10 @@ function applySubgridShift(pin, inverse, ct) { dif = { x: tb.x - (del.x + t.x), y: tb.y - (del.y + t.y) }; t.x += dif.x; t.y += dif.y; - } while (i-- && abs(dif.x) > tol && abs(dif.y) > tol); - if (i < 0) { - throw new Error('Inverse grid shift iterator failed to converge.'); - } - val.x = adjustLon(t.x + ct.ll[0]); - val.y = t.y + ct.ll[1]; + } while (i-- > 0 && abs(dif.x) > tol && abs(dif.y) > tol); + if (i < 0) throw new Error('Inverse grid shift iterator failed to converge.'); + val.x = adjustLon(t.x + ct.ll.x); + val.y = t.y + ct.ll.y; } else { if (!isNaN(t.x)) { val.x = pin.x + t.x; @@ -514,22 +506,22 @@ function applySubgridShift(pin, inverse, ct) { * @param pin * @param ct */ -function nadInterpolate(pin: VectorPoint, ct): VectorPoint { - const t = { x: pin.x / ct.del[0], y: pin.y / ct.del[1] }; - const indx = { x: floor(t.x), y: floor(t.y) }; - const frct = { x: t.x - 1 * indx.x, y: t.y - 1.0 * indx.y }; +function nadInterpolate(pin: VectorPoint, ct: NadSubGrid): VectorPoint { + const t = { x: pin.x / ct.del.x, y: pin.y / ct.del.y }; + const indx: VectorPoint = { x: floor(t.x), y: floor(t.y) }; + const frct = { x: t.x - indx.x, y: t.y - indx.y }; const val = { x: NaN, y: NaN }; let inx; - if (indx.x < 0 || indx.x >= ct.lim[0]) return val; - if (indx.y < 0 || indx.y >= ct.lim[1]) return val; - inx = indx.y * ct.lim[0] + indx.x; - const f00 = { x: ct.cvs[inx][0], y: ct.cvs[inx][1] }; + if (indx.x < 0 || indx.x >= ct.lim.x) return val; + if (indx.y < 0 || indx.y >= ct.lim.y) return val; + inx = indx.y * ct.lim.x + indx.x; + const f00 = { x: ct.cvs[inx].x, y: ct.cvs[inx].y }; inx++; - const f10 = { x: ct.cvs[inx][0], y: ct.cvs[inx][1] }; - inx += ct.lim[0]; - const f11 = { x: ct.cvs[inx][0], y: ct.cvs[inx][1] }; + const f10 = { x: ct.cvs[inx].x, y: ct.cvs[inx].y }; + inx += ct.lim.x; + const f11 = { x: ct.cvs[inx].x, y: ct.cvs[inx].y }; inx--; - const f01 = { x: ct.cvs[inx][0], y: ct.cvs[inx][1] }; + const f01 = { x: ct.cvs[inx].x, y: ct.cvs[inx].y }; const m11 = frct.x * frct.y, m10 = frct.x * (1.0 - frct.y), m00 = (1.0 - frct.x) * (1.0 - frct.y), diff --git a/src/proj4/parseCode.ts b/src/proj4/parseCode.ts index 224936c3..1d16322c 100644 --- a/src/proj4/parseCode.ts +++ b/src/proj4/parseCode.ts @@ -11,13 +11,18 @@ import { isWKTProjection, parseWKTProjection } from 's2-tools/readers/wkt'; import type { DatumParams } from 's2-tools/readers/wkt'; import type { ProjectionParams } from './projections'; +import type { Transformer } from './transformer'; /** * TODO: Support json objects that use the https://proj.org/schemas/v0.7/projjson.schema.json * @param code * @param proj + * @param transformer */ -export function parseProj(code: string | ProjectionParams): ProjectionParams { +export function parseProj( + code: string | ProjectionParams, + transformer: Transformer, +): ProjectionParams { let params: ProjectionParams = {}; if (typeof code === 'object') params = code; else if (code[0] === '+') params = parseProj4Str(code); @@ -28,7 +33,7 @@ export function parseProj(code: string | ProjectionParams): ProjectionParams { deriveEccentricity(params); params.lat1 = params.lat1 ?? params.lat0; // Lambert_Conformal_Conic_1SP, for example, needs this params.k0 = params.k ?? params.k0; - buildDatum(params); + buildDatum(params, transformer); // filter undefined values Object.keys(params).forEach((key) => { // @ts-expect-error - key is a string diff --git a/src/proj4/projections/base.ts b/src/proj4/projections/base.ts index a14690a1..d8b25bfb 100644 --- a/src/proj4/projections/base.ts +++ b/src/proj4/projections/base.ts @@ -1,6 +1,7 @@ import { D2R, PJD_NODATUM, R2D } from '../constants'; import type { DatumParams } from 's2-tools/readers/wkt'; +import type { GridDefinition } from 's2-tools/readers/nadgrid'; import type { ProjectionTransform } from '.'; import type { VectorPoint } from 's2-tools/geometry'; @@ -56,6 +57,7 @@ export interface ProjectionParams { noRot?: boolean; rA?: boolean; projName?: string; + grids?: GridDefinition[]; } /** Base class for all projections */ @@ -97,6 +99,7 @@ export class ProjectionBase implements ProjectionTransform { approx = false; axis = 'enu'; nadgrids = '@null'; + grids?: GridDefinition[]; sphere = false; ellps = 'wgs84'; // Ellipsoid name diff --git a/src/proj4/projections/index.ts b/src/proj4/projections/index.ts index d8d1487e..6daf6f95 100644 --- a/src/proj4/projections/index.ts +++ b/src/proj4/projections/index.ts @@ -37,6 +37,7 @@ import { VanDerGrinten } from './vandg'; import { ProjectionBase } from './base'; import type { DatumParams } from 's2-tools/readers/wkt'; +import type { GridDefinition } from 's2-tools/readers/nadgrid'; import type { VectorPoint } from 's2json-spec'; export * from './aea'; @@ -88,6 +89,7 @@ export interface ProjectionTransform { toMeter?: number; fromGreenwich: number; datum?: string; + grids?: GridDefinition[]; datumCode: string; datumType: number; datumParams: DatumParams; diff --git a/src/proj4/transformer.ts b/src/proj4/transformer.ts index be6aa08b..b1aa2216 100644 --- a/src/proj4/transformer.ts +++ b/src/proj4/transformer.ts @@ -1,4 +1,5 @@ import * as EPSG_Codes from './projections/references'; +import { NadGridStore } from '../readers/nadgrid'; import { parseProj } from './parseCode'; import { ALL_DEFINITIONS, DEFAULT_DEFINITIONS, WGS84 } from './projections'; import { checkNotWGS, datumTransform } from './datum'; @@ -16,7 +17,7 @@ import type { * as needed to reduce code size and improve performance. * Both forward and inverse projections are default set to wgs84. */ -export class Transformer { +export class Transformer extends NadGridStore { // EPSG code definitions epsgs = new Map(); // Definitions are descriptions of projections @@ -32,6 +33,7 @@ export class Transformer { * @param destCode - convenience: if provided, we run `this.setDestination(destCode)` immediately */ constructor(sourceCode?: string | ProjectionParams, destCode?: string | ProjectionParams) { + super(); for (const def of DEFAULT_DEFINITIONS) this.insertDefinition(def); // defaults to a standard WGS84 lon-lat projection transform this.source = this.destination = this.wgs84 = this.#buildTransformer(WGS84); @@ -55,7 +57,7 @@ export class Transformer { */ #buildTransformer(code: string | ProjectionParams): ProjectionTransform { code = this.#parseEPSGCode(code); - const params = parseProj(code); + const params = parseProj(code, this); // search let def: ProjectionTransformDefinition | undefined; for (const name of [params.projName, params.name]) { @@ -72,14 +74,10 @@ export class Transformer { * @returns - if no EPSG code is found, returns the original code. Otherwise returns the EPSG definition */ #parseEPSGCode(code: string | ProjectionParams): string | ProjectionParams { - if (typeof code === 'string' && this.epsgs.has(code)) return this.epsgs.get(code)!; - else if ( - typeof code === 'object' && - typeof code.projName === 'string' && - this.epsgs.has(code.projName) - ) - return this.epsgs.get(code.projName)!; - else return code; + const codeName = (typeof code === 'string' ? code : code.projName)?.replaceAll(':', '_'); + const epsg = this.epsgs.get(codeName ?? ''); + if (epsg !== undefined) return epsg; + return code; } /** diff --git a/src/readers/README.md b/src/readers/README.md index d3c6c4fc..f3c1be6b 100644 --- a/src/readers/README.md +++ b/src/readers/README.md @@ -11,7 +11,7 @@ ### OTHERS - [ ] GTFS -- [ ] netCDF (currently only partially supported via nadgrid) +- [ ] netCDF - [ ] gdb (in gzipped form) - [ ] TIFFs (.tif, .tiff, .dem) - [ ] Images (.png, .jpg, .gif) diff --git a/src/readers/geotiff/constants.ts b/src/readers/geotiff/constants.ts index 357b20de..4095ead1 100644 --- a/src/readers/geotiff/constants.ts +++ b/src/readers/geotiff/constants.ts @@ -121,9 +121,7 @@ export const FIELD_TAG_NAMES = { 0xc5f2: 'LercParameters', }; -/** - * - */ +/** List of Tags and their representations */ export interface TagNames { // TIFF Baseline Artist?: string; @@ -137,42 +135,42 @@ export interface TagNames { ExtraSamples?: number[]; FillOrder?: number; FreeByteCounts?: number[]; - // 0x0120: 'FreeOffsets'; - // 0x0123: 'GrayResponseCurve'; - // 0x0122: 'GrayResponseUnit'; - // 0x013c: 'HostComputer'; + FreeOffsets?: number[]; + GrayResponseCurve?: number[]; + GrayResponseUnit?: number; + HostComputer?: string; ImageDescription?: string; ImageLength?: number; ImageWidth?: number; - // 0x010f: 'Make'; - // 0x0119: 'MaxSampleValue'; - // 0x0118: 'MinSampleValue'; - // 0x0110: 'Model'; - // 0x00fe: 'NewSubfileType'; - // 0x0112: 'Orientation'; + Make?: string; + MaxSampleValue?: number; + MinSampleValue?: number; + Model?: string; + NewSubfileType?: number; + Orientation?: number; PhotometricInterpretation?: number; PlanarConfiguration?: number; ResolutionUnit?: number; RowsPerStrip?: number; SamplesPerPixel?: number; - // 0x0131: 'Software'; + Software?: string; StripByteCounts?: number[]; StripOffsets?: number[]; - // 0x00ff: 'SubfileType'; - // 0x0107: 'Threshholding'; + SubfileType?: number; + Threshholding?: number; XResolution?: [number, number]; YResolution?: [number, number]; - // // TIFF Extended - // 0x0146: 'BadFaxLines'; - // 0x0147: 'CleanFaxData'; - // 0x0157: 'ClipPath'; - // 0x0148: 'ConsecutiveBadFaxLines'; - // 0x01b1: 'Decode'; - // 0x01b2: 'DefaultImageColor'; - // 0x010d: 'DocumentName'; - // 0x0150: 'DotRange'; - // 0x0141: 'HalftoneHints'; - // 0x015a: 'Indexed'; + // TIFF Extended + BadFaxLines?: number; + CleanFaxData?: number; + ClipPathName?: string; + ConsecutiveBadFaxLines?: number[]; + Decode?: number[]; + DefaultImageColor?: number; + DocumentName?: string; + DotRange?: number[]; + HalftoneHints?: number[]; + Indexed?: number; JPEGTables?: number[]; // 0x011d: 'PageName'; // 0x0129: 'PageNumber'; @@ -200,7 +198,7 @@ export interface TagNames { // 0x0212: 'YCbCrSubSampling'; // 0x0159: 'YClipPathUnits'; // 0x011f: 'YPosition'; - // // EXIF + // EXIF // 0x9202: 'ApertureValue'; // 0xa001: 'ColorSpace'; // 0x9004: 'DateTimeDigitized'; @@ -217,27 +215,26 @@ export interface TagNames { // 0x927c: 'MakerNote'; // 0x9201: 'ShutterSpeedValue'; // 0x9286: 'UserComment'; - // // IPTC - // 0x83bb: 'IPTC'; - // // ICC - // 0x8773: 'ICC Profile'; - // // XMP - // 0x02bc: 'XMP'; - // // GDAL - // 0xa480: 'GDAL_METADATA'; - // 0xa481: 'GDAL_NODATA'; - // // Photoshop - // 0x8649: 'Photoshop'; - // // GeoTiff - // 0x830e: 'ModelPixelScale'; - // 0x8482: 'ModelTiepoint'; - // 0x85d8: 'ModelTransformation'; + // IPTC + IPTC?: number[]; + // ICC + 'ICC Profile'?: number[]; + // XMP + XMP?: number[]; + // GDAL + GDAL_METADATA?: string; + GDAL_NODATA?: number; + // Photoshop + Photoshop?: string; + // GeoTiff + ModelPixelScale?: number[]; + ModelTiepoint?: number[]; ModelTransformation?: number[]; - // 0x87af: 'GeoKeyDirectory'; - // 0x87b0: 'GeoDoubleParams'; + GeoKeyDirectory?: GeoKeyDirectory; + GeoDoubleParams?: number[]; GeoAsciiParams?: string; - // // LERC - // 0xc5f2: 'LercParameters'; + // LERC + LercParameters?: number[]; } export const FIELD_TAG_TYPES = { diff --git a/src/readers/geotiff/decoder.ts b/src/readers/geotiff/decoder.ts index 8016350e..a71c7869 100644 --- a/src/readers/geotiff/decoder.ts +++ b/src/readers/geotiff/decoder.ts @@ -14,7 +14,7 @@ export function getDecoder(compression = 1): Decoder { if (compression === 1) return rawDecoder; else if (compression === 5) return lzwDecoder; else if (compression === 7) return jpegDecoder; - else if ([6, 7, 50001].includes(compression)) return imageDecoder; + else if ([6, 50001].includes(compression)) return imageDecoder; else if ([8, 32946].includes(compression)) return deflateDecoder; else if (compression === 32773) return packbitsDecoder; throw new Error(`Unsupported compression: ${compression}`); diff --git a/src/readers/geotiff/image.ts b/src/readers/geotiff/image.ts index 5cb3c846..b4feccd5 100644 --- a/src/readers/geotiff/image.ts +++ b/src/readers/geotiff/image.ts @@ -6,7 +6,7 @@ import { needsNormalization, normalizeArray, sum, toArrayType } from './imageUti import type { Reader } from '..'; import type { Transformer } from '../../proj4'; -import type { ArrayTypes, Decoder, ImageFileDirectory } from '.'; +import type { ArrayTypes, Decoder, GridReader, ImageFileDirectory } from '.'; import type { Properties, VectorMultiPoint, @@ -64,26 +64,26 @@ export class GeoTIFFImage { #littleEndian: boolean; #isTiled = false; #planarConfiguration = 1; - #transformer?: Transformer; + #transformer: Transformer; /** * @param reader * @param imageDirectory * @param littleEndian + * @param gridStore */ - constructor(reader: Reader, imageDirectory: ImageFileDirectory, littleEndian: boolean) { + constructor( + reader: Reader, + imageDirectory: ImageFileDirectory, + littleEndian: boolean, + gridStore: GridReader[], + ) { this.#reader = reader; this.#imageDirectory = imageDirectory; this.#littleEndian = littleEndian; if (imageDirectory.StripOffsets === undefined) this.#isTiled = true; if (imageDirectory.PlanarConfiguration !== undefined) this.#planarConfiguration = imageDirectory.PlanarConfiguration; - } - - /** Build a transformer if it doesn't exist. */ - getTransformer(): Transformer { - if (this.#transformer === undefined) - this.#transformer = buildTransform(this.#imageDirectory.geoKeyDirectory); - return this.#transformer; + this.#transformer = buildTransform(this.#imageDirectory.geoKeyDirectory, gridStore); } /** @@ -224,8 +224,7 @@ export class GeoTIFFImage { */ get originLL(): VectorPoint { const { origin } = this; - const transfomer = this.getTransformer(); - return transfomer.forward(origin); + return this.#transformer.forward(origin); } /** @@ -263,8 +262,7 @@ export class GeoTIFFImage { */ get resolutionLL(): VectorPoint { const { resolution } = this; - const transfomer = this.getTransformer(); - return transfomer.forward(resolution); + return this.#transformer.forward(resolution); } /** @@ -313,9 +311,8 @@ export class GeoTIFFImage { const maxY = Math.max(y1, y2); if (transform) { - const transformer = this.getTransformer(); - const { x: tminX, y: tminY } = transformer.forward({ x: minX, y: minY }); - const { x: tmaxX, y: tmaxY } = transformer.forward({ x: maxX, y: maxY }); + const { x: tminX, y: tminY } = this.#transformer.forward({ x: minX, y: minY }); + const { x: tmaxX, y: tmaxY } = this.#transformer.forward({ x: maxX, y: maxY }); return [tminX, tminY, tmaxX, tmaxY]; } else { return [minX, minY, maxX, maxY]; @@ -414,7 +411,6 @@ export class GeoTIFFImage { * @returns - The vector feature with rgba values incoded into the points */ async getMultiPointVector(): Promise { - const transformer = this.getTransformer(); const { width, height, alpha, data } = await this.getRGBA(); const [minX, minY, maxX, maxY] = this.getBoundingBox(false); const coordinates: VectorMultiPoint = []; @@ -437,7 +433,7 @@ export class GeoTIFFImage { const b = data[y * width * rgbaStride + x * rgbaStride + 2]; const a = alpha ? data[y * width * rgbaStride + x * rgbaStride + 3] : 255; // find the lon-lat coordinates of the point - const { x: lon, y: lat } = transformer.forward({ x: xPos, y: yPos }); + const { x: lon, y: lat } = this.#transformer.forward({ x: xPos, y: yPos }); // Add point to coordinates array coordinates.push({ x: lon, diff --git a/src/readers/geotiff/index.ts b/src/readers/geotiff/index.ts index 5664b01e..c3ede805 100644 --- a/src/readers/geotiff/index.ts +++ b/src/readers/geotiff/index.ts @@ -15,15 +15,32 @@ export * from './image'; export * from './imageUtil'; export * from './predictor'; +/** + * + */ +export interface GridReader { + key: string; + reader: Reader; +} + /** * */ export class GeoTIFFReader extends GeoTIFFHeaderReader { + gridStore: GridReader[] = []; /** @param reader - the geotiff reader to parse data from */ constructor(reader: Reader) { super(reader); } + /** + * @param key + * @param reader + */ + addGridReader(key: string, reader: Reader): void { + this.gridStore.push({ key, reader }); + } + /** * Get the n-th internal subfile of an image. By default, the first is returned. * @param index - the index of the image to get [Default=0] @@ -31,7 +48,12 @@ export class GeoTIFFReader extends GeoTIFFHeaderReader { */ getImage(index = 0): GeoTIFFImage { if (index >= this.length) throw new Error('Index out of bounds.'); - return new GeoTIFFImage(this.reader, this.imageDirectories[index], this.littleEndian); + return new GeoTIFFImage( + this.reader, + this.imageDirectories[index], + this.littleEndian, + this.gridStore, + ); } /** diff --git a/src/readers/geotiff/jpeg.ts b/src/readers/geotiff/jpeg.ts index 87ad46d7..81b32bb2 100644 --- a/src/readers/geotiff/jpeg.ts +++ b/src/readers/geotiff/jpeg.ts @@ -645,6 +645,7 @@ function buildComponentData(frame, component) { * */ class JpegStreamReader { + quantizationTables: Int32Array[] = []; /** * */ @@ -652,7 +653,6 @@ class JpegStreamReader { this.jfif = null; this.adobe = null; - this.quantizationTables = []; this.huffmanTablesAC = []; this.huffmanTablesDC = []; this.resetFrames(); diff --git a/src/readers/geotiff/proj.ts b/src/readers/geotiff/proj.ts index 27a4c535..c9295832 100644 --- a/src/readers/geotiff/proj.ts +++ b/src/readers/geotiff/proj.ts @@ -12,17 +12,23 @@ import { } from '../../proj4'; import type { DatumParams } from '..'; -import type { GeoKeyDirectory } from '.'; import type { ProjectionParams } from '../../proj4'; +import type { GeoKeyDirectory, GridReader } from '.'; /** * @param geoKeys + * @param gridStore */ -export function buildTransform(geoKeys?: GeoKeyDirectory): Transformer { +export function buildTransform( + geoKeys?: GeoKeyDirectory, + gridStore: GridReader[] = [], +): Transformer { const params = buildParams(geoKeys); const transformer = new Transformer(); injectAllDefinitions(transformer); injectAllEPSGCodes(transformer); + for (const { key, reader } of gridStore) transformer.addGridFromReader(key, reader); + if (geoKeys === undefined) return transformer; if (params !== undefined) transformer.setSource(params); return transformer; } diff --git a/src/readers/nadgrid.ts b/src/readers/nadgrid.ts index 74477682..926f3409 100644 --- a/src/readers/nadgrid.ts +++ b/src/readers/nadgrid.ts @@ -1,6 +1,11 @@ import type { Reader } from '.'; -import type { FeatureCollection, VectorFeature, VectorPoint } from 's2-tools/geometry'; +import type { + FeatureCollection, + VectorFeature, + VectorMultiPoint, + VectorPoint, +} from 's2-tools/geometry'; /** * Resources for details of NTv2 file formats: @@ -8,12 +13,32 @@ import type { FeatureCollection, VectorFeature, VectorPoint } from 's2-tools/geo * - http://mimaka.com/help/gs/html/004_NTV2%20Data%20Format.htm */ +/** Seconds to degrees (S / 3_600) */ +const SEC2DEG = 0.00000484813681109536; + +/** A Subgrid contained inside a NadGrid */ +export interface NadSubGrid { + cvs: VectorMultiPoint; + ll: VectorPoint; + del: VectorPoint; + lim: VectorPoint; + count: number; +} + +/** A grid wrapper around a parsed .gsb file */ +export interface GridDefinition { + name: string; + mandatory: boolean; + grid?: NadGrid; + isNull: boolean; +} + /** Store Grids from a NTv2 file (.gsb) */ export class NadGridStore { grids = new Map(); /** @param grid - a nadgrid class to store */ - addGrid(grid: NadGrid) { + addGrid(grid: NadGrid): void { this.grids.set(grid.key, grid); } @@ -29,10 +54,43 @@ export class NadGridStore { * @param key - the key or name of the grid * @param reader - the input data to parse */ - addGridFromReader(key: string, reader: Reader) { + addGridFromReader(key: string, reader: Reader): void { const grid = new NadGrid(key, reader); this.addGrid(grid); } + + /** + * @param keys - complex string of grid keys to test against + * @returns - an array of grid definitions + */ + getGridsFromString(keys?: string): GridDefinition[] { + const res: GridDefinition[] = []; + if (keys === undefined) return res; + for (const grid of keys.split(',')) { + const g = this.getGridFromString(grid); + if (g !== undefined) res.push(g); + } + return res; + } + + /** + * @param name - a single grid name to test against + * @returns - a grid definition + */ + getGridFromString(name: string): undefined | GridDefinition { + if (name.length === 0) return undefined; + const optional = name[0] === '@'; + if (optional) name = name.slice(1); + if (name === 'null') { + return { name: 'null', mandatory: !optional, grid: undefined, isNull: true }; + } + return { + name: name, + mandatory: !optional, + grid: this.grids.get(name), + isNull: false, + }; + } } /** The header of a NTv2 file */ @@ -78,9 +136,9 @@ export interface NadGridMetadata { /** Load a binary NTv2 file (.gsb) */ export class NadGrid { - isLittleEndian = false; + #isLittleEndian = false; #header!: NadGridHeader; - features: VectorFeature[] = []; + subgrids: NadSubGrid[] = []; /** * @param key - the key or name of the grid @@ -90,13 +148,13 @@ export class NadGrid { public key: string, public reader: Reader, ) { - this.#detectLittleEndian(); + this.#isLittleEndian = this.#detectLittleEndian(); this.#readHeader(); this.#readSubGrids(); } /** @returns - The header describing how to decode the feature */ - getHeader(): NadGridHeader { + get header(): NadGridHeader { return { ...this.#header }; } @@ -105,7 +163,7 @@ export class NadGrid { * @returns - a collection of VectorFeatures */ getFeatureCollection(): FeatureCollection { - const { features } = this; + const features = this.subgrids.map(this.#subGrideToVectorFeature); return { type: 'FeatureCollection', features }; } @@ -114,7 +172,7 @@ export class NadGrid { * @yields {VectorFeature} */ *[Symbol.iterator](): Generator> { - for (const feature of this.features) yield feature; + for (const subgrid of this.subgrids) yield this.#subGrideToVectorFeature(subgrid); } /** @@ -132,22 +190,23 @@ export class NadGrid { } /** Parse the main header data. Describes the subgrids to decode lon-lat */ - #readHeader() { - const { reader, isLittleEndian } = this; + #readHeader(): void { + const { reader } = this; + const le = this.#isLittleEndian; this.#header = { - nFields: reader.getInt32(8, isLittleEndian), - nSubgridFields: reader.getInt32(24, isLittleEndian), - nSubgrids: reader.getInt32(40, isLittleEndian), + nFields: reader.getInt32(8, le), + nSubgridFields: reader.getInt32(24, le), + nSubgrids: reader.getInt32(40, le), shiftType: reader.parseString(56, 8), - fromSemiMajorAxis: reader.getFloat64(120, isLittleEndian), - fromSemiMinorAxis: reader.getFloat64(136, isLittleEndian), - toSemiMajorAxis: reader.getFloat64(152, isLittleEndian), - toSemiMinorAxis: reader.getFloat64(168, isLittleEndian), + fromSemiMajorAxis: reader.getFloat64(120, le), + fromSemiMinorAxis: reader.getFloat64(136, le), + toSemiMajorAxis: reader.getFloat64(152, le), + toSemiMinorAxis: reader.getFloat64(168, le), }; } /** Build all grid data */ - #readSubGrids() { + #readSubGrids(): void { let gridOffset = 176; for (let i = 0; i < this.#header.nSubgrids; i++) { const subHeader = this.#readSubGridHeader(gridOffset); @@ -159,52 +218,69 @@ export class NadGrid { 1 + (subHeader.upperLatitude - subHeader.lowerLatitude) / subHeader.latitudeInterval, ); - const feature: VectorFeature = { - type: 'VectorFeature', - properties: {}, - geometry: { - type: 'MultiPoint', - is3D: false, - // CVS => lonLat coords - coordinates: nodes.map(({ longitudeShift, latitudeShift }) => { - return { x: secondsToDegrees(longitudeShift), y: secondsToDegrees(latitudeShift) }; - }), - }, - metadata: { - // ll => lowerLonLat - lowerLonLat: { - x: secondsToDegrees(subHeader.lowerLongitude), - y: secondsToDegrees(subHeader.lowerLatitude), - }, - // del => lonLatInterval - lonLatInterval: { x: subHeader.longitudeInterval, y: subHeader.latitudeInterval }, - // lim => lonLatColumnCount - lonLatColumnCount: { x: lonColumnCount, y: latColumnCount }, - // count => count - count: subHeader.gridNodeCount, + const subGrid: NadSubGrid = { + cvs: nodes.map(({ longitudeShift, latitudeShift }) => { + return { x: longitudeShift * SEC2DEG, y: latitudeShift * SEC2DEG }; + }), + ll: { + x: subHeader.lowerLongitude * SEC2DEG, + y: subHeader.lowerLatitude * SEC2DEG, }, + del: { x: subHeader.longitudeInterval * SEC2DEG, y: subHeader.latitudeInterval * SEC2DEG }, + lim: { x: lonColumnCount, y: latColumnCount }, + count: subHeader.gridNodeCount, }; - this.features.push(feature); + + this.subgrids.push(subGrid); gridOffset += 176 + subHeader.gridNodeCount * 16; } } + /** + * @param subGrid - the subgrid to convert to a vector feature + * @returns - the vector feature + */ + #subGrideToVectorFeature(subGrid: NadSubGrid): VectorFeature { + const { cvs, ll, del, lim, count } = subGrid; + return { + type: 'VectorFeature', + properties: {}, + geometry: { + type: 'MultiPoint', + is3D: false, + // CVS => lonLat coords + coordinates: cvs, + }, + metadata: { + // ll => lowerLonLat + lowerLonLat: ll, + // del => lonLatInterval + lonLatInterval: del, + // lim => lonLatColumnCount + lonLatColumnCount: lim, + // count => count + count, + }, + }; + } + /** * @param offset - offset to read in the subgrid header * @returns - the subgrid header */ #readSubGridHeader(offset: number): NadSubGridHeader { - const { reader, isLittleEndian } = this; + const { reader } = this; + const le = this.#isLittleEndian; return { name: reader.parseString(offset + 8, 8), parent: reader.parseString(offset + 24, 8), - lowerLatitude: reader.getFloat64(offset + 72, isLittleEndian), - upperLatitude: reader.getFloat64(offset + 88, isLittleEndian), - lowerLongitude: reader.getFloat64(offset + 104, isLittleEndian), - upperLongitude: reader.getFloat64(offset + 120, isLittleEndian), - latitudeInterval: reader.getFloat64(offset + 136, isLittleEndian), - longitudeInterval: reader.getFloat64(offset + 152, isLittleEndian), - gridNodeCount: reader.getInt32(offset + 168, isLittleEndian), + lowerLatitude: reader.getFloat64(offset + 72, le), + upperLatitude: reader.getFloat64(offset + 88, le), + lowerLongitude: reader.getFloat64(offset + 104, le), + upperLongitude: reader.getFloat64(offset + 120, le), + latitudeInterval: reader.getFloat64(offset + 136, le), + longitudeInterval: reader.getFloat64(offset + 152, le), + gridNodeCount: reader.getInt32(offset + 168, le), }; } @@ -214,30 +290,20 @@ export class NadGrid { * @returns - an array of grid nodes */ #readGridNodes(offset: number, gridHeader: NadSubGridHeader): GridNode[] { - const { reader, isLittleEndian } = this; + const { reader } = this; + const le = this.#isLittleEndian; const nodesOffset = offset + 176; const gridRecordLength = 16; const gridShiftRecords = []; for (let i = 0; i < gridHeader.gridNodeCount; i++) { const record = { - latitudeShift: reader.getFloat32(nodesOffset + i * gridRecordLength, isLittleEndian), - longitudeShift: reader.getFloat32(nodesOffset + i * gridRecordLength + 4, isLittleEndian), - latitudeAccuracy: reader.getFloat32(nodesOffset + i * gridRecordLength + 8, isLittleEndian), - longitudeAccuracy: reader.getFloat32( - nodesOffset + i * gridRecordLength + 12, - isLittleEndian, - ), + latitudeShift: reader.getFloat32(nodesOffset + i * gridRecordLength, le), + longitudeShift: reader.getFloat32(nodesOffset + i * gridRecordLength + 4, le), + latitudeAccuracy: reader.getFloat32(nodesOffset + i * gridRecordLength + 8, le), + longitudeAccuracy: reader.getFloat32(nodesOffset + i * gridRecordLength + 12, le), }; gridShiftRecords.push(record); } return gridShiftRecords; } } - -/** - * @param seconds - number of seconds - * @returns radians - */ -function secondsToDegrees(seconds: number): number { - return seconds / 3600; -} diff --git a/src/readers/netCDF/data.ts b/src/readers/netCDF/data.ts new file mode 100644 index 00000000..eda00277 --- /dev/null +++ b/src/readers/netCDF/data.ts @@ -0,0 +1,66 @@ +import { IOBuffer } from 'iobuffer'; + +import { Header } from './header'; +import { num2bytes, readType, str2num } from './types'; +// const STREAMING = 4294967295; + +/** + * Read data for the given non-record variable + * @param buffer - Buffer for the file data + * @param variable - Variable metadata + * @returns - Data of the element + */ +export function nonRecord( + buffer: IOBuffer, + variable: Header['variables'][number], +): Array> { + // variable type + const type = str2num(variable.type); + + // size of the data + const size = variable.size / num2bytes(type); + + // iterates over the data + const data = new Array(size); + for (let i = 0; i < size; i++) { + data[i] = readType(buffer, type, 1); + } + + return data; +} + +/** + * Read data for the given record variable + * @param buffer - Buffer for the file data + * @param variable - Variable metadata + * @param recordDimension - Record dimension metadata + * @returns - Data of the element + */ +export function record( + buffer: IOBuffer, + variable: Header['variables'][number], + recordDimension: Header['recordDimension'], +): Array> { + // variable type + const type = str2num(variable.type); + const width = variable.size ? variable.size / num2bytes(type) : 1; + + // size of the data + // TODO streaming data + const size = recordDimension.length; + + // iterates over the data + const data = new Array(size); + const step = recordDimension.recordStep; + if (step) { + for (let i = 0; i < size; i++) { + const currentOffset = buffer.offset; + data[i] = readType(buffer, type, width); + buffer.seek(currentOffset + step); + } + } else { + throw new Error('recordDimension.recordStep is undefined'); + } + + return data; +} diff --git a/src/readers/netCDF/header.ts b/src/readers/netCDF/header.ts new file mode 100644 index 00000000..cc19dccc --- /dev/null +++ b/src/readers/netCDF/header.ts @@ -0,0 +1,296 @@ +import { IOBuffer } from 'iobuffer'; + +import { num2str, readType } from './types'; +import { notNetcdf, padding, readName } from './utils'; + +// Grammar constants +const ZERO = 0; +const NC_DIMENSION = 10; +const NC_VARIABLE = 11; +const NC_ATTRIBUTE = 12; +const NC_UNLIMITED = 0; + +/** + * + */ +export interface Header { + recordDimension: { + /** + Length of the record dimension + sum of the varSize's of all the record variables. + */ + length: number; + id?: number; + name?: string; + recordStep?: number; + }; + // Version + version: number; + /* List of dimensions*/ + dimensions: Dimensions['dimensions']; + /* List of global attributes */ + globalAttributes: Attribute[]; + /* List of variables*/ + variables: Variables['variables']; +} +/** + * Reads the file header as @see {@link Header} + * @param buffer - Buffer for the file data + * @param version - Version of the file + * @returns + */ +export function header(buffer: IOBuffer, version: number): Header { + const header: Partial
= { version }; + + const recordDimension: Header['recordDimension'] = { + length: buffer.readUint32(), + }; + + const dimList = dimensionsList(buffer); + + if (!Array.isArray(dimList)) { + recordDimension.id = dimList.recordId; + recordDimension.name = dimList.recordName; + header.dimensions = dimList.dimensions; + } + + header.globalAttributes = attributesList(buffer); + + const variables = variablesList(buffer, recordDimension?.id, version); + if (!Array.isArray(variables)) { + header.variables = variables.variables; + recordDimension.recordStep = variables.recordStep; + } + + header.recordDimension = recordDimension; + + return header as Header; +} + +/** + * + */ +export interface Dimensions { + /* that is an array of dimension object:*/ + dimensions: Array<{ + /* name of the dimension*/ + name: string; + /* size of the dimension */ + size: number; + }>; + /* id of the dimension that has unlimited size or undefined,*/ + recordId?: number; + /* name of the dimension that has unlimited size */ + recordName?: string; +} + +/** + * List of dimensions + * @param buffer - Buffer for the file data + * @returns List of dimensions + */ +function dimensionsList(buffer: IOBuffer): Dimensions | [] { + const result: Partial = {}; + let recordId: number | undefined, recordName: string | undefined; + + const dimList = buffer.readUint32(); + + let dimensions: Dimensions['dimensions']; + + if (dimList === ZERO) { + notNetcdf(buffer.readUint32() !== ZERO, 'wrong empty tag for list of dimensions'); + return []; + } else { + notNetcdf(dimList !== NC_DIMENSION, 'wrong tag for list of dimensions'); + + // Length of dimensions + const dimensionSize = buffer.readUint32(); + dimensions = new Array(dimensionSize); + + //populate `name` and `size` for each dimension + for (let dim = 0; dim < dimensionSize; dim++) { + // Read name + const name = readName(buffer); + + // Read dimension size + const size = buffer.readUint32(); + if (size === NC_UNLIMITED) { + // in netcdf 3 one field can be of size unlimited + recordId = dim; + recordName = name; + } + + dimensions[dim] = { + name, + size, + }; + } + } + if (recordId !== undefined) { + result.recordId = recordId; + } + if (recordName !== undefined) { + result.recordName = recordName; + } + result.dimensions = dimensions; + return result as Dimensions; +} + +/** + * + */ +export interface Attribute { + /* name of the attribute */ + name: string; + /* type of the attribute */ + type: string; + /* value of the attribute */ + value: number | string; +} +/** + * List of attributes + * @param buffer - Buffer for the file data + * @returns - List of attributes with: + */ +function attributesList(buffer: IOBuffer): Attribute[] { + const gAttList = buffer.readUint32(); + let attributes; + if (gAttList === ZERO) { + notNetcdf(buffer.readUint32() !== ZERO, 'wrong empty tag for list of attributes'); + return []; + } else { + notNetcdf(gAttList !== NC_ATTRIBUTE, 'wrong tag for list of attributes'); + + // Length of attributes + const attributeSize = buffer.readUint32(); + attributes = new Array(attributeSize); + // Populate `name`, `type` and `value` for each attribute + for (let gAtt = 0; gAtt < attributeSize; gAtt++) { + // Read name + const name = readName(buffer); + + // Read type + const type = buffer.readUint32(); + notNetcdf(type < 1 || type > 6, `non valid type ${type}`); + + // Read attribute + const size = buffer.readUint32(); + const value = readType(buffer, type, size); + + // Apply padding + padding(buffer); + + attributes[gAtt] = { + name, + type: num2str(type), + value, + }; + } + } + return attributes; +} + +/** + * + */ +export interface Variable { + /* name of the variable */ + name: string; + /* Array with the dimension IDs of the variable*/ + dimensions: number[]; + /* Array with the attributes of the variable*/ + attributes: []; + /* type of the variable*/ + type: string; + /* size of the variable */ + size: number; + /* offset where of the variable begins */ + offset: number; + /* True if is a record variable, false otherwise (unlimited size) */ + record: boolean; +} +/** + * + */ +interface Variables { + variables: Variable[]; + recordStep: number; +} +/** + * @param buffer - Buffer for the file data + * @param recordId - Id of the unlimited dimension (also called record dimension) + * This value may be undefined if there is no unlimited dimension + * @param version - Version of the file + * @returns - Number of recordStep and list of variables @see {@link Variables} + */ +function variablesList( + buffer: IOBuffer, + recordId: number | undefined, + version: number, +): Variables | [] { + const varList = buffer.readUint32(); + let recordStep = 0; + let variables; + if (varList === ZERO) { + notNetcdf(buffer.readUint32() !== ZERO, 'wrong empty tag for list of variables'); + return []; + } else { + notNetcdf(varList !== NC_VARIABLE, 'wrong tag for list of variables'); + + // Length of variables + const variableSize = buffer.readUint32(); + variables = new Array(variableSize); + for (let v = 0; v < variableSize; v++) { + // Read name + const name = readName(buffer); + + // Read dimensionality of the variable + const dimensionality = buffer.readUint32(); + + // Index into the list of dimensions + const dimensionsIds = new Array(dimensionality); + for (let dim = 0; dim < dimensionality; dim++) { + dimensionsIds[dim] = buffer.readUint32(); + } + + // Read variables size + const attributes = attributesList(buffer); + + // Read type + const type = buffer.readUint32(); + notNetcdf(type < 1 && type > 6, `non valid type ${type}`); + + // Read variable size + // The 32-bit varSize field is not large enough to contain the size of variables that require + // more than 2^32 - 4 bytes, so 2^32 - 1 is used in the varSize field for such variables. + const varSize = buffer.readUint32(); + + // Read offset + let offset = buffer.readUint32(); + if (version === 2) { + notNetcdf(offset > 0, 'offsets larger than 4GB not supported'); + offset = buffer.readUint32(); + } + + let record = false; + // Count amount of record variables + if (typeof recordId !== 'undefined' && dimensionsIds[0] === recordId) { + recordStep += varSize; + record = true; + } + variables[v] = { + name, + dimensions: dimensionsIds, + attributes, + type: num2str(type), + size: varSize, + offset, + record, + }; + } + } + return { + variables, + recordStep, + }; +} diff --git a/src/readers/netCDF/index.ts b/src/readers/netCDF/index.ts new file mode 100644 index 00000000..de2ee06c --- /dev/null +++ b/src/readers/netCDF/index.ts @@ -0,0 +1,219 @@ +import { nonRecord, record } from './data'; +import { Header, header } from './header'; +import { notNetcdf } from './utils'; + +import type { Reader } from '..'; + +/** + * Reads a NetCDF v3.x file + * [See specification](https://www.unidata.ucar.edu/software/netcdf/docs/file_format_specifications.html) + * @param data - ArrayBuffer or any Typed Array (including Node.js' Buffer from v4) with the data + */ +export class NetCDFReader { + #header: Header; + + /** + * @param data + * @param reader + */ + constructor(public reader: Reader) { + if (reader.parseString(0, 3) !== 'CDF') throw new Error('Not a valid NetCDF v3.x file'); + + // Check the NetCDF format + const version = buffer.readByte(); + notNetcdf(version > 2, 'unknown version'); + + // Read the header + this.header = header(buffer, version); + this.buffer = buffer; + } + + /** + * @returns - Version for the NetCDF format + */ + get version() { + if (this.header.version === 1) { + return 'classic format'; + } else { + return '64-bit offset format'; + } + } + + /** + * @returns - Metadata for the record dimension + * `length`: Number of elements in the record dimension + * `id`: Id number in the list of dimensions for the record dimension + * `name`: String with the name of the record dimension + * `recordStep`: Number with the record variables step size + */ + get recordDimension() { + return this.header.recordDimension; + } + + /** + * @returns - Array - List of dimensions with: + * `name`: String with the name of the dimension + * `size`: Number with the size of the dimension + */ + get dimensions() { + return this.header.dimensions; + } + + /** + * @returns - Array - List of global attributes with: + * `name`: String with the name of the attribute + * `type`: String with the type of the attribute + * `value`: A number or string with the value of the attribute + */ + get globalAttributes(): Header['globalAttributes'] { + return this.header.globalAttributes; + } + + /** + * Returns the value of an attribute + * @param - AttributeName + * @param attributeName + * @returns - Value of the attributeName or null + */ + getAttribute(attributeName: string) { + const attribute = this.globalAttributes.find((val) => val.name === attributeName); + if (attribute) return attribute.value; + return null; + } + + /** + * Returns the value of a variable as a string + * @param - variableName + * @param variableName + * @returns - Value of the variable as a string or null + */ + getDataVariableAsString(variableName: string) { + const variable = this.getDataVariable(variableName); + if (variable) return variable.join(''); + return null; + } + + /** + * + */ + get variables() { + return this.header.variables; + } + + toString = toString; + + /** + * Retrieves the data for a given variable + * @param variableName - Name of the variable to search or variable object + * @returns The variable values + */ + getDataVariable(variableName: string | Header['variables'][number]) { + let variable; + if (typeof variableName === 'string') { + // search the variable + variable = this.header.variables.find((val) => { + return val.name === variableName; + }); + } else { + variable = variableName; + } + + // throws if variable not found + if (variable === undefined) { + throw new Error('Not a valid NetCDF v3.x file: variable not found'); + } + + // go to the offset position + this.buffer.seek(variable.offset); + + if (variable.record) { + // record variable case + return record(this.buffer, variable, this.header.recordDimension); + } else { + // non-record variable case + return nonRecord(this.buffer, variable); + } + } + + /** + * Check if a dataVariable exists + * @param variableName - Name of the variable to find + * @returns boolean + */ + dataVariableExists(variableName: string) { + const variable = this.header.variables.find((val) => { + return val.name === variableName; + }); + return variable !== undefined; + } + + /** + * Check if an attribute exists + * @param attributeName - Name of the attribute to find + * @returns boolean + */ + attributeExists(attributeName: string) { + const attribute = this.globalAttributes.find((val) => val.name === attributeName); + return attribute !== undefined; + } + + /** + * + */ + toString(): string { + const result: string[] = []; + result.push('DIMENSIONS'); + for (const dimension of this.dimensions) { + result.push(` ${dimension.name.padEnd(30)} = size: ${dimension.size}`); + } + + result.push(''); + result.push('GLOBAL ATTRIBUTES'); + for (const attribute of this.globalAttributes) { + result.push(` ${attribute.name.padEnd(30)} = ${attribute.value}`); + } + + const variables = JSON.parse(JSON.stringify(this.variables)); + result.push(''); + result.push('VARIABLES:'); + for (const variable of variables) { + variable.value = this.getDataVariable(variable); + let stringify = JSON.stringify(variable.value); + if (stringify.length > 50) stringify = stringify.substring(0, 50); + if (!isNaN(variable.value.length)) { + stringify += ` (length: ${variable.value.length})`; + } + result.push(` ${variable.name.padEnd(30)} = ${stringify}`); + } + return result.join('\n'); + } +} + +// UTIL: + +// /** +// * Moves 1, 2, or 3 bytes to next 4-byte boundary +// * @param buffer - Buffer for the file data +// */ +// export function padding(buffer: IOBuffer) { +// if (buffer.offset % 4 !== 0) { +// buffer.skip(4 - (buffer.offset % 4)); +// } +// } + +// /** +// * Reads the name +// * @param buffer - Buffer for the file data +// * @return Name +// */ +// export function readName(buffer: IOBuffer) { +// // Read name +// const nameLength = buffer.readUint32(); +// const name = buffer.readChars(nameLength); + +// // validate name +// // TODO +// // Apply padding +// padding(buffer); +// return name; +// } diff --git a/src/readers/netCDF/parser.ts b/src/readers/netCDF/parser.ts new file mode 100644 index 00000000..f7baac40 --- /dev/null +++ b/src/readers/netCDF/parser.ts @@ -0,0 +1,164 @@ +import { IOBuffer } from 'iobuffer'; + +import { nonRecord, record } from './data'; +import { Header, header } from './header'; +import { toString } from './toString'; +import { notNetcdf } from './utils'; + +/** + * Reads a NetCDF v3.x file + * [See specification](https://www.unidata.ucar.edu/software/netcdf/docs/file_format_specifications.html) + * @param data - ArrayBuffer or any Typed Array (including Node.js' Buffer from v4) with the data + */ +export class NetCDFReader { + public header: Header; + public buffer: IOBuffer; + + /** + * @param data + */ + constructor(data: BinaryData) { + const buffer = new IOBuffer(data); + buffer.setBigEndian(); + + // Validate that it's a NetCDF file + notNetcdf(buffer.readChars(3) !== 'CDF', 'should start with CDF'); + + // Check the NetCDF format + const version = buffer.readByte(); + notNetcdf(version > 2, 'unknown version'); + + // Read the header + this.header = header(buffer, version); + this.buffer = buffer; + } + + /** + * @returns - Version for the NetCDF format + */ + get version() { + if (this.header.version === 1) { + return 'classic format'; + } else { + return '64-bit offset format'; + } + } + + /** + * @returns - Metadata for the record dimension + * `length`: Number of elements in the record dimension + * `id`: Id number in the list of dimensions for the record dimension + * `name`: String with the name of the record dimension + * `recordStep`: Number with the record variables step size + */ + get recordDimension() { + return this.header.recordDimension; + } + + /** + * @returns - Array - List of dimensions with: + * `name`: String with the name of the dimension + * `size`: Number with the size of the dimension + */ + get dimensions() { + return this.header.dimensions; + } + + /** + * @returns - Array - List of global attributes with: + * `name`: String with the name of the attribute + * `type`: String with the type of the attribute + * `value`: A number or string with the value of the attribute + */ + get globalAttributes(): Header['globalAttributes'] { + return this.header.globalAttributes; + } + + /** + * Returns the value of an attribute + * @param - AttributeName + * @param attributeName + * @returns - Value of the attributeName or null + */ + getAttribute(attributeName: string) { + const attribute = this.globalAttributes.find((val) => val.name === attributeName); + if (attribute) return attribute.value; + return null; + } + + /** + * Returns the value of a variable as a string + * @param - variableName + * @param variableName + * @returns - Value of the variable as a string or null + */ + getDataVariableAsString(variableName: string) { + const variable = this.getDataVariable(variableName); + if (variable) return variable.join(''); + return null; + } + + /** + * + */ + get variables() { + return this.header.variables; + } + + toString = toString; + + /** + * Retrieves the data for a given variable + * @param variableName - Name of the variable to search or variable object + * @returns The variable values + */ + getDataVariable(variableName: string | Header['variables'][number]) { + let variable; + if (typeof variableName === 'string') { + // search the variable + variable = this.header.variables.find((val) => { + return val.name === variableName; + }); + } else { + variable = variableName; + } + + // throws if variable not found + if (variable === undefined) { + throw new Error('Not a valid NetCDF v3.x file: variable not found'); + } + + // go to the offset position + this.buffer.seek(variable.offset); + + if (variable.record) { + // record variable case + return record(this.buffer, variable, this.header.recordDimension); + } else { + // non-record variable case + return nonRecord(this.buffer, variable); + } + } + + /** + * Check if a dataVariable exists + * @param variableName - Name of the variable to find + * @returns boolean + */ + dataVariableExists(variableName: string) { + const variable = this.header.variables.find((val) => { + return val.name === variableName; + }); + return variable !== undefined; + } + + /** + * Check if an attribute exists + * @param attributeName - Name of the attribute to find + * @returns boolean + */ + attributeExists(attributeName: string) { + const attribute = this.globalAttributes.find((val) => val.name === attributeName); + return attribute !== undefined; + } +} diff --git a/src/readers/netCDF/type.ts b/src/readers/netCDF/type.ts new file mode 100644 index 00000000..5e064258 --- /dev/null +++ b/src/readers/netCDF/type.ts @@ -0,0 +1,140 @@ +import type { Reader } from '..'; + +const types = { + BYTE: 1, + CHAR: 2, + SHORT: 3, + INT: 4, + FLOAT: 5, + DOUBLE: 6, +}; + +/** + * Parse a number into their respective type + * @param type - integer that represents the type + * @returns - parsed value of the type + */ +export function num2str(type: number): string { + switch (Number(type)) { + case types.BYTE: + return 'byte'; + case types.CHAR: + return 'char'; + case types.SHORT: + return 'short'; + case types.INT: + return 'int'; + case types.FLOAT: + return 'float'; + case types.DOUBLE: + return 'double'; + default: + return 'undefined'; + } +} + +/** + * Parse a number type identifier to his size in bytes + * @param type - integer that represents the type + * @returns size of the type + */ +export function num2bytes(type: number): number { + switch (Number(type)) { + case types.BYTE: + return 1; + case types.CHAR: + return 1; + case types.SHORT: + return 2; + case types.INT: + return 4; + case types.FLOAT: + return 4; + case types.DOUBLE: + return 8; + default: + return -1; + } +} + +/** + * Reverse search of num2str + * @param type - string that represents the type + * @returns parsed value of the type + */ +export function str2num(type: string) { + switch (String(type)) { + case 'byte': + return types.BYTE; + case 'char': + return types.CHAR; + case 'short': + return types.SHORT; + case 'int': + return types.INT; + case 'float': + return types.FLOAT; + case 'double': + return types.DOUBLE; + /* istanbul ignore next */ + default: + return -1; + } +} + +/** + * Auxiliary function to read numeric data + * @param size - Size of the element to read + * @param bufferReader - Function to read next value + * @returns + */ +function readNumber(size: number, bufferReader: () => number): number | number[] { + if (size !== 1) { + const numbers = new Array(size); + for (let i = 0; i < size; i++) { + numbers[i] = bufferReader(); + } + return numbers; + } else { + return bufferReader(); + } +} + +/** + * Given a type and a size reads the next element + * @param buffer - Buffer for the file data + * @param reader + * @param type - Type of the data to read + * @param size - Size of the element to read + * @returns + */ +export function readType(reader: Reader, type: number, size: number): string | number | number[] { + switch (type) { + case types.BYTE: + return Array.from(reader.slice(size)); + case types.CHAR: + return trimNull(buffer.readChars(size)); + case types.SHORT: + return readNumber(size, buffer.readInt16.bind(buffer)); + case types.INT: + return readNumber(size, buffer.readInt32.bind(buffer)); + case types.FLOAT: + return readNumber(size, buffer.readFloat32.bind(buffer)); + case types.DOUBLE: + return readNumber(size, buffer.readFloat64.bind(buffer)); + default: + throw new Error(`non valid type ${type}`); + } +} + +/** + * Removes null terminate value + * @param value - String to trim + * @returns - Trimmed string + */ +function trimNull(value: string): string { + if (value.charCodeAt(value.length - 1) === 0) { + return value.substring(0, value.length - 1); + } + return value; +} diff --git a/src/util/polyfills/image.ts b/src/util/polyfills/image.ts index 6b1019c1..7f7a3227 100644 --- a/src/util/polyfills/image.ts +++ b/src/util/polyfills/image.ts @@ -66,7 +66,7 @@ async function createImageBitmap(blob: Blob): Promise { info: { width, height }, } = decodedImage; - return { data, width, height }; + return { data: new Uint8Array(data), width, height }; } /** An offscreen canvas polyfill */ @@ -143,8 +143,10 @@ class OffscreenCanvasRenderingContext2D { * @returns the ImageData */ getImageData(x: number, y: number, width: number, height: number): ImageData { - const imageData = new Uint8ClampedArray(width * height * 4); + const size = width * height * 4; + if (this.data.length === size) return { data: this.data, width, height }; + const imageData = new Uint8ClampedArray(size); for (let row = 0; row < height; row++) { for (let col = 0; col < width; col++) { const canvasX = x + col; diff --git a/proj4js-master/test/ntv2_0_downsampled.gsb b/tests/proj4/fixtures/ntv2_0_downsampled.gsb similarity index 100% rename from proj4js-master/test/ntv2_0_downsampled.gsb rename to tests/proj4/fixtures/ntv2_0_downsampled.gsb diff --git a/tests/proj4/index.test.ts b/tests/proj4/index.test.ts index bdb76495..abf7b511 100644 --- a/tests/proj4/index.test.ts +++ b/tests/proj4/index.test.ts @@ -78,171 +78,3 @@ describe('axes should be invertable with proj4.transform()', function () { expect(result2.x).toBeCloseTo(-40, 5); expect(result2.y).toBeCloseTo(50, 5); }); - -// describe('Nadgrids BETA2007', function () { -// const tests = [ -// ['EPSG:31466', 'EPSG:4326', 2559552, 5670982, 6.850861772, 51.170707759, 0.0000001, 0.01], -// [ -// 'EPSG:31466', -// 'EPSG:3857', -// 2559552, -// 5670982, -// 762634.443931574, -// 6651545.68026527, -// 0.01, -// 0.01, -// ], -// [ -// 'EPSG:31466', -// 'EPSG:25832', -// 2559552, -// 5670982, -// 349757.381712518, -// 5671004.06504954, -// 0.01, -// 0.01, -// ], -// ]; - -// /** -// * @param buffer -// */ -// function initializeNadgrid(buffer) { -// proj4.nadgrid('BETA2007.gsb', buffer); -// proj4.defs( -// 'EPSG:31466', -// '+proj=tmerc +lat_0=0 +lon_0=6 +k=1 +x_0=2500000 +y_0=0 +ellps=bessel +nadgrids=BETA2007.gsb +units=m +no_defs +type=crs', -// ); -// proj4.defs( -// 'EPSG:25832', -// '+proj=utm +zone=32 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs', -// ); -// } - -// before(function (done) { -// if (typeof XMLHttpRequest !== 'undefined') { -// const xhr = new XMLHttpRequest(); -// xhr.open('GET', 'BETA2007.gsb', true); -// xhr.responseType = 'arraybuffer'; -// xhr.addEventListener('load', function () { -// initializeNadgrid(xhr.response); -// done(); -// }); -// xhr.addEventListener('error', done); -// xhr.send(); -// } else if (typeof require === 'function') { -// const fs = require('fs'); -// const path = require('path'); -// fs.readFile(path.join(__dirname, 'BETA2007.gsb'), function (err, data) { -// if (err) { -// done(err); -// } else { -// initializeNadgrid(data.buffer); -// done(); -// } -// }); -// } -// }); - -// tests.forEach(function (test) { -// const fromProj = test[0]; -// const toProj = test[1]; -// const fromX = test[2]; -// const fromY = test[3]; -// const toX = test[4]; -// const toY = test[5]; -// const fromPrecision = test[6]; -// const toPrecision = test[7]; -// it('should transform ' + fromProj + ' to ' + toProj, function () { -// const transformed = proj4(fromProj, toProj, [fromX, fromY]); -// assert.approximately(transformed[0], toX, fromPrecision); -// assert.approximately(transformed[1], toY, fromPrecision); -// }); -// it('should transform ' + toProj + ' to ' + fromProj, function () { -// const transformed = proj4(toProj, fromProj, [toX, toY]); -// assert.approximately(transformed[0], fromX, toPrecision); -// assert.approximately(transformed[1], fromY, toPrecision); -// }); -// }); -// }); - -// describe('Nadgrids ntv2', function () { -// const tests = [ -// [-44.382211538462, 40.3768, -44.380749, 40.377457], // just inside the lower limit -// [-87.617788, 59.623262, -87.617659, 59.623441], // just inside the upper limit -// [-44.5, 40.5, -44.498553, 40.500632], // inside the first square -// [-60, 50, -59.999192, 50.000058], // a general point towards the middle of the grid -// [0, 0, 0, 0], // fall back to null -// ]; - -// let converter; - -// /** -// * @param buffer -// */ -// function initializeNadgrid(buffer) { -// proj4.nadgrid('ntv2', buffer); -// proj4.defs('ntv2_from', '+proj=longlat +ellps=clrk66 +nadgrids=@ignorable,ntv2,null'); -// proj4.defs('ntv2_to', '+proj=longlat +datum=WGS84 +no_defs'); -// converter = proj4('ntv2_from', 'ntv2_to'); -// } - -// before(function (done) { -// if (typeof XMLHttpRequest !== 'undefined') { -// const xhr = new XMLHttpRequest(); -// xhr.open('GET', 'ntv2_0_downsampled.gsb', true); -// xhr.responseType = 'arraybuffer'; -// xhr.addEventListener('load', function () { -// initializeNadgrid(xhr.response); -// done(); -// }); -// xhr.addEventListener('error', done); -// xhr.send(); -// } else if (typeof require === 'function') { -// const fs = require('fs'); -// const path = require('path'); -// fs.readFile(path.join(__dirname, 'ntv2_0_downsampled.gsb'), function (err, data) { -// if (err) { -// done(err); -// } else { -// initializeNadgrid(data.buffer); -// done(); -// } -// }); -// } -// }); - -// tests.forEach(function (test) { -// const fromLng = test[0]; -// const fromLat = test[1]; -// const toLng = test[2]; -// const toLat = test[3]; -// it('should interpolate ' + [fromLng, fromLat] + ' to ' + [toLng, toLat], function () { -// const actual = converter.forward([fromLng, fromLat]); -// assert.approximately(actual[0], toLng, 0.000001); -// assert.approximately(actual[1], toLat, 0.000001); -// }); -// }); - -// const inverseTests = [ -// [-44.5, 40.5, -44.498553, 40.500632], -// [-60, 50, -59.999192, 50.000058], -// ]; - -// inverseTests.forEach(function (test) { -// const fromLng = test[0]; -// const fromLat = test[1]; -// const toLng = test[2]; -// const toLat = test[3]; -// it( -// 'should inverse interpolate ' + [toLng, toLat] + ' to ' + [fromLng, fromLat], -// function () { -// const actual = converter.inverse([toLng, toLat]); -// assert.approximately(actual[0], fromLng, 0.000001); -// assert.approximately(actual[1], fromLat, 0.000001); -// }, -// ); -// }); -// }); -// }); -// } diff --git a/tests/proj4/mgrs.test.ts b/tests/proj4/mgrs.test.ts index 00a1f734..b040d21c 100644 --- a/tests/proj4/mgrs.test.ts +++ b/tests/proj4/mgrs.test.ts @@ -4,7 +4,7 @@ import { forward, getLetterDesignator, inverse, toPoint } from '../../src/proj4/ describe('First MGRS set', () => { const mgrsStr = '33UXP04'; const point = toPoint(mgrsStr); - if (!point) throw new Error('Invalid MGRS string'); + if (point === undefined) throw new Error('Invalid MGRS string'); it('Longitude of point from MGRS correct.', () => { expect(point.x).toBeCloseTo(16.4145, 6); }); @@ -28,7 +28,7 @@ describe('First MGRS set', () => { describe('Second MGRS set', () => { const mgrsStr = '24XWT783908'; // near UTM zone border, so there are two ways to reference this const point = toPoint(mgrsStr); - if (!point) throw new Error('Invalid MGRS string'); + if (point === undefined) throw new Error('Invalid MGRS string'); it('Longitude of point from MGRS correct.', () => { expect(point.x).toBeCloseTo(-32.66433, 5); }); @@ -143,7 +143,8 @@ describe('data validation', () => { }); }); -describe('test against all data from mgrsToGeo_WE.txt', async () => { +// eslint-disable-next-line @typescript-eslint/no-misused-promises +describe('test against all data from mgrsToGeo_WE.txt', async (): Promise => { const text = await Bun.file(`${__dirname}/fixtures/mgrsToGeo_WE.txt`).text(); const [_header, _description, _blank, ...rows] = text.split(/\r?\n/); diff --git a/tests/proj4/nadgrid.test.ts b/tests/proj4/nadgrid.test.ts new file mode 100644 index 00000000..e8486523 --- /dev/null +++ b/tests/proj4/nadgrid.test.ts @@ -0,0 +1,103 @@ +import MMapReader from '../../src/readers/mmap'; +import { Transformer, injectAllDefinitions, injectAllEPSGCodes } from '../../src/proj4'; +import { describe, expect, it, test } from 'bun:test'; + +describe('nagrid BETA2007.gsb', (): void => { + it('EPSG_31466 -> EPSG_25832', (): void => { + const transform = new Transformer(); + injectAllDefinitions(transform); + injectAllEPSGCodes(transform); + transform.addGridFromReader( + 'BETA2007.gsb', + new MMapReader(`${__dirname}/fixtures/BETA2007.gsb`), + ); + transform.setSource('EPSG_31466'); + transform.setDestination('EPSG_25832'); + const forward = transform.forward({ x: 2559552, y: 5670982 }); + expect(forward.x).toBeCloseTo(349757.381712518, 0.01); + expect(forward.y).toBeCloseTo(5671004.06504954, 0.01); + }); + + it('EPSG_31466 -> EPSG_4326', (): void => { + const transform = new Transformer(); + injectAllDefinitions(transform); + injectAllEPSGCodes(transform); + transform.addGridFromReader( + 'BETA2007.gsb', + new MMapReader(`${__dirname}/fixtures/BETA2007.gsb`), + ); + transform.setSource('EPSG_31466'); + transform.setDestination('EPSG_4326'); + const forward = transform.forward({ x: 2559552, y: 5670982 }); + expect(forward.x).toBeCloseTo(6.850861772, 0.0000001); + expect(forward.y).toBeCloseTo(51.170707759, 0.01); + }); + + it('EPSG_31466 -> EPSG_3857', (): void => { + const transform = new Transformer(); + injectAllDefinitions(transform); + injectAllEPSGCodes(transform); + transform.addGridFromReader( + 'BETA2007.gsb', + new MMapReader(`${__dirname}/fixtures/BETA2007.gsb`), + ); + transform.setSource('EPSG_31466'); + transform.setDestination('EPSG_3857'); + const forward = transform.forward({ x: 2559552, y: 5670982 }); + expect(forward.x).toBeCloseTo(762634.443931574, 0.01); + expect(forward.y).toBeCloseTo(6651545.68026527, 0.01); + }); + + it('EPSG:31466 -> EPSG:3857', (): void => { + const transform = new Transformer(); + injectAllDefinitions(transform); + injectAllEPSGCodes(transform); + transform.addGridFromReader( + 'BETA2007.gsb', + new MMapReader(`${__dirname}/fixtures/BETA2007.gsb`), + ); + transform.setSource('EPSG:31466'); + transform.setDestination('EPSG:3857'); + const forward = transform.forward({ x: 2559552, y: 5670982 }); + expect(forward.x).toBeCloseTo(762634.443931574, 0.01); + expect(forward.y).toBeCloseTo(6651545.68026527, 0.01); + }); +}); + +test('ntv2', (): void => { + const transform = new Transformer(); + injectAllDefinitions(transform); + injectAllEPSGCodes(transform); + transform.addGridFromReader( + 'ntv2', + new MMapReader(`${__dirname}/fixtures/ntv2_0_downsampled.gsb`), + ); + + transform.setSource('+proj=longlat +ellps=clrk66 +nadgrids=@ignorable,ntv2,null'); + transform.setDestination('+proj=longlat +datum=WGS84 +no_defs'); + + const forwardTests = [ + [-44.382211538462, 40.3768, -44.380749, 40.377457], // just inside the lower limit + [-87.617788, 59.623262, -87.617659, 59.623441], // just inside the upper limit + [-44.5, 40.5, -44.498553, 40.500632], // inside the first square + [-60, 50, -59.999192, 50.000058], // a general point towards the middle of the grid + [0, 0, 0, 0], // fall back to null + ]; + + for (const [fromLng, fromLat, toLng, toLat] of forwardTests) { + const forward = transform.forward({ x: fromLng, y: fromLat }); + expect(forward.x).toBeCloseTo(toLng, 0.000001); + expect(forward.y).toBeCloseTo(toLat, 0.000001); + } + + const inverseTests = [ + [-44.5, 40.5, -44.498553, 40.500632], + [-60, 50, -59.999192, 50.000058], + ]; + + for (const [fromLng, fromLat, toLng, toLat] of inverseTests) { + const inverse = transform.inverse({ x: fromLng, y: fromLat }); + expect(inverse.x).toBeCloseTo(toLng, 0.000001); + expect(inverse.y).toBeCloseTo(toLat, 0.000001); + } +}); diff --git a/tests/readers/geotiff/fixtures/ntv2_0.gsb b/tests/readers/geotiff/fixtures/ntv2_0.gsb new file mode 100644 index 0000000000000000000000000000000000000000..9b723675554a6f5f3c37e86614aebdd87fff3129 GIT binary patch literal 13817072 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
ql&xJ5}LNAyW*3je?*fq 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

H zL3PD>v7(0 zUy%#*@O;M_Tak5#ZQ|FZB7eUg22T>)ME)=~95P3G%lrUe?}@I9!1b}2B8M;Bf_+B| zWto4?uFbZhe+d%aV9btake6R8a(b^A?7!F~a^{)s@ZK;|WNp_S;5TEN$a*z#c-|vU z0D^MfM(>0q=9q3a_A7vkyM5za+BN(oC2!=BmivEe@c^zbW$d=xliY z_>Rawv=2gEBKZid>_d?6`BXe!_^OTFiVKNN>ua#IthHTLt0a*t*S4}7ZImQ@MAj4~ zyB9Mldw`;yQ95OJEd{#|PbusFmA7-(B0r)2sD<5X56Ue|n%i~RN?9Yd8Gb#K$8MCf zoBEgX{JZ~{N?-C6H`D&GaWg1~2K>VPAIi6e{AABBP+p||o!S1NtoZf|GdCnZA(#1y z?SK@q-+wpc18X*i@^9}trnH^%nSpQd{3qq^U0$;pFDS45^%D30$WPp6U=|ZIqv^i)RdxTp7`FTn<$#oE+|#8T`Yej=+deChCJ=Hf}YRXz4QI8e46wvjn?OB4Pff7^OC34Ia&{`r|r)z@oT;j2{P9c~W{ zWpy_x$3z5U9{}b4Wvj4np7OQbD{vk~s_+mqM=fLDoG8DMU(ABcDc8y^WKsD0+tl~) zv3MTSx(cCCss0%9cc6nd>%${r~$h;sL?xc{}6jik1f8@=o|PNT2(7u=7zrEf^&a#;{i|?qRmEr zi5LDMEJ%}eONbZ#;agD`+>fTbI#AkNzY=c!oAts&T=(`s zf5!VD1~Hq*QEZa)6n3)%d4}YoiP*nFexawO7hBtjvh!h2?7tw-aHRJ*wznf?k0WE) zvu)%Vb`Nl4!77xOmW^URH<4#xqen2k=9GWDaAen)lV?Z_a$pla1`6-+Kz%5Sok4l> zvB7N3y=CI@<(_t|>j=uB4HBDqdZ~E4LzN9Pkt5$wzjh!qnNPl&a5ylV|YF@4+0#QZC(Kg#Lm&gO8^n zOVy_Q&C~$|)-_SQ(gDE$sJU6y8^TIv{-d(`& z*J4A}*}4Khk+TETSgtzd9tYbq^TFgDwD+kp-`(ULnx(1W@53zNA9|)Kqc5avzrQv6 zo8&7Vx4o~###fVX==)NE8JSa7|1Qt!*OG5|)2aooQIl^tpx2Crbf-LP`9Ijal)S^Z z6Te`{xoN^b;CdhQ>_BZqlv5J!f{F`y2Lsb8+;1Z9(C_SZTyGjL z{KI^otFTmqa#dwH+#5{ZVdd(JIRDZ^^grbGI|qx-juZLH>r(8C9V`4p;lX04F``^+ zeVU&y5+1_Ts{rTQl6O$I%!fBeMhpMYv-2?seD5Z*fA|rI(o`cP-# zA3H1N$IBKjcwf2G2Qr-Oxu*jb$l z6>SC!50QH|70(w95+35xfmHCCY$y64c2uU|dJ2<$zT!2F?c1DWd_9Bk5T~`0!R?16 z{6l|@y%5$zl6`*j`{7ASo9DvMgjMdvzQ%eB+4WQg zo`2Br-->+{lITzIAYG3i*f0$3kI32>FNmmx3W8nf$}KORKQ6iTs0oY7pG`P2M5m%Q85o zLAmz)Vw}fI{$Undgx-bx!}O#6pcO^_!QX!_JipLg_I}IvAP(!!gE^1LJ9N1`8=Czl z@31F$CY~puT(M>r)Yuz{c^DU!7em-ieeC;)kokv>qgR7erH9vRDYDG_IIm;>13%x) z_oB4bH$%ia-4f;I2e6;&ymVuJ6imeaho*TLrEc5s`yv1E;psM*8%X}4ZdWYiz0oS+ zYpLz=Jf1?Ic@)eFc^IeV zf^fZ({6jz2<+y%E{-M*YWnguY{KJL;OL4z~`~yE96ES@oprap*ezVjgL7|p{N*>Nru-6Q{ybY%{V_)Gp_>!#T-)upiyg70tM zA3F=rCs7|nvZ*ih*g<^|?|#jIiudFnTrW%q6{nA49!5mbG#EaQ`XK&InF0mZ-U*+u zea>X;$DlrljMbCifjW5zi#-!z-azVuVCTJIpEvbEoUiwSforG_Vz#vxcF0j5L~zgX zxW4#=?_bIKAF6{qA#~s)k&oZ@KuSIqHK5&lrQ} zZK)5!Zq67yA4ncT)n*KyuOtt_`!JMa8a)K}4XFxauz#s>J_gTOpGHIFed>dF^1vNV zoh}jHfq#D=o>Cu#_EUGnBoCqHJp!^+P7D9g@Xi7JXP*}SA?5uLDEB>G z%)1Na$Mt5r2MmN?tBZtx&d|%NC z`#jDG{}A`AHLizWD#jiK?6>k{4SIj2&y%hc&z#BEd?i-As#;pG{hI9j@&uo*cy`ubR-Y4)vru)SVSJ8N8TApO`kl((!ZtB zCTH>x!6!O-g4E+Lm2>t$LQXT%h_<3Huev(F4ot3hm zoe}xNr7~%jH+hJhPG!>NvLfDpA)A*mKjf^mPyaN|ugI48>or9Fob)QKK=%Lh4)%=J z=cP3r$U}HcxhO4~mtV}gg!r0Q@TUsN^YU>qKZDP+SkZ+%#QmsS_zqCUsQy{FUdok@@oZqHDZK^ zc+;v4XpM~)Ie11(IC){4n5SVr_@}f!H&*ui^Zxu=%kPr^Z1NBT6Y8bg`(uQUSh3)T z)cg~92)pmUr1s{~!b6-1|0iiJiV}H(&u=N(K1z6kTPh9Gw{_$p*7-C8x%1>9f*e~w zo+8c9Xm8#Ura964j19Vq*at%%VnD}MaN;_7h%n_gFj1Z6XPju$77lpP{EX7}|3S3< z8u9fg>$HQ4>p>!aGwlGQrUiLc@ zu9(0wRhpl%u&XKj%A@%i+&^6Lr1=@!&zPe@8!r4qsHO$Zo1pm_W9L}GWfz*C(e}Uq z>`!FEJDirYfmsJ>env}w2~JF;`59kudH-E|>WiqVw1G{*{e*{j8(@j^tjvUm80yd$ zKObm*#^68;yuLLNeG#2wEkMD?Nah>(^=$6LzR+?*H{l_$9~K5CH1UZ_@R#b zv(y){EV&EJd!{VB#7#3zJkLyh5zbe%VQ2{TMR1RBYE)xi1osdV{~5sRo{fDG{Qt9E z+a0hIMRe64(f{-b+jkE+tAn-!97Ihz}|4$n))Ji2buHp%(B1F9}f>R#hJd; z7cqREKIADs6&~WJl@?fgK9+e1{`)>D<(IT(Ce4e#LpMv`yZ_P)*#t;x+VG|9QVkfpT1heXBmy?-wNL5Gy~mZm&81c zRj-=EWsP$(kHGsPvWB;WsPy6@-VcO+Oxm|x5j-kS3jg3Rp*3jU%oDj)zqa69lOwYC zB^8LBv0wOx-P!G6$&??jf$uhlu=lPH(vQ#!C2y5HN?dEc@s!Mc4#y<-t*6oXU*CzK6eNyrF zRlB9kNAS;Ii(+fIWcyk8hm`9Ql#X~H^2QW9@X9R~zQN+u5E%A$zsS9FaBrS%6Zv(# zBa|gB75*V_(g@fQXm^_X2L7682y_AL%n^C?>e0~p)M=TA;J=@hGsi-?szYIufABK& zgiBi@Pc`|68hbCmPA=gex+YG7IU9>@dH)mt{n@!;DnwmS7QSI^stv-S|Gf`?^lcA*Y0Z~uU87h{+k+++lB=}d$k6B ztz^qhf874nz|CD#ZucS>=VPded^;c%x?AapoZYY%`!ITlJT7!S$Ol-6+^*S1*w~NB zJON+dsSetN{WgxW%zcAe%gtbs;x4?w=9qAp{9%&F4SJEF(s#DVOAc=VyEy?OTib1g z?{TX{4m}qQV>_%9dH?7bkk<0I-Bh$~I{C59)R(y-{@Xhbovu5Naj=8_V z^Y+QYBgk35V%>&P9<28g=h;)f*7^nR7gKKb{VC2jr@Z?4W8B}T{P{*Tb5bNfk$d(5 z?!Qy^&A-RYMo?Bec!wREOZjAa73&y5`ESxqoJT-8diQnK?gHhryDHh4XO!c2U19zI zQZCqC&KBW$^(KE|wD%GV=uNqQ#sxNgDCKPj&#}&4lxy!&auUdCw@f+Lz1*-AWbS;o#jQHXrx*oBV^5aw0o%o$?MyU~93Tq{%nvEsbZ} z@%wGcKMw6=u_q{>eY=Al%B3tB#j@!Mslq$d&y2zI{FL1@qnUj;<|LlJjDH{zHEOc<(fPn)_)7-jhm;kFAFJmnlXtTbEn*Y zt``f{B;Sxe%9AZc-__(FnpuuzJF6-0)*X$nXUat*UD)>(dxeLv95jM0_oRF^(vjU# zA^#AxX&4K8lO#NZ*|#A$uOmr#h=|*Rn1sG9;s4LWh)QR;f0~Hv={@l}ZVS{qN=(f= z5%&YFKz1hapEc7)zrdYoQBpi?-8+EQ{Et`YkZ;M3E+nsT>sDX3XBcIRuYK5F4azq< zo3dYZ3Bp569%RDCmr#B%&xrkwrW_t-hi_KsVnokx=Z+naQDuvZWrZ2!_{&B zoV>${gbqx-1LfwS?bwa;J7v%BDrN~w!`kEgk~rZZ{@&}v?(~Tj9^&j^E%x``HsK*+ zo_A+8tE2Gw569zK_t}Uo{g|m&xbP6acH6Nt12+l}VLHW$eO6v4JVg7_G3@?7-Urd> zA<9pBv)az&8SW35z&7n6zi_v}gB{kTtT}ir%S|D_;8HP~`4~{{?B&W5Qphu0s~gES z=u%#`&Y9`#ActvN?G<^3p+22i)^N)19_q|~{~Yo4xs6g|&lD(2j_sM5 z&usB{ZG*5xvdq`7E9}ytqn4x08}R$X z%Npr;o@BVp8}R!_`Df|q*BkucH3c7yg=@(wk1JMp}2f7$g0Kht;CFb?N&Qvbu3 znpo_kApdap<91jbLH^-DU<|ZBP5$A9<2JbYoxFotpREw1MfqfxEs!;Y{DbDz2>2XC z{-NE4&G2F``G>D%n;`TY`3JxFjp!A6*(xp)N z6iohMN=-2Mr;>kIow)|~J|XX5y<#QK<1i`V>vMc&tnK|koL@rz;kU<9JYPos;nuB1 z5WSlGgVy#1P=1p9!+XPdF!r9I@DRSA=YjEO@(#%l{GhmJx00tT)MWE5_QixdN}_o9?v5mkxZi3;d+^#%scRT80+qaVV}LO zn1`X`9EI~Zb;-S?% zE!jK_?m3db#KV*WctLTFWci#zXtI0o{X+RJ0ql@qmqvB%Wvm$wj%YCqF6yGlKlXk0o2t=TIL+eXl6=8{{8C8zN!eR`L&ycOvlnCjZc( zDjd|$kbf9=VlxcAOa5V5au}XRCI9e#*(PvOq&^5+zm3>8K^~&hj14f}f;@zo5B8Nf zk$+h2u?~(*C;!0bxolfb{$azSQ1mn8A9ijCftzXMA2y~0<9Z_XKirtV2I}sTf5N40fB4&BB`CG{pPaS=)|iop$WmF3zKlEso`nUi3FII06_#ROEBObT$i?Vg$UorP zFSw7UK8PFV7ed7f>Vx2YDIZg)52Cx3bN@E`cUr%*Yn+27Zibd59)*X)ME->Pf#DkiD{GJZyNPMTpcqJ z+G#)K`%^Oiz~>>?*i#?GrmtSm-jDhqvT|-`?!V*JhCW@T%|+*zYP;54y&G{($$$Z2J5A z(i^WEq7OoK;x%bt9C--aQP;5}=9=&kgOV;vHy>RS9wMRmk`&#VJjCKRm!&i-@(`81 zE=kI7%4Pf4{0y(wvdhwWb@C9edtQ{14wHvC5PL})`{=yz5qCOWlBB8Ugm+L$zAWvI zA`c;FT_GhGk%!pRyIe}OArHa-zY*9E(c~dyfBtr%$o<_bq@R)GA+*L`kwP0zig_7V zvnp{O1$l@d^IHw|w6qhI zkWopxk24Ax*(*g>8ChjSkwS=;_AU*3W|Nkk5g{vCg^aho#rHU`ex1kX_s9G3emo!7 zUES)wulu^r<9WVb)3=ikan-3#w*AgQDUX0>kXy2P+1j1tL)4|clXY&sU-%DKl|RVT z?Z}6)-tb8_+IP1&US|DOmb8U@h_uV!W#(n%Lws29OQ!gfe26bU8f0nX$%iQMXa<3i zY2?X9f8X|4nWIw+hLJ7^@%$Pu53?J`K<4 z7U)Bh55eW7aXdn z50T2$pApu{5T57z3O}N~sWBA0Qh!E*t0^3*nc}H znE9Wn zp_Q8GkGB`TL+L^t^rB=cR0Dp8e~H#FJik3{(D4lR2&?me(jM9B9`4Qa;48WzNIp$qH!1?`c8GroDz!vBORTXj9`qU5= zyw;UNfApsCBa$Y_!N`7BMP9@gO?fC#za;V^cJ5NZ`>(Phe*Tf1i+io0V9*)iJG|M6 z{^6M8f$RB%@an$cJ03H^Jl|OO4HYAN&{rQWcvS6NSfvyqd3^Si6W{2pmrQ5fVL=_CAuO@lV#dfx!SCf7E>nCZg>pB%dx z{hkSemsW0p@^RAztGGwPl+C_^zdVV;K8t07P26K}A4Q1p5$4rw#XZ|$f(vHGVLroV z!M|U{V}41rV3&o7*sm8axY#ur^XpOo-_KJ2M62s5=(l7FJ~S!~^DA=&d)!LL{USRB z%TLI}{bu_F^Zh=a(FKA}OxlL$t>c2v-phey?u8O_f8p9B%!ln-DtKrmuGjUuAXs7a z4)Bz_B6#ujosf62La>$FZp=%%E%^JzJ)q-!UvTfg3Qi*p(}n-=^0~azs_Dc@<#JB$ zxx_CLTR2(c{Hn=sh+Na$$@w3#_1tDopB*#A@$?;k8LT8WTl0sR9U;!0^b0e?i7)j2 z!E`#4Ke0*u8&jJ?obur_%Z()-TKSQ^yg;0J^gVm{lej+h9SgA{e^xw zd$^gHO?=6=pCGpATF0*5%o2WptKM_=;}3DmHc#0d>>FwF2hKEm%$AQN*7{b>E~Agp zbbR)^2kdJ)vHZ(>>{cmp(z7bItd7|9$!+$i75Ni+k1H{Eo!Ic{4OZ_;{H*pm+cujx z^Yv9`6h{2_V>z3#jrh;+OKeRcab~NFETD=wLi0Q`eouVK>@3S|N&dtSyHfT>pEzJ> zG3(fic(%(K-2a~=d=?q#>~h}%T%X4vs8o}baFolN;CvE{4nEafzDuueXE zTS7b$u+L&oj_@JS9cMRjUeDJed0xcYomtqwPHb46f%|D`?7p*zzQry`4*p z`>)vP>BOIxN8r4jxb*yHWe-bSX6`6^Am!`GrPR;Eqtrn#Oa zDiVKKuom;zw~5EEz7oRT-P|en);X^p<2eI00VwXn&?0O{e!WAXyRwJQ(56s z;-qp9wha3un!f&F^(6MflzfH-<>OhQ0`a@kV_4$LEa5|V92&{8E)ipYEQ{HcCH#lP zmqXYU?4Q8TQrs`Q4EDfa_SuMhhgB{v=vQP4|6%H>{_M@ZOyNH~-p*K>EK~RoIa6e; z!=nt52a(aeAA7beL--Hy&YtDBC;!1V*^Zf=BtOCCRBu)qLu~q_2Md@@{7d3lHOOy8d&QMFnwO|w6|4;tIOC4kMqf({$ z)0J&ummlKQ3!|3RfrpCy&22>)TAwH}M{Nx}W5Hh7KT4NHS`nOzI=9s1tXVxbku z!iUhm-kwbjNfvnz=$A8>;lxflYAm-o`47db+pynPl7tU|`x98~%0%=X-b4C1Cw690 zd$zJ;Jnq-*&nC}GV}8*FOzCb6`W(UR@9j(IR&-=v*GCB-;`!Jf`13a7&yQ!1%w90h z7mn->Y!E(#$FV{9`&=h{2#+^o*@aQTIPWuN+V>Z-SMA)fUndafqbsHRkJbApu=9J# zUl=SK$EN>J|HQwF(ahr*`3rx&N3!mHiQoJi&ZeFse_>JPP&U_r*ulvaUmxT%e6AbF zyzPk7qMg~E0`eJp$@(+5Zp6p`16IDBe1>(oj+oa&{KC_L{YzLP{D){=d&~zRHh*Bt zhJ^Twd6sP;zv10I3-vQNXQx|{D2Q$;;a0Q@y1gAH@*rAy?F4u2VImJ=ROAkb zWkW?CL^Ff!@M>P8|G?+-Jnvy~yes~G8}lGMUts^l*})~t4?|9UT{D%_uswS4Ts!DlsHRLB$aAAJ)c1 zz!5+4A97nkI_x{8 zzKdfgL&5bN`42qrGT|fn4ucM@0((tj7n?w+9YX#?;o;@DzD)kZfE7!zzm)uknD&0y z8Akqt)qOv(d`14lv#X21){Ojzj@uSM!nBShe6JPvAFO^a#QkNa!iQkC!H{#)1p8iM zC0}A#i}i4>wMogA`8$BmGrC*|$2?|Zkq4n{84dXlj7o4X9Pst0w>GhmqCt5O*rhAw zKQ#FdbFQSI|6wTdA3Xiju}_!$huKOQ@cW9sl#jq?zAm|G=%bPUARCejy?=HPKE$hb zDVWbgKE&ShN%%e?AL8Q7L})cYNBVwuR?L-|v`T=uiR3?IU5bMZ{^URGjfsU(k>o#o zo3a%y>}d2Kc;@T|y%=aHB>&;v*C;T$Oa8;`Pmwr(BLCsnod{4?A?{GJ1;RR!53%yV zW(WoHA*{EA<2;)D2c@u0Fx-#)hb3Vf;Y&FA5B&9Ll+)-x@H`2=|HttR`41~&*JGXs z`43yRuY>mQ$bYaZT?>iw#EMTtL06xAh#!AKz(7VmM2=OA8d1Wi$-Usp@oF@c;S1aO%Z_8k1Kgxr!$yo|Eb0`mD z@c1P#D4y~lJX-r>Ujg|Kt!^!b;T z^O6Qfz9%5m#23`@~ndF6$^9OXeg9q5Ih z*OUjbY33C4!yXF%;q(npXyJNa@YR8yVBk-A5Z^C)U`H+GL2#eq&jreZ*zjU9=H*Zx z1otl#f8G%O!|XH<+`mXZMA>i;a2!EC#BT);__u=kG3MQ$3_CIZfV)=QZ)nKF@2^Te zgmTbi=-!un2&G}3m^Xf2_zwQPJ#jxQ`4A^MdP1kbQgQr&o+r-7s2^iwKTmj~*62f= zFbsnc|4qc}wIbm^T;4Ml_cs;^|DjA{Bp8k=5_u2{p1DB1bFuIrD%SOb`-e(}|DZ6s z59og=<$Vv5|L}NZH#j@^obVqug>=L`^b5j&D6`gti|SW||KPq5_n!w|FXrdl0n-Lz zSL9#JP`H8l6zPE9i_M+*RMzkDE#W`tAF7gFGrTQ)hf$GtW&Weche*ACUG`x?rSKn$ zZ&%22(#eN-^!|qI_m%77_-fM%JcnEp{sZ?br7in(`njFWi)6%po6Q!{l4CgjDh&YKK(Hdh3x7F)Q|_YF6l z?3ql(k$i|7@9Jc+`wvO)cmDae-TbZW?``rSXU6h<%T~$zB8b z5S3$oqEkXXg!%X1vcIY1L#*5IS9b3f`4HD)o8k3!zT_M5>m~KEEnwpU@*#Bh$-$(Z zd-Q?(Oqe28bw6+nN$R{nmJ@immrV-?_q0`+GoYPEv9 z!=prA#QgvTocB|I#=XI91mkQD;v(h?A7VwiDJa-be}>*^Gw568E&PT*HJx#$O#KnmGqKA0=y;kg?H{53j9Z1yaM_RgGXfqC zM8D65`%sQJuj+T_ZGUjtN&OjR!~21OG37<@^Yyom-HKhG21@y6C z?r)6JH5Wbv-(ytX%S`eg`1Nj^hTd>q&qVkTJRbowHSzPuOS-;h4w^7vg}(41n%inZ zmod8JL-f}MTtg8)MBN=-u&dJ${A9L1d^*}zu=6uR^b;HNBKW+v<7^YCo31E)h%`Af z*kDh25ejoV z5q|c)VO3koi}>2DH|W4K^aWZ0@2sf2&=d2XYKo+6X6$wee{Tk%6_1M!`p?1Z@+olM zUm1R#cp)9nTP#Dj0{txSS}EUw=Rw52Qh+0lk0r*LH8k5VkN@84BAz|O^CSXw`TPBz z@FNT^E8za|Tf&c66eNv;E363P^WZ2u;Np7(8}8-d5&vCtw%cO}cOOLvAHr*@G5G)8P{j8?@tMgWFB9l%5h{F$ zL+3ieeXr%he>l~(Gg!IJE8?ym|9&5|EHH0#itr(t&+CHME2D+~FtQ`&yWAKk`42qr zVS`=|>^X4|K13IXUf7>zCH#j(umPMCNqz+1<9S|YhxsDyg#TdFy)VpBXelxGA5>oV z1H-3ZgzsQo0#L45BbfW75k+N^|G+xQR898wh4tz{sZ@8n~l*s z-Nbg+JYamOg(F`J!s|o4mYE8bI{O4au%7|w$O)fel$|&3*|ZgW@7NsJsWV&h7x;P) z@At!dI^i>PO+4;Cfk&;O z|4>0%JK}yrm3|0BwNw)@3)_{jlKcy4zq?@Cm_tV{*WH^clhT zTjyc_Z<*lZYw~eDhWv=x@3!N=hx~|vvvz{!t{dX8`#-nX~KVKXa1X2e<3z$^%L{x$(QI<|BXGK zPi%7S3;VL2xc%WzEblS#-_#FGL7RMuC+q)XT5iNA7r$lqLWymszGg#@5;wTLVv}AH z7qS=3Nr!w1|K7FiEcVei`5nfV&)D~6#OIBlun#%J*P7R`fw-T#$#0n6@Q@v;BToKx zANOmMFVW%GU3SurIR5t?wsH!w{J&f5_FCc+`AYnK5MNck!QNjc4$!>L4!j{gZ+w;6 zs*pdS)V&=258}bHOE`}p4jOTR1^E#FntqOHuO&7JC}TPQ<7@PZDq)|F(s9=vMNI!X zab8&=Gx;BXBk%Dk_VyPY$G$`Ct0133Uj8^!$NY_^JP4WjQ8up~@xtMUS*97W^O8es zpAGTx^aE_SGjZU>eQe=q;!R)nFypDjQ5|=)vbn@t#_hyD0OB&#(6*YAFSG?vOOz^ zAB<0Ct8t#+ln-$`HIZ5V53j?y=t6w{{IiyK9L(<=$5hdGY2x92TUo(O;*LepY>*f6 zKgB4v3Hub9e28};F$ zth+q%_<3vDsqfk1c+I5{HtaR=F!x}#w>(?;4{qIp*mBHk;h)Wymjk-I0n9Ry_($1N zoEH-xiSuIz{fQOkE@WX|#E<9uG8Ln2;X|knox}bq60h&#&6K`miR1pGX0YhpS;A*n z(ASGyizS}e*^{XS5?gD#Gv8^%Ba|nwZv%<{T8(A)YUDTkG9QKW)J)+&L|VA9V^zee z-G;K$Cy3`R9n9ve%oP5EQHTr6awi`AqCZQ~AparXhp`LiGKBwd`?w?eGZ|9;wt3G@ z@MXIL`ehl?{@vky!r{?t1INNk-KP}$VKx%*uTYr!IgbO)6*||f+ zJ#TequA7OUwd~4nOeYQnOUy7ORtxORcB>NGpzl!mJXQD*KmHgqixb3sFyCQDw^Wh; zuzaK;%ek2%{D=Pz=`*W&Dbn-j`42JQJFq&X6ltCnnY0iJLUfsLYO?Sjj#X*1@;>A{ z;QbNqpC?x9*N&|?nI!y&m~1uHd?WFTL{-)e$ai=xufk+X#8Jx>G5fDl-a3u z3BrfK?lJ7kh!Z|U?0#L=`)RcBA$+HGWNWuXl*mtrLZ6|A^^5Gv-j5F#K7{4rzRcPt ztb})AtSfoI;=c`I@jXIuzOsnz{#bzBGo#qqS*y73BKZ(20>?8pW`*z}jMT@npAP~A zAK5dC&746z%zXq?t|Wg!>o@kTOdzhv9>UBYkiQTxbTAw1Nv!(Ag;_r$f8ou}0W8*& z*lVg2%YQ)rLI-VNaTAI4Z}nq6Z;{WS64#flaU*^+p$`kbKt96>Lt8cxh?l4v5e#6B<7OdF?@)@pLbjJ4wv9_ui zbI&E8;pcY~Hbad#u-1s_uOh#p{vP*4oY44o~tOaJ>=xZ^>_X`TQ5o zPl*GDeuux_Xq-7KTLnJ3(k2B6L}E%Lv}%V_)y_LY%tydht3U=&ZqpId6v_5X!XHW z@*(&=uL~g! zxc{(mR6mgi@vLJG=HZk7P(E%OJU-i3z z-$6Y24=G)eq0d=c;X|1BOvZUJ`47v_CPL2v`|@6-705QBaY`47PkQQ*~|{D&x~2=MVG{~^v`3tp3u|8UWAGiE%I?-1&|2{Xos zEv9e4{U+o;bRHW9k!#3*s9(Jf%D0pM5cURp<*UednAI@^e*Cczc@T0Ht8qUB`44Ym zg1}*!xpY3{`3N4JRzTNO@*j4UE`=*anTf}zu37@U^~irXG06|}B*}j$ zDe#Ao)#N|ecUu8Na!f=Xgi%f?SpPB>c@SX%;h2|fT=FY;x3pfoL2fH-c|!g}OO1H= z(t-SkX)Tf~; zL*3yBJpYpaP`PUhbdOP$o*(xaG$S^H-(K<`xF6B)BKZ$hF`MAQQ}Q3Chi?Skf8;-e zrECCiUE&w}!(d8p@*y@{UXSagiPzBN zKUn9kfJh68< ze+akqgL(JKf0&`U2;$pO9>n(p^RZ9)J)b{G{)5^9Uz{IM9>n$&^I+ps%7Zv@buL7x zkq@!s)g1KiC=a4t+d1H}kn$jYv)S-9o$?@TExqBT!E-)ulJXyx&!2^_Z_0zPIW-eT z1X3PEY58>M_vexD8}42>{3)jmlh5sN2Uf2;%K7`5ZsW4|H^<(h$Tefu(1o55YNmoCoIl77PDjRojW^KNSoAK~G~M^gee+aLBX~FzZ0E$b*=g z;S8HwluCUVSGEmgMOh9o&+V-6ACmUj;{57taee1QfB}09_esLZ$LB>KhVywH2z9=S z^Rpv>|2~$Hp#l@%RtW!LXpkIyQ?8W0KYlHC*}j*x3BQHD#VlCOG}-AJ)v}=MJHmgk z$#^6?edm_oIV)>qzm&*_=zji=?4l+45L<6l$x1xPhwyuGS2jJ0djDp?Cx@*#Xi z+?8bpkq;5@`L^t!9{CXcU8`inN0JY5e(zmb%sTQR4qM)pO>RT^5PSFClMNa`K7@(m z16f!A`4Ayi_hs{b7xUkz)Q?fR@SZGtKKT$9<_|EVn|uiV^~KZ3hv2@$y?f+Cn09z1 zJEnF*WM>DH4{^EfpX}9I@*%W(G{@`j zogy#d$@&&JPbD9sTZJ5qH6XjeF)>Dis-YE z4{>OeGPL$5A7WIQ3Y%3#6(3c(6WsYKE$g$Z75k0CAfo4d&q1RE&YD^9A@KRMF?IREBQ8jhT3O)D_DGp zdB=R9X$0F{eQd?7h zhW@cOP&p=C_y#{B+d@GG`4EQ|sAE4M`4BtDw8OqP>d)Zw?}WAFL$ou;y}CEZhd8gN z3+H9Q;`?j0)5Gg?@*xIl7{Ir{0C8NSy%DU{r~V8>Jrmr2y;vNdZQc%`#t0umSKbcu=BYp9v!gxk*QfrB-K!m7{RisLXkO|FivQD}5nc&!b{6$# zoH6JRQHIo?amT|McHO7`j1fr#VRtI^XDr(@7(Pw46+Q&d<8N`F`ZES<$iQ@5Ptl*z zUA`|kOzAFsh;8fp!a!>);X}Op&JKQhAdtaP)>!OR@3Z})~k@_@7%uoYmv(|9x`;8)gZO46xpV_UTYQk0F zM=Vuojo0IsinyQ0XKcLxCUE!JqNcovlFrItW>F-3haUIZK!e)}!DegJz`Fe6y{ zdb98$x_&gqKArVN{Q8j3O!S6##PiW=;X_Q@V+POq`3e7_Ce9q4F>k@@k1b)oqPy@R z*2Z*2ztm0m5MQ2j$39Vz@*a35$8GPP(D_d<$#38@reSftz&5$F@E`EKhWpudh5z8u z3G=ZW+7$6_QtnF_{&hefySd{_2d<-HuY6Ei2)#JieAE3=L!TmFutjh>_D}5=to<4_t+xhUAd5^cUG{KPCojK7X?SG-wux1R|U&H z?cjMgfd&wabBS*#6|#o^@ikPtonoic=s4!uvayGWbygf>2mi<4h{-;}{$RgJ)APT%zkr!x z-bRy8VE^zSQ?Df+pm>12`%0YDcOT|aWQ)f?_ua#KYZ2ed+Qkl=5x1?{!Bl$@ziYFd z4FKXrgY%dV`XNm}KW1GH3mi*4zBHT7@g!Dno`w6mi5CyZVCKHWzgMQQE)%nb58+yz zg83uF!&)S>52G6A|J;YD9+t?w@#i)94>ObE+2?V@(Y3M6Z#=P9kFCsWP@_-4eTW{R z(d>o`al-9LraypqPv;1x)gxQ@54%@ymi(9||KV%ZCU&k99gpd`5%*&gFN+Fe3$=;I zyjzF!Y~u2fYq4KGOZW~03PM=nD`KVY!I(clyykZxTYZDrxH5pH9?B9v#G|82nQ2s( z@F5JM{n*xE;(XtQ%z7cQ-f&-b)04QwV-EXcKz_q~XK!{|iFlv&47TQ5rtlwTPxoSl z`!j|AuwlF>JDf}$@8-_Vh7#AiPGEQE65n zL4Lx)y=b?=#QlcAEKR$0ZZDF zBKj~w*6J~ho+-kI$g0z2S=W-Kc^U7+sPC-H{z051G4Y9(9Xn#eMWxkIRKE(8JBX%HVi|`>n-tEfT`D{d=Bc44C ztYzcB*|N<3>xB;?b8%*J5F&htcbUW4#gIVZL-<#ZW-k{l7yd(C@JLqnYnk9do!l@_ zhxotiL(!)rPTJzi!d8*bu*`7~yVjhz{-ZPNuz`GryxslTf31n#W;5o$nS2JBxs0t+ zBG!N7z_x^w&+xjyo|&{F{=3?a`K%+Kp}Ct4JNTFUg<(d$*u)jYR^O~yi;oM1@35z$ z8{0I8Sa+WlE2>!_jxUR{#PdC|?h!);eR^l^w=4%TJsa>;K9an)w;+7Q2T(`3B@$ZvQtu^sxM zZVy{A=0Ggx+>#BS z|37}iTzRH;b-M5$a${St{auLnl{8~Po2H55%=RyAzD9n7QN}M&wj}PViun)g$ZrT( z{}~oOBER9i+z0q$OPsgqE%wQh?_jT44|%m7!hhJgs}8W^Td@9{XRvD?`3^fH9^?Kg z@*B!*sv$$2_(bhJ$e1}v_z<$RJ8<>LM8TD|w_p_d4*c_z?-?ljRRIOvi7R!kLFdKf zJ3M-g`44Bvcerrw0_OP$SsxC#Hk=F0)_vLxRjzTG}ZUoc$cKdkM$ z8~Y}Q3GObx3o|!|iadx;u{&X4o1r2P;=r37*ylk0!`z7NaBE(p|G@8=t26R34`8tH zAJk&=vCm_W@E_tg=7UKK@*idg=R=+y`49I4^1qnQ7@8Dk@4t4LycbN2VBh1qw{`z?X_Pvw;u){PA%r}w$@GN#6?oT2A z;lTA!hpk=!P_e+xhuzcJy_)}wspSRI6 zzUS%6j{wYf;oO+_F!Sb8T+b)};n+z(%x5qa$H(6f!2V_v^c&_$`?>7g*P)Y2{)18X zaLgYumhv9>nxa*^DBRC!B>FIvLbgI%W%40j6(+*4<%T62wNkJL6Z>$3(qQjD@*nD5 zGhysX1L^(1pYPYIZ0P!t{D%>NS+HM&*w!o)4&er2zW0T%SFOI1j{OFd2QeWl4cumv z|FCmnDxR;%f4Hli0vmT|3m<~#MI0;A5QdHXe(UqSvu|J$qa^-X;kygw$dmi&kPU4o#WF6BXF)vbhEZj=WRlf44h zrzj8N;er5&t|k9Lsrzzpa%;?k;IC)wX2(AA&m#XJ`Oy-PfA&%EyIX$fZ%`gY>5@e- zEROOZjt4G;mlr4xqD#aAc=(h2hrs;#u&OKNK@7g^3;JG^2NCmq9u#h+Jcx*gb0A%- zR`?Imx^wXJl=2|<&zgAZ6gN29s}%Fk6Zt#`yG3OXn14?A4~`G)@%rt&@E`1ZS;JU% zQTPvYcj@E&>{_wO!2(d5`am>#k2e#G~XIS=ngvAy!|hmhDz0A0qzuBU#^p5qe<*wL>axg(SoF18cG-x0 zh@<0bWaB215AmexkxaezoaoD#GU~C+S)Y7}TQyH)<>SbQ_xi6WNuaynd)|gtO=OGBz%OTQf)rZ5qxyJE~xgR{*29Wday%bjX0hWW`LQ!L4rpF8ex9? z3c)qYP2k2S@*z}~cf|RVpE$lEuoK8RFBIHyy*cJT%@e#d2>pk=*}{)_HO~q#Pf_>` z`$N0IwU*SMQIKH`XOB%0$0ro_gn~KLpHcO!H@w%Q{tTX3c)SpoT z4%kOP{TZJAju708`ZKEb0i>L!{)~|0PLR5a`ZMf*41jSC)Sq$NY9LJc>4@*QI7j^Z z_2aX-uSL|K(P8cou-a%Rdcvg)sDi4c(Jkv z_O}^J$NAU4%hbo$qhT@6?+Yl(l0|&h#(p?G;X{n}?SQ_Fj$ob#QJ1DE@*vi}G=!=p zlowGp*95fOC@8<2X@Z;O6Y+!k>SLg#Y`Vcqn*x?%P(<1Da zlI}0AJnV^nWKGe_-e&;m7u?pCopg30YA$W$kNsI2__G6&PgD|eNhMtG|iady8CwoG` z4=dq6crUhrF3*jG@4)j`%zfJnZhNvXTszRRsL6jAztIt1Cww}?nZJMjjA1bP!9(FY z=m2&#I2TKK58U5zFLA*aXBKy}hA)WEbH#WWJw`=Zgt~YtPJsn=DlF7r5`Rc+~>P8=EA2 zhc6=+yYf!G8YHU>c6k8PD(BZ!mol14{?3 zCmtD#`KIB5*Po8V{J1E=ww4Ky-xV_@{@>T1j7)?s6O#pZ_>}}p`)3I5>Yal5t~r7u zZ>C}%)(*iV`=w)_(jLJY`59nz>Y(8DZL+{L>ZsryOS9pH=PAJ*9&H2tPQ`-%K`tEV zbWURIQ*ykOmj|t1ToSxpX*(>*xh6Q@_ZRCmK3Vt>!4rS5uoU87F5j4IHSt25FRapl ze2M#=J~8E~#A~0uXRtCw_yyH>-?9D2h{LYGVK+Vz2VSga+i*W{laHWL_L6m+O}wqB zj`?O02c3D&`c@I=pLxojDw8j9q4+UVb0Y42?h(^nLj3;nL+nc+{&w>|`X9vG9^Pg1 z<;j*Z51AH&6U>(FHbU`u}jmIi|Xv*ltf5%gZOed8LGDULbD!UlAKtN1UQ@hV_yo zU*f#|X=Y$dTtDq3JJFB$(B|W;`vl^%$Bwe#|M4{fYY($s8|k=t`vSH1Jb|5aZiD$cdG|vCI4{>)xEc?)#IOahNQ^)*}CO^WdM>Olxhxq5ZNcPmC z(I?H;n$}P>D*7|1d!i4`{ou#*>w?Po7#?=VlLDNiEa z&5spiWC|Zbx&K0@9F!@1h~pN%Z2ElSY|S~W(399w!JFv~Ck{88!L(J$cX+So#o~Ww z2>-!F+ml(oBAz?Zo!M{85I)2Jj|uF}7UI*>$FghKAJNo*VLE>lyEK)U`wkZe5qljS z%8J^N-w=CcFjM%IF8l|TIv3`Rc{fcy#IhCx*yFRr$7e8RwJ}}z4-Fd~vCo89rIiEo z=#(yeh+SEISi}7^kq7Z&zb*T)AWirWfxCONPp!y*&|lS)&Dr1BC&B%Po1WIpWpt|W zAF3_8;qxUw!F53w_6vQuPnB-C4w?f)kD6oO3vpbtPRs@Ug{I@>BTX@%fcQg>5%ZK0 zPx-0OI%*O>?5)Sri<3nk2Ku|KdSv~NsF zYKl9x za5Q7uS;4}GxboQ*KhIVOA0pUc1S?5cD*T7SSHoDWDRF)35bRS~B92cPHJE+rL#(4X zknJn+7suyb7{L0w63xn)av8$dnQ#wUH19r1veh~4G$6c7^e)1bOU$S5mI}`K1 z3!4mI;Xka)HDgZgh+`8?@$+n+IBs#mm_52iKEwP1L-v~ye?Oql1|1@wVez33Ovi+{ z=P@1jKAQXn`ywrt-9SD=_wx3bcS5Z3K!a_)Lp}q%Q)4$7@j|3PJ)E0NyvpS*TslgAgX4o& zm={TWKcEh#&Y3Ly2YLNx*m>zLxN^~BT+brEVUB4v&i9BPR^Nka?6ctAoBW;}v#P=3 z(*(hKvnpZ5K;qMFZ{WOoy!3gE=`Q&Wc)bM2Pl-d;(qoH!0)jyROf^0=fNTm;;lwL?td68@*w`I=40RFAjvo2_spEx z)`605!0(wk+g);zd;`vIYWdLppR?o}@O$V8&3yD@oJ;un4(IX?`A|N8K*`y!7QpXs zCz|Br{+#|Lyqk>kZL55|Uv`r6D){|0u5E*ox)aWuJK-Gut7F`v?dV64|8QW{cG$aw z{D%%(wnN@-neZQOr*6kSPeiZ+LsBfFWX7i5B&GH?^inJ zGm`%>?|v%!K;%D!7No$kO_A!wEU@<)r*FVXBP@Wo( zc@E@1Tr!J8KZAUSfNopCsfK)qBaYD+aY{V%NEG&8cIWeb8SiY`X&VWd$>cx0AHN0W zULfD$+$zjN_-uuL-(6B(ChyCzb0q)a!;THGX%6`hy82m*-jV*OmN-thh`to!>z`{@j2J+@G&2`Y~1-renW1`42xHr$Uzt zXeN8^~itF(@4TKS>o7N37Gdw{)6kec-&t|c@WMqahP9E{=>O| zSj-nym!8i?EqB@OwOg@&nf!-IOJd+dHTe%NbE9#;75NXv-cca0PaHEM65s#iKWrEu z0rNe`fAF2Q1=p*|e+cv13^&rqe|WJp9HyQk|6xP)CS1QF|6$gFjj-k$`42blYyhA3 z#QVR7L2f_FgBa8)4D8&=fAC(s9_Jh6KXlo(4hHWf|6%p3wV1C?{)1|_wcz)H{D=4c zq1bob$oxGur8oqB_9P!-vPKA8NvAxB@XBELb%*?iz{u4QqDpxXR|l?w7fT!SAoyoy zfLajf?xQ>ic(oF~*HRzGvbYssw&siQ9THXtK#Sv)2Ql1l865jT{)3VF67&fv4W8{aRK2QjbRY&_pn9z@V49~g3% z@*pm^@PTj@@*#R}_Qw2q@*y6E`9QDnw}tPJW#j`Lwoo3#uN#S1$?w;o~45P-#Iv#Nqxv z5EjtrL-2EqUKbxI-Pho z?g;-O^zBz!&-lB-fB0lpFMC~4CGsB*J*}51tB?<2x&O87-eB?}3cfs*J@+LaV)BP) zGOaxFA=Z3*F8fejA^Zq0l{%TB7WokW;5p8?u8O`4%|*4cj%wsX)T=&|X&)yaqG0B8 z*}D%Hg&*;wtX5WRMLxs}Rx3MuntX_vC+lRdzLg0-;&NQAtRO_{7m@bsV%NCrRw4Ni zA>MVeWE=7!cIv#8P4^=oqEpA0vS3^CA=(UbQp2&yb`=KKqk`KY>fp7H5hv0b!ZbQk3 zh|g1oe+A@27=2NJ=HJMNsCQMxIVAZIA9C8l?$zW&;9hfZFCibIq(B4K{3ah_t$uqj z?oU2MX^bXlZA=n=#8NYD?B^mM!a7$68rsDRpTWYs1HASiA0p_C9=yvWA0lRi0o-{> zKE$(HL-6StDZajTogt*mijaI0yndF!D_t-Sij-cje1>}Lq&oVuG1A|Q`w?NQ)ZqSg z@*!@RYvB96(Wm&ZV-PHDrH*|>3x)_}p6w+KH%#Yi0%>?0o{x>f_C|Bw$c@<4lV zA5Q%l??Sb}D1&^6E)#XopCuonrF92f5vKl(sp|SLE0%nS@!t&KbvgMEn6(9-{;Pz) z@UOxI4E0tD)+p-;Rp*xpo_Vqp)cE-e{&dtF?2M>CqxiTbJi6v9j$bLVg4?U-2wr`- z8|I~Z3qN9Xwl&U($%nXqs3)*pQ-u!!S9+t*NBtRjwYKm|`!w`L z-;eq;zF9be`3UOII64l{ucZErf-on*HA>-AeAzw#^Ql~f?{Mmj3;Mm(pRuxj5Psf* zIG&<01a{R>e}+%{VQ_tSAK^p%_H@JhDeBL_^-s9IxOXw$i%9-M^{IZ)P}-yT@9h;5 z>wERX{=sg-XYfDg0MjmY5kADTmX7Gtn+qRe!f^-mBh4h{*S{;9+d;x@lVX=G^Ce$m z#eW9y(b8D>5NYqPz$#H*;t{kMbf^;wH0Ps4hy3MihtBK2o*Kf>&$ zGWH!_LSJJS-XH#y4Zf@liEvKx54f`*)Ls?)4Ja?dBSj7K5KapJ!AQLw=1Uwd;`e9V zci^2L^K|x0%<~m~ozQ})=DQ@{f*-dyp#$$P=N9o7WN512QG%pEs&M^r6k3 zWXX@<-21Nq_CdxLJsue;J^sAC5#~`u6!B~}{`Hz$OnD?h|L|X@Zm_X>xa2$V8J78o?vND+ z(sAB@aag4%`oWEP5u9VU_Qv%RGs%D8&o`>09bo2(@E@Gd+haedvc%kf=n>iv@<%i) z!r7DLLm0>auiu|b{sYfDF*@ah*Q-~B?_lTdj6Tm%;X6!<83fMq>B4u=Egu3$;zEV* zU=ci=`v+&5dLeaXl|dV*Z%B)|0?zNHf8P zeo!~X3x6VfVgId7g5@VHgo}4G1@rtm?35L}tZoVDmS2|fY*4=bl5%=E#GI)SY!JN? z`yD4YuE9;{L$2Cg;`6cm!wY?MJpGS(| zw985S{U>;yBq#vx%I@pYu_@xF62uL33<(2<`NgXzG6Y^l7;VJKlBCrfb+0Fn4N>KFU;Pm zWm><9=Z<;C-rA5avCRDm+qi((Y(@>ve~6dQuVxhwh)Y&HV5@LHa?|(6tU~tR0OA*k zRqXdtV$EH*+4X$l_`*sy`wp>k}9>m}4uQJ(?G~q*xRk*_5pnuVn zhcMRkGR|L!zd2pRjzZ$P>F3$Rx5NSK&$5r|BQ@XpJMY0i5&t@V17FB%U#Eq+Ye&~kn~2HB5GSbaW~0|-2!Elu+fKG3iP$@GI}6-RJij6jpFi=ucDd+F z5UaRvV;`!Ce`aT~us6ivuQQn8PhxeubhcW7{E3)#sptz3dsQYgMLpt`9g`UDp%Ty6 zZg~Qm-Ie%CQ5@!lX9^#pTr-v(F(S5}8^aW}8t4DqhbTWA#eU%9oBW5?#*wT_pI8?B ze^i}!Al2{t|7mJym`PShQdDSht~-);N;~a|M5IzwB-zT|QbyW)7g`#cqSD~qE)8ia zjo)>@&ewf?et*3Gc)VYy<2cTFt?O|=pONf@F0uc^aMrq`+$Z2Z#3>$4Ma#OXddtkqKDjdwfa`gLLpO)ZxHIa&A*ZoZn#Hzis4 z4=b*yv+IMCMIXkr(Q3@|Ns{m%t{zZflQ$%ZJcv2dIf z{m5^)xvUKfwnKA5M#Cha&W@(wj<_{gp+TU3ze2ALFk?h(9@)t%s4QFo7 z#6y)G*~w~e;X6FJF@&93LcAc(j=6tdCbm~jXKed=;*Z8McDN;Rvt~A|>Hp+4WZoaZ zR{kM>!F+E&<`qOdDbxymL*fey`eNP$`3!zTdo!mN#M(W~*{l%q8Ct0H#P2(C^&eCA zbUpbD|K6LhNe$#PEUY$Wt5*=8t}tYNAKirSFy)p3Gg(AD=(-+z^w?EwZ+k-r`$veC z|7bJERPq}xHSLV~8pNvYJ2B^V-R%2PSh`$e2!Q&bE4EtwyU}b}d zTL!d4UxECFu^DaIP!-}w=<~P)kl!%%wG#SkZs~XVFLI2>(IHrzxA; znRw<7Mb>`(Y_YwKkpe!R{07ByzcCM+c=h0)xE^_?@FCWfe1kWYGX&@6ea8Gf@*OS> zsD&0mfbe25s`TX5{rM8R(=uR}iOJMiNt_aQQh zu7duo34(q8mVja|`3`n<7qCNfyzn1BzAMJ{I>h((7DCgt?Jq;bMI|=_G_xuT1 z*_k-@_A$&`A1iza-hW{kF-G_hzdIcUzmw!Ugxehek7mTV%l5*Sv7>|!5!rV)_JxcT z`48tj3*f@t5rR{D6kuNl`48W|pf50RxX6RhT$m4AmXQCz{e%JA9Hsp)U$a*}Bo~&H z4;6V3heqW>lXgQz9>lsS*oQI9LG)pan4b%e1BZw{jOoMjuusxn@*lV_Fz{X;e66<= z{zLAIJc#T|{==-Vc{raU|G~9+KAgn7herRQqgFolnE-xX41r%`w>HlQTsBk8&z(3s zJLF@Zr3~|X3?v>jGao!7Z6&`D&*5#Ct;)y#4;$(D%30Y1^C4Q=6!UvS{QA7ORUT{^ zLH>h|PY(RqFi_+{@cf62ivxrYk(-BZeDeXK55u>18$5O-{~`DCR_se8{{hcMG2euI zhlvUqp#9BC`n>Spv02=hr=z?z}KJrhX+}yu%ncGhtuiFaPJ@a4!j>@rX_Kh zYXYdPCjVi@$~aiDn|z1t@GY?Si8&shj>x|LnJ9ziIFGg@|KVI@4EB$b|G@JhhGvof zaOz`_?aCFe~0K7FR40|Xo${``wskmRd7xM z&acUTDBYF_=R9@s^R`v;9k}nZq+AEDFSY{D(aQvth{w@*n=zWnsR9mhd4~T*<_KS@ItoA~QhYIr$IcCZyxcgE(Cu zU!NKI5MM8(U>+&?5B&2sbOHGf#ePXJIF$T{2{RJGW|!Q5;Qbg;y%NCS3i%J`2F63D z_vAmc>lFuf?TAMjp`X*6e27c>Tj2e8@*iHd=J#sIe|X$628t8Of9R+ijq5YXe+agS zg3SAJ|AF^uJhF@gjRx``{KsOyhBk45S2(P;As^ymLKy6JA^+j?(NJ7JMgD`$i%pnc zO8&##&YM8@BK2W-x`n{&2J#=y6>P+L4Ke2Rp}#~v#EU+`pt6Mg2j_Jgu)m1>hp~5p zp!s;pg9tYb!u2(j2XQDQ5a&hYKWLm=5AoLWJP7VToQqtC`6ZMG5jKAW~58`xdHz?4N`w-l3XxQh9`P1@#49>@AxkMF65&4-l$gP6 zBf0;8>n@o>tS;`4Zx`Xd7QL-;%=4Ej{8v~e{D<=4ZQyQIdC{#O@tBj{jd|uM;{Eaa zQeOLd_up`A{(ZUd8`>DX zku5eMAL5AKTbcEI@*ygXYh;r#&x6mp>L)zM^|0?`rH^h1=6w-%Tgivmn^Ple{rH;j zBZ7v!k!6OE579RMt!(ZE@*$i**T~8g$cIpLuaW5_kPor$`8(N@GV&qvPt?fLW|I%W zeUF`$Mg0Af{0O~}ce0LJO#et#F#LCXC;7>035Z9bqgVS5`Aqqp=zzB2l zA#nWy3|XEh`3U^{^KNK6NWV%xgnn6jkhR|~@*+kWb;Nvm@*xiUtAJ4k`4H0|sKVLj zavy@{MWl>Y$9%SQkr!e5MgvM0lMlh?{YMUv4}tlZ*kMgRM3>px5Mob0#LEA=z}YDB zA-opoLfw7xAq?yF(0AS}{D=PGxZd5JdGN8mrOzkN-*-QwhJ6d#hcW6=!iOk% ztPbrzMud$aJJQ6&AQGdqCU8CXQ)d9kXSoUr#<|9#m#;X}4 z;cqu9DIY3`_z=mF12C_wTH4MXfPV27urs%+P-#yW;Kv_F3_EnNs*!vF;}(h# z;LsLqCcKgS2JT1fd8Ullzt4mpal@t^`pH$8S8zsh4{-Jjf6E^TKjPBnj^Hx8ypW$O z@_dK|aUJ36%Ud|#-y_ZUG~AV;qT5X=AA;wbKe&s}H}tCHL*V`u`mR!jTVqQKdmYM@ zjz66>+u{37c@YD)b%05sXM_*2P*D|p{vH$l!)XU~(A$1cuNOB?11LQt~j!YMfTf|EF5Zrg@ zZK03-ff0rLT7_?)zosiZ2nxo0jNuaV{*>}LYlIK6F~|g5-YvoRcK}{5m&>NyGKDky zW(yx8SIZ0@jT?{ekClwSUJdtNQ0P8XrBX z9^7dF>^{_9@*nu$-yHK;CaE^V-&Y&^PEut@UfRNJ$2#FZ?0djq-nM&Z`K+Jk1AcBf z1oP9*2;ZS#=TP{NnkRgRwarJs&#_U$cNlwQ6!s5zoNe?S>|Msf?b}RZet%@Q!Fc## zqbB&?vkA~G`i}4)*v`p32V1axw`riQvg$Oy*TUDg9J=p&h^^z8Ei< z-(R^E>>`-^5&IJs3g-C{d|%t>H#q!?hJhKY1xHNV4Bl6R1lu3N`w+i2NzDC)u#R!~ z`HmF4&MO`gDz^w;aU%h*4-y4y_ejG2qBOzhHzmW#u&sj4s#4%wL9XDw1JdAV{!WRx zzc45+9rs831lzyQ0RIt(1-G%wg3(SVB*uGGw!SG_@&4;svHeMHHcT0EUSd36*nS_n z9nSqL5v+IrBP*&)6h1`V{r7Bhza+t@9@el9xZalUySQ`Kt@;h?d4{;(%U7)aH!*y8 z!B*IkFA-e)jJ=zjEc^uH>;JJM@x<ZWG?o^v)fj(hSkKq z4DPcz2Z%@aufTZ#@m#07%tniRiSurE*r8FxdLg%1)3wAU+i$SiJ;V#om*RYoc;fS` ztXC`YCGtO9X8#P*g#WNnrGzPtA#OJCBCA?Se0%PBDenTm&r<)zyU1czRzlnV9xr77 z-V-amI)i=$`4aQgPqPAR;ugbBvO!ac$F4cf;#L#K>_5sXQ;EG_9cH&r5RcM3#J1fd zzB=syoA-qnlJ>E;*iX{B*ph`A z!Y?ptlgo_P5GzmI&Q3-Xf5^&aw%NoN-(_Ln0&)DHO!np+ar4M@oDULvK1pRZxIVuz zKf=FH3hVWrcztLRGejSxaeKGw1g3=Z^+vulAf7#GORSU-%d*vpSG?TJyz%k;SjpEY zIy=NjeFlxZB|D0BQ_K|p!;GepI1eQ*T^!ErTM;K;3uUAKWC-6OyYD885zQV*mG&U^!qmY5a$X4Slk=hj(!{Vl@J&Et;9SI;=%6A*~Ak0 z&wJag4-~sBW2J?})lN&9%Q0fv2zSHk z*MeEhZ3^)^FBj%Kf_Q1cRJKohfsJv zkhLpJ6aE9!>Cen^i7!sKVk^UmPk-*irVmRKKE(Sc7R=~ls_-Aql=fmF38^9vVso__ z`dO*Me>hof%DnET2>+q*oC(f1Q$!v_s~yIYzt))VaHNSL3sE9}A%Ctu(|MIF{D|rc zI_&v*;(a}|*@GImZb8T~O| zW2xBgx5k>aokl#^-I7IIA%7v#sSjH}hInOv3wHZ9`3z2my;!#i#9k_9tYD2x z+4Bj+W)0n#ZyEUvm%kdZqfW%T>bkOqQt}xBKI^kON8%6PbXiLAV&OlG{?mnN4J1xe z(q=0TEE3y8HMH37Zp670G+D4G`3;v{)$wmYKEs0`Rm|Ta4$JI_$9wV_OwP7vqx%yp z|EJ8Z<&)nqs6|`$Q;m31@7CxCk>7B9rV@+(NIt{K=oW12G~#jRo3Y3X*8LDN>m9p1i%%dX@*jTxUqWL;UlbP^(Y;st_zx$e zOR#fyyx`%FFF@G;_zqqFE5`L`W!R4=xA`fD0_gpyD(^2F>obk=2O$G38JW_MHw9c@SH#DVo_KQ=7o~~5Eq*R zzDN5D|DpEjcCh?OzQf+)Z1AxpuFuPYR!gm=^9O#9!nAoNtlm%lL*3UjsCjKEe2Am! z>CnN3{Dl=km@CgkC_2HuaBGrzyuvwRI~pGW?~w@0gB*k%LKhf!U> z229`R7th#iFWtX=zH0;Q?xxT8pE#F4A+vCc0;^2&A07wd`it+nc)TuCp0>4nF^8;P=m})wf~)iQIqS=kOa(=RkOE7tDufF5U0lH76HRhmrrF*D(hQ zyvTppaA_OvugQNfTAvN2h2%d>U|VrLR43s>6zF8Z!@uM^G<%%^%Z!P$j;2G{DDof7 zm#0BzH+AXX^Lf=?t5modM*hQiwG@DTlK;@`St91e%KZm^k5T({0+@9o zA0p;D`Vc_=gIh@)44g;)!}Ig8*e^`}1Mkx)+o>$Q9_}-w9or1cZj%3S^Lz}>OUQqS zt%%0^WyAv>ML~~2ln3$PTO{_2lK;?LGZOo8$baybMS$Tp@*g_8g+td1)Q8bOCJg*O zlK(LCVkrD?MrzOccuh_w-4n(R8C)yp3isT zKb&FfFzlSGt8o1hJfNW~`4GvI=VN{n@UKj2&eY7EGSxYE`N&W|pY@*mD!n~V1b48Z)-9pOKu zp4Pzp@^axn+{X3lCQHhTWUZ4S#J$PyW%Cx_6aGSJuMe`DdE`T!)cPpf{Gv>3pQm0cb220!;*$O+ z+5CCrLoDi3C)3+bK17QJwX!f*@*#8*KFN{`$cHc=_)+FPiF^qE;96NlBKZ)(Pd>^1 zyLUtuKKkq>b{=aVc5$cK1#y;jx}^C232i1LMXve3V01^@2! zMP_YBK7@|X7wjP?A7anHFEX9Y4?yG1%3S z50PeX0&VOf#J_hd>5A*!Bhd#6mGS(Ctt&fW-$#tdi#QeB3Ht+MgddT4AJ=35jS_tt zdgfa2@M)y*Bb;Vxfy=Q7;YX}LqY2A1$%nWYpatc1%lSX&UM_(nln_>@m zuSxwGzdo2@-`_H^UHQLW@NMH#!L#mL;Q5NX;175Ez>6P?1aCZT2|h*hg&!eHw?;p8 zj_@1ad)|hXa|ops6XRu z!w_(<8X@u_w(2>;@Ez2jaj4^PSg?ZnGc?UcLL8(1j3;)Zv9Cxb{E1JNV`1Ejfx?F{ za~}tXk5Yfe`g3D3&%sLCKk_`rM>~eVyhnYD_*ypZL%7%j_7zzOA7Ww&gEnP7g%6QB z3@|Uy6#I@mrThoQbGC4^pNX`cpP$!d4uHtcMnyck&Ej50`w*@b4whi{RTQ-0lULUt5UnOWO4YwKq)#zqjfOTF(?D=6=J0JywvH z-5~r2o}J$z?wjD|#REV^tyc0KaE2+VPx{wdD;wSb>5^&F0V)}YroufJ%^GZtK#3T8~bEad0P+w>>9Fp1(PPEX#{0mLVf4CSh5PKDs z@cnEr`3}54C*JG3@EvxUFD$>PCXd5uQ3yR z#2c^oc3BHPQyRkk6Tzw`p?G~eLhuv+FwhH}C^7dJURGc~XUr_YndXsT9Oo){QfL(H z+2SKu`M+p5wlP5PeXGsbuM{kpMQy?L8)1U6TLsqxMN7>6g1J~Qm`*MU$E8vR5+d?@6+JVk8UaWFOm0Ya1Qs+ z0QD*IJ`K)lrJ1m}r@T*tKVPl(R`f9o#q&LO%?6&~%in+g_(vLV+0<(Z!gnz3`kF0n zPkw}##Y>z|5Kn>UEGUt9%h;zZ>K?J`+-f#cgZzkBzE9Y-iNy629x(^cB;iM#T2je= z?xz9GgAile`f}PbNU*hhWyX?{=V#7ywm|GOFd&4bUuTET`bCW54Cl0r}j{O7V zOSD^jjd@Qej)=L!9z_sOK3;o-TX{uhV|4_9-#!Tfu%; z5&y~cVTO;0r)PPwG3duM`V$|rJkWoTKR@>&OtRhB-{ZtPa~H8u2Z*)y&d1L)vB8Zw zEM!%>@E=MZ&t%me#BFM)Gud3?SIwv5{(@LZe-iou#D`p++3dFDJG6>$V#Q_-Y393T!>#WTNY?WzJuzz zfjF-u4lU}3enzS^&*10ic)r3uT}%}|#JZ?HtP1lQxLbx^B(7DlVB?ph3jcx6g9}y3 ze;CrmjO{y}BK(JU15I(>nIim$5#}bWSu?r+!22-VdmFQxyOM?f5TR$t)=eQ_;ZTS^ zi|kK~`Esm8gSeNAHtYQ@N%#)#a{5`_Oy_`NMVxIICdmo2cFjn|HC*tmY=KfD;* zinUNCULMkty)KCtK7>}6=B#}N@kjfn=x34NaP2<@Ho}}ZqRAhyQ6x?u@Ds8x#EHCz zKcQctQzEfVbuE-HB-Xb00CgSXig|V%KXhY!*I5)FTC!5fLqXh~r0Evuk}L zFfV%}=Gfd}=dIM(?GKxT53xT%2lIo1g%6=wY0k3z*Gm3Gh2K@Sck}=j>9k7t5O34$ zn0|^k&Iez^sS!OfOK1pNG}cS_4_%b(SoVLOf{#4{R^?3$hi%zvMdHA;L2SZm@)=g5!u+8S9g=oprD}74x19^ zx7KAV^T}th(dxp~x)OW!=#2SF3x)p>$2wsi330;|4W=BkKy2T$T#eN1 z7b6a~z*gs7E!{CO4cz^Vh-+Hy zhUDcVgb$(htN_{^9WL@8`uER=txbrhw91F<{^UP2yvfCUSVxfuq3)FndkTgM|6%Th z9LWC9LHG|TPjbLOkNgMSpE+=SCixFv)pIeg(_Z)wZq~VQ>!F?SAF3wiV*Vld4_{WI z-!O&zhnA_i*#FIh|8VMTF0Ri3;Xf>WmJ9n-$baB@4b8`s|1h_29{T#^KTMdB2Xk)N zh&%}1e-YirMmoOoYi^?>dAJ`PB=R7zixl%j$$uzWnv3i21_=LQ{McOdQ^MQy$ zS{_S-VY0r``A>ej17=O9LjQ2`A9|lo=J~Y3f0()@39hsy|KVIg0>Fr7Y~dMs|oLaO23^$VhaOFlI z96v(-1Mkc5`$+yne*3jB(vJLx%dTrN^OgLE8!OhpqA>Cww6?6p^`7KE*wqE&dS&t- zw(gGp|NMvC>KMs?!2S@)e~|hjTy&+r4DL*uvQ+qfM+eUjQZdKorpziN3)&B*J`CRX zGP^D3=9n9>Q+B2_57{}8w~7kUSg{}61I1O0ZB|DgJL8@w$i|H1xHHt7B(|6%N! ztbD9vu(APLTg_etaCx zcgcU4;t~ty&4?YwZ-EOv$cH#SZ!=Uok^j&#AO_a?QXWKR2wxvV{zK=2DA-#}{zJvB zNbH9o|H0x{1bkE?t}%$feg(>dI5#;Qk7wjR=}w_eA$7q<*!G3|hx5h3kUoI&Al`Ke#(rjb9t2<0 zR~NVed~3;n=vNbjeir3HVD~P5F3EqeKNN`TCn*o2&NL8~%%MDpYwGJT&$JHbdsZ@j z|M_j5Kl%og2f_WJd&?;g!nyStT%SdG5X}r$LsUKa4`;gif$F-q!hfjMUkM>MDGy@h z#1$~01Njg)EhIS$%hy+&>Kd$QXYg$>N30^PI(aH z6qmt*x0DBQZn+octCA1V{-Y<}FQz<*#5ynda^=489kTqrV0SCI55awh^D162ZzTB; z#``^Sy(r~D@ciD2Ym^5uyQL?@wk989_aQI%)%vFJAL^sM;8TR$hv0t0yUAWKq4b)x zo%3lEFPx8(4{_hh3tDH&eF*M1%v1M*lE?CX49?g7ctQ^y@*()|H)tmL5MScmVeIOg_Y-B{Si5)WxD3*P}4crU#p8ISup1FA5)G(wK3O@V%ty!nXpP1)_0e;5=L=CDC6jNohMyTX6Cd|wwf2Hh=Mv?w3vUyf|}MKxG@ ztwQ(@Dr4I~AEgIHL5abbOWu(UwP=d@=nsYe@ZO?9wyIa9@E?538f2Gz$cKo&^Gl}s znfftYls?OT=#md{B&@M{qx&xEuKpi$8pqdAgAg zajo+=nXV=I5W3^O%M4bM5AnJ7i_E?o`4DW-H`#kP@*zS}zsr*Mk`M8{&3BpCF!CY3 zulXVKj3gg|KmP(<@*zxDf0OOYA|FCq9Zr%!}khv_ADm*1tdb5Gk4p=tq+e@$sDkent;V^L2jwyJFN7w(dSy#AkIX z!NoFluV(P#A^8x78(Ts_)PDSYjh6BAopArQ`1d6rVq=yv1iS4Ke#E9d?I86u`4E39 z+kO?+7zJm(brI8Q8^BpQ$59*^A6hBkq^Q16XK)DhnQ5U ziTz3BLvSD9vl00afoYwwABcR2lAqd;cb0sJDTz9eqnIMSKD;MrdqPnUbjKwL{uH5) z^8@lB%>NmH+6VF>M*17VCK>q<#jT9-{DpjolhNI9Ju&$Zo3*-womrIdA98n@!sNB& zLnI9`!+wS^vAxL|W9U9NLh>C#-i-&oo_eomwD2P$`)b2!%!lCXtGPe%tD+08KaCXJ z?}j#9`WsQiv&DEuTg>1tn6DEq@**Ce!uj=3>dy%B)4}`)@*x)3=)tV751cq8;tC@-S9TQ?X`xK3<;I=DN||NRB0>-T`zo_>PAH0cR5UXc$G zUegP1WqXV5MdcRQSK=wy@?szCOr`#emnSS?*8Rm|d%pwL&^~#A;9iOS;qm;r!jBl{ zGZ5zWqW+8{E3r4Wj(muswKDj8bc*mFT17CN_fmg`f|nioywsmz54}pEb(9EEZ@F93V(%1T4lK;TBulWt=o15{x z63K_SyHy4+7Il}H`w%*t2g1z>#zl9>%#(bGWwT9ierQ-!x@{;P2lmLKwqYKGhJo-M z{?_TDe@p!t?S~qmpF#Z@voZ}quSioozSCM`Xql=e{D{1VCeS*N@*=jk=>d65+6liQ zz@aB(Pn73Ha37*)nmJ|=QC@^;X>ahgqr8Y4Z~MYkTX|jt_aW4$ScARGU*SJY@#~LX zHRVNkPZ|hjm36|0;GdtVlWU~M^L=Ji2f+0X&;Kv~AxOsaCzdXMUT7Aof$u}5>~)D6 zu77{S^B!#ZceJ&+2426s5PrnXewyeXRO5Vpk1h9`jcqj0KYmik`-=GcIXO)Y*px>& zpU*+xLJ`hesKapW`@)a7kfi|=b;^YQ(C>gc+%UW)ZRdILzK&|J^~N=+uY#|!p1GqV zOjo{&^M7<#uumgZSp|NMxFl`oosx&!c7(ka=cT*{?jzW@QpNZ0tneY0DXD`=pA#Yv zV%aJU==S2Uda0mkjpfx!*2Qa{E5n`+sff%@QD8ZPx=@b@>^ z$`JDdHb_1MpAli+GPJc_CHW5AkN6SS4gFJh$&cWVpRQ~QpZ#5g|G<5#!?hzNmO4Ic z%rQTa3Ev?#t2eIKuoQU@?qe*`?=t4EU-BI`4d@5cHg&>0jh1-)9E`rlK!};zrjTbf z@bw-%UnSg5K`_Q6K*;PG$yeap-MJ|C?l;_eI0moBhe^y|lVa#Nurlu=c(vgKNG_-n{=@!&$&eiBcc#&2 zc-nm$?4O=`x{)8Ba>0D1QX4+M=KrtV;#s)t5_4a{Lem@aKOYmkx|D1bQpW`!x9WP5PmDJ~c*cKj0Gv!|;J(5lwMgi`PTr@%xo&bty>t!xG>8N1uCT$C#QpRxGvBu4M{F5;iFp8V^!f{oc@g(IbdK%A_0Wy4 z&-+yo`*EFkPnSaW=_m0h+cRvsN{a9W3|5|EUu=mT51wF)77-u+c#Lh0Azsz%D9buZ zY~gtr`@D(!9XQAo6v&SV`?{a4HYDybXdgR1l=wo>9`<4p@r2S{?EWTVOO2iEWFGOX z`8(L$3&bG@^Vsuh;vB_XHn@TK^Pl{)znK0C5mra5ufKUplykvM%oCUde$6Fx*- zY&z>ao;c`zDl1w@Tr@ld=X1ng^OM-QNMeJQiA*n(xXv}6ZP-iP;d(6Fd4|}(&lXmJ zeFKd?LwHIItGiEZqZrM8KPP^^B$9pqNc{MIIIFHF-ZLmir zFZRW!37;RGd6|T z=kHinrbE8NhaRJuVF%(VE+bfsB5}5;_vH$IYbhx zoVQ`U{D?1`4`jDSkl)bBuOCyiCT?}nl8w?ME_3d~Oy8sk-=RLwoaNspX3jm?nb;KJ zKYZD3%7Xle7wk7-K?W%z590T8V>bS5vgpI8X=cP6XD3TO1i$B$^2>m2R8AIo5L5r@ zG3OIWq7Or}PKP~qC4XW10&TWs1o4Z9op4@Ed~~7)t5hQPEmLJfUMC7a!mqmudz+Rh z{D=9;9oXdIi6Z~u+Mjlqd72>QIq>^&C*qXZ*bKSv!2JhcZP~;@JzbU&IO@BGK$Ugd8Kj8T}Tt7sLwxVW{#eydM*b^IvW3uIUWh zyMF?lf$;enOYz*mdIvRNzHLn!e zp2uNV7li9g32KF_(m;!hZ-{ zC}YvxiLqOa4L$84w#S+bWcNoCZ&dD&`->%Fd*7zkY}h378K!^g%icXBpP}o2y_uUA zabUSQX4bk1-(hWOPxOt5wJ!Bw;cbaWU+B)Z#=DBgKe*cs`!L9F7;)c-y$L0sVO(`r z7Ttz8t45zak0zfXs$LiKjEEPv*1_W|`3w{A5!48NT@hQeVMqO<7;&c|Z!vFws_-FPo443|5yzNHk04*>EdIE{Y-v?Np>ZSo=9vPd=F+HohbZ=YLB~^2SHry zavPZM1hM^V{SD0bCcmNX>ouGw5c~hQ3}Y6L7e2%@#Y?c}{5ZiL@6Y4;wUh84YMT~g zz9I1!@3XKygM0`3#8VLVb&T*I^oow-`X=Ij2adws(9t6Q!Tj|h`1E*`;H6y-!c2`( z_t|F?awgZ3a{sLFfV+l$b;y+XFI5SIY|3ge$D;z_I7A{V2G5r zz&Z8XcIa7WFXb)pH3;e2IoMZkFZl+XWez!T$;VFe4S3#xg=Y@L9Ud$l&p7L+@kY^Pi({BDc$WG&1W z`eUmXn2UV@w$lEeGaSyvK6D!?|AO<3SGn-__#o-{%CFzGy5!;gG4dVmkI#ck0|tsb z2<}&CZXo}G=TV#~?O)8-vhbhJ{fY`43If zQXn^s{0BGRWLzIbzQegKxE{X)@svaH@L~k{4+muN(7b^Bhp~5Ju`iZ_Ps+tiWinK1#mB)Ju_2`Hp-CyLJ&!VL;qsSUCC@=!`42sZ=fJbK+}VXVj4YF!w?{^j0Buycq}Q29p0! zRuYSO9^^l8ezmzMS$Po|Hx4`rGFG{9nd9hd;NCfVNlU{sZUedEuDXLp}ueBbu0z50O zAj^| zAhsR+GXW>5>)T~3lnDQX} zKCXqH!zmBq-M;|18bf&y85#kgT0wabN7en|>C778KfF<0jlRtrKL5eI{I{~(4t}`a zmiz~+z*V@Oit->@1g(I@70-qLV0_&d=5{6@qS(L}`>QDrA}wG!Ov|A>h}x$9*lMlhyYB{*w5`IJQXdkHEb3^ce4n8pS6Xij;S9xQ95&01O=SN(T z_hWG1!SbRv_Q{hEF>{AEL^_cV(KOK;p2f-gG5F)(gnC2NJ<5aN{T<`8FNi*j7ugHY z|GpsgPh1|Q$y6&`a6KI5LA0rL#=fm9!ha}kHkR)U~^q91beM`q+Ki z8Z06!MIHp7VGK-uDEtTPs)n1@)Q_<%O##}Nk`Hk);HT_>jB|+ed9w=qA?y91Lii2& zbL(Y2bjXKD81qwRG>?1;*@#~<-5umZWKV36b$WkO{QHnqKV|Jt-Vl8lPm_Pi4*V?@ z{Nr+iEZ>2Ah|MT@)$6*XK> z{epamz~lN-{zRiMp|eL17UqQuKVs%n9nAA0AL3%F9;ALEAL80X1MJtJ{*1kvhHx{F ze2BwkM$pil@*>L9y5T&Re2Ba5-Qi=vdf_8<7~BJW+5o|0)O*76ujE5qsqFs zpOIxc5%b`!C7%fAeKsQ<$AYrA73MiSm+}6Lr$+|EiNSq^579r|4yyDlB;SFbe{cN8 z(EsgO#6MfSFQdD|V94!fD*0`E|8Qf)Ac)%7jh`<_=i@wYA-ttg(Vi~T0q0w?<=b_z zud1u?8(O~81Dyes7h%({EBb$w7twB`5&E>07cpvDH}rMn{TbYEXxP^sre0GKeuQsL z54gFjy~KQbE6ZMBmfKeN5qrm5Kx}#|!AsWm0mlT&i}(^_34`L~c@f-)nDrHVK0+uj z;@G|Z5SR2z^kb|)gP)(&&)i>-@s5UpZEWy3_`ZOBp5I{0=j}0ZnlQ5LrSKzOEb0XI2G1lPf$UYMd%yhrHxF@N4SXMrx4YUWD`f z6;eM1_tT8u%JU-lOlRc<4d@(sOyolhnyCT9FCLNn4gP%B*I=K=m6L@$yMnK`8@H?@ z6jmN9=r&ePyKh#BHJ`)S}&CfRa3|>8)u`jf# zVB_l(AvNp3na1t5OQt}@A#1^(+fIjvO?#bc+^)1|281N&3I8Ey@N95=S0MOg^<0=; z`&VM_8%*?FfX81m;U~DOE{1*wCJ7EY5 zA>Q!YxkzH}AIvuLg%&F1f>&Nx37Ti#2>v*GHTEg~5ghi_ANx&P314Ar{5p7fLRIkE z*gzN>q$@H1&Yr9e0<)^_g7bO?b3aC6KF_!J+lW4yOk&(e*j8T%!Trf_u|1%DDCR#n z3wE6m2B{Bb2-e6AhxjRr1<(H&fqjVHf)xfu!L|PWf_WB%a?A$74W%*geNCv~ovK^F z(=$piU$3xcLagBCIdPC;l_Xg0O+4N&O_!MezRS%M;jmG*;0?=@FyBkwr@^<|9Z!Ze zm*ssLoDcp?fy?*heH#4lgIOQ2FH7F1!8vwaI((le@6+IXuqXo#=*#;wI1k(Ngr#qe z6F$VN(nqX&1#!TKN;Xc5{D^rS9x#|e9B+M(UCty{n^Dd*s)z?{EMp2f_dPqHH~Y5P_0 zc%jZ0r%@<3qQxv3H2~Wo>0@ zABaEw%w$(uk{@9{IfHo^5YIo7#@-Di#w-oyFrIkR^kg;`{f$OH;pf>zwrM(X2g3xM zD-vG|kHdZg;(*Uv*ot`KJ2N)3!MVg&uSB!@n+%&Jm_-_ZVuJ4<;&Jh5ak z`-c55js8RE;|0vUlKAJ3xvUlD88rG2cy7)@(JyFZH|rUgzd(Fq>NFO2nD|l1WQG?* zjrZ%ZJ75A^vNl!t5RUK0u^zs}Q@f01@7;)}jUR=11H^dF$C`Fa75NWdpN6uI*nh*X zy?N$Zruh(N)P}g`&|v(&qzE4Zj}2_wN#ZO!8>YUKxGH7cSA;g=eTVlRK zipYCNJJ_2|8A3d^jX9fTPW)(x8T1CoXR zu&RS0yHb-R{D*a&4A}MLB#{S!emv_0@_q?CCPM}2u*Dw|MIJ=-P;K-N$Y01k--(@G zN4#r@2AeX6c-&=Grf*05Vr)m&%YeABvK^bKKpbGwj*SRO5dOpQbM zX5EHaK8~029=QK-L-xzu;YyaDka1&_J85mhgji1;CdA(xkzl#@*BKOBTk%C2UF&d-{5lhJt$fe z?;ZUH*ZUDax$zuYKi(qz2%mA!pzX>n!ha~NdIA@Q5t}!A3tr!%i}}4dyr0NSg1^9$ zq;ti3; zZ0NT|V*8yWL+r02R?auTJ|g1ZC3X&>8c6$Y;23 z(TVx`6Q6a~VE2EK&tUJThJ7x?i?UVNgKy+F7~H_Wmp5@)LpzrAeva@Tc;3U?g~Zbr zv|;X5v&HtSS6ZQ;LVg1@S7H~k$Zv3VXuEpsUAJ zvAx9d4d&aD@9<3VB^Y)f{&4pxTwFC-_z?H@R>9z^NrJ2YdjtVJ$#-~u`2qBZCBMP< zXazj}N`6E9&N4h-C;qhk7WkcX7XE`-?sc4h5MOh;hU)>ycepd-GR|wscUZXWBK9j1 zhen)(++|L}hbY}xgn6Q4g%5FZ*BQ)LAl5WH1vAHy@1Q^HICR`KTKEvhlaIicCdA<> zhd|$s{0E!r{V+Rar0^kzJllseixI+qSQfAs>VK2pp#5MMu7@H%+P?s7^M(l@;&Emk z%&T`4oDq?W_xs3yc)K@2`Y>Mf$w9x}LHG}09k;{Vx*;MDqG3=rRLbPc{fBEF z*|>hlUic7x8QWp<89T{;;M;#(-ww(D221_}_aQF*-40EM$o&V-{O5JvB=;Y<53p@9 zzMiWf`460VzeZMDkn$;yeJfD&|+NZ;}4&*<~nU;$Az~nzP8<+x3wvz9VK0OKj3-TSd-AjN@2Ikmb zvJdm-=gL~BBtVcK`47)`#o=6vdEm^@`}V|gCZb$CixG`ZieA}ko*Vdo}o})PQF8c$tIZ6t()k( zcye?j>{@6n?N9mdu-Y&fx~G%>;4==_JbxkIA>v9Pyfh)68?z4m1o9s$?E^t2kNk(2 z{cG|50QnC?KdpxX9eq5W55{?0u`JV-U+e1?r+CJJ^{i7eyE8G+<)++!;P-2@of5F8 zUKhVVxxn*KI}J(2_d^GLpDc+h12W)NPn}}kXV33XZivhSM3-tKb(lmgzP`$Kh*eT;PHZ(-@72{&y_`?+=szz~RpdW(m>Le6TgiXG?sPbGpZtf% zUqd1NFZmA|V?uFWPRw?0f~U!p2cgw$6Xuo4eF*M9{6DJBI;^U0d)t73Ac`m^9nvKd zDzL{?M8(2FF|oS~rIao~Is}w55EWYt$`0&8u@wUo^|k98bMZOH`TcRO>)h|!lb(5$H2g9>gw_2+ZU8Cj1A3tZ?)LC=Vh;Jsc9=k^gX_F%(An ze-i#f`27$Ve~J8uKa)c+zlri7u3TAz>zybM;z|8#7_*b|ASONz#_Pqeh5wNFFc3Sa z8-)LGyHy~3zDs!!8~O#n{VwD~Eb6}s^E>K=|FAA)CAh1S5AphmAFlbMJcv^=Kb)Ua z9zRP9z<)k6*ylYA3{H5Ir^ZK2Qh2)3iJc+2>*ficlhg(578-oIp!r$9)!$# zIqcX;c@R*u4D+)o4}$v}hHlq{-!P@y3hXnvBDm)}y#M*8JP3Y%HFVcQ2SaY16#m0B^I71~;gs+nwygGr)>F?^Sw&}Huaz@4P)#Zza{*K=0SRpRB=oA z4_Eee2L0MwA`jy7yq0kGRh{r38mv^%=e#S;%MR(Cg6uQ}NcSWkLjHjQoJ=Dh!u#}J znc}kBQl3Be13n!2BkTM5mhd5_R{oN;OeG)Udfso@=DO>`Z;(s=BTF$NA7XCwU)lA! zyP*g9cCXA>3xlf!+OT;X|M=4V!0@4{`m09N6q7AL2ka zdFZZHF8l}XfojeqA7VnH0-Vw&A7Z3ZGq_buK1A;i&0yT;1AJa8jy4%efT53$a;1I~lUhv+l9BY0Gk4{@lz6I3{n5An)S3;UT0 zMP5X!SZx?~oP3C*S9G9KGf(mvxbIM`tA}}E)($cJ#aX8`+}XAA$q-_;0@ zSILLCaMc*(H<1q!JP0K9+Dxhx#*`n^=STH}WBrKij~pL;k`~ z=yTo#i~T-miJ9PpkgI91mb zQgx>Z?%P&|`HGVS?>LW3h)z!senalbUYNf&RJ=>#jkPS zS#N~CtZ~)jfOf!V+GSS_us_K__z{cR8pF>Clov65j0t?{OL-9rR%T%5*irHwxUZ18 z%mUOkn(`vJ|KPCI3i}tSKV#4{8@Te8`ZIR_vBSK8rv3~*@AlU124PQ{3qN9`g(IAP ztSB*m{I{XbaIaQguu7scOzHlsl4s{|2f*@lPYAy9sgl1}eE)JoouTjZR+^9VdFWId zfKA6=N_`L9XW)Gsk$aw1E_i{S9ll?0Lp#8fp|2$$g1>&uKgIsv7s8MD(?<*YHlGMT z;&v--yq?pP7r`IzolFP&PV1!G^W*I~+jQ{y=}n2>4DTW1`@fhr*MuLz*EL-EctP?7 z`18&4)Iq=Iyp-?2^A%odc1EB2jFjiVe_KAeb%KR+PD#u&@jl<}2%9z^ujJ3of1d|l zYY!iHS4({rJYV6_zz%TFqN0-L*YfkJCC@wJ{P~b{dp;w0{iFj7ODL0k4F329voz6{ zI*Pu961YAb3JHBRVPEfqmHhL8$19j^(H7V1?~=Cj`NBxn8h=lUrMw9A5#aDI|+6zajc@AE;PVF8qc;WBY;bxy=>-{Dgk5J@NQINpSDrK|Eha@Vz!( zfbXl|+M;2&UP(`InfXZgF#BowzsGB=8U==_@e=cSwY~coSaJ5^(SJTd&8=~`{vk@r zi{RVO%$^8E4fBQnFy;3oT(43i_))}EJilloVm&*UX6ZeXTc@eA(($+EO^Y5P?*%bDKCQGf0kJ|`kPI8 z5u8sih=5!NcX9j3J(1{_4Hn$@a}*?B87(n?{oXDyPN$YQR}e(C06jJGl@{rXPw~AqmzNJ!NJeFEB|}+%uIpb zL$W01PECv2RCs5yL2!Kgbj)Wd5L_`L1M~2<2!5ZK39B-<3%**D1(SSt3!bi=4O@*4 z2+rt}gZaLP1rL+I&H4o;3m;;h)h*WcII*SA4K`hw{0QzhBn=>bwf741SWAq3%hnU)a7jx=IY&~NqYmfOBxPOvyUoQLLcAN(i zZ&xj0ffdA)e2Z~?E^*oZEx4YQ{D^%mH)Fmy@$i{Ntm|Onv||NKbpi23y?j=TeIx&# ze{}FhHfTF>?fqPqcb51k%VAIIiH{epXYJ+4kGP|f#f-FwT^DCCRR`j?x6|>K zENe*AXM4`7|^5M~xbJb%?dmav96`A~oMbp^4^tS{RR zS;BW{T;R?;@$>V~e`qLUxNe?!Tz?rm^*mGf53yM;EaEn?&ztTzuO-&>a6&(VxMN;7 zcB`0pyh&G_S7!?U;Z2kc>oAvi{u@iSV>GdDnmOBUNWMeZUlUyaPON&;nBBabA^eBI z-3{3@%x~b|^({FO*rlY;o{r3r`p8o|ML^4oy4Y8dF8L7myF@{YT5V>uC0*n}B>w8m zJcp%Ac@X@XJoYy-gKKFbzrjnb1GC4xo{!gt!1W=8m^H4+#;+$H*rg5jFA%F8P-iX^ ziLn!oy^|4J9c#hfHl~U^h$pV9EW9XH_z=JEG-q!Hr;0v|Gt-pWub(Nxhme^mu`any z%sT)FDJZf{&MA^VfgNm+x=jK5TatzUu+)1eKI@OlgR5Rccq2Dztk!iU&a{u^?)MhhR}_1cz9eO9>e zA>uVUutU8o1F3jrKT;V%-cId%$#}WIeI^+Ij zj@Ul&j|0xviNAlfXRmdLGZeeB2kT}F|AF^gbTTC7{T4QRXNm0}TUxS@y@|_>%-QF| zCHD%iUi8BE6O|H)n{=?E?M$EvMxPGPq+x}v@*#2dW9(%Ef*eh2D`-Y~8?SIc} zvEehxZ+P~$6VrK3KEqtij%?vV;s}^&9)B$!D;6^BwyNiBD|&f_?<~44I=pL0d24ZJOA3 zQ9*vg%R6tN!HT%UrUvM@-beTkhJMdss}k|in@@4xO}@k9{g3c`l6;4L>+fTKDRGa8 zI?P-47CywFv$f!Jnf!*a)i=52I%c5M{Ik32RM%%Abg0%d)q-i+Ee%twNWKd zd5nCAw~bqI{W!7vs|VaJc!pj3*d1t50M8^o{|Qc)B*^a0wNFM?ezjUutg^FAXc_7#PyNdAMjZVI${ zNO=z{-buIcO=IGm`%J>?F* z7O_jO5X@I3|KZlo)i7wgq4aymkC}61A&~LLK>GXh{$cA6A>i7X{D*482srDjU;Qr+ zLgCI@%#YNQ{08avo~aNss44$}v%F>&JTKLi`Y`zQKHrcHu*ZS?2iJs6*cYr*jadl5 z=R+m|+wlD-|6zu6F*H_@|IqjI7AS3O%75TKgz8rOytW}9V*ip&*f&l7!(S-E`7QYm zwQbQ?$|L{b-RpelcZvLm&M)%d&5tJkfnRf6aB3sW(Ip?^{f-Uz?<4ut z>DU)U{)2u<8u(uz|Dop^^h&;w|6rbz0tQ`(m5(OFcQ5iEI$ch}`78Mk#@`Y_Z!7r^ z^Gy@M>niyVMPt@s-v{{*Z=w<)##UM6Kjfc4A7Tvo4{NpJA#y$W5A!Ckg;poXe{d~{ zgZXdBe;D^U7XFwvF?Wted&Xj)2l)`a^I|aHjQoeWKck_aJLN&7`b6W|68R77k4C{k z4a$Sy=MXn0Qy#>sfJpQuz6<~1)td;IHHGpZ226{~ z%7YkCxDv0Akq@yVbrrl`dr$ZdQ#Dq>vf4VqHtGEK^5&DUhkwl2m{}h@MTSt55fHf{(QFQoBA<0 zH*fUAK5_CP_?vM75;}l$aU70=*-jRHWh1x|#L55e;umepnmUqWT2859|(i~bDWM?cb^e2Dz{ zmN4=P`4GJxSb>*$lJFPGeQaPu2>B4B9@v7y4e}v&P3j8Yt=Ed%KYxk&2T|lhOjzjv z4v)!)IIradQ9Yu>?F%#Q;Yodz@FTJuO`+^vobV%V^)!Vk-f_Z@a0@pD^=`4EPlNjm zrg}|&1)n$GzHI`BW1>Z$#>*il=#!BT(MH}3`x2->qhq-_{Mbi6M7h5u1h%98j664M zoQIPSvH7bF=FJ5Q|6s;(JIvz<5PT}p9*TOc6g+LJ13Xct{tV{gg!@PGA++0ehmBba z#O-f<=m8g|&J|p9%LP8zQh&yYqi!(c7x@t1HUs8=OcuAFpWX|z+7f$$+VW{raFimrlPCXR-s-@Ehu5noU3x^~M*z%}f+ zT^si=OJvJidP1PRBR{^7e27bn`{41uJ^2t-eQ;iFEBS5Qk60Gc3;Q3e`0<0(kFmF( z49~C4t9bSjzh>@H7d8dNNgJ`wH8Z>%QUPPM&Tg=aBEqsR`Ib9*% zhVmjN9q0zPEh#U;y37$Yt()>9xDR0!?F<9{Q>fxuSe(ZnbjJ0|ztJZ+iLbY#OfDI) zAK|l<*TCnUOO`U2r`{-hh^~!p5Yhj&lxM&*wRY&ZV835|C4X;t=8n8(Czw38p_2bS zct+5>Nu4pXp~;8fe#+cCTCmZgUicAu3v^(F*(3h^e7!$*Bk4jL=cc>}zE4i7(8Iie zTH!}rG}gzyxNE|X7<~i%6XT20{dxZ6EgkH)`Ed@}1M?Qv%bZ&3qi=K?=k*I@{O@ye zoDOKXo{*T&TnavE!PDc%D*0!HXNur#A8slhtK=><=Pgq@!C%$NO73Ftf8*--&X}ih zMDj8C`Ild}PH=Ab5zK!$Eo-S@1>3q}Z^(k9mHAqBn9CN8ZgdAYnp1|a*Aab)wZQv8 z?pf@V-Y@?KQ_R{@hj){B z(DrK#{ym~)yq|+TH9|i;Nb0xXzQdA46NuWeQ2KjuCt>Y;GrR^qRrn4Avn;?_-$&#< z@cxXB*@J}tU@*-V0_XJ-zJvY2u6TapD13(;Z3kTcXCZut_Xf_GlcK}(Lfp9DU{{2` z(CjvXCp2?~ngS(>xg(&oPzLU+{;S~spWo-%N5=Eh1fN{#4sUOt72M~q2X>C^6TH>G zKV+}W6@1~{0QmGQQeys@8{{__kMAZ6KL6Vb``nxauUj!3*Yl_d-tl)NJQ#aa@*()V z+$wrBG&dP6xI}#{zrEx~@a=J_<8eKWy5v7_-lgITs^9Y^=JS5rq{*0H@KvyS`)TOQ znaKFRmv4W&eg=3HkC2#u=52Lm!}|WKCFb9^MH}Y=b~*^&ZLk312bKu7D_#V5zgG%Y zw^@q$1lI*~pE<_1DKCOQ-U#cJn4i;>7r~!DrPLqx>o?^^aK7F(2#QBE*H*@8mhn~5ykbP;PVC~y+FlhHG!M`=JAGL3&;3TgEIAR?o zcxl`^^#9fhRyvi4y?9B2J^v)Zqq}K>U7b_l%D(l2?G~n@f3Z=p(Uvrb8doIv^u2WK zPbn6x-8K^*zuO_$pkEgHKYIi(4_psn%MJ>DJn}63)iIdvxVKoKB-)HW^c_;C>qdVEAU&O}WwzJFa(uHr}H?)L} zWW)=Ki`jjpAAL8ok}~4!SJ$Rx$D8fGqa<6mi_M49r6yt{tAv9R3iWu1aOaoyeEi zX_vy(yAjvtC$S*||A)V>W56k@-l?fp#Q zL&R+GXR}`t%Wv{ymQOQ<4*HR$fEAZp8qmke4ZZh@^^s>`Nx` z9Tg9T4wu-jF{U?@k0v(132fr9OyNJgwZu%!zQn`Bdt%-Qv5jGOX7?jQ_z?Ob7`FX} zSnjDk_JE%pNYgjQDS1NOgR z)>9|8@@|^&A9gqE$Yvy@N&W-=WxmT9v4?^A{UFzK2GOTR(9bB;Qj zb%^+tVoMg3L%gs^l~n~3Cw5k0%!&L5woRG!f1V=zhv;ESj3uWC|KVbNGq$fc`45Zt zC@}A*$&wGj{Rbm&dDbT>S@dD7>MO^-n3Ml-()~C5e3>NthgFBa!P1k&-G_e0-#_vj znqP0kyd&av6W)Nc8}ZxQFY$bge1`Um>S5x&M3L`sLG2OD-bbvl>n`Rg6Mr6f2Y$LF ziaw0lO1Hr3=Q`m-*e$${zt8K0|1i$-GFU|u@10$Td3^EJcfaeg(*B_=zWp=odymC= zmp6KYJJ{{(f55XUvf9i(hMC#l#w;Ke=AIrVe28+^fjzz&g!7jq^bYQ`!Rw6Kk-Fv8 zU(AE>?^4NzXxOm0vkQd};XB)zF@!u4&z2QcC zJf0vPrP+>|G?34*p$3N z8}6k21dooyzJtDDpDy_gi&Z{DoBzpk(75mcyqA;TkdXNfPCX}|VZiLypfQHn9bV%4 z-O<8-IIr~#`v-_0{(cOJn@5T5VJ{wF9w+fW-+RzFjC=k^!K2rD(3y0r=`KH8g zimt=_Rpd8}EWH8;9+BVhz2YL~Z4+DHI1gJ($#?L2cLvPb5f9Ng1vgg>6+XnCd&j~2 z5cv&3Evi9PoA@SFz{#K?!iOmLKLR`N4;H*4^$_&xG+6i$N30KGUL*MqKmGTC%DI8U zf3T?8jqBNopVXIP-Zl9S7y9nN{2EW;Kd2X!K((SLety48*L$zl6hrr+{e=&)EOIMf zuOs}1K7Tjiyo7v*5vvQ)IVAobUV!rx58*$s_;A5^BFKL@GP4jgF1QN+p?Ys2q-m1>!1E^D z$CLk1Gq4Cw7xonX!{YTtFz8he(T6d;p$Pj8dPuK_uZK|Wu?h1gyNf)Cz0-;?|I}Id z5URt9a6KgX53kbk`R6)S_rtX*e0|~JGligk#8LPU9m@(}wH)~m3mxzE0mV^DKu`QR{==rl3BaCG-h;hLJkFQMe~_OWhkg+G53R4pfO-M>4_ZH> z;hLPOwEyEXm{D`1@bgUm17?q6zGD~Z_k-s#{MR1+glptGyh;xPwU)$#wui#lIY!d& z6+h;k&?5x%FUfz<(+REM8$@oO@& zuMNdG|Irq#^l#T0! ziHjGl$LmGpKWK+$!J!r8KkSLi#PzS_KSZw20E27fKV(^@c?Mm|JsR2*!} zBmd#}{aD-|k^k_zXDl3QApfCVMhx~&M)W7+X#LL+SKrTn|Ng5Ce`x;d(0a zANaK?TOG=S&?<@qwutf|_}ZQqa-W6&@aR)G3>*1L@XIe@=u1!@M6=*9%u6C4LjFrA zJkNM1e24Ghm?!a){D;+@LSaEq%7f^x6#^f#C=cREbJHnZ90<=k*yMlc`5gW?=T=F0Q)=c z3SOZQ08fm`htN&*$Lrga2QgjGA8M;94`M^@D!4Y{CZAu*xbxJwAOO^SZwTL^l~w?B z+d+8{xBmKL9&M8k!TpBThy6ikeUlHt`DBnkM zcBl8NVDTl&gV>h067yTm2;X5@E@Om!!5IT)x;qjWLID zUHWKNaLW<+Og@C&eMR^@i+qTHl4kgMBOl^Ke??GSMn1%=H;Q0(oP3DB8x_HL z7Woiv?UbOQjC_dM8H(sv92a>IrX!Ugx{!Q`O}`W&$)0?O0fUslIA6d67aqZK1<`jm($FfW1dc#@FT9)sDSEY@*#fdwt$OcntTX8uiRj( z2KQT%4^eHZ28SQ+sp7{T+=oy}YX$PhcB8))EaUUH{wpo{4 zX`2qP5p@vrQa0~emPZO;1cr-=$2_8ReFmHl<2%{x- z*f&T%M9{~saI{5&xPA8}-Qdp*@*$ExIskTzi|v@z4j0i^;IktBzf7I(c>YE{#EzXk z;K$7fvHgHnHyGC#C4C=whXL;!z>K6SK8wcRW9WR|0&}urgdfpc-4fCsL<>LS#B@va zH=FzlKC_%=ZieTB)SvP8wmB4UBOjuDyd~x#P+mlkhc)hl$%imhu!YuF$%i;yWd}-g zRtw)?K%_mm*#`=K=k5USn^Av8X)7lTyoSCFq@)A~MOGI2cauUGK*-}QNEU+g2I z{*3SW{V|`4`ZES*4Z!}a;UZ5$ZQ3CCS>q*q2z33yVJr1#ob?@wYpke0Bi3R#n9ZdA zj3VWc@U}noXYhRc0vjg$hxmxm@LQAmGj1CCfQfQXkq~I!W>&igf`dU$hWDMB!B# zu7@y{wsYUA?L2#Y{4Q0OzmAmpHiBOo!JN}g{TcimXG=~O?AOv4eniL(Q`mM)NAS2- z7LZa({TcVKS;E%j4#I~>)3kw}YcvJxnAm~bat+}_oUyeB??sdsQSt$2mHth65!`p+ zKFzg7O?eTV*F12<{E=q-`y=h&F1K^R-{e2sU*P!;*v1ZESM*Jqck_8_hAPAL86R<; zt&RBtw9OeUurYmJ$>+iR zIc%S31MF+^A^1K$$x9dWdLB!D1Al#ep6H?PcwhJt=bq`~`OY25&*1xK+av?fFuox@ zK3?;b9bIh*?OiSlKf-f?5v(#lFWsMCPxzf@3@bmKurR>&_VL1BNO)%ep>HCkehYq%$Mb$L6I}QYk3Jd0x$Vou z?YaN;PGy$#e&KouHw$I~!|TQi4hge@|Ar2edi_-22UmJQz z%zcLsA>E)f)J9_7SMlPsBW5%kN`GJeH*VqA;T3|_KlO$EySEB%v)B{;@??qmJbvu`f!Ig6 zLToSh86xr``1U6khGHL@uC$%c|LX^g0GAcd%K7tiZc*h8PFYbB^Uu4TqYwIlhb13^ zb4ux0$S~b3BM$ZPi}(@A3O2O~c~_5Zqj4 zCidaZ7JOmNZ2bJjNzDBNmy~&!&y*+Qz5svy8(S`f7pM12%-`Rs5sTr-ymNw0e=Wtl zwEKbwFIfRA{5}fSXjloC7B>^~`Hb-aU|i5j@X;$lkaMo1;KzN}fb%Ou!4CIAaJ`ka z;L{z#V4jt;VAWyau+XuW;GI#}uhDIw;DX9XxM%AvnCC|n>-q|gv5kS=d9x+vpRaq< zVqwJUrGo9($HB>QL4qSMtp)Y=;ez875`bUx;qMo}f1>j`_-mLTF|Lnw^O%ze4}T{M zF3C>9Jh%+O8W)n$cg_)P`YQ!)1m_EuS*M|2y;*Rx@#(NevqZ4g+6-KeR4SPFZB%9N z6a4$w1-5feqVOS(VLwIDF5+Nzj`{va920VeJ?u_?ME4V?*mHkkr{*WwnIputgO6jM zIPv1NYPP!v`4MC9SF(#Mh?C7KSoR)b71>cX=xj1x5BtFTc;Rl`VYW`5{D^IL%2;Mk z;zgDRS-@iA$e{hK)fQs7vX=$c5oeq1VG*s!kH`+%#ex~J?B-79x|q1D-41p=kN9+4 z3A4XM{P#sM8}*a;UcaqOW=4L*xpkXaD5MGh;B8|O)1OT|#k-JYCK1;h&Swo}#N7sojp?CZ!hM8iSB&ub#$?v5S(9(T`MHrVGsHZQf7|oD$Fqu`8NzpX zux<=H|C_kHW)!Q#$NT3)#I_vC-v1A;^&W(eeKa7p) z!M@KVwtwx!u1+A1OLbsHdgL#7{^`m}+Y%3+Z_CP+h#T)&G4*fhczwLde+VCL!KS01 z@Q+IyP1(e%bm2dk&FjK`mJ&aIX^6c9#H+XIvzK$zh3`;fqsxB!5GS|LX5PBwKe)Jd zX0vP3L?6bq+>Y26kS6>GmxlJNmnQiStJK=D)YGZLe=u}w%O?A!3jg8USPiCWP5#1= zZ>?C@w!|H?)mYNk6yZl$Fjb~^k2vgwGP_$vtUp_cRj*1B`47M36xlp0@*j32DKNiB z$)XRV-b)_)gPME?JpSd`z3hlJ`47j7euMhmB;h}F%>IeTGf5)aM+oAhh}d+ z;k=7@etIMJxi#f21T!Z{w|WBx2Z(>2egSof#EB#8;oMmA8QT1M2&xXmM%(YgDm7xB z=V1ACo$w?6sNaNk8S8}qV0Gszl>3nX@N2|nIMarFhfu>Bygr#Ae2BiEPs5ob#PtKN z!P9wbg%44*q8{_BWAOVon`QJl%Hp1Vfj=K2gb&f>up$dM6DoX&peb#!?TUwhi=k3$Q?Mp3SEh;WUjp>mUzjF*i0gT} zn8!0!@US!5EM)?5^qS7XKY+^X+j)SY~X_=qpy zzl;0^?ZKbWhb1=EYlN~~@*A#ve1o4~;^vncU~eS(4LW zeACO=`9pj)`2qwdliv`!_Z%GmL4L!c+ov(VllYb5Nt_>f3IE~0?#FNq0CC%PRiL|+ zdu5e0@aq-o3cqgM5dh zt#`wwgaN{b__Smvyn5p)cvjAKT>nD;gIddN*q`2C_zR~vOv=Oc^u#CE=V2dsA8EdCuVO8OjE(Rr-Cg8C%ow>5#@+5M z{D*mY8{w)E`46q%ZN&AWhQ!yHw+SB~CHoeH1;bdH*NhJ}saSZe;h6d_z3Pk~v)~gkkmFrTshS(N;xJW78c! zpG|oXD5XNXHBO_4Z$x zkNNE6KeS2M2wKC*f0(l^7YwqD5FLfaQ;hlRb_5+jups16A zK0f&lS__lV4g#)0#8@*UP} zih=T%!u?ZI{sX@zc=8giXE;W_!?%&)F!(p+J$Nn%gXa^-fB5z* z1PU|Bf52>H(Ee;t&DRrgKcQ`S2>N8?Kb%Soh5cjot9h0gKju9)Iu=Hw|1kMk5}r3- zk_G%)2Qvrg;qh9Y)OX?iG#&dj$bb0WdOf(C>Pp-BdZb+@o8ahMo$9?C76H$5Jyc%| zCD}UC@gny*zFge~1K*SXFfFqf^EZgwm2QPC9^^m#3EqN!S7#}If$xt@M{b4*J30w| z+IbV)yiEQ>k8g$WK!LdCZULk^k^eCGL_W^n+KYaSCl~V2ziILxcs@kI;f-KiN&dsS zT^k_wJ^2rZOLF0q0rAJc9BAl6{=<*em`Ays{D;QK^_U;hT6#YIHz>@_0;g-_KTO}1 ziJ4)p~zIy^{+D^tjSnD9Ie^G?ZsFmI8DpGWc^>g`i;en|>FeNoYvPy365xS1`47si5@2)~ z`47`4#^dib`45;Kj(!vQ4+ER81wSp~6Vu~ByFd95Z>nQ4f4#|v;QoWVX)H{cPk9ix zl43yhB>4}9&!VAu&<~OS@MKIhlwK$Q!ToX+lv+|A1ot5ttH^)wF^mMy4wMJM`!sY{ ze&q8QsUP{=_Hgus$baB{HKS*|7yd)_-Y~qrNqG=kJiW9;=ZL zv0!vCzCRCy@1S!j2l_^K)9oFTlfyjt%6}}$6B1f zJe2W1i++28Fz@-M;MDja^kbTQ2<|Jqli}-`*yKZS#w=y@JDd73IBz@<2n+sF9>mAM zKyVmFKE(0Cfw(@N@*uhy1VYCTlm{`p#vgVsJu7?%`#t{PcjC0*$~?TjdiRv@AG$5| z!+!PCRfT<>vFGPGm_D43zsF~U|FFkl2Ck1hC-NY^)=z=4bIxO4c_GfHda>B75jbzV zDEx;_B?BWu3PZwdcl-3ohX=~j!+e*oMk_hnOl>w}`=UEx36 zTBwaa*j?d2to+mte-G{n|6#+RHrVrhuPV0pWSp}d1FIn|z<&(+5Jujrpxu^yh#jMq z;o-MB;X7R1r3`;O$%m-XXpZ>|L0Yb@Cx@WGln&=NF{;FLxjdY?`AlMLxukZ%VKY`$c%RJO4~M zWhq0IC;1Q+F3s_HhkS@mZy^RNfqaO-7-eWYSuOG(+%GFb ztz(t&9fC8OLsAU+5F6h&$G(N5Qr-lAz0)#PVD~8UA!gk~|KZOe;X`~|tO}RI$%p7a zt_4KgJ|O&v5mQ>io8ja`l!mr~+pWll=rFexba+5M#2mTSkW{x@%8%jmy+37b;d24` z5I(9MFfY2aiqFgV`dj@CT9BScK7{O$Hmv_#BF&SzA5kQ)13K>HL&(f@(LdTM&F}f~ zwvLOyon{F|h;9kq_ZEuRBzaCm&+j ze?8EDCLh8*-39yVB83mZ`yhPYgron^QO1vdp8m4I_3AOw=S@Fy9(HM1!Tdh4!iR{G z+2Fh|TCkjpHTGvkOW$AaLwwz34Fg+7;rjVGvJr>$;7X1q&QHjPI5NN*woD-(g8Lxt zPm>R^eXku@TTy?;o(1-pxwA(22BWPUuz!_&i0s#nn7>axME(|Mn4G#o+%1VZLVl%|;lXH4QOypF-0|WbD4i5Ea;64+M zJ5CVW6V&>{1Ow{NnEK5V^Ki(AaDFxr^F>AoAL4MyU@)r~Dtw4}d0ya^OZ^$;8N<-Q zqy7xuhp}oZ^=I%|Sww&8z|3VrjY{tTQCy0+NhgZXUKpW)YS3?#R95k7=to6!*P z%UQgh)J3DgW340RPiRVc5%B{D!ZQyC%s+9H@**a0_rQF4APqGiiUz{RiHkaw|zr z>`y8m$e?r2pVEAt&v&<#%ixgSXP$2$`4abzxI*t6Z*jgKEcGq$4jc7u4VBz2)n&~i$#>wtNxD1q;nn2_ z!jEWEZ-BW8b<+HvpP#gBZiL4Xx1`(i$K!n^-D9sx+p+sv)+fmr`!+8~_vhCqR;hKt zSn81q=cb?n}()|ML~yVM~kCg4-|h z0Nb9W67$dJ#C!eVZDXe3SsnwR-=t89`QONE{~%cM+(&T1VJ~Pm!McLa%lY;O)8UvO zASW?@{;L@yA-3iAa=xAOA?49U^-e*8o&DxO^2bz(`F#K3qj`Ym z^nzmsErcWX6@nKXT?{80uL|}zUIyMHUP#P8lgE-)K*NWhg6IBR2?H%u#Jqmlv;YVn z+*a^|vq5;hPDk*|u4{m2F7baae>{tt5YSEQDmd|1DDE#^1oyQIhvw@&1dpE-0Yg)~ z1RqO^1ntlO5&p>`e-Kc8plOWz%REhIv;wvA^ab8Q@fHNWHLVm>7jKgg4O5(|{%2>)i z;&OJ7^?XO{GkHI&Yes&=k3)Nzp&M~8%{{F1GUD)syO`WI;_{lEEc`z4ddnT`vj+JQ z+;6byL!9xZm{~3-J}`7Elix(VYX4@o@fz_%txZf$j(muhVTDYF^UHrehr*3~cB4tHhmP9b5jM_{7n8c0rB&hzggrOw)|G z^k^(|>P`Gk7Q-ftBi^(*im77$|Gzv3YpY0{hZFnk4QF?Ph_AVXv8~C(jVD9cjLpPH z@>k>hk2vCJAUlOV$G^usk+NpJkHPm@fDB7>?h9G|M7y+ z3vgbRE_{fj@VQJ8`%$=y%KgJjC9~MAzv;qhaIdWwt3T;rN*ZTA40aeBXbELhSK(Ivvry@kHKS7=>ABPr9DWM)~E7544*!2 z+3@gG$%o)swrv(`u=CwhMIMAgnL3;NEJgAmcpt`~S1sActQ71|aK~I#y!NiD#@Gn* z86NLfVV%(j``3@b`zj3eiT`V_$b1xuXXY#5zb9Gv51snRvz(>LBLAW1;lJQyLH@&t z0l(qI^(4`MaV6&m?2Jm1UN4@LVwT)DXl+jZ!>4DT@%$^X`ow2*h*Dz(xXR0Hwptye((Q-bgxeurJeyu<{N|8Toi4Xj;4e#5M{r_qNej<|jt^PY&! zJ*u$}K3L^sWr{e45eLgg20 zwkMAGm8uo`c*Kf^7HrsY@)z2>m@$|@ykN8m+xs8+3@!bPnOr>a$1L<6jEM1i5xaeG zs_-9Pz0hS-2NI9c)L~2SO%dChyKAxN1;i~PJ7GW3WZ_2)IMRX1&m|uGyB$+~Og_Vs z9-7$qMC|O>27M=A;Xm{)Yt2rC62JM;ikY_{zTdkgD^H#%ZohDC3s&2ac+3kG79K@@ zgJ1XNET{#sL!1&bO(4G^@nJJ|L!G!=4+S8PMq`nH|E=t@8DYU12kI@ z&sqKzl%mE6A0pEIKQNUio-+RfxOtJ^u)hC0a6LnQ!z7E>@Ct~hYP`g2?BqA}`CAX8 zt%x;0K8CjWFm`_z(&o&O?j;h6*;Ce-`u8$#+P|J%xEL7aU44yiCeU(#@9DQ z_z;&yR$xBsV8LH{9mVT4g-+!R+As+bc!9Lyr z!iUJR+XWrIkniA?y90ju5GS`TfoF&M3m;-p|6=I#x1aDIR-fJsvA)DS?_pg^U*SX8 zTrPr$>*O~$O)CJauEbV9H-cq+AK^pH?X(eY+;EqEZ}>Hldu=vCYA5m^7N_N6K4foc ze}~^yS*zF_us_&K_z)NCb8sHnOXNYMXK#RCBbekH@M{hSKW%_{c_8@){F(S&t{Q8*-AC8d!5b_}x*VmE%u=;5Z<{gv&P|+zH*Bg`X z@Mbv9kDC*l7-!-fiTsBw#|$VbBmZIK1ngJrWG&@8@askVd~oXo@*mbjr$F^y@*RvG zCE1d9fza{+?eSuX`Q^Doe?KsGJ)KlXsK<;2Rl%`7_4S?*~7ot<((1erfU_ zCTQjG-y^ZW=S6*XZiC;O$bZNf zUjkD#bolvz8^6A&HD??8n&dz5evI%rTKs&BuUV1x8NC&5ttJ2Ai1ij&bBz3lYSqnf z{YyvTLyWtPK94r}5Al_SxL%w5hhN(YKtGcF2m6EhpioBs!=;iu%rkHDANch|?Ts7p z{U#rR?+?E8CI7)IHy8bkHXcA`^V4k^k`PK?dfjkpEyQmjRZi)uewf&vz(ol@15Lk^i9DBMq+?5f7i4ihc|E z5B&395l{ZZ=gMTfzC!-P*dIyQmqPx-(~(JVPM`81jx9?B-BIK}#9mtm*c-r)|7A9N zH^_>0*Fn1)@*lhxC14&H`495P;=$X6`Y?E(hSnVNA4dAGg|bZYAA)Yi;qM3e4~A}W zu(CbnK`0fY53z*uAm0DMya?-`!he{uBnEva%7f5oh(`aH{D+t2QLr!Yi^zL0ag9Ph zko*U}J}9j#^0C$U!coJc!udA((ed{zK{QHQ0Ymc@WVKYp~Oq@*sF0 zP6m((?22tMiO1P4|Gf<^=7K|I}zzJ>ppD!itQ zenJNJCkDd!OQ!^f=`6?mt}|8Axo(3p>-=I7w7$h}AA-Hx9ohQNQ=xBT4WG|re+ID1 zym5Fv_hJ?1L!-|)h`l{H2=1)BD*Oj8HGq|OoAMuA9}Zpl4^?~<< z|A1=&L3!{!;Xm-c@0i;A!hdjZ(8TNQ4}|~l_+3kwIqyF9ZTyt&-LMOiX10VYEy#zs zY>o5yuXp*pP^KUGT4o)rg6n6=hlszc0;zK3L%i;(3Y$if53%a73ha4&6ZvI0K7?$F zDrBgV4-sRlf<5=-L-5Q=%VZd%7y-?~o7Sr=<$U?a7BY zSg8VYwvi9KavL#(-@3p3=mOY>vyL%4m_ zgJ$Em34YvHAJ@l{4-q)e08TaABK(MZwT9TALq5dE=Em^g8Tk;;Sr_o{MLxu;029n# zCm-TvIj%SVvO&xh)s|5CrOAij^SUi&)-ZNB`4Fww*x-8g zbjhdS#}pB*?C|(KP4s85_^x0-iF}BupX}jC1^EysCpo}tokZa)oV?@+Izi+^tQq2r zeRt$TcH_xxVZm*KUcW-UpTI( zUm)ep-*NAXzCeuh`Q5#AHau%#2k9TkhbYhJihZV0!jH&Ivcr7wNa06t|Kap7>d%<< z(FXf_$cGr7ZwD`QsXqg|7@#16e25}t2f*JH;TOy;cf|QxkYJ4fXSfjHFPP7(*9`F! z-2Hb?s54k5n9rkk{~;e@L!=B!Zv2lAF^XYd+Z=KGp60!wK76KNzu)d~VIuWse5myR z#h(AupRu^~YS?!QDf5MDnSEqnvamdF0Yk%DEdy)Z{-nBdUML&0br z^=FJO9}W+eP=7{t&`7v5uD|HZ7}tLk-00&WSi7wc%(QRn&%k43SEKo30E|G|&e`2` zEGTt!6+XoMmOk)YsfT#}Rabq$?~$YAXW%igYp~H!=&0^k#eMm6ew8x6`5w4GvX}P% z+=t-n(PMpWt9aH3_obgr>5YDYmGB`d%X^_u)YPBBui0~-06SYGAA;|%`1d7oWS6RT zrTwu-pj>v@%M?a+H4;9=^||Jlm(!FN!H?Gu+E_wgOUjGj{RO6-J4<;G+=p=LVhg38 zsXv2%p4-+n^=I(=FS6_gVNa+(GR!P!Q_IX z*k7EPErX5M4sw9mH4Rc< z1b@EWJ#=tALxXgC{QJmeBxr%!f#;R{zI-2g>YOedpYvFnzjO8q(1&D?hthnU|0YgT zGvvR&(tMx$5nt;KA@b5)Y5vdOk40^b;gWN$H1Ef}W7+v`UErtxb?Nr}@r<@~f!^hp zB<6mCSEdP+C!dq<&-*l*jW>b++MksC2<&%qyQbR(yaKAEJ_x=)blYqUc^8jJJ_n!2 zzddS%c~E82cD_I4e#ZRq`=$GHcHfJ64X{Vr&aZz|4$(*dW(Uuw;PZ6X1KkYaeC(D= zJf3&spFf`Wv#(_V{(CiXMjr0keuN(8qvc3>7X0!4`=$$fkECP1!wSqRaCEySrw8NL zC*kXNl=@)aw$cOr4RMt`tBAk8o`?0}cXWjG@58(dHvHX#Nbj;g@GyhGOnBV67BXc}I93%LUs}=S~4HoTHUiR0DfA=4B5n%6sj|Fo- zsk`?D!B0~9ps#d5V*c+b{oEJY8RZN1ALEJrC2@lL9>r{ejdKORGZ_NWCuI`zdA?TE zQ0&ju6#V?{E+50me;m+{AQzL7ft`-7O^ z^52snxWzQV7yJWxuD9Sn2d2UOtA&E&JI(~Vc{>E}UN#&1Dvk?wyFM3wOt~faqRj%# zM|>w3-8(q0(F_{*C*jj#z%gvW%Lgxm8{;$tPus8pzAe-jyr*dh=C7IxmfMVdpo!Lk z&2C`7Xe`cb* zcb?!cS5v_9X+xg|e|(=`snBwJL!SoceC>32ySSlGgL6Mw20U}vES|r-7N%?Kx!@3)u5A0hrzyqnEyPCi7=&z;P| zg*bd<6-x{uR;k*-w(KY7e#3^Z#IqJ`Wg~i#A91~CGkfBiB7B45W}BGK3S#BJjZA9? z@xr?G?A=r1l{V{Gd`I#lt{1IguLludX_S$!Mw zBdm@VvO#vldud~XZ>;hy^-~ok72s{#Fq|@X8I?jw>q&V4#eZrb(y>x`3<#Qwb{1j#8VDx zvBJ;k!iUJp)L^HNqznJS(6SwSxr4agSd9%{mM+Z~t<8_bdvR6l6CnR#yM_vLtxXgD z!*fq1rno3g_z&_$3QVU9`49ijx5n>ls>p+Y7OmLPj8x$}jNadZH4i3kAJm-XP9oOm z)s$HeB%U7g5AQe0f3Vs48}koSYPmQ3@nRxoKm7z2lp^vUIxP4Gm(3ddh8yQFYqjSW z?B7fl{=+MsPhhz?S>!)FFMf|c1o;m}-QMDQkR;(hJh}1$$I*zlmpz5iVdOV}|3lb1 zj@Vb{F7%TTzdd&oy0syn;d0(p^lcNR`8eM1_I<`h%(o-{>3R-*cj5w#v(Utw{D&TL zr*PdS`41CHkAvT(1d;c!DdjM(XC=NAQw`4H#Pw|szzrAjAC4&P!TCqxiX}&I{akEq z`CMIgZFMO7S$_rd?xSm`Oqs%duH450<~_&pjfmR!>!MjRvuo__t0pWVaHa4ezNIO% zaQj90{t{UH%xet${@6jSxx$CQ@fM~ue5&vvE_60yKI6$}z*b%KvB+1r;BU-s7ZTS5 zcVX!c#9vAcS^X9A7v`NZU~T6TCw%I}ZnPrKGSFjdO2}t;KST%fe~5cWc4WWKj2HgH ziG5mZ>o{W1PZ~`2ah%wGxF`BU5yU-btFvl#;*3LW*@w`v!k2j3LY37h6Mq_|%t|B4 zXSh_Z$bP60dw*=hM&|ho|3Ry7Yvy1`jO(FT=L$cu-Q-ORw$Fk%$X$+&+&x-s=Y231 zUC3`JRc*?`*OSj+`SdTYza&=O`U|Qm$Y)rw@;hdp5HA}31%_<&5&pxUULW!IM0{B7 z9b76ODYhT~@e2Cs6FWG*fEKgKZ)nrwDdy>s&k$(*2%3*4Zr=4ijJ-yFLwB<~nD0vb z$o3}A_mbamz27w)4ud0_m&l6Gl6@- zXU9O{L#RyH4Nl+4clds|3jD?qhjrZn!;gCiA0njJHk=Ri5I)3$vdy5iq`%-Vr4?Xx zlzfLtdK+NBG4X`bwJ<-Xci4!13#o00{a)pR^;8$(L)5n^fDW6TMIMBuem*?@)<@()^!b{H^F!o6 zB>Cp!JO>m0!|i?f(B?Ks$3H$EbE;DTlnJMcB`6FY+K9e2d{rL2uzh zL^m(RJWIRUbS*h4PeN@*DULteN#|p}p6|`2Qiw~k6|4m~AAGwZ?}2Z3U0;Ut*W^D0 zFD=FXYip4Qk#VC0=Wnfq4>7=~6xaKa|Bzc$0ykEW@1S?I2=fZbcX;r&02100^Uud( zMXy>u_J(65vM;KII3Cthy8hzpRl-^qz%WMs!(g{OydNdsp-of{-VdAO`M65@K7{#Y z!(wytAHo-8VLuc356eq3Vf;(-9dNAzuJ0gTa4ikzE6IOoVV#QO$>cwrw@AVKaq=IM z^pbIWg#3qFafz5|OuobA-3g#as0c|80IBL4xiB=P%BzJuO6oS$t+Ja%FX z=Esx&Fm8D?1RNpXK}8`7{G0!W3nHL--_F8^SavuZ=RXZZ-ow{1VKDhI`3`&@Z)#`a zVOe1?Ag7abe;YsZnXJSs63!jgt7SH0F{k;m%=lY8{OP5K-}h|EhZr?99s2-uYjsDL zOMZivUk>^Py7>1>rN>*%Du#VGb)@_V{(AcE>v4URj+B4Juh~zut-$qCpl?I`c6&LmKk$5%lR4x+(|JCn5Ufxb9a&d z;IJ$KBG~_{Wzu|&UD17QfKE!?V zP#kZgJcv6jLm}%t;3Xj|Fc0QL4L^TASe5}9o=aig{1ez;VGp{aAH&po z9FO%lh2M`*s5+^E*UrSZh3PryPuQ|bqw$z`QHOcu>u_DR3$88ll=?mz^B)fX zWZ2JgP0D}Z{=@kxHXy(MhVUPFp8t&gw`+c`+z3-s%~@#wPMBwONB9qTe*ijN?g{@P zy-9n_gTE*Ihly3n=!4xA{)5U}WoWNUKE#!0ZQ$65JA6J+@*g_bD*$E!3T~g!2DB%U z4-xdT4V>9~UF1cmp} zuwbA9Y#%~CgwX{BXuXbn2)@5|7 z&x?Er#bydn^5>}VA+~N;fOjLvhqz^>06)GR5`7s@{oCOENUg|&=&OVNf*kn}D<3I9 z*%2+lSgG3^jwmGvf59)q9`g&yhghuYi06OuA<`3^FuyQHJRWrq%;zE>;=mRLZGV#w zaoyAz%*Tg|$IsX;gOZLB((jRvN%8%EY!Op~d0f(Zq=-S5*r!E4#QrN*@LDZO_z_v> zEunl>r0^p~#rK4X3X~Ty#liyfZpeq&e%lf{-XR~NAkG?s+^IifQXgCF^9dGyLBc0H zcx1awaM~7o>~~o#`08v&sC!I4gmzCEOgT7LY&UobaH)8fV3!?zVB)grf}01spg$cb zxT&WrbhM`ajN(r2kgFCTwlDwI4+1}u58-p(1MXZLEw<0wG!V+Fd<3ub_Jq9~hYSB; zk)0PTOrrjbJMV^I9|!ekV3q{-#ZiBTW8!ek>+di8htD%dLciYBpV3s^7j~I9^k?w- zvg|6?!qr{`*4D1U4te2C6TBQS5y8qXgKCExVO zqyeDX$Fj!C%1Y|H$erYh`B6QE4}o*RINsL12D6AHf0^fNn7=lu;ax0z4q$>gV4k3{ zlqbQj_hWM`@qE#xX5$BM$*0)rVhUz9hIqcy0zSTAc9+jTQ(i<`mMQ$6LwOPSx1jAX z%8N+M?g3R!lov6zz8B8tQ(grBdmq|TUc}~}me5vDsfLfo^Gur$J?x-VwYA8D7?k7) zs`B#UcyZRv3G?QgqYu_n>cf!x=ZM$i|M>hn@7Hv?`p+KzUj8ophv=sckeBfh^Acik z`xmEi?iTRw=?gwT&hyn}$%*>dH~hSsyU)B&;#Ui8%%^xR@*;j-(Ew) zFFl?=|D|77^xMuzugCp}x~*N|RI}sK^Z9$eY}N%XutU<{=gx-5z%JNte6X5lGvIus zY*-6JnA3AFzTcKo9tJ<27nxK^&*%O^l3phqPuVJM=f2$LpE@`nzY$+g8?R5N$x>Hp z!`VJ-B;SGiBD^1|(x^o89r)*EnXH3(k9pGP!ROC2&2#|s)FtMxKcl}6_G>oy5PW|= zzSP0|fjE4>hEhMnZ|_bpbZ}%fcPqFLu`tO1M#QYZzvn8k+F?Une=`@i^E?D=r^hPj z=crGTn7>Bm`QMv!iNWZ8R|MCXxq!x@ z8o|nuuGp8jQE>GQcgzRM5UgzJ0hg6S1doXu2&)$k7rg1ACp`OQBG|w85OC@HPx2r5 z-yfLn&GQ}v=e-)v^Cbko=<5Uc+3#)K-@M#WnEz_XzdO?Y4|wN?>nGO;{^>dv^H;wM z-k3KYJim95H9mg-n+cfz>?L?+-^tLTc8Oq}+(5|wmm=8w^)%R;u}1I;*O~Cmcb~-k z|MzXiY{)xzPVo3AbHT0WBf;}}FMtJ6-vqlxFNCz`E$}_@d<;XUT~`-lpOdQK6DG?r zFQucz{PW3MyaEpR8ws9uY$f(J_7L1OCKU6OdJE3q6b4?tE`p!bhhtvhAi=%9L}32z zNWo@WQLtZSyx^<$(RlowCisGX4CYNP5WHd~_w|DXUoVQq{K$qr4ZgqDHF4-;tPy$$8H@ZZh2`Bd)bh*~a=0Ax_ub${r;Wmqu>J`G4YnuPYd|ARl7W$c?NW zBX*5n&&~}?7Cyw|Z)>rqo!EHF8aDk9@%}5TvHyU$(7lYgnUWu2g#8px{fU2cFUAgc z;ss@eETNh>8S@*~z9Hs*L%ufo61x?0*~tFH8Zp_dNf5Ect4wx0E>-vt5z{i5Q5A8Q z7ip~jZDNh-sm#AQ`4InJC$j-2#CG$NnA%`swQmX7cTW5wIG$N#5KoeiV?{fO!&6qV zpI3Fz5F5RpxM%!4_VPUOxx=&B%16XI|IA=-z7RijoW{nr zB>!RSiYe@{Ch_6giBi8wqfZgkGJvJq(DvxwW0`_UhRB2XxZICrb^IK;H~JEl&hG4Q z{|w0EN`lgeIseYe^9xgiup9e_7{|y=I%7%Km77nVh+A(BLBf^odPRTZ15lOo*w6l z+Ta?RRN+7Do!bh352+&mf#>bt)F=NT@0A>@zL6sQ2g^;^S8;^+(CjA6e-m-fX}=*V zgIG8D2gDCgsSV5Qi|Z0|;O5h>*w;w@!=jm=(H}?_{==cuA0QF)eMTyqW3Sv|P|tq{ zu}0)SL}l0^Q)g)`4_eH!@=ui_s=GiBm{nGbNictf57 z&v*E4dk4DhA>QBS1{h@%`<=T2GbWSIkiY2y&W8|pNU4Lnort?EI|X=-6n?}7{}b?U zM}o+IIN*O2UM@)x`42za9LD>1@*9d2tMPLp4pH9+PoKvNKjP~8-SB8*yvTpB-d73D z!ij4xZ-q&|#P3GzN57bSh^{BFevQNW_^TxGj z17D66{zE~TI`dvhob;kC8{3w6k)&ssC$s#aMAk*JUmN2!-ig8vA=-0TKyCDmy*wL_~$#AJ(L)`A7O3%2;o1> zzx@K|i-|)oKgIsf;bObarAL@wLVVry0j$d+zaiQ7F5Yhw+qmC?l34N^rutup)lG>_ zmR^CdCFD1B%fAQ{-;&=j`S5x0m`L2~{aLWS<|X_G2gB1~IDnY{9-R*i7TYhhIEM3a zgM}Z_X6j)WGS^f15CeABz>s@`1kW0I5Rz@lcUZc0ANCiL?+~Q82Rv1Yf6v(oca{$j zK7`uM9hk@GA^7d9ZQ$LV{D=C0Ew~=JzwjX(mTiJ2kNOG!;n}YZ_cT!jw-Z%W|m!@k0Q_!3x*^HqKMe5Evheqw4Ne2yjG z;d94)P<-hu{D;$Cd3X$UmX3FPOyu(TJg8qu{=<;pIne7m6L}CFr{!WE4U>EWzCObG zS}r_Y3X*TY#{~F%{H)V5kq5E6Di8FuWzzYL`w{v^`Pf(QB>g?kaq0Qc?0}<`zkv4> zvc7T!*stv<@*oB-D!~2%2ayLc>^b)}?6DuH73RLG$SV8_vG1U_bU(nkvaS%Q!S((&(*AHxcPNFH zm#n4z;p+ieLJ2(XZjHZ}hCGOm+e)A?iu{LY?Gm_j*Rqz+ZS%iBA+iMhAMziLZZ87Y zX!0ELS=cj^1e*TcJKWMMxk`48t#WWvY;+tK;KbM%7ftBcTA0g zUzq=(c_T^czj$;w74~e^tt~iOg4Z{(yYhai^`42k=mgDhCL*zs7vc>l}+<%u(_mcDNVf_mTXEq&@|hx1lQieeQGlKtA?6 zlmEbdh$gAzKjMLjFfNDuhwWCG zu;(oK57(w;V7`6>bN}ICS~|`TQ67ZN#WZl5LH@(o9%-0AK>mZNcPe<^BL5+`CJQNfRVxEKRoW9 z06OC+58`A_JUlu~{)6|&IM@~WTjW1X2#kZ^=j1=My%!4}11S$;>*!dRwVCoDCflyU zP65h;xW6|B{X@!wn7Jbwg8e@U|6!q1Gz>lXLGXbyQE*Y0e29-@qu_5a4UvJ(LF#^CKM3kK{kx$PLH!dz1&E1>rDwFXcgGJqv?d8stNS7KdR!5#>Rc zdWXUCcH~3I?+=3y10M+gA!%V4m~Nmvh`BCdkm7My_zhR&!r{AJP7VT@V<|eM&v^r)D6SDWy*t?{xuZV+@w5+mX|_-+5E?cs0@YZ zWXgjG_!9#Cwa*K`f%_6k3+n`H7p;UPZf9|R=!?uh8T&R?gg|NF8R0u zyHj)I%X+{(Y|NVMjQv!1Yj_r-`3_yi=c85J$cOLCs%}~Yt zB_F~yUJ?6e?(+FH$$xl$LlI84Bp;%?nG#@TpxAyQR1xHK$cN~9PZ9fk$cH%UqJ-;B zuL?in{ZU2C6DJ?y@@_?_eb(SZ@cf@qgA{SjmV5~Q`0~T#Lp1BJg#H})5bgXG!SQ#U z@EumaP=uQ!$cLD_LJ8`&k`KXOKW-8E5d87=_2fgGN>YL&rsPB1Y_0@Wx5ASp59b$cNabuY~ zF|F%i>hPlf4n99B<4%Of#CD)?ahv2vaK~zJhz2OdZk6&P_&NVz6K&{bOg=>Q0ezg0 zBOhY-zYW3`yCD0WH}{z1e~ zTL=v&AHr=?Z@#`nY+qY%4-*EE4{>-9Uw=+MM9C2+*r-hX8M-on_Ce%B)YmgexJo|6 z>EX_}z9mw;{<L*y?;vhJX zm4BTcyPA^8ypQte@c)~{;bjmR_R2F=6Y`=U?Pd|$aE zP^Mstd3P_X`MoXA1L*kE82c?BSMz&$e*fxsNe8cQo=biOe~w8DUGzns{LeRtklh&F z34Nw}lE1*O_j$g758RUc1nv{uXk~=wv+MZ!@lKq1KTzPCtCEkv?`KBU8bRNY*CgM9 z@3=nD7#T#%m6^CpVMn&9`f9(|5KPCPGg_uH;u7 zjllQVe(n=UK0}vkmie*yw$~i)e7Es;m93?%i}v@9@ILC z`S;5%NekDft*++34gUEiPUrwFjulJK=i9fA?f@?h^0+U7c?3@!V|QwyACvjN?GcXC zZ*+vg6H=t-^S>D~T?amVjuV{buLtG7xew8tXB0TeZPw=*ViNP;MD7>7KFVDn_-vmp zFn`um!2z+xuxjEM!I_s$(C_pXJhgLouy^YxxL{Tfc;@XSxPDJBu$gEfn13G&L%RyL z^Fn{MNLw(^i+FWRRdDeWd(2aAA$Y!(6X*^3dXT>#={LO+py23z!8cF!fy@2R2;QvO z7uTmWj&dZ;>F{i{qn#*gBgPNc?`mS4QIh`GX}#yIZeSu zFNZ+kwd)7?|1E#Li#EgHaY>|L`LGdq|9*IX<93I$KG^4$Abl73<7aD*hG^L=JT^5v zzifg(oPB#rux-Uy_!^?jv!|rjpZ;|`pd%+3yP$#JcQ$U%h?$K2JW+y8>I31_$y~u9 z>eKQ1W{cp;u`@xX>agH8W!SIL?wa6#&*nncxvvC|G+O|E+y4nxnz<13bz4K@-=DN~ zF~qiPCs^nGQuHzP1Yhd40+Ks)6C6KpCFT!W3g&)yjk1$qe*Y8y$4zivMmQ{c>?OG6 z_6U4`qXaLki-bSL69qqf5d~>MvjqQ>i-8JQEVxc@6>w+0asOZ0#{$2{Y~;Pe;?Vbx z6Kpp#9u~As7OWYb09_xa3(m|-M1Lqp@WO3Lpb}CjxW%z#aO+nlIO9eNdUM!O`oI6* z1%(=6WYw{zO_F2O^4=4UwwVFLkARhanle-g#Fb_7GOz?>sOfHIN}y}(pb-U;vXKV%%dzt_z*@HlG)QU#KohMnDuAk_Ky-+ zH2M~JY?kg-B4)?4B4^@0zhc?GDa0kQt1v&E__tOJ3*SsUWMdRFKTllj6v^(qBTlUk zXMrl@LtLI5#?F`%&;JpE>(PlLO@rCuKw_J*%UDe~aa6`)cE5nQHZzD7r>6-Y;_HQZ zthj=BLEAYv|3z#!d?w4iPW&-v8e8#(`1AcKY;sfbA2Q7*F{gIK!Ak>}R##%V(_=Bu zg7~7YKjsS%XD=AVqDK%b>>SCud87*;!lKo1=GHG=_z;GHLs{El#QvuSvj<~{Z)0D@ zF7!kAwHwcq&`tJWPXf|~-*D@PJG(ZG_z z{Fq|KR-#|f=sRFf0{f1iXCs@%bY(j&iO;$jv1v`ncQ|~0C;c=3{st2KH-Wo=K|YL-4hUb&m3wUy~~GAhvCi zVWdaDJ%4cZi=E zh}o{s(Dx?);Z5!n?2Ahj{=;qeN9b23iu{Km9qz$p^cQ;GF~a*3chFb74QnjOZ`k_k z8m_k{Ha~v}JU=z~2i%X~{S}W6lh06_c^2-M5l>WeS_4 z_J}>WAkT)|EWp=m$cIq(Xvc25&k#O@(tTYP?=@NY5Sn?0nEyjQ!_+edIOa&a?QbV` zzm)uiXEu5ayLW|8FnhKRdvuTdg}922%sH62=%p6x+JV@+yCyqON&dp8dF`2*C-IX# z>dfE?`3uLItFe#Ei3^6PVqXyPgi>YJc`f-3ojxlvUwdN10SXMx_=){JUe=oZ^CRB& zw^Ot9;%ZPQ($+6-mql6!^P1c-+`H|mHUEY-WKPA86h*A^G#~_~bU0AkC(KtJDIPz0<9m4jgM5Zd#cyy-o7f`vCHC)<&!Ch0 z49X44|I<*h{l>Vf;O;`c zgGS6HT#rhA1G@V-UPPS#v<^O1kl*l7?+gs4t*W#MQLBfY{{do{9T!`BT?S~fY2MQm;rR!dJ)`WbAR>`~I*&Om6l>Su0>pSE- z6wliZody!meYFKf?(Q#q2zjN=m?zjz_z%NUH-hUlV$B2V!Dz3$@F98)S_`!X#Ktqq zq4PZQ9sF9A0cM&?=R1CX&-3Ts%81R>iy$DjukayE6AE#Cx{L53UTYR$zMPBjA-Wmo zL2K-{xML&_m{lm7@I43DZT69T02~vN%{0gX4Xr*R55liY4(y&l{sW(1zq1pB|KQO! z7n-*w{~={nE_w;%KV1Eni}MRk!hg_RoQLyy|-JSq36&->|3-G{==lRg?K+t{=vT>H~0^H{^#n*0ywyV{D)T$*TS^pI{5n@jN_E|WFAv1 zV9-n*{`xZBKb&}BBd&MQ7CuDe^$j@QMgD_*)q4E?lK&8#wGPLRiF;SCh0TM=hgiR1 z4d!!d3O{1j!*U$oBmV)%++gbS_QHqY{TOr9$cGqtpcFq(@*jBq$)9lYAL8#9!;$^u zKg@kq1lFG${0Hts$bTsWa|7}rPPQzBfuqQW;Q1zYu?_tfe0=n}60XJAuPo(H@NprT zM;_*3lmD=FbS?xMQyzqNSPrh=C;wq#MK)Z?B>!Q|?JQV*wvF`u_?R#6_naw5K16_J zCZs!%|ImI;1~|^8Jcunt=@7o2{D*5l(_sDs@*jNqreXdl@%CA%5HXbehmn_4Fz=T9 zhq7)d5Ok6JhwkCY5Y&=**R3SDHi-NOU0D)DhLQgeS(J#^+vGnil~3e-xcqn~<9QI9 z79?Q)Jmo<|or{O_-Tw&x0mqraB7^cEG7iMy@s|7tK33!%KzR_?G-JU>j`AS9^H+h! zbjpJ;&x`>p?a#t@h}Mt6@jl9f2;LHnc`M{UR60jP_x_Xz!5pIS@00(~>~bXR{!bo6 z&YcKIyzo-wKfDNzfbCY~Lo79nfUr!;gD|>^9TWECL!?B6^FC|w{MXju=;M(8aH23A z(rq3}{sW)mXfrh&eeL_gZ?NbR4$~a&3Fdxzg)aN0XH%>mp zf@||}zUOQW?+L-4bLP5!K8#y_T5y5Y1PJL>kMm~@{==tHW5IcHeGO*+fU!k?%uXEy zDsQjW7~aC`uwNdyHm5JHf4eUE4|u=Fc)t9T{5v(%4^&C{57TUn;N0AMJWm0yUv!wN zp%MIkbVsn3fev)lyD$8Q&NH=O-st-x55l608jgqG6L}EDqtxI=7xEzo%YNll+KQ%~fEOCixI9e#-FV3iV?+A5g~kMLtAuXBF(zAs=ExxiWYek`IxX ztqjLDkq@z>hce~~kq_}~gEBlzARppKcNOUJ;+)8f*w|MYRL_zRf$J$?a5wTH8GBshLGZi`%>(2^>?l;heme3Y`1^ZZOFqPl z{>tdXk`M8ujS8H&Mm_|(ZRlT<57FL1MaqZ3`Ar$myvpgR0-tA+50NCV3MOaBhdA_5 z6)H{0hxof&4RUICO7q!#OsL6mb#MXlAygFFV_#i^55c$hn$#X-9^^xmxoP0~XYwJ` zR%rtEq)5I5Ki>?!sg1t$7RkrLF>P7a5`A#Gxe5CtoFu=s!)8O!>PkLDyLuzYi6$SS z{!JI?@Qi$j?#jlPx3X56Pv&!UA9or<|D)tXq#y4F9zDp1*znZ^jwO>1G0wyc`yR-L z@DAt>dxwz^5m{u8*XQIze7@fU)@$X9`OjSgdg1zC@*$dMTHyRU`4AqTEn#1G@*&hc ztl?@(20y+zai?I%J{$1(oF@7+x_MyVg%|k{N)^2^KY)CQR22sZ=$IsYg<(q_vCp1- zi29FC@a_Tm5OXF0{OwOZ#Fpy}`_0IQF!grE{A%jYxckHf`*O&KINbAPWvbiC`k7z#L3FpTnr0;vDs2S*<_J&`bqa=R@eHc78_J%d>B83leVqb6g ztrbyY;-4(Di*?3pRU7oHBk=R>E}d`R*VtfwANde}C);8FBl!>tiuN$<4EYcvcRS$q z#B$*m@IH`H(MtqR*8;dcX`x_?a}3tH&KJ!0;b<4?&yczHMNf?SGs5KDu&9kr3FO`ZFF+@x|*y>d#p5W)$AvH1uci`Cz$}(b(VP zEPM#wpAo4B`2DoTImV-olk`TRFYPFNh({-Uq4i%oiTQl-kVGGNyWLv)J@ENTxdp>v z!(B`1dWHK5r|xM@0;xVK=4wN z8ori`U*Ef5vd6q6W66);*YjR|tgyedi*)|s$G1UtCg}GV;{G(p|EEo|7Mf<*ccw3$ zkMRA;G^U$lUxAKve&)wSrrQ%9Zl(SV^CcEwut-Dr5lgBpV8(~GHQe>$eGnfC@%QJZ z+?cl^@=2q2;MJ|e4;y!SAN3z{>j*N`Nyeeya}GqUt`|E7both@P3|(^G_rnfzR)ApFpwh ziS&4WJ-;hb2S!YPTFs9o+?jYaTMzb4c_{e?{2tIS&;T^UZwo(SYZoIto?n;p9k`!{ z-6UY+d|C1%?5q0A?xq`Ket*66_xSc*)!kt8(DQtLUAmu~|F}pEW4c7 z6`uMWk^UaP{^xlVdE*XBz69>C)1i1hFnF?C@)7v=sr;TEO!us;#$&(KU$IH2BhDXJ zNInP8#OQvxBdqzhnZG~j_}H(x7Uqp?#OL#jfC$Hy?=>)gf6f11&(-l-tp=W7gb(5P zb(toh6VG2?nnMrs(?owUOL{zie(PBs(6>y(_Y>j3AEOzrgZ_4c?{c8T z{O=oR;@MzKE^F{P%fH%@QUpG!vXW%o;Z4=?gv`YYR0W+Dpto-|*AD zLElJ0@O33e?3-vJSlv~|=j#tPd_G4V&qOjDU%MhW{FpPYAF37XAn%IT#}$G>|!5^Ky&}V5bcw_ibc$v9F@*()+1C9)X z4ke`9}WC>(zw0pA-u;Zdn>rZzp>D1pT4Yd zyQM4u`?UrLu2?b=Fw;TskzJD^%OFXx>|-D-DJT=X%X~WK4eb`3GG!*-kDL)aqj)y_ zth^_f_iN1l`AKl6whJ(iMh+VHXTR%0Q17lR`0KL8m|3qS*kb!qSnAkWaF2(}p@~Cx z!Kd4=gf=~F1y>q{VqaSy!4Dn7a6EB<;I_lUq22RgfAs3w~m}o#k(e6TX5;)>fwciC9&B3$yG^enh{; zypMu->5Gl*el>B~mmZQKXTcAWAY=SR^+fNe#8fx zWV2IA#IK_>Sxzmnrg8>z{y?0TmBx^c#;?rKs*dI^g?}>}qni<41&j&H5Rm36c z^ReH8IBwJ&*1MWGV)aZ`c#Sx4&oowCmn!^-Z}Nfc+hgK|qb4!zgb~}*wgj*QRq`Rc zMh69LgJNYmloDXl@t{Fa@EuTRQ&xf+z%ZQKl_F`9O zrwJe8Z{8qgH7iZ{4Hc~iU|s=n(ei$n=T02^&K193#8Km1SbS`n@F7OrVAyX@+}=mV zbaIKI-hnm2?T!A!qhY<-)GXrb*KH&ppmBS%$yRJ-Lc{a9|8VDBFU;Q{{u|tb9ZDe% zRO!xw|M&O#<7clnVZ;8zQwAHe+0)X5?=bAS5u1SiOQZjAKe99W7Q}h?it*W8Mbwj?fNF0ezfCAEKF=Cd+z8{QO2cHu)a0UYr^;x=QQg;hf#y%m~CB($b)EeyBUjH zlp_3xLnE7_|3&^owdX(V(@hrsgTCT#c$1qf{D=Fc-|_m7{Du;*&$up@_+9h&u%HKV z&!KNH?Cl9&iNn#p5NvfcIfU%&vjyhln38Jc#p2@go1> zLH0h(D<=OTV%i?e|0KV`F|i7E-j5S`4_dGTeSY#83TADA9ihaVS8s&;(f{E)YvGm^ zaoW;y81g$-_z&Nju7__YR$>0bQ|SM|0bQ(0c$64jyGh4^8C&GA*6WVJxnU8QCm+Q2 z=pADV)32kS5?cEVy|r1-Zec&~M_hljxc1uW6n4q;A#3)b89P%wPxuhq=Bu)>^V5V6 zvG|rQQ*1e*w&>k6!0t>|bGZ{!eL=oLf~p?7m_YnvunzX+5X+@>#5@-A7q(o|Vvci( zOFC+@7uZL^U2nX<;^R}S-zM@G#&1){yd&bP|Jt(lkH}we9jeNbjs#>GJNIt{RcCDD%bmCKs^+ZFY(CsCzN*}zu}6(H|+N#zhQ*>XIyVie6-aEI9oMB z_z$&mZ}Im-Tp{-g%nl6~+Xt9Dhs{07cW7$!1WYQ)Z&>U45LVg{oA}>@>$}Kr$Xk3H zltDd}c;aUp&Vl<1FPslgl<^MBS}){e%zk(P#sFx#})_2#^`DZWk z9pdK|LExUg!iPBipaApR$bZ=5n2-05E}|df-uFDv&v6$1LyOuR%uDDac+mYUh#t{L z_zzYzNtttIAbT(S&`VAlX^>3q&PdwmgHFKWnp z;GEO57@b4Q#_NCC+ZDxd+Kc=L?V=*g7a{+l#Igw2my`eSE2sb-4I}@dV{Ja9?jir7 z?r}bjZ<7CzeL5djr;+dAubl_$A5q=|Ym$p=iphU?=$noA>*PPY3CqGfZZkapu95LI zKJRNX;l+6JABwkSz_nUa^zqX1^GKEr>X?r6UBnL!(_s7}@*fUlrNFYo};_&-HzQgAut8o1? zahP8W{7xYMAt5pv$D7G_$m$veT0o55s<3M>`3_cA5$K1J@8J6|4Eu_SyLhzBH@jx9`;N5OL-2M4TbaVy0snTvZV3QRo61%A2j$6 zd_1(<$^w8lI#OQ-Ki`#_ufy@C2LEA8zX!4jS1WLSyup9q^VhG|Z-gVew1p3GP-`QM zyxdXv5ZiyOhtX=pN0in>2Yd1#FuxGTOSMEk#HS}~pkjxn;AI`wfbuO3;X};yD~EZ_ z$%lCAvl{oGdnSD6k~omxu10pGu4f738uh5Uy(rfCqDPX5FFf>fNpZ}1 z3*+5G&_IVBh^C;XfR* zkAPc89|*tU`B%)B=te$7@yQ4{ntM<94WE)CFrR|_ho?RfxW1I~AhfzhK<6Wr2hsaG z@ADuZV%?c=I2=uR5F^UNu@9H>AU=eKs5SRrIjvFZtBI8gP>|c37@*nJC!!SE8 z44SIf3*X`HqA*Z&Ixl>OwvR(G&+nY@8+g9Nq1k5z^FENQ^QQ&R*&hnidyx+A7cIw73}l5 zAbf{@i&de{mwbrtzg5w{B_Cpgx+?nkRmJtTXGC5^#B3E%Jb7C5VQ{}dW=uZB zqP42{{UaZOzkgjB`4F3HRk2@;dp;&=f05VbqhaK4m$h&Aonf$w_q zAk3MFV=*Q^dsDZv!CC?|pG5(`6%lR7EN8R8<@au2vi-g?kf z(S=$dAHu$y0o0z~B+VD{>&+XByTCn5@*(ync7=*e@*##*8pE0I}9@cB}_UUF2Q;(+T7LIm@E0)??F1aDs_!~FiGg7Zf(obOsBxQo0q3~NFC z8H4w_z@8W6L$sgc3Nz1>53#SiJDl7(O+3H$SwC1%I7M*zMh}=BJyEd2#DS2tWW3q3 z=!@6iy@emK^_33N&Smavb{yuTS-?P(E7f*25Y9XC3_;>~PNi;lr z)_lC^DftjaZm!UFWA_?a8y{Tvdrc<0;*7_4(;Dv1@cg&chW0og+KnF{pi|T<*#IL8 z*!$a<=K}%HBgj=V!9K#SHRrz#leTvrZUW!$b;j>g2PseDQDS%WF!Ur}0<$A!56||* z?^{EE2KOUW$MnK}P7TbjxGdezao^_lKsD+8aetxqd~bL?O-1++Yb+cvk3&)T54`{4 z_QckBJk-RzhsjPGmF?k!yS(H>@C=4Z6Fc~Kx*49Im-6vBr!NI~Jka@D&Cgfde|Y!Q z1jnDgpnssvkEc$@t-3+RuQ$~=KZtX>M;%8inZOIP=Y0Mi{evft&GNco{?}vf2S~mK z_Z4w$QSu@9ZzQUV9>~c(lJXt+KK1IUkAB-7$%o*-$-XIuaG-O855ak8yKdO8c}4Og z`0@9CX*bw)>m2|4QvSl%3Eg1(1MWW{)c;)_AooXO!6K0c*$$E_OPdE zv9v$<7)O5o!puAA{cx^#)dH6#8T|9a{D%lfopIXe+awDgqWZ2b=8eV*etoACJY|vp zdwzt&mDdJPJ~vqK=k`XJKQ&)4?_)BZ6DU~A4?oXHf5BBrrZ6dOsNf-oyJMb-yI{+w zJz(ff$N%jg?tced1N*y|;MPN|V1+Tyi{Sg;-0|dc8(==#|9gIO$L2fiaJ`?Z;5#p| zXYEuA!CD4Ruuc2xLH_^Cpa0Vp`+@G>mze+Cw}pM+&8{>5+m0C=Yh6Hd@-D$W@3^Ah zRw|gE58O->B<9DHL3SQcD>qwk*SQ1X-KoBU1J-(i%H9rw3vPSC$jSE(@W0KU-&@ri z=52}>>}x+9@Vh1DMeyH4`kaxF5I96~T{!dp9s{S*lK;RN$D(n(zE*Hxn=yEO)LO=0 zpKqV!I1a|`v=kgLGXVP<`~>r?glBWY1^=v{3~^7g1pEFA#D293!48JgVe8@=!8t=` zVxQS&wpmG1wn=FKQJ2ksmX6?y-b?X% ztE=E)OP8aM)l0B-VKC;SI0)7_6aq^WTm{3MP#C@6Q)2#`?eQ-R&Sv`v4pokT!_xu; zU(}6+WwtW}8=6PKh+jd1yEsO}hkYvrU+)(Kt$Rlb=6RzYZDR$?0%Bp{lSIKKGvi>( zt~9|_i{jyOc(!144`9@w0>Q7N6QPfKsbK4U70jS6R`?K}mK#}yI{6UeE7r3*U*fr4 z*0D1M#EVPUu;hEhb$aDY&Vc-gPK9O6JAn9*PAMB&LM&fY%*^f*=j#`-(;dl&Fe@)$ zJw_5&n&h)tDa5wha+&`r;+=Lm%&{r?5y#`Q*d=xHArjhWGH(y!A0_E*V=yt!)v{CD zh^HJ(VTT?PYj`HJ5Owk)rr%9u=6#6+<|VM=dBnq7#52ue;um?bY#6T3Zp@cBZ?TGv z_)0u?do-)W{0jVTNq)nZ0a4i3Kz!;+1oIk0>>M7>9!C&YbqYiOfjBcbgng_do>0Al zb^k!Tu-P(vKjcG%_Fv3$tcguigV;{Y-*4QXj(6s{#9uE= zW4@<}6-)wg{V=g+_#}4oFY%al0ZjW#itrP--%zPY{==%N{>;mec+c5U>|Jl-Yt}w2 z1bvN0zag`DI8zTG9-!#WvKJ8JToCINMf~9HAXbq{tUYM}GhRbH=4d~*H8)lG5JPO; zSWr%?@FAvFy0Aax#IvpYu;OjRcelyVKS~w;LuWfjW`TVQjr|ubYJ0OU=!-P+s)4p_ z{c&RTD^}9>M&Dui6bp9zXsYldB7XK@+fET{Wp-y<_BTAA`wj9vO>w@J*x{@(yH-m) zWkwhF=MZt2fguabPZhp{;|YCMgFZo{|A77|`WnQJ9dy`%EMoPK9hmWyRFVJSQKpG` z7{u$c+A|vy@)xFisBtGxiJna`t&B0?&V#d#(vP-;Vr;;L1Pn=1a23 zgIICpC$w0dEcpXrnK;%L_YIDYYv`Ncc@T07K0`_SBtUFTg&8_`!rHuwgp!0sqJFP@en;#g-3ozBN(!52NDm!H3X>Jcp{2i!dwb z4(!9c2JSm>{~`184XAIEDD`*XoHzXQy8$yZ6NLZJ_t_Pg5SSqHAP(1F!ahs#AKb3j z!=0B6z5&m7h`D_hdp3w$Jv|9pJBWAQKL!&b$!FN{`4AXSA%3G&jr~-_yUh3DdO~7- z_dPJ{VVv+EPA=bx*Eew@{~>5>CFZ=6?_it0732pI&l3ivTNO(D>$xI3rcE5#Pl3hmB%fi^`qt>v5o;^8VgoV1q0zrE4U%U;%ZYp5 zkz6ZV~zpONo_|9zutI z-eSA%rhD)>g4pHtZS=FrX9!WhiSx?Dc`nzW&sXvph6i1SPm73ozf8ziFX2BJygUa_ zgNPq@KMUR;2aD~ti%#KqJMq4DC!n;N{DxIikK%kDamJxT*w0ITgSkNsj)xPsh&})X zW#l`|_^=n(>kz9<*bP-l1B4G@4m&~ap@;Ax-t6Cj{l~<$e%nB~y1(!v-dk(`4ALE>^Brdm&ur}Huorz8Uv6ci&u=gC zAi{R!0&;rh9Y>jf&7P#nnm!hwWV~u%Ew27oC`r~yoKn) zh&ft_`S#>HjBQ&0L)#In4bDg3uBUW;$H#~`2fgee{r~g+i(yOiF)xAq2lq?4@NN_N z54);!KwFLc2kx_IPa^*z#4`)mACv!ZC?ykOtjK@(6O#e8ng8(}F#rE|6I1k6qGUXO z)UQ<^lnwy{0|7+=k(gN<5hMf@1p^ZmyMt@e zB^}Zr2o?r*D`1O-h>9JU*G?4kUHi;sumAhO507VNICIXN+UwcB)$d9o#C0&j-_vUO zi3{uHK_?Qxdp`LO`{%^Npff#idoGpZ9ANp2;c@84lm8I9B^Hk6beGPL{2sH5ECzNx zC*J{kN8|ih;#Pm6pky88J*XB$!i^W?J1lP;3Dc%^75NRjwub|hkpFOFY#3yHCEuar z)KD-U)miusArOL|jw1ho`wlPjgP~>TPUU>=ko$mE@OnoG=5HEE_iw4%O>wSdGz1pw zESQz}~f(mq8r7dIRQbkq@!^bP;SDtMDJV@6fWM5Y}Xp|KM4*9{# z?7u+%!-T?YNQx%^p~aOfC^)6?A9xM(+1pIaBqQH}=i7u?5}W&GfW~~vgUAa`hYefF zf3QE1hIs|#KU6hKgDv{Rfuq*K=5gddnu7T; zwJ$Xp%EyxbaQ}T0++IumLv!~e*m0lyhqk*CAy<>Qv34TXQ^<#?3rc{(T=E~zzmJD& z#pFM5|LEr8KO+C3;8Yx_JSG1D2Or_raLR+YSQ-m!PmupGp)dxjXMM+h2ljG4zHihs z22R}~|KU@&H8>yYt5grf(Z?4Qx~qwpPyE=7WS!h6Bf zrbS}^T=E}&&5wZXi{A+UAx|X&cHblaVN7{AJc*_}h?<$`Cw(CQ!BHz5ibhi&#ISSt z%v45s5I9y0R~?@U-@%|h4D0W;f-}y9!~4#)!gt_4)rROtf(wR*!`}A~1oQKN&Pehh z&O8qT(_@qe@$66-`aI-Ac*lj|{9nq0Q1TB0z1NfnG1MOYilO8~@VtuQJ+BMj!TCAn zN0eR@zQc(NA(*FCC3xAs5ExT_Rrn0NAISM`m4cThgkavxWx=h3aX!`?%7ftfwFbk; zhtQV?V!h!)S^o*PnA`gpK9ntm-zO*!qBv>>p1-eRzIGngd8}AYld0Gfv#LzrcLU6Q zVaJM^j{wgVHIm=J^Bw}1xIxUW+hs0~kKp;!nboV?L!%}4%5Gmdi1j2pmK0`=_YV)t zb}ib1-o6Q&V$>7!K^}?xhl?G0;`7e~!S6eE0&5NOAu?xngoQrjLm2kf!1?!&gb(p= z4;9Ssc+Bf{lK(JlfeL(_K|aLDV=Az)g8E}vcTk0oy~u|cGgB4L#*hzj?W_tUd6Ew? z-&hrnmb+sTKhQB{QwcH~3kY*#@ahkOYBc};qd55awapeXVo z7FMX>^_P4Io_Eo$ihKzEeM|Gnhgf?8{e#BjL#*;s#p?kSpOm)V(&`)ydd%+ z?0>4jNE7lQwsld#>(>e4LvVkgxjXp~DP2|3#~>f#;cpcf=Sx1s=nJaQ^Emksvg4|7 zd^q_KDamS>cR)Tw->+(ze|=EucfiN6+FsTG-6HZKI#1AoGo2Ma#H43eDxAA(<>vRih<>pS@nO)B-VA4Q4OPlL}#UU#hv&Og~M)eHIk ztc_Do(6=TZ!U2pxbtCx@Cr0)Hqt;ub`Y^92W`!7I{epamf4-aG^91=2I0pgicjQB) zEa?p;N7oBKVo^*V^fAeY=y}`>MkJFDapYTH^h3#q*kNXl{gTLs&|hQ$foHRXAMxm} zCFWaaN}tc`c?pJAkQJivAvj+T#ro(A@*&dSScBhC@*(~VvW26E$cMO5X@@>!lJFZ= znabg92>B3=k^y~3@*%>%GI%|bdHl`4E%uI>3*f(c<$OdpJUVD)|sLH=VHl zMm~i1aA(ZpBOl^;u?yb6gh=n_{>O(1SGesEEb<|Gzj4L9w$;Li=vCr|c`++^JzDA) z@I}KBiamlQ{{hb#cy9o(DkoI<5ue8ZG)W5)e#B;G2beh|T_3q~y)VEH{kIU|M>rPQ z!3Rysi{SI0om5u~f1t}N0IzT4L-a|qhi3Q5hnUdE0qa-fL-0JEcH0(+_b*Iz!hUXZ z1!p@r!|=daf+v4>!R<3$@Ql4~=*LeL+-{*eEO4Oy8B2P3LLZw6V)>zehr&T4>Ys6Y zw-^3?sDH-Kays(<8ER6$jFgfwSg*Fn{i~?QzneG)@4sb|AHeHpLw1dZ6Blfx<+x8} zHD;sXNP(5)L-5bA`{e_LD=hH(bzkx$K27k!=Yzh|?}IPr+o!|7W@UW-7Jps|?C%US z^?R3X{Wu)>`6b}D13dh0EcMsm_e+>ff%W)ac>S9y-T!0FAExJ+l*P{3jQyX?aBh|< zWUn$QE6u+Hn8^UUPaDE#@1A9DZBGIpKi9qA1;+=vO8y0A#DRvb8TM=Gh}Xw&((~3v zbxR01rCG*Z34TwWQ!xOP{MDrIi}h34_8r!cH>HD=pTT_x?mtv5Zzp|U&aLwXU_HFG zly8F$yllsPE6C7m!Pg&ao~LDwTG$V!OB24or2L!XXZzrswcnEez>kTLK}K-)bRDnX z^X)HdYGVX{CVePv*#3Ggd%=vouXz0%YrLoJxIeMy$TKN_fzL;H=GO&uW1p9D7n$EL zuQJt#f&tGY-+(Vqx!4KEs~+I{o5*=)#itgA@b^s(|2*_5HskY2SM1+;UGfk3{)MhR zAn1g`hu}5Zfy&14a7_h&zf`X_n5&2P=O-lJfUi&JmX6TZxlHmA`1aV;ULWu0xDWA+ z*V|?5T4+JNEB7Ie@jMAx%S27QUX)18zpqYHP3WGoMf$$nAJOvHgm=D$$fwb#NtJ2$ zP=jgeIeh)(JOg9Zrw({OmsX1XRwTbdxwk45s}*3L#!?y2BY9J#2G;8f`1|d6zQ^$= z>e$aQmw#WWhW_s$EzG0Jkk*&~-`3T-fIa!7?}uy~@JJ61Z>7A5IXyZ-cf%;L{Ed4T z%ohp~+;xBwtOChb13^^T*)f5Wdbs zV!nxlaK`Knyng(V_ATe#^`k+3d5Yvia8A`93!}O`6FkOpJl?->_ekMi z-1eOa`xZJ1_6_mFyeE9_{BL<~;S}B2AjQ_ zc$rZ;D?3PRbZ9NR^?~@hODa2PM1Dl&on#g-&lpcn);5O@FAf&IBoynM7hJ5!M) ze281O z#7wk_jYl+Z@}z>aiSka-M(t< zXAvj-hx)K8oG%(D@*p<7t%MJ!V}<_^bo(;6Vg5ox|BG!+FGA}f;gwE@*gJmE`cL=)`+}^z$IH@%3v-)^kV$>+opF$Kd&Uz4j)<^6|tbCkpX-lzfPtYxiS6y%6C; z+;4Fe(pIl5PktN6v~E9Oa>pm2s=ieC5N!tjf$$G=a6WVtLwAC0%4y4(t-tUg^yQjt zR^N%_L%3-(WexHfu4ikq`A5lLNPer%woW3JJF2ntro@kORhY$Q@)uTqYtOd25H}sE z%&K0JzYuYtEvt?q-k{TljqOg{I=B@pJwg7$jF&CYFCz9I(VV@kBY&asiKcjdCVtwl z2{Yvq0*E1ShH)Obd3ClV3$g00>o9xm!NeS z`3-)LD&Q3mn^~U2d3od^Kl(aY(c!< zEf4e5$bVSVHU}ar9E1-sbbJ=hry&19$s_~&84nabgwnAz%aq z<}#57@qI)p_P4hay!TZq)IPNp`4GzC`1j?uA`e1GFAX-Q+lV}fZu`<;&3kL<@AL8G zO3!rAa18E-A3o;5d-<){+F#^BIJ#%S zJ|*%Y-apU6@d}0iz{gu$gR?O&#X{ske9_Ip=X3HQ*6q)M#Z%17c{Tv|9qK*NPdnPL z;r?0vZD%eF(j)%?ST1Z`-52ZOc&^6J&q>Tdf8R{>zgTr68}nhwe`tL#8~p3HRSgIRe3SdHl^e23ke3}g!j8HydN$YKMBG-4gHq7fF{~@RIR`kJ$d*~EnzYJY|d`aVf z6=SwQeu54^-^h6X-9t+^W8SB>@F60yHi5-s@*O6nZiJ>?h>epsK<`PKA|FDpx(GsJ zHTd(AjQcOWx)y=bLGm9a^eIIDi2R2twjN^5i6>4dfEE+Uf7tmC_J_$;_zyUqBhOD= z2XAjF{0GjL_T^#!P~smqa>3V`{0H72=4qI+ln=rEhz&Y9n1@9EL!4VST>nV^gIZt~ zjt3G4ZODX`)5w2#@(}xz6p{b%LO%oiAGVTw4(_--a!bcN0P-O^q@+RBDDof1Jzon; zGRc3?wOk8htI2;j8xotGq+q`v@*i?7QlM!Py4%KqBV5k^hijkcj#C~r z!+Yxp^gAC59`rXH{Xoith^)ZRb0r^QMtV5y(xT$Ssr0@1$Dz4$2x~SbwdS@*XO`rNX7jq448smGB$F z+(U7`6ZsI!?Lt8-pYkBeOhR#&?ALsM(1^Px{D<3DMqwUO4fbQ-1=wqy?eH23Io7u&-$BX5 znK?{yg0ky(%T}}ffbGWFrmHqM-utl3!eTG9RWf14QARL!?PK9PSk5rQyn6B>R?hB> z^TTVUJcxbg>mcHQ9$e3^6?qVR{{KMbTH!xTUatu$%gKib-Jyzk#E+zU51+sLvQ8D4 zKKT&wPHLFvM?M74m$>$X`eV%dp@zo;`4Ex5YEaUSe2A0fY7nrHe29B})Uh6WgU=6^ z@`eT|ahk1m7N= zRLF)8s=uZleYTL(8T2^LwIU4^_eLX{pGA;Psz+SMnja?_lv*;Y0BAm+KUD z+`i;PH14l~{s{RH>oPUaFD4(NYKbQLa{GlJ@&1oCEH@w@V!6Ez=IQK}w%@qKlk$r5 zI{3UpK7`#?UF>&6`4DmI^`OOW@*x@}8(_XcNg03M;5DrW&$?p&6on7L?-{H$dSU*; zHatF;%DC^q`&+!kq+B^XBk;sQgXl#S?8`C6Tg4g$Sy=>v%)v1D49=C&6FUW`3)Lstto=GAv;z$8N zoBjXeLo~9-`;&OdPvA8~p8xPYo_vV#Y6tNBN9bN zeBQY2F3@8u`4CZmTtQb$(LaNKzmB)upm7xW5IQzPFyEhi2=#H;zh@u$5SY&kzU%(M z{wZy+CUjcXN6!WO!LR1$KRN3^0o@LJ^d&=tAMwuD0sbis671OqaDHmA@FR|1mBGAu zgb@oERyr-=9sCj}X z3~>Ru<7~m$lL((5sDH-J-9zAS7wVs(IScb3RH=W4UiYEcA8Vp`|B2dRI3I$1h*xRD zF%N-!h&f}uG2fAVi1(dG!kGKR#rrXv9)8~*DjhGp{`b{w4D5SGKE#xFzTo`amG`T` zn&4@>+UDbMd}}b@-je^2+};=cB1gWzrF!?PF23mND0~QB)8_TX<&8o5e9m1ikH-5! zTRb1}{sm2BJimTP<^bvV;J$qVG{>nDfS1>Zie#0uDk(iBd0ehx&EaT6k zJWn90-vD^HNlQ9Ea9^pPgEibAs4i_UzJ8olXRGjj8hrc7u00umK8-S-e>+Nf4@%c9 zF)z3c&$E#8_n*Jq7e4K8!LPS+e80TL(hP=;Xu>~V&j0mzXbQ=We@pqZI)5e!?B5d} z+kY>`@nR|ep^u&s`Zk}0Z?MC%7c6i7R;u^&eWdcR7v_V$5X}1reVp;6l%I>aPs=?M zPot+&-U44Ac~5=FU-%g7-%VuvH_+ppKEJ=>e^1)qeQRQvCEq|6^ivnyHyx4kDfsIH zyfx6*++B*#dX4z+N8VZsJi>RB^6kmDN3gOQtP0#x%C`lsqkO=rb`TY_Uh+M79!2)V zcG$l$NBTb44@GAFTp8!%r18HeG@UekdQb&>YR>odaudyWe3^I|yM zc+*($f$!e%sCS3|e26A?-*rY|KOEQp{D&rX<1NPEc-%q3jfRhfb6=X`wMUVU(QMv$ zoR8B-uxaQ-c(84x#QZhMIeysRGe~gVz9}F#T`PEfsXzSo*z(`|!|bNtm<~I$jtTDl zW+wLcxGMOw(i|L5c_vs_YaSFC)(akJvH<(lHi!TAhnW5n z`m7TL^XH+A#rU26Tc0DIm=D-@v0$Dz`03Ru!I|z6z%v5*>-jmQ(lZj&+D8l4^oT+q zHcs#k_h>v{Bn$rPwgz^tN*A0rI0n7$9KovJ3NX)se2Bgw`Rt$R#7^zjv0dAVm9leL z$p_;0MmcP}1^E$W2ea7ECB(B`GTFra#Hx4F*@Q2|yXU4cKXdXUzBOLUH0Be>XQZ&i zt;Fa0BxC;s;$LSISq}s9A%Z6*FrAUaK0o8wi#X!xez7cTU2MbnDfYTq!}O|&^YWt6 z?;syympqE$7@~N6>4ONiVUEJoiEf)2t(Iw=kG(?n*vHeZN4Q zFH2k*wvvrnMtpYjGWH}sUibue{w!sB2Z*i4EM~g*iP!93z&<+orHdyNGMF{Mf5XVw0!|%<~<7@WK2yhgv%>$$yZC3l7xVK@6uv@a=bR3HcYoD5y#sV{==tkt=Oq`#BaYgXW6(v8`*NIdQ^&*l%71kH^P} zJO~ZjO7vODf7r0#GPs|L75+n`;TK_gV65;TMpahe97ysXZeKYEx%Xm(|1h!b8OYe7 z$XDQgLo>@0*uR+AX7X{&Ga!B$dIXe*lFyKJ^Z+cv{u10L;XXuE{T^tBK0^aHft~Q7 zUXicBmsc&{f%StmBL9K+<2DRmBk~{eYPRrxmBN2e?T7Qbjflr<7Ga)bw8(q-yDT4` zT_t|_C9OWOBQr{itr)Wd{s8$>UiNpOo&itgAb6u@cp4Gs~b;j zE>~e8O^LC;EPGK*{(^BMW$e>I{I7pomi2-Bh5XB{+4E%L9P3uh+MIa6rWWW+k-u<3 zqd8u`iGN2mWrb~sul!QN9wOv3JYUk7bsk9k=Kf#o2TlHhYt1k8ZHb@VsK@&);?mo7 z5S>RpL)7EXn1@1q|NRH_<;iDQ*yJ5-A4xn&?=_AOkl)bM<|WoUiJOdlhWVGo14CQLiS#cdYwj;Lga1HjQ4i!E` z%$Q2-2TVM(_!6AU^AyY5>0W@sHsm|#EIxhK}xgG5?MD>&;!z^aA+~%F|1r zp9As!-`gPWu(R+XqW%=aruNP}zg~`G_VUc4&9En8u;fEtRQ^qwpaP++7D>%!xB>^02@AAmKx_Rm#D7o`c|7v$9~e3;7S*AOo}x4ir9w zX?_~^`y>AW#~#tYu@^oB_U^^`r%dEQG%HHM{sQDXjLk}dN7ISZJ|@DVGP%fu$dM<( zM-}oPsvji5qPgTh91ToH|CxM;B7+oI(vA3TSqc;ek^i9Pmx_Lfjqo3aD6NHIR^&f~ z6|KejYvey1bxgzj+X2FV`1~vl>!aj9m_(&xKSlB%rWm0Q^1HwAA95-(AaxY^57o0W z!C{Xj{$A@PAHla>7JO<;T)Q(1{dw{qbiJ~n`h>Z3J?CSb>py2>e@^lrZm-P&s{ryJ zczss&PG9MMlD~dgMh;ZS$bV4!m<_Ab$$wa8l#O*A@*jq`&W56;een8vM9$}2AJ@*t z`INoOdGA<0Ce{CaCUhQ1{==kK88{wIzQd3)=`gG@@s~O2I6gzZL)&L-q4c(KIo=CM zc_QjBQ{j+3`40iVvERim@*P?SC&Qg4#F%9TZB|m=1OL6ucuBqkpO609hPc^0^dEA` zcSt-Jhy8tfNarK&H?)}&i}QoYe^{y%gT4g$56b3iuwO9w58S_Bwu1Zzw}DY$@P~W{ z<+ePQS$P~Jn<*HD~a)fw-H6~4omnW3=j5BUz$`eAA z`wyA(RPoru{D;4K-1m|5d)C$CwqgDx`4FB?Tk-Fc|FFZd7^mzj{0E*7;cvAC`?2c? zA7Z%aW*FCmxO~|rxY0vf_!0N=HbT@eE#XHjy}SV?t|b3q_Vps1U#h{M4`lo|GVEa? zj?b$LR_2*8C*b)I-e>bM&zAfL^XKcZ{|NaG zo^95_XBlxTi#+UCpzt4X%t)?2E*E`OMg9Z#A1pTKz^b?Hq`%KIM=EyV@zaTX2<|gY z9Z&v)t4bDh%V@*T2Qn$c1Mjys-B9$u;QT%@1AeO!*OaHjiV@^LjB1q*#>wPAl+H@S z{4s_9z~{vA{xS9K70mk?ziPS`$7dA&1LsKJR2(l;_zyg9oo8o0{;wYfXScQ~uw75# zLva5gDhB&yOeX(f5{9_&LDVJ_++O6#fI}z~V%_KUDA=uS4?p9TVa30)_v; zxy7mk*tbjJKk(m|PhC9DKly`xf#Ua;vLqhooBfiQKNFVL#X)0j@*(=v#$x|d@*nD_ z#bUlGOo5KiqPA=8X}2(?2I*sqB4Ao@;?!222UA);#{ zU|Gfs;WsQyjDWT+o(pd09SOc6&xGG#s1b?21^ExRZbiWT36uw6njZmOE>j-FyqOU= zN0WSrf&me*e-q_Fl(&k25>@gcf*yq9GaKbW%w1I49fg( z3g2P%)iAhq>xS?h+;ziX^OEbrckpi<2EQI$6Rh_-6rW$nhd6aB6#nj^Jc!X3Lcv>~ zd>6q|8Qc59rQ4G z#QT%rd|M+NE9(oM8Qed~2iD(!4cgHQ@`jKPF*39}p1&UB_6P>^Uv1h4N8 zk&zE^(o6$hRbG?oQQRLmeMKGCO&}kl#!CZ6pCKQj=N%2~-%LKlKcCg%nl||m8^bi< zaS-_seMYK-$_VlyZhcTkAB22}NvRsxe}a67s%9FX@{oK8t6ds6zmI%~{sYzFYwuHK z{M^RtS^V=S93dZKWVSla2OuBf>|Ax6k3l|!pScDwTk;{|G&G>u8HEqQ$E+rN(ZKnc z?bg%82=@7t~E2x%^R zB)@^5uY+dkLCyVL5_4xIu7d$6pxYU?j3OT*X|^FWKCxZeUpQtiPx@vI zHJ00?dL+Ll?c8kwH}(_@KVo90DQxROKE&Xx-k85cK15?}Gq5otA7Y$!Ur0$NAEIu2 zKX~zTy;T3?PNdeseo#KPK&sdB`u^w(=HO6CK193U7I?o#K1AdG{Xw>odmtB@E>^pi^<{SL*y&j zL$8e!f)u1;smaF-#7FE`4F#`xx?o%f&Ba{^~>0t?g8%{R!Y}TzI}P0 zg#81S;r>!F$n- zRPGJq%k05#O_1;-TE#H%nH9*-Pg1@Axc)%Q^H?eT0ls~jyDt-bY@8z=KT8EyC=G^X zMvDaB+~SPad+MJN=H-gx8Pq@H$}cxOACnI;dWSpodP_b;@FY(tctk!#Li1thuaOV& zwbTpxTo@<*UiPXH;8;FJuwic>?7ufsFz-hZcX)(gp4X7FcbH&ZFJJUuJ*4A>*A#D5 zj)fCv+@#})*Q1Wl9|sYNE(KY0UrX{WY~Fc;l1qQ-_s?HHrOF#T%*}-_(RJu>xK-UpIv%)h z(7MbU2CgP{CE%r0%BK6Bq4a3KdK2~tq&YdQ~6HcW7D0>-+q9^wo>r*gvz0bUgFreT{p8YFHyFkK#<{zVhJfJ-{oh9{q-| zQXWFt!Cnw<{1xlNY^kE2=_p%VsE_#>r=-v0zoC5r9r62=OL-K0eV;Gy0L^b5l-7?w zpL>|ALaOaRY@blx?*KMG{ zJ4aey{>-&fT^Yt+;XXtY$%m+W*B+YgNRrl{pHq0AlmEswxc>fl{*g)7(*xhbrS;|K zjL};(AaiDp@F8C9(S{3a(xvam`;9#OuFKEA{PQJ0fcqp9Gbu0Pwr?kNS}8B0KCBCL zDx|!KvTQ@}wp}LPzjJMOnBqiv5r*MCVYWZzMQls!h5Z32FJj?#6Towbv_821Z0nEr zhLv|HFQV+a8LVnQKrHX}t{?UjFcm!ShXve>rM!qk&8^_-4a$qq?`)0rgtp@K(@kwb zZ&hQ#DpoSMdFJhLzQ6h3uW<+X9(_x&Y??h}j65Z{$!Z78yD1S|k?M$kUY6iKI|k$N z87|o8gbUu6P7vJnlp9zUS_&WH1_nOmKYA zM9dGIAy^~X4}O+J3$9I>0==5$$ranHiJfV_Ki+Te7QA%Zbhs9GMsV4|nbGh z1@q^n?>hfT%+HszuZMwbTCm{LSHj_eEJARfGZB#7K1Q&0X(aeOND%yKe-u<~OBK9* zM>GswienW2`50f<=dc0ZQPO-e-2eF7%4S=$iSJZovMUdXwI^k;%ZB7bczsJ_Nz;fU z6W3ziHu1z>scgneVvEzsEV(E75L+iDv0#7V3%?VXYay{sZak~GPyEd;j@fII4>9I` z3=8uj#w-gKyN0-fVKkdpPJH-WBr~Za{xTo}GXu$ouzMKBG;E2hqe7YA9O5JWLRfSj zvCZKi7IT?6Ph~Y*@r$@%&I*S8aD-3s>cT(lHTM5#$b&F7S;~S#iQ6SCV(+&T$9!?aT#J9#Xn7K9a=Y{^P`*>pZWHRd*LR>X!5^KDHcw6Oo zcH#{2O4qS0@;ULKGozU;=JhxD48t8qviseL8=W1&A{>Z4+`L$eiNwiQJz3!j;-zEU znRXiS>m9C4BQ8Ps4Q*x4ENBDq(#wua=@@bENe*nuHR9?z#%{bIu1JuxVZVq=jP2Ob z_T)P}IcLqFEAfOGR&2Kg@v=6SIER~9Kd~PxF(&`vij^4~WJ7%Ru_?PZn0Q>GFe$+7BwtU_z-Jeb!QG^iAUxeG9`cFnWMU}yK{--+jL^q(-TELgw=UHW;TylBTkpu zOjf*}`wYK5w3!FKo_^eSomakvB`Xs|{)2z~D>!UL{)0vR zbMVnlkn+K29b1Cgy-#5-{{FcSf#bpO%>fQ>#?6>Tsik4cqVhO{|#^oi4%DcjpkQDBIeWZ=eTN*LRhR)iT$0(f6#bx39P@z z3jbk3;RTp~G*X0B(NUQ9L*W~6AL7l-gOK}}_-pPyC_{gt!EgBc zVi)#1BzCsm0kcDiuf!Ka(lp|)cQ?a=?&Lolb=(LZm`{X$H0FltLih1SnD-DZ{D%$a z@}Vr7xc+z^4D=_T;fr}T*f++^B&Y%Cqwd8;zKF%`1>KQ z42#7)D)Jrp__6;8;+b(cAGKptdG9^?*hlcJyt#20%>NoGc+lUq*bhAneTD(-+>i{` zyT>NzlN2m`hzs5)aQ@!1a^I=3tm()HcrLt)*W(4khp14h!*RtK`1&yR#_K$L{H`f; z4W5j@XGOn^=i^ja{66v*#+P-#{2*ez?(JENmc%RK+p*f6%dP4q!p?Op05l$SlO$qxM5hwR-%zRG#kH6sY7yEG% zyA1mUi|WZ=I5Dyw9;6bVn^Fgrro_jVeExra!-tp;`20qGgWsmNpoRS^8v1XjoO=a} zBZ&XLd4cnhh)uMgVV)iN40TSmczhGDTlo-XTqM8Y+1`85(wF$?r`r(vVwm`Qf&FVR z51Tl6^>t|acc@stu%Zg{1c-kPuY}2W$#3Ak!{RB#>dh{|q*oroe<+!H4u<j;uHh zAHTSZ<+&CovA-zsKc!_*@r-|y*iuYr`1y`~B zX}`TNWiqjn@^0+!N`AwUf)dO#BhHs?$MHGx9TwdyhIQSD4Z}C%c-mm$LvY{8LxcF< z;3Dvw<0SkDE2Z^tqSjGxy=gv3cfpb-QD)jheC0#!`M>wp-@k%QxkAcrYdG!Y8XYcPXcwJ^1`WyYF z`&m9eW4L2F)}1ZO_vF2o=C8E)kPhk>E%^L$iI3)FU_T^_az6Kyzka@RCL9Sfm+lAn zc!uHUOnCB8k?+9y*19aHwIi0hW<#4y@*mz^$%ZGt%tZdfgN1lKm~1B9Kl1lm1!Ms` z+eh@j;8}U!?8tw3z9b8F?k4|1rxr7q45;5l>ZlBO_Ye6FICcV8ubN1|FJ9jr^db$; z_>li#J$)_C=OF*VwmH^s`%%A(d9f*QIGTJ1do`S&{=f)*6-7Uc3v-fiK0Nske18u+ zN4|qoNCMUmdgAt8DCZ8xy!-LcX9xKXwkzVW4n@2{ClpKYKqoO}ppU+!Oal>7)j-g(fe z82iDH|G@iS+^kjj4%~-`9=sXrTjW0!I&FfKaoWO8mNQwmg zD)q~_Y?u$9x{(iI?Y0g+P9gun{GU9`FDL)u!lqoDPoeN1aC}3)rzQs$X_60t^Bpj+ zvYqfDuGwb8hZu$bz^}14mSw@K3yS;)&U3e9LQ!+_A^yI}!1=`FKLqyA0L>_c|GdlcqFy%4^`>)J?IHu<^W#v3AG_>HH64@{55ykznrcsA@q?Sfe^{|K4C{M0gzu1&9ESO})q=BEh2i{P@*&OTa>FYie{1WsvXLuB?i zAM&B(KiEAqV>*imU_Xe*SP$BP*OAVw<1J$xFRtbFWz721!(Ot+Qa_6Z-uX`_^i%l$ zQ}_?2p`Bo`1Nji|ChEYSgSEnk&@IwHN4{4054Hbl;Psk(2<|gXH6$M*@uUXkTaXW- zqN53mzfgY+o;T5bJoym)sx@)^{Wh=XN&Pmu+iAk;Wbz>zZ_os@AJiY?h`JU$o=iSO zf}tkNvsCyH+c3j@;*ee28*Q^nJ*Om>H)D69-Tg*YC|FA0oO&0}@7`4>4k#26&X7klxS#KJQOrJgQveL4>@~z&vyEAy$`Y!gUk!AvPy#g3V#_ zA!M_0KCU_W5Wmi9;q{Gth>v;Nm>*6)#OYN!pcG0z#H`zx_fWrAS|5HstPJajp3$x{UVGv`1m45Kl-!+Co&>*s^i=N(pF5S5aetb# z?b7bpzhk>p|HLtFIrkl=Vm<_~wQ(P!eNb(60DxB6aGTwwEoa!Ecp

O29BrLmJh@)gZpoEavnn`ydJ=xVKA=mK^ppSG;Mo!&(M29 z@c!t1AJ-!eT*n=pqkdTPDjs6+s_tah^C9vdYcO64n*F@m!yocVHlLgNdrFx@TQxwB zrWe9LR4Y)#JnCRg^p|;qejlmg*TM1lLRH=h|8Udk2!$+gL;T_`=Rbshuv_5B{?rEl z5I58YYxp)HC@c3c!>4Z z;30}C9)ji}pS|U&;TOU6b{Qw07<>b-U&as6c?jlT`#!eC`%>p2SaZI8@n)TeV9kCI z8=C4o1ncet?WyUzyRtpj^}E{RdMO^_-T`}R?V$4zyj}(q1b?7^rCy%3|`d|5QdIEp(uQGqs>4BhLABi3~nMKj;V{mr{Hz92jU_sjCw??By5IuF6m zOE(8cvbd-75Uh`sb)aX5&j>HTHIyYpTP>W3MnP@?N!1o|im7vpQu(^-t~Le6aXGOl@O@c-`**#?wO0@46Lvb<+JI`2Ecu zUuAD89)kTMW|`R^B3AlibPBeimmRl?<~iY{4Yu%;)p-c4m$XUc?df~@O$HB<8IS(5 ze!qE$L#El~o!~dCc!(8Q&g34Tc!*X1xX`_$iig-3?g4-ERZ?Hh`AO?xzVy8MO37DZ zp90UkHBryA%jI+A6W~7(OrfoG9)flK2@O#Hv;^btrsVe@EN+UJS*p~F^D%ub)QUDe zU(DlQ>bnoVZVCU9#gdQZ{Lw4R7PM&2BFPUUhHB#VQqHucY7=yS2+naYbZ<{{J|=ShR(OKzH`-JAi3yVb=Fhoa;FV?kfBO>~c;IFS z^6xQ2jt6sG)3Q3x~$lE21yHCgRwORdd155dRxZ^iahJl|B=KL1ABh8<8&Ed4X& z_a4V|q{mfbjn7A%>qLL1={y8~f4@~2`a4G%`@_7#kO>o6bG|>2`wQkjHJ10!#OE)c zdr!P~M@fF2|Bd@wKAk&E&M(HSX-#H#^za(;-|<+Qj;!lO-#QQC-)FucaC@5`@Mr3e zzh5PO8oP$}qKNZ455fDR)$K{`=7#@weh&q5ygjODPuV}_B{DkqqJ}fsA42CpBCm$g zgT-P0@e>aMzt-)7exe;^`#hdbI(CKMRD0w1LfdtLKS`+UAAipMHP&Rd#P)PPVc4OL z@EB|++v71dYikGUx1kCDzVHq9C)?A&JR$tNG4b_z@wy!?iK;K3^ZKomb9?kNtHayl ze3;fOvMrsdTidvv4_w=Dy|bJ@&Zo1#WjhKq_FwZ11#?=9|6cfr)S01_t7&yUUeRA) zG^T37Rps~jd~hGJ#SgvY{O~#Tj%!3!qjesF#~0UsTzFGi?r&xwI(nl>>xt;7EU(Z!Gh?k7AmgC`k{TsL1$ZuEpj|YlHZI*_7T{$^^-k(JU z0^x5}TE36xooS)FA7y)#lEF~B_4q}F|KjyZ_>k)Gk0>nr$GpJ)2R$gZH<0Zx`?%7JR)iUaOl*R&z%G z+izKXKKYtW+2Ksj3q`INh3#`kO8_C=5ESq4wR{U2TrnwiCGQC^Q+yW@@bNi6du5`Sn} ztqOZyX7SpF<5iEZdeWfeepwu=;{VD|1YdWj<$wGGp4UB`DdKfKIlp{;qb`6~2@W(g z=jZeF@|Np`^|y)V6HD`#!~Qgp`W5aUcCc3=@#En5M_hAz#FM{d^1F|9z1Nr@Y`Sjn z4%~kWy^syQf%$)~;ZG0m~)NIrdjq#`5 z3Uz`XPPt6JzP$e7ekx;aZW#PS^RNo=#~qP@@g;sC<_%?;e@N$dIlsTkT_}h6Uq^$7 zD0HJD6x2FVv8K(MsFLM<=`Vc1Aor_u>7uf7R~!y z^Qk>Oi<>N(umAkE@C)m`$lxC)>~li=XuF|zo^t}lrT zUwkRG7ks>ZF1pfzez^?(fw}Io-wN~EQFw_ng*<6p3hGo44`xPbMTi&H>kbD0a3`z^ z+0RDL4b1=fp81^MO{-hi63sl8T~IYz*Ez`GAFkQ?!at}naV-vi-Z*!4VrK0(|4^%W z4Vr4%-Ox^{HPK&qfT5YMnP?tqXzsTW&_2@8ZLZcL`}|W3-XV{@KX{IrhISa}M|Jxp zVQr=J4_`j{)A8AJSPQ?Ywp#YeTwZrTS+KyU_^i2h~3V-bi%w=~ZL<^-5;a>Y9p&*yELk`J&RC*SO}V zc!*I0chQwSN{>w3ftb7EAxiJuiuH-oxvy@5|C-_<5_4@pJYMNE&$Z~+sQ8GQ9af=V zv(g1;E~DuG@sl{1o=Wd*6%S$cdLej8rAxWa$9hERPF?3IN$G^M+Bm;pXY>4QtB!rx8t5F;PN()i^{AFUEioS*&8S44c6Kp!hBzTs8U zXm~s;-PC6oJ(;NV8cufVRT zr3nN=rfc?!uj*Y}n+87=uBBuCq2l1$@PJhO1L}#3Ke&UT7_C~-7Evp%lh zKOEybb+m>yV!X~PF#oXZq`USuNbwK;J-oE~J9PelW1fZjI%s|8O)~r*dd(`K?MhU7 z?^z4fU?^>h&4-?7ihr>AVu>8gM1z00ef_e-7-s~i>okTEaWWdC%6!9Nr}7jL4S6AXWcswF#`PQZWRx8DQ$Kbew- zD83>8vtNOs?UZKrGR0Hz4kM2>4U8|YbY{TOfUH~N4Znv^|CCIBovrlRi^bEIB`Url z>HGe4-$6>p9KMt8TwC!D*DSp<>R2fa|IUn0PZZCP^lzt(CI^+CHYhG*!eXUgIwxc} z3{*VB-_18>>TbPHa5p+Q-aleb99|fG$a`jjIL;2@Nw0(|B``*aW#%Joh13x2d zm!xSkM=Aaxc+4*Ci>K1zt+#4*?shi#h!X!EM~!s{$@g{aRmt4FRuQcKTMD0oUXx~z z@-^Tg5CR_O65`WA=FIpWh%eWX{66zkPV>7WKCU!+#gX?{#V;hB?TC7ErJKEMN1NL! zJ!N5A)O!Vs|2Frwv^awPsFq4^JJpgRuPUBlUEbz2K33^`ADWWSXvH^F@NY~tZI!Nm zxefdb)oE z*0(g`RS^7~Ya4vShdySio~HPQQwIp^8?)5wbA6!045GF%X2~b0E%)%pjAP!e%Ocu7)rC zF%3jpnhjV?bhW^GT;RQI}T5>=&^gGo3Ab5>gaVq;w zb3co@(yw^w)2b9bM&}X6+1+?Xl+mn+F>N$mhI9bZG7a z4|9L;N}FZ9_i{&d@VowU{+K7&=~fH=Reo~*So^2?(_u|%yCNp!&uR%z!8}3VvGC8d zS9<%y+UPM-Q}TDbp6t-F4*ILq6uyFW&%f$neOW^^$M8?uG^B5jtIPhe_M04n`Yv5_ zzU|1JCiL)xukaSEQ|dM+A5GW1CXQOx68(gIHZ9s>Jzh;T*RY*h z)1DG@Rg>$%I`Ugb@)=fDG{;=tG)BDep0}KD)`u2$rE#sj<@$3DV&0?f^!{KKLwi*1 zg?@xpe&>I+oH4yAYqghXjz7Cc^r1H;yo8rvZMVB0JjpzTkKpw+=c6KCdr18_|K8jS z{oqgSA@%aSe~2ZZX53x;{`q=xKaZ|X?vlUdm;`%9y-ReH{4nz`P5bnLf1MlVM;)a8 z;q|)SV3;e*=NzLru_By$Tym9sG2a8tD)$2a>MGB7){)bCp#QPUfBe8=^q=gFdPA2S zo;&dT`01E|w9Mqf+b7Pc#@-x)dVZIjuao+7ev@W(o9pL3@K;k(c(&u@_yp`8}|))xj0}vyK0=DPHH^| z^+EQ$eO`Z~SM_Wf*}+cyFgQPNzkL=>Ut%lA&uf%pyHk*_vXSj^zWej{WIFcBTJq_f zuc}os8SgJ^;s2QbgdY^O>tPafe_2B(||2ct1Zm%fY;~2-Q%?b4JYz2&e zTf_^tYmWjF&=0e`yf69w|9UZ=^7xk*{*bTlSetlSJ*1qB2Yz16^@ykRGi41vrqShi z#AD0K^OEyB^-3mC{vBoHdh?i=-ZKID^3r_%B<6A~e*$HgOAC*~&!=@;<0-3uDd7+J zczR^TQ}@c&e>kr8;|%$ zaoJzaZ`Rly58knuoL{c@eXuj0T>j;L8KL4w+UY#}{G5tPKMcMe-Ypa8(1btabDj^h zn+rdR+ePI5Kn#M|pQ4m!5xM@%Ke)#ykk^>Pa=w|z%sV)Nie?p({p0ift#bnM*@fhM z^6zI)OrQ$G3yS9X%&qMSROw0qxxUO7Se{0IMBf5(zwtA3*`@@%U-FCp3^NejY!lEg zF`w`#JU?n47!UprTfUF1K7yjxW|}I}Q0><|7=D#}5OGKb7{4%q8t`_$57t5Z`l?WsQW0(}G6N7&0 z-^3r{=LJ7A_q*`^`W5~HSJ3al+ngL5gZ`$>SIolvD3=-jbm)iiS^7O-JkXjV z;R~1n7r!u#O4@DI3usk2`c&Aiaqm!Aycv0@DKm& zvWDO4TZ4aKe}@zBllaX;X!|Nr_(sJ;%=NH>2btm_JXTvFKKH`lA-MkD9RJ+V+@BzJ z@H2yd2yJJBe6->rdSA1lp_QH(p9j~mrN3$_9)kOIq+NSx@C}@gFBGMCh`^(Ew9Q%Z z5YL;~)2e?I5Ak=XJ^DG_k@|PO$Jh_~=c3z^50-l_%z+-S{+IJb91o{GD;&_1M)^Y= zyyAd$D@*Z#oabF>&t4F{#FRzMc{T zUo^*oo_{?neh|zTaKDB5;31gL`*_d`em?x;Leje55dpto~gEocO5hQANYDsia3h!NY4Z_& z)17r5f}j6~k6WXk+F|ffdjBEjXQrne#CSa;{K%$G;3HxV;Qa2B{zS3mtZ7Baeq6u# z!e`{#Z$%Rd<*+}E)T7qlVTF3rEIEGuPG*D^{8=-FM`2!$zyI}x&Ov6n5MR4H zA!em`i2Mays6j`?L-a2NzsJXlhd8p*jTX0I9%3>4=|fGt-pHYqhQIxzBh}#tx1968 zxE!kjkM`BDUQ#^7qB+4dxZG0gFZ=x;3LG}5Asw2Nit~9v_=vh+n}V-r9s;B^g3Lp3e*2Iq<8fm!andh? z>zz%rk2FO6*c{1E^LMyE{LLb>@qN8t#qpsH&{Hi%exEcz_L(@AKc=E$B%;b_0H&ufQAi!B=$XE62m1*FV(*`TcO= z2lyO0=j#q0x~H6P&Uf#R>q24K-DH3GoV(xaivEsaa((#kzm)EV@zII5$LAw}{UBQ8 zYA@%5&ynxXFq-V%hCdJB@2s8Fg<8)O9zyt$W~rUw|JCfj^Jy9A^jBxpH#Fw+A>++; zdPnqcYRI26-(g}uhwtC&%J|~@tIvzJ)VWfy>_3mcW8>R^$E+>;&-u!OOWVRPgk(H( zK6l1~R_Ir$_s8Jz)Hb6fwaddigwD^buGtd(u6_U8pV&bE9!*gLS5@{0-w*88p%H4> zyo}FBhcuuwi{0h^<9!Z#Q-_8;bCL7Sy3?t8RKv~rzwvBo`m<*px;4~6_J{AO3lnR@ zFVFV(@tYPo2T|>-R(!sMU-@vUHh5F^hY-JyK(2>qHtu)73`amMJYJb^ zcoS7pu0Q5KrrCnPrygl$DvrW}kR;RjC|B&zVJxw$HzQFk^H&k@A-3!t$2Pd`6Yf3c%PZx)OVrig5R?^ zR>Aq(&UW_HeduT5ANZLSbJ(8BSiH;P{p0hIvd=J{M{+nfhRe!lbO z%BWwu{onVio49|#ig(u}U(eU`XbBJcF!>_B|3IFHJuZ3BzM?}J-sZ}`3BVE-IB-)~xd6#l!(Y0O{n`_*KQuZsNoE<-;mUlsY; zZCMtrWimUSq*a0e&ZovN)g2+e~Zb2)~-yS-ke+ zIRx{BwQt1<-@wmoo^LfRJ|&Ci`pjopcC!LAK8g2F_$i*hjh;MQG>@6BS8VB4?tX?I zyvm;JpLQ|MUqneq%(p@f-FKc7^2dz~&G~)rsXoFx@cXpMKpO({Y48r-IX37gR>sgg zpM2s`K>Q?_Km2+Te4+CPgKxOGzy@>nJDI%pWd@V|!Rp>TYVZyg7Irjf%eG7&8+<-m zx!S?QEhUrhWxfW(qwKK$94q_->$*AUnY*#M!9SFGi}}r5mrRaL@ixN$Eki}$J;>m9 zId3nib!nQ`Voe6FrSJ>~yvtxc;GV&A2h9JpwcX33pPP3Y&!zZ$Pl~TVU@i?FBG0c% z=x3B_VwRq-=i8@N$alXn_=rMj)|8g%WbhB{hgD!$3(>s4uV>nk)u{;v?=bI?JyKUDFrf_Rp%!9Q#$RTcGbn!!Iz zcw3dqST{2G1@{0SN~qV`(EgFW)O$dfp?UtXEU}NFKNhYDzImvjn{TU5xBE;mc!#PV zeBmz{%lUutdstqp2DMr|-OzqnHQ`5?z*_i)fwyXDhqZ<-Sc%}fy~)sFEzEfTZ8tRTLvq@++t6-15g*@}W@z)hVE7ZN z{u$+p)}_>$s(;2Szk1-@RsW32-Ro0CFV#Pz`-}#Z)=c%!U|u4;rs|)OX|aj!FCQiG z1Fmlg4OovDpW-2&4PQe|S14`2eI@uH#Y3!pv5clHRJxM)5?WYN@esF$E~2;@N(b$o zkLSJ8?5S95sNy3&)|&-?W2GOaB+>O2ijVmBHn{(2kFmlE~`$}ODI0#-ghtBQ(W;4xxQ6KjhWKCesl;`dR{?W#AucNqhdwy zLQ1b1SsMLU6%X+_p%}HzQ2O}xLf|Ep_P>-DJ+76WYMBdslHwii_x`NSa8ug<>`QG? zu+nx5?xCho@eG5@UDK8~SK4pI8Ld=rr6<)msx2L_wB_kctxmGiok#D~3gh$N{KHk} zjbONxUbStxW=>K3Lxth9MgFPj=^rj_C!zEtaNYJYdA!9Q?666?{5f8ZEQ^7mOfL&4of#iYxxqs)|BIL(9r$XdJG&I$FgDB#|FYV$ ze;m{Qv%W^MVxXRA>8I*NB_zr_d%#aL0Qb)-;Tbv%cB9B? zO8ZTAM|?`>A9#&ie47XSF%|#7^$P#g_LuX=Yq*IH-ni%eq~4g) zBkO8Y)z^Bz3tnTpIn<$#J@kGT95dcFryljW=quNob&dQD=}H4#bNtDAbO`d(KGNTU zb)H8}(4X2z@{gQ9+|sf+O-oG$MvFxOOp}ba}mD?UteDu z-)J_42DtG4;XZeUm-<}Pk2!PyCgdB-qqcY+{MUt#Kz&IC#G2=!9>huZpXVpGedm(v za!1Mc^L&5otT~7`I|$#vI(qJG)FbQu5X?udjGP5OczgMr`(q%_K@BuJ@eg3eveUw3 z^n16J&pCe;eL4w@gpHg(_`{?3E%=5D)^fjc4tZQc0!=7pEzb*no^pP_Sv@NmkDQae z@*$3f4yz>NpZ&m2WW~|4*%f6xaQ~iK1F>F9uOQ#HFxWHDjHIj^XnY%M?NN=&M(vb zAUGyew0J!7-KFLI%lChI`*`I0bHUWB$N_=66POjg~n6v3ngXyod0)jACLTf zN%5=T=h1?e@#w#y`$KTf>B*Zo+PS;9@ITB`Aht%XrHiw_hs0RU6axP+q?nvf?svia zn{>3O93T5{+)Ie3RW?O&|5p`0B+p@8fUKd-Ys^6};u9)o!YK0kYRz^(SjzhjMuZ$1AURld#()(I@ z<@)n8d)SQ`h!^J(K8s^+iMeK=KZ&LAQ9MT&5Hp>sx?75W1lJR9K0J+Xj?bOL{RB9M z*{1(g8h1Yzo@Z{tQ!j5m86F2+ZfE(&w5J>96U} zWPAL~ETE02V!NJ#F9?wH-=_R{^w)hNnxCAeNaX*{+G|b7cd>MlH|NU(4MKQeZS;|{(0Q{97AYU{a z{MviUjOdK}`?2s3aRc+4`F%M)^BKEt^%R07u0`tUuyG zOZvVOzX?8no7daZft+{QCsx#>hIhsh*Ut}G_|D)R_FEzU+)(ilHyWcJF6xcsKe*q~ z!*dWD2{B@ubRW7D@2(LO;bajW~A#NSBLVc>@Avixg?)y{ZrwVJly>f4?(X&MN zgW%_RJ>-keuh#ho)*L@xxl8whV1JqwD{LtsOy?n3bA0?aG-=pormC>i2A1-s6)S7|3}qX zhgG$8T^z**gYE_i6B{^t9#ITzv95*PorsMXl-=Fkb**y*ySw|^-QC|D^XOjh_s4yn zJKcw!Yp=c5oWC^&+L!QoX+G=^-Tao+&%yV(t!IByXNzA3zE|KI+Z$Z#vByA z7UW~DAM@q@a6jwOXwp9W+4*pNeLvcZ_;aoQ=E-_1`%ur<;7`)Gv?uFNW$AhnJsx|| znzws}|3H85aLI%H+05L&E6RG*&>0@w@0cXU_&w3vll@_L%kx5gCn>Kd_s_fJ`Qn`I z%6U?~20KtM*Dzm*9PCL2t8AC{i~ak%bB<=U;vtNOJ*idhEmB{^_XRwMNB&JxU&J#; z{iqu2Lx4@d_!#;bJ?^cO-(x%-5#q<=I|~ni`c}bh{`~%}M*9$6AbDvZ`wl4{A}*#d z*$h!U#8}^8uAeWHdNYnu??EUtrHY3**Q6wQ*IOd>Q*3W+3a4{97mI!a>emfUl%wXG z7s~bVGmNr6qp_ce#V-Tf@tupiG>_ZUN8tx{cZ=mQ&|JM<>QJ-}^J}yJT<^oEoJ-@V zQSDiB{@7nr7xwdM2mOcSC>$T-$`hAo$lvq)#E{daCJoyvT1je36hpG|4Tpuc($)=@iiHD(?%4f_`!Bi4@fg$F1eBA{3!<~LLL{-lc^3Dz%E zJ2pYyIT> zaDT_$ZO89RAN;+n&u6_^_E7Hm=l(bt>=$+9{-B%af8c&>Xy1v7PwFi96Myr>)R9hZ z>mdC0GOzP6F;!S7GJZ%yXNRubd-FyETgv4xyJwwJ!yn(GBk z<#}U&zx`Trdu=H92Q}`K+gkGe>dW)N{!u&2S--BFFYXz<=%*ysk{J6h=hKAeBh{q+ zq8`1;qcJnRG4l6#hT~Q?p)yyZ`S()|XtR^ToACNoqZ|+WcVF6w^$Mc?+^>tAYi>Y3 zyDP~3#QF8R6364evik8h_oz>{)9+|B zopB74?YRETIhC1j2$sJ`+~2l3`^5$Rxqrz~(9dMgBGF&K^PD_4nhpl}$oCB2D8Hr^ zSr5`(&L6zMwPr>tT+T(#55GS++sJ+l4$>ZRKfA0pP~Upuk0JHnW>-tot4a=Xy=cR9 zqBLt{6_WGA{t`x)CYKHc`j)|pMZ_^g%EBu37<8bza$t&L%+@BjuijvQjT%z}b z`wzYT2a9ruUJv@O%MpdC`OxgRKJl|yv!gKU3)XvRC_Gk|!_516J{CR#_ZpO)u;4|d-adTa{zMZb~4nyj=GtVX8d9+#Q##eQuGddy>b%3HdJ&Npm&#Qw^|+UjxMufD8r)=245Y;-4AKZDLU zn63DGx~sSz4{PDUdSrgMf2^NAUc0`|op~Kc;UzF;cy-#HmdEB59s;~Wo4Ov@DG#Uv2J#u z_Bs!d`;9Z}y^h_3xi)gv8=JW?54JVxFaMB5?v$rllFmOIFVExQ*eeG3T|f`wWED^P z_p*!5KS1B=c&QkPk&o(L*oWGV?yd6=vBiC8hs}7Me}F&T(*jF${vq+CFW0O8)%k`T zp8hnW@(Dej)GdIS?mK#HIuS(g;y?1cZ{Z)pdIghvdM=%RC~`Z5LQfRZwvcd~G?0z~4*s2jDB-+D+EuwNzemRDZWy^{>ElF7eNh-#1(xL0=t}f5wT+k@Uh| z`DfhAW#D?R^3P~mMx&~Elz+zAHpF9o<)4u^&B(fnJN4sN+ES5HpPBV|$n|KlzrJ6O z2mY)?bB`U-<37GIyk%lL)_orhCMJ< z++}qOo@1-H*z_js53G2INy%}nN2B5?{cF?K+=_p&>s_4!+p73&=gRbUw~E(yA@+1t zJjAMA5mdjUikA*3Lj`xK80#e+b1I%8e0CUX3aa?gh9LGIS25o2XMqm^Y$xYX-74I;;dUn=tRPlDF@0xXG6^|(SMtf3Q z@eMhSKVl7273b`EON0Ide_Oe~&rex?7rFkg;@#JeGasPhk_+}}DOXhN-+ian>y3&V z7&mIY^C&)|VgF^UA)TcAXY6S+m*>cecWBdainb&~#rqnkGPAE@epcGqV8uTazSCVB z9;xDybDC+J`1jx!9-ig30q?78@CW%DXSOb{-HKOnyIn!7*{pbn{#6}$PN(9GVmY*< z(TaZ<)9RU_b}6L?5w!8N;g+r98-C4MXSm{`;(dqG4A1;jyep-bp~9CWUH{>bbqz!A z(@C69{wn&M{5>~R*^?x^0M-n-9nWj1Iy6b@`&d&{HBUhUd%Q}FxmAbWj)p#uMj{_9 z`Tqgg-3@VbEit@N_#4Yi_ejY{BF8vraF8J@hb2aRfc?!3bNgC&2hDr)F# zrgil(m{`97xenyanx76bl=e{k1LsVm>OB~y^A8x4J(_IMSHSwoO}?k1lGr~2e-GY) z^*^KbMW{G;r7gQ#mR50~&8&#Q`-kfMLzR!0BRjWHyu-YDc_QnFE56}YeB2)E!YVGZ z@7|scZYmx>IFG5(ry)B3@NA2#sp7sNy57T_1W(g@)?4_i@4)(VrdLB%{NcZzCa*?{ zZ-{s`%~Y557yj}O1G3LC)pA$7LtN1vrrX(7%sCp<*-L|Uy$AQ6S*EBpif{0Dzh&As zLB(5#yfby^ZTUUMTVCsao3vQPJA}T>Z(b0pV!Jze&F1fkSU*S@e?^{jF|WR+;=TJ^ z%(j~p&+u_{khy8Pig$#RHjnI};?En4njc3hzTrq{q`3<7a%g+ddssN3ntA1uL3;cy zzN~rq^#rbm&F6ghY<|8ABi*|w{-N%a;;g~lP1k?OyK;=y+R%mb^A1M%JAd1HN2_C_ z_=o5YKeS^$ig!qQ@lgZsfcy^Xz1r~CTE;FFGtZ;dh*tcAcImDbVWZ+ZU#@Gnwzt-K zh!~fPTCKW@f9QGZl$PM6;`a@YXxUAQcW794pLTbIic9(K(Rx=>aaYqe?fwzPJ7nLn zK?_b%u}$DAE!a`<4)aPc(R|OhlzIr>`Q?k|YI&L|{$cHz>DnD96}PA`Nt?6T!ZTn! zl~+QVcD%dd8$9-m*205S?6q!$R^QxQ*MnG)J3(t%Pw@})di2z$-ft$yM<35T5o?-R zV$_3X9&fH)aA+p_=&0u;p3Kq)oQmW1<>y#mxTJAqVs0{*t;P5A1&?7W8+%L&WxeUD zTpu~WV@hA6=j>`!rgJ5(2c6Z>W^#Uup%@nxk8fFt{yC)h2G60i6R#&{kxL=`k=#kpwVx6pya49JpQjY23Eql-NGTpd#n)T-2h87a{Z^3`xE^>^@)@mW6(!nG zUSjkCvr3d;{fY9TFM{~|;czm|C@1Tgkza+M-#6wTFdsr3`lKA|C6^UG2J^*7{Ug|~ zt_=4lS)w3Q=bgbX7!At zDg8_6vG?7E^v~nsa(^*j?pUV@dy*FyJ_9k<40d?$$o}m+&_$y`@jAh>zOqUxwbACAZ-xNO5lJb`i$->%w)Q^wm=6vAx zU>V;a9^ufH^XVZxp6$nTP~u#4PpZM&QETJp%UZSln9mO8=RKA%-gz==Fzpx-%zWoW z8Si)wO=7?0;4IW9v3B_Qf9z*BHyC;tgz*n}fp@bke~BU3>i<}Za9q^-42xN1tU?S=Tw^ZJwWQ` z7!!=XFopH|0;C=e-eGqBDa=s$i#`Bi%vFc4_LILyeT?}uuD|<=UIFS?*<2@5{+~X= z7vOxVXO5>Fem=rCK+mGf>I@oD+gqNmeey_}cqg3}SP!7Qht$8}7gAw#8l7w6F1!H7kO$hQQHgXn*+0f>fo;<$U#6?* zE1j>30=2l(lb!S~of`Y+^URs?6zEh} zd$GLs!c(As0?)9Qc?i^I@I7mLIh_XYx9||Cx4rx~ozK6J@B>(Hd~~1gROGwJjxJrI(1u^OWGsqTTO4JQR`DV<^DkfqS%X6u5ss- z?+F;Pan7l9vu2Jz{nsVQCuL(^%a1vN-qgZ3 zi7pn%mIZGbFiiP&599vFDhurQmiZfb?R_Ha(OB{PC5^TH?@?BBZu7hy`~v&v7`-Zt zK1Bk=c`VvCPpJ>xgxuMx2= zh1VVpqm2o#QO}fp=gL2f{UKfn&w&16&)K1@ck)8#8J_tKX3sc6jgA(7V?J(d`KGPWNZsCWp^H;Ht}L-7!Ie)i$}`$+f)_+y+u+=thv zDjovsQ*!t{M16wwHSTh4qZRwjJ<06YafSHjfe-9G`*|jhtNA#;sMrf$f7<9}ChisI z^o%EGmS+zd#X~G}E5h|a+|P8@^_)kIFZy!5<%8lM`g_oksvo%idz7`0Vrjv457v)= zr^ipnlCcZgJj_$!0-0n z?9chtJE8{w-ePh-<`XL4mU<9=Z@)i)^VPRR4+6(OUW(`Rzi#}grx&CGqXQ}E>2>k9 zK)wj$$+c&$3D1Bv6wqsKnR!+G9I&S2{lGxh=e;641NaJz7aKDVfqXD{i7}M|=}z5C zdJI1k->Mh!K8YrCg)jc(Q}Y7akMy^w7r7KUFM1B(Azn4}r@f!f%J0!%?-}mLdR}Lw zo`wFe`Y&Jlx$HFaArqzE4;~?+?Ws(Bi;(k9jrQf-_esIB_ zdb3{raf$JL;%_f?{CrgWFTjVvkD}g@Bg{MP7r#X>%^O@l^I5LwPk8Ll{t=rGGM{B9 z;~lIoO>25UV!Xrq(!H7Q+0WPiRm1umtiSBiWM3x6{07hru=Up5{sJOSkj&dT8MBD(CRz`omV-e*=zJ@(ufOgl&-+`@fOK^&DG^J_N?w z9t*sA%%*sVN0WV6&upFW1K{nz?`#NDJOt`}dzUF50y(6quB%WFmwNo}qJ_D=tdM#r z>Sqs!2h&#D<$8ReeHi!4OQl|n`tQzv!l|=y3EG3KFOQxRPL+QzlKLrfRTnRo;`+@( zY{z>0sB5Rov;Nou(Q84C5c7f6-{i4ck@_!5Npwg;NKX& znrqX;;Mv$N^@bHOaja)P6YWXr^DS4_rwij|NWGWao58tuHTKh({)e}SF)XSZ!~DL* z9|JXv%Mn%SY2~SMe-YD$+B{#IEZ2+Um77|Z=M#T<2nW`)uSYp=O~Cz<>%CF0KKt8S z{4u~N-20~qGrAda|9Sip1rOYJxzpwRu>Hi1`gFB@s@xy!BWp_>=kQW-{RTYqk;592 zb>S4LCnL^Qwh?uSwD1wQ-}`GdXFdC|QvXK1`Al+ie!s@Z{lNWn^=m=f20|~w!bcoB z){@8bNpilpXC<=YX>jimIG%-%c+-j*xuN>@+BMp+-^w8TJ@XOU4BN7|O&-@SZ?DyGT&IiZr7~7itExQCCGHni?|yqq8I=j@MdDK$5Eh~!Azzn5X{ zS)Z|~9?!_j`hMdZ;rvA3!EI7YW}fTG{X%^*-)`n3>ea&j<$gn7;?a{>od@`KsRjE< zRF}U;eHs2Gl^<8(?eJHKF}Pf8LjBrRlKr8ky=h%T=G92}4?HjUWjKG2lI^&@3(FeP zK=%l#*W>!24>5iocnH=~;OBYuLLI6R82;z^1sD=@)#mlB;*TME6)S>k(FgY;f7-jX zVR5l)^m#xCV(uSYw2J$x(AK~Zxj(#r!=Xl1sBToC#5g{mGbL5_mFI)@XZN5Yyh`T@;##UCERiUq&-A;FtDDXv$S7a-)Yw4oO#?qevjwL{=qcK(N3-h@!7LRUISP_ zt{=aT^e)Zg6+1aU%uyD931@!1pu{}hHN3Vi$?Jb?rGG@5I2Bc#nbv&ZB`_a0jD8bB z0bg=U|A_sYBZFC=EhoR9HX82Nv`>Y3d~Gey1MT0xVJKC3^LsDPf30x6SGoi;PxwRX z=Xhr5Z|k=Fiu$@-@B60SRB#^jA*_XmKz|yO{(|FV(Rb*S&x`#T9`o-ldNJb;dhz_? z?w`N6j(Y9Eo{az9!0&l~)=_JU_^>|xW#Jp}Z&ObAP^B$rg>S$;o;co@_4`l!(T8{# z1s*f|#e<^n0A``=d3*K;-m@2TH~0Zy{p^?h+rVcC-*CNe0p^M~@b#RO_RLy)^xxuD z5~F|iSz^cYuO&L~@cOPj`^nFj>%;LQUOCcsdtNehTlIqT9rn19}`^ABzJdNS|7 zNar8si-Q{k4AN z*ZGGI`QD(e)qRoi9eHf#ZGW`)w#tw**b?H4w4%2ieAz zWPO&AdJLZPN$oLuZ1cJlt!k2{$9_I#D6ysZXUN~fuj5-A<)5)}XgRvsZnpmW!fVP? zW(Vb;!J3H7Zz}(c@;@V3UsU;L^bTVGjpoWfqg!>>J8q=>GjjISIIp%t-+!A4L=!5S z^w?{ik@eV=e@5cTin8wY@Ab}j9L;`?%0FXU_R7rZEB_2$lSy-)U)1-vtid?CJ#~Pr zzd(Ls=AqG4#6j^8>E%c9`Y#p3i^RrO@esc%59aZlinEm+K)ZgZcu7ca);Cc+M3P@O z&Qqw^%Bv&oYpi$(vsW9|yjC&BJJm}o9>O8G39rFYaqUuZJpNKVL{P=r)UcO|pEa*a zp0gDnv9M1x^Ykj7%5wFs;uQ~ZXkB^cS5-XYOey}}DIQ|^=VF{MP;mqQP}UPuu`w=? zc`U_4oEXh~{s}TPl7?#Wj!SX1-kU3*gUQuze z*88;!?AHOd9Qn@kal5n!j*5@?@ZSb)skh=6raW1$nIl!a{@Xmwt+9$@T&8J*d#kt! zrL(4~5e1-WzN8;ei!H8r|6Qs*B~ z&woEb@eh1{rcN=6e_$5S^zZu-I{y$m-^%10Z;6rbsdDwro;22TK&}G(gQNd{dlr>a z{6nS6zxUL5ZQ&D;GaIYD++*r*(Q|7?mm5yd}@UU15k?fYPzf5@ou z%+&vxieGL1VDdgVSmzx^9sgo_uxPNZ@6cd!K695073Vxu&>YxS@ea&Gn)B6E@y-BG z^J`zlJA||;Y@U)+@eVo17B!c?o2ctO#FU9Nk2|R1e^!+>_nxizhUG;oo9hf#@vzDD z%xO(kTr6)r^Q3UaH#o$!G&e4w;z4a2o5wyk1?9?%ROEiuMK)$5tGxz??v-hg_=&rjR6FKb#!y#ep+gj}1ng?&^UwSTqN z$W`$Ugh_nYx(52F7%_tAWuN7~s_=jRIx@hrsDjxMXUb8)=c!!$V8)}EgsMxDf zZLP@nW~k?h{==t$D%z%rihr11#GsuFQT#*E>ZP^(2b${q1CRH#9aWmj-=p6CqgRmD z{meh`A2%Q$wl00HHs7v+@DW_UGv=*#L5poyhwF>)P+v5r&a&tHWOc5m+~N9XsIk)Y zNZOyJ_=e*BBDp@Jc!sXu%hRX9D*iOMJpY~I8w%Q#<@~UUb1p5#YrGZju&`+nok zsJ&r6<~ziT2KG@g^2s3uBZM!&{0;eMj|CNkXTTitV1hsWSF8f_Rp(_s!`~B{wY0qO zG~f%4o)2b!obsXvg1Gt6F!qx#Co%FFn|yh$VqH$g1N=Q=@1zo3pC~KebHq)%l%jU8 z%1Dg)8vH0v4Jae~M-08~*3U}I{t$O=QGwpYmzMqEov-+b8Ndsr^my=ijq5R`WPix_ z4DhMQJWsgr8i;#uu0$_Ngv<3|J_)`#+p>~+{Oou&df`%1cn!=)yTsL?b?GItkb6e_ zRh$gv!auS>=I6_@smxa;lu@N1R(iTp(O<_$R?QcUWZh#$>p%>E5Ug}1=( zZ}e!w{7X@354eB3lmDTw$wj~u$b5R;diJAzq4V|aa0XBFRG+nAPL50&~ec$Y32 zjp<&Lg@?fUf9T_`{}#gj8abJVyT;##mb@MzMCzMZ^L?jOC+cx1MD!QI{k>SfHw63z>+;p)wJH5+Laq@0-e>Sy>iQJ1YXpy%L%2RVL-etlk~t=(z~;79oHY))|f^&`R~C#EU8kCoO(@T zJ_bBRL7wxLVOD=CuhA?ld=P%W*I_D^{uLztB8Zb~O`&}eL9!idx_zT3Gd~k3^?UFc zfg>i-%h>_K6F{%RBmX4Mr};~L9qZ$Vub#;HFMp|5qXy#JZUV14_LKGZ&|~OYay+kx z_m$@bJ&Rk>8Du@(N1i{{&tI&b&d<|Z+8gv8QpTi_Uv_V4kDPB|Z}K!+Q{7AW8Pt@k zUP$Gdi>LH&7_V(#kxCWbd&vG#lYVE*z96<9@;ouV3b>KV>z6D%1kXvS`qxxynBgXR z5F@xgldD7;-8%0o^>gqWM?%xsU)x2#r~C}T=kc0k7tudJO=+buopLU97M=$6m4rg+ z)c32C_^+UiJ9JE=y(KMv8Q>S<-leg>t)rX|*4$p3mQKeW!XM+7@Yr6D(pkUHLEaz! z25CcMGN{TPd%6Fpal$WgXg>Qt?Kw+x&q}8j&FtiO7*CW;O6T=$g=GK8@nHW?3ltK5 z0sZ6hMd@^+Q$ZO&AZN61eLCxiSa=BV5`pK^`I%Z`952W3bQ;^t;+Fv)0sbIWH{0rd z7~nI0SlROXT2aE*vR)2Ijd^N(uro|(_`=~UXSw1@zMVmzsGtU)$`)|4XAfv zy~4bedC*>Ey>iB`boN`w!}mA0tZ$w?Je~asatmL9zYltv#`=W0qL!L)DvM`q!;#iz>RVnO0ltcJnd>>DI8OMIH*23@dF({$NI7$t*&O%$p`w&}m z486UQo!eI_LVKG*quHY&yKLwFnAw$NW@!HM6Md+0k!0HNF`JBU!32O0*t;y79KXlo zA@px#=W4H$V zL-Zv&cFbjrdzsAs0ADkqKNGj}Hfz_9qA;&7Tn`<^d7La-a6XBA=6@1Djm8DmGY^%- zeo!C9PXgDwE@GtA>p6GK{Z~49-yB9+h2NuIz z^A8j64B_?Mui5`2itpD*3Y{^8j%9zP^9*kH2C=@&3!Q&hw|)>cTVUZKz&~7`G>G+u zp6S2;!g?Gd-&*t_z&{L_I*9tuQanVDRqP|ADITI^`vJWE^`RUe8W{!l_GV3ntCgw%H5*cezk!A4rSWEe? zSR28(`aOFGKLX;MJ5^soNQU-cPmg5O}}J8Q4#tvf?4;KJw!F%47LGYUZey_ul+S zVthZ54=%O^{D_U{5iQK_%lYmH`u=0*`?B88eTlLEt6_f3|J;+9$1^-O@T1#?yQnuY zYiUor?)b4@_8p1wJ;HkY#HY7~hX7x(b`bLiuWxZZxhV5ocAR_WIsL1fqA!5`!@v3W ziyK@&>cFo|0Dt>}DBsQNvOX65!S?@xcs=?xsn?^A_;xmk#x1!jdJ526I$05Z>Q`ht z^e`qw1(8?6Wzjpp^~YTbB&%MROtEZ?w02Vy+hP5UM1{=zmLp!aXtI%|10%-VT$ZLspQA4!W-Zj zJlx9lns1wBeKq{ktj~DSqPm+T=JA8p@wzwniyP2h42Zqf`SAC{!b70mR`;ndorzs5 z^-aX!bGDvZEq~ARAA{|~K>8fDO17is#`zOw>=X~N{5t!Emry(e^sNuhUMlrZ920tb zOR6l9`YZRTQCM#|jP)Tei;j^OYSEvSsx0)dPLye{XkXRbh4SEnU^7o5()nR{(eg$2;^E z9s>6(lK0IFckG|zSx3FN)rwd{9OujRv#Ewn$C@#(5G{NM81^M?ThNy^8nz3M+kH?o z?sE*H4}|&J$(c=dRN#iQe!NAci2Dae>5p(f2W%qt zkFk>&&%c^4F+X789Z;X2+pHWl3o9soMdf+3Yb(7+mH^y7X`oIm>?{4~_r<dWXcg_w(-@t18y}bW9%h-`IZkc{Pjf*(YZJ&k0GoU?c$(&ftkU-|!;Kjs0NK^thC-2lM))_1Jvhk?WVeb>5+V9Y@Z0wb6Np9Q_>G zud#v7H>~t`V!iol!ZSes?p?eS&!HpsBDaL~g(r47GXGvo{6pYzQoOMvkJo*f@9=bd=v7-PtU#csUDB24EW!VbF;w;SOfuzjV` zgIc{FuJaJbS9sD<+i5!QaP7GlxtLbz@$l6?eEw!x8;Lf1W|1FV|8+^{AE0k`;KFka zxdycFZWjXxn$eg`BWAsJnw^wS=O4G9>pMXC1X>N@}Mad8o}H=TcIdMk|A=)|L*FZ=_3AMn1jUf+K)wwSB| z`t!a=W#3VpZiWuix4S)Nzv6}BpCRAVw|3!VUM>C^5<`EY*cRoVvA9!d+VHRP&q$n7 zhDz>H{uvHC%d&pKJbnMYu9joJ0Og;7{QT@a%0J_fM+9j*m4AkxA(Htj<)3l8X%wwm zt^6~-_cu_1#k=+WBY%2ny7JFxx|DghvC2OqVwds%`DcKaD9}myXY9HY%{qa~KcjH( zZdBP*@euCm9Vv5;ir1}b!|O2>4{`fw3)WLn@y6#(s8c@0Kls=+;QmX+-Kh?bcU261 zu#8TMhu}Vs{Y+I1{w}4e;vphzq9}B$ijjj{<)wItC*#672czOsCyUav7nT?``z>}M zw7$NDk3bB+!aCbjJmz2KnXf56VoV-ax?Vx?5C>a1(6i|(jy4sb>~B?UcFo5*9>qfp z8l00(ELL&fyH-5jRdL+hFWP@K6c6!x&}(hbJQY7{{z&WoLd9{hx3sB|iih|dby4d% zR>e)|gm(6bFuo)|PO_AD;^~L^u6z{P4<`iw+ zBo#*nq-k|Gs@T{+iR)=9{(hpTw)pZ$T@T{Z%$BU7qvDRqwY1Us70+-cIf~b4shIUJ zw7V5mTyU40R&|MCv&4h8RexK+jP8;;wvnR$)B{6paf z)}}F=Rm^>x$!1oP)JL#h@woc{)0Y&*Lu^l-YRc7K@eMaJx0sB*RGjzjIn&BS6~`C9 zXKGnb@eiA~DR+?KA5OkHX6i9%n6Cej(dn$o zzK-G_hF&^ux_EIY=Z~`y^68s?oiXi8AFA^Y6_?#H^{uD)hqs;Yn=bzzqVo*{e5}mr zKULiNR5tUE!$V|!DDp9TVm_MQ#Sf9=gNa~l*1RJ`@ehZ`SevI>Dc*s{w&n_72J1Y8 zInLSK_1a)v@8NdCKy%g8DsC7TYz~|^Sl54O7ZPm#&|UEk6>k?YcVxW<{n>F)oUCU}nTzIfsf_Z^oQ(BT?6TVEun{oo$J-UJf;;E?$ky59eC8W6b&L zbTjiH<`=Mb4)c{uc{`gkTdR0-zINt56%@}f)}y!iwTFt6U51&xe+@$ZUi2TD6dr1R z$^9?Zih@rFA3EARbf=1UoEvH89Hy?{FxGdRxkGOiJ9iy#Zdyylb52h%pAA;L1M4yK z^$vm_wS2>uMx~gG-%H3sE*s-R`;;rDRlWLf{@X_M9eQtGVmRc{joXKtG2ljov6g#) z7S%xU58cnK(;}+0O3^R;$W6z}jT=Pd5eRD9ybWX@Ar_y(+h z9ndsGYc<3YW4`pnG*)|LR55F_X?_n|3LgO;;=qD|TANhGKa6SBRV(45c!xTJTWKFJ zw~+b;>gDV$rmbnM_y_3M{PWwwGvN5mE0K0}kBUd{Db0C4#XE!=L)jBR#WD4LwVJ1z z>3R_9r9Ak275~6|f>!@}Q#n5JX&*}E)5;B0`~$ylTGMa;=={Uyf4&(~#wh-w^VVmE zR)PP>{xN5pdHjZ#}@*6#>t<(Ib*5Uf+2h>Z9A#>mH z_b`_0C-1m_DsHTnP?G%&72oiWXK~iEQ}Mcc#b{4(w65O(KH=&G#XAg44P(E1#XDrb zR)lt(Q#?bBS)n{%S21hxQ=tGAe+meq9>*2mF#DrF&*xNpwqO9=`^PBtee|i`Y5p{{ zsNx;0dijy-3&lJ9h~u2|L=_{Sy1OHBy>O+>0aDs|(XHGn#(FQu6N-0WEl8TyRmGU! z-YKOCkAQsVJ6m`9@SoxxFu&+NUGWac*DtE8cn9$Asm~Peurrr4ofxg+74MwMvr?4Q zOVNK|{FL}q@ech1U8vMV#XGF;=|tf{Duy3nhy4+{KSlHo7s_lMA@zFH05RWN{Jw(D zKg@XHN?y|{@cQtJ$e(MYR(Y@Y+Lf3qvkH(37xxo^Z6UvBBF_=g2UO3>chiht-8R*H@{ z{2%_|S{WL3+`>Cx{&#Uyd5Wy4_=k|-NX}0w{^9mf1K0c%|1hnqk@Yhb|6rTD5?`<4 zA08}wt4t@wxfi|SIla~A#q z^S$-~^{8Ym#Y6n6UZ3*;MRXp*Z&Mue{zas|j~q{%hH-ScUzpU75r2(sM3ak#$#?|y zQ}}g6J`I)c7wQwW>i$FQiGu!?>raJPzr8irY(ld(_3cdHN&OynqM40D#lHe`g^tPH zdA&m@fA3SpZ_BlEB5i9L3Z93+EPT#2g6sLAS#diTupWI6dVX&#IZY1bdi-4WS#D2P z#-_1^Z9QR{hD!0CehF~g{9t(`q|O=iLBQgB>eE+g>%S!cmn;qH!utJ z3!Kx2r18ub1jzV>a|TrWcn0;Z6d>a-Xi{`|kiqLA{bhW~?-$Qy$J4lje!^G4Qvkd} zk?+2;ULXAImpi=f-2wg>Pc__+R?%s+sG$$9@4u^o2f1-Dm0Hd67TyK*rG&+)oPYC@ z{t5Lm+}DC3Uc%#mM;(?kl?=(ASv?+q=X!h{s`n#>X5I3T@e*o_uOFpyKHfu~KfZ7I z-P7n)lsos|J0{R@2W z&LpSP{NnlL_uzAlO<3PzgssHjD}NP9r;N)s{C#XG>v^FsFe%(dcth0mPX9<_jr@G_ zJ;nN@7S`!>=6YUk|K9RG9ekcftIAq<2=E+z52n%SlsuT9iDzs0Y}V_zl3REb%wZ-M zOe5F4xrJ8+kJG17Dh-Xvl?Cku=%YB!Na6WyPUZzFaX(*}*IK7gs%=i@SHlVIXLeW$ zJxa{M-nv>@@>Z`Qv z=qGY7Gn()BFRtgW;X2wU)?ygV`X@h8AK)C<3)X%}rguZWXQFR_pWCk;qv-zruc%+K zKExKzeI&8p&X-JhGt4`-AjcA1?VN&|zl_4*~umu4n@1?-dV`QZ<2W+9@8QX7>K%UjLEK zKisI-hyBwYp?=CbVe@FAp*wp5hzWdD>{zW;p*Jj0RQA2RXn0`I?gv>RRS`CgA>%DB_6@rs8yw9bX|hjM?B|E04r zuH@HLcoT`|R&e7st$2v47u?9*#lk}%AJKh~JL{Lc;QC8Z$xrkg>p}b0TX+a;{}kd$ zGny+N;>s=7Y{+lnAyEInun>9z79IlnKdbHxZl%b_+`6!-WA>f$Ae!+%q@!^1bBo&^Zc2&yDjxv@EoY` z)H!!c*1sagcx%%2n^GUbv7kp>EQ$T*9(wV}nZ+{*2E-g4bg{(4yDJm%bpU=ei595K)1E8mImfPnw z;SG9SV1D@9nM}?*5Wc7I?_RUxbS82UJYFP|(VKjSoMOHp8*&pg`K2fK0Vh%KlK$~~ ze@|+0?6_PHm`d<3ryCp-eG%*f`q=;cK7#tBw1e2WR_fJ{! zeHed^Jx_igkoE~rp)-!|R5Jeo*$!SYZx1(WUTMGZ5ZLGG<*wWx?-SmFYhbi+peuW( zWXbQL&yiTsjn0?N6dnZM_h)|YRJNTN{gc!jP+xnVZsPvpUpap7Al8a@+yj3g4W2S} zqdaM3hh1{N;c@eg{m;wV?#KiyjP_78{iwp(c?hPuyBJa6gy_NTtC0Ftfd;m?RBPHFY1*Oe?-&3)ERPpI3L@l8tW%a z7v2IjM5_%kl+SM3pL%q1RG3v&W~8R@^&FJ?;()c)Sbxl-4}pL4URj;r=ZSyL*P6Xw ztMhu>33~n5zhNxV)(o^?Tu)?d=bHSzNEhA$^~jeO*biY)nw%exmknow;gkJ{$oaBoTlRhZVTsW`Sj&@gokBL51)>@^E9RA)7-59oG+<#x0CuqoPF$S=IpeLoqf7*+_5lqJZ5>D(vW#J)kzv^yuq{{tX;`au; zpL5sQVcfcxzlXw$SQjoNei?W-@S9mB3etq9*Vw<}rSJ^9#^+)N`MkvFuR7=CI>D%u z%nO_pzG24nTy)9r2>1&5`}=otQ@LmR^f=em+%&7cX)iw;;lGx-+0gU?{|c{w_L?J|L;KssX^jeeS5J%cFfPNkQmQ*u7?BB%SC#8^^GG9zdu*!8Nd@5l4s~K zdoM5#Jz1_F*ViM$g}#1H72X5+rX;fC@!=5R9WbA}^|}z1=+a&19ir#haevWT=N*b% zv!ek6<8y%(xcB36~4d z*Vyek?=W(d4OMhlY{t8c@2UGLTN*QTl59sC%6`p;_`d3T5I?@#vL07!Guk`aqhIy{ zydI~V{5|5ym-5rH6k9Xq%7`;M6`~@ykDC7KK``6F^RIrUzy25pPdie+52<_p`e775 zXi%Pda=FEGxVEZm;!h4xSRP?yc1ZD z1v`j8W@L@%&(hz8(HSQ@xab#+>J6sIa&4&)Au(9Ch(h{u!72$}^9o{4=(fufQIE z%0HuYy$JSSQT`bY9V2bLUG_>gL#Z|{_U#;2JY=MazRzyGqFcsy`Y zk4+nlRQjOu�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

rGg8vSmow|{PUp*@?~7JMBIK12FO+OSX^KLYV* zVBSmZRhzcVcfk0Pev-Dnwhj0dJijPspnX%V4fJ z`7szHoB9W}K9{`^4{-jrf!RLo@mroeU*IExO6}DS9_-2W&cIh^{oJdaV(P{71Nn%D zMSHZvZM+zd2mff>yA*Btcb<&LfG?0?zFfOl>q+}pZOUI~h-dF+YwPy*B)rs%?P{w# zXfxKg;QC^k-<0pGp`B~og7;(aHSQ)p&v|F=!F(3vl)KbCl5<@)XMYSlYx=JhIVYkF z{D=Q$_sCiGt106{^iD|s>-V9r$xXO^ANhpQUz5Gsym067qWL2VZru0M__%`~$T6kU zt`c-cFz_Elq5X}>@|pY zW;<=ys0RlA1C5tvw6in&2doLqsjFLbd0E7axn3cG>X1hJ@@JDvVO$2 zwf2OcIYO@l{6_CXUJi7Aa>V+i{n*ueL-VGD*Ego;`9o)pX5Rlt)mg_y^?hGoz)ng) zu~8JU0GqjI?D*K&q7rtuA{Lm~Sg6?D-N>A=TP*DEZtQy2+WfxE>-o>)Ff(`VJ+aST z@3Z!k#`V>LRb>(1*_pvkn02|f&?)_(*JU!-2(4{qzOm(3Kg^%m%zl|0n%@=cqXtg# z=lp2SdcBkR@4kU*<0yal12Et4)bP$T964cs>3`f0k6k|k`Ds7#AL0Br=2s-}6hF~p z*{5rN8HzKL<%H*<9#i4+K-6a~E4(Rd0DRisANi%S5-;Ids}%?O;*3`roWF;U1!9c; zBm2M)u(a^HjAvff>kG}Il=u-)^Xjd@5Y#Fq@hBM{oW+12sju*r)IiaPluOr=cpfpx zYc_#4+D9GV>?7yP*)CJ1uNwTSgz&^XZwzls5V?qz`7T&@)kTGpGt_OII zV&G9PDfDl6@pV)6))hs3`G9AE)$|g5kl!gP{L1cAd)15~1Jr~hFX+_{=93Nfsic^J z$a#AqezG^CzrydUAN)7yC-EM-`4V-{zK3ejuQ2^Kz#mMN{Pg)Yg@mVId`kb1+f55{ zev$p|mWFL`{yvqDVD5A2f|lyo!u%57GDhEYp(V~E=EMD2DCd{S#~jF$PvT4R6pn4$ zsy>4}Wq-o9n@g}-w>2-Wcbw>xxq~{YekJpwK0`G2w{=v;gJCLWNoqX}`eE-l)=6#o z=^=h{e4TtmzYp#*UoqaC`>O-;Z#EtxE+Q0ux^AN1bI-hULMZ%nHh*L(jXxe>%7D5RB(n{MQE_2(F@kbANnm=3sSVimULf z^&TcD^NEpabUIh@Gnn=Ew=y-Rr<;rD`HpS!n3H10s>}{9=r8xs--?)z4I7L7xijYf z+wem0HV4%og?ziS>_0eWeA@Sezk!SFx9IsY-nlFM5?q8Yr{`VD+Hm#wzKh&1?r}1W z?1(eMt{6`X@I23|w(hM}-oCEn2UV+_Z`GE*EwM*%6@DAzU%Aw8p|VVI5k8sE`}Ogr z@b7RIzc%P$sNLOE4WI2S{%mBJd0udO2WJ_73SK2L343;1A*` zzlZy)j1A#QQO+@qU;q12Dcv&{=U?F=cz$mN>SZuL!~Aj8z$#$8b720@E&4@~KNV2} zFuT;Jq8>SKS$X(jW|R1v@WxvGnaluj?x_}+m4>@ny?P_uOr=*kdLVaRpo)T((&_C$6{lH;Gsfja7 zpoYpH=({s8f6Y`EO8KZV`F=w`Sj>EcTD!lbT9WWH?e)cd%BUlEe}E^bE%m$`U-DDs zK76_G3 zL(eLXd_*oa`27la6sGz?un!E1S`H7ecXD1F`D&c)U4j||Z$*#gJ-E{#-Y9NK^@Cu1 z*5>&Fa1bv=FA{yDTbxn++jE=`%?%!@u-ch04|~98q8D<{*P`kI6XJ zA3!hhQpo?S>SI?LI+5*F;ulBWq0PVh;!i;SHRHh*#-jrF#UFs5kNTQM&eHe9kAUaf z>Hjb^?_H^%!S874vB+3G{Wk9(<7wm8-+9ouZ;GBqje@m|6YAd(y@;BDhxZ&K^UQ1X z13;Y(L(O?S!*I!ZmHHX#!3|(MX-r#@%_d~uGcevq{&F$=4U(x(OMQ*r z-pinAB@0hLe;4v2nNMH-zj_>_)T$wKjqVx9BY29Q7BeBgl9nf zWNi4AP8E88+{*ne;!9)3IR{nX;W6<;;CS&YnNf{>bX52NKL6kOvm(!NRQezL)66xw zRP4ATqUZBGxyL+LtjC9iS7AGUArEN!heV$w-#|a-R?DpNe(IIUISZ;~bF}F3)Q~bB zEUc=8TjcM#zsa|-IQGDa;%9^Xqv0O!i+XYgg)gAKN#0@C`viGE<@eL2C47;cVPU~ku#J1ZnRP*TW=SBgY$p+sMZ)0TV;M> ze9H6qW2bHr-hez1Yh%xuwi)wVgq+`6cB(n@M4PRQ1(^e_P`!onbl!yfc|l=LK>eJS z$_U%Q=c(dqo>etlwN@^R)=B*!=0q1&ZmaU2UW4B^iRaPOhI{Q$4`h|h@8k#CmhYg> zl~@Tqy1V#|d3_I2mu4-O@8_B~_IQ}8abYRy8;w=yuWEj)PB_221mkl&G>xU|XIN+G zgo~t2zon4uUDRp&csak%&n(xlD?V=l=C2T*M*{2CU7dBD&;BmwOZT7ap}MS@$NC1M zuYXz53o*f5>ibg9XlBK}>eQ>*QeT5P;$AuXtELraaek2eukXzP>g|^q!mDx3qF-H5 z@oCcL-_I^GP$iz7EPM)ilFS49t2y~62|q%9Inb_;dgDG`=3~C!J+V91_h{)KTu&~P z>VcSll=OFwiNNOF5!Viv^^p1Lv4gr|4>44pFXx+uojYSr86><0$4`f*Au8Zbf8le; zKa88$QC)o7NBm33-=JPD^roKj`Sc_CzNVwvu&kT#E^PPf+!3Ba;qrU9-hO-81~rI6 zWW2CFFSMB&?iHNIKe!GL0OMczHj z-{QhIE$Hj4(mfuo=AZFG{Giakv#E=pMykIb3xLmxmG#}IAE|nr$Sc>!`J#TxK-?d9 z`F-3U&pg>1@rA4Kcbt#AJn0QjFK6*zV7pqQK5Ea=T;PLJ>ziy$?yWl2&Ov_(si*Pi zTtA#6$&$u9+-^ERy~~_Q=69@Lrd=Zjs^>xJ)7o2?4#NJxPTI_u`M2z^{`5@cAfeN(o+$csjVvxIUyZAxfAfBS zdhep<1YNYXJLXm=qt4;;vWdQ4H4u#Zf>Ywx!2WsQh$ndeW4u1$cj{U5EBj?uO_qWA zfmllc_&+3|K1MZz`2o+R1<>DiYsR8nKdMINQ*l|gX~r((`{<1yziCn(-9Z(B~&y5tqh;$6%edaYnf>E-JQuoV2+<`#;NxJv01$lP73?7T4>lfj5nNGomy%cQcmU1H(b zWPH?oS0?q`BUbnbj_E5sGb`2z#@_}~U${^zi#oJ3Ncac74)zH(+&FV>MaTL7QV~zpa6n6W zo%`>k=K0lsKHa5Fp5H?iQ8{yW;<+{PUz}FDDC_DWm!4bU`Cu**vl zr$R}I(aEZ_T`JKRyx(f6jYJKZ=L0g;*l95LLgw73eOYz(`#xd4nd6z(tsH82VV{A| zXUs6Ql0VLfTt(k<5q;HfZh$%${zz&GGRB#EuM+%XE()JOeREI>_b`v7O+B>A;ws2_ zd`oM8xD%Mx<{HqVwL*Q=ILWPJ{)bngQblWb7XATzAZqIdqQ*vlc|ZLi<|bBEuT+$@ zneUnMv?A)KOp~>c`|k(;RTR%Tp50=5*!TeWQEg*xAATw`)%b$}@VwlFymBg^W4e{u zdL8GR|HnVvzLVKnHPFU4%=?(hdT{?R=8v&oTW5^_lF7Q&IU=o{#VwQ7AG`zRI`}2+ zG@9ngWX=4{)}Eg)6FzTv+UpYwWwL&rVQZiF%4B8zfd9SUrFbUm2tOO&u*)Ztbx@S8 z{W3X&wcnS>G@c>mdIsx%)opx(Yy0%p2M0!o9?t7^k9V*xa37h*FIdsO+tJoe%wTVw zd2(bL&)|yo!)!L5;k=!_HKDPs?X}{M?tXTZ==Ie9*TwzOjkAqTYd^jELzfO6E#HTG zZk%25Mfcw^TJovXYt{#S*56)^#(DYaGG9MB_g>?Sk(~FZ9x&JCt-d;MjOgQ>&n+IW zboJyha-NCrx7K^12lid&^D#f`FFH!j$MEmZMPAZv9z}`2Dz7K6dy-E67zMwICWvRI z8dooz)zw_0p{K!@4cEW){YibsKl%`3Q);-|Hy_hpZX&kkv4OEmJIN5zje zUoorRHaA-QX1NBLVl4U${3Cc)i!t=<42k+;u4t);!ToH^gakeROe+7teBb$u2XuM- z9-h@@zR)>lpT1;{l6)fhh1Oa2>X?*N{sHqnYG3U}J(MxjcNE9(#az2|%X_264}#;> zVcrg@N5Wh*`Gtv|+jZp0QNpwE9wjW_s`m$ulIKZ&!6?2(f7>=v_y_U}q1!j@^+eAKh zVdvGlS=ZsxKe*>;_hBXYh6wS4phj?T^a{PDVTAAuJRf;3+j9NEn(7z9{SoppxZYus z@8*6W>f>Vl{r*t7pVSAO?l06C!8>topgx?x@_hX(E|quS{<`l^@DN*uNxgZlu?us| z)>)1X6aNFQpXKV#)Nl8u@&Q~AJhDvJ`_By%KMCegu9TamlTN1c6^tLxRGO-@pC3lO zNpTIgA3Is^0Z+wiiP2TTcQDt){{3-Dj3#gOzjn}~7}QI!wRbIu(eF?H|LrS@ zscrUOzTSPSt!*D41HS`Xd*$L7oiyFnE}AVyUl=!x`nUAw!P#SUWPe-xXpR{DFWAVbW%dF~+5* zUfn#5_n&K=@xZaCPN`&TAN|r@PbnBC=c^fip?o;&bl%b`R?spLky2mUG&e4c0d&8DH_41NGc;t);&(U%GmYzxI2b>JP#A&%R!1eY0Il z(Np<*w=^rOLws6_9|iYFsE4gD|7sy^uHh~EmDV4QwIE+3`hlHo_qF(ZjQ%z3^l{I+|ECvEQ(pi5vgE2=8|%9R;$d9R$DbA_ zJ6n5t_zz3PQ>nZIpZ}~}KP?NRQ~3y9!-qaUEo&OrlIs^ex5<0Uz#lcS9zK=*9pZ7z zf7Qp0TszvvKcK!-V3vn|@;d(p^}qw0 zx3}>R!&X!=9otck@gDLu!;PO=gG}YhmJ_~&yhEFR-Apsrl$HL-^`ydriKc{aHvSX`h8<=_&?ith=8VfjMW=$JOuU?@VhQ9`~>5_@4ftu_4&PVzY1dh zF=73xY* zb6qN--gYh}e*58$mCa30)>OOOmPP!Q%ly*2nVEWaDew)2xBHvx>>X#maH|hI^a8Nn z)-$7qm-$Djek#{HfB0|JGSBgtYks+}A8HEv^LovacKpw^mT3;p=Q)d`7 zOF!`&p}vE&5Nclu`cD)TJ;}R3f1F`1hv(yK4hR@$uJNWf^6OCnurhV0kW2MsgAEyF+;IZc``X{gH zjeBo3+QV1$O2!;poqHo6Qd0D5@@e}b`>GY=eI$P3`E`eR1E9~B!1&q%{d=PNmwp)h z4T@tw@d)|lov0l=5=@6T*Bdj>K<)i6O0^l}4ZkvPGZ~Xnv!YOMu^86BVrHC2RD-UM z#T-x!yhu4S>!Y;0F;10rF9u$+j=5duUn+0;@v2O0QS|rPW(0JA1uNV0}GntBs z1IHrA?S=80$4pJJ#fIT3{BvQf_jYFT7B{~1f`(ZLpMMeh`f8QMZL$B$FYzgPiRs~OrG5tYU;O_++UCA6$(!^PuXvf z@7fg6Nev&8SL*Arz2Rmj=&gCu+UwefsXCeS2>(J2;bqQnRc25sA3=Vh!KN^^c%{4W zE6hQCxfY6imYd9f)F<=aWxn1`=2PnR2j7OPh0$)p<8qIY>skoTu)A@7m*2N?Ot{MX zGdFngoX88uAXnZ+sjaygFF+5EgTB*K?W>(zK975fF3riixQago<_Gn+-T>4raOHT! zdBtnWxz_;fuU&CJV}(y3FH@nqtL)cUFDkx9H`H@*mHvb^R=s;2iu`cu`>FAE?tmKD zhg`)Uf;Cg>N3~OD7t^02hWR#SpWFie1+L)J4nPlnCwfcEd#)HC_n{wTG|yYsLOF!G z%KnS{k+=&%$hW#2;=SUYs&qs%_!YQFe9bf8^FB5~{?kS3bMX9Vv2BgjwqY*94{`tV z@LfZdC!dS>6EMbKQ@=jWi#W@EgdP-2oNB9?znx^i#54J`7F9u=D%pm5u2IG^SyzmMyk)01kr$Bx2ZP-8jJznU_w$tC@P`seLC zl~w*>Ic5Fic)szWygC<|1H8i_$=~lxsGw>e%r5Z~_a}`UE2x3iY_c9QKQlI8c{Rm8 zoA6ECU%mM1ueLPID)R&NnYz#XROxwH#Q%$a2=```Q>*W1mj1=@ekZD|>g<(S`XATt z6$i?ohD|1^FUdLT$g0xFw`3H*4(3e3lOq3|L3mp3PhCd)sIuiV2roh2YJ7BY^|DKP z@k?a?>~P0hO_=K-zn9Moe4ui+*b5KC`*$@<3Dr28y*yv;*D}`iL46H7xjw!>!+Ia= z`_hp&W`00zt5Fia=O6WI$wzHU@2d`e`Xl-S$LyXzzUpR;-@-5OZ=Pl?i}R(wz%TR? zed&w#Q_KB-iXOo;L9=HCsL19&z#~Kn&#=f7HNV<@hh7Em68IbQe&s9n4f^snc|G!^ z5A?OK@V`DU^Y`r^1=OTtUr^8fp47wOdBb_3U#K^TUU+X#CY(V^!5N#&QeSM`#J@)E z&MESK@=)~a-Tdz}^qC`yKZE(dD%lPiSG_;s zJn}9%gM@lqhTo2l!Xt2gcO0_J$d~j%^eN`-N)BFX++O!y^i?u9mu4+SJ>++yNAdM; zrQ!{v_*?KIjpcfi$IdreEqg8Je;F^FdKG7U-t)j^Vp&{{KYIry@Q!I=zcGew}?J`V`l% zl_g@0?S&qSeoH3*xaUIDe|})4cE+4%pGT_=2k!^)r+*AzD<7#3G2`5Q-ftN%@D?`S zez_;tOFgXc({;w5uXjbyqn>@=f1S~O^BvK@8P8S!xXKt;o;*Yb@ne~sX)bE8-{kpy zgMK{lBSX!&>(XXC+563G<7~I9yua8_bpR_d&G;LdO#M#s`zFh5;R(2R=lqlNzXite zXIFUtC5Jk-#RB8l!qhhNyQoWQ*zdb6dObZvdiGpsbnJc^=VQNsXI}SbKt zadoo6H??hKobi6<71XD{E}uWMf4uRrJNbmC#`or(RB~v%(KzyomA{R8?SN)T_Gkzwi;IX_K)GSf(H)c$Zqcm=Rb|OZ4`7$ zhPd-;{|Y}Q$x7ZyHzNrR8Z=eB3Shb+SL z-(V~{{msbH`!ugd&f6~c|BLgXr{wV*X=is95>ZH@rG`=LHdS2yim&!*l-W%Xh z05uK{3%^2Mu6bNx_^GGz5$v;nM|p#9u!`RT`)8fkB@{|_O8=z(_3C+PoTs-_tt z`vX++zC_WJsXx>IxaY5f@;b+3|G6gAlS&YMo9*cxYN)kY6NG1ApN>3PUzrCV5FUZ; zu(ge#XY7|Y_16rmf>c7|edK#&zGHm@`@}smp1B_BW$o11*xfRo$p@aP6s*kocZvSa z996h(uXfLY0)(;7@jd@cF#OTB%k`2Ms#7Bv^*gqrKf-qb=eaKKYO5}%+Y0}MIPpt> zUngrY;(k8|zx+X%f_p7C9u`eF#@o#;g**1~QlLD|bPSpA}Ymy|Dj3&)*H2 z#WIYaHON11SI8f!(%wtO&w)H{&J{gX{IJEco-hWU5YiL8alBkVW0;$Bd#P(v7n08r zKen*7eN?uh3#^Pa$%Ayf-cNNo87KZdTwkje7^F^BpNI8=zF##Fiw?zk);VdfQ~%EK zV3y41jL(<*kH#D@Q~sX3b3L~x_2$rYX*1`%Y|dz$!JlH~*ks%5`xxvACR2Zw_$WCv zQe9X+LDoO=lQ9z_)uT4!gy&!z{(P#z_9%`oIgi(V*dTBrBRC$Rj}}zhk_I409fA3& z2jZaouv11oh?K#?cW_L($HRke)&O}w`+r=`UTR|HzQUU@2K{W`Tg3(Ug#XPj;RB~< z>jnn1tGu7{InGCcr|cv=0o(lE85u*R{s`O8`-S7a2Fv$z|CBpjCv|s38>uJ5_MoUx zoWW}$en_0ZUW{!AeZH~Ge{#L$Le$Fn^<{mL^KTbAfq$$e;~Ddf%Hq~djq6cO>P?Yn z=-aoq+Wpid&x7&F_P_m5L#qnasA zzC2oW&X`yHXqbQL+IX1ySjJuEW2_OT)hAI`F5XqvC-Mb_I`vg!T%55Ut%6?J!Zbg& zpK2YEOWMrud~xi9`YYMFUds8M+#CAijA9n9Pm+%soo=9twPZ|d?<+A#UCf$3t-Z6s zVAZ3wU0ORS&j8hZ_+L#egY)&)4}Dcg^`F$Qv0l$NzLvw*4U-ZZ_oiwb)CSoCT1c@zC23O2Ye=l7YP z>z2zEekHfSFCP8aMOz3ctX1i=cIyb1&DALBj zx>R#5WBhY|NM87L#B1ukWDC2!byLgN#>x8`Gd#@Z0%m!RJU{Y_U#n$9jq=&JzF_DR zPmN^X42ow!8Bf!r;$1s?wfN3VP3?*63(hkeF%4$m%x}2VgIx6Y4LH}ynpzOQ&+-d# z+XDz_-w2U%Gkz&({btk)aMS!Z^LM_he;cdwWD|aZ{6~|Q=`hFH@%Pam!c-^89{xU`g-2kH zdfq+Z8*R;T`yTvo#sj&5?`c{rtRj!!uFm zPiuE}_%F)*!t?p+qt%ydd?yS~k;vM#xvh|daSJXc{)b~WqMoJ4*X z??=WjImnSEa%?dF`>U!W_RG}|Qp@6=b?#v&HEqS>K=yC;zw9P=)Fb?W+_MAL6;D-g zNnUm9^n*aI9rTBbN%2Jg>4(p@6CV7*wfxvut>E0m^Q&r$yBGX2W8k&nB>KJHakfoYdoe~g!_ z`<7F0oLi=~5AF0}!vL-T4FGlerQTjA$Hb zq{i>-<-7$LeW~4!`9jfOa&whxa((1A&t9uak1hE=zCYK2D)2BJn$|A#zJgj67?Z|B z)S6g<{UyyGBF7AW^?LorG#Jzvgz@VxjO)(u~6?QL^& zSWh&y@eM_0ATZgJFK&{x1YARj{TSF2SNS+ zN2z}}pFdjsYB`5_IsVhx_So7L>ip78GN#sR;Oo<~ebY^wkCER`-r(Ji6dg8s4D!Fw zo-pVAD)LdkxHm?45RSju?co>U9wq1b`MSCFYrUm>6!IlgMK2ya;-&u6C`!(o@O69N z=el2K8{d%M;gO!aAc}gc@D0Vg-qpLeM@hbn-~X@hT|MNKt-WQ{Eq(fFl=z==4y{w{ zsxI(1iur!|zVE#*>(2$Fao(q!Tgbx$lAq&v>QVKeTp!{e8IK(k4(PS}Q~3w3IjaKq>oSArZ?S^c4{x2lsK*h7 z{MT~HpPs9>M{l|?M)(KL7hy+t>29^g$oWL(*J{_@iO(A?eh|!&4nMaYUP!4t3uBxu z&9-T;6{Dmc2Kj|@H@4^}uA}6<9r*=^(9Jq2W~7{NB)@R=`9?kScPjrte&Kun4cfbZ zD!;=uHt)}Mdd}lWdEWH1xjkX6PS-k8_yxw~jU3nLJZFZB9|ZUN9ha=qnT_F+ujMo8 zS8^qIj0or(Glj>F+P7RgdPT_VjDO*kr^iG8r=K13cXbvn(Vwah6F&{+ld_G7*Ii>+ z&tkf)-0I|6#UkMIlI zpT+8%#cb`sld*bsk%%;&VfLnI^2xFK z$G22|f#c=rrE~GvR$@Yww;hMK7v62zn=cm2hVE__J~Pfn#rskLRd=QQ6#OdZc!$*je;&tf?x& zb(sFMEKK+V#+bX?4$%?w!=T^n7CymTbqM?`Z0%}22k9aM!ss`QIXas$z4jpe9lXT< z+TiDPe2uU)ULj)l0NupP*7lx00DdC2c4x2t`rgw}a(;lm-o{)9LoHdqZhJH79`UsxV2`~de~ zo3~WfA=!g5pPiHa$oH7a`e@yD!e{V)Ciofp(YCha1I3Rc`b`DY+hN-Q*E7yk{8k11 z>3kdUOJEEYzM>-hZd%LdaXon$SzZTjY=!H4Y9d2jt!IF~nx&QKqvRE~CHZN1VDr4U z@VBcg`soGbTgm4$C)qf>oDNQEDc8$*dDr>Udi^x=6UnWQWiXIUV@L4@6m0e%>R#%=Mb0)dMGwHVr-RS1hyM3J-zzcY#0S zB}+t!YVvvfO!Ksh7UQZ}+W5Y}uojms360IXAHs{&ta8aR=(^(hV&QEn`(Ln}3s>^| zIX-(WOR~ULRelfK|LwVe-)BgF6h3=$qNTjmB)kFh$DapmvG_JJ$$H5BS-z1gED5Dd za$c9`_p05TYgzmwQ1myB;SK@AEfJA{avqv7;OZwWE$3fWP4j0M*Q~xpnXAft$$Y`Q zc*BA-wZcCzU-$~{$b6yFD3`?)HXje z=l9>HLJMp>#IyEUjl$=>slW4lq){}RhfyfIjfaTpQp`Bl!R7~n`ojilzzbi+F@t)& z#=m)9|GOSjk97TvEkA935ar5789BSz_y_ajvG8*ie*hUz_Q`YMXI+Hvr#}~1fVIY~ zi$#Q=#r&;~B_$i}jbexgE^z;Ce&CoDTxSW6clg(rGMA3h>}Ef4GCM z=xla+5~|D_%Ao&eG$S8pE_^CXmHAg%t{=G=^Ydxl)!p-@#h(o8fofTS>`|-vh;*r=PP_J#=NT4um?PjOJe*@k@IP{9QvsHc}q%sMStR`oP*SG z_-#y|zZLnI@oIeC5h_QE65xkZaGuhljz&kplc6}qtCtyjSTG7v>UibixPQTBp6N@! zB?^A4-q^1cQOqxFDjbdatKOpLa!sfc5)BXXVp3m(%-^JyQR-BtV&ttPe^%r{l$zPU zDDMx?V;NW9M63Vad&&8Ej+gk6<50t${t-3Ih%r=+EaOzb9rhOwGd%_9zY#sJFy^Cl zX6COakLZp4dO^e|=aDapRqo5e)vDPA#6N<(@XdB1@EOT3@hbHzo^K0Zkx$}3=73st z!TGm`p5i}8Cd;c^m^xX;^AOMeGoO6P90tZVFZm+5pQr~0jnl?MJU$Yp^0&0Lt?`|Z zZ}bozo9}$1c-%Zx{oCoz-z(=0>F1oWv%ByvjJL^a zT>j-I@hJ82i7neB=j|r`5Io;-dMG?GeB8vZ2jf>=ycmLdxo+4$6y^O!?cGq-)5A?Z zpG?BW_)xX%X>O^S@;UfD-?vZyiMUBB7F4CXL z$N1i>r(%1#$n#~*!KC}O(8pbbzvh|$ofE2IygQ@6EGMt7p12xnKs#sIe~^EG-<9&r z;f(t;7Jdb@RK5>Ya6Zimd`x}uF97eUqJy2p|A_ieU>*~E^&I7XQu9D9Ta~k$qwvk# z?`#}ZRpnZoOX6kBxyogK1@Iv`(SP?#4#R07ytL;Tg4FYVbV zK&|o1&iDiQpK9v(Uw_rCYc}v5btPY)uC+h>F0;z(%;!fo_fx(%v&j6wH4!y`RGunX zgdZXQcB*4pWeLhG`xo((xljuE_)M}trheY@u&)|>CZq80)WcAF7xi*7ik}FX?Dx-n z)Sw2b{t$fs_x|u3jY=>5g?dl+IX=qR?;tz{`^4>IKFBxO3%|xa@?xuxn&xOP`2fy8 z^k1+aYsdO%Qh(ilSZUO&NGE&*^^7uA%D{6Zo%BEE!}3lntD4XHo2JLZ&qy^d@<;R> z?(c3Df+zdSU!wm}-@CH9JnEbL1dq^2^qyl$Io%hWKhA7spEy!BxAOX&g7dW> zMPItpDT}(hCk1{1_hr91A@g^`=WGh}$D6`Olni=kgmg@S9&%cEiZ71mjm^hDBL{O( z_=MtJEja)7S@;J&bKjoZjUGXttn^~%?;-Cn0Xzhs4ReObMH=5@KFIl9$$1}L2+!pA zRmK7KfbuThYhZpMJHDGfwt(s_z_U=rJsXyl+NGCl8<> zCy1ZKNvBQlo47C6%Y1yx!|M&FllP?l1m+u~nAbX^W5QkNfv*j&ALFCf8Kp+u5q*nH z!K|=($d%p_zX8VFnLflJ2Ydt9pBd+w{ME@Nv*BNH&C0cm@#2$Pv50Z63je_IxpMw2 zBf4g?_(yP#X0G(e&nu$uGY8xJY@9LW{1y6dNX|2OZ=4aAKAGpYC1<UNZGc zd0zgfPZ>MwT*dj_V+QlrGuoUrUQbOXe}Q~`AH&&l&d`nc`_75~@v^p;jf=%E3y;8j z#JHc=u*beAZJx($cI&pG4_}b;=ZrtE|9oWB>yspW3}f(Xt=^!&oJW0^t+HQRlJLo> z{P}DepF?gr@W~nRzn}(JxNSOB{MKpF6S+Ujoz6j7Hk=Y3hT~z9H6wh7PKv)g{c1)J z&I-Tw6H-5c`sCs}xiF`kurglZ@9){jMb)fw97(vmG9JSnJupsE{UgYuHGh#$MfN`m zecp|_0BTDVP(ihhh<^s>LubEYs6lmD>eFD)r+N%7u7<8XBz_L;51$8=RtuUP68{A9 z+1a<3Rqs8mY3*zs%R}SW;@80b^`TEywd=e^cm(DP)1`y|(8omaXJEY7u52BZu4x9g0;8$<}<1t9)i#gNUtJhQa%lMc2HJ?JD zuk8~(o$J~7&SCJd+9Uo2?BD70g{%5Yc3ZJ`m-VN0&2aVGW0zbH=V!)O(--d$e*$WH zV>UqzXi|Z5qPhADxgn@ zdb@X%@DPme$d{gazk&WP3i~a1Z+B81oz`c67X!DqCR&wuoCg6g__imZQ};~j!0s0Rlo3Gc`JZ~X=nP&0S}?%zbk{PFTi6I9)n zRWYUolMT_ z7dNrpAXTGgKRo{^;Xxcb^vC(=Uh?}H?|fLRlAu!b_f zGk?uFvVZ2<;*UYi_}+~EYHE|};H%3*ykDC_&pc4O4ZPGy7#Artea{8;$om&E$B zN&3U`2V<4v>|&g6g|~JL9H+WpEF{ktdZ-cfb{sWAneRE@6z?@&r8MzCd~?^tHG}=A zUESPPem3=4^5ENcxcqN@Fpau6NVN`jl6pbR7nZC#5PRaB;;+H{+veDTVB)i*e~*%U zT%O|t)ts`}nP1TdOl8YYLXB#B;YaxXrF*7A!~Una_Ve!t`^*3% z^ixyMV?Hxv!8Dbj$5+k%$n{~sz%eRQ$ahU1lxyk?yF6;l;f&J%81pXf17>Cb&h-8t z4`GbXrM?_U)}7)8`zF@by7z=|4ic{sK3VEN=f4(CNFSSp+n!NwI}^> zR(YGfqP{Qrf~;0oqlMqFuZxDe&K))K?rB~-+ZStjsDxfO@%u&z z57A;n9_;V0X`a`kzEizRKEz>{z*Bf)ZceA>SIMuEb6(KwoAh{?=2$?r+IL2CZ^rSQ z=U)Ll|KpnR8vBpe_kwDJ%OTD4>O9|5?{6X0=SdJgf%E_1_l1>r^F7qt!5U>leV!s} zf%|sy0g5r~ynSBauQ%fTOJ)3Ksa#YA{$4}gL-?o@Zbekjdn+{eBJ9t7ju%i14lU8- zUl}jO1?NSKzXJo^T`6K zXV5xyf#%+h>%s3J@Ez0U;P>2<^ZBh+Hs#bm2G^S;evg(D?~KmXh6-=N^{#2fr-+xk z$@8QB7MK17;>V7{Lr@R2`}M+DUa6(#Sm84qJ@}QeHM$XhFZ{rU82@E@%^EcF_iW$T z`@(Sct1YiH#w34{Wr|szH#Pe!iI2g{R^k1Xc<{`F7l!wAKh5_tpS-ioJJkIsCAE_tv{7qGDQ7W=zz1yA+%MrI4y8^%;cOB7Id>Nr>!%QL2mFIHGR9i7R-zRno+ z*Q_G+k4WTq@ja6}dZR|srbNa@?4RTvI;@+O$XJK*&y!N6z?a7yX9U8>h8X{*+fy@$E3yGst=H&ehluj<4VvN=?|C&tNP^f2;NmftYXW$g^SmKkjEm)vI26u+fisz7uOj1y%X` zSowUmUk|FFDi)ld#z(Aw?1!9kD*wPW{WU95Fp+uEDbyIA|zu<;F-%uZHycDU%P)L#mgak73Z5SiA_R@BjYVoIdw z;mr5hxj0(GZ`;~0R_C%NRU9FDIQI{$+T^s(S~Mcfui?KsIjwQeZS4;MSnK?4e8a-d z*{xSrk4)nm97bie&dNFp`Ni$XFU>TPyJWF;3mb*=LEA*Xzuh#8HOE?8d%(;L*86#F zJVQie25a~BwswZ84%ScGNAtWRxR!Co*jDMR{|b+h>*Jj8N~N>r3$e8`Z~mdmV#uRC9S@lX!N4*HFzVcy5O=e;P&-|+kPMc&hcQli8^m7iCk z=soxoM5nb+Ex4^m7Ef(+4&d51(TJA(9zVZs%Paa^hiE*{&catjKDnTMdqzvXhU;Ua z@#mrcMa%gZ?gxYCo`&BifwrWPf!~KkG55=qm3{QCH|dLEBSo(u&tUP`s9mm(5I+d=3}siX*RAS}5I+dUw<}7o)BRBYh5Q1ZAM%H5 zbonx={wRC~$u(Dl#~3c>8OeKLPSM(BIP|-j!lSQi55I_sseTcR$G6^CrdQdej&C`C zQ+27XwtATOX>k2N>9k1qdCqzh)1WUsG&(j|pzRt($a#74LirZX2P+sM`A_CovYY1X z;X@+8kH7~D>v2%2`Pw5QLi}{u9$a)jyrLo`Kgs?vKi_=4eW0!F={#Sb>1}H_$v9uT zcZrbmR{Z-X-{SP4U|ZYgMV!vt%+@Y=Jx>3uWozd?5vT80vbB5fjMIgDZ0(|p z@HoAoY&Z0uyGFatp61Y}QTp!XaQ1KdUE!=*l+ORm#wV1CjncEv+S=7tkI@mk!_s(# z{KjbAZBdx$mDFrY?;NF1ObDZXj(Fa|Sn)YhS05FY#xH#NZ@8Ww9tQn7QR% zgp#k4*Lwv0r^{?1KjF#v%;cU}PX|s96<&ZbPPU@;bVx_37eaq5)2hIF`hB5L>g)1( z`A^r@h2Dpd*APBofqOOWk~P&Yg7MM)+|~7(Zymq`HI?{&w|z~0HMoQ5k(}RJr#I^> z_u6wl5*{_bp>*$v_VRgrzjsBmZm=nsdWZ0=0e=mh^-eq9KdHBXoQXcrznxq!|Hc$! zV0^WsUW52-w+ZD6^~nZpp-Sy3Dwi}CoRM3m>v=n}U`P`yo%IW2Q zT97BBpB=mli|bswgP;%pVD1&?C!H|gHCS+%}bU-WgxBMUpH*AEugmGkt> zXQBR^etfcy@Bz%(?XPC9Ke*KqK7;Z1>n(P=%l+DNJ$&6m*@M@q&Gij_RJn|Q7wmM+ zJQVhY@N z%hK+H!t?8c{p?dyl`&T=JG-m@8(-s$uFH2?X5~_H-jw=&#xGkeD{dPy-*J83y?vc! zNq0kdF?!%_p1R2LUnWE9QII*>(`1sR?JAS#o8$|Y4UMoYaxe+sz?isc#V(evy#hrq zWzK!y;s%x>=c}?m(a*%FYt*u|D_d1~2DTUG@VDrmRpj~b^U9aWXQ>fUS@a}f^7~}7 zY+hf9@ecVZ^>WnX#JDV#pvOIw7`AEivx&c|R+RaPG550b8xu>_tAO?TvcW!)ug1K@ zC*#WF{#-P8zRa)K?8FhbQtM;zZw9pMpID+)fcVdFjyZ9sLSonqe;NOb*FHA*bFkM( zKk9MdV`g%UA3QuLm4D!T+wxw{gPu3ai60Jg&ZlSOFfA?Whx5Y;;>Q^gSY-Y5icH*^XHp(=E5G%2mE3d zGwWjnXAXi!OI{(?42Hs-eoH9yYJbK*X5?tii<@=_Z|=|a!u++w8}spjz0|iM{^Ui? zO{YIMSM}qZWgCt8+sY z`;GNWGMJaXuWKH7r@r!aDFuIl-+2DY+^1CsmEBZY;(68tc`~jeJRC|%y|v*lpDEO0 zLO#Y<{P>we9@sP-=b3y(FBZMKP8XHg@Rj;0_+mo!G@ z?pIXwV(!<+wu(}hAA51Wmw4synP^pL1pOg?NPdd><1>GXVEp7YQ$v4Pdkj2>i*Wrg zQ&W6bV-Wl%3Sqx-LwKSMle(+<`3i!E*#&N5occ8@9B26QOZ>`s*VHvsUB8=8?jLhV zz2}8O_sA!Hf!u$e9Up@Fv!3|VpvQ7#^axGyV5Pr)Va)T`(2 zazDBMuHoGl_rqQMaF~MzPlofZ?)?48Q!Iu5e+yOjw7cl>+Xt>!&D*zxUxd5pcey_53w9n&;Ln}< zI%{MP_Gzr{ol4~^sM*#o*-#am?IwTE^UhB9>#JKW-M~+`6JDZ8#=0s6^+1^4Bfs#> zTuZ&Vn_KP=dBmK#YoZ22DxX1r3*@rZFLQ44eB6IYeTwUMT`?aQmiqr<<;RTF7o-zH@27-pn~^0 zOZ^P)H}0MfQ2V`{<^J(`wTdqf|4}FDkJNj{G^(fqemDy6Lw$3gTSYarx1(GS`G8D2 z@c!AkIR8iv#W65IZA{K7>lJe}2e0CMMrcmqiTHig?3PT(A>YUS)RF{$XinMXdZ@pb ztm?1g_hu7+80sbW|M=kyXI9~9`1`5nd*;Y0^{3dM|2;3KuBt5ZyqRO2b+t4+wlm9m zPQCDpV`)`nQzqH(Qjcxh*GJ`flu`DJ)GwBl@l{sejN-RJKLB;HBs@ei$lvqz=)%5g z^Op3&TQUDz_q4Bi`@wX!nuM?L74PWm(R#qDm;@AIGV0L)pj-bFp@A32}NeCfI(6;Ko9m*{)k z?`17hQQds~L(Z#`2ROR4qFP)0JNSXa;H8?XsvRn#2K!g=2%cv4FTOwJXbR2?*D^ET z^fAgGbINDv;hn&OEmv7nd{n7=pHaV}zL|T}PVe$U151Iv>5lcGz4|*UBi8T~=+WuS z^ykRx^uag_ULx!D$D*H1uYJX6{vt)r|1&2(BIblKt5k~c5X@f>O4$$3!OytfeR4kc zM8JCE-P}(&kGfoH%JxG+*#)SV!F&~S@*$TO7%7uK$oX38`Sp&?MPBng_>bvWPdX~g z`gGOVM9=KCoQ$A|o)*3(>C`A3YCRj6Lpi;RhHWt(YAE$bLlqQ`(DWZo(PbhvLtG z{$T8Ay269#b7GDqDzR0LBB9)im{8IAqGUL!Z*0aD_4V)+G`fWA*6_VxmGC#D{ zd9(4n>Q#9j%>U$FwZ{m1a25J3>$^2p*?g=<;P0#QJej|CHJ`wBUK758dSu0?XAIBI z*F+EFe35YLjDeco)c=Hkbt#o(l*yMY{0X12_wUO_my?%y{#X3L+$!8af4PLuH(`CL zq&E8AH$Iy#3ctks^M5`sjIOR1M8D+vs#kwBhTA2{`FPF`lZ*aDE$4G`9-i~j3P(Gf zmp=>raE{dDJX$xsDzoJb-oH}T57etuQ?{SBQZHnm?-iO&`Heg!^(Ywc1TS<{o2Q-> zeuCHJ>ycZ<%{w7&j+f2_@}T}$Di6VS+w%EQlj)f756s7H8&*)=n{!m^#Zd3RQ^!jc zdwB%&Ls7&_<(u`Cdf@@a&PUY3ES6229 z;S=0k0^#Xu6@GyG%^Ee$n4?np2xkG*J4c*jP zowwVI^Xdmg-|G6UGyIVD;Pt|)Jv2t;+8wSIPuVVf0{O%#1v_Cr-6lK&`N_ogomH=WTgdxJ{8Ic#SLp1Uz_T!Z zpP+Jn?gD*wqcx%aIYkYwcj4|TGS3El{te+Ho>+QfkH3!mjqnf?jXvsOi8bQS!#R{W z&)-3-FrJU%eCigkZUfZZNh_dtpM~DHPd&~vSmijn4CCbz=EpOtUcgYCTU|>37UUBj zsiFQ6i1!!MZvgS-FPycGRArvW+2o^yug$k`lB)79R{8_;rTvp);8{6S z+KdN^hEIV<&UEm5?d5#i>)5HN@i|rQKQ-7st){D_PlNf`vdu=RJ7s!Ho8xcClwnE@?=H`iuXptupmNRcEIb9r z|A{_>Rf($|rGGNUzBXte&d9bCK7x$oi`B!FYx@@POB$%?uT^*8aEy<}!uN5$bB-CN z+V=QQcpbL?%^RZHHmrsIg|#011O57jY%&WU#_{4B7old24ix_g?m_M(j8H=gRu+Cv z_9$u;n7<0b2QXh>`@%6MZEG&x7`C$$j|EHZsKHcjzNFXLb4*d}_$ zs`@Ee>E}T|{=g}xVo|>(Ge1w-``bX{UYsGV9rt_|{NwD?+9_*i!+$Fs*TX=*e_Z)F z@EG}}|JUAkDHioMzG<#i%qdlUIUV2kNn<@_|H9sXDB|g_ntN9=Wx*k})cps)G;8B= zJ`HQ)iG86RKOg-o$r$M7rX18i&F9B_%G!&0luNGfnz0(s*RO&6`xmmjeoA0dtweaVoW~laUR3(;5F96BxvUOv0uNh zsm(HfV)|A@1{~|G7auUiex2oP}{d;u`+`9LCN8 zl~Sp&YWwq|W^Bx7U>;l;HH%Jz7lBtF;>(U@ihyZ80u8IL@I-G97EzUsT7*B~ey(C$ zFEzZ)eq8Sc`1j0Jzta^}z2EHAb3Bg8culvpsEVAv1!n{wgNM-S+16sH2%7p8t~ErIxd6Z{Qgz)vhh{lHQx zrqdRAopZQn-BRj9z*hYJ4LF~>P_;W)8qCL5O`ezeh3;DeRML^HcwYOdhbX6tCN(-} zi|`rTud;q%ZRaggPleCB)}iX?uj@5g2<~;d4_EN}S)~!5$a;ngm z1j5f{0q*x2;TMy~R#Kk}&eqg3$(VF+?*WhVao|n%D#qKZUcNCV{q2#)t2hKdHP)RC z*Nj!zCsJ}hG0Z303(vqlaW~TgBc@Jk@+P7|Ka5N^mbDF%{=v25>V?}zx($u+d5gsF zBRJ%V0mfc<3g*yW^n7i^OsLB56W${K+z-aRf@L-H-5lSK0zVq3?Y%Kx9E5ks^ZY&P zjpYTebIin;3UypjlO!8|uf&Tt4*oO#=F9*d<{Z43hZ|s%P*38Eh52L759!Zj#QOBk z!q=%u44s@6^&g&C`29T3A66;5ns)6H`3Uhl`?<&w`H_njvK9Oe=UdM3FFIi%i@|u; zt2F9NGy2;S?anvL6FVf@PRTqt`!oCjKJ;do&_r^M9)@L!r^q5h6Np7G{x zL8b4FN^2t@2_C5(_=$(|I{Rn+?hP!QTe)9Y=kW^vWRbaP&qE6@G21iTP!o zUwb{ZmP)X!7XE?bsm{o{;Qw}kl{v+FI%FMGqWK=R8S#%`pN5|YbEm>XJR4j^Z7J^~ zxoXD5+dV5H9tle0A$Y!Gd5aNgJOs}}bakC7+8OhsW!?Rt34haK^@59sY z|JrXqxLZelib&%Za$R$`LSsv7_v`FtO*%O|jaP`R?`AETKQgVovy7Xy(g0iA*Tu~` z^r)@vY;m==^0n~{onN|GpUoOUy-56T4xDthx_lau#xqRWYBjINr|`q9b8Hw>QDDmIq`?s}wsmpzdl6t+&*Z=i? zq6Zg^M*e?1c_3rNxchoQ^( zbmJ0Z#gCP9LKnNE|BtG#4vT7gzgG;vZUI}6GQcM0?7{9XY{B;02`UnH7q-~lT`+s> zLQ$^@*0s9}JAP}ud_T(-Oh04#6EAW^{!Vtb&NqhRf}HCx@yO?sbUQ9qD^Ao z-4q;e~rQeDC{{eFj>oK>Y zq#nhbXiwfln8y(%dJtTHop(TAYD)c!IN{%!3hdW69ipTki1GH7g?n|}#7NY;mI;LY_D4dqXR4(}9@B z!dZWehhr1A=y3sKh5tZ%)Vua(U2FRo;lJQ{Vpi=&-Kpdl=_g`-+^GEq@G(Z?{>~A5 zW_h$u&&x7e_%pP3;|8tOnZm+l|1ck${cE*8`!Y=U5v+G&Ua9^Ed;`wrA^&z%@(P{9 zK1}W(>q(nVFT*^9FyY70=5&0uOfOlHrvE_yp}#EGaYx99a%Mhgn5M+(^C!Zj-pP7S ztIKiv*eUWY^2+;J_(R&~%uS`9@*_@HvGRO!%XwN3u^t4&FHP0t5%C;`lFHVOHv90au$AJ%HTfZ%X<2SRdr`g5n zl_uLd<-g^6ji+s0x6A^a-D`+kFMN}E-IN*nuVX){|Dv919YF!F?>&y* z#YuXvTWC6;q1LmBx~Fp}_%SK8>6k}9L6^-Rn$BN1aU%xLBNX-2^Md!6`w*p1e-9D7 zl0HA|$|&8>DHQhQ3FBFls~)DK9n+3a{QZ9U!Qk?y=|^x~>-->H@?YB;{kgi>xe&om z`S$~l_SW-ur12$q{O5PO>(^`3_!-3D4$bSV^Q{jdUqJW^eL4k0UnE54+cW=oajgyJ z-;h610_RiPG}xgH@caDT5K`kQkI@mT7Ony!9nraeD) zBmOM--ojE%wZl2vnzPT&ZyIwjf*--(!#SBU6sxO$hEq@Cr06LejI4v) zpo{z-W12_z>Or5R3+wwh|0;%Ca!v4m()bX(zKw}BwS&<)osZG=ozl5Q{bC}uhLNP1^m9s-aWfc{8V4~6tuSkTV&NOD%O|% z${IxEmrVN8)_Q{Pa{gxFT$yzT?|QO-nKQMnno;-3QdjV2?xE8CzgfmtsY5(M=3QW( zl;ux^=tl_OyhMfXmgK*+fCtW$cr?PCYS}iu7W*ZE*TY}8dTa5`S&Q}@F;`#1^Uw{8 zeNqk4w_pype${Qu-C04xC&E23V*A~*go7W!S~2%b!D8nu$Nw`6zl;8J^7lQKL&0Y8 zUwD3o_26d9f!pLmG!{KP@X0J~Bb4A_d?zCkms>_wQrv&YPYyw!VYcN?iXnUhVmt+l zO|>|;HQ=8f@%=R##6?-^tT4%%f8XrFXiK!C3HZuA(Nk+>9%Km!4#fNPLh9|AYPGd= zSrZ`m5M$`!FB@83T=N&ao-ugbXJskr<}dFr>k&s^7q@gstuFR}dd$@!w)6 z6C9^imi@%*tJZ#P!hzd@hl^fs#wHUI63l6Q2<9g_+ILRKc_NJu!Te&z>Z0-e?p6f8 zoq%|Jg=*QLn1AH~6|o=VWv$FP0v*5m3Lk>_<<0OptM zXRbEV(PXVH;{1_qnH9rqUf9On0%`^A_t zz2-cOL&ATk<2}Q)H-{JFPt;o$8SPt)H@Pjh@gcTmo^HCF&Blj_oV>=AtCEcm0X-|z zo<1@!LF@~->?RLO8NQFge>jj_82zel!nZ-rW2`ilGxpzi#r>u}&Jz>#;*2p3T=Bep z#h&#JX=bcGY~w#XUD($6QM)wluh`4czq%On5=+S%e;@cErHApUwQYUWaia0)cq!P+ z&N5GarxxYoy9`+Y|i4k5W&5 zKVY=V?C%NvHwW{juUEl!7_DX;_7Hs)#>Y>thpR6^9%7G)A=xK|tMez^MSpN2&^JE>TDh+j$c!KtB|A|O-DiifY zQsw&vH%BS=nXa%GUS{^3G(Hi9o={iVheEiYr_|@EW7YZsrGY2gfp2mcwb7yA)0aei zdPC~#1S(2CqaucX zrcY<((W{8`ud@e=deQa=T+;aw!)stZaeEh;AHjI__IKzx`?v_c&v>@=>8{Y*cY!_Z zF8KZH#+a93brw9C_3pjdvG>dYuTE|XyY3`w>N$*P-&pm2i|6~=xvNk5Rwz#!Dy3X8sv%zJpIa8C=%{0?fa&YxjIe}7@Y=Xw7y zPYd&63W@(_Eue}O{jyyO$^PLnS3dDq`|lUT{m&r%hy_nqQ{x8~6g~*?_}0ZLfiqH2 z_Eh2 zQnO1u!)wZLy0W^SIlJ(gS^xa_t}>o!HhF&RDey}4MNH#}^ZiHqKet>fry}M$2!EUP z+UYLk)VxG{aItD|;4e)USq~f#1Rh;5*>ipgMY* zehNOydg&5xKehhrcflvv@0?H?{XC{`f|t=}6v>o3HlIk&{EHpnpl3yWuG!-5eQNz1@B7OnAoY~;+*sD?(KjZfc zn0Y@w&3|e1uAPd0?6=ZiPQ1Bw)l}(M=KO>lBToPi|BUNNkog>2OYJsZul;1@yU3ie z^7jo!mbD*6&w?>9@^+*5p%2jCUM~HJ4__=WoG!h$lIy@2F7a?IG`-#l{>PkmQ0j7H zVaK=R6UhB7J#~d~tmqr+9msr+EoE04-jApcQAzq26DO?1jD?rNkKlfe=(G$u?hEPH zXFi<2*HWWp?iZr3z!-J?s%3`#t7p=Gium5RpB!i8IQta$bAj+7o`kG6LO(s>^$FgP z)qAb+{N`hs@6LFS^FM}cdnBL3=Nat>ZZ^I|KE(O0mHFEn4s9_UD?gCmmt%C=X!Lk- zPxue~z2G?;jD552%9=Ir)Cud29>xDdKe|2lqtPMXDkEXXZT8zTAH#gVCC1|hw?wak z`G)hu#YXolH^8qsV35E3qShi~|I`%W6Yv_S_waRIvhXEXf3B0d5c(X~<@y;zwR2o( zGdBlGq&y$RN9 zU0N(PuAjdq_mB3V|AJLUi+_@_|E81Qu5Q%Zh?;aV`;860UuWNKH`KypxgOR-mUTE_ zEQwFHve%LIk1kObWB#LLxqsw?{fRhj>>HT^{>B5;$34{P2N#UMdns1h8rqletQU<2 zeNxExLA@fU3ND&t{B=wgJ_GAl0~=p5eAZq|Uxx?XG`gMr7kJ?y>3@!2_RP5U;j+w6 zV0~qf&kN&B-OIdxf(H|0>U{DN^*s>398nIlzZjqICqYkPJMh*0=tci)?3;hl%Dqc} z!v4vwi!VrjI^T(Lr?UV9O%!~UF_2$DN8nNCMSp3(xW7D##4CydBxY|JMOBk_B$#3 z3fhnN6TQ@@vnNFVfqzeXm)rA%;IH(7W&8Q6O~sCj{yqIeN{gzn_s4+$HWs{RXk`=p z(NW=l&_2CxTtii@NGkP~y+a6j3|E0bD zFGoAo-_auYIKSV>)J^mwSj*?}%dPB*XMRNPFKeRpi}Xf(aaimPZTi=YeU$yHgWzu* z6g~;{$lQ_-2!Dz_O>b^s2Ftnqm~XKW{$YWN$kG=a+kMc-*(Cgktqc09R(totUMvM( zIZbU0@2$>H-6QjUn9pRr(Oc~vuv?DDeCT9sANY`6^8DGORdRn{+~*zSH%Yw4`3rk< zY{&iHEd9j|`uqc&cPpOn8R2jK>@+}CIJMbIzH6DR$AI+=R#{GM6utyGZl24ABCcL9 z-xqxH_i*S{tb>1eq{ydeSYs448P-@i8;tQ#=2GEm=IB+hx6jefe@^W$I7W3ly8`n; ze#0K$g0?~g_$P6|o3ofX&tqrTDBvHL*D;gSw(|>RJ_F}>)yp(RUHg!x4?#Y1{&7=Pxoh)e{sL>_OC6?Trtciw-#&=n zr>nOH_zFK}$@~G%gF9bv7Vw)HIG>4$Lo%p?q^&Jm>PAKga>!H9$qcNkav&=W)enhXFn!UcA@Oj8@T5}~r6&&7* zd^6!=MAeT}==T==C&moqD-4RSFYi0!l`3%&>f(r+q6fnsuaWo1Vm~VQ|7@aX6kdER zWplkXw* zoGtYys;u!|!Z)MOB7dPxKX>sT%x{iQnygaGyONI}dxmmiqQ95By0c>W>Dl zJ2P7a4$ejY5{T~v{#Z5#emy(=sjTgC%~i)9I>_hzw;uE6Dq=qTKG&^_&BHv3OzCUq zQ}ficvl)25JB$0uQfWpmH_4m%jGRIbWfMrD;paf4Kg7u6o%q8T^5^vaWY-I`Y|Tn%V>8 zAFjwTP~|QDAMp7XVy}yzY^s*zd?d%~kz<{Y*2zqJLiK zUPiSZ{#cV=LmQuczdJNv9%;s!tnr5(_Ea19K9YG5^tW#vJXDFikI>_F5ctDN;U84Z zaZmUMv=@4G^ay+?)^XbccUR62bs_Jh{(&YZ|_a@eKQzJ~LHT!vq zr(PcCrq=E}s(Ebk5BC1+re6ER>wRYrh(B!5s0{4gex12(672IuHRwI~42yT^UcH{8 zpEj@g<9-kHENllpe-p>QqVBKu1V?Kd_#hk6&-xm^q^xo;z6*Sf8R!Q%0d1eksEO^@ zjHg*681~r@dJ{*$ho~=n2&ZmlRV?BP-9|Ye4eIDSyG@I8{Eq%35Ghc%ZG8VUJtp0r1A^I1L-zRNr ziX4M{jQa9?IsY)@x(%`)`27=C8)1IID)g+vE}$mh)3>quHDj5kE#-c|JXY1L_(Jj( z1W!*$tb;snF3xY6;O%~&va8seQP?k=k^g5=Kla{3kJV7&Gw}FxEO!lP&WOGP_OpRm zDh6gQaeuPE(lD++FwV6P=J^q?Ho)sK4m&rM?=yzOJvMSpsIB>KGUi)%<{fID0h;eF z-)YZmpN)2}eSlH?7QF_q=Uw{VTE3S5J+h<|?%y>9>SV{B` zthKPV$a+sxPdCg@Tx8+%rOm2p?+JaSnd$rn^2Y;4kF}8B!1(c8iE`>fXsCtpIcr2w zAHa|QQdriEU)Kg#P)8TM7QG0@!#njD0Au~A3J^&tPDVUC*Uv7B~AGmH;s*bX+SxMH!GV{S9agV4qu%(+ z#9BDlZJYwBK_gllT>Dh1j+m>S=udFHvVA3$)w?@t>#Y&j&j$aqB4^MFw~jIO<6FKe zhkcCHUh)2$HeC0`Jhnx`hoDdK{8-dleS?kfFydlSYtG-c^|4Jwt(KNHe#5?5F5qI0 zPUkb+>F#Vj=5OOOL@Q_O?rFBQyR)u2kxidlJR0`UTfdsHh#m#;d!j{5+l<24K9UqL0);B@E`d8v~$m4eKd0%`Z=}< z|6!k9cB}inaZ(@UJD7R9gY{uxq^!CBSGm|*A5F3G8=8E|YF&56wr=w?v(+=3jo&c+ zL`Lf;Qxxmd;ET1#`DH{bWn2Gh`B!I(NWOnl;3)%1M@OifN{{H_7-+=WZem~EP6#X0e z4D`pu7D1{~ED%fyI&FZ+x3?$& z?o~Rdqhg{^PaV(ujozI7dIX*){WD{R!`1fbt*;}6Z$h6JcVrJ@i%8&kQBog{R=f3% ztK+0Uj`70&6FYU0dgEk%GJXDw`a5)$BN5ooV}#!oe|ej3Qa(cZ!FW$+1#i{)R*gk{ zag^u}huq(+Q}T_K{vh@@jqke&e2g)uFAfuZ+SE@QbgplsMbDM>gx=%U>o)yH3x9$2 zz?%;1^yxd{>GNur#;(!Tn}tjLjXAMhuGMepB^wqgHtmx=52y@KJ=-^dtw z^Rac>R3KdHv+T*hY(u>vciP``ZFg;*KIssS`l2K9yk*9>gkU#IIP+17<~tKL?JRY4N0JecKu;^VvUaFGI674DRUZGzvH|+m&@{dTKW}ul zH~1i-#0!PbkYPs;@Cic6*P;K07JaB5R4-KUI@lM}!mw`opR%ENUem=VjGoyU^FMh0 z;fzO2ujX{b{1oyTIuoxpjmpze4>@OBH*OY;*e!(nNj|SMw5^^sB1G_f9Me>>OiNu0 z{0Q0>`kxcg&Gp5s)T^j1>)O*B>#ER?;OD&l+CQ4;Nq%Yi62udeH`UWm&E0svgX_-BSx**xvAbtI{Ulpw zT>l%HpYU;iJ?+u76Y*vFKH^KA(zuiS9^;>h2TXchwKRSNav-Dl0F&-AF-;$W{`1&$ zrN?ILAbbp-&z(L&`e0;x@MGG`^&Bf|=#p;j@%z`vZ#6-m8uN~VgQ z{u1$0=mD8@*(Pmi?}fjOx$?T-u~vegFrKH@+2xSdQopB7OXyTv?|jut>;Y%kV`huq z+OdV$w@Y6uo3m7@s5@n9#{C5Ta949luhKeGt;T|f71-fnZeb~?t6gj$e8UnGvzyEI z%cDoOmNjBuceQ48c3pHg`4Jw1-+SiHuJ8S>CwMb+s0sP9>Yyg|gbzadRG@SQU13gL zc|UN^)$}2MEXAQGL0dumtx6+1?RmYn>~~_+=&!fD%v@XgN4du;%(-v*P@$Ia@fc%e z@1AJ6*|nzdGij5O?wz!BeozDc#wzuMJ1NI36Gzn`--PvFwI?OsQa3gT{>1>_Zin%% z(eZ8aVEJx%r7wSz@icZg>S$Z za`BIF#OeW}@4^~{W90#sYqbIduV>78Y)%`?@Gky>Co#qa-e#H7$4~Gn#_AcXR<#UY zTwU-v)(7i#@V2b5r#^(Q)Nj$>Wr^!vP4Ge5q++w3Exo2xmHSPO3~Gp$&eke;UsLhE zXIGs%SZ=j5vES{!36r@%O9`Vjf3)&ojQlXW;sN`8h{g)=uL? z@cZc33^1)v(}(!hYAw0afx}-`kob`J<I=m|tv~n=MTrf;Q2yNO4oWQJ%urAt$G(Lj%(R;NRrZ@coSR z9c;><%|qUA=3p+HW|*S7+4vA6PaH5kpKQ~Ea5!gYWFBVIgUIMx+{ha5ig>w-*yD)H zl`&I+{D?ID2kbFp+jblOq34;pMhBm?HR~tieHuf(uN32Lsi(NlY+*EMSW5U?w0RvJ zh8i7rm!f?ZK7?QSFymbt+j?PGlrh{sZOwe3QlT7E_VaJ_$lK%%*$|u20$6%8~oZ_5i>Iis>V~@!JqhndXJCUrLUJ-ecJCg$OFhoisG z6aClu&E1~lF=t#i5_LmQTu%-&drlHchpBQ29_%+q?et%j?`s(K6vh8Ce;>6v9Q6=) z@%N0E8$^x9JZ5)^pXfgxEE* zth$ihP3$K*aX)I0Q*Mh~sV^h^hwXjG0WWn$zLU#Le=u%FxZ3YhTJ9fnCQH@9N+*edPM9v9KmV9t}jR|nIJHwiB7_gAx74txW7tW?j-Rew6Uz z`%M4yI$u?_!oINRix6MhP`eWPgVW}L@OW8M%R>h{ZGH%!$z3}y<(sdN#Ph6)Ic_Wi z&4Pl$*C0Q_C8s=E>a^)ba;8WKGV(wDvyg-(qR=GpO%S zwR=VNFfhC5w|xmmQ&8p z?1gW`da(Q8vT9!md#P{mdH#4)7BNg#=%*yIKCL=`FQ@LE$b$WON$|$JGb^aExwGJX zwJ<*icMJW{)idMwVwg{>=U*zZzAk)wUO(rr-oI^!`*Q~0zn})yLm#KN9rE3as5jrk zEFVAgXlE4r%lcExa@Ez83K^sxz~k}z{oVgs$;GD)34Z2>{>IiX`Bwe_PqX2h@R_v9+j7)=HK z)LgKlTMvAcU-{3#A9@HsB66LlD(3eIc=ZU(@7bu9Z*+kk^C#%FcQ?bIVpdRQHPR*3 zN_)y0Z^OkeFry(A_}&YdXY_pX72~ccRq#9ZgO?m*F)E$=3_NF_Vmxy7%T8nYolk;4 zvL7+~{td?FyC2b?zf$-rbDG8(TOB{j_gO#K(#dmrT3!u&K{FR z=a(7RuDum~ZpL@!)60#V8{Wu#4L)zqzqmZ^wahbMecBokXXFogCH?W_uzeh}%y0{R zDSQE(gE7KxsnH`ijSs;bsl}~j#?Z>o1@C7+$aCM7MxMZD#5)bf8@K${7?b>-O8+hE zrJRQmk>v^Wx{pe~Ch}k7)7eMt4`+N}T)48<=s5PFtXXfFwrjQF>-_-u-V)>!jg75g zYr*-x$Lp7RaJiN1sR1hZHgm8#IX4))O8zJF5O{vY&aF2bPu>Qfq&WLCjqz318ijk_ z0>2=;qJMe+eYH^`^G*4jzlV8mM$(oPJip4q7m2^T+}Jfc8GMuT=)bF^0xm2vV*Hau zZ-P1W>1j(1uf5j=ALBd5`4xo^rs**d6S=&1iP1z~m-8q8t0o4(#Z0H(!b*cREcRx# zjkzxKL#P45e_!g5BKL>*;JoMSjV1+e2tP#hgO=U3vY%LAx#joJ81V3#yifFR&t^O~j`?3D-Y0ynvt8a9CC6MLUqkdnw?zCfE@!)p z^9hjq#~A$B-z4mZN-~ecWo@dFt%yYuG92|7JaH zx3!$QnDrFi_gc^|sG}l%eO1q2Cq$p0>s8gOqQ~%r@Ez#CfQ_hqvyRLCr9C*>F$nW8 zjtPH+`aa7a)KzO;kID5BgZg)KBlKe*1>O&BDjcud$Y$tqw*tR!EBwD(f7*cat%a|` zd@r(JCsqHuMZQnX((;$O1OG`7yquq3?bipGV7%}XXiuS!sVe_DjQ4RX_^)H&&;C&Z z9v%|?2j-`TxAdpZ0e)|x@K@#yAE2%tI{<#zZ0V0W>^u1nj0q#vv{{?5{}L5B8)uG$so(21 z;QrqN{&foTwnwYnSJvVB9t)nhZ(|UDFX8NSV5*D3 zCm1RDd1U@+DtOL9xj%Tfq3dIj9lOpgq9ve@6esTs5-UG~p+324MH>bJh65Q^nsE@hN5= zTyw5^cW$!ifne5?`E`|f&{LXdr8XD*f%){r`D)+D@wnfG%->qMnkSu$1s^pEgZ|b4(Hr4Cak?}I z^F8{Kk0tM4-+<{Vq<|Oo=cai5$zQ?jm=wply7Cs5%<6Xvh?6X$FcO-sv zVRSU^Srh0<)D`gbF3V7);f#pfL`x}4a5`inL*WzFvgpPH_&3@ z_jB=nNPVyGpgGXj%8|~8SXyQ-dL|v^@0nk3b)2V$#bw3kuEK9HS>~x(7c$A;^Oz0C z%tuT~K15HcAI>NrtKvg`fXC1}V^L%O0E~covOP`Sb7R%$YOm7y4(DAKfFu1R zeI2}M0r2hn>FdQ+7OE_TZ>O)JzXW{uI`G{?tOo{u?6N?$X>wWC%=fqM0pH`^CDB(P zUoYF8Y3LzO($qsC|7-oN$(Z+$2>!!z(QhEXYu}J-IKM2=J6xt-hBa0N-rUm6y*bmP z!l|lie3eJU+s&vAnVC;OvlV!A2H`)Au2xpf&+r7F|3v=uQn9~%Q2c%1)9>M{@2P#e zJk*ogw>1DpMa?aj>F&T_uVa4372zK+=KAvXlBO-<`@L*v8R(6i(|li0uLf4@4n3a} zn*AB{XUMIUOJS`G->hKna>UEr?IrjQ2M_Dp-<6sD6OWsEVLreC@DB=@nG=sc>aD&V z-$#7`{Jw*E-thA9KL>ICQQ*N`CHAU5j)~XAeyI1C=S6k!9F7U!1b77W4$Uga=`8dc zn!q0q1NW+?dUWrM@Db>P^2`Hg(Dk&YzhnNDvvpn7^zd=b_mB0r`qS#G9q%>qdDzq3 zYGP6&@G%lJ{XcW64)IOY50685etzhOePj$?(h4&__G;FuSP!gUxvh$6y9@k{XNczx z837mCq3*a<*2G)JzG)9W(*``hClVia=+RLvp0t|!7_!bcr5)-M%jA3+Qy$IS6q;GF z;E&9LHqbi*^>Q_+$1E*cnW%sMh5CrYxfo4snwa?7pnFDzQzL|Lz~A_L=>hs_1_>l6Gx->RqR_X*~H6@I|(=C6#i@0!S(^@}6DJ{m20)#CL^ygDT%6&wST zW?V=9K%Mu0jZUK~Yu0-4jv5JxSY z>1NG5$hQh>@);O!zsy{K^Kvv}W5&C`zZB$*uylTg`S?4lbXI?Q zekK1v)>9_BK!fRth4=zLFJG#Jx)zgy8tpZM*V8?FDK+=d8Cmn3Fuzy*dStN>%j9=3 zYXd&;fQ7LnW4)(|WtDIIMhkOG)|>C{Do>t|g?t8b816**fP*l~!v8M@zQVq(%vW2B zegxN{pDL2KZDFmJ@mKSEmB5e7Ex*UlRbpk;cSdpoa}%7e%GtlF`q*WE!Y|l%@*RF0 zs;0&+8<#--0QnAOzf>m&O6GGg-yYxBPeo2HeT4mZjKBYF=?}f0%Yoc~4 zCj0aITt5h{qqYxB4g8-T#QFveRQ&;=Cfa)J4`BWc6y~2$yGPdX<7$Bao086l_%6fRm zR~QDD%f@FYmr%r-y^C%A*y3Wnd}yrnZ{hc$zvE=BR>H<_s8_O(b>*xGsgDx_YPPe0 z)%|e<@WZ`~AB+ma@>%U`+V~A!>ta5~LL0xK($ielpf71_=7ZlGwvTl_OSJU6@OU+19_ngm)A$awNiomv>cGd*QcvRN<9+UE z=VxjB2F5$}I^5C&e?&_?jrsI}-pP7x))=WL(jGOkyQbZpW2E1Qc*46(mvum3jPxII zPe0swPB)uJe#AuJ&qbh@a#G(u86)?T{QPj&6Yw=LNBM5jpI=&aOb=`kBYL~6FHI_P z6!Se|o`gLRKMYIrp#mEyIbT%vX zA)29ope?kB*X!TDqoGI8l>1ZRp6h{Y!-bDR|9!m08f_^Sew4W>_0t~TTBSq57ho-k z|84hKqmNz+ll#r@XR5V9KP(W@+IO?w-XdJ|XXzhH#BI@M`h-iplm2_7d8B)t{)A_O|uGXFE)MyV~azNZR@UHTlK*!wspNs zo3wM$QG!o&IdV=pv{|ZG_Z}qkiBZEaNA{bc*F^S_e!mEFLG$2Ill1W_J%qnOz1z%1 zWAyle-KGDH`2B<)(ZHj-i{1roF8JGeRKxDX>%oV$H|p*lt1kp~7yN`inDZ{SSLseX zhZ;nt|1J*GyDN96y<)s$@+mw7&#ycATVk`J_pPHdcc3l{hZIKkao$IL;-x0lc1Nz|I!>E%YR4dl)l?)oHHl_{h8u<{L)N`%QFW9)5qki-GS zM!62eW90f$dzKmJ7~c7~pNxwYT}v^QhN`RNizTJro6N5^xX zw_dxmIqcIN)L(j-p;xW%-){PUdN6_J@W9eK>}?}?|JiS}Vt)~xxV)j*8}h506)&XE z{@XzCCTg;^@0(A*^J^e@0_zPo++ z;1jJf>F|to<^7?3x~EFZjT%kQy1eIPl-()~(J@u!TxrrKY# zyy#g|{0;ko$}LT@?EhUu_#dpfti5pBGHhZE;AyLX?MzYUo>(o_o&-sJLOg9j*#yg9 z#~`tv570k!^3@SbmKJ8wzb2m}rLnf0Oj5j`5+B#-nPAD|%Jp>N`>z~%$Wq^G2)}{v zROj#8EVbqsf>);XaK~95WH-1Uq`w05s4Zoin1tWJ7!^GpmZZUfg4c6hqR&LjwTJ-W zJ27SkUTS$h*f%4yUz_n~AIqke)djz#4;$p& z(sClcn)nmqMRWeCWhs)gTDtunl_$_LtWj0Lzlbla?p@ikDWJ+x_71S--8`eOz7YS2Z&V_U55a!# zoc$LBELiFz{2gNOEgQrgIl7<%-lubNe7uuKhW;rh_%S(o=Vr}3ytr{$(c^)EH1Pd^ zkyE|peltJBJq)aJ#EbEz^jnTS)FaTzF^wNVK3v|6lLPB@@RaAzd}?jhtAR0_Jj6cG zrcKfQn}!y0Cw@wO9HYvbeWs(1WkfH98i5see>W|z;>P_h_VCoU z!kD*c<3Ai8T++zsYI(k=)=CerTGzAwJ72^+<3% z)Ji*dJl_oH-zsg+5KvAv+T{*@%^%cPT+OXFgTFr61Myl$%(wS29}TOE`nHGg148ro znF9jbW5%^7o|h~1E82pO(H9!GUfBONP!bt!=6vL}L0))XEzIZ_H1}&VOqIFd3Hy=3 zjAx=&Cl5z|m#6q+=GeQ6j8rwQc?cfNnw|;|L*2sz_T{VSL7wp%4V=+Eecr|K|H5%k z-P83RhO`M+4fosTWi;y?u0B*KBm79_BiM85)h6<1KCu7QxHw|8LeByG!wZAI_t}Lt zdslovzwjaWxqo(7;?Kf|7_({wW)zeLe*YDC=uY(e4^Rb9+xQR(i9MC>R|3alf5=1y z|E*3LY5EY8lYE2zmr39t%lJ!HX#(@ipu9YhBx`&I5`Fzk&U2k9!5nybZ?ItnV(G9*p^zY2TOr*Pdsl3&c>?rjPM3nv z$LEs1E;+`){VF2yFZ(kKe=txlaFI20IM`tnSy=v_G5@Om-m1pI!ooi%zS3>0 zn;Kk`^FpRef23VP8E7IDlKD);mk!T#M?J5Q{5|od>HR%0qr9NRuUtoD@j^dZ0obE* zqF;Nqh8OgX^UMAw2l(%654HZEw0Rk<8U9Z2QpbPfm3Wyw_V@0WRXbMXrF}&GpoB85 zLVwzuJfcU$dOZ0A|Mbiw=R>~3)G^RJc$i!G6U>ovN0!Hoklf<`=+EO1l~;2=<^-QT z3-rCqs|=e_-@KJW;swOd%J)WjmGgIYi8ok-s(zxpN~w|^d`xHHSYM47^(&| z$C!!w4DA*;O1^;lw&DEDM^(J)Ao&UFjW=uhs+QRtgs;MPF3Tw&=#ARTej|p=zn>SL zRrFKHIh)_oR}DOxMcx-a|63(1tExG&2p@?4I(%LgmE1Nn{(h?DqttKMx*!wdH>nqI z$^bsYYdi8MF~8`ks@&Wk`l)ub@5pW6s+=wX$}}Y-_?G9{4~AY^KlCqV5d8_huiYd4 zVRQdV|0wqhunpDa^KZdNsbSA`i>AM1-UOd%)KaY1|3JUv3CXVy*6~+abAIPM05kL7 zX-}#t$7x@QZ<@)cf&Wnfu3vyB)`7j5sEQsauO4Ph1zsCsW{tH+a2a)};%D@Oc1FD# z{j3cTQzd-{zE#!C{oZp6`lK$V0?)~8CPp)?(JQ0T)>PoJx21l(#QO&D{Z!z$XJ!3( z)k)+0hO~JZ+;8T9{l=!#pQJyUeEriWHy9UPKcWA7x$svp|Iv6NaDP#c;MbrJ z!k6Ivs2DrnI2rq1@MP{+=1EJ(z61W}A$qmIDUIUI)A$jr2Xj8dT#q-vQ)&wzkrLA$$eaXqS#!j-IjSf)_DN;ZvR=u0ShL_YMvV{mfFC-upV2t=bgi*@-Cf)dPq|j~6Bv)1{wMf1^9lZa zjSsg)-<ol*Qd`3OO%7i@y|&k7@Jj}+of z?C%91aIrD^S2FeRML&7Kro~3J5-GB#&CJkpnel9M^8c!AV<&Z`2iy}`3CN98NvVJK5OV} z+^}*M4DDOI$0cJ)j~jR%zKYM#_x&AX;Ey!E18W|??mjg_PNWDwfqdeyI`56BTq(jo zApfOZ#}DAFBnv*z@4w9a*@)_SUGQMegK2&GuW|p=RnaG54Ar{bAEW;FE12JK5%rVJ zYJJlTYGUjq(c33~A@)mFW!_9aLsO~mEa>T=`Z*;D--gErA6%_-zJ&hn+3Y7lFYh;F zkk1u)e|z=HYX0@;w{fyV8b5*@(M?YF;G87ke528SeoeIu$)Otldr|Ol>WOd8p9k%I z7esHL_w(-7LhA6ZM8QwV*@9jh@PI_(jlfm6D({x1P-i+X_m|%0Nz72D*L%qw6$Eb?an>fVL#-$9`*Xl&h(Qie7y4Mo1^;DF(xrbIs~5SB%jY~^k<{j@Q^{k%YsdVb z{cNjNH9IQzhw(`KVYsR~W}ol_IIpFw(+G8~{$4B3mGw)^f>%Y~ z?-u?FuV?ehQP2$9CEsT~b7zNe6?JWgmG_$8C!b-a=XT5om?eA)@)_d#Y?XNsd|$sT zihzdRX7Yzb|2?)J=d*3Z{!0RWmq4upHGKbinXf?~kgB5*&#lGv-$4J)31}CM$2G2j zy*?@HOdThpKYEq$4cMcdm}jy|*tX*k0*X%;eU97Ti<_@b zo~4=}pCRiUc8$!-p3YPqqG!tcy~<^fd12TbWf?SucsKIbR%X9%(2GbN4}RVZ;YW1a z8mkKRi-x_)V#X{1vv1>tn6Wnw_^s_QI=K6V)1?o+7FYtdh3;*}Z!uil|3jyA~9{it) zYI>#VDtUT)dH%E!UY94UoI_f}{`ZFeo2NF;orL*!&2WF}N_^`7b^`d(4d5@lgx}-j zJ{~i8YFHT?5ueR)dc4Y=-QYYG(WiXhe1dA@8<4)9QGS9NKdGAV(O6@gPMK6Li!I_I@;hiff{*?ae{O?(!7eV}z^}zMLz=xURM828S+v0Q2QHvWF z{6GFe?ZA|^b1;)7U%H;dtPyiDKP9)UalF7Ub>@NNY2!nb$U9$6iF3r~nM7a0w0^!? zcP}fhH@}G-is;M>&g}iu+^@pN*tmDT8v5sphOLnL(AgZZ;7orI zJ_C;#I5Sqw>GfLHs8s}(by}ciW`CBx-n4lE@}CFk>t|ILqDFNmeQheR0P_QrHEZiU zryNgWRo=&!fv+E7EyI+x@f_f+7d5%l>`|F}8G0OdlQj8B^uHT-j8z-6T+)2^xTm+B z>aC_kT?Kz5hnbwGzNc#fBYXh9!Voj!cXRwlfAG~GYvf+!ubMf}=tsz7job@-*Lvnk zZG6?qu8(kjnazABsIOMt<-P{q3S0gZdV1c{bSRh40`}c&ckllQF;JD)5iH zs!$UTRk!OEjTr~%U-+&9AG?E}ov2a!#(phg=Gxxjw5ETfrf9B8UTWX`W7Lx{Gsg74 zQUUzsBYJ9$l88skm{ZGFRzo-L)6|MY3}k+F$`_h$@tVGvH3Ra+bCo|X`WMtoIyUIXU(fWNyTw*mgd8Tmf-gF0Km!7g(~^fYL{i}}@4U2B}j z`PD%EBoFd0XylDJgXiN1?A8%lgpHJwIxcH!uvB$x3jEqiJ^^t2d&oDMsh5uNnzc6e zJbs93iFpGDp{G%i`I@oBJ6Pqr#h%+VzQfOj?Nxz9nFk_#hn!QEnO!YDatAy~SI9^X+L9WI>OWUERYeD)N{Wc0SUif^mk0OlT zZ@w7*p3&sPkgsA)jJ;<7ujl?2yubRa8%E{k;ou)6u%4|_S0~C0Z_a07|3TyX$^2Y#&L^IZ8e7hlAR_HUB@%tfCZ|yiX8~E0K-2c*l zv}jIl+>c7KX8$bS0aa>#IiA1phbJy6q*%k|@%T;zO?FnnZC!-F!T8##mb1!cEx`Q+ zje`Nu?{tR#Ms|%{3K|GQph;E){D3U_|N0@>FQuAq`E6l5&Um`}=+bIz$VUrnpX4*g zesKrC;hBZG0`tk2Vdd1DB~L84*TN^svCBuDJ9|^stOv&)s|f#aKK*ki_sWVrckFFr z%y9f@W$3Lg5WWNb`^DfY;OmXI@Nen=sn2?`cpnS7EW|I@kFTn3c-OGtd}W>2xtjXC zp|s5JV7@%^L^bHgWR^8!o?30IE9W_u1m?0_JN~JzVorq!AA;+y|N5y9eICU#pCDh8 zdXqmq{NlO)$X7U&(X8yR`dXOlu--pps9CknkVDqw&{Rx9{bl60biP9)QxN!HThrIs z7YC{2fr063CsmU*gLv*O`m>S!YpcWeN(FL1O?)*Mu~#=~^6jV(LHw^p`Xet_(k?p2osw zH3W+xo<%;ysBiz^`$Ys#`MQLlkBi)`jSyz9H zNY`%||D%vK4)ZHu|3%NC$%KMd`vc>oKZ5)DN$vdB4Y?zwzDoZ*B`@Y{gxL5E1$N}N zMkd(!4Rvznvi8UP3f9_LU+gtLhxJ2+DCpmA628J^k8IY5!BH}wf%V2k(;ciI$JqD` z^IJMtZ!WQ|d$!7IZJS`@H~ezSWS#XQO)r8q@8%s*faebK`odPo}^zrkVDSK!CdsE>lg0IbuZbf$N<~4>T~|qs-lS|F65>)ftM#NWT-Gw|B8S`f<6Kqr_9le@H2O zQ}^?Y5xksx@@Cg$oxN_1=m`T4H9l|nS4VYA<4e$<{Jwcf{|JeZ`M2~ZOX?-*SN<_l zPiB5P?8pUu);>n?V&Wb1izVu(iP2I&rfvK-_?$jGC0g{#iT|v>bwFl|l#cw?6nI_Hom!55hyKc9R|zwwR&K5&!o2x4O^`rjjE zO&edbyVjMANU85pAHL(&1U+KcIO&gKy{2x>czwt=d@8Wu^`yu_( zF#`DNW%lN(iAxUXn`6hyn)uv~ocs0gcVh(4;q`fp->dyY#}E%O*wbJwyGIXr$axu; zrJuL*on89Xz|m44WX-VO{@SYR zc1_cdVE#sa!bz;TUs&(xbZ&!1o+n}!qjdGXIswOH?UL)xh4$*%>%--G zi2oLSwMSc*+Sd7w@73jc+V~LbX71Is+S=BeTJF^k>e%=YgYxawAYaa8|9&L&3T$g~JICfGzam`h`z~Xc zc7B+q??B9LY1aYz?%6cH1Y`P-ZhiIJ-J#O2jy+~VKZUNcCRF$WJpX4cJLwN`Y5WM} zoTg&4+v~^UsZUW~_!*TSw9{{TgtC4v=RbUZ8~wNe^(Nj(e)02pYdxZbZSB3e6=GxR zL7bHQq4LQVdS_Ay`9H$P-u0)MKD{P{^?KwxPXZ(MHi4cB=XJQs_v?5!)}7jP6MUMV zr><_KyV`dHUd8!;uBL|ejdb(DU1iPu#i30@y{lwb`Fmb3^&Vyg%e)L6Z+u|JyES#h z^G@=6@DYLeKi0tYkq@y<@*m$7HMD)1G=2o{&wQuadh3FYa=wf=PmZdoN4M%oeGB=% z-?y4NW0N#}2%Mj3>@ua7j&09=V8j=>jl8XD>X2E%^1SJ9-o6Ub3vvZZKRW&Mteu8V zp5Bhfm-sMbh@Wn{ye+R+;z@UBf9OZF5j_^>KhYhl>np=s3%<>o8{#LOr*liG_cJF# z{-RxVGttXt|3@ZAZ~b>c6YeL}Yn;tXdbsKL(;7>CpE-Wwgc3UEiAJ)feqS3FTp3$9rTRjmoUU>fp^ICcJak|k_W4Z-JV|0|t4YkBsF^E0N%{NAZu zPFos!1;HQ0A$}hSeXg^XzhP$KA7W3dE{)Dw*4??d7YKm?c zcQ^inm#^?CsL2@o_gVbdaz5;z2F{$MYB!#murszi;=^y~+dq%~z2ymgE|Pn}`35;pkB z3T7xHpHoAnMSyB>pk5a#Q8=DIliReR!y(rkOpwS!s{j{~TCu@UB7%_9w=4H?Z zR+v-LP^E2rh@W#y8zro1{0G{cx1&6bBTfIO7tzy%>op!+N#jG%rh*@C>~Ed6W_<_s zX=D2R5~43bd%169N26g~8y^DmC5+?$l}P7D*e~f}92;g^4{XuPc%83AI-kNkJQ^B? zC62N-$9WCt$1#SSOXEMVf5a#kYvk--Liom9-?r{SOvvB6iCUt)8NH!K)6u1Pe~E{g zAG+G9&XrwZPcviwd{J}n>-OMay25^BF|)r5Sg!i*>xTE)0sGO-JgiY!RpDV7=wanD zQ?DsxmQpnxJ%Eq8nM+J;WbRldSUt9QBEGM0UN<OX(%v9PqC-WFZy%}Q~6eTiald~-5_tcs$7J65!4f1Vl@91rjllQ z{2w1@uHor18ubPb&e4A?ncU)WXbtFjG#Rzu@-{9YRnaECIZEz2Fhle|Qj7oO)4`pPwAtUfmp3 zOyVEbGmaE!r{>&B(}!Tb-m+Xf)jL};v5&-GHqLEJj79jw%%8JWXbb(yViG@+6aKLa z=9&B{Dtrj?4MHllQCTM0*46Am&%k)~9xt;bo`427r z2>>UrsPG@S9(=%Gl?g5?`~}euFXpH61QnHhg?xuBNBz(vYU4l5numU%6Gg~hB3`K8 zysr-Z%p$_)BOk+Uc{ON87ZJV#d#n~WuBvMNbrC)>uXob9D(dqI7sfx}BcpzXdRw_` zE)oy2-}y(jN|-_GBK!!}^j5s|Rl}lOgdagp_WAz4=x1^f`%C^ojk3PV<)|~_f!yHt z)Kb~<`of1hOa8-}Tj?P_Dxbv({y)3oIe#r)f%Ra~GhhvTz+Z25G0;ioUGew>Tez#= zF@=R6$9luVjAhiMr<}LJ`c^|VsiX&HfESYe$=tupJWtgsyrA3<;zd`X2QhPB0T{=2 z@Tb80t9q+$FY}9kCdRYqp|@J(pI`Dl{{5M}W%2y-3Ex2SiS=Hn2j!LfLH~NIji<^{ zBCq5l#HU)7_EH%q=iz=c7z1qn;)R+T~nod%+ z>gX}cBKa=!ufo?bZ?$q3@@FM~n&{w%dQoPXkH~sek!U~k`(;ADu~+zjGeiBMuaXJ= z;e`0NYuy6Woj!KR-`Ao(o1y}@1gLG(GvfW&3OsPLI{u%(sy-xx#1F6+suT1}|L*xK zcqjP}^_!d2(LH|zzhpfYwJ3G>>@VWc!hb)wFF>8I{*!pR^jDXt;Ex>jJNlh-qhGM2 zvb3y*`Q6`u_f<2K&y=BECCs$^YVDU$1@-N4Xls;J{WE`oo_P@Pp$PS;RY^SWRNzZK zX4dP7Dz&;90EK^>kiiEKRzL=kZQ@q{<#!V{96f z#)shd7Z+Z|nhpA`p?!|{a!`*IM!U?n*{_WGj&{na+e-8x-jw6f=Ct_|XFTw{34Ho8 z=Jyr=zk0bb=ARof--GoC>N#A$lp^>Q>~_qfw#g4Z*h=^P(1P z>@0Ib`m^c3+#+`&-nk)s7WSA%cRXn5gd4a&E8)K$t7n6b8z+-Q4+8e_1p4cfj8koH z5^rPuUN!ml1T&a#3jWMz6t?e!5$$+G@Os+lvx|QkPsWkIQCs#$i6a?+DJKiRMQS3k zcB%g~6qF0jTM`o3G%QfLIkbjl+hCTXSuZrFS?R&SE_9|u4zgA*3wErzC=2A>P`IqQWYG6Gt#fmm?D3#02LN`n))En)10fk zADJ;z;}r2#(Wm-Vtf4CR;iSxOpeD}K=Pgu2uao%vweV|~#J5$JfD_mc&xs#_Zy2mX z%OA)4xCzf^9k^_rm6!P#?9VEhAMtBYPw?K4qJKXg+=tWZ_Q}2~;<*<5oc{Z9x&A64 z(IWFGh;Q{*135n%c=cl8r$Fyb?XR97*F!$y#TP>{e=MH;?ZT(%^mMqo{N}Le$#7nk zdGkp05FL{JL4M+@f?>e(4r2fN%KrJZH5@V80pTOD-nPSg4Ep8wL;s_s@V8FHk5!%j z?3MW3lKCEtSKhvgQXOmV!1)~( z{!H&f(JI66ZNd*AhW=#(S{_wA$D z-AO5mD2R;$v)2YYv0G8W_SkV048U$FJCEI6$gHuuyE~6@?2h-opZWfn_m6X(YdOQr zp0(Fr@!X&1exlKMp4Uq&q*j~MF;8P8-28fTcOT(lAEsjc zh{S$sxVbJi4t(VVnXkahndA}D6dEh_D5$qOZAt_a6b&9w^7qVTI!SeCIhyk!;+uKQ z9b4w814kmkQ+$;Ae5c>cQwyFB1&?=6;uobR%~$Oc2f~l$B4e*$A?7PfzP`eHu*TD* zMe}fG>Ipt=tIQ{lzsy$SJB7o4Vg>qVrn0?DLVc_bn2+I&hUdB9J9tERw3K=wjIZ?E zJ_R`pO=P~~_y~P7QC%rkM|dmQpP^m_^dI5nxZb9{JPtXzhVXZczms>!@-cw-8~*gi z4VSGGpubj;^@s6)KbJ`=-K>h7Zy0YjcDPSgt6rBAeu3>hrzfi!L1k0hf3{7<_$!0Y zt1CIT;d+{Cx40B}H)>RtHLf$z4<#|5W|j6CPu9FEP98zp8v&qV(r#6o)!1+!12-dq;Ff%Xt3yCLA7!;4^BNus@AfBgh z*G^Cw@?_)n!q1_ov14GO8g$#vL+~?3nMo=vA|w8u^)PB$u3t}56Izmopx?w;%aj?3 z>haj$&}R?J_vJa50MEd$sXWAuOo^)6*Z0(K9`_$0g@`V4-Im-U6>K_+V|u6_?Z?ozApv8k~829 zTuh$P7l)Nr8S0$SEgp@>^~IXIZu#MS%pBPoa-R3?7NGVm*p2HeX!3a453a+1&DRY3SVip#KB&32V1H`PajB{< z_P5cW0sNPyN5nJIn~29ECU;PCe!=}$lmEj$;?FVseJAYSz2Gl|dWwUN zYwBZszKRqKg~!oR{JoujXu7nqDp2U4rXLhFs3mQiflsjs|G@oW)%(p=)n9uxpH;TW zKg6WlnaVf#uSd-Uw{8F98^#75p4SOHzy@h^JP(fUj2Z!}Q`=qs>Vg`B%l`L%XUm`_ z;p)ebg{kdJOFF_sagOHRnd9r#ghr^>7q2;YaDRBPSBPpfZaR2_l?uNXd)0r9DiJZl zZ*UJt|Ey8ZV>PuO?jH}uoHq)59;X@aV7y?j|7F9iQZ#s-Kz<%-Y27nspBp6o!}H3K zr_Krs@sL(2xmBUejW}L}SD2hJA3Wh|gWuU;q23s^G`~7> z!T`@O)IxsPyIw(6r)4GhL7cWQUNi1`VQ6gLn(;fnfA||$W$Y=cIsb6a{cxzO>TZ_>xuN}zxC)E6*<6kDwN^s^@33@~pv_^nrfW z)S9&`g_od*$)9vpRs4|Y!bkADNPmaylcR*c;One!k+P|i@Dbe4u-&smHQ^t)hwB?q z75OZAtvqi~Ge%C3+R`$umAnJs$qqlda@O;bncl#LxKN=sY_rdrKuYYjvPO1Du zg-#0VQxj=(JsP@2scIj5QrlY#nCfxP4AN%&C$YDQdRRJ@f7o6k7=Ae2Qrqh@S64Ir zbEGi-N>8=kD-Z+OJ!c>J2gVRTw5X%*@BN##iiC$?z0oV@idryMg`cRip%&)**%FK8 z{Dykss$-LTsXWA_+ErB#-y%3Wtri~QaHmS}Ps&bhO7ya7%gU?2mj$Hq5cK0{ax4O4 z(au9GFv{Z^m^=Il-?;@)f~zC-=c5F$9dZBFLUq>Tbp>=M!t8nQ9s3YuDhLY zz!){o9&@!7ygVwEXLvQi6@Cj2zM(=U7hB_@4!&WfwJ`iAMyK)(70wp4)d&~^KZ9N5 zfsOpl3fL^DU%~S(^?O^6e73oF#vuN0_jee1C6Dc6eh1%hpkFTRl^uLThZ8w$zq>hj z1~V|b?Zk{|?XvM$4RSYg)%3zPdm$9zHK7t&R06sI~H$tl8Ab2G4xq9oSx+?KfB| z2jB2&!Y_SztE0WL-Z%XN`aiV|zCY~aCmnUu!8f?~{G`Xdb+nBu@ANaLSj2}~D8^SK z7XGKF!%u;+HSQl8jeD&p6m{?osKugldfWXQc>jhKd4c@tSn7w&A2SLxdZtIf-+|9J z$JDWpk9A;htmGf_%-&(}U1aNsjjY9;fx@ z>e1BK_zW1A4x9uZBK1?GCQVnj6S~V^!rO=^OYM=z^a|8l;csKiq14SI`dKqayG_7h z?R0b$GW3pFepkskNekyl~c55t|<9_&hN+Pf`vR9DS8z9=UDE2dQ@Db^e5jxt$wn8G$2y+ z`LFO)>N{(%UKtumeM$QF_4PfvpiiXSKlV@EDSLG0qLGp>#{PTqdXHY?8Y%h!f6u0U zdog|@B|b?0;bX;QUB@F*^gJ?N)svF--okc1gYn4Ho09d>0+EvcMkZk6@?_Lsh!j6y zuK&*-CF?=o96Us;-O2i&HxB;c`{-oosgCwQBU#%nJKAeM@6{WQjF9i=Jz24CFZduw zdvm+J`XKx<$n)`@JWR7wpGh-Z{5i#GkTS@ar z2kZ@Ab(i=tbDE%!>8L(krT=jcEiWHVfIi<<{29n6oDLqZodW3>0c{NX|1o#R;r=?> z*JH-&8=1N?-&S77Sk{w1Mx=gT*=?hA9q<(FJI===Uyslqjz>toIoJG_y@%;-$q}4i zWj}o2;Q-xpQ-q9v>iyQE{q&0I5i(xbKH}V47aA3T{vRmo!SRbd#IJ(u3-{N_zTNc& zlYEA+=ye+>bk%`w;$ML+kEf-^tOyL`sLJc;T_ms;~J(%x0d=HvcBv+*j~qYg-iUKzc08@8+|FI3waWGJ^QcbI=Fln z>H~7Urxu3l>gWECcUT^DWq3V(>vm_3S9#s*UPE2}x}A66_nEGZb-S2O!b{-(1i^nv z_dVHB-cP-;e@soCd9|H~z#J2F>|;$`uV+W+=DHOu8r|w=Og&} zk1N#BZ@;yd>*b!ScBc@1H=(`oAH3fo?`mkT$8DuQxxRc{Rb3xw)i(9>&Q%E3gRixr z{y@Ifav-3Fj?39bcqcqxmKnho%onYtzsb;JucOzlXvO)-!ZTv2n^pAv4=v?->96+m zc?EdOwV-|pzp6sqqw9fBn_@iXmwX(fOKJTla}&`^7{A&b>8GoW3;kdHhkdBM>8pQz zZX|jZW6&dO`s&P08i_uJGpm_?s;8cJy`kv&V|u%oBivkc_Nomf|CeX3_)UfN+2#!- zKb3q#?BEQjr&0&=i;t<7Ofe7bO0R2=tb^b0W2W_4ZO*TrQTIkY4aU3D`qVL3TGQyI z6>CFZIEnLq8S_rIFV_4{wV-Dn#(LAh+@J1^wcF1cc%DvB`!HY5x@AqyR|9%RF_V16 zjdu5}At}{4zsdP;`R4o91x9t~Idddm=TVP1#AB3AS-*FD^x_P(t9e4YyjKjYU)`i$W2w+h*25(Y z(MuU$9n^P?_51=0#@j^j!h;#Zv#w1E5`QM17xuSbY8|^j5bOC4uFnebZELgF0dha6 zKP8WyYh712K=wC0L-lJo)0#578hEk4MK7C|XR1D3;njd^Vrau8zHpKC_(3P#86-JY>G$d_AsCQNsuR z4_vDlqw(^0H&%XePi>=~C~Am1+UWwkjd!`->1y>e3QV@OqiWFQU(GSHyQqV7%lr>G|ou zrHU$A$BTNb8I>>8{Ciw;Rc)L%_MdI>{#cVS|80v(WBnfv{cf%~{%jxk7nJ7nZHDJs zVgOt-FyB`G4Gb6hULd~?2!ZSfbHNN&4q-LKhf&R*GQV-E9 z2CAc#N}#{8n~V|nS<+8sjqt?x{bu|`J#=G^eR1K77-R04zPqZ~s~G0nQ#cFHMXle? zs!E6l_XpsIrl?6D+pCF9-1jpU%ky-z1#Q%@Rc^wAQBR@fU7@<0)Wg7-Rl{1eRP`3Q zVgB#QdP6Gb!sf`AaueQ~de6u%&D3nP=}kk8La%5FCe9V}a~H+WyVazrvQ%(QwPqo`m?9@Rz`f#McT}7*g3fp7&;d@ACZ4( zw5$^P#YOydxMm!RDX+GTcahKMHLzVK&;|X|K-LepO6Aq&O!mKLjGXx(wj3@p{uyJZ z|7HDbE;3#?)<(sZS6*pcWd3G+V&aqv(6@>TkI4A;q6QUI%tN&hov z+y6-!JTG}=KTLl5b)7Qs2hH<8o;Xy^PV!O#S98mFpk|rAmzQ!WnOlAj&yX#el~QNo zbK&}>K9Dh@jW_0joSgq8UwK|k8HJkn!Y}gvJX`Ch>O9RZ>nmf94S4Ceh z*|Cy(pDi24e+l>m=TLo5R)OD2R?gp2ueaAUfA~9Rk@xd_!}=8ThhXfAF|V>-{?KSM z$$5n5lgD5DRmq@C!b|W>xnx*1d}0Ko|+N7V`X)}egW`2Uqrv8pH-u)nN-=N zFUX(2EBarRu=8go#y`!)2gCc-~# zpF7tGUHD4s8&EH5RCa-pKk%jaC14Gg`WP8Ly^#6~n2(J3)n!)L{H z@F|rLFLzeE>TdyKah>{?-0wHlw;R1z+z>sFF|cFFd$7N_A$l}D`?Jp7Z%m4~f$Q6k zeD`eT>s_ae&TYvzyuf^)!5p&lijg+Q4bc->Q{`v>C*uFWdU&j4BSy_)= z_z3b3E4$}Zt$Z#)F9sTk`PSu9UU-yV5Z;Iy$jp01#s7ivIPz>+OS`LL7Q0^q``f2V zQB^S3UcZ9lv+&@8;LlErK1)CDvcq$$6_ZY*e#t-ZWw?o4^BmA$&IoV89Q|cI@~X=J zoJKx-5m|2ve9i|?tuq*}nXsw%p8vo`vPa(|0B1k2)&) zHEVRu>fR8~;StnJIEDG<6z)NDb?NS5sn;_(o3et`$gX;k5Rfqf93N-OMMLXANN=P zKC_A+1^rpcJN)}9h57HY_qqITIPwYi$^GE{Kd>! z+|g?F^F5dkqNToWSI=nG<b zySz?Ksd4aFcsy?t{}1jxd*mDk{&cI%-{d>9*v7%%d$ahJU_MdRJCBEF(njGO`1=c| zo1n5ET2DP&^!Hg6CaV87tOd_DMD&+mjV8gLeYIS#yr=GD<=btg@FhHxuG%vN499Xj ze@nPNf{mM|=D%Eu=W{LQ+x%wSmFcSBlErd8s}__n--papODqe8U&4HC&Mi1gS*-Kn zFEI}BwC8G1n>dV*xtRarsTZ2A&hhH+TS?OYSg*}K-Qrc+B?-bu@b7=b#iIs99QtP| z&I=x9%N6lzbpM&)8RlU>>2BuS5wBcEP8Yt4{trXK64caHQ!ySUbN(?;hsVRCWU_o7 zHPaGr;*ife3G-1`#^X)sxN5+>vC_ZL2~6uF@D5v}k<;0m{=ujbkfeHy9wq(|7m80c zUwuzfS5A(^`c(_@iXLXy;Mq!b`Q^f?N$@`p5dR*oPtzkOsgGZ)fLEF*JVR{26t%8fCE*;S=NRDf|NCk*(Xufgkpe*BSHLzb#(Pt?Y*R{>3}UGVq$ziGx2 z`I$v3C#nW%Kca2tAqpiWs`+Q%NSoI)+ban^0xwcuZ)#0aaariMP*eKHxyEeu{feE3 z;F+EET1J+#^AL;=($8Y=y3?9xPwt_gt(~C)gHDhaP+Xt=pG;A^dK_iGz3B6;w~bZC z`(v8?6z9MHX8sKigHxy%aaa79mLBS$s`a=Ge}%dxJtH0ssEvH`JNm%M7(5GA%&7yF z@=v%2zl2!R$Wqmuo!L}Ajc&ppp^M2gYW9H*aV9yddETa9%7%xH)c$A3pyzv<*h7Hz z3sf7wpVssfW&O;fx2s@Wo`zl=3|_)Cvn;Brz7{?PeZ4CD9RkdL%R}I&mID2}DEJEx z^H}Z%@RQpH{XDbyv-JK^6}-lNjdQAr^M%>hrGh#hast0^o{9LT`FnRocv2kK9cG4` zW|bMH@9xUj^BvZBmdthU{xQ#A@mH6-9nid%Ti-^THI7tM&7VV40h_U9&?Iy1-9Y8B zbFX%7R|5G3pK&%dR2}C%8hcOdcRxx!MZaeUHPR04|-`h~j={c?8|7O)(YuSFBuOqI1k7hiY zOhkXhVm_#56iXYbW@MP95&IB*^l=5$%SxI;z5x57gGR`^N2sSZ zSu?+ieoEykUxS7-MRRTB9E*H4oS7zJJdcz8_}eM>jag%3F+Rs)Ju0id<;<)W6dep+ zB3bhN0)umbhwKUehEb9ak|9q%>^C~f^T2;wb~T@RvZuM`+<<4^7*wEu>YAZGUOybf z{qd2ag%vb%;UD<^ZP$t_l|ESfADD0Nlh+L%l-0x^0?((hGSma-pvv+(`rBCXvxNFQ z#!uVz#a@PQiVx;HA5ATd-`9Oz=FJA za(UA_^RL!2Uz*6bB%pbqpCuUV)2V${>6e5Rl%24 z6dr>2Xt`$qJzK0Ci(G@r_pE3>NB9NCcYehhh;hu4HvJRAq7C?CjFL8a1JqUm@7`A0 zJi~tcYN)2xD$?fuA-;n`jpJOYZSoSO`dm)sALaxYjESd^J>mN!vWBRK@ewJEmGS!u zjjDzCl2Z!LLX2sDJy=uKJ)CbJ_DaG(@bzl9ZU><+g>Q&|UQ3PNIv!e)y}fRJuo}1c zjD_AI{JchGgRp zX0CIy`R*Q_$}>cFcC&R$&1Mwn=S490vW`>_`J5o@N@V-zTts)Zrk$}4!*${ozu4Wn1g3{ z_#(UQ^qXkOC!_{A-8(z>>JGl)dzLJ=wdEZ=L(sv@wgQbD?P5+a_?zlt+4t$~)!5@M= z8UM@v>yfTgEtb5E_;uwv{XpN#AItc@@K1ac-rfqTQXetsnX~HsQT;flz0EmpLbap% z3jA0wH%fmT+I2(^oe?FU#~4NVu1EC5CQ;NYq(5ifJgomN8zp=Q&$CrR4(qdpqoltW z1L^qtkbd$y67jR6l0TKV%ORcRcBJ$_d6e*52ldiJc7B5K9qY7%`sAueiO(}0lDqjq zeQZ&rJhxsiy6Kf?TT-q={~pst=2DfgRye|FMA-D;Hm{k&&bL-oSGcK(6! z#^mk?^`Wkjk`Kw(`S%0c+1u2k#=ks}%4@J4z2t!I6k_K$*tUco&?hT8+E2P1&|&by zVEl+<;&7$|+R4e$ZXA@NZ}%K7@nXhP%GTJRJ8T$)c=ZD0rkuH{U2Y!_JER6dVHs@sr&-+OZDqI zU77FB{e#8U`ES&(=!*Mq=NFJ)3ccIW?lF3(UI3or|6czvW3ccP7>nR5DqC8m4Af25 zNj(nH|MT=2sHY5*`X0hxG+o+X&uL}nA^7{Y%Ju7?i$KYn6|C6n&EI=P9*O-=rh>gR!Dd4*OMIFZgZe zAE*bm%v)2J4C)}C$Me*~_!|28-S*697XG~0@esXrik*kx@2fwz9_m@NmFwYr-FbaY zJ;$Xj^>c&QlxwJo@zzH4Pp)5|YgN}x$F`RK;d$psHB)=tYbCq`e_#2SAiZH$EA+=< zxnHYim({b=wUW=n9AarPq=c@wsD<2b@=CwT7uUmDG#B22^BwkkdYfM}_zNAB{4SU3 zRrJVGO(dSqXW*}N)%E*~jm2M`=a=yMCG?GXp~&Yi1pP3riTY`J=U2{grdim-eSL%UxsBc#9 zywl7+xu{NGupac5-8hd0ndiRb)n}*I5k0R;SUdBZHM_nVP#b#6L!95LM8MhF7M8!9|YIL^OFbsdS7#mtD7#mxF+@op(g7M7QFn$`u%-%JTDueFXS;Nw7X>8 z{%?rvA8@`>VYySRc}s=h_fHT%?U4CftyO0POMl`18e5F*R=~kcilHzn~pU&|A1E*i+WC5thLWtgg0Q#E507KC`jfP?s=!U zFSi!`6o~o51AM_Wm96a}Ypptg`2IrDp4MZQ)oWb<`tuyuZ)jD6tyhW#2#>-u$AG_E zS&vSsM!rwtwHf;N2bsPK`7gG~6g7cQ9J_r3KySaU*4)UE}M*K@K zN2r-U5A0Lv%Sb*s_ZV+&`BNJ8C@t#|^Zl)Xb&}sTC@uRn#?QgO?cKe@Tl8-3vA&$n z6Yv#&0AwM#->6n`W>BxAUa}uzK5X#B5tbIyO7ebi{x`}5##^XwbG;_NxwiZ+i_;_4 z$MBW&Am{uGrsx0osG0_1-IiV2?hnEFU`^m-%L3#7>SuJb-23&;lKx1sRGz`=^uw~E zxuc!tZd#+)BRdbl`K!>Y4A4Iu?e*!h8nJ&IyhH6wIgQcN9PN$;@)|!2Ioj|13L3vw zxbgZe{5cnIvT84EQ7J$u7%wzTM_WC))u=!^4}H}uIOiu>a&zx%^)*<1J; z=D1(_+#i}tDewg@67Q%yzMsmQrBtf_!-s)=)zD#Hm_O|GFVfcSt2VzZiTNC{WO!_Q zF6)bYq>|u|3dsD`po-B$n(JY#V=i3#MC{&|16bwc-w-l)zn|^!h5nFSc_@Rq0zhJ z^J5jy@bj`aQ!hHZ%YKP5pZjH-D7Oc0!hc~5K)(q^eyyE{pvUH^vW-;DHE!4+_CUOO zwVK$sfvUCGO?U^kQLjpsTkf`>tN?RP7KhbS%ZIvQeHjitYy)DzHC5q+PmN{S=UYc3)rqzry^?Lx`}@mW9D0LS5*IGb+q49 zuLM6@yI%$Ct+O6N>sPMw_q>L?Gs>%r(_DpTAdf(PVFc=hQ2XMUEhNPco)&h#gM31V z6Ml#%x?=qwD*4F=^OS?%tSiRLc*&2UAHlNvuJF%UCHLdBx4(Ki#1;GZJDATms+yGp z;m6>L-@k{vjf!{^r~XEYQ)WQPX z|GPwl*)pYsX$yhPPzqc7qs`O)9AF~4?HyBGSvBOo94vvtuQA*i>5nibRX zir)$K>GN59;bD?Tcm(XX)D%l;b@ZE^e_(&LE9a$JtK6dh^Y?%H;H7em%O$)E^Cich z^?@ICPOOjh75NkLCgZE;z<9_i^){$!{_d7t{IK|pZORVbAv&ASy10@BH~SxpbwzFNuw+>zNs(m>k_1%#%0Fu^#li#1#C@#G9P7<^A681 zj7M#$mPyV#JfmJY7o=WI$SD3DT)&fiEb8_3403+Pej54L7WJ-l2H{iKN9q0qsTZTt z3s1tBS;HAYSToY0zRzgkgZ$3~sfV8FWW3M=;!=4F^2?otN8;e*^J#^rpeH)^ zNGj!d8eCs5%$GrG{i`4_4r#>Cg#5+A0v1(ln3M1#JP*GyENaP&KjN3o^X<1U0q~># zO@9H&A4H5>-L?FJzriliuZwoAr~)(mq+TGed*}3l-}!g(Yv6w3%E=PQ!T-kmNO}G6 zJa=^^-8bPA*nh>`^C4#URq~A)9~?d>E3Wek^tSz&53|Ex^^bAO_8Ix5R^c6TF8qL; ztxxjz?Pm<K?mDfj|vin2ub*yR7wiXy8IzEG6dKTROdl+ByjoZ1OiXO!nU6qhT3FaITAGVTc)v+>-zBE$3RJ*V^0CrUz!(_Unzf(YNIDdB$q_V~3G_ z#!cw;#i=*Le{Q$YX3Y)BcgKDUULE@oqqg%9T+>b-I%o_Zb6xV~$=j6se$r?adjozT z|9}UY0d4q_QRCSS_+MN>{L0Dv{qC-@yB6zld?tTlx~+b0^nG}p`Wf4xA!&Zk>!xT zT~W0fl>>g;S8UAXZtNm*x53{;qu2{3<%fCHZ}v-!k_t49}Vi7*E0CmoPGm zhbsQpdC9-#_=!nZQhh9P4*Gv?>Hojd6<6P^XW)-e4_sGiwf2Vx>a(9lK6h)yXTE<| zH+65-DLj9rkhdO*++P>?DV&n~&GCxdMVt{%N&k~+`<2%Pdcrfwf2%Vw-Ki7Yw$NREs>itvVcY-;=SoXDoirsip_zUunwG;hS z#34Mv60#_(fk6^r8<^9iN+hPB5SmuX(n~te$$HTD39EM)Kj{U9rKI{rc?2tUah-s-= zlX|Hzzk|q!-wK^^vO2iDuR7*;K=gX9pH(6T!h>l)`fIh~dO!c=5af5-z())c|A)1A zBh{OB8t?BfeEj+IV^GuHD*P1J=sAC)m1o5i=}-Q?Fh4Mj-;zZy=YAt1d@S`d=;3oj z&wgr-1E0DFyx9iv=c>~ZdgSQc@VDrR^GO(MwX1(F?3Da{KCf#Jj8lFmcZmN4*T830 zCa7~`w~HSE8H?h-CO{wBD*8WTR2i;M1OvB4_za#wC(N9rW?45;uNEFiYXP4k)`EOX&6GFbdc0(N+tdmhilp1B|W z2Go=D)lL613*foZmwX%M_gtp!@)Gs2YA^6s%Q1dWsM6b)fx(H8`_E^nRK9ro^FtK zUza$Qwwot;18INKaq9ju4{0<0H6kb;8oMjkJK^~=ornj+TO_sJb5nv^6j4aNkDsx* zBt6{naXf-A_++^`Gg1All3REQo?kEfB&j+cIk3Li`GZDZlT<`x7W{o>`F`+`Dri6k z;UVyOLG)_~?rrBG$TPT}!0Y$^NPaovZCD=In6=2*CncCtMCxyEu=oi z;jO|$P}8$;oS$7O{t)6fG4)px{4T^Ff`4zx6`utC@Vd7D-ouu+O%j#QjSKJ>*e3qM z^SUNtKX^)WZ@};0dN=_!k?2RTL)x1=%~C$)52IZf^Ya5^9k*S{ByrPUr!s=*N4p58S8zI`Gn`*6OI z_V||<)a-44VNG5}JsSJV3#fnB7k-8dp|>9u-YsBZTkyK;aJ?B!#{5_hAfd`h>hWg( zJj>0qg)69yz0M*gyw<#N_L+J4az)gbJE=#RE6v$8UYgT)V2}Rn2zZaVh-Ypyo1gLr z6UzD<)sUYx(Oj1!0G>`7^+d|!^9Pwz5`wV*PXWJB(R>g&MEH-9zE=1-ypwtmyen&xV3 zqez0|#|dnVdJL@(j1ZL%iv< zR@#hbukO%A-N>{e_4Pt39R47SQ`_Vr`p%k{`u;m-nyZ_?lh7Wk$U`h|6RMIr$EETR z#h#Q>`(DSRe{aZn4BlZzK65sBl&kc=RKYhc8_us1H1pRve>H4;-54D>LzAZyhCA$& zu{~sh=Kh3ya~qc&Dm3e8{NCvXV#bEgjoe^B2W#?I%E}-rX>@9u}%!eQNw4l0v zy_@h1jHwknQwSbcUGVwth_BVece%l{tONc&qv!*5X1c5D!&``71fC(|Nta@nFY04_ zE*JlZwY`h0OzlF*FNptZc#kspdkgrX2f{x*Sx}Zd0iS1?51Zb^`OVEw)7zbTShf81 z)ZK(q!b9-i+@o8lrH5QJd28}&+M|<~G(| z7JrEh4LeJlW9;s63+ijE5x)oeX^r$Xl=p&dR_-4;_cZ)vQDB~hU*P_4K%xaTJQJnO zzxP>TQF}Izl{Vvf->+D(KkSy;KHy@2=?s=OWB$&aE%19OZsq#Hc80}4sJWKj`hWbx z=Q)N7-Fr}Y2!5V9Bm^F#yHhYf$@|w2uc01?_DcCb{$Xk3nyN(Bxv4xvv5d7a|4&cl zAqLK@r98iOO64H}uGYfyR)*f-h^IaYTDcT8@tjr&JHt72$j&P8|N3fStPb%JOQu1n z@iML?&U6;h=g9l_+|)dkhlmH?erK2-%zPQ zN!ypxj&{w;#lcV5c?atAp5xrX1B^-K8D>>*w_SbcXm4HZYP(p-!8e$#i`ot&KcD+m z(T6$~w$&LFEq;<5?_t*p+E&kwM*M!G@Jf->^V{-Rqp5#OyHDMGwvG=Re8ZT}d2IQJ%#sR#enp-e>2BQJ`Od9+-~V@)r&dW z)*sF`jd~N@PqIIMtw?LzVR7&dMwc|U=Z#{;-Og;(JD4|ALm zu7BzS{p|b$^&OuoKTw}O7V$Y(;T`(S|DtF0aqtbt|NX2hjC8c`9r~pEO^B8FFk||? zj=qNQ(f`5*G<9ql^RUh7ZwV?{6K887(mOT8a{68u{- zSRdBE(3w195zpBo{6M?K&-AAccHV(=Lappib=-M7-$15rNbSeE;}mQ#MngPnh18#Nqt1NYIwE0C9%rZ4KJad!TJ zyu<|O3)(N;DB&N-M-2LQPUjdmQg{dMPaf1dr!O@c$@r%DSDZa~R+r6ef1Ukv#p|q| z`P0Ei{K<^h!Ao$yVV_T(d`4$VjFSGNAB6kI(>igYqdn@>X&uu(O7web^n)s$){jG@ zL?30l$AVM3eu%xz_}|rjr}PT&6pVeaoh|Jty)K8N9klMGE}cG#@muj%d)ncoj{Ir& zpWx?lFW~+$5_<0q)FV1-1RXq~-~SsaJPh@r1s*4LxOVUlts#X;?S)N_qh5fW-{2UE&T&XLdp{idNrdQi@CJgv#9)d4 zvW9pr&lURBoxZ$Zm~Xs!9?}iA^pto$&vQGTOw;Ykb(i=j&yTIoP1Zj;bd&z&{?l#s zBppzzn~W#6BL_^>@BF&S{bRep-SN7jN4HddVPcc<=r2cmbIEafz)J_e;4ycsK7OVv zl())yP7lb6yT0$vDc>xq5z#X$N;bd>eRX<84x<#!kGQZZbwEO(!T>(P(8 z$m;o6$a)%=;{%wJnyYuG{j^x4PIjlrLFpdQBkm<914J!*SaV+YsPZTq!lek>To zEym3g!Mfgf*2|bzgxBr%(v!oQfJgWT`7XCni?p;39NJX!x4(}r zWB&E3BK$-eiynmWsAesNf5pU5Jn!?Ee`LZxOP5*Oi24Hd{~b+ZK^2|9Swqq13f}ND zuV3=h`@I^7K6m46LDQ>wNxf%tJ@MN|Eh)t6^XonFbx^;1mgGM#wQV z`&gf*_m}zvA;BL{nOC0KdB=8B9@skNeSj#TT;-ctL4EfOf&;_^fZHi z#93NhE)RXr4ed;3%if=Z%JuRCFOh}UistzeH1BOG%=dXE-!x)J4okk*Uev24U+||>2}_cXSL%KO^MJ)OS4o*4 z8MAn~F~)K`cL`Y^xV|R#USgSDgY_Vu!2d6!(W%4^OXczQ`WT$=t%Xin+LfbU#9_Q| zs%6iMbCwgw?S2rPBd#^QV(|#G*UMlGXwt`9mUeIL`~%xBMm>V3qND9K;H4!m^l{FO zd>tH*W%oim|G;)w?w^)Ur5$b5w>CQMwDS*qeed)P#vasH_`knTzL~}7dCE1l?Vh{2 zv9^($t``uuc(80&Kbpjd7!@@AlC8$vC6l` z&!fdeKgRs1T3vQh3%?bEUVW4C9MoP0gVLio=C2!g-hQeRZ40U1sHZ_bhx&@=xKhYL zEFsU=x_5cZgAIe!X>Tvw?>r`JxVR=ZLH>?6?pJZMVbywO%XW7)#tY1MYt^-eVaQJ}j_2By2WHZWRCTo46W4N zVa0^UVhrQz;AScuejLmdpa;+1NsZP0aUR0^FkW>#cc|*>>A~>`{b(C%Ni(4@XO_Wm|54+2Gh&;p7 z5#`}o;g0*&np&osT)Kif{L)SQzQ}iZR`f+p2>bi#siQypqQ0b^pP+^Vo=}0&7yf~o z(W+9uDhYfAb6u!cjL1+{u(-&w2N_V*N;z zdiFj$pw_IiX@p`5n3J@NH*UA_q>mi)#;VS!6{vPV}Cs(l^ z$TsXxC#e~p{>aBIiuHT}&&O(DwMvNJ6p`~W`|SM|7Wondz)w7sc#DzK4;~%)#czZ$%eR&M)YQiLG5+r3e2x0L z9m*m{KcDm$>kr%<NFCf0bSGqsU+ET$NkqOKQA)z1F^5 z!pk!sc0$qe>fWK8!V8g4+qJg>G?^UoJh6Rsa7FMv*@Z9T9Q)&WWyJrogQqA2y{QDe zO{=Ov&ur-L7Q#;;_XqhNS;@aiz7qBS2LEP}dL_)yeo`|?jcu4k_ywMc{T>D>mwB1x z^LSo+RW3;Ff0YU2m-+QCjGIL*>QJ3b^8Gx|m`5$D-ai?+-{Sa$R&P;-|6~w963l^M z!7T7A%>e(SrpR~LVdR`+QLDG7m--^y|6yN@I9fVcf0%EarGW)CMA8YrLp|Rkn?SR{f7N9^mtk5tv^M7WDZ;A)g=+H z`+@xCEy#z>s62ZVQ;TYUhn}(q`cxVn*Jl}InWPXbxyn6C?E5I^%}tcWQ8Ba8srtdr(P`MvHztd#@L4Mas6*a z@ANvh$Vl$<4tmE&#AjGzg1X; ze79Gk7jpmb=I=E|T=Zj}_iv0`h%^2(8(ALm z1zjp883o@x5q^U4if`8GM%ehr$j|i?Uc&A045LczM^cZ2AB{4tuM2O2{SNAx|3uA^ z>oUHWf4OI~GdzB;Nj^9|K6ZD^g!%zjMSmpYw_;K@<(zbd`M}_7&cKf%7c}rIlJCuU z@s#7aus^W-Juu&&{t2yOuRxzJDEWwQo8(iMdS90OXzte^cQ1r|zDv;iFxJptLqc3p z-}xf-HN|HRzH_Kwb3uL|`Gq~3Jyn4N=l=KmyQ%fhN~l^fXN7OTnH}1vr|RW;M(T$! z=DaAv10K<*=vN?q(ofA2>derS!f$X6esr)HaaANIlgbB1~#_>ZS5e_%QFqT6ZFTj?iA z|D>>pQ`85A?{gYb4f@SV(We>nuWK{Z!b&H_AA-+h@v1d2Z=Dc6fcp)21F9>TkK6cJ zJR^?C&dPMvka9#)d z)m_2UkNNDvD{|h9@IEBG1NniZ*naAY*FoWN$df_iQWpyykn3SS<)8w?RB)mF`26nl z15odyqM%>cL_e1Eug@5DEsqxdiHs9!SF5*&Q{?%Tm}&Z0f&oTQNSyAwItq-UriA!+W#Tqafe< z{mL}8#C;R}Uhv!BE9UPztM$S|kT)$}WV%ZKeT~d7l%%%uU&o z)IX6kg-4nCS4Q~1B_T#IUHXfjM$~9CPnin7XeNEl&CcslpP=C+8K3kI+*&C~h4+{s z^HI&IzVi9-cbED$h~b#jqj!go#eA{?eq+VWV-d4eAD>v^VR$BwX+KAeaEq4DV~)Y* zmvdC*+ z-6jjw-?{qWc{&9BE6`l?Xc_h+Jun}PM}EZ_c$=&MUmOk|suT7zbJdB26&SN&)bG(B z6HpIxr8@nlt&BJFx}VA}S3~}7hV?Z7&lj{~zj-QawtBMuFus8EH2l_U$ofLfD&y7! z)Yk}Ry$RI!&_=0z@hbbTAl#o{5?`&qbEaB7qAGb0$){Zzih3r;D+?dN^XI3lv(%*A z6;s>ey2h!vn&mh@i{5nn3^chGz8pW&UcPx2{47dyeieQq@8-iz@hYqa0ZXy9F#N)_p?D3_;0kJ#%4+1Yqom$ zID_yLxW=F&Q}O-`>E!S6c|mvA&sIl@rs4gN{3QBCoc;NodaHc?v!jVB+mnyfmxX`$ z@jOutEc#krryd?zI7!vN_(b!wuzxW=dnT!F&F?~=%?nL$IsAo_)aBS~|Klq>EhTm& zsi>P5q|NsvI34MWA6aGpD+%>57RveX%!^p{sBog@ z^G0UEd=#s~uFcfcZn=I1=Z#Sx+Ro7A$#|w|Rd)pHkHia~!5Bb=T}{By?xG(C@*$$k z*Ow}QH#?^vM6Q7M%Ox|=t&&>gcS^U)VKpDE{DJuc^_-p@)qS6xLcT%TVCL69$a)Ao zL?JoPm)L7jgPI)F^d24YqPB_ntMci+U$d4-g-i`i_nx)j$#Put>`ngaT|`3_Fy@l< zC-;NbFNLZbTQ9)x!h`22qwSsgU>Z+r?pL_qCI5Hw{&CIcnd9-|(Wa=maai*##Q4pI zSiOp5Sm*H2c!j_anxkavz(Y+HO_1EpmqEh`vuAqRZqu$oZNr_lx`4 znguJPeqoX(i^~1|u!>)e3C1G$V+_Fgwz=v!<)yJcX`b*O{I^^$z8DwMCuy!HJg>yh z&Z0siXQI7Fc-)Maa>4IzGJgL&>>E=Ic=)KT-zK5Iib}nTn;XDHHyet>7}_LnU1r&(v^*@jGA$rpjDar`DL_ZDPCPhAZJlek&h++W4z3{>m4ZN}&2 zP+a48JOR%TkZk2xe0?iO3P?@Wx!|SCC_5t!gQN!@E@DE(Gzc#O-PHdSXZSoSka@ADczVA|bh{TDt z;IE}psLgPEXUtSvJ$rOBnc5AXk9=lr^(j|&e3!l5E>EzEs*uQ7DUMs7mf(p2@N>P3 zxjI33vhEcsz>mdMVs(5Tlirn6e_qwWYrdjaWpXa3vYi>4%0sw%c-#8AjA8th`!nN3 zT`$|!eh!|Y^y`w?TRYm-GoyY+PP?B2_5GVIJ#71xgJv)REnY&lWH*5itUZ!r58v8DO!Xb(G7z~ZTb-|%5ZR@?h*4xZs;)vUJpB^~XxceB_Q7>;(jjhSpQHCPX#ru1*l@Qh%w z9el&=%o%Nuz!TWdo4t%9Mh4q#@C)!8;(TdjX^_q~J<`E9#JzX6HJssScPi~{J3iOJ zJ4|hy#uhu(!8i2&>}1Qb$kD!&(aE-VWvu8wjNgnH`ddF+8!PcDKL2|U{?N-X+j zFHldy-sYOrYsfR*|5LQ+jXbl!k5fP06pi@#Jo&tRS02G1-`?i=rhTS|dVMi_n=y+Y zf%mn`t}&uta?dz*;9Wi4+ummW%E?u?_3!zk<#n!UZSUOF{j-l2zJW1>BE4?tsIjA% zuLK^8^-{0vE5$}heFX9oubN)hzjr(MhX%*5>5@b3ZN@Mnyszn_eH}bR)TFDrPd7)~ z$@Qv!TWO^58e{}wUR}{Ue?>_>5Z({yBf9cON85MzWxeNxosZz_BjPXXwJA}|9}`|- z%;!tG!d5#kL4F}`mrJ_aN=JKotxNi!$SCLmcD|v_$%}eT|0v-b`2HnrFX~NQ?QPz3 zXllB1TSt4}Xuyw+9PMSfE(m{t`Hk}rVn^q7xyn)0Bk3h!-1+ake)-42I}DCKuebl_ zXcx_XUXQu!;2(+~I;op?7$N)v8Pg4e=?5`H^j3@)b7j4?dUL0K&=c0eudbB&cKkeD z(dZ@qESR&^lP+<(_SWt)-g%xLb6|$h&F*r|PJB-GpagJ8RSwJ+6$S{bTlI{V7+sRGuO7-Xy*3Ls#l; z!Z$okKS|fS=HMB~U;N(PHPx@7^z#YuLvXbJsWm}Q9q4GE+B;6i2H4yDe$#c!)(2o%P@bU7#0aeMkf8|1wZgVs(%SpTA-#4G)e z*VGT&v=x7S?9rfQ)z$rD+Q@j|Z-O2KKc6;?@5>te+1sK|JZVjRz{2&(Yh6|NIke(@ zhW+3c<9bXb-9A$bxgN$>p$F+>e$Ba_2>(?o)DL^prqDZz!_RA`LJbQ2&DxZFhv*5& z#{|#QRO0uH_dK6iLEq}zRQ$6U|2tGh>6jYLIKRk#ETUE;U9Mnr$yernuJxUqjS>I%GQpT39?(v&-V}=YDb#cyzt6mMpq(z> zI23$iUvuhT*G%?r#deM8w}JJoiaBkZzpinlA^R8c)iNe|kU>*IF~8=AUteo8OV700 zTBx?@apaLv-_F|ST@BIe7&HHG&;@JnLe(X|lg!iIgkx4qpAh!1@Ff|pAG40k86x^K z&m&`29Je+Y7L55&f!`QqTv~D2I&-Bd{?pVu>PIw~CofDf3VTCS*WJ@T78 zL~E1#QL?o@y#uLtnAEcZBY&nK$CZBPXkQ|`nt~b@@JqL{KUHJ50@jC*t1*Asq-KHo zY1Z@;szJ{$X~H50Va`D7{SQ^CznJ~=B$(&&1zIa7SLJvR9)7~0;#Su|RmER}HAi|} zd6rURR#o&@DHAa|b6SrkDSzLpD*VCwi)GCMg|?-v4E2XzcpY)t_v%kl{*(<5tH}K) z!w)_oAn`yIjGv!4A6-&iJ9dD7K^0t|yUFvx3jcw|)E2Dw@x^>I@}Bw7Gu#;1vMT3m z@FEq>uAaHzXHXgZNOhAr^PvlGTUMKu!1s8XVab`nH!QMby;vT4)>F}Q@yuAVjQ6Ad zE_&(mG%1$eDZYGO#b01j?t_+lMSM{&;XlN0ud4JDe8FG%K>wO6@$bB&*IJIC&GRt( z`(DM>mVK|wF#jL^;4{g}TYj`I13qN0D5Ow9g8X>`zij-fuz=^@(!hCe2adz zAaVOn` zcjNp3zYdfCAUA%$iF3yK7Q0O8zg+1LCGnyTUk;dp=G*v(W$7uVFh^T^Z^blI=tdj= zfchpT|7I@2uk!O>J@nH~b#dYR&-0g7zDYyvPM(Z<8Qjwi@tvYw&+CHuVTkA_6DGxJ zssFfeKP30B=!Wf@GxTxBN_ajyxAD9-`L3(zvy9(nTMs4{d<91 zWL&aHbGYq()mP`{yUFupjCXpWx+->& z8`h(V!WZqETnGNtZigA~rbha+du@1B(9dHEw4{}o6Kkt}F&TUWJt>$U;B~|m>tVR? z3x%%)!2`in_y@*}-VLvUoCf+?499tBspP8`4|BEh53C1~RK(TFKRAu{RwaMB2*1G3 zJQh_J`C2yq;YC6@+@p-w$v?PbL90>61w27V(a+nSFQ*=q&3K&*#M9H|)!y&U!h?{p zXwkg_{4Je@FC$Y{`)5TJu+ka(i`nAGldGVQYCX#t^XV$=C;N(j!@805w>T~Jni{58 z$C=+5_wTLL^SGhaP^;cLVf`p3xgm_dd2et!Os$%FSM@x)D(2%P^%Qv~4IF1ukNg~Y z9>V?Vpnf!{j`&$g%m?R1&wkO{S5*xtDZCIpT8r=WQlpAGGuc7L zPwjbw)R^5>)X}}g#b1cu`7o#o>bDoe`hQXQz4ec(z@wm;tZ%%=^b=JO|0>G;om?O5 zQ>^V?ggh7gva2Ij?SmRsg~2bmiQb*f7x9HYg|J@bqc@Mr<5EQxo>WlU-0u`~sET^( z1;pP0`!V?MRe|1-AN~hfp%)ZUq4%n)-J9~s{L1rQ(0pI`H{_M|nDZ<1k#BC!gZtA| z;%oc=^;biR=i&YoaqxPm-5dZ9hTL-gAz#M$NBoyua-L-T|3Pe^ifoaK^QrI}dx{3Z zUpyyXFD<;=skk7OHET}se`Cz#SGFMJ&*h-siqtRIJqn%-JMFnYRXn3IU#N0%d-;3L z=j0oXR9RPTG)WdDUZSWDRwgnZd-m{03s{zTt#2ttjStQfyl6wjy6 z9tEO)Y8LKS8Glfhy9I*hp!2%b-*aSE>ULh6V>$`j&U(a4Ir}Dh` zP51}iv-J-4szSn7=x=+OpQ}or`HY(7Uy(zySH5q;$M;(Ozn`t`lp2q;IW<2EFTwth z?f7|Z@6}K8d5jm_pMC`Ols*X`!Tv-4f}$-xN`5)}(UW@_V>P@AdB{)Ul<3#P5JPYjrQhYqi`S3jaX=fsW^rv@#_g zNIe7U72VfvK}`2P{T1-LOQ8P1F0HcfJ?NA6;^&L{mhhasD?9-Ci|dCh+Oxnr&;tvQ zUsijKQ`+jF+oJE2={%L^vNo*iE&08SFTDEiw&vRNriHareuMEVRON|Qpxq7Rhqu6b z`32A7opxc;bb7{>C})y6_~7l|oZgrlf0<|IIaP!>k;rL3~y8Zmw~~2IN&P z{jP}KP5t&-We4^1W4iDy7$17iB`&IZxr@+8gK&Omq+h!03csTZ;6uJa|Er-RH&4~9 zpDy|<&a*1!wS!uo`LfiTU<|Fmi{hw}cM1AfZaM!HuI;4G^hk%Fe^$|>oA>d6Khj0v zO_=}ixvIB%5PX4pn4+IRr_E*6&8O#}ho&L_qrPgE-3y+=XW5@LIX@+rfnIh7egSz< zFRGi=12RoZ6TO^!&SFixRK0*y@qZv6eeY;#tly`^|A9P_ z+l|tso(cT`%)dNT*0eO?EqGoS6jB;Y=xGb*C!TLk_AI09OP^u>xkg4f?4g&+wDpYe z7I=^9RLUDV_gUdx$UC@2R)C&-R(J{SS+e)4jQssGlFv^jGu!H_sPTOo_dgVRSPnf` zB|qe#lkb=<`|X>X1EJHNu~5IFUOuRduDZ`TE%OCp@~Yzb5LNUo~v zsWM(U<_B+Srfx1gCHgVXH#k3HzBws;4C{e;H0((I3cOK@><6pe?xwbvIw7A&{;%HV z-fEJ=ap5a?KTr=;H7R;b#wUMc>1{*Q^}I)=egb*G4^xJ#0S-r`KQc$=Y0N0(D5Y5V z|6Cu>7a50qLkq6Q6Z3m%wRFZr=z#|AzY;#}bF(S%5HaI<`v?!VJ94U;GBH{B7@nyY z=bEO<3_FDDsVe?Srhh~p8Gl!H&OrY@U~LyYF;ks=yifc(a3)prTFq8=YxaWQ z=z;6)jeLc<7!!M>e=;6fvEw||p?D6WELzIQ*Y1U8dSUOJS`n*{B z6a5qlmWWY4hZf57;~BTm>{wNFLpXSaCYW0uAwMk!%*{OEv5tPpp$}gdg&6W&sW-th z@5gtMsLwG+{235i(JzNYp+?+n;S-p1@bf}6G~F5E=Rtpo-%bheRIg=O zKVrVrrd*CuDCsEt8*{X?dq=8lhXcfahB2^HdlsuHy{lt=SSRr__hu1l=(4J;ha>IU z>myW1T4muQ7^8aS7>Rlu6@`yrn>>wuEpPgP2w%~oVU#ir^pekGe6Y^4DAYIfl=%(& zMeX~MD3#vA%|h=atS_de1*6q^C)UeoEb+(1-J@0V*plSkG-_byo5rX;&5Dz6Ab+N@ zzYItzEPMmc%ZnPssI^xLkoO{Q5cFTxSQYVHcnJ8xP7CV(PaK%@T*6P#&*Fv#-;%-h z7(Z`BW1H4IUcJnkRX&d~B*c%^8b3So5fTr479I!Qy>k~t zVLZGt_!`gXey31hqwizUZyE2be=JI!*?q_0Z$!`u?iS3bfqrkx1c!*JhqOhMlD0+T3@DYz! zM1e0S?@$^X?gi9)jN&=p+IIDv2hXGp;uk<>{{4(O7|%;kgM7639nCs6Uxi;?Y;bMl z9FzIRJdDppyk7CQo0>Bm|2`Lb`Uq*SZnpqurZ9tN8}ff`%Y>`Rv%--7KT&wO&U5EM zbD3mtZRDADO8GfhZzoE<1^V42W|^)EcuY6w$HVo+aqnO?$1?%-IKCo2P(fe#xCQp_ z+u_IHqn~UvT7PrBKIY4V(5w3(|KPHIa9{()8tB{~Grm==SQ9mE^=0@Sw8432o%%DN zDe6;PGPqyk_xJJ$RR^11qMnZPM>zQH<~Va*G{~>gf6o3=sJegaGW;Ym>S3&Z)Ld27 zE=rqyMI^a+D!CH9F1pIfNg*HYwl_JJ#IZQ+lRO#cz`6G44$ zc0v8UeZnuW|JFFr6&^f0tUN=dMcq_C_s!OJrlH;8*SFT%CJzzaZKbu%e2=L)mss2T zAGgDKGr{25k^9g5J?i0n9%tntB6j(p-qKP$&pkM2HxpiUxoNZTG+g7hXR*hexX~b6 z!}Czt?%BbxuQ9k+MEn4JNG_Glccnr72-ge$u_Dmq6J@+`{8x-Fj`~6|yk6uhCYqWL zEUD@jTV!DFl>DFCt4pCi#$0Lh{e5#e!B1!!e!q-AjeZcBT8zhd=ncPzH>QmVu84~a z#rUa>zt62XPCz`!zo)c0pIxu#h5A<=gvVga{PKqY>>1mkKh$DA2>d^rDc_}?4f5RN zH_Oa#uErf{f&O!NzP_x6dN8@Xnc57;%YHjut?(~ure4Os-}$+w`sn#0nQfj| zcV`X(FS0_~jK5w+F}C*hrw*3n zn5l@D#R~s$Ijp$l?G78?aK){-W!pJhyY|eYmVcj2#r1_TKB2u@RM;}^w~cQwRVi$# zjd~P}2T?C;Kct|gO?ey7urXgj%c0t~cJkKzmN4)PWHYH5=AWF`a;&S3XUO52*K&81 zt!d z_}9ii6z=oWSP8!f?x%R>Y!&z&Yi$_yKH(Macz#8G^Hj$FHLlU84}3Oy9?0Mw81FcG z{iE@2xQ%}}`0c%+Rmf;Fz7$&Gow59hjemF+_{PY*+{Qng>HNwFY-i&iGKak|MiiW4 z}&Ob3m+Gn&G&pH3?k&!$$gMYyO3$dq%MxFN)8Gja@0>W#i{_~gytC756GqsV=u@qHT)5jEhR@%W~#{pQPEqu|B~!h>*s zdm{9%ach;W-OlkY{5U39d5Ef`?-&hw+S(m2-8NF&+uGAA-!>XIv$dz@yp8%06R0-` zpAgsomhq!VMw@5!n2=k>yQdkv0_G^qVdqWb$4y&%Oxc^pwsW@j=#@8&=P9=K@lrR8 zF}pL`>?1v6uN&Rh+S<*FTsOwV+Sr_@(h)SL>g0H+jxef*CUMo&fD63_b)cuB-1YEHbPGAAb*4Ly5Wd58Cd$ARCl@eX-6 zjWHIUw6!fC{xvqN$?%il{{Kbqk;d46ZTv%<25{`9@{n@*buaW&!-|o$f zi!og#KauO%w}`q1JUFQr;`)5GVYO-+XPsGJqcQzyv>nGnjGYHF{35vLno$cp!@r%W zZ;~H1jc*WQ6tCY&_z=e16H3=KN~Cp^`^WK;?T#{L9qUNF)->c)+zw(|VAUa|Jsu?ek( zN8$WA%D=L4yI?Em(*xyv9r>sd`gcp-59G&9QFmP`8|9m{fS$Hcu|DXe@EYLPTHyXf zNq*||sr8Jl-Yt3mvA;j19ye%VgtTcXdN=MN{Loq%0Y(ex@lMd=YwF;cjRnrl$wwi+ zQb-?Z-`q$m8j9=L4!td#-Ys)mjE{`^8U@;w(69aMVGO_B4E3d|fya*4#|HHL~qvlM^Kx5)xn4K(+5ABr^Bz# zw77yV`7<3Jjr#oq-vUdItA_qE1^(7;^j+_A9r9jWm3#}ne<=BBQ{|sN%=d+#L`!|> zvH_;M3o1#zJmXsrw>2=W%3TTk!Z^Htxqd0Rr)imIMLfUOIPdn-om}HglQLC+e(Qu> z{IYt3DG8>cPUSHkU#sy&-l{!=wwMO5_aiOg?sS0vLK&Gq zc?P`yDa4dey0pw!JTDHt?q{l*&lA7*3;j8@cc~$!q9Z+Iec=4G=14o!gSYO|=A6`H z`Y@CGpbS2O^T)p~Q%s%zy2*S*hN|NEX{G_QGW;U=nFnvqH942c@QdL5j{6NB!%g%! zdP+6y;-sCs=PLQhn3J@ZIU8w3F1Q|MY?$$ox>2LF%7TpMQ=%c6`J0x9w`X?`PfZatuC&RE~a6xtMh&!%-9`YM+ zs=&_0RPJk+T@LOqb2tRFH1 z=bu|D`f>yH?ytM>ZOo^Icdl}Xc9-)E)*E;q*8wNw4jyF`^zdZ$(LMzAz1_vnftqF9 z%$lf)>2Bp8l9~pCxp2eypNjmT4XXFXVB|Bp$@`h(gYuft``xf#nT799l=HvuLGmrg zi-cY?IITM3!)}Lpc4j>O^eyP+``LfzA)dQf>Nl(@;U<0%eE;kIUTQ!SH}Pj+JUD6= z^q=x>Qon-CM5Fd))Rkwfw*n3Ynn3qCUh48hSNPNPkoek@H)U0FCs$b?7^6!M%-|=O ze@Xpw!HaTAopzCYeCn+$Z3O%{?6A|sowJ)F`p%fpY;gveh;*uXgp5fF>Kjo0KxUAQhf7HPu z{%W3oF`h3ZzWHBPf7BN(D$kF7%6FBoI^b6X{7*gPx3^UeWvZ!heueS-+BkDJw$ej=YdPckY)epXY3E94X2 zfy_Y5PSv6L<>h`1XRVgXIn)pJlIaI=S))Jc*W7-n>5>P3e-FL@>DsNq{z^;CE$1V8 z{0*%apavAq&F97V8axYYs7}LkvA+r5!2Fhh`*O;B>~Ruo}wwZw@)Xl7}>WYN$R9 za&Y|0-y=6jt=erbd?jDsw>uDi{Px0o@C=KbR(POfhd)boc|Ir01*(#FvVq5{Df~*6 z9W_*T?`%?Egy&PnpJw;VNl2s2B2ie^{D{d^gtrc$N9GuWGvcKjwc*ekp3F zs{LpFKp(wK?-ZP$K5e>yJt^$VO`ke~BY^eT>*UFC{n zj>xE&LH)hUwfx8t_%8kqYE!@&&xf%ycL9{$os-})l_13&NS z*!S8bhcBXc^8FwBJo$yEYJ9cRUn!JO4b4O9{9#dz#_S*NY zg?teA&`+Q5fM@3$)H{e3e~F!ywrXRYUyHvx&LAo^^IEO<$(O=UaC|QRXQh@n{DtU? z;J!9DGDO#8<1TP3NPv@8~y!d}FQt+{f}dHQ4{o zuhcGwJraKcJ|AeB+K8SHCBK)>iKPHXz zR--GPg+BWU=g-cnVO%-Pr>AlM9%24zq2`Y(3;(G!^p|TIp9lRHF5NvPdL#30}0O8%an z2t${7t4xnFUMGVGe?V3D9Q_*7H1Y{q#=x^~`DySYw>11_%=H!3Ht-VEYf{qe^iy3b zV~!!u;K_VX{k3mZRcQ8U@k7A*L0xMO=55|-jQ=_qPr39$-vX4r__XwI^69488ftW$ zu~2I#4~=?@s3~_w<`3?#Ow;NjMovG8qtNd&>#m-S)MIlR^+ox-dc}}VSVK?B-;Xx#VGMRtzfPY3AGAl-rvYnv!++^G?+5h@)wIq4 z)!^DO3)fP<$F=7W%t=S3O%11etKq2WctrGPwtWkZ!kH;W{9QOEj@%imN=-eC@9!u6 zNgI+Us&T_C;+FupT#X+%1!sT^K7!BN^X*jdsb~Vm#N9`P@7-TxA`xUFxN957zhNeB6Vr)^?v25#ZA{$#`cC zN}hXP)z~2O0sF(mtuboNy|uzCw8@uOPfU$fZ+EPrzKwW65xr+@9P&L^VLUFSj-XQ? z_N}x6{7ek$gZbz_g%Xs@s-;q&gMMrK>cp#4T@r;~>-J=r-lJ~<^!GUOJJ6Tr=pnU7cl?{4OJ z^*%IQ_zvLegs)`oR{=Yqa&5? z=Xu~0{$f6AqMx{p{QQlxaXnYXzhXw|WoqBWDVPshfN!{@Y9C&ymem|Dd;vX9HVjy$ zPFO|@A47jac=p4SX9U)-K&cN10~7Kq%y|Au(C-HR-~7Ezy?VG79AsZy zzmvpY){R|&^Rh(7QT_zYiIu@?Y1fOop-ES%8^jh-$j9=Y|N`wcQ z0w3ax`F^pM|6-h4-!@SADeU>Rmua!8$SyyO7d!4}wCBmFqt>_@{7-I3{!ZrdvFd#> zAFki@Q`X9Vjm18@0{J(M8fT5&aoEq6BOfE}J1^ta@4IC<{;xiHFBQL9UNd4|h^{yt?O~Q7?o4*5i8|_}X0J_dtCbaT-NZ})Xdd0z0=aa$QbLJ=f?2a0AZC;WO zkk2C@K^}r_jCs?dn^Ef7hP$HgVt--!(I6TgA2+P+hUw9&{_RUv{^9VL809_koWWQs z?un^Xp;**!J0@+Ai>5`W21^%N+t0s7sK4dsS=*;PBh`pX zGoW`TO8$0}m6144Pqwxj%vj94BeY8ikC>9S82kJY*7m~Rc)j8PYrDy(1@M;{WU%j( zKZyD@ANdA-pue{OS2PDKceuJRsh7dC81v7IU!J7~<{Jk6d%EP$tgRiU{0EIk`xw@e zOgfk>m9yAM@v~t34f#LHvFj~^dj+1~M)YeAef+w?y$nD9PL~$kzrb&zBJ}E6ti_;W z)MbNbEAo?GH(RS$TP_MeLZ;*6yOvLmpi|cN*Kuv( z@p4q!_>Dm&9=1a~z-(=QYu7<_X|!M3`?FF zkiofzYgAN|A6nGieejfa0e4UtXYWk#$l7I)uO;J={g9n%G-@;aK0IYUI&I`uL;5Ef zjE`YFX_cN80uQ&$puWI({yD$mD!O+Z`5@>|wM{OSN~oj?k?5bk=s&ehc{e%0uXBO) zcizutL5?cdjM?A|Rx{@xxjatr%gf*+WQ?Oe*}*Ck4USd5#~khsesQG1vmyKMhq`5y ztLH%S3^JeejIFPlPwQ_mR!;sfbwLx=e0DeVw+rAUH{*;Eiak+lWAXq;o%tl`8yczR z-)iFXqj>%L&TB!cajVKQez?cw{;BEi^3XK1Nq)%3Jb`NGwO?lP5g3r_Z1x)PhuLE$ zJ4BD*W%mB+^Po0n#@~K#D5y7Y>We+p%w)2iF(KvkYlW(+?XFEsY$Ml1Z{<`Kekn(S z7{8(a&?e>2eSn$kN7Eh`5N``WOkfXU(humjp%PR5aXp94)F$|wlXv-H+$Ed2-{cwc z{w-hOCHO4JFMRA$U8SsFW91$8XZKU{>qJ`HN0<3=eYCb~?(@f}Fvhf$Ar6-QfwuO=PQ@*gQGWulbe?~;I$w%edi1rm)5D8elE>P3 zhtQUVEq$ihc!nZx3R$#7TYK`XLYB5WZS7_+3RvR78}RImHCkJkl;4sUd;!nS)X;zF z`7PP6+uB?D=d+j}*?5OF!}40nehicN6XQEeisi99d|~4q)|AL?x&O(=H{{=)%Tg}e zG{(y@mbYsjw{oIB$27@*r{?|Uy}f1BeH-5pI^W*X^_{I<`EYj2?ayJ%Kc+sZt*Dya zvhS^pf5`eQt0e?{#sBz+e>P{aq;3imeUb5t4^uK*7DQz54qWq!t+BJT8Le zOqTuaGWZAX2`^mu&xmylv+@td-9Lus)v2OiaZbJ8_qWk*i;aJ98vWB))W^m@)Svs^ zxa%_2>i^)ma0~zyyHU z%oC%@Ra^V}k;g`(vo`*rb>YXzZ@0Cd?0;mqES95j~yrVeG>M0{*^RxOD$hWPfe@(Tlg#Tw4VY;Ej6(I0F)1HGv3U$wP2){i!d zt?4a(1pNMET_cT(9eWGU!1j&!2xGTPZ_(4p3sk$k$XNZt#y2d;zQ}mHqnGd;T$4P@ zE-(g-=_P&)Y(I3KXZZW~5`B*IJ9Jm$X|`U}J7oTEJ7$*Q^wh>X3{IP295|BU2f_UW z@*Rx1kv*;c4*8c%Ge-Bdwe4$#88zzkl;6)iI`S!u&n4+Mkx{SdVyC`F%Df)Tzh=IK zHYrmJg_6P|+ak62vI zsJuGEKZ3t8W@iP=FYV}mAp3*(soqA1Wf}D~=xI2)u(wfte4GD0Z*4|bZ)07j*5dz6 zJ`HH3aVoAQ^rl_nce-(3UDQj;;2)^L`1{v2*15NY{(TpGke&XcX=9_!#1@FJe^ks_ z9+%YE7*?w}^sF=7M?q_AXQXZq1t0JV@u-igqFYy^@t{!AgQ)+%$k)TDH6|3#_pQWB zuFV`^%-9<$`cCNl(Rv~CAfxTh=2(yFg0EPtKQ<3AP9JE2*K2_vn5{oa91LD7gMX;F zbBkW^UOA)G)P|zpz=uo^Ym>?7e7iPz8Jt}%sz>*pnMZaBk@^X^=gMx@1+&NWnygm< zFRn*g*u#_N(cmAL@6Y}Ep)0%0Q$vE8|0(&I?;b>$*R<3n-uF>PzHx4r?l!6nYRYKPtA^`m&kWMX2H!Z;H&GM+h{pc?^>}XwGxpfH z|Es`5?96L|k?9rbO@_tx_DbnqA-bo3STjamx&XbR%XC-hx=l=J3cN?|AOj zC+zQa$T`%6-!ojl^<%4EbK>cs(?$*ISNe=sEA<(pYXr4)_s4h&N51=c{f)P$Y4R*z z>P5r*#g>Y*v@cx8FMa?&QgB_{l%2syPW7@i2q;>T4!pWR94#D|G?|k zbmE5>_M5-R9IHEV%S^4;l#%t7{3Q0}ri8AgsmDuwE}UOYOQ+B;Vmad{TAF`H)3S6A znLo+cqh5-sO?eO5Pq06CdMwsP;W;+*K$^Kll*@$ILKeKQ@=*Ki@s0)*kN7m)tx==;BV%DU%3uH zgIw^4$lxQ$WX+Gw2X2CX67z6=zlB&d7+d^3^VO(%g{3*DOpD#QpTz#)ky`rMS#3{s z7k(OhJLS2%wAxbK1O0nBp3M)nbZG_ke1Hdj|9VA#%*0aF5D)W^`UGdschF z(Zg9Uc+`Cp;+^DKjw;T7#Zq*{w>>bwolw~S>PPz5RJ-zcV1IBDdX%GH|8|ISImqif zF8;c$3&S7KE5rYS{KM)qb)g4)V1C_%cx*L&NoalemC_$#A@0AuzTBlQ;*Xx9*E7GM zN5k6CIXt+&l*{ao;fQNR zD)(kpRRy#eo63mKS5*BjWIP}050%m?sC}^+e^0&Wt4C?n+jbZK29CcX7d+K2Pj}hx zF&}Bbn$oBj;zk~hV->kqo~ju5AD-8!FW&JigZP%4m49%I_fpR5T;=`je=Xh1sa*YB zg@524WU5czCHQAFn$dr-E9@>uBvp34<}NPSff zEl7QQ>4@i9S!cbDc~z0mG0YL`Wj>v}Lyg=)sPSG()?4P|6g(NIVvm;;KM=-Le)NHV zL6MT;uR{IKqaoulC8U3nMfhAY2swrh;M=!}9?yCX<8Kz1&qF*(>VsCuSNt&baB7-0 zdz)1D%EhF<6g6Ph&wX9FD8|oO;aS{FfylWp!u^`!7`fljPi4DPNa{6ELuI@qPh>$E zUmVXPJ^fY1==|cJL{Agnf_@m|`9!bhnCLsHx_a>;ukat(zadw-x;hh^m-`!ezK3d8 zhhCFc_z31~jkWVro>%k8{K)uSfpLEDP{_meUHn!jO54#aZC!Jahm`rQ)YJfI z)EWE(KZBq5F2El3ocyK#&Bzg;CN9n{^CQo*3nKhg;?r#0pGrRO!*>3t(U=YQuafki zD{lVK-Li_m2KyiDS9sjY@PpuIE{m(K%IR6;{!*X6n60{c5StnIV}bAxI~)0`q3`X) z|Bia?v98tB^?G&^KVh31d;{k%=>!>3+liU^-@7ra zAatGY(8Ev3^-YYi$2|K@^enEQ*ZOBw2XB5Ay_DCRx8zT(H(#NLu%2{2m8Hyk?TY#W zeeQ_p@6r1nXht_EOYsnWzd=6eY8?>uKUP*p185h>aNY-CMAM7mo;{_kDfT!;ZBKqp_&9R!-k*A{1l4;@V?>0Yy|HMC-|HrEr`BrImDUVSvpug}x#hR?s zvK@Z}{e6V^=jWQTLu-8hp|m;P+z0K~-di4kPYKJ=ZwDOFD)+xnymjP-p810q~wNvc}?_7@*VT*6joJ7 zUx8o6N$wBSnj;RVd2tzkUzYXZ^zzk9sn|A`(7&8@7=Un zyeRrR&SRKs9aYw67ev3O|Ij~KoYljBFG9~c2H%Pr$S-kKWlCH`e_tv7oHtWl)w+=v zsPBq@#*}@oD$DEh(&qdQ-c?<3JI{P|%qJ$qYs#U9%vtg0AWw9sW(D}FoDp7v>(}F^ z<&b}tCj0`QLAeWFh!3Bl{{eY?+?#Un>pls7Bq!s0YFC#EDs1FdAIfF4`8?iysRW+l7{<>;jeC%@L6uZ+%5l*PIc7%pg)Yb(!46h?P>XajPa9~$`pQD^wGBy zT=X~Z!C$pY6Md8(SA7$MRQUHa$;YQ2e*KWH+Gag1{0(B5dc@e;@H;vU-eC*Ylcsvz zSM^oI*fZis(`li*9(ts)nl$t@`gcz3?`!M-JquN<@%g7$X2bbH>CMfp)yjtCJDxx< zuc1?~Ia&7<^xs3+?>Xpe=J!PZI4OGk*caLLL2mt2(!djZe%Oy6Q8-Vk@57Gcdgg$| z+l5^9q429Y20w;y=ntsHFlxA}+Tp15N1h3fE*k~r{|I=Ij__ljgnGH-;W3*+Jydwf zlzEesPvyhn*Fuf#&buk7A7FupZ$9DqCUg%|XSW%0zZjo ze&SjT^8L?1Uz@IfX&4U=v?$?Sp8e{tCkDi0d@o}EN4&vNZ)l&Wnt9BZdM0yf-dEcL zmMHUyxv1Av1^w+Dw9Z5|GhnWT^-riToop1VdJhYS9)48xssU@Fk)J#t{x9FKel*dm zg~r3PZw{W{9rUjNy<_|ewRLZp+#keW)$~KC*>-#)#+T?us@T^xs2?^~cnI=I<5whM zzWG<4AN3{rIrQECkMINJeI4W1fiWCR{{rmymniSH>%qeeknu!j=i=%0YDn`w;^)Bm zaL14J@K5L={tw*W^7VSIUBusq%rE!gUpu!KzYy*(KP+93dK9h57m;_;vg}-^MobBn zHm+amPgCje|3`M#-$T8G6>36$9ra6cVclM> z)i|(RotP0Md*Q6Y}yWj@0g(<+860Z-z^{-iNx=IWV<`VJl(AIvAv-kwWPXCqwc=c6%x zd2@4uI@!+&d`YqiYn*9Q)!Z+aag7SS|q8irx2K|}&>#Kv}8b_IcfVq7FL{6(slCoioBAQg@2{9t z@(sdU%*YX^vKKmL@P1)FFfCdUhZ;hLwM{-HcFP`vu}$F2U_bv1eocMVqMN%#??2d} zf?lUy3o!FH4en*B*Y>t+2~VkO2KUii&pnKmIFDa3sQpuu?mMZqio0`3cnIzX=00ho z?7rG~h!P{(Vog3Pd<4&T%i>ydo)Vsc&)CnUt?G9=)nNRF{b!O>JMb~btnI*{_Sgd$ z(x$%Kt__&`$p@@F#ML1kQ4?#Iw5j)I-O^2!TDH~7JN%f|UER<&Slj1Xc2;mEvGEV) zW;liT`SX2xqTQ%< zn9obr*QUE)X(gK<6#ovcr?anp(e9kx1-}kItOr$;Z@(O|a zJg+2ZrDL_C8+@=I9BnW*#y!}bv(?nDntg;1B7gZ$Y8CbDL@W50WWxCab4Onv`@J#&^Zjo51DUQ=w?;byvjK<<6n%S51d#<-Th}S z>RYtO`jl5kzM87D%+t)=A?}~RT7XYWOXk{6z3W71C50TZWUhD2_bT$dn)>lA-pu~Q znD~^5zN(D#1v7bI{yyjl;9su`ufYCYHkYqzHT0~RPjf~`EnrQ{IQA1Wa{1fN;QuC-M{t!K%cYdAhWjjFAh!Z783JOp_OCYUf(;=W1d4-+JNkU001<4oYnm{#&=q{>b0SB5V%lO!}W}eP4-tf5sC` zpYK;vQxZB@d5ApiD_Yh)xA6^L)5=@Qf^Xou%>Fm5Rym7vH5|9yPKdo);e>#-4 zIQ@To!#me9mVL1{|AvAaJuM^m*m#DV0iKo@mu>Cif88w}pQcKDjqB4dcQ=bG>QV6Q z!Syq-wTtC%85_?q_lYysMq7Junv>;XTN}@irK6K2EA;sP@eaw)OIhM(+W3a&VI?g+ zmxM`uPL7$z{v|92HrjZGs;LeZckl~58+P!@DBw~=Ca(x_wl_P zx5S*c@ek8xX16Tgp3&wSHv3vOOGJ!~e<)?oGe=J%y%`fD6MZ{r^xX8&y*m~G=97U%zI zoT_Q#9~PGQZglu!;~(JVX?XOVEcGwAr=5KFvoWI5WYHrSPaSUg1oq9wKiqxt(YU&0 z67%E4A7XaFkH(2=lNhhopx+^0^uc)a+r~fqNqKL)|6yxqZ~WfyJ8R<~)`!0{KAp0) z*JXQWOpLMd4=?J!HA*b9wg1WT)_B)?BIA`B_q&E%`b{_FizZchY0P*4G$<|)D@u`tEXoB=l@)a@99vEBq+V}_58ArbRzlcBXLw&C@ z`jzvCjM6VM_y?yBp8CzhQJ3yDa^z{KL47tBu2D`dayh$PKHE z0fogMg7H%mG(OZru<;93wUtK5LtC5dWaJ53`}LjWMt|@W|MPG7e1DlSc~&3lJ@R=Y zRxLFyw(TSOH|N(+nU@&$IWpSh8H&6~Fg$Mcw(<>2Eb+$O?HTno`1*t3I3x9+j5hbE z>lVitH?-d1Pg=?OAZUJ+(I#JS@*W(orawLr;9q(%e^YqJ-bWT1RX6vt`Z-*`v;cgI zt^NE)xKXNC1~0+=dDGqVjNX13ZSn;ZuFN&gSY z{o6yvGd~Z0T*iao9_UXdIS=Hj)CRmk4}4w)X`}v@ zG5vaX#JgSO{$ZbMEKKSSz4eT&X)7BxG1?F5PW}e#H)=%fZ)ik)m$oTlKEA>J7{D@tl#+QZ}^)q;X-CSB3HN(2d@8fxG zfwOM7`*)W7L7tJWZc$PngL5&T`H3Gv;3qoC_~7dkDrm+F_(gE<#NRY=Y)$mPPI5iG zzdxqcG?tC;DDio&XV?Q8vGY2}^J9EI^mhR2{j_Hr`?qN(@Sld;+5hnn9;P-ED;Wod zv7QFcC$&v27ke8cX0)aLh&4MFxm(_NzHNlhAOkw`rMEG7QET!XIB#y(mhA~L4)~ET zSg%;a4t`R`?Q$9X!|qdl`uyBpMuDJ~q9>8RM!u)spE0$8!xjyN+|pRav(o(tR8AN%-C5eRQQEL z(_Hm;S%w+ILqiX<{CL+~P5bn1WUkBS>guMeK% z6Y?*9se=P^8s*p2g+BBFv5#-4rF+5rp;CzO8RR2=XIi6e?G=RnnXc!_oTx7{FViAM z20?$gsMmjxpyQq=pL(gt&*{AW(R~M-2ZjaXd3Dt>o={J%qdERdF!V7K^Z>-$k~H(& zO~KHg{PakNV~Djx9U4A37(7D@oqBEeK`S*quqN`yH^aXnQSa71ryB4z81wO8T-$ej zT#0Nd=dqg5pWnj|!#)`G;N!O&YzA%FO&e(6SPP*%5^;2mP*_wBh~NB9e{F~LI% zl?r~AX{y<$P%YfQT*1>07YYWCZeIGiF7%vY!J8d(1xJ@pPF_;1u3X>Fr4}9i!W_N4 zDdv~r!J`eY;LOWi%sqEE#Pcc>ymP64a6vo!F@h#&5L-0r*zj@ zGo)va5!(FDWx;EB>w7D0l|I}X3EQkF` z4ISrs{qr1?=CiCE_>(5!GZyMA=J;qAc9rAx>6l~i8Q)Ar!@Y&qhg!806!zCA|4Z_*Uq+gtQ4uIWVsx0x2+D~J7Q9_BfK zk2+!M*`u6{H|`Jr-So`#|H?+d~pZ|!vw=Qc0dPcdHy_0CO|7L}3pj=bc7BZo|5 z-j?Qk1#LGwVjY#W_cKaMJ~sKtH(!Qm@BVs98|MS9chVfqbd&xDUZU5fwvW@!Zu7+b z`61^y@GTl@R$JTQx7KU*p`UZ^;Cb`G)?z~GtJiSzXAEF?_7o7;`)kuG^nQ`eiovyWG{4Cdr;QK zLv&wo7xma}Jj9uCAGH5oXVhoNlve~!0Z=~59@CBUGxirx zRny$gs$VvD@Huf{E#4}}SMKUeZg-gv$yd_9;9VAX$jmdm zQW0CpgRDosUsm1yz7OgdxC!6Dob4lrtD#<}8~h|T`Zl-CYqayNYhQik|2Mo+nl6hsPBUhF`iP#`8(Jz8^(`k-zH*{rjNAr)~z+ zQnRO&625{tPxp@2QOmcN#QiVL`3|{Jb)lh_#PwCed^}ynU#bKD<`U5JJ)kE}Q3HF| zQlr*7;PdUV7R0I=WoxP>w~LEE3H$VcVZrKK_Trqc6!l`4Mmm0XFLC}w z{d`HDUae>qgc|XM#m|JyG4=iliG^f*@SdG1>xX)z1@U~3L0^bd8&Z5#VXyq?&(EMg zKT)?U`KmS(^U3{TyyjFMU+4q*uwE`f-&l`YqQ2l0^2+{${ee8h+);UjFXNegarf%r zUGnnpxxdw}?5qwCm^_$|sb3~*2a>9*h4*q}y*h~e?+u#1!B6d|mK*EoUX5p>y?v3- zGAW z$nSg~>Wh3tdpXZ@zXjhb6%(CZ{2k!e0+y^A;;GrlSL42J)jqzfrp|$fVEqf~wWy<| z4$RLgybsSTQ9jVbo@V$#a89HD$j6#lWIm$b1LLwomt__|7{;r<|Mr3Zx1G!f)W;Vl zRaQN7+sS;!&tH6{qT0SNlkl$`L+hTGh2Lo=;bZt42JI}P++O~be0_SV)Gy_w@~-^@ zJ`HFn!(}=G+shg>p)cQwX#NUDK78Sms=F?{j zYi%*ca(>`zZF|6H$rtDEANTvNb|w0g_&soc>b>ETw*2fz_&F5RS;Nd}bed-O^#fu+ z<#o=f?*2zn58?y#OpEXZYoAu)*^!iEIe+D5}HA!2(>4k;!F?j~NlqK4fiOc4*cQQ2!BzzIO4iFZsUHh zlKE+8-9MV!%bTK)zD0eW??Mxa$_y+GGD4KP|snHSU`59=zX; zG8a+N^{>LezMHHC%=i0~a+&$Tm@nF4{VJu7#b1*9K~La|iyfgir{i@y$ww?-*jY{R zN*BGKdnEWsD387u#V>&|>A9H^|6Xu`e)JN5$(^T!3dwo_di@jehe&aBQb~QzledAF zOG(9i!FG=4m`|+n@5?;)P<0BOl{WWZ4H}hJIscxPd}r>lE)6KF9$ZWly_0@93AMc7 z@si5^f%=|d!t41(o)kTh%u;U8vdBjl{{qynm;gVgifU7tW9)D63vQ|kCsqb8auoXI zV8&#@YWN`Df0R6oMjj_H*a!YaM|pq1^=v^cW!6JFD*o}9Z`3BYDwzL{$?v6pJ8Nzg z)Ymw{`V-I}bAW%Y3Z43-+zv!__tFiy4 ziQW%AU(fs@P`SQK75x^hsXixNfk#Ody&myq9rga;@tg)ffO_C-3+SD+dhl~PE&ZE& z_{=vNsd0}_W4svHA9vOto@s_T<22@v-|&ZOp?_J@O4+|p1`SZNew?6xKKk=f6qu>{HO!yh{2L;-V1tWD-^5@BGExb3LT!rYto^}w6km$$MhpNq;q3S(7K)qM?2fy0Rgr~>>_}5gX|AN}MZ>CDCy5GXJko%ur z+h(c5WA;jY46f%>cg|7oZ|@R)p7S^BYdq<`L;M7|o)=G;rz#KGCVm2(Bksg4P|1t8 z$oqMIJ<}sXx&PTH_mfP@ojp-%$dL8mp9Zp?k3Jwd3QXKuxnA-!zs5#FFIp}91=w-!LHgvs(EnL1o>tNcaOXF^xtoQAy_cQqP5aZ-+xmp)b#q{z!kz99fpDK2_!j z@4-FOh$$=Jw=zrK&of&d`&IBSnjyc3e&rLNufl$4y6|K4lWbac4aRdAp2rEq3ybQ@ z7hvC=GzmP#Q|{mN3cWX|6354h-wi#JdO2^vdOTYELa?U*`?VhVr6c6|bIw)IH>d-@ zhsyVJKQngQM)<)G#QM+>`6Vgv2H2dVz` z;vYf&il5i=c_*1~xMywYz5#u(J@tI?Bip=Xy&5yQmGBN^?z{BN@P{B9!FJTFB()>7 zk?;|$DSy~)4fap<$R}x>13DL5t+Evl!Fc;2`=d)uR;lEzy7U+BS89}9sm3~+z$4}m ze!k<5A&>Yi7UQBJ!^{Gjn>c+wSg;Cv{&L!Cnj;FqDn;H-=93qn2{n72a0M^HnJ zpPHZw&d*1lP2z>wiYH=C$VI+Wcm$WF393zRd-iw6+kyt9B*MQWEB?N)wDbN0KH`|2 zwSD*05_P-aU-9e5ZwPu8xD@qRzFXUE>c^|FXK#@&K12L2(!-;{&^#6Wm*2tq79R>e zu(oFg#GppbEi3Q9dM0@XT`?G2B;U}bXRK;+>%6u7x_KNt?^1P!n!{!1u^Ea ztfz!nL7eIqxyPV(#`_C@WaT?!tHJmoHOnubVldw)8H@+;o_yUM317FR(3>;z#l{_p zfG0^TuIGu|uU!2i;Lj03J)G^J9k(OYw{79pcB#gZs9!S6+V(Ia>8WFFx2q9_Gxu0) z`}6_S?+6-VZ7&FlR*MGqw6;q)Mnm6kFa81ieS=;{s4P3%TKR~fhZcdsZfkHa%Kh`I zvWwJ$?4jT};Nt+Eq1Dj&s=rff-VgAr7L~GShEi{a8Q3pie^^*2Z&2;;S?JqSaNc>Z z%#T{3KGs#MU&OWvZNwjfXFHw=2PU*t!`Ef_LvRmM{Bm3HZ5O3}1ov~~8){y*@en5u zwo^5hq+0n1`a$H$eA@UQ53zhyJJmGyxV1fFbbHk3I4o`4^Poy2I;efS4_ezrM|M=@ z9rjpxh%DVYsXW`aS=-1n0-v+l%0DDbXo(z$E%Ymq^XcdUK`J$JH=bt__6Y+~8>}qq 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

S0@pi&KArMqv!dVvkiQ#COjS}e|_NLHq2j{ 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≩n_J86$LQ=A zADYYE+qsIrM}Cl5Su~bsoS3EZ4^L)Rl)G0a-k>hxVWwy$LW zAQ#jNJ5c--TAMxleEH-o@&#o7XjnnY4RD6uK@V{rso_0G8ZyNh`3Z{GhGKv9lNzI+ z2-Q2#^+zT}OLL#kL_K>u)O&=pU9tNmS9jtqypRv#tk2F}(%KMbBCSg8k|a;um?y->#P&?mOf25o?3LW&7)*)O7a@ z!9S3`)5eHD(v>UIsDB3PldM_rjJlY!Q)#>)j#ZU`r(nAjCp@ou68S(2ElhC!bfWyB z$Y)OL*a~?KC!vo3zQSh1sJ86SO-HKdmEfb=cuwvBpWYGcaW(KMe{2dp+Co!widcW? z%;}KWoIM^kh5QG~&q)_~Mf6*pO#X}Lp==VVD8@PI@{-m)&Kc9N+%rm+w zb^0Sy&UDeREd>w&4+x`5WEF3 z+mFMhp+2j>$PZJ_`(Dp!sL$>v^e0H~;oojY=!bLgA`c`w<6QXY#QuB8giYU{Gu#RN z^(3+05ktQt&XL`>(((|*TU#8T%DfKu5j+FgYnsep$pd?f`hVh&jzzd2-_uk0)ASu7 z1Lm@Q;XMTJfOw7MKX4&)-`8D?H_RESQI0#S)lO#z*IkNyLN~Gg5}&YV&2scp?+Smk zM4V@+AI44e&mdNT*6^?<0W5f37w}h~5DyzDS=9_?FROIHdRzhXx|h^^7UI{QoyGhm zo8tT5UUU-uB4`gelNN>ZaVO#LfJu-@|NB+GweY`a|Lg6XfVj6c@}=#-%RG>>t0uAL zAsq$JNPOwU*GWwC%S!M$w0|ybkOa*fEA(5~B>a*5pYg1NCA}UZ;zvhb#j=Jz9fZCE zF)0osqgk_jOVOW!Vt%P#Bf<1rqCdh!suz&Vu7#pLs=d&cpqi_bUV*5OY=`x61J3(} z(ilBoXns>ajVuwrdU3@Q8a{2o(?ACRs4B zq<@Dt;(5`0sjzH0`+VO5<86nCFV5-U%UlyI#Qdgv{@Kuvbs29V_#_%1#VG--a!m`= zuh$UcznViZbJ<{CO6)E%BB}qOe|TGS!86bqefZWemS1Wn)+4Gh+VCR+{Upt3KNs(x z7mt4JHO&NHLOpBZ{zRbOr!}1~aQ^od{mzpwv=aIcv_>|_4QESCTM2y>>WTZLIE?+6 z-BNrWts&{gq3rP%Q^7+}jg#}I5Z3OE3C;&&#d`2X4gpVKB6tWoKRZ1QXRnr;2!4uk zT+fb$WBgD*jt$t~&#|F*!q^Ni6FOf)PvQ|9;Tyz8)H222Uqt=G7xwX`KlD;eME;y& z&_U(P(1XW>{6WP38J|(f8_c1J=;aRCQJdL>)8s|C&v*Hv|>v0WrRv>=W6yFzyeg{50w{8s6YtWeV=Q#D(Ks26Bvu`N;30xu% zc6DXHlJ$i@K{@=3wREh*GRQuiJo;Z-a^4|r1PIM&G5YIi~ET_**xyP z37g+ks}F&g7W5B|S?7KFH2=l#zsOsn=ZZe|n`)e5ss%Spm_Y}9T+bEq-}#4jrijxt z!1%pJybW*t-Guc%&;aY}4e&=2&d)X3hy!)$yaj(Lfjj!2lFsGU!v4e%>r3T>Q};=` zVrvRM1@$}pUd&qQ(xd8Fulpb$vw}m*Px9|j6~C_=r~c*rLY*Za<4UFUEQycM#5+sR zZ&rXm*AcwSCcb`356Qy#w}>Bq{*%F7it0*@hkpV;&;j+UJD{KN%BGtBd&Fq^gBRJy zdwt5Y@lakNpFD}1L>%Jpw^`eSZ+e0Fc@XMvcXRY}KjfMB3iYBX;47~1OMP-n_6L1H z{%b$<&L8rz7v7W%zx|E!Z^*Yau-y@NyJY!vh){^QLmeX=Z$_Sk|Xp)9z!2sBd4ApCoauljru%7 zJUPzKQu%+xA+EVCX^J120hyf4Gt@_4|Ev z?;i4l$KelGM!$>zmhhJPN95r7U*YNWBmvxI(& z`HOYz%+y!V|L%?PxP=G(TF3m~ygcNSmxI)z;>zk~dFJMsD_lN8nh{aNUG zDPM4XUMjm-a7$VAtU1=dHsF<3;d*W>qz!<47joGvS<~gW#CW3`X2ZM5s1Lk}@85uR zWHYpmlMyGsE_etqRM2osWs{p+M?UjB{QskDj^0K#M7n|d(Uense7`gFnrqz<`9k^) zn^$gPe=@G&c{KxXrpHHY*udNlT@m?Vs#mm)TFW|5zl8jHCGa*cP|uJ8{e*M4e@BG= zbmj92sMkC#^4Y|45Fg>+=9EIUfY8HXixhrwgq1s}bSt@#;)^{Ncx`x9{=(B_DR|5}Rc`$6X!o>Lyn`WP!BpG)!JS)Ot1 z`F|QQKIr$|yC264p}#=-g4Dy@_-`z7@`~V>=!`=9LDeP-c&S;Uzv9Q*vG9Ln(g(nK zWCHe@DCkvbz;l=hy}gv@5vT{&fM4k+;^VLNBcL}<-!~6D%T3S&c?E8vUB|ER`~ z{tacM2SM>fTH~l6$PiN*pZ6H&z3!a!qC6gyV7y$Q_!ckT83z97(Esrv4R~#@Fcxip z5bI4I@ui&h>n0_|cs)w+hBRNyckaXeo`HNw5ww>=sE0bn3-*3oPuqdPteQiS$j^~J z!=$5r?9Sjlf={7*Pvlcy^dsAa{AeMqS2!Q~v8y!;q4!WM@*5$`1DG_dKs+DH7g7E2 z^?5tM=X??OGvES#&y-xu*D~>ahVx>OPu-6Dw^Hai6!wZoPAMBaP9oxQZs?tp#N_f! z%%}b0`pciBu;{rNnBV8~v48YOE+~!Hu3pCS9pb^q4Z?g{$LFp-!cu?5 z;QIPvy-eW`UmS%#RTRcgJLJB?(NF3q{DVmK^IMu6L4834_P1L2{Kd+!ma<>V!oiDuB>s-;H&o!)hJpW}{`UR(hD9%{9FnF3!cn)jq zcY8U;GQ0XZ0^_MW-ml@#TlX>U7O80K5oKQDRK(VSZy**FV~nR8?mv)%edDm;;_T6!Whda;5G0(`7kezJl?4eo1s5R`!EeXdOuY zghXcq|2H|v|N07Ef_UvIUve;>y)k|=q2KUFLavrgH(Q4LlSc6vY3`m}XneYZcbN%& zz{;rQ$i;bR5q_To@e($T4f0svviS;~?I?Z|Q#+46S}+IK+eyTG9vbJdq9wBgPk=St z=E*?lYiyq>Y~mq^cW8T6%R`XewB-)cXvcW!AQ2xyOxxZrlU1Aa7JAuD!2GOEdWAMY z^LOApH&%Qe@e#dlqkl!Yj)(Z(BcEM17@@wtD?1+={`RVE*rb4c^Bk($VUY#sK|e^f zrv-zLNa{~~kl-K2f6d1}$W^<|hyqsh#D?aNcwKX>fL+(`quQP)^4XQpp5pmZJrLs2 zI74+4HpR1`*ToKf>?~|zEE>MaWiyv_!hSuN_9y9kvuyAs9kE`8;yTLko6|8qtl(d+ z5$EHF#_REU9l$?*7JPp0{?+K&V~O>&2KL`hY;BzsoEO{Uc{brVuQR79s2@1o7URVN z{?0_UPmX3chO_~%)fs#NScEI#Y{(9C_>ZJl9>LD|hM=CNHNL+;r;ix0``Z}&#B{vBD);M*`uhz==-=Ui`K!i3>WQsdGW7`Pp**5sYv-k`zH}q50SD^m~ej<#I<+b z-#-QCD+@kuSt|N3J(216(>=>6U&q|6Zz7*nB!zBA&guybJmG zh8!_Qek?YYz2CM|rsqq%=EUVu;2{fSj4jb`tmhve=r!&adgFZTpEv>k zpb_;01bwm9*302M{LonTb?SfOeh{;p5$%BfMgNKGCrytN zmr!$hT9JvTA^yDct3mAjokKGDmpH@ot@0q|nYSN$5-r4f9Ud}-rFPmQ)B2BmKfk>V zJ!&`Q$)qJlV{Sw2I4}fTp(jyvz;=Hv0&u}RG+4bNjTJiwy$$!)v#%w#K$#ga+O_E&?5R8h)>i)PQ+I5pXQUC*aw%|GR;*mj||yL*6OgHOn*y0hv#GmmQbs@ zT*>k{&d-K?<*}jAG5M;Yxry*PAKPje>J4vc1bd75=YQ3XIrf*)zas(r#e8U0IiO$9 zHVyT+rhI_>)d9R*oQBq2ilNn6;(+zST|@t-c;$|z4$Nr$a1Hr?r1!S(_6X)PsjY_i z5BiJ`!DCohuTdr8MXT*`@3YOT@o7sR8C`537zn6X0TAAI^oDrefRKzyJ; zBL3m&vIwQ?10Da+q$FHvm6b&CZ0I$O0lO8hyh}<_^&f_e4^sw?P7?7y%Ar2igeun^ zban-!P-UV;lFCD@i40NRnd+GCzU*$gd4CJmPI+N@>;G^tWqqEB^Em8D7$0MHl4dX`- z^L?sPP$vfQ=-ycW2k|lod&O{Z1md4oIA8Yy!)vQ#jtHZ8FsC(TZgO|Ub8?8vJ5*WP z4f+E*`->IWz=0tu->|%G7saP+~YAgJazpCfp5>!)Zp+5)ZKIr=_Gk(i;#_4Q_te^5YBb`0n@2jkz>7()vJN|u=2hP*#Q^02g z|M*ch>ZP?QhF)p&J2~pda+P=Z*Yb_L^}uqGUm&0Q@#dnt)2wcheJC^es^*X@(m^;-__SWQNFiuj>Cp#{StJ*F%tn5?M8t!p=+BT-@O>2Tq4?L=pb_#d(>d5Ls)Em53GMVj z^7F5=MLj6J?jP7o{$e*r0 zUaBXr9WopJElkDvplq~<#?9Il`MF^@FNZ?EKd;2RwX5J8h*!Xw!)EKXS;%kp6Z~}B zdbOml{tfY>S?EofEA>3=BIXBaaD6i_kQyy>!S~G+{7=*61yW*P7vc*94^gG}b}4NF z>0^W?H?E7LQ$Vy(9R#wY|ZI#z`3o zu0qd(e2hGnCS5L{h5VEaCkA@Q_WzHmvkr@@i`F;>*no{4s0g;$a@NL11Q8Rv5eoxR zP*A!X#ZGJl6BEt>6vghq?!s>UjQg%V_s-ns`My84Gt8VhXXko<>s`f=4>eZmdz>S` z{(M=~#~35^a^}U1hE*a@r_oY>LyS?Gy|OZ;l^o4}mPCAQh+Hq3&-t*)44%S6`2NXy1r7gHqdN5mbN(*!jRI&_ zx&{1G2O+<=hRp98(Wffvt+~p4^wabIQi@M~@XCWwAH5m!u@+O;Q}rok<3Q@WKZGuEtU`DgT(dL+MRZ9s3z&DXu3{Tw>Ab)g9x`%8a+j(O}K<3tzR^q2YVynjVZ z4E|}(^7n9#zHyinEgR=7?+0SEN`qu4)VXk$>m&BqO3O1&6o1O;fA8M`<*T_f^2eR< zc}pcvxW(N?@)tZ-Sw9YT8c2Z+`pJ44d{6DC4I(!$M_IpsnM3X45Q=}$SMobtzryy> zF!?7Ato{u&E(TI2I>TB?P&GqqyZ0;?2 z2Y%iy#!Uc^-5cYhA@Te=ZS!RKvG(HeDB}-<_D=zW-%~yx=Eb;vx=U9bFTwq%?T9H< z-mZsyUfc(ehs}O`vW@d6VtwwY+15?A+5fk0)C8(VL9au;M<+awmF$C<5Ek<^f{tm3~w-`Ac`S%^< z-}Cbb_MAoEi*=CmE%PiMVlH@?_84CW6s}is+1MNL*mlsnk4j!G_VPlSYuirp5X?Uy zXO_0d*vj(;#)HE8`{8)Z<8?hf`W|JvsS&!lM$Y|GO4=J%RNcW$Cnd)Z=I&>t}Ebv3avt)WhU@8G@Jx z`MNP0_1Bxr{S5ba-`!D&VQ~G7!R%L}^e&2^hj(mvKOx&IZ6e_RZNq*QTrWlWYZ{6g zXx4Im;rt%f=NnsEOa6j$ytrP0`-Z0M7sq}?%9+Ud$cJqz^?$y{y&HQ|bj_x6eDQuD zH^G}G9&V!r~+S5x6t=?lNeCh~sp`SEINKg5HZ zuwF0u(Qw-(;E9^Z`^UUcT7y8!%4jU-3-(A{5*`HZw6Ww#c~92jVlX@>8%ci@);Fuip{}JD)!t1HvniP3XBPrdrGOo9p^rKz9%M~?ZD`I@L z66|R(wS7G$NniBe8@}D;e1yx;N`G> zokBj=>ONiBPt?tOcTss6|sI^=KYMQ->4aFM12p=)q=;AK&=e;51V0s zQ$fa4Bfi{GXjFOTb8y~{5M#&WCk4o_PrV53B6zKKcMXU>xGlIpR;&j;_DnzDImI1o7rmV*iy! zS!&@Y=qqc%Hx!D#6AxrH_y589oKnxfw(5D-ieG;aPkw;kV`P7F)2pn)?nc-z6$$LG z?4i45U3g%G@$nY%;|lf#D~@Fu#T3K(eiZuGYcc;%P}a$6#d*C)|0!qR?0&(q#J5J+ zUz*tWj4o;a?!s+5zs0|yUz|gH_@@{?b)d3*`!8JI30(hoac{*sC9~~M=pp&IzGC*C z)o&}+oWCPpeE~dyiM?09a#ZH$7vzs$LVqo7zqq{>)pY%Y{J=~2y`}BXKkW*A_$~CV zUGOt_Bo4$m(&AY~8nXsNP45ZQAEV$2`x^T0WnBMTv3}1a^zWCP?=O&#j(Fu%=sPcv zpZgrV!7mXIG#&c#bLcfi*l+&BHF(nAN6!%N&PTkvn0=_z=NEX{6@D`bEszO zGko7+@JVk)OjU3AX+MKrnhJgFo0xsjmyX*!hd=mM#FLK;&Tllad4YVzDD;POVr*s* z-E8#|`nZC4&KA*sc_d2UkGvegQq8ip;N>a(y}cX`gAFzxZPia&9K4klUHZQt#&Z zt6l)&CPojXe#zJTCN-Jr-sO5EWpIA!Dh9_SLr=S_vG)Rxi8qy&(bRc&pr@PQ`WuKh zzm_4N@HXyeIoz*m;;{E})ZD!dKH&rOOk?4-Hif1RD}=xNIpnvUr@2}(_~n~2-=E{X z!(CDDBJu|78F>E|x)QUD_Mg8l`2c3teeGA$vQ^hPKN?T`0c6%F=TCg z8v4#j`Taf8Bf$@!#Qpt?^W#af+7L;!{{-}y>fm+0QjB91c#`8%Z)Z&)ad9-AnwSTk z;vx1Y1+?CddCFXkwfx*OkFehc_gpgv`qxG9!cXDd9Yb`M>tF1{zA_U$YYh36%aQ&B z%wyPYi-vzjj^r2kOg8io{I7g8$q(Q>%-+$oKU0Oj!5G9!-Dr1FI90o!jq%n}?q`|L zY&|I(dQN+(@3X&?1Wj$pdBN@cwW`;%gV{grkNRl!5O#rkV4E~f<3Et_nq zSF`5Deog=09Ao_x>qae+85xZH_@l_jWxk{m>J0^x&A=m=&m_-@`cgr3_|+lF7ce8= zFD(#^WTyN*%qVW&5=8NX4zNGHJWsV%0_jn&{m9>6NSq_8Sou>Gu@8PSyO~EN_O~jQ zyGQE5tpDsfvzTmuW( zd6pXq5tx6rLa!`^^{D`BYc%+Y%^KHM;kJiw9C83trT)iju-DBb+9uc!!U%o}tuW@6 zgOA>X=l2PI-W5fugR3YgVFUczZ_9jHcsS7q+jZcx?n(aP?bVGmulyS5dspCxQe1F- zf{uSyLeD=h_aDCwZv}s|Lh?ZT9f?*uC}~s*^ta3M`BYz(hV$-H=#7`bXPAq+CoxXKk#Qn;vM0z-Z6mS=9;D&-;?N)7;rDkICasQQKOZCc9M&M?c4wnb zOOzb%?7^h-XNb@^92dEnPVF9qWbzg8hIg5-f#GOV~>>&e}OMZBY)n16gL)mj&Z@jDOu^-2QqLrOJa z|A}Sro6N)6Xe$j$3B`J}7XA*WY252=gqk)Q*P>wNeD=W|sQDhu&x`YIF&1`$nF!+k zz~?X2bKgn1+XJwke3bEtS?hL^?O%WH&$52^*26m~u*pK`_0bBSPa414i5S>?ynl}L z?`&$8hI|Vz@Or})W)2Q_O`|=}XXAc5NdBS4NccCD^VIVX+`oI&o{sD51b+USUHpSI zy4c2p?~mjm9N(wWhK`dlUadIZYM0=?3+LAf`u6wTyXfbJv66Sdp2&{tO~jwl@etf@ zSTh~<1BOff0Ou<^=a6*xB@WfMD{V<9zn+8je1!l0bm*zB^7GlhA*W;p<{<+QVLBxP zyoHl|o%xATr!y$IOJ99E|8zRe7`^qpLz!9`sDar-&o>w)W`Kvb*SA~cWYA-81^b0R zcFb?IXs{b+rY^j`fYr#dEAq@B?|Pl&^TqR5;M<1h*m9ZZdi1)>TfoO{Pw4vbm;DD!*bZCMVes3$BpC-}JpiuHIXe@b6 zju)a<3vH>=NRAKIH@!CbV;*d%@z~})#=Y_jDCToL%m)eBPpuJ%m%@X;4)bb=Z*CGb zt9z13rP`SPHi8$(5P=P*qo!mHtjCAIBWH>EHK&sO=IR(fCviSFAvm70Hnb|P=OTE> z)8a;Fcld=?#{7O1Y+01>J3NWDKdFfQY!>!^G2&^PiQvo3G5%G_M{`^>>X|97?04eyiy3*biHY%{8LwM*2Ihe}MVa zObm~Xr_M{BsLYas2g3Xti})UDhQt4g>l4}3iJ?dKx8PS$1N-mK$R&xUm>ZW-uc5lY z7(^|ENSvQ9N`8SobKorlKbZ^CPlD&{dLE$^I`)k8pJ30O759R{B^0Q9p5^soTIF!~ z0p?1731%Yr{5@vvaoJ`D;^CS=>SvduZt7JH`{}xZdBcP%x$whae#}aAedw2jI_5~ta<8bzzdB&Qv<$zw2gd&;m3fzx z9%;hjqCI}oX_e2jU_iyRZ}wE|TQ2-1Jmr2m_e?iB9hVJ0V;K0m6Ic(rBi?jGWxr$Q zrOVInff#fq{4tt=O<9BUU{6}TYcFzU8}r&M`t0gOCX;sK{@1|#A0{lT_Qra-6Q1V{ zz@J5k)N{SDf7q(>S(aZHiGAp!M=E%ZhF~Eggy!Ht#`){P4|EimbA{z+2kKFBjmoTO z;e~L~D!MN{sJTMr{r;}nQDRd$M;iS%Sq0++KcHx_VTL2}OX8)U2=CX2Q9t-ZMau8n zP;-_j8{kSg7k%)&o?}1KOxzzn5`5?o6}1wvUjL-FyC%@zYn@c~tKvOEgZb{@7n`7- z$xM!CQ5(NW@TaJc=Q~x_3n_7NG&S7X2z<^$#BYzH*48k@oEu5rf&I6l3I?G6TjKd1 zMBL^lVlz(IQ`STd@g-TWjelRs7v=GM{(*PxB&I%bpq>7|P){Qa`{UsvDa8?fz4x*? zF2hVS&goRjPlaDZB=$F3p(pf*AJyh;=8d_AbTJDTYMvFH&G8kE!3-!i05!!XXEX22 z{$&39ovE?CGd!#l;a$=XwcMO3>t(ZSUf=i(5i?}~csb*2)-U;*3(60s;Cp+rn5|>x zu5nU=Hp3@L&p-U!5U+Ky*R`2{u*;6q7F11=`FqSeMBI$kYP>M;4rPAEXrna)?{MBN zMqBg$+RqM0Yjgi!dq9n7?VxISzu)*M?LlNB;%B=07oMq+T0;Ls)5du>BIdsYDUnuhkE{Y&6SU}&Shoi=wsyqV z_lpPV`Gz<5I%+k41?u^RmB%`0es2x!Wvkk2^B)@8NxtpCs~Fn%hudm*P8iz0UE69S z4;tDgm6~f^YXs_fhF_m-w45@AwsPHCJNeVVH~1WBs=2%}w2>dJy(~2F4L0+dXz=XN z^A7E;8*9G~8+Zq+@0ME7_5eNKkkqiD)+#JO&o`7S-#}~WWoSd+(o9_f*T z(fZj1AYQBE9Y$WQtvv&8@qg{9U217QtOHwP1~LY$%9*xpz>F~ZPx>s(U%+r-eewJo7l z{$$`I4z?(c>oc^ARW{PhdM%RidcJrZvUMnn60 zgYRnni3|0-!_ZY<)Jc{L^}K^$*$-;KdL2K(d_&TxcWUMgUl||gw#&KKYU>X^9G{i- zogcfsP{+^l(en;hVxFnlsMiraV+w1*^u^_&I%WIh4h|R5iRl zgEGJZ8u*Af`(0{dH(i_cn9@Ubs^%uTHtT1HMsHUGChPbJo@4tj*{WWsVQ4qpx>;>- zUdKo9>)Xz5QqL_hw3EARRI6FcV0}aK49KTZ>ztmhZ`;JIRsDSpZPW`>|7$p1&pX_E zy;41N*}y~CTdct68``DgQ{V@p^P6D(Z%dV>Y82{i@ZOxibMM_G)hfb6&p-6&oT%nB z@X+%P4d=wG_s$!52+w=5sBfXGzrkmwH`QanZy4IB=M6uMDf)cv-3ykewgaZr&#_sCrB`g;oWf-cOX^8P>jblMc~ z5Tj&!;h>6Hqrg{itby0x>emi+t#sR6@^0+Mfcs=OE6^SBX5HWWzbvlg{bIj}I*2C* zQbU(YO7vDkyR1h;#cA+l&Y#73AP8*i6y@CL$(&D(_{ezF+e%TsEuYN&SNe-T__0cf zEI%3g#Zc6rv!xN0HYi?4C+YQg_;D&9W=cN|#828&&0pITt=S|wKA9;!xoL-T1b!O) z+03B6Td-YOY&1#Mm*M>2PLAu8-D4+7J(@jOLidI$Zuyg0zr^}=i<-4xq|9FG&Uzj0 zM-TD&S*QZvOX$(nWqdS;j-p>qkoDVnk2j;tPvt|kaa=DQ@zDy%S2v>MCu2~rqOY7U zQcAv5&a@rH`w7$s51J&O6q6KKO}ytOf%1n%wZOj+wlD$`)?z#pNawxzZNyU&MFU&4Cj1#sjshSwOcvb zW;o`L0?E_l{=1>%|8jLUaD~W^_xc2^wUr|K6yU%bZtT_ zz+13Z%In{(R@PKc8zS@lnZG2_oEi?+wYgrxhRD|RCwH){Pr&WT58Bh&AA`^zZsI>n zikPUN9>E|UAM*U0o9{?>PPpRpD?{%s2MyMR;_A9ee}4WOXl$szFhKrZ*1rqR512^LUf`b&oSH)G4Gt`+G<~j)RT^=&)sf`F%Wp z+SW-)K~H)@N`2= zX#&+c=79Z#h3qeOTP9LiEeDw|&%D6;dhT>MsgJ&Wu*EbosnAFAIn3h>HktumySL;O zI0iNODHx0sy^ycp81ae2%JC0#NDS)*{=gFPrvu84T*S3df8+n!>_2FNpNlJ#3y-(J3b4293^DtQO4FVMZg1X_5i zGwa1*Q<@Rf)R&f$uj2Dn|079=hqsh| zEzCny*qR9c$`=2-{|Q%iR8F9A^;*c!=igt-8X6BJ9m z$2OCE2FC!yo=4HUy*APxhVR#(tVpaeHj;PZ~6mi|2a`%kqDB!6FP=|93T zPG{AZtc5l7+EL)8a+H~8yx|YfRQ`TGgZ;MfLe5B2&PV6-w9?6ZE^2@_#r)e*&Znii z&!q)bo3h@C{cHs7f9*wfTdbf*BQF!{W3%x2WIMo0`rWV|vwfB?H7LdY6f@=eYBX>W z;$Ka$Ue1C4VHD2B{_vk|g83^#){AT&v;=c_6a3zI?9Y;*^)IHG3616N<@{e>Q`26s zpF{w7rV!-*Er!0%wY z$yToZWNy+B^X+=6C)Mk>gnSk@kZnGHwT<_q=GW?T|B`yhkZ=CTX=(r-?ik`kFX{L( zKk8hrf%KnY&+5un3uthi`pk17K4&eOS%4vfp9IJEaDDI#n2-6b9`m*ER~Rn3boE7z zc3qqOpCdvSqMma-@Ex6?clHnyR6qJ~qAt#NZINHnUhw_;<6IZ(n>FG$&4q7WKQdcW zCx_!NtT*-UzK9CW*Ooj2d$1N{2Ey;4Hoo5lEW9)P5|+^P^)-1vB=b?YzRJGdHF$r_ zyrr1a3H~f+t7AXmFAyUa*BqwPrJmLB_p`7bPZVd4Prz@kBKIq%Ee47{^~a$8XBGV3 z=D1!n>VX=t14znBw^@ z#r4F)e?d^tzY6GIQP7{)3;WH2u9;Tg^FRDC?ujLZ3i7YYqkpVNzTx9zY-}p8 zk9mSV&)a~xGeiGsBaVOd5bnXvsaK_nyq+MQH$WsAH>bTbE26&|$@8=NtvS^nQ&Hv@ z@H1haV$e%-tT*}KW4eewN+Z-mHfP>Y<_iVxD+B%14Cf6iT%U_b8F^cISGpYTmm>4W zEH|brT8}cA9~Hz`V-Ww`tc2Ant#6<5SgT|km4Y7($@nSeGv(N&;+X$C;Q1~Sv;Af& z?ba56+|3ty%N4Qpdcv_y3%?`(d4=Qw4nIAdWkG-O_t}W&m9|f7QaXG2?V_ENPfm+JGSZ?j?Ri#TYe}ei9d7|qnqwFs;Ok{sCZLvv|TalCH zn$7+eA?Pog#gf*uvzq)a$>SH_zfTP8ySDSpGbJz|hhcxbRV*{TVRzo77}lrH=>KKx zzk82URv!C{`V3cvNuaU)&0m|a=lYHK`W^5lW$nwAFH|NT_yxW2G4kom?9ZB)LQUTv z$PaylczJnyuZs1cSACWI#_t`)>_3fZPlb&?u|5sH=8dRo)PqWTeL%eX6ynowS%U-9 z{to%9uMtoEPk28Y#Qw$5ire%0zw$#7{J=lrew4Jgix^G4yBBGJ%btiDB~9!r zY#mRDmtI3J&jJtdSs2xEC-a4`p+97!zQ{?ju)}nG|7*n4x61hI{_=CkT*bMe^kzJ^{N4*oV6dS(*!{qkCS)g(}in6yZ=@k74h za{jy_=x;L+k4~WvGhagwaFyeo>v_K#_X;tpPT;M^iTCl#k@xiidUgx+zv^O?vYb4` zbLdkQaeZb2=LIT;`YOyru%_8yehTs@AG6*iyIKQsSrKQx;>o$H*N90pa2EVhE{;uMB zCB4yKeFW<(UAzm?pMOZb7%_7A2j7BzwF~+AhwvTA$hW?s@qErP9REwn)WPmLzCT0y z>0Te1OvkQY#r?>{dX`GnERvu%T|s}^DD&mI?@ORFGcMu#mlJ!gvHz1@_5}@NPx=kJ z)sCYoqs~dbg5#_EJfdjI;?uHz2FIJrCr2WG^%V4DQ}8B5@am32e%eWmYlrckjQPiM zz4O8In1gRK@GSTp^agV!|9(^$`BJ|6zQ;NfziH;!grlJe(96KV=T4?xtk&Jiyb2(aXXt`FZSb*ZExt=Jzb< zlMyl>Z|@2CMV!czeg=FGxNV$&48NawvTEXS68s-RkK+9W@bfd1{k=!$Bhb5be%UKL zgQ(8)L(sD}NM5Dbw?Od42cZ{DW}ci9f`d?R=(`TEOz$T zhw(WBdJ8<77X+iG^Bz2ZPgzf;$?qVV+GRIl#L+mPW>a2HFhSGAcuiq_k1`*I(&kfX zQs2XVAGMXjY1^nB;7iU*UVp{ZXq+duARqV|{Qurj-W0$kem{WIy2TfwW3_7i;c++kld5lVc9(o=59+gD+ zfK0ld7Ki-oJJ36u!LR8sja(VS^Dp?AR^s}LqsU*40w44Y{DG}_S|yu~evbgJ@(Rzp zgP4wVo69NT;9H6?K0As&@fzx5ghB6pA^D0wg&NsLh2s7^m-@*9RimxfLoh!+!Ctb1 zFqx#$FRKvAJ6!y3D`pp|IDZCXyxc|q>tqO1@NC)jQO=D=D!5dwC^eU`*AVGdp+o7%S07% zl1y$b(U|?(w|2c4_51`qi49=A8u^7gL~iHf;5!55^SsySAb5pbsy{IZ{i7Y$+ibD7 znnsI)gW+dmhxO!yFk7AlJ|G18Z+GaS1){L=QSe!z8prbgUMrA(998y*VLWyh>)xLd z*UucF;nCsX{p{uXQL^?v@GcP;@9i+3XNfU4chmCx2Y1zsE8!p!D6e zjml+)VSlkw;qz_Fk~?VTP#q7!4En%N@EiFXEcpknN$OrDjj9d|g5LdEo)5X+#H_#o z{JuQ-dB)Y#C?n9Hc?^7HpvvmPV*wjQK*x zKh(@gqwuIXydRSO4}*<%(eo5f$va?wXgA$q7hTygUGfafL+oC;3x0GSk}tscwtHE) zi)@VCV2eh+0gWl$HBo>+fM$oIefnn5cob<^_?7UOoq zbB3_K>G%h;8@p*?hpw`X=V|w{^=@dI1|H&eiFEKd9l#GY!+O(6QNQiN`PP>2k8Fnx z*@e$>m=5cM^#F>QvfVwk7)0VfYQbP#$})MZBrG^qb)voDmgP z!e6f$o*pF7UA3Sdo{To>W^Xn_{ z1s3-3&7-+Lt7E@%3Gv%YqKn&DsSFfFVCv@ZO=T}V*62CE;HvW{_(do|Xjz<=5EL!RMVnZD@O6WqyilSR4)Z!T7$XLdy~I z-+aAMKlZlD+PbZ6Wz-W~KocCV!T;b3^cHhbf6M~-Azf6N&0v3sCb6j3u=AqIx%#|* zJr|QGYW{VVpa0>yjRj(*)GE3Ve8zY91-BN*Ke!_2@Se)o&U@4~101MI!-tXwnE4`F zSXJpxA1B_0pGBa!-0+y#^W2_H)k`YoC-4tf#ew8*RCil}idX^S-(~ElPwq|!%}=PP zpMmFVY~QO@5BOVXs7KKYJlHNV`fm?<@bDP?ALe1dydU#xPwLd-FzR~@g8#)PVV=~B z?qwdp-}eWPuv%0Y+#8(6UieWE_V+2`ta%^oFEUU+qbttC$)dvXK9pQ14ZJ}!j{l3R z(;N_A*app}Irg{V;FtRn&VVX=^@mrB6c=Lq(y);mRX(3$&K3D39BIjF644(lab5|+`PPX&z2x&@kGG)o zfix&%w)D5){=)Su;E^EfkMN$nSZmbd@KE@Ef#2+Q{$Qta?1nw3uCyP7c(ed- zgSt4V7eE=#;5Y1Wzt1BcQ%Ow!*q07EwpO_o65_?Em*s$bjymwOD1-IWUiv|No>M`7 z9-lFKI`yS`M~%=wM`OPfCx*0kr0GE~vzfPGPnq3&`_Z)4=d(E%l>MIrK03j_WnVV@ z{}9iQrS^^bQ`5sMvUxAeHPjM&y3p12{@J{DZN>K3Q%|9|a*%vkN)Lc{BJRbsWvzJ|8<@EFanXOfW z!SQ{L(G{S!*2kj;{^4pk*vm{qyX50gtzldO;vJ#zo+TRFJ5;+GZfI9X3(-CX7}~Qc zglPB1Bp|+{^Lwb_6|C6|GqlyhAnj>?L;J8j*vQ_7w(<5rt&U=7JDUe;;kJf$|EBY_ z-|b_O4`YGzUt^K7Y>c-2afFPQt$W``)cQI=o6<83`G`#re`zJOkG(V#n-Ih+-^uwlvI8d*m29H~*H?W>nVxO5d-mQBZsoN$V-0Of$8y@i7KU~MyRzES|NQmupVg|2w!Xm7 z&T3d%D_m-553gPddn-e`+P9M0`B#2=zM;gM5?a!JLt8v4u7&y;+LN~w(<=AX`BgCQ z@NumXys-@J8|i=5c~=(cd54GQztl1V7RmTM=RCIy_^viJ)A19m$4zbjMg6*Fp`LGO zbMS+DzV1Rj-{8IHojUrFufE;s&KtGkR$ZIVJKVaesy)&T?W#|*)UQ(vZSddf2pe6S&j7P899FZR==cb3TfaQ09t<(? z5}SV?P`&L8?M^@TsTWS^cnIblIuzflmY=U{W52HSF1=gL_@Lt-*q?h&t#q|+l&;Nu z1I`z!1sU262k%g;e>CtAr{`=_JyQ+s1$VZnUAoTH^A6enrK%Qh3_Qf(I-Ar+YYgq` z4ja@)y=Gv%>HHto%v`5F{A}PMisi0Ra}#uJ&R;HHe6`xVna*E=^~R#kE7g+&reXf? zsj!~6s{3-)c>7d6|L||wGS#u$R6YMN;8e2u8vYS{9%B7xmQ9j6BwSa2gZYPmplCJy zo(J@fVCm16QzlgX`_TjQ>0z9E$0DEIPrZgV`!%tCe0kVxb?7w@%$KFW>&Ma1kM3&y z^3x>Wz#7cO4dc~MnNww(=d5bELjBug8s>jX@U7uwGq0{X3~hLe$hLb#3HYZ>Lp*z^ zib!uix=Y3I0Wiq-9j*l&!Mzo*@oi^{B46Q$nA z`NUOE-T>n>0pDkd{cUY=*ZQ7PP=12sDL7x|gx^o)@2YW9&*k%&-|D~0gwJE8o{Tf1 zg4$+Er8Z;1PwbZYL}n98fl(jB{DrKCV3%Eq@=uSJ^>TRp!SfCE?sRSLuc!%!7{Dkw z-|!x3|NFAYuOBJ>FIZ2_JyVQatBjKM43@y-ztmN8Fb1O}U&{JzNv|r%u^1_NRGc}L zF`H^~O#ZuQBy@t=vihG15cwIO7er^xXX+*1^50mp3=WNuw*@V7y)bSFWBcGd(eA=L) z%=;JU%G#LM!`>0i&X8bH2UH zt8vsYt)J}gh+ios-b|$5?fc>RIm&t{UM(lnolTBX4`+RRQG`29F>{pl7&ykme1NrY zU&({;_Z{v!ovwX!koSkbFMi7`)HrsKejdChtq?btT0ZV0>sxU9Te>E4)j@_fK;izdM|=#s5$bN_i}6$%c= zR`NsqeeC~S{7_qr*F1&whC3%Bsck2ne+1vZDXXJt;nOyfr{MUUi)AcoF1C^5f#W|J zAL5Xo(OULTFz8C7B?<7iXf1gZ<~`tVM0rzN$^9SmD}BEtf#KBoMey^kZw-$itCrG_ zgZm%Xt3MgqLh>)nJH$*$pzAN1OFn|v)TM<9;98o?`HHXK+&dom0nK>5WZqLL?hp$d zsF|D}c|47p8$)LzZ8+aw@*{=|MWNr_%`G1yA3KYT`y zn(s|Fe>IV9J`;1iW#yzMk}u&s{%1QM)cii^lePO@seF2uxn^#EQ{KMTv^z?f}%umY^@7YhC*Z6`NYY4xg zt=KOdq$SSt$vdtA`ui@h7%G`9_oHQ|4Z)Y}mhl9qKYnz7PXozUvR|a#Z6E5ov%ajC z!I}v3CH|rweor0b=d=-dIbPKJLS4x(aDH^Ur#Ja5sS6&f0pjKDM9IhO*P(0QOl>Xx zm0W=Qz&es|V7_8N>;j6itHb;k_{N5U>v6nW%JnU(qMkxsS#NdosaiZ=WB*ZJl&?33 zZsydK{!+|KAdiX;9k9Uo@I*e+4Dc5t=<)<;(uP^{iA{43ac=$jQC$~!Tvl?H&g;IH5~D!L1OgGUO1Cg#QYV&--Z0f9`LU; z$9xqJ{W?TA%>wx%{xvYP|8bgm4?a5}C zIj?8X8#{(AxD%gw@cyt(g%D%2%h;~#qW~| z*6Uu#HwzJwSJt7%jxqX!B7YC+3oBa}7svfU>C{Te;(h)3U<8dMFM<3R5oa=6IoI?r zcz}V>r2kmLAC2#A$)WcJ>LX-X-YJIp?h^Esvi9zMjk51lGX{@V+#c~wd(@-I4)iI7{j!mL z?wK<7(<)nKcRf`a^UYf6XV9{C>1>l*rFg#v{$;;#8@ejX=A<#^n^N`*)PJJFjH<^j z4=aiJv4Xw1TcIeQyaPFp#jzjyfcs|xzX>pK^NqkqWlMhu)M!wgr~HF{n~nYMPw@n( zWwy~j=-`{m z6zQ$n(na^L$X|{GU%OqDJ*ps1_62%DI`-$+gu~q)7%!io$2>#-`75>$bELtuJ|f=! zQef|9Z=COf`cxmF?>t64Ia}QNFqk&pd9NYA8vRQ}eVY-eH}oEQaXR#}ijTchP`~&E^n|AHgD@5QyQNUKRnMTenPNVuD7@`bsDAmU=zql!?=2-xo=CwQ z{{(tU8us@s#df0=G~VS2^r|eZ5BA7^UID%3G4xy$_)|EG>t$9@?81l8SIm(9H$p`8 zUQXY7-G}~A1LJ+Fcs()&`CWIwpIE{_!dLvBwTyo3Wd6YdbHO<2M^R}@q0~z`AJX_2 z)`a4>aQ{#n0iMR`VN2Q%9b)>$)ykXx> z7oqpn!2LB7C-%lc1HXvzbWP^das8|6lP^F|%Eb9(Jvo+&MorGM`2CL%Pd!V?CnMlN zaTM+oks!m<{0_@@R`x5$8rk&&tJxKOTLJqM6;8eU$3yfGkH)PO@4X; z`KD!&pXW&%kAR1aJ1+euIDhU&dK@))orm#o5_;1%)HsNvA6xREcgM?kZup5G!vIUKH+^iuwa> zkB?(3s}@(n)&!Jo^LQQb2f28F#hcj?yom|HZ)>h zVs6wyjE`ZspF6>K2hofknV7%kqkml>vtEJF8}=jrHV*X>9)l&~`WgGc6QC{&JR1u4 z213u-3tofcjZbLp(I5(Xyc>FUD&hn8$Td5ZkRz?}S)OAAPy0v0A3dG*G+Ezd)yhcP zJ}^z=^_~CkQ9GJq4{V2CbyDU}Zm$zZ#k00R53C4%VlDOran#FZGroTy_jl~k5~%Fm zP4KhmFZWB2EtBBavJv`SE$BU&*sG<$gLxzLcg_!8AY9I^0#mU;jz{)ac+_h>p{6PF zuS?5#uv$5lrtVmS@&6tBk!lzpTj3wF3fK2u>Jwa#Ag09%$xE>3ch?%bs7$RC_z673 zd8v$;&_Y)agZ((TX6LW{yV0MLG_FU(IodsQ_7eP^aldb3{8W+pJ8Hr~KfH_cU3GCW z`w*T}tnBZ+KHdyF3jcs;IsTYOSXwz7KH8D!uP?#7b`hv2OYXPBpf`Tx{35aKY#zD2 z2*LdN1O2y;c)H;PjhPq>|C&GOZ~erg4f)7d4MKnV2mQlYEVz?Tak~Shp9*VITY~fX zndAQbhyLDAEYCkd_RfLuTlj|O(O=vu)fyXhI{26k_$k(3>rxuWb}(9u`o& z06+Barr0m-5_Z#1(c21((f?Ws_QYSFj_bRz1bVnF{E?2r59c^#R0!0V{kWN$BRV(D zr9%sYG~O#P|IjW}1@97!`_}`!%o$N3@)*775{ejYFU*H$MD~uu@GlI*_xBL&5238i zl=U)L4+g(1etp`9>xsa6)JA^)k=c8YM-d7C9c$=oX~O<~8vULXiS;cX@$pIcyzS)l zFbcfiVvMhU^lid+`fJM1%R`PIu7A;deI)psK!q9eG}=bhz+3RyhT|7WVmmWX8hbbJ z`FFVI4w~c^itA5RSpQyNo(6xKU_9T$3j571-JAx0upplQ73QyPx22)pS^)SI9UtF1 zFb(y97VG(khG}V3ui_#-|M1~%8dWy)VcrRTfp6{JREOV1Wp8{wY9E4ks4{97{jM`t z&pVvix(ohYv-G@!>5pA>uiFeLI)7rlxH*(g4X*uz$nZH5n8g>5S+9O!_y(cgUc3hv4@4q&>9nW>;SS zeprQ^KcSTl+sRS8M zuxOHs`_mHr{gC7#Vwjo=+zRXW!4iBaV$&J7VdSSo2L@X)vr~iB{asR?`URo-ePxeLr zP6MnDVN##oI^G9<1+_3f*Fm4ZF80))Nd@ogV7@pBe%ja`u~ZtDRvXXfEO>%4_8h;l zPN{|U=qmPaX7-7z$CGhtO zb^FI|!@zvh!0-PKKN$=A8;=K}K4J~#$?*4A#Q9ePNprBk{yk5Q=SA5gX@PlV$-iO@ ziLr~^5uYj#ekw%z18{yxm%8QPPZWvoi-n2g7&7Wo9`ivm_G9bBt#!juBcnX_a|zh5 zZ4x&U+-Sq#a`4Lt1b;aleD(;`Lo1E_oDcIPg8fKWekcJyrjhb|bR&HXa?Xvwli6Xv zIZ(KMAJ2LIDtkGwXHCj7cWSicgRHN?ntsFM)8O&(Qt}Oa#_BrT6ZH`vs_Zwze8t~Y zGr%w20k7~;@>Nr;Ceq}*2P*S#%(%oq7>Sx@kECADbLQQagYmv+(vO1IgHE6O(Y-}4 zRn|9sU%87}fj#Nr#+T6FouT(9iAA@&(VDvtRIb&u{bZVe*C|<_y@c;`1)p$GjI-;3 z`d??^U*IC=L!WXz>HO}Ks#C|l;+@}a;eEa*jm^wcc`fREV7vGl(hHsg8tQ$t<@h@G zv%TS=aZLI-uwUQp=e_C6@x!WP`8?@Iv_7s6&H9juzt5FC->YU0v`5*mvL284koa=k zfnKiPqq4tG?}N$WY5%^^=+nWgG?M%Ag{S&b{YGihZzA_hpyUA}T5gA*LleO@{W^s> zVh_6+{6ag)PjFnZ()5k;`q)2W_&rCma$gHSjn+6%hl%5p9I3^!jRHZ49XZlXR0m+KXDo7^!mcVb}0NDCW61%%lX*CXy8c1qn%Waf3U|A*Y~yS z@2c|tnb!vkpZ;{f&ISC;33xYD5FYy-$t|I`%6?_+QLT*ci~HGDWiJuV&+s|o06(|7 z=nuij7aJqK7jvM6d6mGQOa_0LEJm#BgL-16!DDzLZna-zTm?T7@I9ONtMH}~ODa1e zKj>aIzaO4pvVP{nki2Z(KdxH2L-HOkVzy^9&)gZzZ5dl&Y2izkB;v@Tr@?W~M=t!fuT`*oRkZB!>iTj?98wfv{! zADF+0j*QiAh+oxl+usCwb>!!Wep z28L zXjM`S?Wp4IwQAvp_J~`y+U^C0w(st?+Sw_Fb_<_2+GDpMJ@3%dwY65=!O#x=)lzHO zIY`ep6#Z+iO|B87=NUHMX{L=WWoU0bY@>brV&EMf9cZfczii+emib$0^|U}4&t%?V zNnv9xFEvo_->}}Uk%k&4GQP>Y#Mm+QwNZ+WuVCJx$g7T4=5K)B&tc%(TH3D12Hv6K zQwy#5`T)J3!>y~;v>&qrWW1X-n@)GCXthw!gL9|ZpSsM6%38D5hIUYTCGCoZp}l=p zMQw7i06o7jXN0*n@5&N=JEAxIBQ_e^A8bt}U-5tSDTXzuphejkUY}xCUVB&C(4P6P ztTyzTftToYtF%^b%wj$7@VTIrcFD@nKD5vTejxtx_i&D6ppUV3FRg*^qX2V)X?@>^GUsYcA?};_&hl+w@6LO@Rj+xte4*W^;jKKk?Us!O8zTz#y$0{ zqpltXzaDY(x?29VH{yG(+20oV@mJIzgS_>;!>%(I)TLST^t{7}ucyIpcp*MH8T$Gq z<@d=`>d?tvdfs8?nS9hgFtl4-Jgz>xGgtrm#SOXY@pZa3>j{f@Xz*(=w96jNRvmsC z_z1WBV``hdhW6}(N7T}auFZPur_4j@>>?cxf&H#BFEdlE?5=Aw?_jC!SB;ExZNA=r z7x$`-4(Rv@ZZCYgTU{{4&_+EtwP8&|+teI>694Nj!SBC6XQ%2l(NoVqI7Dq%|5P@# zTc&SS7iG`X^A2IBH>=}k7}_mgY*NqEG_>D1ZB&Bwt)`xvrsp5nPomr8Y1|(r@8DWxg*w69(8gMz=GSMwAQ<_iWyy7Vl-A1E7OQ6-PDA|F82imIs+qG0Jj*o1yGtSd7EAw@d8?h5GrwTM{)e>e&_uQO z*y+f>v_Skc0kQ7-YL)#n5bqy~_#^m*yprm%vNI9C9f$pOFpb~(Hml8rnb1F6uwPz| zdRFJMI?SKR{a>~lm9xmo^_nU92-a(`Zg!pBeWvtt;QW~jTMpa#nayN9Ouiqrt&}cq zGtvKy5&xf$TDKih(|(4&4L>;LQ#by+Fv*VH7Dl`J^h}MjP6Njdv=={^R?h`}~6Qdz6Xt{^;860uCwj+ZtY9*+*3lpPQo%Nv0sL+ePI3_#cw?GCm!iYzm=0vGS za(})t^o=saVxr7%=J~2aK}qEMPhdYJ>F?Uuz5+dHJ6`e$SZ`_B`YO;f$6>$G9Dbp* znH8tfOUFumpY^gy=jzbox?`mt%;&Si#p+S5TVtgD#{I2uL_PSKkLK|s{RT=awWwsm zD5*!YzCEO{I?Ww0O7aPuQ&93>E$W#wlJ{GZcj$bi9?j`A62CXgj?ec+wJoVt&IsA& z^RDsKCKP8s0{!8c9iMU8zhOz?aQ*9F&0El&0lGGS#`N_qsVLu#=Rc|Uo*dAUhEJ9C zIe7h7Oe(b_kBnh*KgBuy-9@0Z{-s8=+9YvqIIb(h)!SPJR?8aEk0Zy_%aL&e>O%rKeZzri&BOa_|x=f*!SNqB9 zV|_eg?NqWE*iY7HVEunu?sVvnj4(k?BSU>9@gpeDU>5P~X*o^Ub9n2KJZWw{^S(-!HD0Q1wY~$xm<_u`J0) zFpt79n|2zTCif2<4-Z)v zO9KW8$y0Gn?d~(eD?2iR>X>ljH{_=iv{NTCJOFH8I zZIgZuE1bNk$?p#O_Sq@E(7QYEevtiEmC3&sQQWKc7~fmK%XLyttXx9ZN45tauo3Y& zJ4Lx32)~VX$oGzv@u*k+!O;KP$^Ad)(7+FfUT(IPZNywqKLj-wYTL@sm(LUVk^5J) zmHm}Je@w*~+SIfy^m7&UYWUDTELx0D)9qnV|k#B0V;MoogfcEnbgbeOyG9``SpJf&19_<6e|PHqhT! zAzs>$PTG1YA*`A1_pA9K#ZfZ1~>yGvtvzghcVHf|1T)-{s; zL45tyEaswqwk4i_Tg35)!w+~q=uu1f5v)R8lyqv}Z65q;EwO%Wm-RBv)bs|g)DV6z zY2btQq4x27#M>HR|G!`I6L;?V(8ehZFh3pT^?(MQosayI`WQcFkxa@*`^V z_!OK|RlU%Yo{QR8?|#VmM%J*I$p5S*`FPeS*-vJtX)Vcrvd8zb$sW+?YRdQXo@3nk z@l?3d0_$IS=%v*~hvKeSuc~2wbQbI%@ug;0tlO2bUtWRzO1QXe+@6MBtAy{*haR~B z`9K}XvTY?i&vVd&*NB2r3WXf2$mcJ_CqtmO2wK;uB6ynw@D7XMA7D>iXPaYutPvc; z49f3DOLNVzzIZ{8pCD>E^`N5KW~hG^gM6eEkstxjPt=QCV+Y2@4E?JR@s-Y^ zm8$|i%M90h6Zt8f#Pfy(y~b45%ix^LF*jSm$H|n(J9t%FQFmr-%Jnpr{v2F$Eb?^) zcvw~7dM~1}NjEVw{k@XvU6#kAVEqB-1!YliDLjwrz}-~XLchV5fsU>L5)M;yAG zgLSYZ`)>)Zsg*Z1SIPZX9OuZ$U)hMi-4s=fe;r$9S`z*98uFL_a{c72&vC|FpA7NX3ij|5%Q{`$1mnGg zec-an_76YzIOaUX82#%9;*IcYXpwFgT2un}=L+(hjO}}OAE~svS&a7wh?hN+^+D28 zjWGV!gAKVXnmM0Q*4X|O%_eM>E_s|n&gXfJAhm-uFr+$Eb?u6@`CemJn&`qazl5gRh zHFLK}>KXPHdXSsse@rUG(q8Qi;@P9b;kuLYd*bnVMUs~>cN;D?{zydq?AM6z_YkNp zCO(x)h9CKB=Py*XO#-n$)W~}V{kk|__Y~Dlmm){&sn+UVNyMY) zifhf5!4Ki7)GL`+*t;nO`s-8Znc46&=q4(gt)MX#pUQk~lfd?1s#em3kf+d#K4Kj8 z79VD=qUfzp&|gi#Hw+gy{;ed_&yT=!RF?7jO$U~f*TnnKUy5+PFD;gSOCevAdm87T zcRo;BI9^#sC7{@Id=`F7@M2mDKCckhw^{lHRLV=HVNGs9AIJgEbdgGrNTkRyH#Dw= zfE;D;&~dcn+g12qSl~QoDgKp-qfX{mz~9sXUxOT^S+VfHxrFCi1^2(KXrCE_`VAML zKa>C;@gB7<;%NQw3&=0ef}g=|Dtj~*{yXQO?;nwT0@o{kRjhQ3|S#rr$JFQPlv zpcrUUIh=ov`{P0#&PT(qK|}tnlZ*#jMMU9xRMz+4J-8lhTm(fnQZYVJHw2!=`Mbht zaQkfNDXZ~33g|x(PW_u^;eH3m^>2Y=I8Cd34EK}y_0_1g5lXEq9mV$r5!bV5wScf zZxQwe;i%7^t})xfOv|Ve(Kx^ClHbSABmPtj^vg7i#~AeAlVEAVpX6=F^>KZQP1I>) z0uA-wD)n>rX#T1uQgHPxlKZz?`UIp`|t9Wa(nGVcZ1Kyzt^mr#xC1pF+ z_FF0WAl9!qzx%_?6wIHcF`rwZUd0~FPs#AN_)pd&N#3y!eq)LFytlaD6`8@pekcL{ z1COC!)P=wIA)3-W4tn(~?8hv{tB=PhuTnJhMc$t@7Y7}4=*Hu4tRKZOU$)2JpTPbi z6zfYF%*P|e#ule2JvB&UzZlK|aeRLke6qj1KCZWOB;q2y{jdP{ry=yaAn`N!GW-?h zK_9k~`VYL^@yxw6_RsKr6(+vkxP*P}JUq_^*dGLm?|8O&caE7(b0VT7f5x8j<=bteHrFFD{-wg-qm{VinMO^AL?Iq6 z--lhb)2MizNE{!0|KKrFu~91Y^hoBFBo9%g?PkjP70&Oo>|gk!Y#Kap!eq?*mHew| z=r0n={FU6l7u&N1o}~Y*P=22^i9Z#$QT6Eg z%vZ^N7?WFXqtXA(kvswCJaQ&%gP+YzjrTsBGikef8&%ji&FJTl{&O36^T|e@A>K8e z9^ao}T9vN-?zE!(S)Vq&heV+3h_UkjZ)1U02 z^7oi0c-v(s#z|kvgYX`3mp*X&;w)%(*A>xodg zKP@*c6CORi*?+?x`3C#xZW+{anWy|c-tXR;oI#;UZu0tae!{mHJ}+L-KZ6;D?H#t! zj?cY#dxS_}Mjs!tdxj#5eCP=!eyc&j=`4TpX|Ucjq`?l{%Mc$$gz*K_e}3H%0q>frs|j`#hg zcztLVRdBV${Js==`595_T=Ei2O8CNG$5KOoFa!8;6G`}>jOjfR2zfU7B5<{&JsLj zWkd73wuXaU`_cjV`xb_xfi(^9>hwcC&H{coB@N&!4KH_i(>d=-;FW%0{4Z>9=;wvw zt%&u-C-{e%8B*fiXj?}M@O$eq{_PP*_jE(gNK1^z`;ni%AdXrSE$dMW*Y6_M!*4|Q z%NLa-cIz^mwAlcSfBqBgWLtx`cY9{p9vKn zi_D~Mn4?Q$yqY1ehf9bHU8_-C@>MqExYAbnV{@=@-Cyd83U(sL_$9$l1TgcvDYUIQW1$e4%pv9yBei zPd$(id9Cu=6ZLdr!Yb(D)89!R!nyre@wI+8@HKD2OSp0V9{VW=Dpd0+YF-CoJX{68 zv#xY;;C1x-XaoO^RJmU)Gy1&RcJNQG)qtOHH~5d9hW`Hn`HNxj1L{uCvvc83a2G78 ztGM5)2h~}66#fX8IG-lA9q)nt?IE>c(ZiDGV}FW=gH)ASNgm@_zqhEHEqMZFbWV2e zMfZFTf)A)8S{5HCa@X~uPImiM=Hq$4`=Fd7-9NfpWtNivKjs$fo-sFh& z<93z#A?|N+;FcpjxRwrHWIxtwwxan@M`#>dWXx-TCK--2BV@hGEF{KPVc!xxA=WMf zpHUd=|8636i3?Ra6QlCl_~(3U_#=AI<$DX^*Krhnos~to+5NyXjYWTuZO{`;#n}`u z3h6Nb-)BF}FJPTL;5R%-<=hA72h5&1BVW*8<$3|`k;nZ?z#OPNS1jp#x;ygaWhF1+mwilL@3FZi;BV$* z9M*)(wVpKp@v9tW0eC)T|B1q1FXnLl39lD7L^z{HeMb)StlYn&#vT{y(`jiA=ckxC zIhN(hzGykjHlUt|YPEK!y7v7gZ^75#yT2!Oyx1%UxjyMXVREGp-5FCThx5J6XpH_Z zQ4@udjJ$*A#{@0tpUyLMa7@s8{?+5!>lSNqzxBBAuXwHNPd(n-Vd9$@RF z-$Q6pG}f{OG4l`a9!6 z?e3}CqoOg=uaiA9Ge-D=M~J}rv=&%Th~I_!XnWR%L9eNV@yJ5_?b%Daydebn&^XB_ zr)783iZu)|@(h2%yK3_-^f=Fz;J*F z9Wwj3)HZ>?_@946qn0hS-ADEKs#P;>&YB?T%LV=o|NXVqHpJ-h{v$TpsyRVM-l2+x zHST|qk#}fxtD$zZbODdSd_%~=`dZwRK-6Q#%KGr}>+7OlMWB&)5H)LS`y&F4eh%C_ zYKudlk#Bf5p}O|2PN2-6vPR?g)k52D8ffGlpl@l1Uh90rlH@8{{#BiCm^r($R$tZQ z0lt;A(wp@7PWOshT#O#?X<9*>KUI(6(WEsUpvQ#@ftTp4$BvguYwL?HH1Z7xa!P3} zZY(gym(ogVwb$wKl_BQZrT_D*V7|fLwS+dQLxFz<$K`()(-!=iZ{!<3-J(rKQNZ}=YbPxUOT#|cyasBJIJHGcl% z+Yi;U$6O=t@Uind_4?S^vc9?|`h%4-yi|jt3-|}tP$#E8QFD(K^uOR^I$7+lI(YaD zBk#~|`b~A(x#>pUAvfTPTK@ht$#?PjO)Yj&o#HeN`OyO2Vfp#lV{a_ z%k}v1@zd(SzIvPzeNy$aD2Q1ftR9`Ke!W=0M{taKb~Rv%&PzBY9#I$C=yBUQhtz(1 z3-}1;9d1ol)fXcRV&)z4{Ik_Qg$iQU^M;K+pd#llkB`UDp_BGu?$+bXxqH-Ck8~d5 zPxvnNWwIVGPuihY?WxD~X1luo{sbfMQ0-rani8+ao64rE>kWGR*Ji7_{>6AB|8TN% zn(Dh$j}yI8Rmbjne00x7b!%RMzXbCSP4m{PHRkH^vkB|ek%a@Kp2Qkx&nj!wYmfYm zyaVzWYQ0!JZkd#*2L1C#J^l_}KhS_z(Q2meIQV-!lKuvdBSO`iz%{4XBdd2C z6z~Ha2OST@^W$&iA4W`bQmcVa;9iu>C+y2Snv>FT0)BrC^PqI8lXcG1dJ~}!dLZ8% z3oo*2IoW3>7~|X8j_fgr*_#LJd(=W)w(ELm0{h=1|GxFz&xmN%~zpTT~qWdc*kp_B;l3ty&573PVtz{0UwU-qf;- z1#Pe6%e(~i&3(#{b9HI!v%yl2=QXT(Xk+Sr*%#x@c7@kV?6*DisIOd4u&3?)2R86m z=I;mceqC8oqBdpD7$ny>{QouHXMz5U19|?mXMaWKSWBXM19|;mhxyt5(uCS{f71YC z+@xN8=sN?rUfvGJYd>YB751Of55gYfpZ%Vu*5GgT_~NXl)bocA>-X|=zk4m=zvjd1 zIeYeO^a~f{U&b4H$4Z5B9MymJpb}LIcnH>z``&Y5jjsNq+`nsy=7wSs}DdkV}$Nt(CdhsEJ{bgQ_AB=vWvVR8hA@vn6hhd})b&-4l=WMFn8%a0b zJIm*X^C62HjfEeEv-JC5P24+u9BCh%*xv(s`X77lCw_Q}6YE2=o@H;!RI+>GD0ve8 zeC73-G~dfn9v|mm{K6N&@3$A`%V$z=zc(HIj~nap&Eg?+Ah;*ilON>q?-?CN?H}|o z@*dvDk$*SuA^8^8zo)y!($AsY<=^LXc6$+zJw!Jdv*zzPKY=`L^_bUrzMTtr2xeen zr!A(cWx8NI=z+O@CjIt|qc_$D=_kNBkZ<1TaWGMl;|1qPiX4g{*OCQ%1oIH=2~a4v zqx5Iu9DKLH`SdKUgX~{|`~r<#G#&jx+so&V8J=cSW@BI7PR>7^-zhSF9{YD1<6oT? z;`+2T#(wt#X_94Iu1}ZwrrgkA+7;VI#+>gN+A5T?i?osRA79_Y|H5eE+}3h_Wj-n7 zJ$gL6YlZ7MNnYF=h{eKfS+pLsP%lu3j=l$1`m}(LV2>Be=JTlT zIcq+D@cOl|fAgoeU2LSk5_^BFYA^`(uQvR=L7Ur;+A(kPs%yi1irioF{<>A1HFyR1 zh++;IA2xt&Dq2GiZ6aBEE@f57AK z1So%?L4!=Zee4bO#p93}8^rc(?YK*wQh8x#OpjI#d z`I&}t{^31&s~G{vS2e`=+z#~tvyiI~pkjL(NdF+_C#M`3CwU0=*I*Bf&e`MXd5iks z2lioqehOYI6DVgwJzT%NvY-5r=@Y2It^yu{^%(0#`2AOPWd98Q{(qKJ=z(J$ydNi| z{xwESrqrFa;XiW@{*G7Z&O-eA6}7-$+yWo*fR3~ohihIF_d8$KucGFIdZyOk=L`DM zZF*V4ANANZ^!od#zr9BPUXP{$d#dApJcPb~gU0O`MRE75p})ve z=uvkl|D!Mc+-HI7@e_L9JBnQD2|cMQ=8KxBuc;!C8>L^*D@i{FtjEP_pH|f3Mn(8t zY{B}+27VE3;YU#szqcCsyt-oM#rCvpRRwu`>>smbUMKh^mzR7F{8iCANRUZTdHjBN z!N=4&s0;0TQcm&%eEx-9x{{k+Ijr9adhII;3G4yAw4nb4>zO{|!OVD;#rt3-*x$kZ zNiX`ZLs{@P=Ew&%M7~DtrWla%!-U;o!p9+=J^SFr=y75=!Sk+rSW{0fu1o|Ts!Upp0O18kH+v*Xe?~Ao#0ng3eQUw z!TF%f^DSxZ_mVi@ZpgQm6c0YtM?Tyf?_V$I;g;|)s72;Z=HLmsf^V%NJc3JrUn-90 zwJ(lOfnP=u%vVKa%zE_wqxq<_FvI*a1o_ZD(D3sW-|nWke?!4vK>wb0UrBd1!F)Ip z_otue`1Xp@WJzHh-x$1qKBAlTS>?llLYQABi|vzpiui9^z_k5^-Z(*=Svyj^a7ck) z*gw`M@b{*m-}`LkrCA}#m$1J^$7|h`Qu&2={|!BUg@FH*@}Q{+^GndD_KLENEtRWg zrr=Yy3Cg)v?wq=K zN!`BuM84Mxdea=y_FV^Bx9b=3%VTjrL&ViQJNoa`FXVfpa6h9(l1oQ;#QuVwoDPX7 z3VNU&WfuPlyRov33^L2On|2 z>f(7UA!ct029NOp`j$P;w=Vj>N6~7N_sEBL7F<)DJ~ozCE_{o8x&!pK9^%5jc=)Hh z#`$ytFG0fIbul@niKq9WS6QEc|3nkpS?nqQbp!JUlQj;NPD`{rx2{1aa&K4LvVS_TTtXDV|=|Jr6xEUaobN`Eg*d z&q|(wJ@7iTio+Ox206ub(hnl>aV-2BPD8KW44pTLeBW_B>?!C!J0&k*N^y98PoVyP zFY4Pipcg_M6}g*>=QU083G6?Rx8^wbm?SwrS+0sD?SAG&(kE2!Z~R8kboyq z!GHXg_oM%+aEda?k4lMmxH(;izGk6HM5?L4$*+i5g7kULtlb_!?#@cHwEMV*TDNRRQMJVHlr=%kkXy!vkvP zGXUe$Z0L`7gcktD!r|T+pXQ)f$aC<356OR?5A?kW;2Tbhv<>&@PWi!F{}BVAk7kSX z^|#=kF#`S^-7)uU5#v3s!DHKBo-f`p5#9b0SvX7r|56M5M1pt{e4ZSpOvC48WqtLi zN@vLV=uGfwMKHcbiWfE~vHqJac@NKh^F`2 z1bQ8apc=<0Eqo#P8e7bNJA_G@!_=)u5S}k<@Pp~%;^J)NI78*}Z_fQs)a$b!IwJdP zl!qQ1i~dA=XlIjfIbN|}SN+jhsOgBn^L`oY?a>0gUf?GYr7;i0{Y<)NZKEEOBPGwo z_1Rx9rjb)(6zlEi|972SMyHaf87+AP-d{L2*^InzB;Jpn3h&1*p4p6kbrBf zr(;~1BKZd1gSnQ>AZNFU7!NFE{|v|O8T2?JK*o4}>}Oodpe7l9##q$M1n)l@&!?%Z z7d@4q3H^Trk8iTy#pH+EX??9>l2_pTO>UJPv~rBE{C&(v_NVN3(E4curN0C76TL#S zD1WGr@$dO|&!YeO_meyV^AzkCu_2~6pFihk>_0Tw4u2$f+`o!44zt`&LD4SkXJpUc zN%zQvKY)`w9_Aa`A5BO8qNlw6%v*GOpGjwTb(5d-`PZ_{qC-1$9^&(Z4D^pNV7{$` z>r_(7H_xPxgB4?(S|pRY9qeR`$KOrIINE{vE9jl}%EIMaXm#y&%yY_mikXeKz(1k2 zG2WV-Mz$YX;P=Dj=Sg2Tfmd#Z`8-DYQ4YSo8udl+1PA-a^($>VC(-QtjiKQ*M7^1< z82TU**P}kh^C-dn)F!8f5Y}|Ko+;qLj)Q+)h<<=|@cge8c*e!7%-P`FYTlReN{hlL&4;_Gi-8gzUtTe`(tr&lg zVLTiS|B14A{|+F3dtF#B9zn@h%EOQ6B>3=Wg8QM>4y_2D>XO*<;UoIp_)+3W%v7lfvbSOe_M#Qf6;HkoBY0(!+dfFo?y}Mr}cdl5H`*T*msXv!Pl? z8~Ps89QW%zcoQ+;dN)~^}fw;%ZZJK}duYwY)Iz*l{i{Bg~vHZ=N;72c0L9M5_5 zYibUEiaHoS_h5b7$}qyvj>aXU=GP`gpvRNpS~}61KjknUP6r=)L)_@m1N^KxuP4N1 zmmQ)}jvII_v;Q04`iYst`jOB2zbfyAxJQTg@d0$~{Abi`7Q%Rjn(o@{r}_$h2JbPy z*Aw*I2Yx?qRA%+LztYn2p0xMkd+6__1+Qnp0mC2W6Eu&SoKNRDh^}1usPcGT|F(}f zm)RZT=^OAD_E@hjL_eV($ZtJS`MY3m1?M-5`QDH`12bt{-&GhrmF|PF$@KXj~ ze-?Uu9(c;mVtRG-uXuAxWv$&kroEUt2m8xYC(vJHC-mE9!Yi*AJjjnret_4HV?7jV$uW8evD<9Qn_Ol~^SnCI*_Q33O{iwF;Jq6Yi3RrVX>`52y0 z^lQm}c|P1P(u#Ye!uAp<;tDdrOw`jS1BsRMPmYBn`U6%|ng3;8WLbq?*iV#|G4J^n zZ0Je#D;HH+yJ63kuNQk!gSQ`Y*o%{UcJ2NH9|!ev4ts+!&%pgU-o@?BVLuCI!r=*p z@q2X+pAXN;bAsK#Lq_LtZim<=ebJ`=O)+_`}~Q%@XMik3h_pw^ZIf&j7yn{>SMOx-7J^nH}THA0$=N~2?i_%UU(Bma_qqHSE^myXjNbO#1 zf{|}{aw|g14b|gq9V4`sbM?5!vT&{DWIe8%xKQgF7KePH1>W68(AdUm3s*-WAJ9qi zPLtvWY1R`Wm}d~&Gd8H7yY}UFDCh4bZ`^KccWv7A5a}<@^>e3cchy#Q4>9r$?ee>5 z0Uh;t{=imiQY2XBOPOzoSlL7y3Vwq3E6g-b{%fVx zj0-}3EDZZm3mWC$Q0p@_Nb2eA$K>6wo(4}nqo2c%N_8|dvmlwDV?T$ucD1zUH+8-t zsbWq1eLe1R%2Io`Ezs!Kup+g(b|_hopNCh|{?60mMWZdWza#ayaj&Y{0vA2@x2d89 zx6$LjWh!f}E%kWV?F!oI2Rh%-^-y_jbFLmw-&9U(wM~!5JD1hM;tKpJux6u5qKwvb zWGi1 zJbz(-X{NcIop0nBZUmZY-tl@IH_=2J*;|ia-~Fd94Vx$H|FCDF^Y=fi#o-5me4MNe zycYdI?O1Y-(chs{!YkFR#%!6-=ihvD@R9mBW~PyE2w(R=4R+S!SMj&ivx8>f_~E0E z^Q~FuhT81(bmS)sc!w(YuB!0hmU;*4wN3LbtL3Zdao0l^RsSo~jGrs>^VD@I1u^pt z4pYvlJ|22(HSvsk;iJw+oEd#eZMRjAZ}d2!mTq4VGw)Ei?Q!)}egO}`npo@BN7b?` z^mx9-VfFgY0{(${hr;k`nw6=?^{VH;K13 z+?=snwX877$Uoc&+^Nn!GSL{DCTFR6{uBBBgXcc0c&y1(?^oAj%1Bo~ot$9&e8=^z z>W<+B{t|r6^D1po9sU*c-(bD^K=5YODX}2t`qJx%HmQAEj5qQRcZ;o2kAwxt_Y?CK zC1fm98wCd#d55a26R=hYVEqpMm#(Dric$|jk>LJfoUie{6rpb0T;QL;b0+i~wPxP{ zK1F5bGO)JBhOIJtwOfxyvZ{E z&w4oa5O%{HCriG9d4@-4o7+!#Kgk%E9Q@gSn*C%WAMoZzapm#-NyZp{!pfE)Jw9b( zrF?9l$9q%SC^@+kjo)ul&q3KUT90e5^FST69xt{Xq7>Pz^ARR{$15#*=C|~*l;sR$%DVg|M-Tt#Z#61p#id=2J;7F2JTZ#K8$01Lh>37 zQZ!}kB0aWvovU~@(&I7WlJfPfzw95+jKIV$50%}K{@~N9A|JY4@jm@g>DSXA_wNYz zS5zu{{#Evt^hdpEjMT#u(@ZFBgP$?p*|{jjFgyPJNRG?nX#k!kW!=ymrM_B+2>ya6=6p?H2?D7^k!e6=Y&LI!iaH}ViBSkpG8tI58s|H=GU z)#Wy*j~dG73tix$vUgBpS~7Ep)Kj^~M9hNP^r+|%xgKI3;riVg=uhAa{pkR%ho#d0 zOEu~+n*V;d)JrY$>QK_xfs%J*{WW4?edsUjCjlp7)DTRww?a;M0FQ6XbJ%~M*o0F0 z>2WdN4ya%7k@fP-UsO2aKqcpROTLu({6@hJs5kSH`a6$@-0$vfLoe3%q<=y;YiGK$ zyr1MdSYKTc;7XCj`Z13w^;uqjHuvZ&`2x;yq(1LSe~0ve-qV2BFG|LjZeT)sOTCpf z&zw#@;78wE&KEr2o?XzB;1MXlk2SU85!{QK#d}KLg&B&~=N#dG;VF3+_Do19;!G7k zddU76Jf1c*xX^z1NiYk;$6wskjsB5`yuSRrO)cg@k(b=%{bdh(2q3z3JjCH?BXI*MH#TfmHaHt6YDwUe5csi&I@C55mt_r=lb1xM=}D z!TA`jtEs%$1>?&@+0XQ5l0S0HE^@ug&)|cm6Va2`S@IQ}Q|b72D)a~^`8hu`*15Cb zugLv1PRo2#aM*l;2c0}WzW&wk!tbE8qvRR*enw3XCG^~rzsGCjnsp+`eoap!?{I2+ z6!rbugY`({t9B_T#>CJJ#~$+eX5PWeEDrt@-Hq|MB9EIndq`v_35cQ5mQSHz6a(-tP z!X!JCia+gy`#B5xtT#Pr8BFiCb%fqFg#9<@y*3SgDedL@o8R$6c{6FFZF_nB`TBi3 zF$eXT?Tqo6kOfq(XgiGGgZO!{Kk#iK4UKFoKj-WJ=3o$+J!>Q9AHHAEtWeL{M*1^w zKF;A;D0&37=I2%3zk7+{@B=CEi{ShcYNKe6+6wPus?6stdml}6TDFpW3$HQw`l@~{ zWz5IG`a|x+7VHP1@cmL6#n7gqE#&>=@#?{~81NL$<^AJ#>S4Dy`fJl1$6FZt?-cl- z#33KnO!6(vSnqog2Y-O3k}u-?WQ*qUbgq6=$;U8{v8Y@u{E}_)d>LdvnD%`Z!9UX$ z{zl$BKB50gG~Ra`+5d&doDOOj<*u`l{0cKhJ&%RZk5M+V{}HdB`FVrR%{&U%Yv5U( zgMFoqR>*hm_L;sC^$>@Ck1vAJFNn7uo%`;r=1`{4cyNy=l3x z4eO(_|HOdH1JQ5X2K-@!)PIKl@ufwT3-}4n;U0W54D-IVT+ee(V)uiQ)OUk5#@mI^ zclJRW97UtxSHXEN)?7|r8cmP=n@GPmuD@-VFoxdtZ_MMP)N_XTjHRroMtI-4Vs76^ z2X6V%hXYoUcV^9nd5gi<8)800ZzmJ4 z$!0@6>6gJdfFtVzaNc$C_e13QuXPNdDb4C)zPSxQ>_6xS?~nf4b-+(uAl5`$b?~Dj zcWX<32=?dhRNs#_RI4rh2-u^b`q;5_#i17VdzVqKavt8bW8p7RlX*7u13yL?BSur# z%{3(7z?#bVL!;3zxCZ=<9&mmU`r#-#*3c5;>l2wj2zMVzw=Anm{(*A}Z|C~b%4XHT zH@rrEG6z~>f4u(|@_ups?aopjlvt=Lc<+jWHGm6c9VjccGLGLJ`b1+fy;TQlJEs!- zXvPVyC%w?M1M2UYkNAna=@@cpYDc%~RK)XgUixc1dP3y+Uj^`Y3j0ZeE$mAB>Q}({ z%Jr_h!78EtWkq@TAzYL1|CPPYH2qIGUN6Y!uUSV|@L}aJUhIe8NE7;X#ufbm%1XY5 z`L{PC+$sD=89AQt`t@b9C)FEQhUaJKFAc@9^L@D9N!Ayzr^18%UZ`O%jq6ueu%CkY z9rUYRUyA)ez#oK&q+f%;OP2aSUSqLff0NW%CAl99@@*4EhV=mCzf0oyx=8*apoRx} zf|W#nn|AQWCZH}{TFhBr9_ps7Idwn8P*T|aXm|k z|NfSuCOb`W{yy;6s4Ct^6{07jOz`)H_2`Vi43I2@?>x0+>6vq9WjlVw*`Ls->QV|pIY73CxoF`lt>_HCOg!2=U zCkTAKTbap9GtLz6=ThVYk>A2N*mkKI{7klhzc?!H&iSr%SZjv$ z*=^`QA4RdtExonb&{8yWRhpJ=fKjNU+GNcVP zJZpmY_c`>pgJR(oD;nI)1m~XyJ|tJPx!wf%u)-LRRte|!`=NO?rJO>A!B-{-_FMIw zkA5f}3*q|B#`Rx_9Cv%@`TvlAo-3g72+^r66o%>R zhx~=VL<;JmLq+YCooM3u-|#aChCUc5+BWG%r?&or9vO&wy?NrNxhHyN{)GNC6Z!io zg8OT|O8)`i)&L7=p{XY-eZdUI}3Ve zA{}vlEdA>FeKYPaJ|J+1BiK5c~!OtZT zo<=vMA3p1W?0<1N{F>xBxL)qI27jjTE2!_hi+t^CO0SwoqlaF`{dtJv`#|GfC(wU& zE}`E29Okbp=!LZy9`hHZA2`o1_hRGG58%Ai8+nea)jA$M5YIu+3X%DaM`z>UH*i*C z??Il!-p-9fKZrBPiEYHZ7mMGDBU*A=`b+TnKK74;etrsi2#L}cX$K>^64Xf6j7_2XkFb{`86Xb`GW?Y=$4!xDkGOwEsgrvo?}7Cyyyt__^Le-AN%$T+#0S&flwHuH)rHBiJ%kRx8wN>Mt=Sk*rRCrTs;%~kuQ3` zU7)`o(69b-I`qA6xHlU2iXhv)+u+y1e%Mvve*jKo=T?pH1?$KB{Ju}!g8TJD)`#8d zyA zN3EyqfgA9Axj^q(2EAr8sTJ32tVeLpep`(#bYs<8@CGXTKf}LbD~)fnhOZZ%?}~;d zMbfd~Sb_I<3C5>8wc3lY!#4pLCZSUf-07=JxQ`k_Nq^+Q2F1+KyF z)9EC=unEC<(HgvAkVt%dp1e2D1CP}i`IBhqPuFOD{YiK~`(wP?C^Bx`2mde(ek0St z#;nf!tY1*@csHE?DjpvV=AqAVU0tD%$Ac&MD_WW6)9RDG zwNTW1!&6JFnsXn146H|cK`%Oo`tY0JZ%5(y+6gc>!Y<|t*;oXyUXFjiO02k(NB8n4 ze({aXk5N1OKcGP^ z^<|LcQJ9CRUrwVxH-qK)#Pi9N;Rgsk3g!6Dej$Fp_R{Xk;kbVSKHcZR3Y`0)`&KH|r>Gz$0^W{j_gZJ|kVp~iUA zzAfPMgC%dk`?px{t;o3q8RKQ|w~|SjKw~^}!8Ur~u)rAie!h)fMbDKn>-)=n(=iUu zGRCHP=@f8$x-qV)z`x+(6v-oS4al)9^phww$rzgw_dy+Rj3-Ubq$(BtnQy_~aF;#v z2b~OKWQ_UJ{_?%;RC?S<$un>q`YMYC%pJzOg7l{V<4N4Zoa-kzzf!cqE;_k%0G^Na z($6s7e=stEx=&O{J!IS%#X)ug^3lTy^c`=hj97Fe$pGZZRhVc`A~b8;$T{c;bv zygy=gwUO}PEen4t73-f{B4O4D^hY(v{n{qLU!s57aPXnU*l!BsLAH4NY6yDz76&h} z1-!s9QCt~7e-0Pt`3vLqDY0`Ya>zT1gBLh}^-rF#tl)+EjWRg@Q&{i45Cfm~q2h5> zG{5X8a=hC;&V@`?*9M7^!hDI&x z7_2=zqh6-0HlJAF~Z_)BGWoc(-a z4Fl<~)o1uQ{N_A^sP8xc`@Z)o^XSYQT=(dUoYP0>^F_hGbrQE8x}pB&v&wr-?!UP9 zHtX-7!6THy^B}~{hK^)b<0JZ0)WrI_x7gFv5j_XqK)-JWKF&`RsS165#xw8^&2fKb ziDmDdsG|8pmFK?=;FW*4I-?)wZI$~~vgdQ@NzU|j_H~u_&+MVLa-}mlM_z%xUmMTE zNb&rpGxEn+|x zIQMa*ttE!x`fcI*8DUr01@&1zvY*DR7f-p@2Eo$_&Q$J2d&x)eIr8=P zzfvFk27Has)02BOrNHk;r#!@TBnor--E|u4)f39RXU3Itz9WR z^?DBbRWN_CcE2mu;D>XVui)b;y4-jN{TA?Cs?G)N+I;EqN9Q zUcyS&$JoX6K|aMZhqXh_8C{&(kMdg9$>I7l+<)}4U7|(BCUgEp_QRMtJ6Ss%t;aRa zCuwsc^!RC!B}8#Q*pQrE8qFD_`dyau&sE1NJ1!dM&Q`S)C6*i3~md-8Ke1MxxB; zGY{P?ei8f`^tjloXz1m79ML^mYvixTRaZx8Q@bY`d5EN6k=iu$2l=1>!^K&ln#Ih; zhnRilck=D|$y)Kri=g+~L>nhht!Gpi@~xHOUs42qTD`Ot zRYHw?!ydJ#cC~~aXU^z>ej@)Luh5~pw(x@<7x~#$8~a#~=j1qOFRtkEhlO3VSI6~u zL%Yt}i@hO6KZpIlg;ssD9@jcX+QSq*9vo_~wVe}U6{rKvQk!oM4%M z<(}53+uLZBJ%f$B!}Lv!F;^l}0d16d5!J7uw&IS?H{5?vU)!@k2=~Vh`^9$(4Xme~ zSrKIPa~NK-u68{v$jCQbdR$xkJwcD3XV=p9p})uf`cb&1)YM9L)?>3NHMEjV^q9Sn z7M0Uu&8E7x@te*!C?Bh8@i~D;zlM$%t7xy+>+!wqm9^86dThNIY~chwj&4;^yX0Bm zSAq2meX3nSn`KuJ^E(`7T3)+XTaUw2%WAU<2O4>YaSo-mrH2+8`G&8JOQC;=9(OKd zt_>fy(8xPjdllCrn=CZ)4!uP&ZDvV5{xz_ORyuNl?Dzb3t{{3|SR3!beiEU`tqezP z*Kc)0wRx;Z$nnMI-gos{{9GgNaH812%-IkQmj zR9yObxbA1p7TSJAPahZ3|-NAL^?|)e$cW_y~?i?>nsS{XbrU zm|?7^T&R5R4+Zo{zTti&{UnA7Q7*SLPLh#y#2i{d$wiD(e>L@h6{J%DXyx+@nKNc%V-*e*a=d z7v&H52|gayWSNKPT~Ck4B@a>h9-e6Y962y0)K`xKj?Y(y{+VF>+`s1vrPsO%s5flO z`9o#!%Js@W(qpa{>~MR$@$-2Zdz3E8<1ruGa(%24nsr=Zeue9iISxB@MX7N)z{o2& zzPqgq3ee-t7SELJN`S1tW__@o$p@th{3m$-#(sZ2Ous8}F?yUZ@ULQCejMw;@CP(i zik~u}L8<=6xRNM}ezbb*kX{1%wx99yGHzulb+MnUw`M(XMN}pDEBMLxpZi-5I#v}u za>laWg8lq<<;4d}@akjOZ(d>j&$VPNvb7m4{U4SutH%A3sKvpN>@NfVDkt)tV?|Cc zNAUBAdVq@PSJ;GBClRPqA6 zX0Ur=Mc>X2k;jMpp3*Mgn(j^aW!^#Rm$w6|lH(lqqu7Q0a#y8KS~Xe_KA80#sn55H zt3elb4r0Ai;hOdGTiSqk9U#|F%#`$6X~2Gb1NyuB$e3#^m@oHf<0JJ{ z_Qaa~n`lK9Z#kYaFTnlVm(TT*dOhpw7v6NEXSx04=Nzv;+Z}paKiNM49@mP+>+Y!6 z=_~bi)^G10?M5pe_L2H6KfianJ3!CtBm0l=_|>;!SBgH`8|Qyh>hpabcca$sz2*5r zpO*d>B+KM|PcM)TWxKrcCo>v2*UAMHt&U)-hM&0`>P_Ne!Dm;M7B8^V2%?{b&xPrm-M zV+K*RboP%JDeFz9#SW!2P2HrP&dsa{1yGp)*@6iKwJPGg- zJU8&)-|RUB{lT5(dYE$}^~TMl98YI{p5^@=GiyFgUFsy)+q~wTbSe{@bgscd?X!y)YHf}betKMQ-6w(#_*{lfl$z;_o4*GW&_HUPd&4top zuzxnl{xNtSQDYZPW0ny7SLPw_g#7xoDC|!askgI#bF=g?_(Rz7dK!Mxqv0(PLcgYV zg8%w->DN3%U4Z()4p=XAmh=DZfEhG9rak-<7USN1vH#{ho6OAgxW)UqRA_2DxnJO% zR?G7XkdJ9=j0e^Uq(Sa&rJn=8qu>35&;zH9d_S2-Vtyc{&qoXENbJK}$?M0@$oqgO%6ixm@9PiQPh;o1C@R{cCG^oMay-B1 z6HO1)7IJ)K{r2S2XzJUd1@8AC=|3~tJO;XXbJSbcV0}R;(K?2P?`kIBAAX-qddASy zQqAQ3;rvp)>M?l#n)3Js9(c8~rcX5XiA^Q%fc%(pQ;9_Vi|rxwMn*lTiupJU{sFf9 z{9=9f7|&xcb@*f>*KgQUqqj~VIXtt$^BF|!zcf2$9yJQK;qeFg)%M6$O{ZgXZRC2J z_ggu+G`^9`(d4`1Lz=Mrq?egOGS+WL9`EpV~regWVS3W<_Ue8I@r@cRgT?*UkcVc;8V zb@byTKl1#znOIOx}P`1zH7-ClWP>7Gw*ysxWq|L)T! z^HCU&YGM3Jk~}=-9%@^xmgFgzpZK$SIDKqT6aG`Lq`uSa-%tweQiI1IT%QMI{n(ez zjJAZn%lY@4bom2VH;r;=Q6 z@jHBMnIP-jit_KnFB^X5UBHL1f5d&%qqu;9?+(B63i5eCz81`iBYBmmfaiA=>r)E* zUq%cs4}R!B*>8CHc~|($mXrP^ygnb*(t{o}Ehl+tp6`EK^oDL#R^ET+bMLI|OAl_B z0pBqPzA~qkPxjuZ4=W@2JZ9)VS06x*OH0e=9XTV^`VWSGaw)u@i@=|hK`)e{`0r9U zKFE?dKH-V+ewXAMq#pHi=m_%dUQ(_%S<~eHFc06F%j?0scYdS3@HaOH&(|D!PG{P9 zs|WH&=6F9kBA?a`y#%_#W*l>2|AqFyaT zICd{X4?Y#a{dk3Z>`@V(>V>)`GtP$?*x&o);0YA}%>?^>E5oc8OGN&gF|_`L3HXu9 zhAu-wMTL!n$hQgmW0Wv(&x^H=F0^OADX#xHneTMy*PinH&CqY|g2m`kWco z6KnAMBZP9bF7>Tw#{3cZ=!K%_jYbr?+XVb+s?__|stqxpnMi(u^O+wG)IvVfgr7IT zOoNvLe5#xZ<9-$NZ+;!tlsqB|;r;|7zd28w^65Z9kN%;abtdW=CySb=x{=MVzZ&Oa zxxTCV`o7R-|Ds;c2l?y4B4Xii)Z6`rKI?|hyNc@-CR6+Bzh(V2_fVN@zL0(u`K9sy z=Ke3^J;LbCvLDbFJq70zp9e*OiTVb8pqJpBl2?f^+U@p9>i^7>9XlUF1M7Uyn8jg# zoDzS->EO_J$WK2(|F`X6zo3^_d?WQY^suJrO^MXD$qVG)9VKruv`+&3xALJcPLkJa z`P@Wm^Z7CI|K`%qzWLoG)SEtnze6FxOikqACFBzFQ0l*&udV(wh5R-=1P@>#zW1&# zTJ=w%D~byu8osuTl96wKd|S0x%x?T>+e-rzt4UG?M^1qhw@h?zY#sIm?&E^nR-^a zg6sW4`U}kXlmve9GVae?>8JBlB*Aat66?|68}`xo^^2h=U%>s}B6)(Slks3s@^C*k z;rFA^?MK z>}`BhF4{+E{PIzw`qKDS>xz>H-$b7-v)n#-&l_rQ2)3b{OwkJ|2p)< zJgj9`P#>=?xS!8hPb8;vtEgnDG+e(6>~8@rYAt$lrb1726I|~<{^xos=&#`pUM@|1 z>XQl&kB##Dz%*e$ltzm_t%v{1S~(wOcG-gOuY(>HEb9%XIBliAhu7fwUxR;N!q72g z2j-_`c)!D-_nZ?|ejOyQA@Pz2V84SsYmZP+dK8|&PT&Osq`yO(>w&mFZX)>57BSTA zHrbr zi#Xu_g7SKKfgf^=(oLUSB{mN;_gGNopW zljBu6?`0ykRvz?~NwUAjn(A@Fx5*jWI$)aggMc>*{B2Isw`nt>H^1U~Qt%bW=>56{ zk_TeOuJebZboAgt8J}>PA=cMALgnm&F+RV7|IKvhw};T5DMZFg9Q?(N%PNJthsyDV z`39S|2eF?H(|ElEMn^>M=I1V4@<=w}{Y3KKo!D1ILjOE~^`^53xx9n8W|Qle`TBW3 z$^uUvf$O;)P0PSLA0_Ma*>k%6IPeEIqcOgF;CX^KM(kD+X;J(J?F+&p9atyTtgsXN;kTdv9gzdpkl z->aR8_j9T-o}ZRUOT!9y2>$&#mojPanDIRR%YLNxqu8Ip-x&M++>Rc$1v~`ju&zaC z!9Q`NU44g^1P4Ee8Z_S2^C zpczelz@uD|@vRQvS7!EOUc#RLV?jG455)f)@LjqHJWCD4gN5Dw)uJhd($ELh@V?FD z^{hy%xDfe|s^Bxj<@#_`&P-Zxv$8fYE&=-PW$|FeB>Hf@5}x0cf*FGR`KUjcS`p(> zA;SW{QicwrM_@j$i22Uc0N(~fVDfOfoDI+IBSj408x6gS45y_YmB5!3F;vQ^YS?8m z9GYz<%y)m`uTb7ly8RI7)n&0B1G~`tjTqZ$0BSnSHD0Su8FLZ+WPDIhUKIChC-nV8 zg6n6TH<^HMVE%TGm=fwm<<1ty__7Up-#)?pU?V#h$M5eJvtC>iOYiok(O1jj{7#5r z<-TLT*oRX7Szx@%$NIjkVc`d7^w+D;_N_6YacJA!@tKB{ceil`DqAtC0Rso>P`Iv z3xijzjO!65Fs4)QdOy%VqqLCyi#`vayG!4yT+7cMc4@1@==bzV&FE2Bu)aTzT*-ny%74%OIzCNup#~}Mq#pzCnXoo`)7QUBSy-PfBEW~ZI0 zh{s+Tb5D%NG0rq|R~CLh8u^LBVyOrCiFsR9&c(6DGR+4ZfLN!p{|0*~)$Hp+ift0E z-$Seyn}~V!+^F={2+2nK!>ZWooi0f4@&T^rie+??vrt+R-csCb%WYP0oR0{9Gn8Zdx^}?vS(V|?Mt*Zee`&BezNw=Vu{RO^F4S{ zDOuZdP3Iq~_Ds^&r6e2uAFL-Nf@Mm^el?Br`7~-xf)-dJS>~U4%yqo9ShG5jB=eW7 zk3OliSPMumh}r+aVnDp+KQGD1KV)XbX|dDvxZ1y1t(Q}hk$))U6|04I(c{?67|o%h z9#1SDqop_3@7)@ksSu-|LvCsdEzdSY<|DZt?LejG+Nx3^GCz(n6aMlx zTBQrYvR;t)4-Zx}(QdB`Hu^bi-O)&^gnl5LyX6|*E(5HzDZ_(}{6hVv4YexpoA@8k z(5FxX&90pu+g_=seXFI%ebVY`j>Yu2!Gb!P<2#*iaOhWCdvHyU&70NIe&pz}<2y?& zFF44^I}|@vU9<7i<0>1fX|>$-xWNJo@FRNM)3T~&RV_%?tFhh>W>=2WKqK#v^tFukwOgQ(Z%FA_TANTh(8xF3vMiQStBRW0*GjrX6$=PT=hLti~q^Bd`LyTtpd#p{{!bIzA0Oueg~-lWIx`rcNr4AJ9R z2K3V~DTrBkpH>s5>hUR`lWN(AHqvtwq+dR5j(Z4M7R=+j1z7lg0tc;MD_ zq`6GQ{8be`#*LI}9nUEAe1b7X4oWcz(qrGwx0HYy6Oa$Llz(saq=!n|-Q$h%=&mmm zC!g{1-}C;;#_zpS^+SL$ez547fZ-#{8Y0f9s&1ddg zd&}#=zZb4`hyLS<_oD>zUvCud-xrhO3H|*#`)ewHvU{QK-BVsqW_T+Nbfz>HPkFsr zW4_+TjrtVwl=BDYbgo?SME=MF$1@0jqQ0`gr62s5J>+_mKR1i-PoE#SOTC-l4`>$D zb-cUeNjRs`#%UP*^V}rA!116vqmVyvle_@m{~xa7$Ueta@+N%$7p|T}JBzu>`^ow> z>&da+E;8o#d+@?}IB#d^hrzr~?R9|^aN0@U57zhCKiH>gLCn|3)FBLdtRwW7hYH6Y zl_F4&RKP=Uyy-$D{4Vu)-Rx-aLp_b(|9?!KbwE_z_w^B^3=FUZJ1G@0nSI8@q*YK+ z1PdD!#YR+6L@)un3y@H3xYzFPPVBD7)_3hQzwg}l&+UxN%)RHH*z2>`X8nAbrxst| zo`gJzfrsG#Z@MNK{s{&ig7;r{hvLler-Rh<`JQt-+fd^>I*AxB! z&`bMJBJ@$c^nc=>WT8V6;5Q=V`oL$pv+w4TuN}$#1D^p|-w}Qua=*v*x=m}j zA4JZC{9jDLdAud_1JHY`Q_;s!bg@_qBj50F-voLwthpTTJSW90p9H_nX2zKNX)N~B z;%5t|qsHD{@#1{**B{pt{LNe%xX4*PkIYOp zZ;qZ0U!0`B0Y7iTZx(%wagx`M=f?%ZXM!1blzc4TZ`66yWfKE0!JnCKGm-YbWWR@j zs2}zq=cN;<`3Ohek4S&*ea*&EwV{rZe_{QE`!P%@X88ZS2kaU&m{Q2VTkv>ry4sso z^l-+0G#UBsoiwwXAN6hF0^Vge_KW5sqPGuOwsqn9b9~-!+BMgo+TU}=^A{ui7kfqb zqE=DP@Glr4&-X7s_MuAu41O1^+5653!5C!zA_(WJYRiey+HW5A=HZ+ zNM3~V3ANUZqCiC;%y*}xAG`k0Ae!*qUixLR z=GHeEJ)gisu$Kbo$ouyTA@9Jd*l!;~zVa-zqF~xLr;6kY_-|~!7(`REDr0=wq2A{& zJSTgie!LR+mBVuWwkR8by1`1&d-q6Qbz?JMy)J<`*-$9%UT}qHTw4@O!`M zxIfILg?%Xn{WJJ=><4tUQ~T4b86_o;#OqJ^@lYE1xCHk(<2o1rp0*uMn1R`dKm>$lODxz{c9qBNElnl zZ|$?j`AYW3MD15sda65oNs zid%vgYKDAr1bQXw>F;t2>wnR6m^ynS{}^b7U-8X3;w_TM6sAM^y-2I@V))cD|f{&LGpU0RRAZ}`w#S&VC27Ri`Ktq)2<`GknavbKC`Zf zdzJv+^#}B^-q0Uw23i)ma+^=8o-dKWu1J97N>xKJWUksVH6#4T)=mY-9 z|MwKitrY4U^BDSeRq!{SqMLUbIaGNhc>~lKi>;%V!9VGt3M~daN_#LjX}Eq5!5di1 z@zi`XbmoEwDtiN<-V$DDDdhI!KE7Y7^y9g4Foo>R?n}LwYw&|Aq|)gocV&GlGiHU~ zQs~yQ+t3p>VIIrCSX>IfjayQW=Q#e;T)&6`VU%(5%s zF-}A8zd+SumY~1iW$5W!nLnhEa|_8XMo!~Dd#0G!J6>yE(_>|?K#%ZbexlA<|=638SpeXi(|ftU%!C%RXVNm-k9gG zE#nqY70;8nUi z<|WasI)`!pr%8XGSI_4|zdoq){*L#1$Q_eYtcv@&Sn?XSgA-`7mxB8ZUwdfU>x(C# zKT$q^UyQGQU`glF@!1DZFIs?HRtiP$n?v)O@0a%v=L2|i%%P62_ey^Z=+QJVJ09PA zkK|kUdU}9Az0!TRtT*QT`QJhCUH_Gb@v{x{v9*|*5>F$y?__<4*AG#*NCMRuzXSda zGoU4$lYSTLy5w?wHGBkCQ@hj2RIE&n%DG1Nzd%nNf;$)MGsta6!dni0B4;w8?@hvf z;}G^TOK4fcO!hC3`S|(+Qn21f<>8R)5jeL9^uyE_?arQRw2HC7X(yO8y>G;U4@K@g={cQVv*@XUETcFpW zZwUnK1{b$LQ`jtd5#Ik@aN35Nk&UQ#j>B5MTW7gDomTB%kN=;F=f8-)RNfBM$1lh8 zGXc+6rg-dd0R1x-;d(ZNpU?=g!0r&P+kEg#)iGc76NPr?Xhfe`&`$@z?|i+OeESjf zgF)b1@-Saj(U#)i`R z1{a@$aS2qpc5UcFXURLP>KY_t-rocteNM;A_r~++0Dj0-oSpsxx_fW%S+&8-x(m<9 zm-IO!2>gOO_(xAsWY{ZQ-$2X{ozO3)uNZ9i8oXiv=083569MRF^qPLG^~QMIiTqGc zeMIJK^keLX`CzGl-mkam@&Y`QFXq#UJfDeoy&uz?gRDohAI~k3oqLD+tq(=NkY<8C z@h>M{LqC;p_NPa^?iz7F37*^!M@k+7`4&+s^(_3qBk=rwhd>3M9Dv}hfB{+ z=x;D+K3`wiAF#}WZB*}@frnro++}P!)th7BAvk6~l4%v^8sDE$Gy{BoJjS1acNnrF zgY3-XjPaF5nY1%a;~_pA%|w0qOyle4{kJ3kq45yGkG4~L-x%ZTsK27?$21#ru4OLj8Acf6p82`p ziNcNXuF5-5-#=LL56mzN3B`Lrl!5{4Ss;>-u(dHy0=bm>RM-xtID z{asWlYN4;%zYndSR9wZ{rq>lKrElue7mRTU?1xPC@DR{*Jxg9tN$B-v`n?Y2^z1)4 z@|X?$giQ7OJKO1-y&6E3N0kPjW~G1rtBn3!VIOz~mjqAr1oio!1m}mcdt2jqJ&FC! zb@XHMr&+7bG2iXQe)*VK8sbaEhMMB{WMDol5CNmRqsOu-G`fx8YY&SzabUiKEwLWu zf+xN$e8%`vh~{mHn$+zOo!RbBR6!SjUkpS`e(^uhRi0)GbVebJNd z;$9!Jb-J%0PmTRjEm8BK5BQrq@Mri*yr)l!@}&{hw-okfqQYzf>I22hdp_K+Nx|4c ztwJ$zaEBlIYeXu{j`DeN%rbx4U3#GWe$1a=ky_jBVKk!wr6Y5t|k3bP5{{WoB4 z_XeL(!Wg$$=Y!|@ZvpQQ`2EL{eewGX3;1l!IT!BtY2kUQ0J%ZrCuXBpW&rJQ$tvLf z%Iv4c{gMyXSW>|H2-kFFAX~Ka)z|{olDS@C!P-DRQy1`loAaN~6Vp`p+Nm<1%{&D9 z`Kif;DKh`ebLhc0De8-jDYD*;fAd!R6xC@^ijjX9({`!46}-g%_=l1aOVk6`H2z`Z zeE3I9Un=vP%sZ@oxJd04t;O!O7lHL%YUCfTMK4tSg%+Im&Jw#qM3ytDUsCdF4)OR>L^tCsQTg z;Jc}#np!o^$UC$Q?Vz45uEjyV?bM+!X0x6m_va7(v{4(~)OZIQMXxqIuEnSyRqZop z8~q%d_IRjD{A`)uRW>Y;xc&rs@JU3KaUE&fqZN4*HX;(z}?A*r@{V6PS*?O#jvU8}{% zs?<;?51wh{8@%3CQ}y60xOSNHVdIZDsPS%EygJQZO|GQHcU`Kg-Tr8NL$xwh)VOCF z-;ngOl1gW^__$g@{XRcd=69tZUeEGsIQ%L&_r+(nmhbG;VDJ>o?{d8FL|N6ZRIHJA zm}*`|J#$^-9U49lYe7RFW2Hyu{m*_m$3FwfNeFJ4)vp1|EWWhvVySDM4|Dn0be*u{V^@ z9$Gvw@S5`Qx`B^i-l4GZ75FI_V*Wj@6)q|NifVDCf9I9WdkuU9zrNw+S@fgO;wjfo zD|H>Tc;n%dO2!3^k8t~OT$wyL%E&u(eRWj1Q(lWh?;KXd@o~o2zg|D6ydE`<$BXob z_;p568ro~I&*6L}^|bU;kgwmnykD6$(BLn@IhP{8_M+c~frsEV0OxBZ+Gj-lzvOX65Ao34fj5fyDzvbIc(Be)bA0IHW z*WzU}x*RBbc!Kf$p^8VV3xl;dw(64B2a0KNMqMk923g~c?>7(c=<&fvi(8#d_1If$ z{6S_lm_G;}dCcS9t0?HT2{`YM)GZrW2xeT1%@JNV4K6$u| z{m=B&*{mBU`@8e&^ZpEiXPp*ztP`bsb8oEib?AxEtj0?Jbbdc-badw{X>t1UwYm{I zB8_}O;J+=pdR|&=F)&-le9Hg$1+RB|Q0E>Y^?GIya6Z>{aE(Adxt6SlhK8bRd1(y$ zgG;^m#H!1>&C|v(pC$W4=8eCj`{rQq3*qzdS^ZO84fIc8cAWL&N5SuO-^Yw*JxTU| z=yB_t?qeA(&f0B?dJqFI!TSH1(w206>?k8|(Cle3=$)fv{|i3zJ>O=78mp1Uc*18p z><34({s;X~ue0o55%sqtdo*5Ri~5dXk{4ioWX)m++GJ<&kKi-m4-Lavp zXY+YgH?eh1tl2|&f8)XDNv@xC4;v!C5A*n=eCyKrIfIc8UnBcP7VlUG{_lh2=kfP5 z$*N6D8V!=am#-n~3H7`N%9u6xX%%ZwO5HFypRrzg@0=UeOd25de5~oZ*W24rgNgm6 z-v*DbSp(ZZpXev`clOUOwqFN-v2louvx~&81F}T0R zb6qvm3!5Z*Vjt@-`*pA$y!UKpIvwCIe?RjE=tV)d&HP!Pm;6Vk@;-E8l^=M30n(qL z>J@+Z18Kt| z124g2CjM_Y#)CIMUsAswba*rkY0v#OD&d^_T(@I?6!aV~+~1OXe$b_bPsYByJC83p z|BhH1Lt}3kcnDr^T%O0$=!V^7e-`$$F#kD=^zmKg^~IQlzepVN`dy51n>BOLf3%Cd zKKwfR38CJjvwWSe|A6L+=-<*A`{H z`@M>sPeUz45>39{fyX<}H)G%zFrP|RZZG*P-v2k50PehKJLw0(`~!OP(fs;tq@K<7 zoG%^cP>CQR_k+wobes|ozdDjJ=iI@oq29v-pFbD;`EZ=4V(~Xy%l!q9!S$D>!Y{BD z^svEFpJg5*B%=lD>&vkIt7|kciuCuJqh38r@>5M?CXip}=Ca=lKMyAwOoHCk40_yt zS>N>7VhXNrGkJdDIjZ5fY0v@OjWImX(N7+eBE~9@nZ>PU;C$E=>*-ZFo~D^_j}JF_ z9^&zmP;DmkA2)fw*q>%dsafFno8WmXF4v1Eb7rHCzcGGK8|dKsbs?tl^zMA4gS>ZU zzR7n}9CZ$BBzY&EkM_-vgP*Lcy#APfblh*-yn?IbN%($pKaW4dTx9*-@r=diBov=Q3hF^6&)vO#$ z6_z_o{{^l;PHyH!Z^B){5A4JFq$v6wcZPqqtL)Ff^+g>T;(Q+D3jc&q$wzQLqQ`v~ z_z5(}d7=pX7XqLsy5Rb51Fuj)G*1cygXN6-?SlHc|LEs6^xN3rB=u^}X~5$W`ETyG zQA6evx>XLN(%B89zRmT%e;tR@uW@y89&G@Av7R`tj>eg_ww#Z+2X)ggqv?!N3*)7g ztf$*~ZX|hDuPuKMo)0m;IoGe(jThl)t>tYasN`XeBGa{e^kZ&elGcy*-QGvv%D&vmuHe+sXjTFdV5xZ z-@<*_Z(?n^K=j+K%;$AHKZ#fy1K>Ab3EzJU@+Z@%>~LS`D-|Ul!E@F+XHQyIvLeoV z*HOpPk~*Gmi~Grb5$1yZytw~T%_Hm=@lN)izj?C*t-f3i^YID3zO<=xXBzy?PL5yJ z?;ft}1kVaPc|CZ2@+s_$eyO(7KLhJ8tw`>Q{?TQ@->sGBt68hNqaLj+_O}bbTa|#8 z;6vF<%Ek>@$)dvq&$Q09Wt;0;Wnht1dJ*9=5{qm+C;`T1II)ra16 zD<%6cF@MII-NbAgxxZq4snO~I@GZBI&m*sK8-EX^CBsVcepNoNeKUuW_t_G1J?1%e zPjTGux+SC^59haE3>ywUu{iT*^8TC+9!?&1#d$tKz6X1YT_Z>xRE*b8d7d}xGYI_{ ztZ~0A&&A}tJ;`&&s zaJ4y&>2HqD(?L(mr%KN`pUQp?tp$(Cu+;k0;e$EG6M;{-39YRrZFjZc^Si+MOiij+ zp|zVW@cusF1&WG^`bwzpwFKWh2mC`>QR{m(>UF^q`H`K1Jq;!my3)`rOFU061v3r5 zQd&}u&JzFMOy8~fHW9k68T1TGT<@F6Pq!6Y-JR)jMN5qL6M~<&+NsrOONu4;%i;X6 zh)l2{ZwD*fuUNibqSh=+YIW8U>+g2>p^p-8mzh)f|12gZrH0L{K3re_dJpB zEiF2DmZdhaMe%(Md_xQ8il~n@!}y9oe!sa$UtXQQ95Kas9*BBsXOaKHk-X}gf@krU z{KAL3tNS0(-^Qp4lPD(SFZ974$PYU}&x@t><-eg{dm-OkNi2zVo zQpr|(ci!tdc`fUe@kiEfoITje1wTfbx~<7_=Rsz;HTaM`eGk(@Io3r zob?#_{pR@nA!54ia{SFl&H<`Bc<%USa(T>p=l6wMl`W&K1j;vJE^ay5yn$bOqKIOZ3B;3xBp9tlxk~ zDTRLRiPUU-F7%oa^6#_XMw8?m=xGhW(=9|j)k3lzkd6CMT=EcaHY|qU%664mGG;a= zRbt*JQ}Q94zfY=_0v;fP^-0OUyql0l;jJ>DZyl2QVfS(?(LXQ~dXS0arwZKHlIikH z@E`VKvfU^VHfcS2dSu}FRIz{lKqpIVq=S?WeSNFs`<~3%1b^{u;00F6^{&I$&G75q z0zI7j51kQPUTnpAag%yuLk#$*>t z;!^NB&Vu_Jb^okTf%^jHKLj&PQ69&s<)sAhGBxr4hYI&LSE<(b>3BUF`eV9SYV(Xn zyAHtk+>LtMdis<%FQ`$;KDd7SFn>4H``3I)`yLp0h_)g2`l?nhp_>FjuT91LQ%dh~ z`vtjQ?v3Xq5%tzZ^vK^)>t?;7&y~jbtR^N8ehDTz2=})v=ZnQ+_gC0Y_G116dZUFt zAp?CMyn0D~f`5Z^pVz4W?1AUC7Jg?_(W~woTI}uzJ|qM4Z+HE->^IOLyyWL!>E2M^ ze#2|3z0wOg;knRXpNW!3o|982e|-ON%%AT>tL#UFJpjf>H&J%xMX~PlZ90_`it*@* z^>?S3e*Y@;w4oTU6|g=n6K9KGM1B7V@F7^sP|qAa{VZ*3G)nRh=^rD7^~h7`88;UF zRUY8^o-977$IvHjBA%C<%nONQe-BfaHq#}~U@;>~RE|?=Vv$(rna7}~4Hv3SK701S z@8%SjUpt91>3MYE+C0fSFkd^@G7r4LJR|Q=V*E}@{GPz|=$Ic` z;`87yFeCxvAp?9x3lX+5o7RUW%K3+R;o7O$*w4(9G5eq0xR;3@d5O{whMBYqj_LIC zqQ*nOBSilH|M3w%{u#9Slg2}s_+?;^H`mA;lz5c^o>}7|PQ+xw6I|mV3hlO||C;6( zQFashT_kEe#0R%5oG&%Mi0Oy2;IF0e5EnXU)4Ygj#?LEtJ)3SVnQV+v2M^ve+8B?G z$syee>E|K+AI4ec(w@9XBj0c=IT!s0H6CKz`&>#rHp0j|u%E-3JK@H-*{fXepo1|V zAC)|U-NYRfkQgTU2Cld9H{VImCWc79f#Yqrc2b-!Sn><(7s2=Q?Uf)N&(cq#+~_=T zPyU#Ha^Y`12J8C{c(Qw8eVM`gN73PC4s9yv4E?wTF@v+VNfzB-?1}kfDD>YKU~jU} zU#Ejy4|vbteb#pHY;D2Q4aWTV9Bjol;vVQcU$e&hp!sTwIMtYWBkYgj1oS+z?d&9Z z1@@=mGkjUQdYI1)JVT9>>=$T{zrRuTcbIT}6dmkSk^M)c{ynjEC_LiI^7zB^_MfnO zF_zLhmBe~INj^{TqDKu|3GiqEqGev12=Wa>f2X40@s47@ct$Mg9z;RmrkD>dBfcY6 zHwXY9XM*SP0nQgM;RoSMGuoMek9dRn{r^NlkT>dWihxJ>F5dWB>G^fDsis)({z0!R zpp@cU1S>b1Lq4>40$ z9?iji=#02#-3fDiQSevW#ElIX#g9^*QLk=}{Z|&eajpx~PTgs+U2%M$L*NhIiSAAO zsC9Z-T+b`;YqQkf{18BoidVt<@)7fSWqou9AMD|3V!WE`H?Q!}U$$>g%gQ#u{iv-6 zgRF0LwmD7N>xA*L4t_qZ^tk^e5&XV3;5!zIht59m zFEGLNX@lR}Mf_^zLmij>L5*j7j9o9W`I?X9Cs?}&P9Wws@I{Ty7lr#ra6b*^QRYv7 zub?*{`;Ce|R(@1|<4eg`u>alu!G3htrO+6IYo@dc4;9{f@cx(2o5T0qQ;vMK63p{8 zUgA${1MVnX+rdox;e-CD7rPC<0DU{rpUdZgAMb0yTSUp{bwW8m_?29dya1n>EA{lH z4f+f4mxw|B^)rp%>_h$wPb=)*#h#Dv&3w=g_}KsP1i!df6orpIDER~Kzq$AcIDrTI zjl4wlFfYn@o+tSTe%>3r?T$P^mcslb`)j5h>`rffZc_N{$P5Jk|5HI}3h(uWyMy3- zY3~E`@p(tVb(cgvh%fl6S>RK4NPmgI(|+(DiI#s4dKu|&1wdmTqOku3&fhp+1kmyc zeHA{tV*VrcLpd_T2fRlc>@SlrSK@kkw^x`oV85{!|MA~zp>V#2|AzZzKdh&Y3a|If zh!lVCM@1Sr;Qpc)7_JG{aybgE zUiFrI1n0-|7cNte>`pcE54mcZ8Z|!E$UjUfOjV~irAq#RzfY~wsp_Q{8vk(0BSo#Z zDMjiDTt9xO=Tdc(SBjB;h}^P7ozqc^hrU>>b}yGA^Y^UzhPPU*jw_+X9y1rI){iv4 zA@TY`wdoBlzT04-`uMCC*PpgPt#??915d}H-@zi}+xrPVQ@&jmrEd3~kNjjPo}Yf= znAtFO((eT6FUicqx9q;^vVn8(x+$Kg2k2edQ++Z#-pD)XyZ2D%_S52$fBe7bE`%jH$XjiqX+U%7UzrE5~oqkJ; z&!>B;J@>@nJikolUrvN|RQGMt;=jw=t0swYM!o?Ckm{m|T702EsBtagz;~qZeigZG zof-z7g2yiN%*`WOsV8pCHu^c-YTE*9$800t&??GZ9XENl(a)h{TQ_xq*K8y2(7sz^ zwQ8N&M!q5Bm8<%r)NCW45S8Nsc1`0OZcT8O{XqW5FFX@Y>cq3!>us$a)h@fV`0bSj z>Z(;*{9;XgbtqmJs}rp2G$*HWKU(&DCSO|_wk79UHlq1r#w zc!y)vtE=x%%{2Nsoc`mW+U+#N%uB4lWRLzMTKsh#c!=IJWj>X8hm~%X)o-o2KZt>M zSbV&q`nu{&Bkyo^d3p8B9gTM|y=teLZ-|xoS3dJr+HQ;Ar^WsDmr)N=tkKV5)fXG} z%aIw-r)T248bT|#6jS?`m|^4{zC~H7g#|H2-l6epbG5a94Eux1_kVw2sy1CU-N-vM zKL1Zydt{oCcc@J zR%dT0f0t|V_w;MZ5A^Hc-^Z_;&%2`3_&>i1j!i~iQlj%TK4QD?1;rQo{QutX+2Wky zT0x7`!p|sy+s7OEhMB&nl+wXkT*Bjo@?UW+KJ0o-`MER7$Un4lIHD{ZpvCO9bk#b2Tm|wYqA!h#I&fSXn)AJ|F*ExQ*bjJbP0a_gC zcDLnKM?=i@_aqWqx4jT8-_P-qcyo^?ky;Fm$78ac7T>)w!=vi%3C8zh40yZ@nIP*^ z`3zI^c?n(XA`^_f!ursv=zl!k7$3Rf2#*3SPRQt@8}uN`$TQ4{4%StUi$XrNDC-5f zI|);D6P%-@zR!Pu%fxtSTH~N6>Lrh``qctm?dju;Jc7x%G@W%7Ee`LsPIq^|!T*C9 zfy6H9y7j>ZzJ>Kbx1+f_o9_m`h2tCd@^w#lM#{g(jD+wzs&nkF#T~6K=q7)Qka|D! z5}Dg?>fUUKkl%-Sf(;Ijp%X@6J+FrPeoLM8(bu}8uchCF2Wpf&epmdgs}QTj^Dq6> z)hai}$TKWlQ3U$bXs(Br@9!CF4*gh*`&KE2{)eMjZ{+@ox;oi5s52df@oFaZNT)q^ zIG-8%aj>4@f2KSgTsq?auGa>g^~g%(HEH<&eZP3!p1jKRWXv#LZ{aUk3;dNm#k++w z|KY*Er{R-o^ku|Q#2Y*?XL*zuUyD{e8^U@f_b-6{U7LHf%fH9Gg;}3E6nJ_t*Be7$ z&G(S~E*1|0Uy>^OV>~(0f^O-;WIqSy1)M(W;nzPvzRq#!TJ4c{8-V;fyhJeG|4!{l z%}fW#`f%nQxJIk)iT+Zr=fA1s>rsEx55MoAtRLUxrKg40g8BN$dNJ(rY4s}u55aot zZ$E+h*uL_5;7qM+URh7>9s58J3fD0s+Pkct{>1lYeNV^!6BC04G?yS*PtSf1O;_n~ z-U-C>eO&Sly_V`wAJa?fM?8OyU9Us`l3sGY=X|W&UmY08o|0!^z2CirfZuFS>2JXI zXKaif``#YX|A6~D_@}fX+i5+dUjgT2!;iN`|I!{(zh+H)YpeF)&jaN5;h5`T{TBvE z{)6?c=^H!Yd>nx56(#*8xc}b3v;N=^SP~++1Ei z9y8p}z&)**q->(`uvE&`qNIp-z9&&$_9=8lUgsdOh6ia(Lxbl8L@)V8h#8R>KF3>+Ca0fll;9r-#1k!!H>a-=RaA0nDBHw>YbdV z{?BL5g%`(D?L0@xPcS1j_C_S~agK6*Hz(`k@Op2{c?Qe&UpSBK~L^4{TR9bX8HTB z2MzW97O2njLBDjv@8_Jx^49^B>*fkS|1sbpnu#hi0%>b67ummq^T8E927|Y7l+PFY zJ4QYVL4V_hcwWoleEx*SoF9t3KwWwLIX_Z=+6elxxwiCo;QH~(TSp)#TwD5U?C;!7 z_zf5V&%#mP^N4naPsx;#I!|K{l?1CjTvE_qDON0e_gfMVxW!~D2T>Qkko`eXb#NWT@X zkrJeI%6@}`{Jk))D&h0;IbTG*S9{XyQ58{7{~!G7yQ6n? zN92zy@cfAUW+&o)Nw2F`!1>@d>dRYDj+rODsZbu{Ggp59eZM`))wi7F8Bo)si%afA z@$2n)J>>kXZqkX)(C=*J{J=FCXM?*^onTw(7sBz)f!*QfP*(bLFq6dfAq$<#%JUxGBO{*yx^x2z0u#fH2ZPL^1;2$II$mFk zr-e{Kt5R}3<$q(H@z+8d>EFZaPx0DA>DKF#GXH@+g09c&;qbdIDd!trGtlde7AKaF zpU39^Ziplk#nYq`;#?W!q8vMmYd3^)y zBk6q=YmBc8GOipRPQS)kVSJghpDexJIt=+vOJn?S2>Q`1v&8&fOYoWhSxQfu+rSd* zT?6RpE5Nt+M7_C%F~*LGz7Mxx9tip83`#EaL;qb1jK7BX`}>LgWmo!GV7_!lKJ+jZ zHf~4yiWaB`(Xsx9xm-s@!CzFH?FjzhBDA~KR502?_5)@8`1r`C@b9q1_-u~)uM2dv ztuxk7OFZ8~a1E@@x`ybNVTto)FX-ncBK~g!)E8M{{+R^7igMy#p9W-NZ-wy@4?Vr6 zfPWh6o_KzvkUw=01LoGFw1bwMZ{U2b7*ekm^~trw{5Kb$=PF(tvM25@g4`SGp`Aq0 ze^oFhEx{|c#`{f0{QBzPS1d3;cq9L-6WMJWQZ*NIjEAz~SoP8(_-WWSrc9cN-c^bvXi`=?K(N@L^c=9PEg3y#Zt<(iE7G;P~!=oeq4KK!NJ z66&|=IrxI=$p2f3Dbv!>kE#&)>VfRlAx<<{PQULzRx$TTeRY+~3R)5Qi1X*@r{XMj z{aHcZiabR9Y7u!qpSE9teE$RJ9i{MoEA)3pe}Sa?QeS3<>WJfhzJi%S)thZ>3 zSb_EBHoi|D`@2xc$>q>vZ>c;sdAx4zwH&~^Ibf(J%)X#>1_iq3;Ya!)NJdf)i$Nu*8Az=ZPSbPrpZanx3FJj(7 zB%YOg1p70vf5bbhGb-=J*wZ2FW-<+Ea*Fjm9e>_K=LP5yaRPeBVI7|_`R`SXK90}7 zD9;P%V*owq81AQu^cPSzE~KA3kDy*QRMywrY71VX*J1D~GiClbdqOgue{fKKp9|j> z<1>?JN0m? z=q(G`&xa~kNTT1Pb20uSrN0UDB9k^5_y?|W)?Hgj-S1@M{mjoM!pna#-MgG6`-!mT znACbH{P(wm-@v?%XQb@f6y)qPRA&9S-%9n4X%zc!8}#*M(hvImvt=}R_%`YP!8NH4 zBUeH%;`jyEe~IP0*U*2()4?;?;`wYRa__FEiBakBS7O*Da5F zT_53)aG3_`WAT061ba$M`h6cYd}F`^#e=unC%!Fu#yy~**RF#e`a>*O`vUc){h+Td z!~9oNf9cE%jIVzDd_ceaA^LSSybi4b`r%&j_T~%BQNb$D@2qi_dGL~=S27K~~7OsBKQzP+xPl!;w_s3W#M&G;+esz%KwNPIw?%ucrUMHOOQqg9Mw{W%lVKs-sewF)A#g| z&_5qyK8h4W`<|ql0TFWkSl?m1NZo#n9(EZIzT+JDjd7yJ$wRcUaH`}V_&bhyt)Sk0 zChO^V{=-qvTL3@HS#mz&9#rlPcHulS54=Vu);&*gKOhhN73Q)UZUh3 zm^u3|ZztxUc`Eng;W4v(%1-RZ=7Im%hJFamQSY5YJ$@z1`6A?LX)z~kJEc!elKca& z=f(DePiQsY826}{L3{N{_&x@Ih=|M#_|qrKnDa;PbeR<3r}fWpZkI{-b2J`e+09J& z*Ud5V2mzzF<4mFP5D{is=x3tw5Z;T>-{QT-Lrkri4SrkWAu@JklipVIi}=+l2R)Lt z{u#GV<$&*-V*I?EXF13xO*HZjYa(({k3ZfRdtJ(<`$1!kd;|5}f%DfG8RHD;;T^aG z`q)UxFK~Y6up2X1e7@u#%-8MYkARnJB>O8}oti_(%>0-~koxDO!ff=z?1uHZCFZa1R7by^4ixK* z=X1Q&Lz5q5poe68$un?Gdi$p7WRfVbKbVGdrHR;HVFTuuX3${lMZf*wV#k+tH2kWY zoDZ-D31{oI&^=ux55*oZV^^i1Ut(=Me~sW@5G(jRIkQ_?_^HeWUsNCh{|$lWYKiA( zE%r-~ML?@Sa++#__pgQi{Y0eO1W}o0zmYSakNMz~82B=bJO-Qa_XYoyE4H>8NVcU+ zr2d~aYKI6g89~48nO9f?esu%*#~_?9ze3O43Epy_SQF6(n&V4_y#(ODFNVbnoTpwW zk0uqO-@;olf4U%e#3*-uyyN|%{_Ax;T^#UE0o$lwTiH^-->D<|F@08;r3!3WLeG9{ zCQp7S=ux3x-@!)Tb9n&Hm&{jK>e;`h{@y?^{-$`|i|Va1OXyFY^P%a#O!0gdV!!oM zJUi1B{SwTe-(L_oFN){eywFq8LLHWWRq`1{Dte_F7bW?hXC86xM?i_dD>%IS~$c+oRa0_#~W?zfq~Y8`LrNLE-M)3BdDAav8b(SOmB*HfGa z@0CJpYF*HphN;8@~TF(KFu{>!lgSe-_q) zyP~I~KmB)!d5Hny+}TWF+c|)awfLuWDG`eAGg6pdMLorYpYVqW6Yzl%>#hfoS)Z@) zPp}s3sn>6I0L{4YUh)ml7)8_d0q_fYrLgyu?C%uR13d(v!H>WOJWDh2J-r9^pO4_5 zP!`|cLok28{pVebS34PhPk*6nE9yn=dZQ=mI)%?-e10mt?L#4^sgi$S9{kK5 zUy6P=U*YwHc?;$hEN0ABc>l{eg!1wJ@RXaPaPE%xOM{A_-^8ae;2UNmzi^Tc`}%xV87ruIV});h9~+wEk-YFU-D?&71yV$-0yu=eBp1WQ#kj?H4o)0;{O-A z%J*}A@$Vi#TH2|mzba-%3XJau1q%@pA#!8}XhF z^|v%^*sTJt??U|&=GZ`L6{r?)E|&M?S3d^QxPBXq{KJ&DLEstZ7J%*N`cE3OI|%+Y zA+mo4&*24$%h7)#&B#9_WiL~wnWP!{hqpJ=)HeC4IA0t3U$pp~s#Y7Ciu3a-)bkC; zvze;qR8KYX59Z-1YLSZnU%Yjx+T@wWI}HA|M9sac#qV@W)V!P&&NoTFhc!uy)oz=$ z`1^xJ>cSOT%xq-KmE7MVNH8-rs4zwiy`C)3qkKjM=db4XO@#jL%lRDm9}ZS)HAz6e zvJS?3dF;vHZKRuHoo^pgOgt7Jq8fORZ<8#mfC2>N$%!M&9A|ya096 zH;r$oGSE-Gaw{JB0)wAJ_!A%X*O_?Eugmk({l(tutOHuyWI}hfe_FiJ&!K&VZtCPY z@%ViP-r?WrF6ycATDmABaOf zb`JNGqE^AAhOLZ~`8>`cw)xmvHH(gu`9>Z?+Yh!-kGsVg`G&aa&DF7G;$;4k^Z6Nl z+|`?3HNN3?6%YjvwK(Wr6SdN5Esj~!SY5PJi?L3t>sM;AZ9P}D-)t?u_1am@9jV3Y zaz{0&Df>|v{2HbVXsF(YEJS@Bj0diLq#<%Qj2>%B?c$!y&OU z|IAG2*I6aif!Q$ z2bifPE5{gl2WB;YkDe~|9=;yFjsGfccc&S7hcn7AW%1}~Qs3wN;L#~Rl!f3USnuc9 z+v1y|ew->}KBIH*r*_-5xFGS9(s`&BFZTPOOs%QKp4Hze4o5X!0_P*;))XyXzU-wk z+sY8LUiUcgx$<(4fsbH~Y&#!?+)Z*NuXb8Ad<0Y=WxuobiM;m#E zMQ1K3U%pQ;#_u!FDS=zH_+;7{#SQ)w|MPpWopwt3@@Kp;&Kh_^X_leI4pj~*%MOgk zd>xB@dnMGz>{6cFPk^3Ph9p=N$Sh zSyo_vZwmaG%fZj9J@x3mpx{Ho6xJ66GkzO?*DgqMm@4%xt~Wohw`9SX*Hery0a^IckM@qmZ>^2+~ZfC?n8M4U%~o+pIlXUMj4BIa|OvW^a?qt z(+wCa{ScUEKn`2C8~gP zSOPipQ8LDSh3`@pd%BTQFK3Pa#l{M#NgOHlY}Pv;TU13o`*7sf_e;HF_#S)scMX#~ z0qY~3RD1ZrGY_!=J{co*O_Hlp{|4dm@8cSJ_ztcGetIac$5LNKjS6*e9U|Y)no8r` zmXug-kkm79M%J-DaInTe`S)25-}r#gpE3-3&_~p(=g9sM{Y!+gevf`1Gh5GzX-B2? zp*){@Fmut{wIfYBF+lPY%pj~VYfpF75c&D6pMELVp3YwCFZWNZr`Qf?hdgjUUFI5utugU)<^z*-lHvb^q@Yk zgE0SGH0bS(;D@&(ka-VTk6(MA2kOTId47U_r#pT5uA_c2z2thwd(iwWfu6xVWxYE8 zpUjqeic9V(*AISXPIS~G&)yUJog1%u0rr9p>#$lu4;E24UP zS}>gZZKR@KS(YxWz9$u}!G05S@jR^1ZA|Y>^{)lU{UG~kbf49oI>29o*#~~lkq^G; z$?PwGAHQDxeGmFI(O-@i<|zWU1<|_F{__6uct|YWkB;X0@%@+g>*$0~DjjU#A-I0O z;+w&=75z3icg-FUNrA(mxA;nZnHh!QQzPJq?j!vk_?}l&C(x$GKKy)1|KK|bQ{f-r zEqMoKl#`-n(5R+fQg3HJ^ie-&!V|bVzF!T=pZcGPqnzY!&~t30KDoDW4wZb^Rn|K* zKQS>ofu6SSD#sV^M;cpkkBTnRzk~DNAG^+{M|uMf!TuWFi;|FkHSiCdGcSKAnbdZj zrQXLp%dOtY$Y*xq^<47O?zNM^HF#n?$H2!nfnG%?f;Z_Pc?Yh)oavf~`i=H-zrpK6 zxx@teIJ6z#A6b8=hQw3I_%_ndp3g5!{)?lJVfusY6~Q@wi-t4dA!zW2U`_kMpBeNf zPKWu;z(YVMqSCcI@OzP`foI;9abu|dv{sTQ;Qi;2Pb2C6;+9yiYI8nZS7Y%A_#3y7 z_1Qchn8%Hv6}lFZXW=msmpl}nc+KU0j-Rh>zd~qO_vW(xo$Kw7mk*_&4b8CLJ;eDE z?8BFV@Sko5J?t*=neSGeVOU4qr5_rPcX&5Zx4BK3H-f&tK{u}U1R8e8jrB9GSJe&n zngG9hH|)PFvfiZY95ac24rn5I0>k_>6`Vk0$qV!Nzn3-*{Usa8>&@f6=GsOb{ zQDj@pS&kQ;^OxF;M@_jCo;O=rU)tLf8qY8%oY(B3Z&ZbM@;I94;3UT*^C!$dO#kI1 z^=Pi){Z6?5?Qwq+=y2Q+^pAFyuk)E1p2nyTaDhG>CiRSEAG*@$n~j)1LOon@ z5j?U3>cJcH{la@a1ZthgzDHx(4d{~pT<7ctHhuagK__A;C^n0pZjoe;B6@VdtP0RZ`N;n zmkpt`rqyx2%ER+lLF_HkpIU}ilm06_S62+_Pbo_sXEn(NnSm$xULney_y zi+qdj^V1H{3Chdoh3k)bk2rj4IXPeOd}Jp&Qr~BG@_AJO_Zl~DOWhI}$yi&4%0P1SX%IBZgvr1!8?~ztU@(ujF zSn2xEvA+f$g4e*UiT&}sl$N|7zkaACdzzKv{vwhO{C$5gdJGt1=B0SPujgeW{b%?+ zF(ISS!@i_3{x3KJ`dSH$mmI9Eitfz5aqw3vE@R$*KMtHgx#hLkcladwJieIZ@%Wkh zd2I@qGizg9>EASRT5cuRC-zA3KQkVFrBzkv#-U{nud(@}A z!}+2S>ea09`UvDB%iwvd5B|*>JW@RJnXY1`TTSZeXnhcV0m#3%5uwfw=!eYLZ;&Wq z+EoK`oxdeNfajwSQPqU=oc^LSk!H60f6Ji|4=W#+rkfX(L8kAt7V zPdSZnMlzSzlRXr2sx$*XRutp$3;3~}U}4;#A(_eR#r;P3`?{Pq#r)G9`hc~#c&!=L zuV*ShpY@9y-H7%sDkA;yILBIJd`Ea<7QuM!kNmo|m_5aZicdDddfXcN-5+{XKM0;4 zf1zKOhIV=keyO4KXU#9A4)xuYt-xLS5cE^_od(bj#Z_^iJ`0D2Yyfb!?TC6a(@-(*E{f= z*dymdvkR-xKjpTpkLG&1y^B^skGLu8qtUaPOgpWjU*~YRPPfC*O>+Mqu$Tj?| z;EZ8?X08zI_Sq|9t52dEi}Q<^M-+9z4$udA<04Mdc(>UbS55ufe>` zd$R@5i*i)nzw$l5mAjBKqO+ktcaZ)ab%GaD)`u+I?>bnY(QD-367-+QLVtwvvfl91 zxfJr8kcs--vB;J0r4cpKz!RiPK7!{j=4*m~Y=yo9Ze`pRc-^f)e}*m47t^5gJjC8* z75ut3BL}NsAN3o(s@Bkl*_)teU4Y(gjeZI1so}zntWWWJEF3FtqKb7l;PXC9JtCmh zRxmbeG2XvneAW?Z;Te>DewFkeU?wWPT^975-{IAFNggimFFh-#mjyR%XcTs@y|W8>TNm*Kcac^^Rb5(X+KZFPaqEZ zeM!_O3(;`f6)N5@Mn1nA#{`Q{lkbqru_)+m&7hy9iRP6bqVM-8JYVg_RIy1MI*q>L zn}*V)OX3myD+WQ|>MZ+nxQ9KW zgvDXtFFc{IZ4@m^KgM})0CKRMkYCy)T26mLr%d}vKZn0pw~A_Ip1>owFL;&C@RQh# z`TZg4b%Vi65Z045V#1JnbfIww=D)`9BV8}5THT_W&BMUkR0EH)2zu95>e6vAuCER1 zr(>Z9U8L>ZhQe>+m)xIK-F=RZujlXk6#7vQ(Z%u%t-CWEe9vuuUPRFvr{Iw{5_;l! zobN(K{FW2cVa6!@{v$Xq1PYU^qqH$S0{sZ~V|;}Q^9_eFUM7GC*^m8Gn5gS;5YK;% zoUhKT8zc%U?gtY!8^328`>%-Bg}i3Yk+FNf-s0l4JZjP+N%9Z8h85|ahc$b?k$0%v zG>;0`Cd&6SgXnfQhaROSN&bQLE%rmmnlWF-I6t93M;0A;o1`+^YL|5aEO!PKv0Y%~ z9WEBjq|vJlJOt;f64zzYSQmp|1jna0XHss$JR^Sqt&IvQCK%&Sm$%cPbd87TH#Cbv zJT$+E(|@wa^1Q}F1kKB)qrJ8M8P}`k(9zc#4^eJg4$X+xcnI^Rx$ww|!T7Ht`%m2Q z$%TLV6v;E-Jm_)1S~mJ6jFUV9^Un`9XVdGJ5yrSv`5f%G+26xO^3kQEvQghM4A-*( z`{{r$%SQjtA;x%TZFp#n9Vlb|d(1zytvf)*{7k<-mIKZ$*vLm5dYr>O>Lee*ehrg{ z=g{Dp0X!a2Z~c~BT4urDrz_U)wiq9#!l!T>^v|}KFOtDGm&Tg91$#md)~7Ka+6l`k ztEosuSM--5?AH=S*>7nSl+_;o?_nA#Jdz!hRFjU(6QYUd|!iUR%sh?S--?L4ZA>GXBNn`#bJl zEFP{KihhnJ;4d?z-fS{@038|l6MFGB@n8K+QQ5aQom%__Ji|8V&)dbTJ{{qQ|3vwF zbuadFirBQaHT~ImTj{v_2=w(+;_0=PH0i-jCGX^M{GPMo;wKMkGw3e#<-=0XAJL~N zwf4WMV7?Q{hp&lJ?_4lWZ$Pj8BH)i9w(NAH*}Ly5^%|S#A9$PV$49iL-zHqoUqr7f zW~t|Xu@An#Qn(*mu^VRkmZ9Jyvc4cT*PrNGO3(Ud&AES-(9%};|K;=z$MvHzb<8k7 zSn8(_v(pznJsADSEHOV>>rEXi=!;YwO%oTDP~F^$>oFhef1Mdco@S*nA6n=e^sT0! z{A~zb|5pa{!%y%cRrH&u^#iZPe92R>xT2kY$h02d4NBwh-2$ImLeKT@lLwc|kD-me?t^Zqcd8G+A$L9UX!;P-=Ctm* z6Zo2k!oK%a@BnV~YH368eP6+sz7S`+xRKR_dicJd;ivHoejRS$Y0xA7!F$QG%+G5| zHO^HBuXzZ3#sP8uggf~b*yHsz;PJMIz~?Qf*N!S!9~R?&uEKn;r}B*|;rEmSeHP{}|4oYCb%lT~t03fPJGMrSr)6W{>JR$NSQnz5g1yR)Ko}^7*jOv(MlYDv7_- z?^V61*tK`?z^)1&uf6IysW&BleuWy_f3g3rjBD1L@^62R@jglTrZ&I*>H5EqjGQ~- z^Gnl}e&ECI;_t(8K6^u7!+qhYeckL2k-N+Xeytbr{0u|B;x>9MdE@WS;&~V^``4gi z=z-Ynq>;~Z#r=NJukz>*axoXqsKTO)Mlmk%Fl98ap*Qmz;Cw6!98f?ugEG0xa@ zWr#ccLd#3P4L*->KMYrk!k9li;D@w;HvRRaCXasRaDI+G*$$<6lg*lkIm|LJLza5M z2lb7|bKvbKylm<#6trJuSv~`x89Mb2yj5`NF~D7Hc1_ z>-@vSC5yCgX$#E!L#>?)wfxAq{>MMey}3Yp^F`+!de>f{9el0F#RjHpcKg%8CnPEC z|4@6&e696XJs$XJo|Y1uZss3Ow4bNVpQy*Lj?UDkO_fKA>S_Plk$jA3n`EO#&jnvecNvIcVf#;*PTKr{y&AZfeGw(2LWSS!tTI{Gq{2mkEU_Gs;*0!%6kK5W^)0`8{d_!b#SM5<1)8{b*Q}Ih@ z?fd-%=qsjv6+J6-(w65YnEf0+jd#(;BqvDzj&rn|DmiJFgA>et4vU;r&BZQ3^0S;@ zzm;FnmRTg2d54m>+G@so@uC-Uy-x4B4%(QLdc3;3y_UU0kDpq%fj@&Dk2}#yE1RIl z1>^0s5+Qp0)TO0%7X3i}^M5E^u!Z*3@c-hhruaVbW?o^==q6gVcRJr-)v~cx>zW?d z{nk*soUO-i4m8kgSL$(yQ+=F;rb&KW^!?KHw0$9_n16r4yLGf%-g<1eq89qSaQ_e! z@35y{O>NY_ajZWIPd{U8b#3=;opDl2!}+1fPA` z-(kc=TP^gD&NtW%EwAOtibcIs6y`G@_L|iWqnLr~1$a&haVnuzjE*t$4r87b(_H(- z$lvoEIDK*v%}$FJUV?dtDU+=uNGn%#lK(ph9s{%n#H+Da~xLxkFm%cQ_Q>r<|5;h?t1L7G8GA z_l!OtbY5a&^7WHYzYvSswaqzAHcv(Vx-4R6cu}s(>EWlxTdQ@; zS@zFV=!G+dANU#Om@_F&kKxUgbIn1Ir}U|qGvI-Vk6^yw^)QQ^jM-B}AH$lYxIKN7 zUC>UC_Y^*xoqHp~{Cdq6o3fdA;d~JPy+@-q+15=Wpy!McKH=XtuMYfsVX`@HcxYg| zLeZ1K=e5RqZKqrqK#qM|P8L0g8TW|AQyn*42{*@!y)ztpjML*Devcf}YMAa9pZA=q z=TnS_Ogsz6x$jFT^8)l3YqQd=xas~0FHzP}aXV|ef6OOb>zRm0E}n-4fX7$l#i1aE3fUwn|X$N zUaOR>8{^FU!i4V|m9As-xLDy`N~-lZGq2EaRkmWiBFr2&NIjy&+v~AK?K4XL^JC4g zuibH3$u~rgZ4cg7Dt-y&dTU2!CTewfqO=VUW&J_?9NNwLtPCy`%6c8@?dvL~KIX+d zIY#Ce{yl4~3nAZZiuw9J$+4#8)4Bh~73k%im7XCbz&no?y_TN=-vU*knT*DGD2jYi zI@l3A^p_Ydd>+?qe~oNHyMso_{pb06-~H;eZ^H=D|5*QT?O&6$fZ>=Q^FZG@hkhPS zkn;)_eVO%{3oiC_JZdQBL67cQt&{pk?A z?hC!xnxZBYP#`n&B_#y$01DA5U|^|I>q!uSb86fUWIC4`q+O+iPPf zYKlSj$IP_%42cFmu0k(L!}%wa_U4Vmc~g=7DxVP#Tpdfd>>Z^(oX<3!>_?)`wJr2l zSLCBh(H!3(_^mt0cx65cp1Qvc7)_vpd> z(Er&U^JR|kJ;}2IP|w;%#t&=io&^WNuceJVk363&c^HWEerwU|Ifr(*QFL!p{|ugAF6<4Vxi_0| zeKzXRyp$d_M?$k|BK`=x9=;hILglA4midW46E%l)!=^EQZw2rhc`47avG9j&1bxv~ z#&_w{BjJDBSo}h`#^CX+5ftEWidi44nK_a=TAKI==4ISY1VR64EcfT>g%xzfasc{+ zH<9th8qdr)_>bOdit883^DmW}+6DdWo3ozD`)Ae7za#QTEtqHH{tjyD-cIz!riJhf z+|N?m(*?X-bD3|s-lF5eZm5TCj`_4L>+ve}@jyLRGx>Y2=Qxw@OP1cvc>hH30#MUW z^(ORCm4E-*JyDHV44&Y7Be@=&Uua_+fO3G}}u?^Oe-%Ab1j z`?!WWx6@#1xwfwG8JI6Qw@)A2*OvVV_Y-ZDF$DGHHQ?XBm+P_BTGs}`kGeW|g%pfm zPiPMP>1(=)k6=Ij+cWy2A9FQ~&jZN6mr?hoA&#voyaLa^gO>D%UwsvM9+;1qw!054 zd|w&;X|i~~Lt7U1!8yLN@I9z^M{Qmo`0ZB0_&Xu}GS=Vgh5C|;INv?MbL4?qYH#Fl zZSnmdA^%d3(o=enT@zdE_g7I|Yn4@e#adu(k6d z`|l?I2=>5af07=4B@gno;P+tv1fPr&GGFrf^`bg}R^2Zy>oe~Ua(54*u=>Su9z3D& z^XJ_xm^$_^COiY5PX=`uNf}#p9^&7{Ayn$4jrdD2U&a12W3Ly1UcOUd{c+xu3FseD zMAjFcZy&b~N6k)QiJ5s@Q)~)&FcS~K^9j#?E-S5se_%fDY+4i*yJ#u<10Lh-SG>5I zrSKP=LoZJ;sFAV2`f-riTgnWICCh3SQm?}2KcDPqXy%2ue+0(c9Qt%3k`{Y2|Bxd2 zrq4a1sLI1aG9KB(W7FTU@RPQ{@A(M*`y?&6I~IOT7Q(}Dz5a#8!Spu5g7-@**JnR{ zGZY$%DaQ3jf5f5mvj+Q9sb~=Q&**^s=ONm%ts!*Of;c~WB7b|Cy?0RmRsjAet&xx4 zOEbo|g5P_7;VD>SpPbVU9vb<1|D~=wcA9bzIKqD;AI4v0b=;gA#QVR>o0xy7itl?< z{8Mtj?{ z7deFsqSv>cGaCIPzM($ukmUPzwV6n{yT73RbeH4{1}%vMPw@$Q<67~1Jkmdw+%|qd z{y#(X@aC7}@f^Q{emakM{k_z72G;X8^7ni`Jfe4;rmqr zukwNZZeL72^FBd6WmOe9L-oLgCFB_UNM4`bJ`eg6FQr$1O*{nu#!2IrQFzFGfJ&9JObyx_o6S~3cV#f2mcN0&3AX*5Pu8){6;Yu z&_Axp^fO;(ABaqvlhW4q6Vs zh>OrCD-SvbyVK~^=Cc~}PV7(dc}*IP>2*f*SN6YXW;2KWu{sStW)1sS(be8_aK1Px zJO{uFj#ACw0@ESaQK^oTgqtMHi311amCk^^vuIO>h%LMI( zpThS;;s?R|{ifwo>67C@uHVG^JsV!)DbOQ~&>vO`Z*c2jGPRqPjq$kxdh$lxk7O#n zV?VC{Lg;^+sc+9@di!cG_fNq1TaNW6nMQRr`9bi0a?`2VH2?KZ;V;;e!@c=ztasam zZ(xl&bKh*_r%nD3?2*I$JZ$5)$o0hjOg*+Xg^Cx-5`Khp7#aR))R;Eo_lIL$ybkZ{ zx%9<#GxVXBcpf%UT*>+1MmA|&{{@eB^wLQOU$7DN;N!&4s+Y||nqPeb#zzRACnLPS z7gNALYoQ;{0?&DxdS6~br2^LoAHn~A`lV&)&$tTu=O#QKPtbp4IaR!|LhAc@{Ovow z0(x>L^sQ~+BVN+&va6}5XNEkVte?C~UQ5xmRAcsn8N_k+Hqp|h z3-JAS;QOODM1d@N+iSkOANI2}vBOp{=W~VM;pgFH(d{@Bq`}W&8~S5?phN3+(&GFn z@_8#de5JIkeONDML7zK``X@{EMKcZc&C_MRVP0Zb<)dJPJ=edY}nV}NDUmFNd^oz`u;(FUiKA-za&B(|6K~Z_X z8f`99s`YU3zhI4Qf8Zr@sveB_!4iDMK;auQo(>Z~nw=+n)JIRw5nTut-ibed{DU)8 z({(t;?_=<=p6aeLr)gCDaN$ST@8-s`lXRs2aPR}CP#>$P$M>J06_LR*zcO#oWb-k4 zc6vDK_4i@CyQw?$kh{waX(53Y{ z4{`Wk@CL1Qzlam>HdFAuXpHCP^8A#am<4@2${eG9i;mryVvf6g%7R~HxS3~IHhByB z4^1$~C4Oze{!!;4?hM@uW=!WHnxET3y_${^o`J_eWV5a0Pm# zf~V7Yh|J>KXzhytGym|R#5Nje>?8aGGmCi>@I1Qtn*AW^cF%&}dw0H`eBM$c4=p2Y zPjifi0PK%etEe}_np98p-il2(tKl2wkloVC@Y@Lkudqu^37m=@9XL*uj=p%T5n7!o7XT#$!CbWQGqUot>OLv(4&8;L3^uXjoStP`$y2* zo~S!4Y_a}thd=!Te7~pas$Wl(4ucbo4HF9C-&-3#jX$FNJr!&`Ilio+`c_**`=Y0m z(vw1s;7tsrv#J^{ym_izDnAQ)ZVkiq_T>#V))b&ln^r@gE@`+}qp+cBRB7@5zgQ!` z0X+x|pW9TYik;3F!9J?&zrg-oHNT%n{1fv@K0{5{cIdBg3!h)q5b(6TVN7U$YQN|M z_=}o`ul4K$efxkyl>^Hg^Vh_d} zI@X@Y{&ILe`xsn{%r?{xUr1$3mBM-%h`*m}7&dc0{7gzg@AomhtTW57@+I;kUCM$d zQw+5WO)>;_iK2?p<*`1MGyFT%!;o<{nC@DX$MgFgdVU>4?U%i%RsAyH%}jm}|D5lK zdZ-HUZ-941fjWkOvjgA(U*`Js_va_R1dhN~RmUsE6R>kYY| zgAJ|0IM>5?dyoC@W3_$f*7RsxZR}58sc$3htMy;BrUq?mU_E~hE&sOq>sT9boK?VY z><2HiQ=R|Xp4t|wBz_jN($A?ABOU4aXj}Y!I`(&&YQttO)a_b%%#URZu=F!bFXBeI z%gTbM_@GXERl&f14+pN60$+23`Bww$@ieJ8_DdQ*znB63_~Uq4d#%F0hzu)ONh$_9Z20uFy>|H8&u2I+% zS>yZP!ur@l^*a@c^SmY2+t<+Z1JuLrq1X=;5}plxoK%a;A?WFsPk2E-Q)HDKL31Ae zfqz0S@>vdQ&(=e5zrKTyS%CSxu=>$r5cr0VM&4_4Pssh<2T_NTZ;ZU(VxG5S{{a-) z?U|AHX3Q&ERqO};?g7Tz4xD%Es(juC=U{}!4!*6rx@of?c!KLj*6O()g4cTpEy@dJi*sdPbv%(hmDMX7u4fmT!ue8?4eq_9-#JL7M!ZP&dIEeM6 zm|8W;3;iSJ8+pIRH7eYn^yJfIBjt!pVcm zpU)$F3j0%dyz!*kX)kh^x8*aA-#TxcInL*BZ3*+^>6LtGr~j@Tu07!2P`R2P8JjK4 zVP2MV6tf2UqsDAX4)^Nh^Y`y=OSJL<3*|h|3`?Dm#hOdGg=YTYTiPNmO)c)1qpjM;<1U+8?p>PCaK zI`{QB>%agl?9z0pXW@MF!QSZgl&i;6+xF8+uAa{IiQoro(!CRXwC?HCC7;Xr=DqED zYp149H}ekH%lT_h0;ik#hW2}WwRE59oL?2*A<@l8yVG$x&fg~9VRW>YmfFY^^ZTu; z;HkZJoxCXJPYiI4B-ic;E zhm>0`+NY|CX1>8`o|887lg>B%K4j3oUQEFCb>RKBvaYfai{GTj`+hamTF=pAi-;!LmI?7@z9C*|tWD~x#}}*{;rp0k z&Tm&ZRbTsS#r;D}d_$Yr^|Tdlb>1POSY2((g=vycW&Pn+axLxG%xPx6LG`VvC4-;f z^Db*()=||pEBk3?z9FznHSNBw9@h=5tWC&_L%zerH`ED%KZIW##TbtoK<~`(iAU#}u<(we8MFZ-?opFc1L|J3=29lP!s zPj1xXvuExYUE5DK^A1&)-ZI9$4>!k$M%^%$%g|%yBf>g{^Y{|pp~L(0#&y2oX1<}= z#S_L01Hwfg;Ck$)@rR9xL&MFyL$l}u#-Cx~X5PViX}Ym^%?Pf?1Rt6RR_;{}G&txF zEs&pcLp{WioYjq@kk2#m4wq(5%Q+JsW#$bEH4V=x+Cz_DISk7wUQ>@d4ED?McoS*< z`$`Kt<=g}R@*l6@-rX+8mm)xJhk1dW{$H|(&evntj_0zsI87D( zjrE$;sgtuWf1M)wEo=T&*1kB=>r{ysu6Pi`SX7SE_QtX!*qXGkMDL{bBtSNikV-quzcoNughe)AN>0G z-}w~3=cfC^am~hMP_wJYOH0&NqU-4KqE~i`P3|P~zpr?}MfuoIk5BshDJLu@nR$kI zWu)S_d7_zTaB_}R%6LpP^9;kn5|sR}Cz#_o9w|y-;sneG`K8|=_se)xWrCSkct2yg zlC^uhIgWN-r_}AP$MZgHQK~=Hd5HBHdz599_1JZCu2QFh^iPrZpW|^siCq~ceh8Q^ z;EnM>`PMEB>)&T37^4wWW@#@sn`2J(W@~> zE3tOY$R7?7{sa1zV&~>WKe`N&{SZG7?@l^XhXaEp=JDyA;*9*-AkjBiLvbzQg!AYi z(L-3zuUpy)e#isOJb=#?1N=%&{Wf@h^S4u|Qvd#_N3@Z8u)R<0$!0`f9)HsR`KZzw zeu#afUZ43}-se@?-COh_UQfbywZgu=x9Cr-iT<6}il&D35*~#0CfD|DDE*Yb{63D| zsf6p-bVmPoANhRdADqs2gx`V> z#($LLe_7xBebZakYpy{{T-t@+J@aNgfc;m<`g0eG`{FJ74*$k)Te{MymENNN@SZgM zNe|p(Z_%H4PH6Jn0~)-Sj91q0-c|Df&tT#sSbw|Y){7GUc#7W5n)%IM{i)R;Px*V+ z&g4M&e{|@P^_n1KdwppwLThWiXPBAe=7X+3&|9V%^Be~`-u|yjBd3TZhFEbAJ#;4MiqFrP@=bUfrImuMGR%hl%#P6Y4 z`b>CKcf{u}1sk)3jzmnS9(_CDc~}g8;6 zc)kWg2W~6ZpZ#4DOALg*;{biHxbOx2`vst8+ClVk);Hm0N|*213*W&!g#GP4U_R}! zK3tIf(V?V%;63c+dh+;wo@W5{`qD=H?^rK>lr{+Ut8LIf&If)96VN+72=z^^xV{(b z(Lv=~S|I98?Bsegk5PWg5a>}YWj^CQ*5@??!N<4Y&r^8L$?h{4dP@tLKlz?Ek3fxP zY;)-!!}B5gD(pPbO!Q#(#KT+wPmX3-Pd|b8u~*LK9S9wysk}ckmY>TErpLpZa{V({ zs{x8_5_phBO=N!M*HZ#V(6=Xzaeg!To9rku2G46_;WwC%NdFrGe^gVy4c5c1&Kpfl zlN!tQW6kIMt&!008$+*j#Cb4A{1O(pHxXX?(5Xz+1`USaZxcNKJ#e1f3@yDcG{>g0 zzh-}I_Ge7o-(0Rg>thwWI@5&AmQvr&{KMxq?eYFCpcYj7tWJ!n+976*AR&i>RzZ~IW2+~(p>!)M0Q1$)tE z_vXS&jGN#0xv-t@j_HC)g0(DU-k_rIuC#q)Su@--o^HtyJ{FMtyf>=CM$(-<`Cg;Jxxx0_)}V75w&9}F{U1qyglM%B`Czqn?j`DGvQk)^;7wU_f4 zYATTrDJlC0_B8Gg-H-OxEGayT@Cb_s<9d{k^^VsZ|53weX;g8H?`%AuH zhpc6>;;+Cg2lIx>o^iAceh<7~VO~BsI}RQ^7P4RAJ$m}zDEMVq2yezYyGeZ`X+C%b zUVFJ-{_ww%&=)P_{xg%bZe}F(Rts6rIUesdj&}UR{t9~~pH_d;IGP-5A-oTJRy5iZ zMhQJF!0YUX|L6tqk3r}sWQqOBSA2$ zFwue6W8eU`rsNTo# z&}U1?=hgWYO1AD_;WvL*c$hr{BdL|eXVF)=hOB$NIPkY0q4%dte&NE^cF z@Dgo)PlqP|7WJshuy+|l6_?EhfA@<0mZhJ@+8XmHtK6Z-B|=-Kb3 zp6*>}CiXv9L~mt1YRkDy_-|c8Jz@=&_26S=SJ3h{7m+V-tFm7Bq5g6@G5I3&fzlXn zx8T*ihRvL&ekP zQ9rjcs29F0e8H!u^Wbl6;vtxy*b_OA4(vS%Jz}r;4<8#j7ye@>glFOVJ^RcYdJ%IB z`a`1l{nU+}L)Y&f5gvf&lS{4UfDg(=zkxKaPp9z1Y3K)W2;*m|-2d{FMnQ`;_^&Sj zUl>7Q?^4O_X%2XeRCzsNMk*C5nT_iigZYGc*Hn1S?iYUt?s>8PCpawsy}16#xIPPr z{Vr+^+zq`W34F*7urDd(U23Pq>{pYKF9kf&cIe5iu-`aLBj%-`UVba|BWLg%SyZe; zD%BXX#T?(VPotMtHiO4e3H8HtBYF<%xi_(Xf_kHO)Uff7eUWiEpe4U8z|apfxOP2H)rN18rXQg{Cj488kWie zUo%%ek7KTHzZIG$d^f$h*r zKGE=i1MtI0#P!>Y{q%3FpGLCS9S?o&fYg^VcU3Vu4&(n2^!x^Dt4oJ*9b(`w!u`e@ zs~IP9(Jv_){t>45SDqvE_(>!a>2V!mG^`Hm|FV65!&%CT=*TX`5n;W zD9%3<<@4XKt)u3dd7Q2}j2FI%`?L3RI{{{GEclwXcEyXs&K~ zb)3qqXP)9L=Zn<*+mAz!84bUXqu6gbs$sQ`qksBHj28{hOKbEGIEHI7LimQULz}Cs zhaaQXPlHh(y#wd#Mrw%)$0%dWFyWz?&pTZ17~P*fOs*d@aszK4h6n3N@o!;2@xnEkpH67>;@((^na7CwkWDAvO#!cw3H~KS^*ee1ekf5gzp$TJiTnG|e`cE8 zFXls1mhYw8BNH@uZ4kfT#jxFUWzS3*Z`RkH;orWC;He_9_@~8gr_{YB9)jnyMZ34a z^DNcOKeTVS6=PQCAwnWHV?EM&h-#BJ)0NK2X1>9;To(2xIuG%?)F$lnrVF3IbN0Rs z;3Ju#M6tnRp21ovN2R*&0q3ambOk9Wse^A{}BwtNK=Du@^`>l%5b6XqGv&R5mC}qU?*E!IF4OsIG zKAk5i{cG*aslK(X!Oy|bkXpBkGWtMDj`j6+2B!eUaCfr3GHB=QoUBd`hW%X}4LIK@ zGiE=@8Tq`S;r-eshG#WM`SW2}&dqZ@3=2j%8OE0A4^Qah`1hU$wN*z$D~m*B(2~D7 zMH`13n%)gFXnWQxU*c**znyA;CStf;>YB3gyf^B{!4d?<7?!lm2QG7=@#eXzh7}#^ z7@Dpt1`TtUF;5;#1NJxufA^Z$-{u-87>gN-Hnue&zl#0rLt}*kO$;qt4l;E0N`_y9 z73TL?gV*DwhT&IMg3q^wpV0|JufaPE6$-2Y-)XCLZBrfJXRe`%&nm1@&h<=+8Cw?fOC~$5t8Z+b4_%dqYb1zBJ6E2EKo3!_jJf2Dhi(z>(I*{>uU1 zr>`MjhKih59qiw>sngpZR3~?DOQhBUpLHDkz(uuQ-L|x$Xm#u#9;1KJ4V)L-(b1EY z!C$TgudqcO@~a)C#M;6SX(RaG9qOS<3YBeD9_!5!_*Yy}n=NaP^L#n@VJ!mxvRbX- z)rAVzFNg1&1wWu-hTk`P(Dw~xc)tQ(y1W5itni;H$$Y0;xmP7a=ObR|`BfbIiOp)s z*az^V@PR`&KS`@!G0)7*7RCp7Ek1T5D z9YWWJVgFP__IIoSpRyf?9HN!R-YeWQqj0}43Ykzy_Jgb;_umx?Kdby^9%4+d5K49V zYvjEpdmMclGm_HO??$eL;61iyYA}tg^ufq`58h+X8#0szjCo;1?uj`kwPnS@Y zk=JT||B5yN@JqQR@gMjD8|!U*`0RZ&I12*h0o{evq?Rv_1TR^)Q(~AT~&CAT1(a#Io|-k6g9XTd@f&R;CUMc z9^@u^?RrtZMGM5AVpT{EaX*nl2U5jz5&i9D_Lu#=_+7<8=|HTbvrfSi>=bL$lO6O9v1zq)c#Jo7Io=d9qqhGUlu)1aL z6m8w(*{Hv9SGR_CR!7|(sXg7Bg#1@NIUmkA8>BVLo?-TT*yIza_1H2)^1aY!zy}Z3 z4yDX6^9@1IENrYk#Zh2JHL{=xaGRrfoBM@f|YB3G_JYMjNf(UOo0pX{`;<(BloATWO=>_4rdhJMHrbJ>D>-h34X( zAo(-a^MhQPYsK4{V&)sZosiw#IvKwo|9_zfr^vR91A}93N{(A#$-THXBe#|>y z53ZF8j5qTQZoe zCf;G_q$=78i)qMD#*02Qs+_G>v_~BBRdHD7hk+k2uRUlSXXYIej+D__Y>JioFFsQr zeO5|yA8zuC;PYwAJH^3k=)6OR~Y?EVnl!B>(l19l{WjO&O1!s zWvTt$9xeJG&MXRYU&vMH@i@mq+N-gqn0bda#R_VN-Sv3t3gU|M0NyALHS8Q_Q?WbIV`G7#~y2d_&fOAI9_l<0m){5BX+1 zQAB_Jl;!Fu4n;~$Or8k%CxSLQ~)H(tJH;v+a7L2r$<;a|Yo1IN35zcQ|I z(c|CQFO8AV-~W5vF6y~)+gd#y;r!It)=!U}tR5RbTIlh)3J;AdmYDQ*{=Rb_-!s~| z>9ODDJH{&i)8F~^QSR4_&IKaOyu*k(=Z!CmMsWU8>QjS?9WmA(7lHg>0hM#=(bW$a z+s8z3{W0=qA>_EcE7ra!=m8V3pNOLB7Eg0Nw}?hu4*L}s8b9WCPI;?n*4HJTnYkoq zjCZu;-&v2HZZS7!S$#cD7@3r_{CAZ3_0>7iIdPYxkZ**J2E7*hlbpd@qRhO)rI{Ua z%A_(+Ft_+A7yKuf#b6EI#l4y`z5Zn6ubT-Ufa{@rJR5H27ls_~sB|3>Zsr&6 zZS+xQ7t-U~(*hOu<&(^>KiD@x`QCbxnP&*qVwL&lCz|6uOOlk`L3*69HXS`7Ci46t z{6hEe45iRA<|RyV-JC7(h@OD?@`Qq%sAHjJ2b6kO$4h>k<0s3HpeMz6(RZ15xU%Pr z5_V~v#O(Lr5`R_6_8n*D9bEg}MGZ9f-?$>ze@yaI#WGZnm11v|10PL11oID9tAA7S zPc+5s_u#ZW4^{aSD(}zFT>009XkSRE=zpviR(n?lJ$J{5KF9j)$6a+PyHAMdUtABx z9Nm!PA)+U;$Jec7_(QxIjekEtVSnT5RqfF4eS}y?g4wU^7o=>nX&ZyrQB6b*C%rhoB|Tr?2lu--_S?(A$~T9HL2v#%sduVrY)Pkj^uqIb8oB+s$o;pX zUN`*V7qMA*g|e;esmOSL*^huhffm#b{r>!Ay<>hdagaj30e%<{b45>H^F~E|qOY09 zV;PFqH~8^c4Sf-k-JpCmQu>qe$B9$G zH00~Lqki@!yx*JCrp<|9s=HzQJw<<)ax|fM5}uc?=J6EuVI~;HuB^XFznLG6l5tPn zWPI}+h5kj*4BX`TXFvEUlTzXT;VSRX`_YI2Y1BKy6?*1&@Z)Q6c26Vs(yrJ)ER%kI ztp=sSZ?DTi=HEGI{djmX=4}%X!3=xX*-5mvU?;3ktH6(EP?A?7c=ite(?93oyc0vk z$2ns^zC!x{janIv{u@s6I-gPA_Mb#UW*MM&FT?vr5&Ivk3Q?htEfKz8aM~Ce=TE{< zu%4%N9!k^SIZA&G)^|t6_oiXK?bu%f_48lQ56c(&ZCidmg@3rQ%pZ)p13%B4k4G<_ zUQ}(egNz^UPw{?aFVrYI$oOJEk&(}P)0(T?Pa~Rnc;&^RzVub;* zi{8ikt4-?$(72~S3q^?Ife{SFGWk>`o^&>yh_P|slEBbae<9^02rm9dli&Ai6k zpM7!9TgrUOyu`mQ{gCf#A@d>gE!O+{(hB%R@UzbIA!;JviQQcI7@p%YGyB6oy_xun z;5RFMstq99f1Aqugf&)K5jhZZKvP*SdH!X;j5&`@JOr;%>spPZ(tVoX`_>k{n(HNe zt(x$BC_Gi{-4I%6(?p&x)>lVv9*z3!Cc;l~jpg)zMpCQxO)#Db=g%b6{sz*$s!cIJ z;GB;6d3W)_WDGXNJcnEx)f+XD&2WGFp#Ja#YCGMb*|reB3$D**zxe!h>_q=(|H<|r zoM}{&o#_4Se|bN*1L{%jF#k1z-d|r`T+NjhKWhoSwj}Zi)zv)fyOHh6mh5N6+N8>U z{dqiE%HL0W)f}G7UgYzkh4_Q8=W?SV{?Jic$n|AEcivOK$Y>$+6Z8L^-?}-P97E1ED8068)H&11cB*W~e@|KhOuyk(X~jlJmxKZi9$?mv)!Vr|T?Bf)!R)5^47q&2L?{{I+HyC|xmKlp(fxPK|4FNW3f zMZIoyIgj#rzQ9=go+;HZUeYnXkJA1?4~*xkGGB8Jg#AZL+^>xD2Wlsf&!}>wJAQv9 zo-gF@hk3YC#Riq+`R1I$jT;^4cT7b&kMR0;r=v54-)FxF=4>*Q{{0N(T)5EV zLxmKD49zNFe>RKjtrgD~ju?;S<@x3FX80@x`Ni_`?|BY8ltff)Njdqw{JgS%?TcpR zgm2*W!~dWQtvXy*o>y!r6ql}DuqKoh{~PYPiM|6=_D~tw5AgdLe!An#S4PgW{Jh$( z^rmO?OADXJJj17rTu)z0#w)KceINEE#ibNK528Tf2c3UG4T5@Ci^9LdV{wZPxGyc$=~zXs_qz$yiHO0d+tXXTz)G0 zm)hVwaZ_Pl{lSuG%yUI#J!T#uW^)Yqslu}V<@tB`kQnHS*22e04yO)u#6s50wR-J?5}W%`Am9uG8USlrOY3E292o{N6ijc2;ae)=IH1+^jopO z^?#$VW_hAW9L?NkA^UCiFU{i{1AW>;`VVnVE~;}RbX^NM4{*&?M!qO$WR?ecZ@|xQ zv{eMw3rm^LS!1f*ZakH!V2Sl-m+(Kyo?%p{3iAdgUgB5fU>g71lCKZyc=pry5rffh z%nCfpDa_xyXwS}GG7A5jUb-3j2UuY~n}quRN9c{+0?&^n zo)3e{o+fR^v_QXU3;cT@i369nKt8+>@8`I_hRV;gBSZN@_`cRE&tY6&7udWY_{sb- zw@jPh0RO217{B+$U*WCdh;x2^T%U(nUjvaVRw-m|KHuaVv9 z#(|&E-+FUBDE51vz|^q&zb_CV^2@ZmJZ{u}bgMc~(vOCyg?rJ`}4IX{j0EQw~! zj>CNTQTzdT{EVHJK%M`*M?LCXtW!haRX&5JEqp6_Ec?rX$EL{aSEv^}E`Cs7Zl}}1 zc`uN!2djnmtQ!d3yz(>XJ(j|Y%(u#*MpK?3A6)>~>k7F!E{A{2Bj`(36924`NgiDu z;`ilMxn6D4x=d=Y{=U?s^Lz;hB#J$F5Bm9e_!Yqu$#Xdkio7d&CG(uyr!A+NE$)c^ z&-%P$;Bp%I*W@3;XH@1L`h?y<{pTg&LG0XC(6rjuB!A9(plPo%$@|b1=(BmGe@ls9 z8Q7ni`f0G{y{y(!@V8er-s|vrd~dtO^!ngc{N7kOi+q~12>sTsqTX|;)Jt^=T}a9I zFXQ?qpx(`%?tD(izWb8Y^RwT=^@H>2&BBX_KMDU*a`}ApAiE&-_N=-0-aQ}vuFpdc z&4>CgXydo%gJC-hp5hnJ$LKdUAM4y1=!GBHACFE=pO5@x$FiKm5m*D*FyOVP$ee-6Fk4d=x-*I-DOYIwOlKvj-hfw6~ zJoJm%D1H&FnQ!u$Ppf0s)YH#}ezXMN?>x27&H~?;CNaN0Fm5a6v=rf+c)t)Ix}9kL zY|-PH*JyfoC#f@Mihlw3h^u;iH~5(u@_l#=gx}vw*L)I%$Kd%id(wXR_b15xKL4$h z>iX^gEkM5q{ypq(wfIjq{1al$@vp}@=%ExNdOr8}DBxqH8n)5Gb1-wn9vs$7BZU`1 zeg*oy#@vnY99$1uX8l3RE*Nfped5kT*x!zq*V)e^KJ+m7|1h~;+)w1`g~QMvL*;t) z+h1QTlP4GT{2{{kl+LQF{wkjfKeo}rBRK`sR?mgxQr>POgl`#LvZk6Ch1UlKL*JZ- z=c~GUaegk%3>peOaSqN4Rn_@)gwR7#__1;~o2b|SJ&gN0O#YthH|KRejC@3}ydTal z>cV9Q$?@AL@k`nLsjnLPL!&SILWQ4r{&SeRtca1iUz{ZKG4_aRi7Gji*d$7R5AzYd zBlhFGH%;c_y;X*&34it>=N~WEbAqwIieB+Fxl1zqEM~y3yr$Y`!Vc)QDP}*2b(OQg zq|Ro&k^8QzCA)8=(l3(b`C&bOK#z@dRGBS20`m>MUu~rNr)Qeun-QDfXOd**6`qvd z3=d8d55auE;gy@QKQ{3Y9N%w~1%E1?huCx~i$WrF9%4hoE%fq(&O;>b-$Fwt={$sX zWeb&g9A)MkT6m*h#VMVKu(-UHz8%+jh$~YNkDDld4cMQ;%V{fmB8?NCfyZm-KU-;H zy-?;6gomgZw2d16)Om=2v)kYauk#RR-ma%bPW_<|7Y3i`0ljuT&282j>uV9LZysv1 z2J5k(@B!aeMD=srF}U#=fet)Jpi#bYY$ZW4oVP<<3(0TPV=KYhu3= zqV}&fm%bVr;(0Tus6S9!ct>GRVvYNq3jX1uy6}JxaSvtgHNia-j{a#uKe{i0{&z$4 z@OEB~}6RuoZU)cCIA{M+rq5(XP;{1q= z55pr2lU~Lc3OKw_Qa{E*&-4UeFv<{AH$VL7*5mh<1iw(p(Dr3z@W(mEu5Bvd-`B$D z2ZMimjrws9@EGxijny;h;Q8|Kdpcpr*KmiSM94by46g(}z}GM|b)Ui6XD$3RZE-(c z@cY*pCNE!2Lr+(LKaQPYzVl+k?X@fEfOQ3|k1Y+IA1*RHdyxq}zdY`zg`wU3`)c#u z%f%nTr)U|&-CAG43uM9{tQ6KSYeVjr8*2NE1(fMp2LFDnVTwB4Ftf}wctY7ikB4`H z-xveDYr)*w!tdq}^7W2}-gEuokzW?`>lNt#H4T${Ylm1qbqVm<-muXSJ|&*-DC8>c+LG-KB)N`RyADR?oBO{OUvuVj2ec& z1$=QPDuMNNJN$s2scu{SP)}0={Ms@6{sQ1>`l0^6IM&My_{*iMrQZaj=At-$Z&y5j zF~U25eSv?{SMk%iw{bj0G_t||?>qE^5o+p%@p!(ialJnwPa1^&8sq5r^+H(R9x{8a z##9R9x&rXO*P*9(RTpm>Lq0?P8lepl_ngVxHwx#S?|8mWU_B-^Eo>w__1+noZDfC+ zkF|!8@z8VjCjs}@OWpW4!&e$e7e zC&=t^?$qV;3M1#|c>W(W(36H|EW^K##kl+k_S2g#o?c+&y*}4qgzfUCCtcEv?3cy- zg4)&_^-f7f-d`~z5`WSQ|7Mzzc~j0YBn|~XVKYT|2WBQ+%6XCVsnNnaFatT|f+zTb zfx-pIon=_v=#4 zX8IyC|IoJGQmxcfJ+>LML|ffuk(qa}{dbO5a(FuO8~*SobX9lMpQ9zTOvm}u zSo<28gnXdMzhUK;q1vs`B*_$Wab?fMGV6CNiy>dsl^6r zgKH+4{TvD}2+&@XO2YRs@eYxP`f1yK=)42+soLx_Go-!^_XS?A{#xg?Ccc8tuNd#z zo^TV7!MwxF#$H;v&NIw>!|Q|Y+M}8?%zQ)CmG0V_H`C324uP>onE_u=g{L53!Js{@Td6Cuik;n73~`QD*p3x`1egaZNxl1E}Gd^+Y+J2W4s-- z#6fzz_+%TcQRhT6-_Sj>wbrGH9*4DWrM)g^idp}u(WWK7PlDuEIR~DW)m$rhFoDMl z_};SAyLL0pdIk3jG4-!FcBioxG$29plYCxk;?qbAaY``r4zrzKc9~+PSiHUEhU$8d%XXtUs;nlU5drZ6oKObf9Rn{stm}cf30%I#_Z!M>> zJ|XoNjfPavPRGTGp3M1@&)>^v9&cjh`*V(e#_ZBs<&&{yJ*k0539Xb%EXIo^>M<)( za6&QdhD|JfpQ)e4=}a4Kd~OWuccS;V@hYO_%#7jplYSPS1>rR`+7vV2u=!?cBet7j*8I-R`T?&ZQ_MWW zPxYHIs?wrL6ThJN2dU z%RZf#7{2JaadLN)9?#!*r~gx<&F?9qH*n1U5$87O@us8Kjq6KIHS-O7BCi?^ho+e0 zR{c&HFVvlC<{d5vFEAb$5XJR!ydNg`Um0tkiAKHNFz}rL)S}wYoXzn2cI zsF};Y0iJ@#AM*;X?e}D_TFw1eO#A}QmD%^k>v7Q4pzPdEdVK6h#q0sLdi>A4?FWLc zMwXP94L zonz9PDQ2F*+2Nw2OV=r8o}rKTSH~l-BJlj0{1^%kDy-y9(Bq)R6_wI8^tk)ZhKf)2 zWb@y*c2tyb&&i@!A}8(0*J0t8aMX`a6MiAn$R6shh<{fb!QI^4Pf@>4`^{Q?eN{25K%`x&R%J7(pxc)a$KmNt>&ETy{`=S#i zU(URP)yRFy)rk|#d_$hmhm>YEdhF8mq>?d*`*WChhgO3wD)s8>aoJTj6|1%5UODJ-osd^b?tw6Qf6Qk}(B8bLa|*@$nFsu=1M)G&$!~KA*85iq=PUnpse<~n zQP67~7549LW>b^)EEy?!FY`T4=j+hQntJTrtO0tEjgZ&b@1eoW#$-_4+Mmbf9~)1LgC${(RdJXPTWhguf5^eVkB| zes`e#w+3Up9mMaur0j3hkt)3(B=?K;^~(00!21uB`^EY>{G8ywJV5koUeD5foN2)9 z0IC1x{RP%%x}4BYt}p93%!3EH^yTp?^L>vqZRzEZJ_mWf#=OO%b4_r4dP5($h5dgK zdS1R6Ew=BC=l#3%SGYE|1$Eiq3%uzI@$=1jY)9E@FYJGAO1&`qNlZQF&);A4(;tED zDBlo&(Zg7us_>VP&-df?hwH7BEfZ9_+20R(&kU{)qWfjqLzD7l{e$@-YJA?AN)Gqs z=Rx6mxy}_k(d@jw&<7qXoTI3p^j=o?qPu*SDtBgMI(ilj>~n7Cnvi zL+*$1r=clkeITt)sW0Yy@`j@R=%3;x*N=NRw|4A{{t;f{$HAX*tn5JOXP&I@ z;JJ9IOmGdN@&TrP8vKmee;N)C0}s}Rq+U4u2|Ns1nqq$4EngV?*WICaqzWHlC_fQ? zuV z_?zDh@G;$>*XNabzD;9i;u+~C`a1I+t{rE?U$(387W{c>r<3XFNA{1ntFY#mSv(b< z#io85SYvReNJW1KH|+PeVL!4?`c3~%a7F$9e(uje9o{FSA4eDA88~P5GGG=>$?A;# z=yK_|e874-{7*X_}p%&BLhnI1>K|)}xNy@kTz?@@%v%>|M?Rr{I|fk3iRLoCc>P{9cOde^&BWh?e^1nqAylhFGZ~+}2fWcK2>mXb z%6MV^s`9hps5xvZ&l~d-XTrx&$y-fieDEB|^~3eEn#l9Q{(p;Jh0)i6P2~B)oQ(5q z80sBNJOtm5?-cpVe(6C)p0m_h?`=r$Gzqdh#L52%&!ZN-}z4f7^>!?r!()* z^)Dx@azBhXsV{F@&K=KWOF4gW4R0H-u4G@_j`pLd`98Y38x=L$VScm4xQe46je5Xuh5x<+{NuYIH}6eVezX+*8rM%v{M?&P-)<@6 zLHg6p3!oo?EqVQiURH`Kb{#||j<*nh5w0P(4;qYq%gy*D>)Tky>%ijW z)mf4Kk$-Cdo@12Mhr&OQx(uo(=LOE~ht%#(O$yW%9)O=Ycud1jrnd0TtPkaFkY^;J7-UEJ0HDr9Tem&dIjXvjAgT9Wsf8^*}kMBZl)2a$@ z&GonsFLs2!QAKzY*5o{{x}bk)<^TDsB*OdD33@;!-hW`c&8N7*?U7%tBz_G%H*6k8 z&}b_PU&ia(Qy;PYg!l9Bf3zpB_2uOG;(s4Awj=y)%E|oB>q%5VcRJj)9P>Wnr?{nm zPihfb7W-XyYM*;ub_#BYW96VHON=>K6OzlYbOMX%z(z}d)r`La$4wcGb;^eoE; z^%|G){Td_38A}6x7v}vk^yM4yLXIIfe`^_^e1CRKj-fHhR^SmzW4&HW+wR1`quo;G zH`a&Gg`kIxC;KnhNdJompWvTd&l3Jv7N|Gf%3h}Qyp<*9hhoAXeD{ncmr<7B%eoQI z`AKV_>o&B+`s|APw}%`eWAXf1%6XjYf8It!qMv{zu1^Y{r<2sKLIhp8Vu|M|Q}R`P z@=r#+u!)ag|M*gMCxBD3I>=*}`G=#S!>Rc;E8)plGacm~hO6J zx`lDVpu`Sr>;?oCk^Rls2?`=Dpn`!4b}OBNg#uy&1|}v3dk=PZA6t*z-Fn}(_C0(4 zxX*po*|=lon=jV;TkjGg{AL;Kzss_}UT7x?p7mwu{LOwUw^B7?0eFZ`_w10LOa+^z zfj(FYw`j@cyN0WH({C+XVArGl}Mqa$Y^KpESn(ISyUBif|g) zOT4l(#(Z-D^G8k8%J&gra^|BL$QZ^#8YLVIzCf7Wm4VUKw~M*W!g zjr)as|1a*xI%|$EdgA^7FX0Wp2rKl9A206j`-=L#H$1LchD>LbD;H}e4*;ke2#pxu|zyg zv9wZDUiK9FW-0V5IU_EAStWLSdd&V1G``*Xtic@rFY8Bijf{M9k^g@Pz15U?h#F1u z&?n-)!4F~blw9#G{T}DD>3KlyEBqnualJIHF%v7U!WrQ%>+5vBK>tJ0W9c2#o6qF^ z=gvl}MY-R%m|wvBFJ6bP27~sGLiH)Mx1CpJHF}=hME!a^@%z}jtpeY11AIg@<&QG&g=Ysv_D$X=}Und^YrwO=Dvn#B((te?6R}Old zT!KFG1AK9=nCYG)9v!-f`s{KN`61Z4=7@>W7x?D6L`+d^#~fj? zpZaA~l*oTLqIwSMHP7(%qy1X_-AnO&o5U+fR(fv3$zfASNk-`t4t-(NHslPw5mY2=#z|;JY$K`DTYviaV#N2bdKEt{fd0O zn}8=+EPg&KWd8@+GnHM6`s)7Mps$!fujmBcdWqPTu?6~nZGPUjL@Yr+zD;~T>6!j< zVF~I@H{$zDU_T{`Hks&Gw}JgT=o-@)i%KHiA(5U(>7OT=;`si2+@G<~OPWY0{ct@O zvf5#i*&-?aczY@ovPuC;s)B*VM$MXA; z#$0!7F?g>S{(O1{e3od@vv>~sk3w#%K2fu?GHO zA}rEX3+;A33S&!(*u+9^uP zzLNoe`!<+wHJI;{rBTOXMbg+>(04b$4`727=sXU4GE3aAebRW%e#t&2K(uW46ZPZA zi9baDJ@|*(+(!NMb?jGeNN>!ZYL0&j)$OfYM@D}p8T=`MOi&fvhc`i^=by+uTX=SKlA|gGRQ|K5r5uA3PN!cN*v3 z=~%T`ZOG$j`By=L+$zW2HKoyh)MH1>N!1c$%XPbd>JSYFxaj^1{Yao-K z>#ORw;iusu-}*j9{`+(R^n7cq@7Z$xxV5tNt#$B6tpopn2jDS^Wb*IW-@7)gKXQkZ zHS)c~Yq6fx!hCi?#(F1*7w2P-Zv$T868d{=l9RsYia%FsV16}|LmuBp|F&G@Fsorc zC@UjpD&=Oa0Y6TD5esD_qt)_>Mj2RttKlU1?bIE{M$y7D|@KXJa5jgs5_8saAM&PE~F57oo-ZYrPu+DX1@ z>x1#p5bJv@neJ)s;O^*w*cj_a9rnxW2sSW;0C++!oR-*G+$#-gc)1ZCk{Rs)5gc4F8iFGM&$A@2LuYw$}u_k0X`+`R*Ta|--a7b$El zdblooszdGue2Js4lIPVeD)D~;ddB>Bgn|Kgz=hWOW`!J?1VCGb9fp`W*uf^z+Z z`>xZ5xSrx8Zm&2Be-{(*6K$m0T?PrOLIwU4Wx+eNlNQ?#g#Xk&@KDz9?~tUVR1fsK z+66y}Y7+P(sd}#g=)bd7N3|q0AEo;BM}Bhy^`DVQV;}E7K=|y)!|y4BemNTS6Y<3Q zy$0{Up2o36ejR3uSLmp=h4z3w7JG{qJF<0@n|vi2cq{an}{~3sNZiJ3v1Z zZA}NkgV;w${nO}7N8`VxTOat}%*XlWD*SW31ZwVd#Anlfrp6L4^dPc_|4SxvDc6y! z_YzBr8lpxx6ZH-^xL&0D=W2%6iO;y?VuAT%IiCkNhIoljHGgX9d_(tq-`YXquXv=T zde7Jzw?ma zZwr6H#?nuhamw2XX$HO_@MMG%8LGwyx{Xz;`lK0nhsF7$73)4}2EJkY*ip*DrfCMg zq2`Yf%9iSBoX?`1=eAkHm2qZiI3Mfzh9#>)m1%GEyaVwQTkM7^i%#qL2|AB<5g|(1 z?RtKK&Oc9&1u9L(>3IywUmt$wrySMHHSi6MEPa)bdUHwN;`8d?C4-cRAE~TIvWM>) zPvzd>RMPi2UsQB)fD)0HYTzA=7P>2Ez)$?gCv10gQ=W&ZvBmYiO40x|-Z`_6f*y~C zzu#orTiMx2jX$2~skE|IV=KSz%7v>b27aNhNjGJxPL2QB+(kLHPL22ac2-u+Q{&81 zveJHv8dupVl>UR&_<4v%`2*hKKR#mig-%LtvlIjGpiOg8mR8coqz5F-a#p(ENH*{d z<=?bd><=V!eu(s-(`(u(zgMa8pvq3l>lnQs2KhO7#5pKkM6!Wzcr(jRXt?=VkprIgM~;`&zdb0}96{t%u?oZll4CB{!tgZYN37j9K{D{ML8|Ck*c>X<<<0~3kT``>& z&;G-7et-G5iZaGF-oQJ!f-U^;LggKTdsI}0uZ}bD4!1v*SGJ5|euDL{{j05&h<^H* zc!!8l<&?-4YJ94#l~UVGji>y!z}`*e9X{*Km4-TfO!Z*_OU;yri}W$+TQLD;k!#V% zr0=zBR7RQXs*fq3Y5%U2Vriw1i4O=rXsY-=Re6WJMJ7tqLu&kGu(6W*e}01Uqn%qC zDQSK5uM_VO`}emlxRDxPD)@=HP~{yCdVkkBU0373rM~K{3f1_|?oYb>WHq)J`9Y_I zsPVPh?{tOmFCe|1KJUY&*E+WfYD|2D`>rU;k8=NtIcd*z<%g>Aq~>>Zi%v)3{_Fi5 zLQJmf&i@ld`B?B|14MM#Zrz=;(KH@0-=&Goa|3h@*Th0^m>^O8&62QQx_>suB7Ztc zB2D49o0%@qG>-E363wyrPTCBgIOe^GH#kvNt9@k`XW$i9Hs7VSDW%4xHxy`_+>7P> zI{kgAr)kk9GOurEAjP`0={*Akqco@=?==FC; zT4~SSqy8#-p5f(!TH2iLYK&)CTQ5P4+ckPq?CY(@))meaYnrMt&Kt$&!B716ew&&k z7h9cB<6F7?itA^qap2UC2jalP{KqfYy80h@qfuk*zg?bHjz<2nDf=_zJ%80{_Jt?| zkFfo_v+MS;YP{NOrmF`0%YS^swJj@M`>mT}hy%7Ot~)!c@%(>3xL$iW+rTd@xnd3v zbTzIa8fXsIo^9Y4u0?dx9N#|+^PS$0;o8H28ei{O2A-j%eW+&Io0*3AV(H16Rv@O$4qA=*gQDO3}N#oeQzK-yZQDe70w!*R6SQ`JXR1Y3()fhGHWBBjs`I?>C6#l80mhA_>< zzAZ(rr9LLVdH)u6s4p8udWb9LXHEXvwxXK-D4IWA>6tIEZ!gAm83lcCGC%);gW8LW zTSrp;qATgCJtuU8{;%gB@EIC-q>0y`hqK;D`s3+u$jfyaPWrJ19t)ZWSuW5~!`Od- zGOg8jfT;$JkUKg#eR3ueCo`fu>Wga>gD=93-p*4eD-^+y(FQwMXsGyT53#yI~x z31mHwo-z7;*SrJKKOq)+L5$||7d!B-0hk}o5)&4&^$_kee3*}+J^0c}z2UFt&HMz7 zmyag>P%q)l`VQ6C=A3hfo;k=+Z+m8jhnUe`AEQT#p#Jf17JKpdr0>we#}_q(Ui>_g zN2cSS!D2z27yCcZ{h@wr(DWR^axk^h@URe;$_4D)SoXy{jZVu@gY|9xZEG> zK>_-`SPD2*i@9z4GfzV`>PC~2(T~-g)*I$W#{NweU7xz~d_m98%fD&R6WzETnCg?? zES?8mx*zN5-{0U^_Rx>bD*Jjqw&f7 zM7Y~Tacn>r*0-r1)>=1COzF^>^+D1ss9(h3BNFC|E$k1m7ySe`Z_to`IoDh2zVyR+ z%$5BINN;tn+FP_L?!^2LJ?}?N`{4QLWbjjc7RmT$^BF@au5CbzOav=0DXRcSL=l%TfL8AA_4%i=- zfnKshGq0gH_@wsy`J^Aaj`k7fHn!vWmgb8tP5jWGupQ6$^nT=b**C+9>(^=jfgTQG zj*k=hJK)@Gg5Kl9gpIc&`xD^$qW95I@S8rh*+LF z3H3I1tcR0F!2Qz7C$9DAxAU2oJoG?&f{hG!6X6Z-wsznT1E9TvA^eVqI&Qcny(Ub`K}Z&mOS-T3@I zc7qew<5N9I^UMIzZ;TVaPP|dT_Fxh8$+3jA6w*+rABkmiN7m0UzfR-xHu;l`%xuQDy0h48U)0#OFowXbGL%7x$zg=C5e3$1U}=pXgIo-%o@1iaoksqQx;= zK5vqT_0u{%;c;1?uP@EnKDOP(Os$@epwByasxx%|x_sUtzNx)mSJ9?+U7Ekx&$2;^ z5LS$7%`PG^K zr+a#(S6}Eo)%iR}yqal~0nk{g@%^J`?z+by@w#UxYu@sSXRFZ>i6r>epXa+A1%h2Rp#?3z2Dmj<5 z&rtz-bWNNew_^N9i+PjF^Z1}1CGPuTQMYW(>lxM4i+TKPgps8zihAue?_}tG03l3GJoW44R2}lC=qFA$vhG1 zU-xQGgNDxiAds)KmFmx&jo)C-yy3+LwWLXJV=zCMF+We5J=OV4NipN`P2Z=PMZ72r zeuAED8b1$a#EW>ubnS?D7;-pHM1I!u5p<6mPmUFvY|Z)ikq3I;j9B!~H7lXBG3CRk zf5*X&)XyS}`3Pta$eCF1{7v;d2}`FSZ)Cyy1JY>HMvQ}pi3R#qY-7I?Z|kwpAN7BK zyl;^h{xuXH_!hL@F%Loc{waqoP#>b>diZ50eV`Xxu%8jlKUBXH_RE}kKFWc07!Uu{ zZNxvI?iDrBWj?!sr#0vO2;I|5HQaDL&H4KfQ~9Q`8~7zNUcV?Gw9?8QXY{hP{xVO{ z;jo*y@SzNzmz|tHsCAdnevez}DEB?*g!UYMgx6OScP{ljF}9wH;M6z!k+b@IC^ zx6Tyz_XhSyU7&sR5pAEC@V}>fK+m_moeAxyxxPKz-c7WfYRu^FtohW=vRUL*ef z#B0R__+VZ9%lZm=67@gh56<-u^b+FZkAgKEDjG%oLcZEcA`LaS8RqNuKbV)GIrUzL zIbcw~;tXGmTuOqd&@f)y-2R#U1K9I+RucSdKC*sF^LO3SdYw*lU*ZzX5Qq#Cx&QS@M`1$Z$O{) zCqDpDGh($^eg7Ktl0fE#&pWIZ#S5<*KA-rCBmP&QkLROaZJ@a6ze>z$cNz7OZ=tW} zh^g0BikmOVA4328{qj~Kzk31qr#Af6_lV!&E8$0Q9(rdziNnM%23J ziX}NK&~M>1^cid9PqWdRdAS&GdJ1~uJ3OBWxR=Y&@8kshFA8aY!2L_6H$2XIGL83k zK{=>jJPQ3_2i8v?XpKvSHti7e4m9Ua_stfO2TJgICFU=rg;}V{P~d-15qiv4?EfAF~qvE2ndaxR|_em+|a251NC<@Ee{$1V}KZWn@&v1LBB z^4=xrPqR%SFAF+j#JpO9o-tdX?*w7r@)>)TOi}63Ch!8opr4eM$d6<6`vSh-RFmob zKJ)*65V4f6m6Cg8p+EaN_V*b3w3gIiU6yD%I-mcZ_%-9o*`i}sF8HDdtoL?O6XP88 zQ&|JQl(NvXx=9;n=ZG^|)DNSf6khBlb<0}@W_AU5fI1TC-yIIG5Kq&VGf#m%2mEbT zV+~&hp5_PbccnMm!9Zp##rMBUe5RD#W`n5sD+~P2G2U;KuD%J(Lnhxp>fbS}`xY=l zi`jpH=9H3GTSeoB8SLjk9^Q`z7K+@gh5USzzR){iJ3NFI@bg1@$G+n`pvTT*zXH-H ze0J=_dXV;i{@@g}-d(~dZ7%q#Oo5yRw42?~pHi4Vp!&+*`}YWVd_wQa;`PAxagk^p zki>saOw_I0d(kf>f&ZRj|IhoxkPh+uI(f$A+Z+&0lVh0=p!?(T&jIweivd59f%&+U zXA_|3Eo9y$_UJ*;s96NRPS053phF_0a5V1Ee9XJmCA)~j;u?4e+ON`_ zd)Mm-JaEFG=cNkLlLq}fB61oJVgCj4yC@TL6#epom^YyDM0|wFs$hQq?1;9K=hY+P zSL9%h$-nH**~8!phx6|*6Eg_@>qo?=lu(Xwen&sK!>Fgw`%Bo}357m(SX8V#mid*q zl5pw!@B?Dxv#HSgHbc)DFExI?AATV-I8JyuUh3Ry5By`|m0%<{S6~cgwBd%TylX^zyCfZ>IN)AiklU)ix2GlWO1{ z-sNr+KO3YNVr{!ZoQIMO@AvX(p(wCd{UV5WIGGV|;2YKlZWn&l;|y_z3;Iz^i~)bp z3giEgxF~HGsGc$K4w@kaqRxbgxE~f0)z3c9DF7cAVTfnFE)cq;(Hs;1kkV+Q*x6{L zfq%H&cOyJ^Lpdh?!EDe*^rH%49s=iUX|2OX^i&Px`7S%cQ!<;%H5Ryk<&n=FC^bE_ z4*eCqFyHEVh@Mkdi*6;oF&{LQh*v2)Yb8FvE7r&65*RG$T`tb!b=yM^pNsv&T**mE z#hl(68q9nNbC?wP1WdPkBlrU>#(KU)vh$cN(l6G;{E#ETuR!|LHXJ##a?r=uAz!>s z+U+I4#6Chj_(|!$at{ zP#@i2hDVnCVn>Yw=~1hSZ3|;%Z|m7|n9a~)7{nA~E|$}?=Exb5d(hALR5ARBWh;}3 z^1YhA#c35*YP-#Kf@<~X@y*27|#GWpus(jeKowZCjSyMcCR zP#WUNaw+u0=y154_KsDNwv_i2{QD@m$M(SD?guP%-qwTVq-xXg`43%3xdiBnC$*Hv zJ{>6U?w_Qwe7i`8x=-di9B-GP=4P92a)yy?(z3jKbJlJ2P(Gle-wGy0j>{{BJ?JqV z*f#m;PX~F?LPzuycnH0 zG||h^8vCa(`P;x%a;*0Ptp63j;|0r29af_s2k~%~vHpygvA)SCO~B86sf_X9Bcm6X z48LXM)vBN$j|MzKnk;{rA(mK^-$NC=zo%U3&@kpF&YpQC=~lIs|1|M}=Xh1<{ioqi zRaXu<(MN1QQW@iAANZCE^6Z5J#F56;!S5Y{UsQD&o&?Ar*1`OCUuv1uMn3jE0R6yh z!K;>)_xJXasefAT8+evK?Id5%8z~nJ#(A-zA=az9a=#A7@X+XnGq^40r;}2z2meTi zdv+5?w%5h@y^sCH2PxoOcTr?n2mI|`obOIZF*|zW3|AZTn}xh?*}oF)Psf?n!SlCI z!X843Z!rkGVJ)oRZzPRHJvn8!uNX4M2K$@Kl7DDRxm-S8>=ds>)l|B@XL(euN@Ef~nKQ0l!{Vw6Vj`l9lAEi;A;m9|C(9zzD_^~oQN5QY_ zImX*|_{7$ihSVI6`mP5$^0TA)e{|STtT#9DygfmF%ti`N3dVW=GMNht z9zyi~5Xgs170!5|AKO+Poeh!ym53joIlMqe{sH|u^p=PR*td4Aj`S*=kEOk3yhRI_ zTpi`^XnmZw$Vas4xDwA-0-x{Ol=2hf2QAeR`%LS7=@MVjuVx1OJrE-j+0$3F+nom9 zBLUa*GmetX}6W5~lj;X#YU_m2p$O#df8ij(7#?@1^zh7T>GL%sbFMOmz0feDBDAPmDX| z-|Ag&0v==q|NG08y+v^6nmRfQ((BWWy-^QR4t^TT`1b{ULj6etW8AMbxWCt+_xcFG zJ1@{5BNe>)PC?_hblxQ`X&1yB(|85bsij&VVm{hT^hf=|Drj)t$WtVt{wYh@&~B-L zf3Uo?K=?Dxh>D-u$aWrH$MFBZ!FK#?nBl@8+KqjH}DSo z-6tv@?&$`;q4b9F%B0TeoR1|wVR3k*(!O3g=Wl60PrbP`<<+>^oH0t9zbfz0G&x-P z=ZT(opnpH7#wg{$RW<(ZFkFeyN}YL>Gl9e*Myrf1S_yvE5!l zO8rJ@2Hs)KtpKo0X$C)sQIC9;qbKJY{2byEy_Jb8<{J2hOyQ;coHW{RNlcOt~choR0EIT z*|eAPE?157&h$`f&Q;@=6T8DtLyaA4byIr!tMRGBU6ekZ)%bj?&PwYhsRq8G%neBi zwo+rW`9hJusJz3X>8{G*11SdH;qGJb5Gzxd4HphSly8v0i_x2~_4)lW3=4iTg3 zC?_{1@b95q{O+o?lzF}h(8FA~9y)JZ4dtwHf`NBPQmQG@Me&?3r~1Gyuc|1?(eadD zVtp=VNoDw}Fh9Y(!%5dl%7|9_nDnQoMip_kP~*)<%PUu(s=ULfG;77?s2XqVRZcm+ zLLZZ!HodNu5;#F0lg2XimWA@Yw>~Bfx9MtgaxANWVWr>8 zyuc-+GRjcs{r|=DkC#%GkJZP-J2)&hRi<=M<0~O1N>5XLOnSg@2V>>fZIyrMX=5AT{yhDTjA9M@% zMjLpCq1RsOz8#8Yo`v$UEf)T(n{XtW^HbEbGAH6=U!hwvI~Mt{7>UmF z^(qe3{XQ6neCAk*YDR8Xbl0uSR^#|ePqcOs@djR@dFeaaH(k^?-{!RTn@v3Xmk`ge zGJCi7^T#*?kFae1CT*KjYP@F+dKuw<{>LlKJ-k%=ZJZk8J8A!PRpTyQqqK>*pa1a( z81vc>Z>gV(o^ODEllIv`H9iy7OS>yWjqg}>(6$Ow<0o4iYX^Xz`0w98538cJEvv?H ziGPZt?#3ASh3R!~7Z-0;|z zz5LLhZwAjFq;J8?PUDxT#)+nDH05flvGLChnu1l+`QMXYM+=|5nxNcitOt_*T0ZKm zrqb6bm@kdU?@L%jzt`-VGLgo=hV}@zdzgxRoAJ;y?b-jiMu3^n^d8520?pBPI$MeR z*CGvZZnFwv;Se=GVO0hF%pyqd0f$1l-Rh!xFFhYYanY`tqT7Zsq#wBU03^SmPF?g5 z8%_0mIX*fdP`?;=Wh*= zLnQx)hB%K8ga3FNp&1f}`F+2J=I{6ej$+uZP||zZA0Vo@18Ss0S>L9=Y1oH&fnlVl zX~-kOyp|AEBZsmcPkMXH$^!l8hOmDC@d@AKI*WuZAzTkm^ZoFz-NfZp!5p*xdZsJt zd4hO+f*H{a%18ZUtsvIJsUHdD;3EXv_E(@B zsZW51NXqr%nAY@1$)ulok$!=Cwn)_P1tRCGf1N(>$A_WtSny(gf&8}MS0hSFdGYrl zUZvX4(c(k)K%P&i{`h%OBzhR>W8zodbeSlk@;&)=iit-rtfj`o-pqjitp|9HB=A8W zHBS~siPr}P(E7oC5m#TuAP+x)U#IU#b&4*F`qT5IVSaW*q9|3WKkbJ#q|q%{oeW08 z9s1rX^4}5lR;1#5=Em29cn|phh%!ChxZaoc^5;jVL7(kM-;e8GcmJLXJ-RRNzllG| z9yJ&Jr~A_H=l#!`kEvpEy*~8&QGXUB{{5OLOp1C@zZR}PTu>!O{5;(QdO7vm&4i!P zEY#O_2ft9Pk8h3_{s+3Ue%cWpc-n%I;zGAB^t_;-Uz`|}KUAbu?TmW(B8Huhw!|P)kH+}6Lp+B@_3;*xvx9UL(Uu%f3S4r z05QwLnfVlo$zQO6R|o$06c^U=7X7!iH~f1#KbEP~o_QvkUvBRY!1=8me_z_;U5X6G z`OAs-gSaP}J~M|wQ*&Y-f$q6|zv0MPJM!!F{+Dl#LXWhz7!Q^>e_EoqQY7-XZMj~Z z_6z$Qo0k$m+23b^Lb1|v`d?!fvfbo@}`G~U)hv-396qrcXWgP&;;kRx!^UBEAQoodYHx~#3~R2LcGV%NsajW zl0Lm`eqS-@Wu;!WR31MbHb6qIYU<`Y~xL&+c|bznOaQgV-hL`h)QR{Zbd-?+l**m*U;+PUN4;yb|S%w!Q2i zT0E+S&%X>l!wB_kj^g6NnkD2#J+y)|@=wlSN^E$(pq%>jPFNlOODLr|Ps`BY%~r zX|~r_jNDlb_oEB$laa{U5F}h0R%891^v?ceMxchHD*GvrzBzhTgy?8lmH8da2cl*8 zIIMG(G5>sp-;W=>;b(|bZ7XrV7~&nqEQv-wwF3LKkUzNZsaW_Km*@48Jd>y&McN2! z_&W?lz3+1|H9k(<`%S!q7yNSWiy9(U^v*5E`2qU-oW?O?j5+y3gfmYtryxo+F}C9U z1TkpuZqF3cEUnNF54srYWd}P>7b`|uvL6q6(nud&r-{JL7C2vQK|ae3`LmhguQ2EN zd;0Spl6P^87?x$mpHF@O{e5FapG#$NePW^iHI}L+#i1Xn8S^9b`s)_)B01We=MTzH zxi^c4zG}|A2-VUyTNaCaoCTk!Nz)&HGDZ|<5}z;!>&H7WaBH+Mv9@HMX64(b;&$`d z(CjUlFCcxcU;k+$XqYAUVe0z>m%bmdMC7qDFmMobD+}UB zx!+f!|3I;Rr#Y`bbWN%kd7viU4Ev)JE<_!fiaXhF*sp>3$y-O3in}LXp+CWQjL&pvoy&!;@=N63$)97ssH0ga>Ww5m;yup? zKV4RfU&o$uy&mN-pCzpk{p&t~KgE51y;f*0_J{v+y*%Y4kN(MpAIBrsXQ|%<)nneS z_z?N;1nRGdexi9|RpEW+6XVKzhP7bIZu8&M z{@r)OT5+k}E#@ES-Wz<_<=Y9zE`Ar6*=fkV3 zoKNRDX=^_8(<`JWU_R~+ub_PRe_W>eN9M=xf6RlY$VJw_X*?EB$`gaYLr^ZBa=7Rd zFXsPyPRSov2l_%5w47Y{Mx0zPCne_tB^nq^B+uf7Z8Wjp7h zbGyT{V%83Y_K#HKM1B_6?-U}(*&Ektk!WR|C3ZH~`$NzgO0ORuxdr@5B>cj*3+jKd zW5p)+6QLg5S7Nh7?9l?~UlZ|s7)#ymWC@>F>p3R*mo{u$ES|Z=uph(Lp2pHxZ!Kz6qnJf4#OhIK{ka%rg-0aAReG zh?zFo5Fa(&i1R(V%Ko2+=;^;v^e~I$nDo$kD>j1hQF(~d*EZrjs^=kye^~H!qqtI} z=OKuHsQYK5Xm2uvc?jx{A*OFYKcB&vPs(%s^?}#9V&v9=m~R{7{4rW0KC8i)UYIWu zz``U*@dq-*iZ)%L-zG}KhbO|1WTDtSMuYh^NxFG1NvgGS9`x-FG=885r=Z_JD$Y>$ z;62j7pQT~EBtnmDPU98+5%bYsB^q;TJ@_9jmT;zmMjV2DM+NRTfL>1$^($>w{-=(# z>ndA|q~ZoOgniHRy5oJH;=FVPHT?H9H)8U1^%6|w;z=JR%ukvMgQInY6Doi&C@oi! zdT3sh@`Aot9sMz^WRKydn)184=o*)?kuiSdc0FFYwrc67!`TaeUrye9bp751|1{Fg ztWp;|LUkEBhjz@XOIo`-{lH&%$lJ$yXs0cIsJ%MP1O5kovgaI6?S{0!@Tce}zgr(6 zx0&doT^m;wpWh4o#bi0%vaB}gdt20RyULZ~#>wINja{GRPt^?{URUmPPm(8}4b?2a zy$W#|@C;Su%6oTfgjB4Q6Xrc_qx>+oi$@X7b}9 z@N1}F3H;kSoUe@JPXG20gTGe+FS!|fWEuIN2mOWrXB+TrS}CK3m28~vjWx9{=G!Y0 z^$)3%>5K1gi~ZAE_>0)ft($lY*R>77ca)aFTgkT+^jCb{5d1`W87UC?cpDFKx=%x_ zzZK=iWjf3EetV!NRReq|je2mQsjUp25l*@gA&gH(9ZAO4C}!AImtUz**PdUOd8<^w8Ye6NI` z*fr_m!a(TPmGJlZxSn^UZ)<}@=F^IJzIJ2$ev(YAhoHux0-mpm4p_3>z)Rb}Wnazzx?gLJ}9kg_lt& z{GMv?Pv|JsHX8*G03*zgF5q^nOT7Zd(G(a~OnJR(9ig^JA`@3TKam91r^T_(fCqxS!>zX9B z|JN%z%9qgJw|Eqc`SL95|1+ytOXmg-CjTys_jTx(Sxq|f(qEkIq{H*Q7x}U}Qvbnz z;OmQYwDyu`#G~WBVAgl&i02?ae(%4&Sa-JQsJ9xeN9JSwkbf=!50u8=x0{o{*z`1? z{Tqls_*63hJjiPFoKNEO>BBOCsQ1dj^D>L-;l$%^xL?kT@jS#57a*?v^+SK$bRC@q zh@Z?^>L;$+Ch6!bMg9&{-}3odG+!Uu15W(pD^P>OJOrJui8pwfHd04^1hj{(72}Kk zR)PF|4}X5f^=seK`=dX}N}Pr6!wZdgjIKI5KT^F6cq}0mv!zED5Q|F`Z}O!9ZLre;;D*FYNRac8MR*zb6*__Xc5c z+aLe!rk2h^#AtM~2}C}*1b!0!ydS3ei}FL)8+eHMB<0A| zML5rT;CbjJB}|=;wRE0=cd&UnRT>{?{+Vv@ zb4Zvq4*GXG^wy=!@2@W%saRf8%m(=@7pJEg z`c*tl^Hur;r5Shy@G#2E-fCP>JV>!~QscxyUP@kFHQxEwQ^|o}#eckm-CPf)*$0(( zm{q>NvS;611K*If#Z5`dRbykfe#*O4HLmiyk5X!)8rPZMTUq9>#>n|8A3CdXv#ULn zGtJcat#fxJzT8~o<9dOADT`i+U6r(tD(|rETxZ2Yn`+=2szD-NTzg)6`cc6Y4+s-9% zO!={sCQZNtBpG;zoi7?HKBbZjyu-i-w#w1@iTwL$Pgv?yT_wad5%~)}@31qdHukD2 z?_eBWQ+b|~VBj5|Os}E1x-&1qd_%8V)s?0W`WRu>2b@~TPRr@)ObUrxiUOXjW>5RQ_c)lOK` z!Q%E0UGocSyg%-n&T+jO7yG={nVyd!eFV9vcEaw*3$S8p{Heos-7UvB(x-6#%z%G+ zs4nMRyn%0++crRVa7#Sun{IJ?WP~dMf)VEE{xB z`^-MUz$^4}yavNRH6CBW;QdMaA^oDwMD)YJ{roS+9IbuhA5ZyC z(!VtBGgfI&w^n0lQrb~QY7CZJyYrIDKit_JuPw+|tRcSHxP`XU@mSJN*pK0P*Xml!>{tWOper`g5)VV#Gdx{g zQ!d>tZmUt_d2(@a3j9R=dmTJS@tRvI{{a27IBQD`>x=a77blf2E;~z&o%Wj^Xz51$ zgq~k;+8@`cP3;)2Cr8f5b>~|PSBIC;q^~gFFlSP@YsY=jRFB2|Cf39+b(NE%4Sd5Z zy94N#r^e2=Zo3xNSK~UH|GJjH7G>ZUq_hg~P*>wm9c(r0ORF(*rsy|8{Z{mT4p~RL zX~x%|W8fQ*uhrDvGusgR{vDwytUuepH`I!mrb*d7%Mhdgvu1y9H9j?FfyOO$dLh-g9viz0pFa)b*_idla$~Ndhy7&M?}*tncYLjxe0G9?PdH@v zS>rNTjRP+K(&!G3XTE{*y%PqQpl6sqra69R=Q7x*=y?c=_q4VUxBIGbPv>&t;qV`)6Q62Gv)sD}7gJH`;Vd00zW_fg|Fv+9Ws zhetCn0Vc#X%ex^MHZ|7WY$7s_h4bgp>*+I^iMchyp)Z#uKEXBQMN?7r*htblG*p9c z?%YV+H5ozU4?J!K;87) z@2fEOdqDk`=1Ny5vEMz6$0PNpxVFHV<`BH!3Jt{}g`J>34ddsB_=mNtJBdXNhVt`F z^Z7yaS3f#o2%afK?{47$bs6-(&ssY?+SG0|s+_F8zJA@Ycev`e4=%Xp9!*w}HMD2tDg0 z>X-*>%64fhc2o>xeT>G}h&k;v zzTL&PsXqL?k%s%|UQgu2y)oYuYUuBm#`HnY5O3&}7c^D2_7vnNy=UJbn%|kHD1EfQ z7}#JC`)QCq=6_?L5IgmL5#*6;U&$Z!vtImsl4tsJ>!I++)cZrweg}J65!2O+_z;@E zH1m&-LBEQD%q!CUBYpR&%RuI5Fd=K2j-Dh=@AEXo;XkJeZ97lQFN4|NBYV_L_&Iv; z>vTQOHjF}l@&WvQ^!{f4G5AdbuzyDFKQy}2ed6G+*`LO{hOTdGk%0T%pT7_J2kdN~ z1Rlnn)+-IpQy9xBqI*wwdY)-Mh8KP^cy%}4Pf^`i04JoGY6wCHZv6W?ba>m6y= z#*4qU-SK@6GCv(rG6FsmU9mnMW`DVfxr3p9c47Y!+OttVfGs65_Sc)ihYx|?&>j3g zj?}m}#O$E=s9025u%A8gL`Dk*zO#n!7x4t_={3(4&&wIypD;~SQWsJ9r;{O`*}JQF zHL4T#XZ!i}brwCunDZ{oClDVoZC@|weJ=m+FEU<}wy!UEjE;tw{0Xj>((@5?PmI5K zpl69QuP5~HsUPOO!yS13C4S;(rk@C@*Ma>ih)3$BpdZWp_Pl-*pV4Yn82Zn*=lwE` zVdu7yqFY`&@`K@e)jMY=irA-4d_Bm2qPW2{TmvV*{?sp{Z@n4lKkCT)Tl&2XQs$ti zT3fvTJobOE@s1JpHyrT(%jy1TX7-Llk8cOo6N#6idf-)s_Pk%FF?r`~oLD5;v;P6~ zIL-ARvBIjXJ)bXVKYq1T4C;05xqkxny!nzf8~Hiz*TMY5&6l&8f1vXi)$>Y|V#KEo z4p?8I!yv8|3O%@u1NQ6dp&uNC{uqOv4-S}rc3?al1N#*t%CvCc`GfrT>3NAqKZ=YR z@EHa#uzu%6u@%3E&eo*Cm6VDQKZdl${Q8vj*ihdv@H>v=4}*FV6UnX55Y$6D;(4!v ze1(~0`yxm*+SeAmMLGBlmX=m!1R+1}fce)5`H$~nfK9M4o#sIE5AsQ+INvgDxjp7n zYxsSdN+D;5peG;o|1g$F|6P55DEPP5`2HVQ&z(CyNNgx*iR*P5dQ*u=PVg610$cF? zr0<+pW+42HnzPxp$!M1ex@n(^bFLKToW?}dWb=Hn}Gkw<@5aU z6`tS)n=mgzJ&Zoq^AvGTjk&&_@&|Y8^#_mEi1lOg4@kS!OHBRPfO#a!KNuCDzI|^4 ztly_OUvTQTJ9;KGpyvbU=YPfS-+jdv4_om5=W+gj29~QA*6{imUq@LldEcXlFw@lI zdUnzm4x1+Tecol+J&hC~Z6EAja0V z!Smc!g7zytJ?124tgS)MAN2m_qU=l5*x#-}^BsKguV{?jx`ElM!Q+|cw?&iO&@-Y2 z^yqK6|9*V^sx+v9_2UNb-|MaL$LCe&=Z*fJ{5?|rs?+!5enw|54ih1ps^R)K#_!1k zUlESyvnu$%SOL$A5%*(w(qIns z9cx~%$P=k+saYaZSTo;5?Al$wnb7B~c>h5Ag^_`%Pr75t`~a<~xA)IP&rwUxPtf%& z9WfjAOnUzZN5_xw_m2_{+gf40SONXMfpqTB9Q5z7#Qtv)>OCE#ZXVI753&F+)0_33 z;2wD1xgQ1cZt&;sVhcZqS7rJ7VZN8vwu%!CTbHHv68g(nY4D#o@E~QG4?y2CiTo={ z=UH(520bHC5`>+HC0`$`PpEy41=C{1ej~)cR67_2f0=Ul{@2jIqPbLR!3@!JP8eYmz%wazHLy0l{Ff#zWf+_P96elze01hLqTpGELfH>ua*RVm2areD~J2F0kv~;k%RdHeX0WT=lSUEJ0E=FXXu}` zB$@-LpFzl!kI-+La{r4C9Wq6uUGJgCG(vsr4iVjQDRPc)k;7<)`nCPY7cNJ?_cwUI zci=0E#pJ@3V8ULpo=vYuIH6yF<|X)mZ|F}^1n;9YqFVTK=#kdYdsaa^&J{HipQ4`e z0PhF3AISp``Iz-p;tiZ~^D)2v%laMlvzyg)9nK36p*Qs){Zg}c@_OvAAD~~mCv@+( znu8G=MCbSSpa=SrKY%9V*aqP-`Y!6@L-hVMGYiB{t2@a56NhRhLd$Fv9rxXW{+x>I zR}uNZ0wG2I!@L9CuU~aGij_e(QGb3B{%66WZncfj?{0txF-E>URVYOT;1{leN2$(y zK!{%f^slSnJL)6(d_U%prx(Gid||(h3eVRI+jqTzVIp!zm_q)ce6J}4&FdstsOslhN(a-)gzW+fUFSQQjqu%W#`!mpfuR^Ch z_!%7sKT}yECSXy6T;!;ag8!(E`ocu?uUjLgWgUh-(wM)GD7_l%{~@ktCJj0N-b(mq zl%T&zL)0VB6@mUML~;)W_uCA5P%QO!0Kcij^}PXo)g7$Oa`4i{1|Fl%lV!p#;sEs3 zUEqy+px0RrYM%BnA42)LZ^_wW;a)utLGx{|T3O&N_dp+g!})gK1(_lsco*{?w8ts! zkp+LS9q?;7&i&Uu>;`Y~wvhc!h<`9j%ffuJjr*Yx|2*hsmN+_S3;RhB4`AIV8|(Ha z(ig$^7)eq2*`nv>0`MAHl;4!vlv;{<#`WNH#z229BMpm!Z?N$?j!D0G`g1AzTY9dp2_9cHlV!q}0MS;$&ea z>cOi?T|&A`$HwMkzFh*ntc*nUq<>$*qa!kd`69Z9*^~W3wsX@wC@H`6? z;v-4_Z}q-V7}uDO`J#~d#~&Ydpx!*4c@fe_ehk?K|EDw_|5%^V+i5pEky24_yOO+1 zMdXb=qJ?J)#?x}FFK2OH*b9HBB+N(I;2RE$(7OA?g{FyoeQAtlc0C}vhsN{$Aa4gF zmtyFTvCLNx@A=fTSfpgfvY!LZ`Bgo2sDFqt@C~hP6>x4*?3X}$xDSOT;DBawOmoWU z+31IHewraxx*invp?V&I7_$JgL*Tq7D5PHzvo+?`A*{b+Ii@|Gx$_Ztf`vmrPv!pU z-+Pm%cNp^vv_E=V{}}pZgm6r2#G&fP;Qup(|NiV5E2;UjW8&JDAf7)c?*920c=iDP zd*UDd8FT{m3ck#5(RwQ_GXphI^m*O5>PNRm_o#!Wt&Ho%1qJcNn zt3&^4Bkj3%oazO5e1dEj92_CT+U#&{Wu=c%XE_XT=l<;CFs`(XdpQQ8u*8~*6ghPdhK0`b0Y z4935{Uqw;(0<4cw%r6k{K>cAJ*~~J;rsf;LXQ@1darj339z731yu-iRjnJ1T82ldY zeS_b_*9e2(LrIfOV(i4x924&_%4L)2dt!uvcNlkW1Nzy7;`!F|4o`gY#F%OR%sbHU z-?w%N{Qdf4JSJj&OpunDE*3XdlK(@JH2rxZ{OcEjckc=wC0Y7&C0V-HVIFFPT$yhe z`*g0fX$d^p&N>p$f_?xCBsx#edfgoJX|_cF%O5yZ1njBH_40x9bEN{eKs-N{ptmc~ zf44~FFBN&C4DpN-&fLe$Q1YyWdrf&-s12Ti@SE7S|t1 zZ8}D1lK0PtUTH3Gd~YI;>Ds-Msd*pp0(H=Dqqf}dzBls8*61J52VMiAa;xIG+Q^j_ zI`j^bvm?Uguaj46x5kvyQSXiE&!@;9RW@i{&Q#awR(YcTMYIfmDD9Vv&2<%gJ!FhY zIXF8_i{5&=2Q#{%U&lv!Y+8(l$MjPw-Yhv z%Y%O^KzV_QJZp|K^AVAi^02=CghzynusKzc`UgSJe=lXExuU0NMa=h^*uOo6zl|&k z+^S&zvlKkeBT09&2YZa4|C$G$?t?`BftL@~#CYC>{h0~#3{8&L!T2l!pHoi0>pDpI z{;h}k<_P*NRF^MY^%h&4Y_T4m1D{h*wpigKdIa0z{ZC@OX(*GQYL(3T-~&!!JT#Pb z_I{$PcRkE6$ED4+8^|e*{Kcbjb384Fv7VGLZ$bWZUAmUV`V)Zr?<=`h34gmM{!F=UpB7$q+-;^59V6x$K6H*mUxA$g4XP^*I-HboL^CVoil1 zI3J%f@B_q41UEVY%_)`nu>5;L$oFX3e}VXcp{;|Mk09?>;?H$=2a8@~cj#!oC&ruV zJ!+V50Y8z*>ofhm#ftTKK4$ZNi~7ILG0MgBHV6IXwura2g2Bx$M?Veh)o^}pF)2uN zytV|-cO>`QyYL}URH`x`{X*hVCy4!hVgQ(hWac|)KX9r8>VHgQb)?6VAC>&YAN`G| z^6Qk(aZ>!n+d-r8yf5bZfxJcj;0=Q@-{|=W)Y=KuKGyjQ_=b7Ncj|cuPm2jk)3x&qd_(7=Na($Ko`TK;9p8*m8hFh!@D0}!!S9GgnDXmxI{TH9{*fCs6#fwDq(^XmzxRp|#UnZ0z&qUU z6QtY>PB-ug&bI>L-=N0##snyx+N*J!zv!1yUybq1DL*XKcvv$Z<@hI+cR01qOIci; zX5brq#6V^KS~YgM?g76IH6Aj4fHHZC8sD+%uLOg?_^%%Y@?XlC?rJ=#M?VGqT@0`P z&hMk#u9#-v8_IX@tvG*Ed57L@dZM4fTm#>*>3nx(`+7B=>CjDC4&H)tQ{?A>epSkx zNHzY{p|jG>V=iA$(lc-bXP$z18p;<$#<(i2&!-xAhbz50DGT?e8u*3_-JF$7k&672 zo^L4ou041aHGX8{qzv4eV&EO#S9D+=f}U^kth-#fjneUAGW*ZcGyI}dD`i?#GS|l- zUkw(#xw60^*}yxbTQ*gC9Z6!|h5E%h-)f|MoRY-9kMbX$a~df98zvcehtbycmBwch zIUh##0S&9xRU%^&S+At}f|K=XD{)TDOEB-SxVWYgQC%OC-gS41jS~M^GI69Dzsj>zj=;Zwv^DzsSwk!g`~+!m zeHxi7|D4qG4|E3fc~w@anWx4(cb8EdW~p)csM5+QFEt+8rPGI2HSi9(g^zmS|=EIwH zvCgYb0`i>+;6>+&0f)xuT(t=XzTxVtA-bH!38)Vm$Gn3sytJaWf7HX#rjW_TMiSv`Sw;a{@ z`TLpLMwamgo*`%ZNbQ8%anKv|{U*|`d1zyH#F75XJj2dLvQ~-xA5&)?R#o@BeQXp7 zF;T%z5D^Q7J^R>!iiwFzDvI5KB3%-;Vqu_I*vUB?6T3UHyM63 z@3q!mYwpk7V~V{)o%Qp3nqu~cC{!D?EwmWq7(Fz{g8CI-!i_vb=bD$YH^NWkfBZsV zuWi{O3r+FjgsIs#1Hz3wL+Yo}*`u3;3%|g8gZrjshdvj~k6G`I+EL_SD)^WG@eRlc zy5C$m$H+GfFH+Rw@kmn){nX>Qn<<_&o;(xpBzPr_OXG}jM3X|$1IEh#=NwP+rlP2K8N=gS_y()=5|sXV zv@wqLw8H*(H0!$_eE)je+p@=#{5{{_&X>zl%Soe*Jj1p_b`)%8ipMUfjC!3A&R=`5 zfBa=L2h@v=#Q(3P@R(}Y!yfu^FxM~3dbPBJ1N59=(T{n(^1fP?!v77!^TiB$Tv2*^ zvo0NIHXM47t>l;gTGb-oxM8BF@_O4~pd;1J9VYrH`!U>V?LrNv4ig@M^~4Gbo6xs; zL9Cy6u-@P3N;68x2xR{S1sbO^yK6J_L=J$y?;-2e>j_P1la)X70m4UIe%u^6F+X{o zc?z?h?v(w)SLQ40r4w5zbiS9b%qP}EBg!kN4;?D^o8N=`RiAShD)WWs?2z|_ny?|F z*YbMxy&3+0)gdyzc+Fgw+mN0O8Z7!IkKuu@9Vz~tkLYEr`M>sV2))$@pO=gM>q6!I zLsxjHG9M8KHeiGDeN$8T`we1$2CkO@pX)}0Zw!?E1^3ga=Ft-8!-1kdF#}Smp+c^w z2Jrns?c00>J?m(;%K)i|Wq2W^p`$oG%n z9QGNT4%qkh6`qG{vOYw0qW?a7OMe#bdCqp3aYXOpoahOC{EHgFY9mFmH0c zSq#-#-Bs#=*`xl%v1t1DybJRaIB#_TGa3WEs|&_knB=Q#TEx<^A)d1TLSBNpH;aOQ zYG+*EwK%T~g;(<&s<5-8=s%oq2Cs$wtnKl9I4bj}-nJ3wuh5RKukh2IOZrhr;kGiq zIRESXyeD#?t#df{$vHGn4;`gi>tsL9`opxWmbiYZ@DIq@Dz@ttoP$X8dX884>!2?x z#yBBQCB2y<>n-yNWm8*$EAWu}&GEfGZK>m3cVoQ%b_diao8q_`U1-C$meLP{nUgNP zy=YglmNI^rH%R~91G--ed7ZCmy=i@*qq$)`d_=#LVC7TE0pMNS@O&%6{TLKJ-w#;X zT>Si*X==AJfaVl#F5{oyZ~eDXba-?#^p_tDUVVkqtjZL6^s*`Z^VT7sJXhKLW(I1W zn~L8%&p)mo{~Owb{XdvbSCS^pp^5NI;6CmAy0>El{A?TNu=h5P_lEc2zdzJf^g4dO zrH4>o1pS}$)%<$JpD~o$wvo(#oZ*zA{p0A@HW%ofJg+J#J=0>5k8=TE5Q+2gG~`0y z`(SVpzXH}rdX$NU#***vfH^Doc-Of`*w1I6-atdHHky7-Yb2k~Irr&f!PyjSB=zC^ zI`V`xc#Vtr)w5<9H6;!`1ze=Qn;Dw#W8=Vkxk&vx_RH{IkD+oEnAg~c^BHRK7DS=m z)kX9|*3^r;MMBr$?{|v0r)Qzia9Vn$A^cOWNxg#ebFR5<2p<22#9M#Pq}jimdA-1Q zKTg*lO(5@m&d`JNMb5yX)U;K7%%>d5PZa+#6gi1{7$2vRUw(tLcYjK` zU03`Ye$IMDmYe(0iN@?FaR~nW@5tfr0C>395k8GI-8#4X(6_U-!LQwiPySa*z37em zR14Sl8FZJg#D13zd(^`E{F1olcT@}X7dTiG=bJa;uko;Me=@VLiR=4T;@evWQ1HYW z67&Br9W;PWAFYn_?nluJxZY&mnQHhxzfj*>P_5dk2Lw<$V8YueMb9pFPgY zwULi%qP7igNFh5bVtq;F`e9WaQ=bNh+2Q#chkR6qs&DE-pL^S3J@7<4S^ZH)M@cX3 zq`sa#*w0>SgZeu=<_9r9?CDc0FRJ2fhv)fQ+^=>x-+4p-s(|$+N$R0F-_v?w1^N9v zCx1lvQjc%talOriuei`Hh>kQYFMI&6SAA(DozE?c`|r=sBlHp;jWJtB`de@g|47aR zI$6>d-@gFrk29bpO(MJJqW6Qp*^XW+lhBXVO3nk^LxA<@`~5A&FM{U-KMyS0TgZGp z`d>%&+{^JaenSb~e;~i&fSl|#Pg;UaSi#7aBx#T@oms0E$p6@9G{MYjuC$a>CxDG!cD z!M~-1_3@zigt4St^m^2si0{K>KCVPcK-xs3R^WUj;fT5E;tWha0CYHA4hF)QrH zN^(A0-JLW7?`Mhi0xS;dof7X1r_B3u{qX-Qs41O-(37nsulG{_o^N$7{}*sBbI z|5s7r7kJHdReZrm77>1k_3EQH{ovPHSo|gUn#R2kpzDB0zne^#`lf)P_zFG77Ch5@jIa3=?)?S&jg87oPUlvO>HGRm$Ptv1 zdV#Wu%g`U`BlOU_&^i-PtGfdA=I`H)zx7;jztfJ+1rw0=z;V>cs-k+kOM;nV)feE&CHw`00&cFrGqR z_Q7-crSjujCj6})Yh0Va^S|Lw=w;rIL?7fiJn;2q=zDp_c=gdO)N9uRf5(cb ztzdrc(a<#_W;tkQyc)jW1hX4Qe8vee%+^Gg z)8HOJS4M243JXul_2o6LT-OcM>&yx0ueDImIRR^T20Ss2BS+~1{x6bNH(yU9Vvd4W zX{55h;z5~-~fs2Nkq;3WIQoH_3!jDdh>HV{4Pe}_Z34wf;94SUnk>_8Ly%%)5vew8Xi9i^GBQCq+!mk zW}XG-&qP`myPTFkTnRqsvcmbvSv^;flj91BSyOOsv650}rD>e2!m*V6OhZ)aI9QEd}s8wKY$w27}V!xfQLRs zM*|L`pJJ3;fA-Y*FZ~eiXC&%*S3*xej9xo>iuDYa`N+?+6g~D__rf&hDfoF>ASQ?U zjF=^QewC=r6cc|Kzi)>4QSf(Y_UbS^o~DBLnUCk+CYm+oDC&JD3O~i`n_uT+IB$;= zK7!x#z1wj*yLb%d$9$Y;pF_(#f&MTfu%4x&wiSCg*IYWG4a4%swLeYo zUUy`^3iJOcE!R#_Li5g8Z=K|M=TPo6^mtF6&#ZT-KYfpp{WDMDA9xPO4nGDDmag)B z;Gqv*;TZUu&c=97?IU0|+3z3<{8%4#!L1zh7wj**#(sxD6|Hs9FLNlycO>+(Q7USc z$#5%3elNy1*2q0n{U~ZgQJc(sfW_e5WUC(peUut|5xF1&7e}t(0 zyKJHAd1Hm|vyB+4jvTs~nt0~(5L}ZxI(jpnnWLc(TZq2-J8?5Sn%M8d0(x;zb?d!F z)b0@T4pHC%BUSGA^S-LL_CJ4zE9(|e|DWA4o}=aa*G-#8E|#9)xni;3h*c*pNv20d z+v55ss_+m|+f+`V-ILw1KBcP7<5Ja>+mZC=unRsf4c`7~YQcS@=}Sg+tS5T>|IO;< zp8et1SsMEIE&RUY>W3e#;8$7@&+9+PKR;9Ny?3E>n~%`%i@?9&v)b=bHPl-?f&N)k z$Mx_o|COe5MQ<5)pDe1&_57y(yjX;Mlg>l$EUK&1=)0QQ_Pv6hEe6)&=Pv%MK6-gg zc{E9ndhf!z;i-Sr>2}AJS&t7Hj{aw+>*i;s%eZ(z`84AY{1txTi24(}h`Z7_ej)V2 zQo2d=ZFJV{3S^_E4E5@@bu-G;*1b=jqEDWyL%nr(U4Z*+UB7=D^zl!dp+4LjJVOL{ zf#dq~xlIin9}dtRJ{_fdy8nuP^FRgs#vonK{n5IgB`)jj`*cM;{Q&q+MB)7p!(TWM zdZoASd#?!Hmy9*~lY8bEy7}pJ>&Axa7A>r;zjAmP>gQc`)wYk&X;zh$evb~z_2}kT zSJ&t8MrBXgJJ3(xLXWo6ZLfMx>G$usVNshq$p2gGHt&3oGx-V+$c&T zt<10<8Po~G3+P64EsdUSg)#niVtjm3|2t3-`NU%IXW9z={c%YGZlEcOS z|Lrlp*Nfi-_xnUn6#VNU_2_>#x<0r1(&6LPg;#KlanL0d=#QLQbv$2As)LgA`G>&= zt6@KP1iW5BonzC1baQW2>@SY154?)#N_Y;UQ{$?DkIDsaQA`&!(g%J|_QF^Ey=t!G zdIZI(GS-JPD*TLeALsePcs?}2{?=99>F-Y)#}vT+#8u8G+&{OCcE{=)03fq8LW+ZFfp8m{mQ6e9DduK2)Rg49w>g>8CZU zgbzK>9Bts-67RQ`-W-G+jvxFtl7(+SdT0<$_45`#4c@=iJTQpN`*apwg82vLF(!MV z1rfe0Gx0q;`B0-;uHa3QQ7>==IRqcNd9xO-S2XG;_Ml%N>Q~0tVLh5IJcsAG!PtYB zG$5CU{m}{FG#q*ZU-?zu@!I zliS0!!~;oE@4&qG`jJ6+_9hwmhDsd*G~bXU$)_?uelg8YTi!j%$UD5O?W>)0H^sen z4S|1wDYj@eSo_b$6qmU;Nc=1Q=jZUY!vO8^k-0|xV8N|^V7*LnLP%e&&_Yuj{;!WV zGSn1TSlAo=7)&vW* zx0M!oGr`C=IN}jiKHC(>dXi>8K0)%`T+_0@h6kP<36gK;dYpmgEwx#X<552nA-w&; zGR?LAqvMT!4x=75(Z1HmkNG@N>Omv$BXLIF0e(i>BlkEX->@L2fws7^Dem~A9?mMU zT%RfD-8H-GXkA^|KcbzS*V4w<(tPt`SpSuJr5XAfTIIbl7+>a?pOvxStfti&8Dr!f zYHzBdg;p0{Li`yX`Z#Ep%}ntdTYJrL-^4$3I8_O(nJMlRR#D4ZYKoETL%)jr7;Bu8 z^Sr$Fq?;)|msL({StCE@GuE;pWwnT(Cf;FrxiZ?XGx;&|4usxIb<^@=<`?XfOKBx1 zo8muRZ7|+V@l0!L?Pz^dd_LDwW4)cVGu98cMwisa?#Pe%j8>zwg|-8FJHO8HOREyv z3V&0KXP(x~!xWcJD+adD6j${xs?B+0;vKF!7SSAznc|!O71D;Knc~wSW}5wi2+8*| zzvMdLo8blg4LD!K_wcG!mZ8PsD6BVeD%T`iZk`I$n`k4?aHPk0L&(l(*0a#BDj2n9 zJq=}XzcBVx*7N=|lrpsOjxq8Mw+mSsoE%MYgA0WWNkwCjPs{gXuvh--FWinc#tsj^ z=r3(E#c9c}^arfUh^$+Ws;uG2hedaF{?|^%(e|a@Z^icL=C_C|x z-eH3&Zr5R_{?$}dd?b2)$XP-v>Y$_i7wF*8u#AN@T3$1|Y+hklR}Y2+E!)@Y%>XdP+f8FFtp=)dGe82N>2 z1+DZpS*EzauNT?fW=F7|ApQ&~w~u9ebjy!f4@aINyI*BfoZ&k)yAk@au-3@0e;?_Z zeQ3Wao~FBXs7SOaPE4Ld$rz8Y za8n$$ce%&GPV6U=&pZ4%oa5nUGsnm`)V%)4qw5_L{}9!>u<~zV80TB1e+7E0DLWd6 z8F_|LO4rX5jj#W_c2}tq zW{QKpJwcBMQ*4v?c zHTR15s=<>tnEjxIN6_}wqs=>maecQdydUBI8Yf!?%lu=#bK3`J`cyNR^#XUizx%rd z&Xi{}T=)g%-_j2_<2)M3^}x#RlatZ=-I;<`2QcrUFtg(M6z{jkU;G`oezib_hE$=A zzv$aM$GCnr_=F!npV&`TIa{|G_Ivp;>zB)xwxD~({N($vo?2^q3-a9T%RCGFdn>IM zwnTqbU-&VnbN)D|ME~vwkJz=7nxKBrhp#8=WlHHf&C!2h5Z334 zy#H1HwrNRjHiM)e2lmH`V^eqJtp{Q~wqZR|`8Cml3Vs~G<5~W`O9-JJcz|3#_A?0T zq(eSy0Pf!p{{E;1Z3BP${@^8_OMdXgvG(wf?I*vF-@~JkCsC1p^7~moyT83FbspST z_zM31ce?iguk9`Mzr2Sn)W(}C)%RvzPT}9f{WA7v^^x_A`C9V!~0i-8JUa{ zK~!&Be*X;aN8j_)2+CG_%Xs7a**{?nMc(Ws_nY(aoO3Qds+aHx{GGo}pF$go^(ck)eXua$s8{PG`XpaJ7t08G{jVd>XXKlkiGM(YHyuR(V}It`r^3js zYzNWn*-xDNXDq$a4*SnoslP1YJeij5Xp4IEWQ@nsyDh9U^y`KF)ZkY$bueY^) z9*@u2F5QujR;50f|NpMRT`1-*3E#ojYpr`n_*pBsUv|i6E>*OS9ib^HczzXw-W94; ziSne2vpkG(kJVoA8+XTiv=l!D_AkGrnquxx7@XNs_5(bJ+23#b-xi`*GC#oQy9z^F z;Ji`}dTVdx(l$T%tGXHEv$Kc8L*Gq!AD*vESB|BLGn!-n*ps*?&$EfssK)1JvY+Ak zpRLZq8K@brXHwrf?Q9rbyU>*HH=kdXKQ7_mJ(@~Axa_|S5y;myfj-y;*MG0Vd_dNK z#nL{0K7>;~%EbLPuxuPhiiD5K5xN z>kUxvu9x%hiWP|z7T5s4=Q!&s@NbTTheHG5cUD)-Larf({HHtdeqXdH-?;o3YZvss zGjwfd6zXdnF<$S24>*F}t8f-MUp}*{3TH_N4PwKkt{{wx_Oue8V2LFLNSbvJ6o~Mv{E-MH<4C-LLD-6A@ zsQUQ9Fx2$c#(AwM^1DS<*HgpMZ?+b`UtyIs?UjRrX~C_U!aG1uR0E2RKz(%$;T2df zFS0S1-qotXyn%dv#e^X6E7j%i`SW(R_rdd|D$h5S>roRjdeQbR4ww&xRQB^cTv?&a zua$8Bt3gj~tnMAw4E$R~jL#OxS9+;A#oOT-QxWt39{d45(yKRZsanB`SkErW`7Ei1 zH~Aj5!}UO4Z0M_8FB7WTVZN-8{`2MT2cl>iQsaO8dD4Le8w8Hx7CH@Jnm%HP_i-u@d!SF$bTesT`iW?mE}8mz#B z?816!uXg$pj=YdH#!sf??@l+Lfqbzo&f5i{PYhN^I!=cETAH8d(6eW#))tfC?_(?D z1^Xw|J5Hb+vIQUV0=!UTb$YLHm@}nh{_;Jxdp-vB%%!kieP#bGwfWIe=%;24o}&o# z=Z5M8&ymzI-U__HU+hncq5pR<{Qa%KkKHHsjF>xpIPIQqDSQuqrzLBLVgF^x{HpLA zixvh!11pL3El2W$LrMms$7+6m4fZD}J0^hctYJRofbdm+R{6s}yEyo;-Lii52tq&S z{pNU{?}6SofclgUAj9Eeay>YQ_ryAgUT-YQ=L6AyXM7t*Gj10_{%8lTn-B66!MJBd zn3qL;trvP>gn%a~EPMq&Gpyf@hNf9acnsFx4eQ3Czj;AEUqD}KKp(nKq&dY4V*GxP z{s!D{q@G#;e@) zQsjp(qF?dr5j~c|AKlyRbT<>20#7FQ8RgsS$h+H!~9%_Gpf4?>S9){44QR&oi z!#m{T>#2C&(XlCOs9?vp$e$NM{<$Z`PhOAb&}*sxXTG3az(#Vo`%+_egZC$ioj1WB z{5f(c6U8s8+^@~(hyDzD^a`o3$;{r0^TJc;QCnoca_7f3cD@4bqBX)t9C*^YkS+)v{?p1(6F)oDBW9o>gt#d*xfC@S?kiw^4V zLT`JE=f!y3(=3XvdPn>=*i#}QFN@M6Z{hb9m+NO{ww=nnxB>ryV$cu5;fJxEdbYie ze0&w?GqbSw+fEzx51zJw8p(3m^tpZbqnPlJgGGuTv277VnD!V!aTI!c8{|`>z!z*pef$yd4vNamStZ*I*wf{JS5PIt zvZ(fY1W;pH~yN!#%L>F7nY3}@`E(3=gyzb&1!42;NT z;V)Q2Z()%}9Zau#&7Vt%m;d1O9Y*(5hBKw_e5kfSe7iyjG!q-3pD* zrp$-wo35sWj5O$LCltP4gQ}*}Qp;t+Kk#R|*{q>elb1+;4Q6P!mS0On?k$3zbVrf- zle7+e)k6F}2h1m1wNm{II(un8^d9tfK)>;mmp72B+dSy4#YN9qwlovxwG`;r1-af= zo%MJ#4SAmg{pS<(jS6b1x!b_M&Bb_qz}%f$dFBrEn@oUSbQSZ-Om+6&OwHM<#R`?v|Q@UQ?Pmz`};Ip!XH+8Lg2t7lh@cr4ZAe*KYMgNBD5g5O#dH)K% z1pO|8!nqzA`=1?nR%_J$br^nMnvC@es}EDmu~6Y9_{&3;PIw7^W=@@coJu&4#(10uo}fL&KRrQrv=LaJl4X2W(Q@I5GYsQ7 zS@OX&?Iig1eExyQ?*)A>{1bg~f1<&Qw4__gDeAV^2mN9q;6H?(DSu93ehv^GfX_SA zo1I}kA35hRoQGZLVck>YUZ9Wg49u_JMnTMpH9a)u9r*lmV$CV?4)kKai1i}Hyw7Rq zXxkcFzvE}%U!WReXgBC7 z)Dr$BzVdqA{U>oAZV5k{$yo0WkyGeNj2CzK@yy8gXBv}B`=99K_pzr%UskCsFk8EC+Y;&NL6@=`4!r#zaQ(-W6Vv~JMP!<^IA4IU6ObW_}72c z^fboO!x(oic8KU=YvHT7UrcC`1JEx!VSZEwj}@(cE3h9ur#-QLRDymBzlEcFa9-$% z@n)xjDK zJLvUK4BVRl&m3LUc?VoK8H+4pEapcj#;c~*T&$wsXF2c_;dq`O zQ~mC=rt;Ypn9l-hbXgtxssr@!N?31F!FN1V>%Hwtq1CHkJz5RFif=0Wac-Vk1H8gM zJkPCkD~t7o-)=4O8~JqEUUztOKdf)Hgl8yOu!gRyp+BuCRSWA0`)SnG&HgojX11*f z9_S?IUol;UYJ<=(tOodmv*1Tc=(vAf`F+)}zFttj{3)s18ax>NajMGr=kfO}bqJMq za=`QL3Vx5ZE^OaW=;f8cr(MDOS?dlw@TG2-?BFkR8Nc63$9@l8hn2_rd;$B%=kQ|* zfWK!M?8nZj52rs-XY~!B(z8n8`sh`DPn#M6wC0i}o+lpIkGiXTUIu3%`%h*D-=FeF zf25+=KUBiww4xgD(x2Qu7sC9msJ`h@LA`7rKvNnN!1LZtWsk1{T>~g*;ctUdqP)sI zA-lu{VBi1Ez<a04o2Hjo+Y-V+0;@6>$;_6uT0!XBK%s&P9o zU;4xUEEQfF0qBXg8S}9R^0SHX0t>+YZ9Tq!XMA1^yhH=&ThUeEDOw}n5l+mP2R~jS zG4KD5Kl6tl$~^E4UFH0Jx4l0+782$CIVZ&Za5G(^!A}KY|FD`i7x&{c4ET?+xQ-iy zudp9K!N7Y{{?6rGeBog?%)on7<|#6N4Mji10n(3y_Xl1thtjl3-N1iM#`9+vjrckg z{qI^!%zF;Ky)W%N*c9s}d_?hn8wUAezf}+OKT!NFdM)xrPO`Fr&nC?K*4xEC?lwmL z;oB2mdNi*P){maT<0k+1MNijvdOq9n{+Rii!C$WFxj!b??7MD3Tq;}7*N?x`)$rNc zqq8ZJ4`bflDsrawVpR(A1&hFURHf9kXEzC~-b$`qemGEjRFV~XM5p}CJW#W(l%!?Vy7hjr|$ZBR||h1-3!9Pk(a^LuFG z+*{jck!0i<;2ols{$%1E^3uC&1+(WG`G(_eURq+hDIS;HRZEQIej@pN1Nt^;qk~Ox zr?Af2VEA3|^<;f`N%@ZO^O$So9cu1whkg}_M&3c~*;X60#S|;Ptu%YLL?hqut$qV@R#7R#C{E}tXgV8jS_@+;4wS+Mssb=yLja5B5|G=iTqa+t-;iI)PF(; z0F%8p-BoK>KiHw60xG zTXinh$U7v2)Y00mjWzNPql0VVe#9Di2VbumnqnQx*GqT@_@isX-kNxawOLiQdS^_r zHnfViWuqx}EbXA(i895u`pWR{$dCEVGkIJk?Q%;~{H94o?XOjSj5EA)IXn_~azw%X~krnsC-DXrtf zeExxX2b-7HTFvG8G3VPqY_QS-CYj>g;g(vR|LgC;ueYmT5`2*9^<%F~XvhDWc!x(> z#kIZHP4R|_=32dNrkHy-4URI!+11T7Wq%~{-}!vQ!f=Bj5`G)(H^yrS{5%Z~@b9S9 zFcf^|3}~5i3~MgMpq_g?c-xU!%f=e)pT!{m6o~w8d&*AjZ&>~#2KlAF`1^A7^qQUF zYR6a}-_l=Vn`K$UMtf6SzN3wy^d}SVfVw3^?-QmtFt@0|X_+ZT4$g35lqtTw<)_}F zl_`$z|6YH(VvOjQ%rhkXd8(iJHrg1U&bX_;qnYAcJ1*&~E{T@>E%F^o(|X7C?qj2k z{6hHY{d%Qsw2@C}Ha`pdNmKlL%zAy=vnb>1@GI5#+;56YJ0W*m+`3L9B$+rMvUn1G5&{% zcYq$_5p&EGN6ozG@v!b3sSoDoSMbDQ%C~u8Tra6GBiYlbxzgs*EUbTKvL68dtt@n$ ziS_G3Vjjx|G3kT~v0A%I70^O)NI#rZO`vpMPN9 zp@7SM<#?Zbe+V8QuLeF-^pErXAvpF9eWzHCGsXKBe^LH~kK_9%JVS8iZ{@0$DRysG zkXFZymDgFH1n)%q&yHcgUk}#jT9Y|_Z#IVY5;>p8dlbk1n0W{vh5HTsb+iy3g3tH7 z-rXK=g_?5qg9uc(2FHB74dvDgVLeb`kLz8pN@L$P5_-3j_(ObLQGtGR8Y%n)=b%b> zRz{8@-#>!ur489t>2%%*nP03&mK{?Qb)fk%=eVYHu0xr(g5~e|`xMz&5B~MTxxSm{ zkFx)4J#u&$BziaJBhMHd(eF7>^mwlCn0c)}J>C=`F@OH81&(xSVgU5z?h4M|O7X@G z;0GHZ>k-HQ*)%}^Re#|DpiwH!AMA1U7k>-(TVTz3x}87vOQjXgY25zX6n?CJynhlN zqDT(TQ{W}Ax0QYwe7@>6&G-N2yAS;R8=<~sDE~e0$CZ)cb&>xZf_~}yus`$%+wO## zpCO{(v1h>G8x3iG=3rirgpY04!Ige=8!Yw8{QUl1p)u-ZeMEm@y?^DBrl^ngfgV zL|zuxcYw?<<|pq&wMX-W0ervUkK2RRcj`p9ru3KJ$9nyO(p{;|@qWS&F~2Z%cMpoR z?I-h%`GfF;KG^^F<@v$=e$bDrAN+Q`<$Ck}G%f2lD{drHawMj6oyxdFXJLktgG#*Vc8+yt2;d>SHV?6x6d$FGe?zc7i6;DAw zk$hf)`(6AhGJ_6p>?z}izu%r47 zB7%C{_QZIYBL6>PZ6qbQdWwGl?+0H7MnX^ToWpxHzMr3yBB*QUPQn{=edecP5$HeO zQS>=xf`V3ugU{#yJ&U+LRGD#m4$Z#bUiPPa&!_p!hGx_bdi@;MuautFb7)9=?yoUN z{H!}9&qfcsws>BK$>(u@dds*r!fP�tPjY^4E8LGT>7O^#cRUq( zlh04Ep782T0D7*I>=$|bz1rE2X2g2Pevs#o!(AUj4F<+bE&0Av8u;Rj;*NUr+7jP( z^CMc+lKCm#k19vX2f^REh44STCWWVjz^}dq^uVgZS8#oFl@)I2|Iifkp`&87L`9*^~5yMIa4xxFi{ zUyj0S8uJ6=wlor62stq&H7ylF>G(oqtt5+ zg%9EL?6o(kRPAX#55ay6&d=x3?=cN|J;nFgL!*Drr{`w*G3&)g8ZJct7H9bBuMvOz zyv~c*FH!zKzrG`WF>MQIAg{CLnd!0!`ihhEtKghM2W0{3JDsFo2iG(XvtEE_w3FzY zoNsXdy^t6u-%YykyMj2HXSwhsBv}_zJPN+ORq#x z<4R88L%iVU;G|ZX6AMobC-x_ie9`jmvB()X%6|FQ`R3}xJyG!JsE7I33i-9_>Zb5H z=(kb_?`MbnUvV{j;|#>Lq(2FNA3vL^=rLXs>-lfdqs#W4gukzW>r)K+S`n4|lRkV` z6}(alfrS`XOIfk;gM}&dK}gP+Gpmj@Mt&U&?0>r)y-#`&ZFZDs>2fMlAg} z6!v3Cy*7#_zA7iY75ittK0cPZ^e!tr73U!8I*mikcWLx5>Bag3Y6Hj8`z@t}Kf?Nj z-ntVcX1l(C}x@q{_9d#h-$IQ;#6%3`?1>@FC8@DW77{KgmY;3GN>;ziB*OPbekpFW>KD zuj9$~o2~e9vOo2_ZE@7XuavB}+%xy!$T;XB%x^3be~Pb{;wYsP^A+c~zDM2EF^bNQ zwZ{6m9lVaYdf>qvJTGj-kED@#NwszDY2O*1{VxBhzMUFgz5P-^j-G_yZPYI0Zhi zl=;Q^yujQbc(Pk!K5Rg~DF0uIKsuG!TAfC1m|#J)HBImlhS5^%(<9~71O&ujXpR%57Q`J%#SagOD81^CT$EFyd< zKLe)Cg9aT}So|k=e^~v`WULW|@ckd5zwbb3Y17d|p%9-(q+Y{2a5fmTf_NUB6dodT zL^y2ahSrdOseH`ZmTNYga-ts%@6>E!s!KrbJN#F7t^39g0UyOlvw-od0 zKj@cL#V;aBw;YVf7v$Hgil4;0nXAxW>=SY*KftR@M80zk^yv@KD{q143nZs~>)@&J z9y|uvFzh#vZ`lBU`nRkPi~j-p8{Dq+M)XR4o_o1(fd}p@=%E9_BNPFPv<+k6CGz!& zvR|?B0Y6aT1?qjzh(An&sXH)co@tyvVE$v=sU4XAPvKYoLh_e8zw98pt&j2h?_#`# z;`{BSCZ!&sp8Sf`-?-WAq(3ov67zmD=oyzK-+9@7H~6_r(2Ji-e)R06T~v6&Meq{$k-siVsU>!i(&;?(%mUEoD#0sh zC)xO%h5xe+^pyr+p?8pF(rM8Xc{~hq+m8O;C&kZ!{k*#L&Z2WQa^c^tf=3%o@R!8% z;<)fJJRc%gZp9clh8(CD^t@>B_FL${+#}#Ix+9+wO`XCvQTMTj;fLXZ`pj|Y&%61VRPjCRXFPEODIiqx~U>X-q);cV!uM_F&DdM`52gXJK2 zfdk0Lm!g7K*P%XdKX`&YSbyr$pebuHulIr1&}01un|*jS{I~aDe4Y@#CGFV?_yO($ zkMJ1tBTV>(6{U9I|Np`LTty4Am%-0^n~Zm6=*$)FPq9__3}!5worBKadoyynXT=Zs zqyKW8zcS_f@fw--cR9{L8^CuA<^3OBS+xRVFay_XgZMw(=(3Vl_^-qKYLETtd9co_ z;Fq$7`3~`exOr$5`W3F$_^icyq@7W#!OyHR@(*8q(xI8;`$O>grhdyc>?whq>kaX; zi?6bl2K8CS{DH#bX|K&X)ZZ=f4TWd1bTkx7&DQiN~8ep==J0XT<3zby+MvX;vJCGJP& z{@?mh2L9w(;Byk;H}Fw-yubpxz`(>qFS;fCX4Ut5(0?aZ_y}egxj)8@pV82l_Y3dp zlzj-El##-xaKE0&m3nF$905IgqwprLy)|&MbC@r|^-Q9mMu$;9F&p!3wal+_6^=lI znJN7__?Zmt2lev#JOpbtWyc&t|FcQZ6BlEB?u2`G9RAwlHLfjT|DM;6PN1Lp7+GKV z84x@%mwuati2nmK!R-Q0(&|6MjeNx738&CsDvJF?ujv2GKg?54;<+?b z)+f#Z4ZD_$e)WS;zwF5Rm2#u}DfB<+`444c$&=vgyxH$v@)bE3z$0Y$GRDq@ zPl18zj`br|>ND8iq4t9=!aHz&<9(kqWN_)kek3>_Z&&UfJOjUkc1GS|^ystT!&)0- zrOr8OP)*gimV?g^Zk^AQ%N%!%_b%W;S1Er#o(FH}W{hj~JB$5c6O5M$$j?7llKP#2 z9@H2);^}zaBvJaEGxV(ha_)#RPH0%#8468x0e>?K{ODuxyST8rk?$+|JDWHR~7aAzG}tMIW#+_KE`hq>~}}2r9bVUM_Kjod*f7mraHdy7OLN~8vcKZ zYFIU0jVrmCws^HNmaV{WgM0YA(t@WV*Oc#l%+?MkO(=WFuyXZ}k~zmrCNemP;i zO$C3kL>>Qk5ygIS)J9}4P}hxJq1G-Ck9~VxJbyN;BeK`2W_`oK$5!R}4ZU=aTH9eP zo^j=|9^XTJO+ECfKXu<^3Erxtj{7gP9@vd4n-|CRX{4)hr=IRjmsVH<3xn5dfVi5@ z*}DlmmHt7`tgp+SSV@=grxxuU_SMjHe{Jah4!S2n6==b)w}!@zYe4U>uFI)yK_9fI z23#NT2UT?ccK%X+w!Lr2NUN+XaifxMz?_HZBYFe+q#gVpD(J9}Py+2P!#|;{4xU`P zg&(sN%e-^o14_ZKp`5Ot_cG8ydTKBnkjIz7RDZ|&gCDEV4Mt8E9f*!3o zhGk1j>2{wir#rl{rbmIVI}F29?cvu@UpF$els+tU9ry?mUg2hk4SFzZ`1~Ha_IqP= ziqlnnuheCRgPlTfJ(6|cYxHr=8OFojSs}yiqzgCxJXgYWVzUvZQ=HcD?KKBji z_c2j7Vfa$r=zDYZ19x1I*B7-}tQ-GOr(gLh&+zx^Q2d?+x)OH}W|#i-5%u9i(7$7W z4s+JsrG5eIcYN@D=jlf7^Fa?vb3EUjbnq(Et?@aoIE*TZ{eqe9-OLWUjrM<)5-Y61 zi(ZF*;GnzJ+J<(`u;u3!^l}@WmyaE|)w19dcY}{8scZJC8qR~|v0vH>KD?+-@vTQ) zj#dy}!q3J`H)?A`g2yfH|8nqWpVj$hO~JTT#Pe<;_FFI19Y5SC`L~_;i*)nLQ@z|h zXm=979)c1`>&(wdVMQ$-&7GiK?HcjQ)=-I?P%bY%2wb-LBbkQ*QdHgg;Z&2*fZgv<( zmx}y{ela+Uf|)&5YZ#r0d~aYs%G9^Nao!Ii>jN(hocrMaQ{hbze&1sQ=Nj1a3*I_3 zeeOL2dmr(6cJ0|9_^aK3zrv z=a;Zn22p`^83sPv@Or;vO%U~nU2WiJE1!3#y~O!!&@uz(_c-TP_%yzs>jJDtjltv3 z!MzEhl_itlN27>eY`P(kre2B>UV`6`&u42E&oS`+o_PuGcj#uAEZ>JcXj^^sM?Pi* z=JQnKPco^=LHKpp4;DWMKHt3z^{1@!J>+%12Fzbn2yF-dj0p4x*oOVGKlUIkz)Q`* zesmYLKkr8$jyb^(XQt$b9OC`xz}Tt=_D17;5dUt^f@KWs_rz!5xjuemKBbs}c|YbU z^of47zvx#z_mg5qlix4H`ktQ8o1E`r{|@xn(sOQ{_Y5CBL$#~{shppe{qMP#)3q9| zsW@-Xm3|ejr>1Iq%BJExm*1~q@zzON{L>W4_i;|4^}_L*O&0SK`Fz9N>0`AH$tj{| z^M2!;`)DmCD8#ne{Zq!7WE>u8JuxdMH@?S;rKoDZ{mPwx+n>#y~CTcCwK- zfWL`W{Fo^ozROQ*v(*&OZ|ST3TWE?cj}Fmh&N9U}x(vqmGsPco4AOdZGsWmDqs?z> zibsCzuZ34O#VvLHH1`6@M&1Gbr(o4g{6ncty|v0al8n5=e)nEl=ps`*DXE9nYZ~_# z$>$xit9RGF`k3N%W4mgTD<&EFhP6dKHQlYbM!q3zRVVEVcnaos_`JSqg&n%doi zrr7O!b*zrYhU8>W9AvMi`Z%p{Y-J6!#3JlcT@aymbGSE#uVEtR$8GqCjQ~~uaes7 zqo(*uwuRA;g5Uq`e?_(EEm5prOTEiD<+j23Uo_T-2;^rL(4$FP4Jvp9^DT+UuPvfR ztz!+5A7Y_rO$5IlLg*!7SeI*x-6BUA^cCWuPv-Ltg$4#1*1U@~#*fF=HuyG=6MYe9 z5T)0mY6gpvrntc2%7)2#CjOz@yYhyqyG=2Avl;A@V~xDRuR)fExqhbDf3dki-_#VB zH7jJeY8A_Rq4+UOo&8%s{$Y$UKCtPHenEDOkxw|>;;}wH$rRf?x~U&I)D+(hyP&_& z$P~Z%d0cN-*c87iyjx%JRU+B`kv+VBMzJ5S$zxZPbHaR>;S`yaV{S><@4w z<$4I#;HOTnl|4I#{X_EkhQ!Fdhl1cY!TAK%*sD#>IQZSp6qkCk+C3>N9D34I=*bV2 zpCx*FbgUE({qLK?`J?U1E|0W6bBuls9j4eQ=7qwbFTMotumri(CQAR{Sw_AgP3f-8 zZy9Rj8@_mrMW2fqM!o^{)6m?fv;HdmC2;+fI^9h1$&w2c!~JQ-*UN`5SGJBe#dSZe zQ%?Ue@ep(CZbd(h{Fw8zk7M^JH7!i>(_Puh@B8`u18aK77bu1QO=5k^gX<4IemSk= z)Skr8XMCS~9_US`bn>6b^>iLwWAJR^Ev5d634A|=Z(yFhxz_}Fo&6i!%Dzxa$rN>l&xqvZRrUb(VZd0M_91i!bm)Psghtw@E6hj6{7_}jO$wWsPyBXRv}aD5Ky z^Br*h7$Gt1w+nvR!(S{Izh@HaZ!Rm3k5t3HbGVEjUY}oYt%iQN!{zt!^+6wHdJ{cN zcnsDf>wc<9@tcFN9$od|YtZ$3E!x;JNWLHEB*3bo|3;u(FXkUSCp(c-$3XT2_ux3b ze?u^*0kR%pPo%V3)(HJZ1H=!5;|C#)X-k5?(I0~QbNnl8it`RMr_&*RtS<;ZQE_ck znsvfg<}2&3sOzGR4~L3h7U!Ekk841!9EXa&%zM~^`IfA+_ZY=xGf_ zzwXedF;&kPEcz>7pTZNGfEO5y`OzAC<=W^i>PGH!2curvf%RbIUKP6SHkhxkZno|ANhOc9c^l~rBnR}iGKv|56lufQ0=h;p+9i1tS?*=XI^SAG9TX$`rQxQn@H3Hd7~b_ul#)rcoalG8vqY$ zZyrzBudal?J{bOL-tzr;|GhWekDLPgh#t)PY+c_VYQLkm?9aIWUd-QM_=xuwz3e+Y z_kZX|!Oy;zTp#2_sDJQyD%ro6@DzMLP)baJ-jUBs@EOAY-E?R`Jw<FXM@pzW__x)(_ z03D5S&hr@XKOK2|i~gP-8Al64I~e1XZ^$n_YtQ$Sl=O#t+ZQ2O$yE=WBD}6*&Kx z(kYr^Mm3lII$$o83;G!HI@?TmFTxI>` zHQw2K0mZIpB)l1~VFS-Eq$1bMceO=`Day~w# z(PCUr7xC}lGwI&%3ossB&_5y(>q7=|xeMVL;lk^e@DY25EyBMIg@@;Q|B=fUQ=Opv zm~-S_la`RxcW3eUXFX%i&ZSg6#1yB0UPdqOH!!}QQ#*~?u5G|P60S!&#_V$V6`SI~ zC(CJNP39S5^^Ls+lg(Zu!(X!22K+>gtm7aVRepK@^QDN&nnQ;vDRjWj8S}#u{ePd*8oxxE{-gnT;p)g|{i4Tn6Un!^ zGx(#1&?}3nXD#55QMMuGkEhBt$lTvJ^o0x7rwHVCda5N3u0X%n#u%Twkxx!li!@0m zeP$D!pPnLLbPe@tYrsf0!TkS(da1MOK=U=!_-`ZV(fg1OTB`n7y_kZ^G~oUc$oG-T z{vj1N*2Q?PtFoSQIxm(MAFs{hS2crY#DcHju_o2R^(qei>?5>^aLnhL!gJUUD6A&i z4Tq;iHT-`slev=sRxr>xpFeFFF>8(EL| z`O*3P4EnywTGnIM5V^n0tJBuPpRq^67H{_Nv61zU{S9W>$I^p5<_o%kcRC7hYV}m0QiHDznweSyI&l|QZo)Yg^A>XnW^(kg*N~0JsB>8?2tY-{Y!|B%Tbh5_pKZ5+x2dZx$f__Q)@5dT$ z&huf&4_jkBxhQ;0Mp^(Zs%?$+_yy{@i>q88)aZ(p@D`ju^tp_E`A*Rj2yFa1O<&OF6%k(aq7+rp+#@ZWqs!7v;XeVct)Dz z{MA|Xv4Q5}$Zq^bZfwD+OoB< z__HuC@YQDyz5P%K^VI@g9#gPZhQn{65Z=E8=36JQgOQly1*P8(f4|b!vB)PDkp3K8 zBRuL~Jo;Z0K)xme`ATc_)<6%VMrLyTaDAz4COjcF{6+n$LHI`7BlBt5>)-5ejPci$ z%AQz+o)^Ek-cI}#wjElE{_a0GzbyYhH*7g275y&$3cQ~fH+~hJ_4_LNG1oBHOfq<1kF!2cXLiwpqfhbvd9we^`@9SL=O@B1aE|P6?cMP3f5iF~>fKtSm(6ZG zPx3^M=lqxZ+}-r?%YD&rS#K`)bvKQwd=L5iLz2%JI)4uxce{h%vkChndkWpQmwGq7 z#rikqVS}j`>=*w6+a5z(;h6d5B@EeHP-Gq z4$R$4aWgIoU&7Dy8fEv=$FTFzXG>uHMs4cQJ@C^xEA@=LzsX43jq7z9->1I#K^(fa z3p~y#=nE~`&jo%0yRZi3qCUEV%KPoJemkMZoWSSxK)v%cu)RCLQytU5Za_a70B?=$ z=+AIW`kS!E>)c`+oqKr%_0P{_ys-a-_3XpK7w{gvPle6o@}CBM5q%4=ALpF4I>vze zpCf)?U3L4b-r!Tn2lil!nVvR z?6)&m?~?t&^1JB&GG`rlm)+tIarn_{ocGr7^}t>aekt42;lG!zalV0b{vX5OpAoW3 z{2n-N)_*PCy|Ds%dcMEI#+K{oowA(gm%{Z5N$%_E-jZb)|1YJ#-}M$5RF+Nsn z1IFKCd4HaNn`>``=k-D!AIz620S=j{cbyOYs{;J2EYLrD6UO^I@Gw<`Ke^w3GbI&B zW&a3pV|MV$*+OHNCW}8f`*SmY^uB5meqR~r%LUXmb+^;vghcU^U{9DX6?f5zWAVZp zanG5q-}j(DQ=G>88P54%Pub5sdbqwCV>1%{!Vl7dm?)V)tZ|I;&i9Al`_1`cD=&?f zGzo|Pv{}~c=t76#e-$S4op}{>%89r9}W3c~5CEHw@_hJ<0`y{ESoUq~q`U8%{eC!7O z|Gd&*VJ`N6!{I;QmGvfN*xM6imKn(YIIO2AzxtjKzX*(P_zUh<8b8dXw$VPqH*o&L za`Q>}GYv5E4jsmyqR2UYjq$OWr{FKroAr0x-)&s;0l%m2!as04bo&|b_+5o>U?xZ7Iz20jxeem{@#p-Rl2k?H9dFupvD@#9_> z$vxK%JX1&Jdz3Cm{~uFl9S}wPy?qo66hTD=0|667NfCp&XH;xO1p`E}krE8-LO?og z#qRDzb_cry6}wv>ee90sz0TR+cjx`{xXZdbGk2ZqbFOn49^+mZuL{m*dD7dfMc`xI zF@H5-o}yHlx!i>rRNc6^{7-9c1Dq=Da*19_oo-aFD6L$JlBo#lWx46jF*XTdQ(_Qoi4A#`)A7JH?t_I67hSO zAJgPd_Ta%&E8_ioP#?ZXetkAs{MufT>*+BU%hP5|LVZVh=;fcm^WK%qo*9bz7IVD6 zu9Dxmic(ez7Wuc!VZQ39e0B0suJ`RG>Q*d+^|&Ma6S^x6LnYL7nu70ZtF#^5UAb?M z{&NlfgMYrP%>Jjd(s`K!c#dz-|5~HJM0=&g*Gll1`k;r`nqqSc48jIeF|O-Bdgo*p z1q`y1YVnWMqxN%sH}6IY>gAQW{+Fff-;Yq=T}SCZ+!OsS4oJ0+--ljlr>t)8qEJ8H z3+M0Ze{ZS|KZZui^gWqUGnc#isa2}MzoEX;Ic|y6*yK6<^2_4;+9~iel$zx~L4AB_ z_%GB}+D>XFC3`;5lU7bWHD>s~^{KMwKKoH%f2Ei|Dk}K-k$8-zigR+bvUBTR-NLiy zQ13oV!Tww6J7R?{&*3)o&O`VuFoc= zTa7gZd#;#azKesO#yTZ%TwH7WI19|*GZc&mCC}lt&x+I5xZW|!`wh#LqTB(}&lxo^ zpAJzle<`g`6-s+2@biWDM=HBr{*{iPpM-uzIpxfRzDjb>Qs@!sK>j*PV9VZ055-z^ z*E?dq`GNcEtF#KV2Qyd)e3k?~ z|Dx~#29+?4fSyNQt5^{`$pl+kZdt~uNvH9$_# z6t|#%4R{UAsS`gnA^#=rmr-~rQ2bre1mFKW@#{*BUj5;h<&5X|8hDKI%DR=o;Q5{5 z|8N()X+>rFxdEczrAF|Vxeh+Ql9Km)Ap8;O^Y6&S*!X-4LI2_+AGqWDxXHc!N5ZeqoaYzvRB}5!Qf&WHig^gfot5RiJ4ZtEE{XNPlFzsQ zy%{M^<(q)-t&aV=johVCn3#UZM`mH+GA82=X*b$_^9R zPp@G7ZKw4~kpF09-FfC6C?9DX946{5J;^)+@eZ@vg^BQ(LVR8%T{FeIYss4ue20Ab9@8YJXy&>&6EqVX%L_BRVlA0_JbH*8_VIM^146pf5?SCz8!x%3?3R!b+p%^@B3Va|AsiHBYuLe z|I;SZ)Jnf|Sudykne~jxYUdldMn4DlK@-%gD{_r|!wGo^f)Z`o}tl^PhB{ zd*5?_8vRq_9Uj;1kNyDJod2Lb*2kTJs&11OPx;+f-IziBMGSlc>Koy&p~afY#wkdFEY^Z`PC0y%HBLw)j(F!(tSm%=3ook!@N$ zB&&gXCryjbHLb6P3^T;UJM_O*q1Q>TU+V%l#PysW8yRkYYCuLk^5wD_rCb+z;tjdwWo8*4$K zA*TI%($;F~>M4epc!WnotE$-nTAW^^ifY|NixaO_R{KG3r|(biZ;%PUh`Sp90KWwF z*&Z$KX9jPmbS+k_Kj@RTCX+sg^&%6wB%R*QG!^;VOyn;Yi~Mgn`t}vlsJ@i>hJC%W z^bMY-8smj067{uzq$1xo66<|OVcl?|eq^~cBj0fDySM&HK$?+nXlw4NKkuZ)-)g() zhy2lahewK&KIUdB=_8!qj}57-AFx%6*UzY}w~y1}!b`ULy+Nr)e!+BpCB3s-D(S_n zr?>c2UO&2Qs*z`?U$>0@>FpF_9Qe3|zTGx0u2Sl!u5+9g5AlAZTN{wV_0Xg-@9TYE zCpAnl@(eTYU(>bto@|VzkEe8bXOfM4!jW{nt|a^@aCT??Ke6#XopXd1AG^9mXVOZG zO{cHcZ86v4tP+cLGr>>L-;MntY z!FT7s&)nNvcjU3gKfH)(s~fyii^0F@PETe2g}<*)ike7Mi@db5mtgZINv(0t;Id;|8ZQc261c>Wghd2f?j zb1C5Rbk^f3fBD0&n^e_gI_ZzhH+)?GGbb#@DY#q@ZVj zA*TEk^eAcUaRVPg@$=ZllFna?Q5PXCXkg$Yh;R6(CH0Ij@DCJUy1h*rRcoS=X9(Q5 z5B)DD7OqwH)#s6pUb8tEPMryuu43AfukL*l8N{hdY zW<3o#SqW^Vbh4)*rq3roiGG)2m~Wu-{IA@SV)P(GOnTw_YGt8g8TxA=UnlL&DuVt~a1`r#^qq$svlcm# zk^KEhKYVzn3i|Cv@b@K+u*1A+sDX-LeUM_SL)FoH8m67elhsy7pg z+c4J0Dc^D8uZMV%F_h{vIp6Wg-b0MNJA~&4;!XBgxPucO!sCbTZ@*x7;gU0$`)km8 zdhMErc=CY!B)-vnAYFLnAwvBIu|7`u+wB#+kdGR~_4Jgl9yYV3Xl_3U`FsnmuWLU` zh<;{+SYIZ;l#|ukip%9fSU;wG*;x-?vA}#Fk5AI%A9!>GKQe&y6p1wXF;W-wa}K8a z3xD&2$e(u?g~9!qr$GKjyq@om9=1X7zb}P)x+K(6^abA%NctJ_U5Q}dgP>stLN9Q^ z{$&el+Xsk>t^2W`0p&Z1S6>#_m-i#&flvN#=ZpH#`UXDuHTuVn6n~xjU_6Yc{vPPH z8i9OWZ?4zv^ynvQ?W5su9{~N%2l=>D;@zXMV({Dm_LCq#-u)vdV88Cq`V7^$S6e$- zsGa=DZ-n{ddWWXLKfM?G4`6(VPp4;!Lij<@?xrVqz3!yffDbt?{aKNKdZuo;UU*jE z4{)_00h(Jktly(}zCW@t5&C~u9v?V=_~Z_m4UMlWj~`;HUU(&m`&nIh{85ZvQ}9La z%;OU|DWAHZQbgU6THOCjD)it^%m+a)@EO!7U1TYpFhADy!S`wX$2tSoi~4QY^Zy@t zAQL=>7C)_$DF&74K!4AEGU%&``tA0{`0Ceear3G#?+0oA7}h>h97<`&ybI|Q*`w3M z#(r)2deVM-YD$tQI;ZgUB>kR#uk{QW{S+j4OSeWX*er4Hf<)ty>vInj#X)28;reaT z$F_Hz1-_;=`{$DfO26P)B2?Fk#|!QE;a?@b+-b?Y2YsLW&*H`5hAo-*p#35Fdvu-9 zg7rDNC-*Fpk=Lbu8doHmFSlP!5v7`W^Y|p5;cSmI)Q~sl{Q`|wyXWcff%d}vI4;qc zpOTp=I@R>zzo+?<`b~75(9HPv5npq}u1B86`&}++<|4o1!S@?E ze4j0s=7SIL;QLAYhflp1idu`^nLi_b;_tOZ7*krjqyJ*@Y>yj{FVgQyyDmZhTQ|Nw zbUmp*_perN%$tx#Mt;@M@@fCc^}6V5iu|4{`;$-(`*H0&(KOf)6F*D!$Te@e@ar^x zv@Wp>p81BDUhlbinfPPvQb@UWdflmbIeOSMHO6h*tq@jAn=*e-^M$kZaAffu0JRJpZbl@{>K&jlO3!FXB^6dkD?p*BLEX5>|GX%)}!6nPXhTWcsVZ+B_iAk ziFL3j`44jWbHO9Haz6t4x09phiRDv?zo-cw;V;;wdEkj$F`v7jzNoAmWxf~;nj8MV z9_Xi9NB%N$1=b5s@L;L%W9TOjthPq%Qk!9XsmMnymLD!%B^<7J@%JIkLzl4{bFLT9 zcl3GQJ=VdG!;`NM)qpyLY!D;Mxs$#wHyRKlXN+74eXuE>uR-v$aFegsS}BGPY=ZfG zxQsbTp15i;`dLuFk6_dzyU0uSXX6amfcQB0otBZetw|Gyj@D)VgY@`T<7bOm!H$@p zOyD(p4t`ZL#O4w9w7-MCc3t#)6NCD0JMd;!$lu*$y?aPjEu62zP~YS$lLkKibWQF* zK>h~xW{yTrf*P0~nt}Ith8pdOc;2dmFWAoh+&f!L18-KH=X2^I@+oMBD8J7Z|6dH} zr<%mi6ix?iY5hdpL?-`+abY&h+tB;-3!B5i8~!=$egNjrp;SCG#FbE85C&owDKAQ~~<=Z{p$P znQK#^e_G=CJOW+ujED_MKz`B^*MA*&ku_p+?P*{REs5_y{{KI)DWl$sxfRC83HUQKl^?Yq zB$ocLLVo5P{H8qQz`p(A-(C^(;TFVr)AynT)^-vdDTQI*sbHJ?K;o_gZ<(VI&ImR_SN}Nn9$Jdwo zOBB6~7QdgEb4(gofE*)imYDN?hWm$g9*eqGb6TIcKD}1k@%VmadAw83&#B=QF?xR) z_WPjs*bbfveXca-zkiwEY`HKVJ!MLPf2xFhZjxxfJW(8eYleJGY2>dX1$sB4p2!UO zpIS2Zt71fR+}})7`aaA`iD_2vpbxJ>eN|;qfBbH- z8T~V;zKg#9V4ppx&!YYr!v!&v7a!~ue&t`2A2h$eX@mXZZSB@KDq?E~n^^$`3= zBJ20{${!Tr8Ta{h((fNB2Zg@iF4s@fev0}596EKIzc204{tG^Yo?*A(r?8Xj?|W}L zggN2{^nt_td+xnHgq{k;Tn|q?%aDhM#Pf4knLiuEWF7Mkv?urdxlNp3co_P`F1|joZMKQ=CG&B8_weUCdu>5|>p|%A@Z|t6 z@$T@>OQu;9Zv)tVQUgsVA$%S@a ziT&?3+%Hp^csBBHxb$rc?nhaf^7ZTAt`J`JHsg6Th2FVD1TS7GZiH{d@A*po*N~rG ziT>W};dfzy>$P1>pS%iwG;3Azf1qc!Le^^0{>y4y-&Yd(txQZ@1Kw{HzV9FIkFk01 zTI}gpFuy?0%jQn&#KYw@B2&W`?B8|`l5@K-ix7k z{UcHRV2mqjCgT>OzS#`<|98@FyUil&)qMJXsMj?T5CEt&BW?P{r&B6F7 zOMX=nUGIwlxy(n4%&@E`DpVuE1$iLwCW$}C> z`5r^P=w!TqH1f&Uq`aEP#IfZQFh6*3e+i3c$HDB3gMUc_?A>-sPf|{Z2AgBZFP+Yl z(ziJ$!TCjz-bMQZ$@ktV5nCo4lng(1HJCq^NiTn zJH#0OwmSEQEV^m-ckhdMPbh?%!E z9-^beMRBWs7v>-6{e#|Jg#OjR$UltQb_vXhfrlXe!7=DE{1-JIVp#bi>KAC_9~$i` z5+&nX^50W_AV2hqFb(zs|I&=}10Ty=g~y^h$CMLmyy+@>wl&4~ugm>BuXtS*dxH!- z1og{Xar!Fu^o^mXZj~sG3ce<0Y-(tXuZ<`YVcY8(`H1ASB4~sTDy`MTPh2Q*1@$3z z#yITU8R4?68uJcz{hz`+=Zx4p!5aFhqfGn7l1omDC#N(XV%43)qR|44hgd!3Fg%kg zvOXM9&`geMw-5Uj3p@{V;D7Ip9u|8=L7^!BZf zyCX+nj`gaig1QR@ZrwPumd5oE=-H`T0mBRe~0q2j(%F83mq>WEXV16@Ihyi(g-W9L^(RbKyjlUPl_>xNw zZ)xydKl`6X%HU_Cl}>ku={6;Q*Xvg#DRXT%Ds@*i)!mwBiu;|atgNv`iE=z$@VQ2L ze156|OtVl@1|IyT zY}um+`Vlpx{TSBo*K&nF0ixwhXMElU_)D28bL2n~yT}#%$Z7BycFI)0{-U<08@}&l z8Ec|)WLq%ur>@`$Zh@z?RDKo@5TcF?`!gK-Qc-F3YM}VGqY38EJ2Li{%HyXYV00Vf z?;nDntFCmvGYI}Yjqtoa0iRhDyv$&DA~eAI{2b@CTFR57*uO8WhtGQoKJh|6q?dV;oGb-_{KK0zm}=L-oDV%_yq#XN4(fO$L(Qq-Y zQW@;WD#`G-kg4BYlLN%p*kXTRBL_u?qn@KAzHb$o&dch7aABVIAN*2kffuPMm-`%! z{Lv5aJ$5pAu&s=WfQRZQ?oUBH{QWTzSa07N{UB~6MZiPig`W1KYKsur#<_z;Ss{l z^r)V+S@;1V_Z1j(Xd3}Pvwh&5#$eyKO6+eMAtI7@Fpog>CNr%g#NA<= zxPJxKEJ437v;7+W|A|Qs_m9B%SOy*{5bN<0{`=$g7h?Vh;r-IZ%y1#z<}mL-%=Xk! zT+eH1{Q1Oyr1^x4bB7X*yu%NxaQL}R*VB4Hyo2-oFkxM84EsTl|ATH*nAme=IQu)$ zexuUpFwF0P%s-H4#z{}S9@0%u^)>7l@frO_Ybne>(EEvRS#jDE{vKKE2QhlkNO3f& zA^5E%W_Kg3(O=Y~Ci4&U|DQaLJ>peMJ=M$5=ac_N(%6#hA3>il>V%4z3U73D9wkP$ z<@FKh7jsodpHJ^^-F%AbICqYbZwMSWNu51$j*)Nhcs@ZbKTL}U^dGPO>8{1aU^(+z zXtBM^81;q893$WGV10~w`gN``?&uJ$wz;Oof0sn5p*k%tWfQ4-uh-(>dEshWmKK+= z4pYZZ(Bf}%LRE(lE%vE0LLJs#i;ETvQ>7+aJoWYv^-INEBkz#BVUU`CJIBa3lyeEe zT&Kle`v$1r*J<&^-~H8`6zVTx;2jnv1*x4zY4JUae)#`#jJ!iqpWdo?nQi17e^xf<`$AA(kUqvwHECt&H$uFFSDS9C)5k2%Z_$4Jvv+4Tcv_Z`Z`l66 zgF4mS5YreswAoi3_HQQgt%m*;=clw$PrxsN{IO_kz6qDnzarDfJN&hj;J1-s^m9n) z)=CY6Uj+GmQobSMlec=kR)&#xNL=ovx|~fn@(w*(H&YvL(&F@E?wA|Xjl4tT5?A$b zxpcZ-+`poJYZtZPrN%!b-)*9XpVZ<_qHw0OVXNp%b|#KbdfAKp-% z;ibjPEgGofDrs?(1NGDi4-NbS<+CFP*Hv#G*5dIc>!{WM;WzMZTkC`#MdF;dQE@%U@H4J(EN-1 zhd%6F8s+1#)+7u28w>Qe%BG`!cf3rD*uK?v?Je~~zo!{rZ*riSKI^;|?{sLYU$~L@iG`fc zUvs_z_GW4SAFtr35A3VOHu1Iev5mBN(+V4XrQaIwP$Idaeo|4Ykzd&K)m%SsZ7TH2 z^Q`YDtTEG%o|tOn7ltkUPxlvoBgD24@8FvB5&bbzS%087@%>BP4)8Jm;~8%Cf1qnq zpvAAQ73(%;XfgWxp?`%I7i~YP`_aS@lOAzPI)wfe2Ht^UhbueKze0{8|@{uk%foU6-gp}pSkQmSrEX)VsqjMGJ4)A)x%vuNF)6-h=v2JoS}PNTHg z(xbDkcPlL(`L?<4TWKwZf0{1%s>VN9*jLgy<&mF=fp?Is{w=89ayEFF7ZT;$A_s3N zIJY#B^;XgplRf1Eu&>O`h4FU$Il1x?A8sx`8Zg_vEEF4gYv7A)VI@2Bd@SFv#ykXdxkN#D(@vt zh|=Ok%{oX9?+iQyt@&AV`bn8HwK(y8m^95wi{o2PLC<&tA3^UgG@mWGUo`L##C$o; z$dKILPa(fxA3CE?3CNX_q{(#u*q?#?>e5b6qUVp}4d+%%>--Ec>0i5gZjrv+G4K!+ zZ_U{)eQ!RI`32$|z6It>d-hE*@(r^Z9F@YoCh+TYe!r1)R*EhhZ;ayxUzDthVtKsL ze4|8Mg(rM0&EMR=0^VKHVPEo#=*D{8l;8KIUFuklNk0cGDUED0mai{;ewDYc;h``F z*WZTq%gJ>=fiuzKAw7OcuFb}f9ti!jw=^!!1oii$nYW<&WrszkVo$x%{CU{VB41G& z{o`XuZ^r!EP5R+p8vH^u>$lj`NsHE$5!LRGVttRkvqy_^VpY>oJb%*X&vGm;%1n!* z^%{PaO(a|M3gYO!Nd7$NGg5$TC9ZXfr1gmP*iZJAk>iTs>w%n=bo~S2=CJyKNY|>P6zBLw= znh)pkO8KChS6xt}G>rd0THkOM6ID%y(euXlZM}0*W)y=r+vD+3G?Gas9y&2 zebYX=VP9_GB}k(kSj|)19y^$MB>H@(a?M2DRfBkbqk77>v(W$DYEU8N;)tQNI@A(; zbqM$jJMVVe=@7zt1g$rVueKK_XAfk3n3&2f^E->weFnb> zVstCj?vDQ5)K3GtMAMJr>%TovZ`q&qYpQ2;pBDf>?I7M?kbicLdq2^?LJ<33klvXx zyT3^H4ut*^iG27Acr_0cedGJ_{)P0-XG4aF{_p#;eoB7z)E{H6e_!T#DIY`UsqdTn zu%9-5znHQvN>q8<8~xW?GOs}O#z$>>bG<3)tuyb(!oMwm`zO$OB=5{b@$HpA>tA#p zd9-kf7!lyl`Z~QH+h#iIKYOvC18EX9E5sq6+>8AVh!20$Z5H(Ap4`8JdS1sgj)(ts zPu82MKH1YV0rhb`_PtwCu;=0rIlu%!a z{9%GP{kj{E4}5RUHv*>E%A+qKqqlZElBM;I2 zdJ4`XU3h*$j?Jgc#Z=^1(@E)~);}5#aoZI9LqI3e+rdZpw)QKZ1zkqtAzB{F zMo$zic6^-$fAS7S{^8H9Y$3JL%tuqrv>BB8~y~F)Rtxgj1Z!L{{(uu9;(dg5H z$2;X~H^!u*|0DTDWb=G+s!}@mmFA?saXnY|sSNa-ZqDl)@m1hWMcH{?(0_X~FLk|E zj_~=`jAP1St_YeVf>HlZ{0q&Wug&I(*%v+k?|xcK<{Re2gV~ekLwX)`tro(Q#Dnx$ z_?dN*)*f91KYT-s`y-t&T_UzGcjx<0{MTRSJh7y{fseqMRI1c`sj%AX#`8J(?fe?B zOw9Fiqx+BNEn9L8Un(kiyOExbd_Au9yk+9!K38MhyWetXIqm`6}w)7=L1wIN#m{`?D_K7xuyLe6=X3qs0N+ zSHd61h5cQ~Grj#y=pBt*nUA9S_A>vhKux$C_JbbWPdUEtN{n~@J$N2|!M|ap=-$+w z=ifKIzKarHSBZHM?sWZFuU(Y1N?fYqf&1AUdd5@as+T~waL4t$3Z3$uIH%8p?&VI; zFV9DlcYq)9aL4-cjPyStn=EEOj^at?;0wNrJ@1wvhu{vq-U|7ilCpJ^<>*K2PWrD* zIUJh|U#DykF~dDD-z@-3@J%>bZGq>vTjBV*lkoX|@*A72qDN_0 zocD6z2QgSSX@#5t_!HzvkRKZ_oA_@L#h0A1K5vt2x@O8-|67Cc=tO=b(3|?pe;dq$ z-?70jf;`rPx@EwBrVe-oOPOlA&Bi6d1IGdTzdDo;6n69C;9*`H=g-wM^r+tczzaY2C9Qkxr}_uXVfyz66Z$R z@cEYZn~wJAN91V3`ZP2!krI{&KBFr0b)@MKPj-1o74}P_8kO9G$*767=KU`D2UN97 z1z%Gc|6g@HKV#9~FICituE^^X=}$jrq@ljX3cMlt0bIhIl7Si&OPqI3;rkwgwx0=I zk^B_yLH{cfA#tc%>BxKl@`x~Nsp3;>IaB> zS1jTGuu;%^nv4iSeWex7gY(JnU#5OlcKs`IK7p8lkwbb2larN*-$ecQZE@^@QcTxf%X91Gw(oi`r77W#N-|2m|vr~?~+*f@02SfZIV1+slGFz zmpQKo)Q@20v1wxQ;j+v-QGc(Wd2z@CmgRg0X_6np5`>3T2IFH9`(w2lm?VaFDNXw^ z=0S_jrJ%o8Dfp|HLVrOHF+E-MT4%=3C(VKBW3t4^VpEQ3&gzwtBRs2_V!nIGJVwb8 z=r7d1B*yzALHoVP_(kyWD8YOX`5Sa}ST3dwF#-Qli~A>>thO3_>VK$@Y|eZ|$3AOB z%cXyiFRsga@W*#+(BI`Z>gB)j=QjvgC&nKC$@TqI&lF^{L6q?N0sUYl>#e@cHlshp zH{^?Rp?5x#){fo=jp_?>G;3JzPF}qebK+;@`wy|6U-ryyvGmbL)MKh#e{MT}uQ<^D z1NuR1Kz`O9{fG7mpLOq$k6y}p_fFFTV2a*Ce_aTDtfH`251?Pj8Ahq691`1SJ)?SS<~u%ZIRw7-3D+YN zU$MG;KKheA#`Qp78tkXkrs4{{U??lcYxM-5c}Da;00dt{rGrczX;rR9D2ezTK}XullP)t^ceiV z3;6dOE!>0p^&`+T5AyYHn6L*PA*xDV#H8ULd%sJ}JECLWhBSWix6f@-!1_1EZ?EnW zHUUly6qS*`>CFlzmLn~Eja(|Wj=y5?J^fPi8`sf+3$nu z!%Si~iZgR};(nZme(eG_e1k~Zx*ht)P3~Wk8nPb#SX*&Fso#bo(k84E3odQO^}NOX zTiWHUfgZAvU#IzD<-^tD$cgpP=Ss+=-;Zgr2Acj_Tt9Q}FY>wSTJ(2X!+t50(|5LA zC%_ys??BItiQRhf+his9q6ZS~Da@;F5Z4AT$Mf}0qWR{1wT~FZa-FDHk{aoT3_#qb^JxS!wH&pNEselUz_^!up)64sW3=+Bsf@pX)O^j3BAg_lJ#^I5c? zqv!Wc(rjG6P3%{ZV5371v;@pQvrw=4K)I9hok{5+a6-!N$EN%)7215eQq=f~af{5%am zpV7>N(0)5}%4xCpSrlJCioO4wLBH{E_zje2e&TD<8JufJ(C=rz1bTg&>rmpK*x#XD zE%cAr9)jy-;2jEHo)dpo1RLXxUKilE6NvF|*w1@byCBZ4?``BE+FZK;ezKP_zVqXv zm^iXK{XX9R&)9TH)EnA`WBNaccbGh|qcI-fP$UkvZpSgsYhV_NMDJFLF}^YeGc@7+#IKjvMCmUE9)kSt z<|P-47T+7w^MU+pvUK04SUf84Y~&vb&K2W);$)0h*k1?FQ{Nar8GRj^Q61u2n4dWE z-*xnOu{Xv$>R%HJ`_?q_5oH!%1FvjrjBialkN!QCjC{mU{drL%-4gnzqfF;@|AvLA zF*3*ckpaJlFXGh!Rh&&N4PGom#+VSBEf0b3CL*HK{#wiRkz@sbr@rW4;ioL0+Cw-@t$^pdmvZMv2>cQx_`#LO{MZeC3jG!3 zzBBym%3?k52>*%R%H$n2@cfs-d?G9FH~1;_hL#gY*OUTZ*FqWIx}%cU|EpC0yczyK zH)ZG8PD<^+x1}?4&7e6rDX$u|QR;Xflh*z=gI`Ns_#+5q*=N1fZ&De|KUEd-kC^xC zo;16y1;%R$@Ch}QumRtt6c^%8{(;_Xt!!z4G5XL7dUZ+g8+DX6ofb%C22})KS3zks zz*`BJ+*%s?iR$+q;pY&f+#i$XbJVpe_&P-yBPA(a?OV0FKCTA#56Mb5?@daI%SIpb zQI5D?vz4Mc8IdpC%+qO&hpi{f<+PeOZYf7`vq@n?1o_&A|0q zuAm-K3QB4Lejru}$)Baf^k{?6$s`Pe-BON4nB2)mIE_-yYvD2G?VOvSoJ<m@wH0yKnq&RDF4O%dzX#MDk$;q2?nZe9wIHH@ zV^>_i)$-qK-=WEL7VqymV?Lb=e~0IClLGWmf`*k`EfswE4f#TAKhb4hL-_(QUm4uJ0xJVC@RZr=Sp#*TNk<*>!o0R9P_^HD%S(F&i=Q{sAc_IaFixS>7F0-q4XJHb zf>ntUjW-=*{($@rDR!8u1CKP0`S%(dqr|=*2lSLrCBA_^A8ab~2*f{7f5RJ0bvr$=nE&H9W(9leNjsw7L;k*9$~YVO2I}9qXJ2hS zG*|xoBYnfgy^zX!(vFA~MK3LJretY7v3|r?ke|m+>64E9D6j_rFC8X&Mc&rY`)N;8 z$9t;!G;}VXAL%@@Z~bI-Q7?Fvm!rkzEuvJ@Nm^XEJ3d_|$dV|5wp;Caq zde&Quiw5*iKOf769$@fu=w7kAI(>4sk#{(Itcx1rVum}RhjMf=;acfqDU*7yhb zb*pz&EiPf}s+L=(#gPY^s?R5DaWB6nYE^$jOgZrW?;ESlT(sC?ZX?zD|M&`e-K?dP zdh@1%f1v&L@B0l@tG!x$dTM<&YLX!)jr?HUdg=>*E$(r?4%RL$&KmEiT9nb^6Alh) z`v371^!KAq)Kl)1o0R2 z`YUH!_4)}dPWP}@R~Mxq|NI2}m!nuR=$`&9ejoLxpd3TQ+7tRWz0z_2GQry|6bE0e z(0^!@VdNP)wpgaunP_o*t$BKXs|@7B41Nyoi_`Q~>SP%ChPUsN_4(g4-l0$Tp8DM# zGK~55)k{0+C!>GL|M-Oof7P(Q98wlodn z&)~m+oS(i_v=$Q&5hiQ#ooc1@6VadLfA8Pg(gbt4#y_BrKzDqX7C-v;jc$ItAtrtS z=Wg8$e=W8;bW7K$jux+Wx~z-)pz#mXFJs=36x<&J-_UAGfi5sdi%FPGsV*iFKb=7`pyu;{;3v^dbCL8$%&uW>v4)e5l*YO11$RSz`o>|w~MTJW75c2EJiYVN+eHW=Y5gf5KVJ5$maiuF8VhtdG*1IBcm}5Vs_eWAYe6 zKeK`<>k?SsrG6CXhjF;vjd-J9L%oInwaST%XMKp)wCw6mK45C7ev#`jJnzQ&ob{N+ zdO7h8QDVDK@!2>d&*0-%hOcWTJJ;g(PkFXvgI>!N{= zpx4pgTIw)Jiyu^NBb9$=;3Meuu5}k>!TP?o*JV|P^VhX=bJVQ`=w)C`#7Ss9R{FKQ?o}tveq)FX5|7ZN(;jI}-HAN@Xnt8S;h=Oig8U;4d_$XSIw^1Kc<6^cxn5lMKQ2|X zCjW?TtQSTcIVbg)6U+K2F(%*6UqOveEMITR0hFFqEQR`wGrYzz-$3=u zo@vjdX&=WjFF-s)t^IGM!bw^TZ$EfAjN$J?HR;RpKT5H$M;rMDx&3SIFCZfUbXj-2n`uhh}OCX;Z&95UrC_PLp2@io$T+fbtndJ1*4F1WZ zSdU`{<5*d-V{w!*UUjFu$fy{_`X0UBrGq8>R3rKCQO_gQc~}wkrUw5AVjxaiR1rn7 z2LA}Uru#=$6D4njBmX{GB0Vt9xw^3S4d?Gi@r9=~g}f;Ydg&|)dp2p#fZAeCsW8?j zDIYQOmYulNWF$ZT#8};1R9h7F3&r(#D^Y&ZcCbDA!;WA-0o*gN3=ZgNF`V}+ltX$p zqoHt)7|y%`)wDF)-Wd7nVTGgx6La*bWD~JQ8OHM;a(W_3Y6@L(D6ZE%(!<5|6HP^> z-$Uqmg8!?fD4y>stcDIDzjN#lUBtwy9>~ED#{Kvp(ReF%^oBq1Af8Xi#`s?X0+ro1>1bWeGmHB@;QS1&vT2ri|%)VY5oUKT|rJx>m{s;`ZK?As_Ox9^L=mBJO(k( zLi*!G`ex%n(bVk8`PFN4=NArV3{^*ov z|NO8o*Gpqg6IC-J;BVcB{VxnTyfN@!=*{yPUH`i-v8eCsjr|sC-|+iUnuaq9(*Wn!X;v+T~#KjvSbh1+He`?zkbZ&UoAS+Z#K zwkwYxiiht=hCb7ko>w0{?>>Ewq@bRr3$5=y*zfr`HB1A;(S_d6eh}8h>FD{a@ewVD zW{RKEEEzd-tnZ_;e!Clx%u!{G0cEWR#8KaK4Ideb|2 zmsOEHN6i!uKM@b{mHeCKPJiQ|F-q(gK>FKlhXf&gY>oQy&b)ta^C1Bq%dMI3q45|| zkcfK!mY9zVCDPoUj7~z%yCt624HDJ#Rr5+gy;}?3ACca0!Zc01e&Nmg9jZaJteAm% zZ$nJ;N9yZL_$4;y`w2})YN*Rbf5qm!9?+WOwmcX0gI+uz)0#AD++27THly+GL-$A@ zF(3WMoAG)<%$nl15dAehjqwkw#mG;3()g8V{`)j{iO9L_!F&at4{5Glp2+F!!OsWv zs2X}b4;rqazXq)r#||$={>Poy2jV|Qeq09sc{g5PXuW$@ZiN^!#*O(Lx?jXM*qOTV z^}v2kI_0uTT+DRk{xG!X8lSaF4CwF5_1|>9HLJB+G!?FVzMvZ6naQi+m+8uU5Y?E1 z9~1$lT^D3lYL$3+-JR>t$v=c!cHYHvH`L!@vZMRDtTIUSCKT9UhhKc$e@cV3p|34XivIAuF z|3ZCK13XUw$e-1gr}`}s-;dVA_;ZwLew{u!m+F2oKL*L9ufM$sf0SrPe4ao()mM?x zG*NV_=790tnt70&ed3`{)+YW7{KF&EcBG@nL=EsTW~|rG8IXnfygIJmN7RSbmYeUK z4Il0r;8!;C^>xaN7kAVe+|QHpPXVP8#A~w};BBYEA3FoJ^9jhuRp;|KtqjxDX{Tz~WKc`E!xZD{=BcdQn7Jk!P62h}h>j`MhbyF5dLe6EW1 zY8B_lY|S&_2~vfhPg-jZ&Ov{hxs~~RP5Bq}8Ti~Qbgcrgz`|Jw@WkAeK9k38acuqfPZLGv%}r7TYx+7~^fEU+HkhM%ef=UY9V zTX6pdcreT74)sP4ODjCzRakH6z6$-S=2@}6k9@8O+tUSS&`P|XQ;mA+)NZ15<4UwX zKnGN0{n}n)sJq+7A%}#uBfQ&*ORR@8MW;$G!;7>D{=bLJsQFMV=!mawolXMTwI&t0Cg(X+m6A^8>198)I>&ue-a z@Ksk)zcm2tRGPTHtu(IhcZ~N?^d8O>^@>ViKT!$!)oAqC&4pjF8J_Rjc>c#>{LaI8 zH^X{Tn_sUJwFv#cO!@whf8wNtd1C&ElH`XaQ+>;&m8(SOuoBq6yP^KBow)d5tq==L z;NQ|5^{G8EcW)4zR{RHj(+Bly!C-eb!2{qe$$y1^LV0(6idf^!*2n-3mVE z7xcron1@=3`pPzuxAh0~_&nwvN)O+GdZ_QH_nXUlcdyVr;@0A?$S)tozNIYoOZ&iZ zePMl*{0w@OJ|H3oe`212>ifylt8c*v=tWD|-@&sd{12?(LyujI@la0eDT6)}!~aD- zJ(qYSXq)+>?d~_wGl-8d6V23ovHksP=u5H8XGjMRi-DtFaXmQc=l(+qFdw~8X)j9p zuGhW-%)!r~uf*}^`>ZU0-uo2#ei;9rMx}IO+_1;cb0-q7gWlIVA!j^9Jv-I6RR>R` z6YU<~XZ?-Nvmd(Z#9`liR6ok!r|Odev1;TU=p*CVf1*a=VNoIK7VELJhwfv082yQE zu-;62=#WYU;>4L^@C031&!+l#XpYcF_OTv+bGS}i{Cx$yNfGuR9Yt&-J^Y)CpbuPy z-?1I`&*))eQ^fW5bbZ$O6^hSQFXMU@@$c~oErf@|MO^<^$j6t#`MMDP66g7T(*GYg zu23|edyeXN1!=tKPbpq_odxgmko^OK*61woX>|} z{0Zm>CvmTzK|ekyMr}KW`prVt*U3L4{m&7O=}gflV!znuU8vG{rTfuT>_ZO*0U44$qef`V6OUmF7dmyM`jTnW9q0`#e&?6Hg3Mj*zA&%ezVTMn4=<+s$2|LB`)$H>@FM0X=zQl@4}HTgEWq{s#q|r1+V4QW zw)y;dv>z)B-U)qRu1aH*_Mnl|cfl`c4tS|*IB#5(ZY|!8{vSE0cXnjn=Fa? z$rrxi$?zN4%kzb0MXYIeXJh_Z15T#`_;ei@zeLpE&g1d_=AH^3FCP9Mv-$a1_5BDu zQsSU@4`Kg@kME9&n#*TEkM53h=TYhT_7h^G|5X0IR6lU~^+^$Pbt0Y*H}p5kmoo00 z#&bLl^I1*i8%~&>6??agWUvj@J&QIwDJ-QS7FHDWR3_lb<<`?J;XJKC?8rA7)j5DqmiTA4wJOnY) zzjCjL5x+GaqGIc-V%%qqhw!zzCe-N?^AD7dXma2he1Qx+1jU`Z7K=rNUUa=Ue=&Pk zG5BqF+#dt)p!2^jRvmIN#(h6r7jO4F8{>D`H^ig8PR4ke)eZQa7Z`}c;QXUmzdtwOdU5{!8ziyq@>h$(}pV|KywAD`YeHC>weGkd3I< z|E2F@u^aXEVetQ74bPt+djErZ`14H0o^+uwi7A2SxfuM#Hu=@yOffFsOl`XR57+y@ zo*xhWtsKUSy;9QIN-=vpUYszkjOU{>;*QGV;lqWQnKkD3UP@SQALUo8oLL8H&8B|_fdiuzn5kYstkR(GWv1USBm5k=n+^2*S~}^QE#KH zI%Fy0U!dl)^Bd^V6_oB3tBQ4<$)Djq_8a9Ds&ATHyB755kKmE*&`;r>bYz@8*0&N$ z?!$1b?Pwn|^i5ej_7(38^( ze1@}fuiga3zxcQmezFzjcVETCBt^O3`>9lKsla^bt)#X|RC)xK1fSdv{E4pu{#cn| zXDc%Q?S%0=TG{*|UU|66Nknw-isx$(c#t@yOB-*o=2bUbkCDpK&IB7rt5U&vTvZMx3@din<>h(%kj(u%)H+X&r=-uiX^2*^k8v( zVi)*-M1e1vtT^uU7ga9%f`4cLeq)+aDyf?&xkASO_YV897D`rNSM*zIh3{90{jRkV z9o-H20x$3)n~3jLdb#^y|KyJS%0lo0|H@6xdy0U|O);J`uwTC`-`dp+enXA1KTCjL z&n4cEkJ;*s`;{uc>2*_9Yy(B~y{63nNabG0fhU5+<|S^JZx-Rac3S@F8zQVjJ;1YU zA>Lg6bb1i_t9oL+J&E&QNo8xx!N{36LqDj;I6qWXuHHx7%LDtnyI9|j(QmT)I6<)UH-irCKlA6HToW zExJDY1Abv6@p|G_r)Y6F@0*@_Jk^XdI9JYvL;CMw62KdIU(2A*37`TrxnVS;yzsC;|3k#D%sEJn=U zzm?xl3_kt+g8A$D{d8WMUI+1{mCP^Dnfhqu7_75Pm|vjZ?EEVlJpMdA>B$uLxgU-E zd=~s^64?KtO+hsL?o#;o(H`#KdC~9)ir3SAomfnVVbNmV{fW#w5Pv{^Iu&!`3K9tRLXS0 ze7*qu{s!@3Sd_38b@+8UUwDa|8se)y@Qd^E-4 za)bz2@JL6z1ToJ4wwSoJaqn|_O zKz}uMQI3&sIA6Y}+NZlArt`H};HRdzXmN3HSG90=Hr3;Rml=(-bSKrSeKzSc>_67+ zVF&eV-E3q3ird+~>Z@y6M&2R)SR2(oEQ|Cd_II!vDy!zzvW&dLZBt1-bTpImk;F5v z8rfQXxHQwqJGk1kR8zWU8hMA-Pn)X;OJs8Xo%XMzr+KM8A87nT_o~g*O$Ay!d4~t~ z+W%jyxU2Wa7-HfVmfm$$eZW&tKA+->Q(RQH##(&Ewy9cFN{jF2JFAh`3_Jw!4mAD@l2aXZ z$~r?#=Z(Tk4(ifTT3m6wJ$M#FOndB(4z<;%R$5&Dd@Xg$3yptpzi5NAVk+`+2EO4^ z!Y}=&pmgL%5|JNSfZjdD`h!Xa{5rGXkF*3{#+$$kWE%N~+CA6nYt`4{z->$QCap4& z&k4hN*aae+nMS@LYJQI1%rO)B-9TDD(0g&VKB;CV)yIH`FOB-&ApNQ?nUv3B ze+KY6`aShBIe(8cqfd5oKmF(L8OAs~wxfRb#SF>^v;N{;L(xa9&0zh8a`Y|Bx7IJ2 zsKvMcdg1f6_@UlK?`WT4LU#0bHHydKoXUuAq)E}6l#Zi-f>Lzy4V$>Mx zKG#TNy^-F(F7mmq`Ri0;ET6oqt9M9?Z5v$GT}{?v*YqohkH9FUHEw(zeSXVz#i|6|1=swod;(AUqbiZ*6=F@Vp!Ng@dJ=`^?_2#pz>a z_?(}q#puWBqju6_U8_?*DV4OiU9Eq7Uf$C9hd1G6q;jjZSnpO{x)H9$!58aG`tCF7 zelg!b{qUZ4p22z_)n5;P)lO;{I-QPnQ)2%EfI+I(#i&wo@OwKj7N zG{8x$SJC{I=df8yn?U{%20w?0`@8V{sDFlmcZffGP^ua;fq4ZQlO;doOWy0p^ZlUn zcX9AB>4S?F+dV%gy?ztRdMIi74KjNQ_n=az7)avb;>XA?1P-EZv^`RP)@UI417xS z!+HIqdh$b=rBQzv&UzcInI}~%)c1umk3jjJyfZf9*GuZJk&Jrl)9@=L--IwcPop?a z8D@um=p(@&q)L<@o|ab|npr517t&zlSVwVY%Lw8HkYA}Q@O+})b2z`B^xP5a8i`ZG z3^DC@1~qaPbG8qo@k8^oD1W7iNPIt(c?hcSD|x_0Y|R;p=jRr#_giUbq8oA)L#RF( z`80Sd-1G$BKA8CiVqTYpd5b>QgL%Fo&7$~HYxDpe#D7nF4Bx^w@T?t3`kq8ND)5zJ zv-3dG^Car``f*=JvA5(vu7{_b_Th4!g}>E6T#qu`ukOf+E~4bM0en4)uYRca6Y7Ux z(qoYC)xlfdPb_{P%=NYx&RfXNw|a@+w!v7BW>Nj1ywbamSQpu!o*(ELztQV95a-1p z)~ifROyukb!D3X)Am$4w=iIj4Aoz6#f-lLFh`AWOYpAGH-4K&Mxm&kTQ8BO|*LM?- z{Qh{9aCYm<`~!Xe{x`?r`}d*o4wg|8cbAPv{Zen}N$(`$LpQBJ4Vl!N`-M@(pd4e}Rhj7d-GO-rx*j{qW{Jba?Rotn zz1{3ZhPZgtm!E&y@7c#Cf?01%*8_Rdsp!=*6Zcm^z3_4H51&z+9VZ?QmFfMghtu_* zkSbVzBTc&c3HU+eO3d?+-{IH|iKuV%;qwHoZ?kvJMtz{6p9baAcT7uy$7?GdU!?C8 zzDS0jb4$z@1?cZ|3x2z)BF(-f^HG$)CO?QlQ(N$SN%QTvv}Iq;Ki&U^#r3!jeCJn#ixynf+5K675q$NAoi*Ei@Z zQumPyp&2xz>(71=w(S;+-2cbaSqDVXc5U1a46qeDu|=?D&I~3hwqh&TqNpe!He!HE zNr-`h*j*qXutV8_-QC^ssE_(x=j{9Jet#agx#L{Fa~(_e7ic5(UlR|nqwrPs zGGFriaoZj>4wm*Ze=`H=);flKW7wY{l>M^cb+myhH?))A!~5TtP8;b+N^{mT!5_T_ zgB6QBcyr;ISTB3rKaO5MvX%W2*F%Pt-30$#TRFdR59+UmO?0iTE#{A2;%DGCAfEbu zZzlTYEW>@_A@bcc_OrkQDSi-lO4-W&;QO^?>?S(hTX+oAFW!K+`6kqO+X@fC{TTY> zjl-F%Ii4pw&c9Rn%vee;WGDSUxCTD_Oe{I|5#9j#i9E=;#34Uuhx1uS;@4L-jzfL8 zJ?487zlY6(HzI#)FZwNO@{?mXfvYMqYx);HvfTfgf#$@o*4&&>5<7c{BMxYL5MSlJF9Fdv3w^ZjSjrKX`|i z@LJuD@y-2Ds;XSC|J7hu24$-==j(6$!7Z+Ya?UgOz8ecjC(xc?>9_V;t?(ywKxbE%H=<}KkDN|sxU zeyml|FQB0ceuf6S%%O;ORWUx=sF=glB@Ml4$K%Ra&uZiQR8c1^@J9azVl`T{Ds&rA{{)|I_i-xk}maQzl7QR7zl9;c$3lEXM=nCZd zESaAZKF=q68NRb6^ODfJMo^8Bvyd;ggx+5q^^7s7jUA5Xp(NI?-nid+RHvK);5|z6 z{0P0gxcWA=1N?4_!>{NBzQ3mC#yO&XoBbHhLBATKPHWbUDt5FKe+bSuI&bSv#T>18 zKfrzo>e6|AXiZ-$em+$8Na#{`Ao@jE@$&_LkDpY#`!MplWGVh2m_KM~V+s8Zu*l%tBG(|H zZ!?7j7M1+V(${^-;Z`82$BTfs*eg6lO4dp`^rbMKj|Zr49z{;uL%`b=W}Xz!<0PEie}0Ug@>1{5Inh%G z@?pPKN#!vVQhOVvCg+vs1?w#h-?IaJMIP{F&EYq!U@bsBYs);iKTR+`x`U6|Lm$8V zVLd_K|0;JM{HuN=UtI?Evn|n^=^*8Q^9%81(UY&22FKOnC)YEJ{$2RsVG0fY2YT^h z=7|*dGD$SP?04ZMc>bSKG=(huz9MI{R{9@U_dQAjZ+>PyQ1s7(eNy44^a=Up2;m8S zmq|kp#^_*ydHBrq{TzwBbX09v^0attiKO^d9Kv2uWAgw;G3C;s8Ux)4e}l6+aBUq@OZM0 zp0T&&_cFhbpL81h{D$~z@b^p1)}?<2^Ci6JyE8F^zE`^jzk)U3;mTmH%EXwu0(~n% zc!p#xi;5q(jO&pp*T>Z%n`{CvvH!l@kJyvh$jMxU{*JnT><5ecWP{ht1^<9~9{z22 z&t*f8IgjtR7yX{EEALNb)3_&Rp^v1<^?XjwEeK5vY9cNG1l(x3-m!#RhZh7{V{ zH%T8l*4TffW#MFM-8)fY<~w*D4A_1c`cRta>!kye-~oA1^m*pHD-{4oQQ!c0l@#Xr zzy=(q?w9t;_2B!Ry5JyPPTMU!2A`)M_dkGo?VT7ur?}q`dj0Lk{J$Od_qyD_v1j+v zr99i9zdjWI4(>nEyZsiOy`}if(xl@a+BH8O_wx(%cU#Q0yP0w1eiqQbG>PX~#^QdJ zfPU4C3jEzo9cONUzVk$QfG1`5qK0xk>&xPokWy(MRUW$ze&kkiy>>O)Pg8Q&u%EZw z&rW?0K#w>2MerUg#QPw*ZHp4W1Acz$uRnx+QzZ1s(lTD6k`Ckf2p7JApXbAu62Q-d z>C9U58D`{{L|QyG6u-BE@C4<1CQ;&pVARVtlkpHAlZ+mNLC_2D^7#w>&{D`Jdj<5z zHxl3f=P3C8<*2uPB)mlDhH1Fw0q|3KCHzX_lyrJka~br*voc>4$**JmS%UZP5x=$t z6*J*KvRLK|&Nt>8mrcKhFT(wrE&R>fwa4I-v=H^e!-VJX-i;oGr;I!V=a<*FIYliC z`{H`mVHQg{H1RZ5PW6)C$7fPM|1;wGq2exdT$3*_N4(8NEq+kX)r=KV}@op%?(FPnLYFWWBB{V7Hsg5Up7|I6T+ zorI6zxVqmJ`s~w5-p}WQ)%C8D+Z0Dr{5bF`eXu9tA(*EwRp}a44Q*@UAATlZqZUhB znc}N8uTz^Pb|$`|MD}&=*Jg^pjlKa7ug0cW&2y8EPHtd|?~J*L{#EsKJPTZ3pgeth zgKE4t^AN3kZqms*wM~44ZRuMyvPTW}%R&BQ1vOub*srQ7<~>ryL)NCa*6!QTD=V1d z4)t!L$2;rwv++EH(cQ!==vP{j^>pE7S3kdq9F7J23~FM(`2=2%$H-?uL6cv^r;*1f zZFWBRj|2;U8`diwes=kEcne^!Z>9bjmqZt5|2BO2y+yURFQXdV6R{`#2m07{`0bQc z!_Vxe-nD-lR(ISDesmP{=G`>5&`*Qw(*vmIAFo=~-U3gozo;)xQL(0~ZEnZVlCOUa zINQL#Yn{3vPdII_RS^8*9jwo1)Nb(s=&xEB{KF6A_n)ahZG0*HS20}QVp@fpg|w52 zZpbNF!XKuh#{D;t)1m{XN@KpSsu^M%YMolNqcIoDLT|3D4Q|_5yR@?rmFrg?_rEOs zDe9o#L@mtk6`>bfXwynp)udXS{~}x0M#K zq7?i_8=&983+yMWXgHJ5{p=>-#eRYxsjuDh$qPQ&4*$Op_>LA@*3ZAno@1?{-xt%I zTRUo}v-8npCkL!2CA6m(x@%K23L~H42p+1OmT=NV1KR=3wF~w)Wwcdq$7)|%*M#QP z2hU$?{N5#6QbIduzJqxEhyR4X=0CFw6}mA9^Me=ok;&T6^?f8xI5|~g4~VbbhhYEC zuaAYF#Wc-kt1C2a7x+`TYpCVcSf5{bZvdW`>Dt9wbG7h-Q@|_r2hZh&`{AcmJvEM8 zeR_kR>#0Gb(oQrON>f*M$NW}Bv$#H4Tawxzd{Afj2R+7q+g2N~y)Vs1+mrV9bu~1r zs@C;cU-%8R$Nks={XM@nqI`e!FKUJLYc0-a@6?e?2T% zS1uJE;#tAL=mFXo>(3JW|MP0!Tf?yDZ^nLDIRETXuRD)~C!j6X+ZFhGiE2Q+D^;t^ z{8I$Zb6M)T$kFh3YmVnPRt0mZ#=jebeoW1=p6L(uXM8wY=drtpI}uAcI_rj zc5g6|?j5KL9wrI<*K=xE;3RrkvKH>=Zk*?Iwchl})OcMrtOxes6YPX%X!X<@pI=Yq z{(6PJdSIQbfbm^L<(`tvLwDL-2G_TY%1pzphtuG%Wrg{&IIdT5Jk!(3vvLXc|51zQ zE2jSSod$ll7(TBMKCh6!*pI4D-y)FsHYi zj&o5So{zBKJdNDlbnIDv2>-wg@x74g@Vogeehkb*oIE$3M*Mgqya8+SUWGlWblfxH z3wTfXsJ$m0>Ha|Y2ku94(8CivaH?2?O{45YYAnJ+sQY9Do?K;mzKOL@_X8vJu#vJ|qGjp8Vc(&do*Bs}pouxNUGROOi_~_Xi&G9Q= zFa5((bL{nMhJJdAIrgaHsSoKJiSwY7oF6`&o2uU~A1V1S)^EdldFYq&7-Qbk4L&wm zw|f?0;vckMlk|HhBXGVn@(tU)Ch8vGFaC>%HXE;Bn;L=h{X|^d zvj4S-bJKl`MVR=81cy<2;L&i_gRtLpLO<;hI?WE3{08$4&LP9}jA7b+0-he7%HUUKr3$Z2m7d0!`G$`Z?e)l>=J;G*JAG6Ga~vOIt6wc(j?1-crZ>NA^d&dUvHgm= z`t5jQ%=z9YjqB(JcXQn3d@X%V3uDaZk!M~t_2tFQ@wF;7^mn;uj8$8Dntk9U}S*=iGf44hQcLB6=3b z*E3uU1%C#M9>kil7lAFwNr7E2b#eITJ{6cI#&2YuZ9HYM2-~`@+ zYXSN50MP&naT)-i7@%jD8JUg7X{V%9-P4 zeSfEK!TtR2^#MVj)58y&<8K#VrdRMc$7?D)NO$UEj(bB)f5xUI=GbHJ{`56{&2gLV8`EbQ0!@6w@S(x!>uUtc^UHJGui+l) zck2X5%zh1ty}PD&AGr+q_KynZu;9m#KK#^D(JOd;cG#Lfz5KT&Ccg&f2iMYuhb}Sk z4QuX3q=jKMKyJ>+H(czIcC;6&BmT!TTz!)_ZAV3OT(*{Ls>dUL)9Z)duW0vqw>i$+ zGO>MKZ*yE}Z*7N)WRBt2aN=`1?k_;cRrYvVFKYesecg`R6|O(=hT5oia8dC*{lQqtqi{kE7fJ zAHiM?d_M1!_keO9{WVzcVg_Ntf<)!aXCLTm<1iO`g5OG39yIZh`eSAs;P0U{j`imC zMR*0yIaGV-CH1}711ae{Pok%Umx*u4DxIs8&SJlamGXI?LoO@t>dutU<9hYD)>oB} zV`lJr2|j9^vZU*6CGfhZ=(qfvaV}Jz+IY(P!oTTg`V%E{$8=MCGxD`^7yUH&|MG8i z@A+BjxoMgy4j%nO`C>gyem}oIYTa+8(^MlLfitu6rFC9tULNv$IY&|INgfI^Oc8yR z*Ml$1|5eH?n9TPJ{E0?dnY_?*-NoOU{f?&;$cO#|?ozMJ9!uFr3Q~UGNx}p29pnY0fqGqhg%it-=GPYFGff|*s*7;(v@}NMW5#N>UjBD*yoLt z@6Y3-?X|k7H#f%on|FR|fPCjz)?eW7(MgHi(unscay>bxU|pdp`gx2IeG)lB#cG5t z&Ua(vdFA!UZGav9gMJzO*<1rOVL?ke)7_1qM}_nAbMCjHMfF_ed1rl|`&~4vFbeyF z?F#3h>=Z}J89Gv8u7_%vrwi)iMu>jTpEqn?cjQxs%X-4~hs?Ln_%TfQ4X(dpo}u-W zVKP2AU$}SbK-znEDDwBg;vbvGYcO4QA1ZtbYmA?Y4@G~&q4IrMf9g?vDC*OP3V*=+ zp&G@9qh4tUKChVY1z)eZ(kh!F{Cq1ac!Z6PW1v$Fmidr90FI`QrKU3ni(j_9zsp4U z`3{o*&w7z(We+;{(gow`io$!OYcpq%UeZPQ7S>F!_eEV`&_LWTcsD_hNNnv($$1CL ze95oxb@oNQosoy&>s4m_9O~S4fQ%33X+o#Zp$l(~{WSRft_SAQzOnt~dhy@%%)bDd zdp{W;oZp;WlKr{+$@SwND;`xA(bQ#q<#}Nq$)>D7U47n1o@ds~7ff3WO|TE{XKl>q z6_g1!i;>UoE#rlG2&X%Xshk)4NjM9ixaaR;c*6C<__XEu!GZO`sZ)E&`db2jl1^(|MD+j8-f5PyiJM}nZw zn0bgc-9vEB>u%y9D!PUWAHjc**Jt=X!vDLQ{C$qOK6;*;6Z16OpUlA`J_PkYU1dJv z9Arj;5ahkPi2lyw|8i_FJdr!&_vZ*d`!!|>eemcYeh^%Pdi|$Abua9Q`gG`0$kA_f zTue6KRp}SNIen|}rL?c1%JT)W27|l<{6ZAyYXQQa_ZYGap2`kVkIdsWx=H~2aUH;$ z7Lj~-%ff;1TWv4>IoQ*KpVdtaZH{Vit7G4v|_l&0J?OMuw!{h7Kp*7Hbjr}%QI79coh9Pr_T_8bm+; z_24<|g?C^*Y3zs?y6s_)`xA@$xT>hP-9Xz5+ROaG`bhDU8)@5m_LsP#@Oi45eH`Ww zJJt(@x2}FP4j$UgGvE;*^|H)E44>5;Jc~chQ$bg8SHP)8pWh(abT3h z&w}e=F*kvCSYao81pDdci;bm>TqEybHTVbFd&HvVUw9DK_tY=FfS0gV^G9u>;L-M|2fqjXzPLIuN>>)?7V5x?PcgClAGK^yReDagNdP-{I1 zgGYKjjMre))3sH5-VUXt=vtV6@`H!i4OU?VbdZ|pXJU!`>H+w12jcry$NHOB<$TM% z-OFfK$7)#Lz{a6oqq}1O-BhZA7r%n*g&atOCD1df2+zd%42!1AP=8$+_4pg5zZ3VX z$edYO&il+S*_K`bjlMEJpU^{Bk@t`wirH>0{gC)PRm?Gjnm($;`(5}I^@P3&KC5sg zJijF{&O5PJD42zcvL12$e@d%JYHCZ#c;|ZlmD?h~rNe`NY z(XJ#b;k#Imtz{jI`XejezvB0H7JrKjUn}XyP<7~7OPSw8Hg@ z!F}tYsykhvpIXUygTAGfTjfT%-z_m-Dy#4sqi#LM!LP+qcz{zr2DZZ!um!px1*@86E)s!$O`f<|F2uSWc&& z7KMLED*DAXp{PbdU~-D!ycjEbUxGs@-E}M?yams1QBL8QGYX?W*K4dND!koSQ?G@E z@ciWg&(oVy`mdw0;RSKOf5`gq>Cy)D<0ydr#UJKJFxPFSooV^O^HfwZzhexef5p9g z_(oS^!wXC3}oB&J@VtDF+ZL~e=7t0s@_5$=nY?|G^K)52K+i+Lm%)JKA_L^Oq$yF z74-EvqHnWLMZc>rgx6qyzMbw_;H#eN#`(EEdf#PX{eKF5VjQvNTk}8`>FXY&o;8I1 zo=_W?MUP%Sl<&*eKjlOg6&v}0^#kD{yhAeSYsx+3*Jp~}u3XK89&{J=hCbq#!S%+) z>fC{!z$oZGHqe#1@5}=j zpIP#}W`9kFfBjzEzazred>frio7?XZ9)tHJz1}5}^ORjW&biBv~4D>ro)Rx=OhA{`AU#w$&o_R2^M+eE>b}g>| zXN;?Y^lQ~2irf;7@AF5#@8z_^RJ8JH(f>K8HT+ouJVPQy|7ZW^hIx))oJ0su!RL#s zHIv9|?kbFbD;Xb`-IJ-|<51j>f5b0j)}|D)?i+&d^Io36yO)l_qdN$^PYv!rj{RyH zU9en<@!3emkGn0Nf3M}>V_FN30B;bAxf6gKb04`Lm!|3DHeea*`Wd{oy@(Bu0Haee#B^R;p0DR|t>gMRBM ze25|TH2kc5h2P*k|Jn~{aEA59^I+s7=ASvsnvU=y%uAGynpH)%=3CZ>3l<1HHf zxq{S5ODHVWrom~R+5wzlvLtReAzU%180L!j;)J;2O7 z#P)r6s9m+nCjMbai@RW!Dw<-8qjxDXpqwc#=6H`>l1iImyP?;~t#xte$(69*d_+$> zouTiA3S+#kRQVZNX?F(slLDA;R;s)Q>b4;R&u>2TciD*b+ET4?Ne5Gx2lIQZdVRB% zy0FYqvWfd)fEFqHlQ*Rkao+ih`s(e_uZOA2W*njoO@A5KKjM_nNY$y&9-Ng^A~FKwgx+9ekC^ZCI)q`-e-i#l^@G?i5g!T%@&eDOim&k5&Uiz4uA zIE{41QFV9jQtiQb)=zmZK^Y1OxGd@%21do8< zWqDkWo6Hxh&yNovJ*kpjslYYp&u`UAE`71TuMA%567$q5_vh&FrV8e(v-p1RRKM81 zU(iH*IHDwlP3{Q3!%7=@)KR_h{}*e%R_xLgcxH{jerSqTz{N*Hf(3lvP|T06;7{DOla7~z zN9hmoq+36I{P=2Gkv*NXYg31z9;T;$x6U{9%qB(id^U(?Jahuzcplfgfi~=j3#DXr z#P3N|zx*z)O?c~q{Sq{{wp+jh{8ihX9fb3GTi&0c-u0E5{A4hds@4+vd=TPWs_mj- zWHY`c_DiAQSMH17L*4eR@Oe?-&tIt3kGi7%r4`2edLG|ugIZ(2TeZS^vQ~9&eM*f! zHkSP*as7C_=c={KjfY=b3yiN#@L#y1YPJ*5|JDxUH6Fb6HT6)biP$gN;`gtS|DS3x zi7o{-fuBkw?(Z3Ocx88bajy~f3#(P+4AsN$-Qh3QK)yfx1k|EAlc_^4_sfV<6^rfa zs5MhqSH<63h4HdkO`PIE@i8^v{}BWpdZW7K#5D4KSC#oajK4~1|9#Wxe4sVfzcRun zv7UafdIen1k}CVh#txZ5N^%)lFFAkkZ^fB(YoHb8{{rAQ3aHgf&BT0IQv92KF0fE9 z*vz1`;l*V=VtEMvh7?5i*0y zSmee2Za42==}!{>{a*&&f3k+ZxzJ2nM7|IEJ?tytP2SZH znD~d&*50({=S~yuu2n=KcB1+V-6nd55f$ zzt89M=f}OscF{`lZ{RaxRIC^B$4iA*K+PY$9Op%?b}taVf%_qDY~V%x7R->>c~9W| zbSBrV8Tf3Ed?j66J(EgU4>hn>#e3f1&NFGxqn^S~@b7Kve+K6W^4FVABd@=g{uvyX z8#G^!xf5mbhp^6=t2^bG;}Z?$=qq-cDD8EN7hiawmA zyZS_${2Y#!ouD6W9%i=E3H;n#Ta$>CP(T$Bcdsxn=w5 zXQNk{c!!Ped+U9Btztb&{2g5Ud+IBHhnaW>w*lRC_kb|YZxix^6s|hyHZCc2FV;cNnH4JfDDw_EYgOI1eyE9em}f)!vx4S$=@AFL;bSxZ zaHmUq{e%Ah;_Geo;23kfe^eWNl9w@N-r?)#R=QIkbLo+@=f$V^~|qtKio)H z^O)nTz76$8H_bf6_m}n2|HK&cdB1d^jsDx+95<;~Pv6_Z7_%mVehs=;adTYZV+nm| z*I?)`GvV(Oj9!f23>R!dkS`BLKiv(ex4mv?c_{?>l9ibMBhU*y+3?vX)WkP@ewt|5 z+0z`u-_r1QY$*JLCrN&z$L>vrcer2w@eLVoHX020|Nq5L8pnW-FvkOeW*Uag3pMc! zRgQQV%JmE7{FvzN?`BOjG^uBfpXYHir2h&LK7e!V(Wi$QI^>$;XRBQd0rBSe%DBFU z+1}ka@oDUp=y3}>@~8sVH)_D|M-T_L#i1T<9_}ZH!V=fFu*H_^#h~cQn;)^ z?`V#fl(019En|+WmA5dwe`w|(zSS;hh&^DAxqrsb1?IR~pKs|cdaN|@49n-fN&mN^ zIewe^D1H4iGyf2h_h$N2@Du;>4-KcCNH0)xg^6ddIGUcm?d@_?jQ*183#u*`y_M&a zmsg_F$MrYz4xF>PQgUJXw-Euzr@ln5#5G*Al%AEbO!PbE5r@}sO!um@%)~d0iLRf% zHGQdxZ`gdcP8TJ_2!G7#q-zk_({m|%@h5b&+BDZ`zpEV+)u;EJ5)|xqI7pO#(V~^ zy(B;xJadlxfByU}fk8^48?)u}Si_#%JW_EFm@V@oGYG%8tV2%8SM+{94}*_UnuhtB z_=YJ3;*|+kXNlg-=im1IcPKAA&JsP5&#%41_bE${_=sN33`Cc@iOT-E#+Z4D&9ze$ zw<+GDxAXb>k$1ZC=Zcr;WBj^pvkYZ-J!8x@>bsJTDEo{TBX{%H85K<@@q) zzB}@ga(u-M6VGtY`&ne5AYx@HD;tDe<{-CS|(l#hhPw()f+?_4YKmK774u zIDS-8J53Y)m)VV}lfEiIreLGBMITYzAx*Yfqu0qL>n*nm-Wh?6KtR# zjgy#PNAEM#6O3a&3d~;vl;7@6>2rki&p^HT5M}=;Tgo7#Uj)~*Y}smueurate?${J0zRdpGn)all@;E%*pm(brky$!+T4?R3>hx(=lZUL9(|Dy8748F398*>Ao6U+nDdJ@ z&kZK$?4j~`oZmxlIQVf4mHK#oz1N&k(2RzN9?LQ3%@wyHGTyj;X!-lG@ShkWJPYRw z|Gt?($5#xNnDd)QZ@H6AS!2wvvtQb@%Y#I}<$AFeOQ+JTC4;~p?vv}2y=Xd3uo)!$ z1J5U)tIvSHfQzgjoWJ`VG7}!$F098R-`58FUvEnMJrLum9L__|bhyDRy1#rN>lMgL z4MlFqhbosIi1{>ub3w|%AHJx09U%9U|K{tkx%BVx{xUu}r}ppT`Oq`_i~i5g*ZP4A z$sw+v=-=Q=lwY+LfyeGAuQM}nccee`mA>3h1%3`?6u0cfV9xu>>m0AHw-o(O`bdoY zt}?-L3C>%6WPXP};jqhf2|e21TVBWc%OSbYGB6>%g@@pH_RD3+|MvRd`&T+duMDL3 z`OWdK)yq-;*i-lf<{`4juE4p(nSZbNMYIcFiF}$ff1dCVicK)}jqAblBjQf&BOZs) zr^3ujY-WFh_T3XhkuU5ne~;Jq?p;FQxzWwUKis$+LODgc34g(Je5Jo3;MJXk2jMXb zuPJ&S)J5(e@87t8YqLq6OnPLN^GaH2-AVLI9^Vy*1yb2s9YmjG{%5SVjFLuZs5f6B ze0=G+Wzfh}(cid6x^C?N^h+nvCoxB$mvR7I+o53o7z918K9!mtNG?|#SkS9{1NMEc3(B^homg-RghO?^b1E!PTfI zYbEOq?_Uo$h(^DemNNhI7){>^26A#sdH(o${C06I-7nWto)6Xs3LjZVch|HKeuh1r zOSOujz*5|gV+8z33ex))4Td)$v?@q-Ad7K?f>d)dFR9$V_)SopKsv;VuCXJYfk zp{K7s^BW4U=WoZxQQk~D+&@A+3MfJcxw6(+e#|rttb!vyA zo1veuze8#GiEdQkcp0u=FOol&27a>_J$32pQtGkLP4LHN9;7bnqdKVZ3EOFF zV|(6z;Qr25qfhUqY7gz0kHS2+N&T>NC$5>D=*LYC%|}iKJuJaja6Jm=R0f}hj@8K? zJkCwziGQK@!Bz^m!@NUY@CW78-0@q{Z^;h&ZdsN8=EQxQY0eYw-%(7(oTKjc-HiE# z{UIJhU;O|t;&>W)v>EP?mC8JbR%R22)fwNpR6ib4HJJzVepD%b2~O+wv=g$?GjAmndr zfnQlg)|=}>PwuL|>042qvnvAr1hsg72mLCX8XR7Q{yjB$eDL+8-(}C!xUPbg_?*HolD1atat%`mbC7{PVqwv)$ z&|kU=_?%P3+H9;t5cJI|I6ogly)J4~&xD{}wldCF>!3>pP`9P4u!dOUd|wFsog;d~ zN22bel04t6i57SiMRm_s#PzYj_jRM}5^Jc%^$Oyz#^-bF&&cjndG41Weh+Uq#?aH` za=boDKIcr#M)*^d#q|$@ALo1Y!iq!B)H3Wh#PwY0*A`DfDW$M~cR_vG18DeLXi|_B z@(&Rh9|hGC%c1dqvXcH7JfEdrjiCE>rNl2{BzpR^atNlDT}t8lJe2+pO1BkM60Z+< z{1m=G-n4Y>GCFeG3jPsqgpWuMf}crPE_2#_c=m%pZ=iM`#>Z;Q&k3zoBD#JS>5cOG&)o1Eh$}`A{`%|cQ>(o7piMzkWFY%RJc7PV@CFDYt!Gh;zavub>}(wY{k(|qbj*}@JGz>h zL=~3t!t?943v0>$bRj%%v7+DU^EW`>FUY(e@`Z1emY3qmHD5vS7Qeui)Ix4;~VHpZkBQ>`C*i);^lIARqEqb=aSqPINf{kFLDT>)`rzp=Qgtzd#<$ zM+Go{w4_Q^5|LBPgM8W@S)c5G93k%me?;Hr`MmC&6sq3zH}b=$MW1alER|k|{emAu zhVTO1-=WUCAIMLqiJrNmssTBse+-{g8= zsi*t3?<6$y8_+9Hg0~2!$sbSAi*MJ&uY>PrxuDai8N4cf63nk8w?9LP%P;GkZ|Cd1 zG4Tv|%8R(3yU@S*r4nB7EKO~3LFZaTW)LlUoTX>0&qHqtBtCCuM4cu3J7;l!{je?^ zS6+TRL)EXJhJF+z{u7I8o}rAQr@(W7+ku|GZtW@h*z^SSi>>0{@n+HqYFgl!)bsQD z-z4e;&I{SXYjEsP_884-k}3WbykGwvn@vR&9s0##x!%W~Wz&wG>B3tuGwRhPhy1Ig znd129On8u{K)+0p|9`s=bAL(DUy_AKsUDw+Gr$qyE0{r>dn*(5dI_d@bG0n=vpXd3 z=RMcrsqhb(en9*n`2O}+b#gtqPk0M{f5c-0)q1c;?ho%@n75elb{G6Z5^-M(q91q~ zZG5#uXMZRDeGeC=(&84|h4J08LFvr+n&ut&kZuZh&{dJOcJdoo^sy+}Y$>h;jqp2>Vu zs5JUc#I416E&zY>Qs^z10R3VO`#(UxK`+V*N3cI!4gIqLF;Bw0VyS9T(1Yp--!iRh zGOdV+5MF}M$6aTnpufi|ov#(||4tn^ial`{^uxTYpDM*)rBZ+%g6AWj%I9b1op#p@ zhF)lVeF_=CXRicLlSk^W8VuLbzi&C7_oA#H(Rc3*)Jz77-o(#$xmB6yfn($$I3D@| zJW-dWsL#JE_jh`cWAGGQjCh0ir{vvooNAZz$L|Z5@o;wGNoq5}4|C;z|R@_RWyFec$VJjG`4^&;M*ZrYR!{c{@bho$gW zzi;NE|IuWA9)))p^78@}em#NbONDvmi|R$3|HkT^d*Jx&=u7Z}amD*Xg>OhXaS5K? zBY6H0equn-WoqAQs3}(aUBUe8BK!lt$1eX>inQ%7uX9bn$+=h2f6K^2Fb{pV&NcLS zXFq;t^eRPiK z>3BT9jh-_N<^OYB!T%0L&9^bdnN{vm3C}vF_-w*m%9>Qu6!+_Pmx6BB;Q54kd#ZN= z9#M6xnc|mD_uxTY*%a?NeUHlRtZ0g-I^U;`&&!$OsE_xtZz}`dk&?_!YIo=b_;h#Cm4rA-b$RM}3~;mDib%C@}?oB!~0DKV}2`{!6Mq zEwZTW@P7^O=EZ^^wo>tr`B6T1SZ{Z!CwfGypAxrI!DR)ozU=|uxK_RQ6#IeQ1;Cf=N4@)cwb7Os z8nUu5p1(sXYveaRM8dzSIPPBp{NIvPt3n}kWxf^W=S1)cy87x+AZk)dQ zt6eQbzDf*E$*6$ST z=P#>U$4{e0zE#2ZBw_!5NBywEmDFjqm=9A&9(}0}EzymfJ)2}O=HA)-Q6Z~Fj?W(V%wxD87^bZ{j{ko>MZT)b~ z&$TJ74;=&ksi}tZk~Sox6TP@O1$>mdcB02ZZ9|u#)HZqs=HGB_p?jn@yoMY06Q210 z;hIhJNUi$y@yJh12Y;~=1z@pSg>{puYmKQ`A6ID5*R>%lr_rbPlQAF7*Zy3I)Mj3v zL5KV%;eOB69&e4%?6*%w4d593zV2Fl=U&=_C8NRAjlln}t2Hm;tU3CRrmC}sV*RhG zrFl)(x@~Z!TEAVee<=n(iUHb=sw3g~)*s`M`-!yFl4}nqo2*{o_s)SAudnfbxqQX$ zcwSR*{<74xZ$q&s?+m?vC;CO?*HYbv(I8h1;~@su|Fde*V>tS$Ie_v6w6;tV<(nv#n3V2j#d_+K??;W+sHY2ZEgfmbN3eI77@wq$8opHs1aETcWt zCW1TDaJ^4qJXh0#=S-yPJygtR*VXRD8)}pNC(_p?3iyTV>X}U?v@h8c;m6t@2xGS@6>d7T$r^c>aEkO9sg6e7@)JfAqVb zyv~eoN0(WAE)^bvKTokhPAF=Ufwe9EJ!yx1C~(XO6A$rgkPnS--q*xK=pVhQ1I%&DxxRX3=hY_O!R4cm{=B6z zX5Jxwgtrd9RbJ;farsQ$=XaFk3-~`(g%mF;{2uX4sAa7&;z@$zl71>Va>8``l?T1 zCf)&hp?=|lIc{>Ov+lbv%)~pmI&{>tnuUoz!TVwVV~%>E66W|zZ_J(GCwM={uOGQh z`i|q~xcf*&U%Sy5^LZ-&oA!F}9CJKuUOT;`i#aY$~9KCI!hchB{{=D6}ATfOoBcnW^~pGwX2js?uG z*GXuiTi-SF57}KC>tD7RW6qbqf7nnTGSwVcnb$zS-`W^+KEuhryxy*T2=WVKQ41A7 zE!Py%2Yw5Y{0^TP1GYamq@4*xJ~0^QfoS;AWEysE2{Z8xoqnbpQWu1wo@bWy2mS1m zV0aWBX5t&}UfN}7y)DedGt?=z!|-XYIX+^w#gNiJ4Eon_Id8nGxx%0ZF%R>B{a=)P zu?r2hi*_!=4x3KRW?d4}8i3`65a<~ZET!*JkFsOj~WjV2muTr$V=UyL@` zY&FMyc8xIH1b@M2WB$C%se=upyPIRrHvJ9$Rm^clfnJ6&@67x|&udPGf*Ix*IUU2Z zRmPb0j@MIBE;8C2NA_%MIB0KnE>-KKK&ecF2!(c%Gi#Z>5Q60GFFyEOCWAkDPNsJxuzA z{={ATw>= zRWtu^?#cSJeH+d3L48WvrU~YFchOpD18vRmhxq-e*n#Q9tC zZ)|G@fW^SY&#Zr~;O{Tz47sHqHB{8+yezG23l z2FkUS3q{Z5`D?MWow8@|0?{)$-;@yHsD#vJKM5n>P{FB>GAL@k=tX=U|C%xso&@tm z-{S9Ea>-cm7~EgO8UFU$74Wdij^lIX|MU5`PV_>>XTV$&->|2xpW=Udj_CP(9)2?^ zKs4wuxvI2!fH5{61c%b#y{61JxKYk zJh?T6_b1>Tilaa9Z{=*~DWXSm{VDz7EcR<5@ozef#u-`c$X$c+tDDA5sGDG^RW|$4PxR>*ISfY|*oM z9P2UcXQ7r$`8?E~payBA=<)o1=2i#)9U<3`^MOBlIir7{F=qY&{k+gmbU2>pP72ot z{+ivN0-Fw(>%;fsivJ+ewhWW|%kN)lH;n!?8YbhL^N-mLN7CQZL!p0pAYW4yxm#Bn zGHIyrJiG?2&p#Iat?d8c0eRS6+J3md+%FyvSLXXsSo8j@2g28;jWTufBIFN@JOqys zu6NCCZj5;h^vJh_w(K(V5Sd|1Xo23k0eyJ?2tFpw z;o-$))b^T@kKi>TcupV%b}`49F3ZtFq?deO=Un>b~qQT;~&&EKz4S+{T z2i9wakFWVOfS#^*#QPJZ{(fYSK+5+~llo@vfy_KbiQnq~>cub8`1C+{Vyn>OP+1F2 ztX=!%RAdHmKLX_87Q>5oInG=PKVLXMHH9C@3VL90!1#Qq@bmQd&`Q*xJMi!4e4UcA zD+rz=?dAF4{N=0X!N`BMll6u92Im2xG$2nqnNRqc+IBSz^#N_=`QrJvVY_hn>9_eG zpWv-LO@^=Fq&C7+aK1IUS`?W2*1}J4ec8gEt0`n~YvDzBk1}U^G(Ei7O85oVCx-7? zL!XDVV*OP5?MytgmR6i=Df>TW7|HVkpEevszGtkZ|vYtp9lH+mFTgs5gMXB{5Vc>y}laVb^}c-(E@%D zyKug$kNT4s>RYx2=7V(jJ25>S68W^VUqAp)&7~2Ry}z9u-vfyQueMGyMGRF~1g9p)abBD{X?7UG?kjXu1Rb0n#Vu+tk0qmQzc|##paC z&<~@ZI_4exb#m(A`aV-RXY2fXI8DA%m-nxz58I%YuNV$KqXDj`hWuq!^@`Ja)Wu5*C2BOz8V=`dpT4;7Q(1-JZXUIZr)>>-T!UpotLM1)tEt`Dy14$e;Xm;ax$|hsKfey<)5fT8vP8ev7+N>4 zCj3D4 zSq0~-ZYt`v)KfzOX?EUfSYL-D|2#U8=!9q?fvGZCiEypCHuJRmJ)JIP{fc zs8cPhzRw^a|jw7Rh{b;8`5e?DE3vFdsj++hz*c&wddp zl5c1?VjK1sWq7?szVJM9O*^6Il*aQn3;fCxc)RSyd{YYV50vZKc-&6(Ln(#ztvUWb z*s-mHp9uMSAM~n6UxNXqupU*y{qu)@9!~FPl*0U17JR}oYOx`hcKMeA-%=91 zjvsmFgAZuoQW#&=z#D~7k)ey=zi)-{JWR#>i_e=x`J9-i*ou0@R_dEc6VSKH3hVV+ z@EV#r`k#ql4z2L{k*Ei2t!6|`L4Mu}ej|%<|7xjo;@I36M=|z@O-13shM>Rse z@*!pZT}G8omyr9%`AEA{f#{i2LgsIbNjm4ff~NK@4*!u*xqtoKg6LF8G5kH&|Hjde zvSHu>Ex<25ll9$iek6FuqTn_5f_HhStS*4@x2}l1pV#+wMb_hf6~^=F$NglLQH3{B zxjco%uZCaG{;&yiW+BX{u~Kh;JZBrV8d4D7_l)oXH6!-Wg9!!r{DHnF3i>%5K>cNY z;YIlS%*i^0`uu!&o(h8>YD1^36RBspeBdj7%6z+^WfJtoyb?1HG1)(vo=?kz`7=X! z2J|MNoKb(F*I&c;Ye1IK849)8vOOz>FW#ZQ9Qhg!X}ke~dDeEDSYhd4AQ8-7op#ZQ6vO#kM|L4Wj5 zqR;dCQFv_*_>~XHx384?@TWG%Xy?6mI{S4nGqhvpF*-fqE%MVL(y#Wg`FQ?d|R9VEJ6?^7@MSS+E}7Ju#PN{J8{u zX|(9^3vDl8y}1Z|XqoUR7cS&dy;ixxJMemc`CBf2|2g4LnE75mFqihMJfrhm!TaNZ z_s&z>m{ZW}R*1gbVc2>6jT5L(UV+^8cjfKIv$XBPF&Phhp7LvS3VwIl=x?%J#_yq{ z$50QS$$FjW*UW?bzG>zm4m%#FMm-HCKH@;-tOhv3~~d!J?e9$f4{(;dz)@E?zi` z`##I(@qXo2jcn8(?}dJrB;UVNMke<4yCvrHK|3vjZm-yhdTsa~VgJVCztZ0A7%vBf zkNEPyfc^bexqqC4OFwQPx8IwguWS~-g5YQawHpx+Kb0M#&(|1Zpc6;qFn;z4Z^Hgd z>3O(+#$K5Zisq!!`TiTk|AO~mzthm?6WuqoGgPiNA~Wq!b#wBMN$0Bl$iLqmNQd`AFzPwXlD&z_XMJ{WKi+ z*8=+MFX0_3=7vEJeJMP}f_4VVY#WN__nXo01-wIUT(IyG%!EIiok7nE20{NSfc2py zdTD3EZ+nIC8ob{dm6$~pa|1Cx^I`v1ipsvorb=xCpdWoB<|Qr`JVxK5mx4F?EB$ZQ zv^WmFe6jR%=l$d4btlm8%OCy{7i9kRntO^uPxwI}MKAR|Rj60O8C;JAn6JE`50!v- z(m8OHbHp!#$FptMT(W!SgZl4g^858Gx!|{F>dY>44MgV~7byAVG3o(DO$!p8>zL z4a)mASE>H`q2N14D9pP*dU=&vRUafV@6TJVxd#7-{__9%^`hmk<2=zvcn1C(mmXgy z%VIs{b>^-u}&;2rN#Ew>8hnNS;nBwlmAHh@I$`pGJ zyb1rQ;#j|CsF=@Dk9dQ&v?|JcoWvD#xo2Gwo)4kF-hm%;E7IpiQ54=Sj^x^(sk}@g$a2|};IQTsbP@`fK2p+@W3ASUu6|U0oL$t0# zVe}8!f%^6cwQ-}p@M|xK-@hIExk%OR!A?4>6~z79sSbD?rT)0J8Jkx`&o}UI%T#^qub^Kl_vGHo`+0S3!$7*?Uje^=AAV1^8rEw*__`YSzR5UW z+)$T%m`ERfG|;hE#`)rtTKHgpTIJRf`t)_|7mH{C@ftO8?SS>^19*U{npJyyD&MjX z)`!CIS7@cNU#b0y5zvz>YcK2d)zG^I<9QPPzb$x%>00S@X9~SP6Z2nBjr|~MZ5s=2 zcOL%UTCHF5I;~)Z$>7H4g71pdj(py!aXm|U+u683;o3j_w`)N0!&5aT$5yLT zeP)r-vVI=NPH#~nkSbx_JCyqqF+|F1JHiAF+ zs!na;N@uQh!2MnezTv$ZQE@CCwCDaBo59EaQCFOsKtmgLgutbyOHh%! z#GbDmu4e^}nUUk^MS&f+HL#5NJV7@IQ z{tb(U%|gGYir9Y@1D{h=T~O7R5{8t+?=J|RB)_^P%a@+LD24SPugd4g5jnHyc}1QN zK0%NDKue4G!au77_E&lM`V#arjIUx?uZ!S$E3A4xn?--F6alYk{Chk;dRJrr7ArZg zIwsAc`j+|e`<7royo&hm=ZpPoV7-|4$dwoQ(&pMfz()muPmQEXk9@HveiFWc_h_@V z+32zLM)(G1R&Q*aO*d{lHDGSXdcT~ie3(s-C*K$SozFj`9Os~Z#=D?5dtbubW{24b&%%vvvjvIJC$NJHBbuRqybikND?SP%8_oJ*UoMH-lAvq3l z%>0J=gNEvZx0`H^XTUG&YNW+p)pwvC(9~q}GiO!qult`j=|?cx=qX>_RV`^wW(jwwrGwePuz5 z{mi~0>Q7ks560E?^+Q`sHpj!SHm#>W`M*8|+bauJ(#yUJLwu+i^oRyweiqd0R*Nw6 z8;m8tX@`zQAm1nq=Zz%FX>(BvT^ot~Du0O&b!>4$+rKT+%x{=DH$$s;EE4h8F)Cw4 zH}db+c3z7#^Bdmg+AjD1<1_SYyhY>w`ez%1H)xstS^vXR_zoZT1Zx%cM4I^r(K+U8 z(-&IoOI-rAS)LYqc=LIhp`pbda(|Y#DYwO5x@f9)`XPm{Z-KC@EI?7^m{fs?L zEOyT2s+P+-obe6OYdAZtnfCg6nAyJ8!&y7D-eQ+?YM|8xKjz>4BOPjM9_=i4=8JJ@0uYxXu{%KT8t|6+`#(8;?QS6-R;4x-o4J}aYSwMAxrLv81@3^j70;3K>~ zYzSVTaWEsq%x^%9B;#9%#cq?fD5LTGV8MI%%=a{he}+?ci(R7jn2h!h7MS@B7p}Nx zoZ4iu!9U4(IL%@=>fIpYqH3{k*L2MAx3<{x>5!+?{Pe%@xj2f zc1j@d9uwaoVEvr^NiPG;{D!67Lz+8o4&eBp@EgKiYz+0LSnOZN`xtUGv)E&ohZ)L$ zGVvXl&#+zDWtei%V(++}ZAhN%Z{{}u^ETYCYr4+(@!|TP4LKJ3nfVQzQ*G1HWOMwh zalNvNGxQ_=@f{kZRad6YnJ4~}Iq75H*Hngt`3kIo>T^7;rrfjI}LN29DEcW3Zla={1=5Tyh@)4>W zn2Q>qvorbZ&G_2rJPT0wz`~EXki1CgiTWCR)<&Nw#~&~+IJy}0M!lpxxj(?aLOnn);Xm*@{tj@2-oR-2Ue>G( zaIXM9>S!4+Jf_q~m4H8v68xUyAtlml(5$?ptYPyZY^9m{)|0uSh0YL>> z<_GuL`L9m2Zq_jNj|N_EzszoedeB2+Vj}tnxsN-y#wZdNj5h`NVk&KF;x(xbtq5r-Y|m z=lIKrd%fvv6xYwl2Y!UVlI_-y^x6Z2U%}&RTjBuZgZ4Mubpi%a?BM=_5A%51WIdG1 z+w~WGm&e1T3d5<&RS)S8<}Wb+y=xl}xz3pDpW0)|eR)6d$Go7IaYM0o8V~%ZAMlce zGQJu;nSl6xKhEbA{r_mUiO}%qD|j&TFN{AYQM7ko(Np4h{j)EV$*D|V;5*PVMhtC2 z=wymN-G|#>;_YQVPo!+`KJvaipWI$gfnKV+;Mwd?w%lR9x4ZNo&q1zlex-l!e|!Sv zW|_H&@AMLX$o*fi<~*|M(o6g$^C7t2d3(L5_(SHq%nJ@6Yp0&VXJEcfj^lwiue-^3 z;qjblJs*1JZZdzl4O+BcKvgdGFps~fRf55H>A`qC>fgLJbUGOfzC!o^zt3euiS!WU zCtK`0FBT$SyqjESA6=nJD7~9+(vJZCZ-{TY1Q@8P{s#P;VS%!Qaz}I(f5i7Msj&oj zZ5JNj2G)r9wk8bu`d$9dhdA2Yw^}29gFh?%n?-Im^JK=fJxPO%)sBk!C9Ph~U z%fS1MRofzHgMCN2&h4|S5O9$a9mF58zir$p3i-$F#osV~krl-G<83j&FDQ(Ma6ONw zj;(;N?nFN9eTbnfq^f;eVn4T!@c_vWe?7b<*83^Q{|p1SC5-acZ^`~h@~PhsTa5fF zBk=4dh^O{}mSHH3308##vGTwRrJ!fPhFxe)u-(h~# zfHFz6G06q%Q!(N(|Ehj6Ew*)$@8fv*K)a>1EWsK0U|oq%HyxTnX+xZWZ!Z?Tg1L24 zkgwbr`=1@0pR9%%mqOpXG0#V0{m7fSQlMYjSn%{-kLIfbj{8St;=M&e*@-L_Ted z)Ze%>r!oAE9paOF)MHOpVSY5m_aCCRdjr)E1J^)L-wEr{JLm%~Q9atNL5{JLXHeC;`zk83yD|E+BFCrHF~Q5})JZ4aA4+@KbX!iVthjw@BA!!O z{Zu-cPXBI{3BRtghCbp%v^%;X&U=jz53^P49gC$6T^gW$iXmS06Z+lJ$XBW-^(8RB zseH;J)SRf33A|5b{fox+79;<%Homt4=NmzLW-;ZMS_|im@?v|}Ur4FrYGD0}<@1cX zw#X9Nw6i+$?>9<(_sOgX)CZ~#y^6-jkGp{U>=@K*sgCn=TgF3F=06-OQyuyI1%ZdB z((Pf1;Mi2-e0R*R5vX0COkRDe!awHVcq;Y0kb?T+m7&*g7Whjh4Gl`A!tq4*mIz_2GfvLw{j%Im}Pg@xb`% zGAf?-)-8wmktlfjqmWoS|J4!g7lrX0N=uf;!Y4RN{RFO=%JXU3Nk`$+F#o~IIhOO| zz=vvt_?8>A_~W5LS{CQSdVR zhxHl;Ras5T&z6M0FN}EQTIdt3r9#mq*xzIPY$2t?M(8CM2fwF1+AoKCaTe;+=Pd?4 zR}q!#KR6xTK^~v&!B?s-e{cO~AN2E!f{*0_{g3CUZJP$o3_IvAtd)GJJ-sxFEMhBs z7}n?b)zE1FyFgem}?4o~S{nsZ|92@f!Fk^T~Gh0$S6d2=8AI zj~YqL-y2%2h}_S59XnPopx2*mFyC!3UsiE!jasDJU_bGSweiUKWfAIK*+4I2z3>ad zPb{XF?uGfhg*>uO6sLNB>pNCG|~MKSFD8 z0Q%86WxlZeGfx_oNV0;zyDIo%+a2k2^jr>J|G;l*2&_({5x@Q-UVR+6aD8a^>!`2( z2YBH&;TQZqlu4!6|3bcGvgBuH-8zJN2tSZdw~*@vVefUA_OnJ7s_zXOzzu?EolaEn_wx2{lg7MM~4USXU9j5vjynb}Pe;oYW_ky?c zd9ZTO336KZR`7Yodz~Jfpty=Ay$HTPywpk2i(q{R#&655JBfJoOVN+u_33KFN$9UV z2fi^z+V9c56V&G2Q=PeY9B;Zf-~{sVpCJBT74vs5_Q$aE{m1cj>7QxQC+WG*Bj7W( z`2J|6$iT7P~EYE%#@gq;rU8-vnMX3jV(Vw9zk+=lC0DdwA4EDp~P5 z@R1ENUhn>wO-}|~75tp{B(*kNLOlJlJfHWc<-T7+Og3Bc>G>NzyuCyx3tiCJxAA`Y z{>Mwy%kdoW>fz|Sk4jQZHZaF5;7#)}-|`@SiG29{r*)iVq=*8*4^U@HXFNN9zC!zOpQ1lp>kJE3#Ng7u0fZ0A;^#t^C_R0PH_tD{3Ze)d@TFT;M?ic!Y3Z>``*N#$ddtm zt61P|Z-fukwIFH|jgCQoycWAx9}P8xqNIL0pK-d*)@gX(Nbs8qL7(TNQZONtChOrk z#t!s-3L#hi5G||{20l$L;Xiyma~OTZ^)qq^ALCJ}qxAIABH&5SgrDH$cntXMLg2;k z!22l%t?T2|BQ+TK^9S*#u|6m0>fiYozkh_!#Cj>vtiyQB!+cN5@#qxQ&kPW}isxM2 z{#oQ((qG3}7W;wbR4U>uxoWtT18c6(nW00G&%a#ileTxdit#;={hjDT{JMLUYF6s6^I47aTf(BQ(bnsI%-0_n zuamcbFZ9q#9%lmNrBEQE2YW>3z&)bc9v0+$iAK*MuMr`K9J?`+3UhFJs zwo4s*2>rd{=KGb_kHGh~H`~wdKBDPsZH3RmfA8q=m|}hwHruhaZ&SW=*1)r;$^K{c zuglN?&(C}_)ouS>XhmH@ea^h--*A;RTS6zDLk%u#=HmgMZLaRn&(Ll|KH%Sx>cvXU z)#oFQf?sN-?@U>)Vn3+fyPt-7mIc5+S_yt{xcWDC4{+H0k}uDH;~29Y^^OW*e610_ z^8Bh>>2#w)m~U&r7hTC1G;O$15P0-j;O8sVFGJU3J{AQ3U>)-PSE*InaE`Q%*wq`Z zSA8lihsL1|`x}*OcKm%64}Vfj@MhM0a9R{gm+XsUeOe1X)IsRep}yPM;@~H)2OlI| zy_3C&D6X9FBO+g)QJu;JA%D6G^TV)Tyr%wqHWmFHXZbVPlu_h_$j#vMmn(dPC2L_c9kyo+&M?v~_#eiX)IS@0Kn8uu;59<1mT z@R3}M$0|%T{wHg;|jYjkp&LI*qe!5_vNy^C%# zvi?6fwBVam2Y;fZv0V4*w6M?|@X;z8M@JSjPMJT0TGXD2zb|6k+RoazD`6%y_@=?% z7B-f+k=JMpo<(2UOa?!ufN@NEZX@H7jYJp#RGQ~^)4&sX5%O^oX|jG)!`+`;cU5B&{Cv-t8Y&YBafo(!B<(Te(U*B9anKQ88SM8&$$lmYh~Oua2)58@cP64 z)p#Y=8<=cY@WBqNq2o#zOSGRz0Z+SPe{e&Erkb(Zy>XbIU7_z(z&LVbapQ?$Ba#2p z6@0YA$miXsI@cUQ)<-*GzjQ`@UhRyctxB97DCQL*9*y_06 z66bYQ&C_EBMHZ-x_N#~Wr;hL&KHV>e^`L^(uRsix7Cb49_jka2E2@4zFdLlF5@^pt z$TujU7MnVU61?nX{bJ5OJ5G-wa*-Sl2s7<#hmya zD|JY>IrO-zHSb&shdE|V>cz)x9xzIi~+&^mDmUC#~o*csWWxlzI zAMnG>f2jU-4&|Qm$;^LfF=8(K(QA!;9q+MyvgYFa^;F|}bId`VTgL}_Ob>+Lz_ua8 z2l`4kHRc2J`IY(O&qrL=_&m!om-$tFskZ$&;T!NC&SsP^^e#^bAAva%Wl&G>d*C5? zAI3Kirux#`-f0?hG5EY(YpO3DuD?g>VesGIYvN0bziricKhOLP&j&uxyIZd@Ue6e} zZC+n$y?&+C2VuLIn=kZ$mWo~le-HouX7@PZZ}6VcWs@)M?HD0^27Z3%B>a8jMZ!nm zGlx|JU(_QBGV>v{yFTDA%$4uq_Z#Sk@Bid&=0j8}?L%Q_hKbF5h|_E5B1gTCncomw zdoK1voy^yv14GHZRrB9-f5tR$(wIBJ{N#;3v*}I#>SC+T%LsTX*FDwvx3T^r-(eOw z<2D-Wjq)CF^Ol*kEZa(BtvaRhg|)~ z>qXbZnfVPJ^NrOPc*L3Y9Ndye>(6cC%zTFp4Myq*4#$eke239nhw0D8m~7@Z7`hJ8 zOQJpp)^5>r`2EFGFS{c~;-h?qSh9P7zAi3?;0=*>@Tz1>1VAhw$q{@qM>?2n##`1^QuLK?Ec}On_09Fln#tz#XO~9J z^nRfxoA>v5GF|nc;TC&Owc@`i3vz7=L9EpE1(%oVL14zeqE`A+UaKz1DH&8!X}YD)kt9Q#*Jw%FJ&V7kfdo zdmLrvH=NmhR@-^dVlOS8uEp9!BVJwB2^3!j7bXl>A6|LlM*JGIRb z7Tas;I&DL66yi~B*`Ly&d|_GvJ<7~?sN6ABs~ByuuSSGuk4IYUkZbcbuVxl|R^>o# zYhjCBdV-&pdf&o-_%LUVM!PKb_A=A86!0(p={s~jGErOK$6|NyIabSC%Vaa&a4P3W zZQf54|AB44eS@|AXDl{qziT^FEOyAX-kRzi!T6i-860D}YwJ{t9oDy#mR7`KQ>C_A z_&p2%VaXe#X1mQ|m(Faijq^ASpYw_-3X1#_|4@+u(@424IN6|-5R&2GC1D8mApY>9UdFO_{#$uU&9OJTb z{+tmI5o+c$*cW-0QKGg<|AF}oGm2$rbgi+-%x8F4{A5OfPYca<*+FR;tCuVke3jR{ z;dwV^c%+4x`3(-0QZptju-JKv#$*JR2w}WP^c!BcTa;1iVX)aozHr8*%@+IPr12Tk zrd#YLzx!o0Gg|B^DQz<{tu6M7QBD~S7Zz|lPxKkws#nO!muRv5-WSS98)C5o*8fbm z+c@9MZ%DazJ$>|m`GVImzajJd{`5R|g3SB|;4kT3Q-cJ5<@4L(j$_i(D+QVP4XS25c9>vZ>aKSN80R-7JIMl@Pk7pS!{<&gPU)xZL*o)kQ9^CVE@6ye_-47TT4Ut zjR9tU1M0aOnoqRYtQT?pvp?Fevf%qSb8Rs^iSuWCOU|=p^Pe*OX~p$5OnMFvcHcK_ z{p=_Hi1FI~iSG1dMlfDOLzM*M4Sx!``bUl-<+knfVRS z15oa~^@YD*C+FR*Me87k-B-o~$JcV5R}^~YW452Aw^e*g`mnyPyl;8Cp3p!v@gdls zew{X0u{|@#%x`G5#S0kf9KqLkeW=i4lJb1SY{r{J-v|5>rTFSu^8Wny4d(_ayWY;k z{PC3h`hwYumHsVFHqWV^17ek!Lo?($+lcooosUcxoB0Z;=dL&^CO!n)<<_lN_V=A8 z?Z

+~8i+l*J>jU6LfAS$*Rcs)vhN~x6JpMj58-rc82W_dL+rfb1zk@qlKNBeny<6Z2<(?LU+{3p!4O@u zTKEw$od&@bt02jr!sioMGGP#G?z&p|5g|PsuwU&e;YTbg8w5wbEfd^itP|#OEEQ}~ zKNx-OMS=@+T>xuRf;-rw|4=?hu>SKQ@U?WN@DVB!JYdScX@d93hT`+|6v69W4Fj{H zNrI;p3`f6fyx=|~y}=>PSMc)2BjJ7GD8WI;MuB6jw_u#V2pY-MKcmEWEchjOiskJy z#$n#r5Pp9l&5^#-aU3ka99lyMOpVDrMr*@E-um7>VR+wMbj&DzCdvX84 z&s)(igF769TbiMd*}UQRA)C9y41$%Vei?lG%Tm&fasM~M?PVyfFYiauX627kUf<*Y zhAuV2`{%D%Pgm4)=bQDyek|{CxgxKjZl56pE_o&S3j8&$M|xmC!e`R^`S$ZUVTAL^ zA2ocQtgl&TV2y5<@@H%ACv-ck2enHtW513Z$rre}!vNR0@xpJx8y(Y*Y{hihT|DKq}TKD2<>Ic z;P_*Q)bE0ikM!@RjL)N6xQ`&?>+mMB9qzyNlK;SchyMH9LPe+CQto!}nd6Vk*AAi5-7^bzeOg!6+|+`=f_0QC`I11)VVu zi1H%FC3c14W0V*1w4fX09a$uO9FVychD%v-?l?A&(qO7@mDaI6J1vHoPKKb^Ui|wn#pjvcg3T=dK|j+< zaInd8usdfj*u3*fn7__VaPxMnfnSsO=kb3!e*>|eGC}aSrNQ8Mf4bn^b3K0>>gE)V<4IA1d7fadrXnwbFF#@$iQ_>@V!2hPD7+s`6TII$ zoh8Oc3LnDs<65S4o%nM?DpS!RAEI@i6xLxpvEG#=R+>+IZGIwic}(0_HG!r7PyWRH z{c)^p68RCgeR*C3agW9^Z1P>=xm%*y2Tk%JaQ*_D=S7Uq$1FF7c*VwWcK9Um4zDn_ z8|NeAxfS(U@k5Q}tWyo~&Q$@d ze+%*-&OBet?5v25hc9G(rxMqc&tr{}iC6ZU!`2=nF5NJb4SGRbpgWx%=s-Ti55K8w zL3i>YbnpAIlkUXkz7yH|Ma1^E$Fa_t#OY&wnJLz58+?Y?N28eCL*h;|eAuwY&qCxhk0&fB{)%_w5m8HTLo zTH?0YpJGIEg76{S9~rPIxx`^bdMscQ@u{i0OnH5R@E@#uYcua+Vvp|{EC%yC__H@& zZ}Hlz#(twe(%?5_XQ?p%t;Df&+OwY}#7hRYW9fT{zxHm!{1Os`4{^F>E7k||68N)g zMF2p|v*yeg*S~@LerU?>O-T^GL;q_^tZp*#uIG*L_mUvhhw%OhdqMoh@ka6)+NRdy zm=JNhIbX4#HL-`=N6aTDZXfg(=j+D{-(lsnf1z<5vD>w0*v~Cq_zxDRA4Ak>;=jut zLcpAO;Xiaqy@%_g@E`abmrrf)fC1(+@SL!av@oa|SA#t$;)MTjdGvMcr%3+8umx3c zSCjmQeiN@?-a@SK9k#B%fa68PXD!adsI*v-|8Vu~8O)oF<#__|=~_Gte|rl1?~(t2 zy|&;m`VFVP8sWHc0A|;hLpJ6$aNmLZ51Rr@A!HEw4`0?CgDs87f9OB>C%gJvz@O>YSpAx@u-wlh05I0IL!Tmu#!<2VhF~63$nb&5}!@QsdKjPV;B1pbL z?5|S@+tQ*%{=<_I1^9fS;Kegk@b{31^J&O;;N$IEm5KW~WTM|6CGsDv&acJ!NW?2f zBty4cV(fYXm9xojI8_}B7u|>#&5efsy@(y>MdJ8cq{x3LRSU!WE8_%Muk-?KQVR3{%o=S4o$?F-_0-Yix7G}E1V80=^LQ{Lc1#BQpF?C$f0 z58>3V4$6D@qYtu-ZCG%eUD0XG&h_yVK7?O_GMg}kdErddJfGnUy0bTv9Z9!NYe|2ydD5qI176|VkIe~Q6ZK0&NE`3;-izK2Wi$X{?$eG975#9d^s z@cE7S&CC~=FHSzg*W9N#f0S5$<1yyHlFzVMwY&~*50Kw5U`-X~7ZMMuy#h8>p2CMnu)l=$Gvc#_74ZJKhgdFeeGYn{@6h0L z?Am@B`$3c6;H`fW)Le<5Cu2X0$|1ssIN0VmboC}a8*>En?A^rjQ|%5xjxVv*uKm#C z9Qh5qJn=B7BH4{}Nc{MEqH4JLWe#i{*MBiqQij-$5^HGyF^@zroje zBdlvneCAIfI%Q76hnRn~0OtO66#V7UI(*(G|6%lwTo`e6knkb0Lb5TxfOx~nO!%7X zAbg13h3Rllh4^>WTJ+lnisfeWQn4R~z2rmi%-tqwSfB1o{sU$a!Nv7V_z?G05^(+w z2>+q5Djtq8@*m36;-ENRF4h0}m`ZSHES_Iv!iPxu76V^~%0wPShn=xFK4&LgulVzF z&uQ_P$3gx>tBwgczC->4x`0q|-bVNjE5j0@y%G5jJ8*SIJ8QIGfl{Us6Lj8^QXyw@L#YN$ImT=|4?U`2Kt@Jf4Frk4UPtq z|1dKy9rIYth5zuAW#IE0`44fQGw^wbdLfQkJj9dWo_0d*$O-IPMM+Ey;ffY?Ok}@8mzU z^i77a`{X-x3rd0uLyhqKzEsZFsj+q<&Tl6FVO`qS7ZUrYG)BoFqs)i1Yu zn23FD+G8zb1H8=F!{-x!Y5A}b+u-LCMg9Z#7q8iF#k_Kb|G@8Ix&L5&S6BED-nLud zcOCf;b8R+*xtzGK`zFkjB>y46dn5XrTEd4Ix^n}3f2b*Zi0WfS*u#Uk$FD-{SF0iX z2xHqqbT-I;STSNf)E`%q@*!}15A$jZ;O9$K$w%NmM7??eSac*GVxKG@LdKF0ac9vw zm>1hY@+0v1U%t374}GNef_XoTqpgYOx66geZsbE?FLTWAZYTXcK1Xf-x@=f+vaR6u zhqJ)rJNXaq|77C)d}4pAOwe9N{zG_323Q^;|Ka7abnLH0{=@su>Ck^5`47CmP~Q;B zgUC3u7BbF||Iop3Eu=Ifwh2mwW?s#t?azG&_9O+z_nHcR=bM7{i6#El>CQw zkK$p$+Fw%rg+G&?n-P!w(G++J! z$b;a1gniT+?2qt8_zxQTYp~xR1J7vDeiMoLd;bc~EQ-SUsV{}!P&O$F)(s>d0(&Qe z+9Aq=xbr*`;(C)0ad~GX<_}RGM28i)T!VawB-cpvNhuE^J~sj!=RFWU1MlB~8C`;X zog>f(BOk)DFdXMM-x0pUndf0xZ@tC$k9@$I5WKfS|3U4R@Ehc&;gA$|Q?QR(I9|^w z52AHV7?^EQ_z>J@*nK(-PHHK92+o5Kgu(A9MSl#=#>HXq^qV3Nf^*3_?7uOce29vG zK=jKhh5sbwTqd3-3F5nQ8q~nvUigY5p+xo`>T@=!Sg6yMv)Jp z8m$F)e8`6|snY_J6XZiYou-YxHTe*umT7@^Bl02m>o?9OA0j_M8|%MUrTQB83;5rY z%_bkB!@pWsA15DT{An$)I!``C#Tae$Rmg`JZmI=!ZODhnsn7z4W#mJ&m1)6oTk;{W z_Y#cXOg=>Fd`-BVa$4j;Sas3@oxdjq*PyTQtC)OD}Z*eC(rz zc~}Y`f{!8b@2_4$KE%Xp+L(7kJ_H{-57?yeA^4csQYBrOrKa#9I2S+A#r`G=AA++@ zn~vafdv6&(7jx$Q;U}HnBjro*>vIpQPGD@iNAer^^=ogp&e(r$m&81;XheD!^mlhk z{si|QN)B{|aUDzk^G(LfKWG}kpX}|DFTv||6$!nuzP$}!-w|s9P2>Rs%pe7Q2wpqm z{zG*g_Pgl4Mfed{5A}tmyEX|w;#f0t%%9uH>y3Q=yR4|W1&lvUKE%3Smgt9&4^iXQ zACd~lhwzzYh4XFlc|Bixzjdhb`Njev9?j)3U{Rm?u+2KE&w1&S0TQ{WHeQbA`$<@*!5;a09Pz zVlNPOPvy&ll|p2COVpPxI|6CMsFAEN05x~#yGM*1nzGpb*6)u*pznr&D@`h=y3xp5xtfvq5*O)8K zzvuN*-k*M8=nCog$sMofB~CD>a+UBS`n`6-`=J%WkAS_7czi8ys8`#496T6KtqTy0 z{g|OPWwGEr!LB$zdV%0UdP87B@La*W%iPiVoh7);-xInnoG$oM8|;TMYpP(Ztzmy& zKf&v#kAUDw69mU;_`s#{V+HR!KN6g#QvZxqftb%QnfhmRkzpRhWa^)>?af%2FlDIl zA#{?)V}6gjU_Kvu`XN{3XHx$9>TzSyZyGGs`}zOv^c@3+rGxPIXDRs&oBS{zVvIfC zf6|=mKi5Y?&uMb$^Z4t#+l|D0KU?$(>Iut*zH~xJ`UR#&xIrxByhp}}2;Oj7O^=!EFyhque>&t*2{~kA8 z&==?~ozM9(>NsyO9xq+_`=!6n`=g90GLX&(e4UT{{BOiNSwOSMwqkpER`o-lxfS1@ z()%}9^@Dbgn*I0rVKP47f6}fd{PkGhx0E$^?uGfEjiv3+*CAkyF_>2<`eoqxN^axS z6Y^BPmg4KNUxmMH*^2HshWr7215189+YL%G#PNgIxLlDxzhW!q5$M;VUtlQZJ+vFp z84`7FNxlJp|E9N{!0J_%)SrSMV;NfvaD3~Ek_om|Ag9Wr6aa3{m z(6$iUd#hrf;qBq-z(tBz_3Hrr#zrXq)ZGoA*9R%C+uZ}U$F@@3)weTjdQ@4lMGr6h zy_{73gJ*Yd`1xjx;+eia@XRG)AN@XP|E%lgOFh74EuXl+rw7iD3&G!#e));celTbJ z6~#T>d*ghNYPzE3ukHK7YkQ6I6YezZ2gjZcQGCvN0CaPWRBUNB2#&`tQfyFT2=?#W zqBy_&Fq-qKc;esTnD-=IxU~Tpx?v;o^|ABev)~NsIPdxRH6r1nz^4%39#8gxEA#Uso z!+EsK?qfs6*ktA$s}Qm66mzRJbH$_L>_4ojGF#kg&0H~PrdTkJ+3>|Q(L0kl<;`S~ zpBDb?}^dk+!W>pt|P_fOy*WchKZDm%sSU0 zm|wvB_{2c*w?6w2wq5#*C0&^xukMR^8gVo}CHr3-Y}Q-$11aLx2YU+G!OPcsbr%b7 zFb{g*BhF)fMbY|(Q@lmF+U!H@uIMEk+A;sh>LfgdFh6YLE_}k6hu!ZW`mbVsIJdp% zozMKMZd>7cm)ZXm2=^b%l>@cHwmSO|T??H>LPho+L`o|$pdPbL8z-F8z})R)bD{BN zp1P))uph=xEm|LB?lRX>3_Z)7>tQa^Z!)J;F%^yl3Cf2^zgJ6yK4QMNt%i8{n%Q}- zk;s3RpnQkG9#uu3_sk3ItB4=pn0p#j790Qjd-4+lURMw}M@jh+b#^_fBkUnQ&oFDF?_z!) zGx-dIOxb@JajgKR9*I}}LrAG>IEE9i`eAfVy9}e8*njxB;{pu-rtddF{V-0JJqH`J z<5d2`CiBzqX=+@4Q9q11PABmBlzoQ}Bagr=JLa9u55b!+vC4lKRV)wlN@JD(kZyDU z`<=zA{Dc`}l+hmTPvkkhq+1OuI?-x+s!}rx&pyPSwm`WRQ{tolk!RufXo?nanh8>r);M#QN zEp98J9r|oV%by=wiu3=NC$?CE`G4#`cwj&HMdzcW4?+Gz`M()purf;JKP-t&hX>)z zJ+e~awGaCZLp4dz+mSiDAP#+1=6P3R@cAZEykRS5QnW#7T) zRuC-kVLn%825d89zrj9oBCPx#q4FQbR}O%ySD7i#YT!0ztC10Se-?`M+E$`O;|vk_ zGy?_&&QU%@pOEcPvEJ1DA|K*)<`r08A^__n@#qoW5(S=bp<9Ka(uZ)3+b@pC{>1#_ z0m_Ha9;hJ9+@oHiyqc60 zmSdS?w-p!bjhKhEEGDY#Wq%=W_8<7=&zzb16X&O~zi@2RH`uk3+2-tLDBF(t$omh_ z?;-mOT}|HM{V?;{4zJOdV2+sf0`oN3XE?X@DTr>&J6=A<@g(*a8rVIAA7RXKf%mXq zH1nO@+i+?d`wRi)Z({wE*`?ogXnd1>hOaqSAbAXP8>35b{x|y!w`Zl1w> zf94Ucr*OQ)OZg4^cN~YTmdtOwcYOG&@J^}j< zo&n3iW(spLmnHD^ZF}WI?Dbs)=Y89w50$3F3}@YD&js-Pa69EgxVM-OHX3Gw@N~St zZ;R*4)tEQAR(Et-D!eVn9K1Ujnon$l{bttE^S5sG@FXaIR45WYf$uuyLmV)U#eSwbl?S0Y90NYl>_2QUh{3!Pjr1XC4#b$yXejKW_aA6{ zV1#Q7eB0`x@*swmiG>PP*?-t}Di(ctXO#!BDJ~8iuC!J@L~l>*H{YVQ%7f@>kN`K+ zTd6z<--`)2U!bM(A&R9WV*X4^l?U;=TM{hV(;o_X+gfCJXIAIf}) zOOxkA>HKE-LpAqhzUBSq8R%DVzl&w>GN3{*`wzFrW?;R!smg=!Sd{^$K27EKfny%J za?>*4(CH@mlwFU{H@e8$88B4C{zLno8SpTNeFy9v3UiH^ubocEywS$89}CS_(Ilkf z^Bm_r6g!@V{d?Gd*n1)shTUi1VXc1(K0h;CNdZ!yPz!u}T- z*2-@%-yR7^U$O7tvpNzEtgoy5hROjEn7_fk1LeyP@@CE{5r)@u_8)ZDu%`HteTV5e zAvk}+O8E^*3Bj=b7yAyQqvm2BlVv`ASBn;!V0L&Y=7U(s`x`tS;eL%2s4>|hf5Es^ z!0|O4!(58>RSUfTj)y>91?$s3A1BvCeCkV z|AFRhAC9ac{Rql1CqER&N0krZ*LNje57~dXI(r57|74ENU5@?Vs!2bB=D;ReF30}$ zRq6L8^CCvhScdnvdjEm?WsKRq6drtH-{IlgC0KuB?$Brn_V3mE4>bQ4vtD8Cj>^)P zAP&o41oK~4BA-i3^KtupSqPmP>hmDT*|}i15Q2v5^B>6BgBc4zv!R0gd*YNm8F2R{ z_rK6p$bj+o%yYf4KiL$$|3JU5BfI9|_#pca6Ut#e&%ZL#U!c5)=#lBTKbe=GOoQ_Y z>_2p{Ps6+~z5hU;|MQwu=w_>Dx(3)*PsMsA`w!K|q+q{vz5hV|QQ@s*=u%P7l(*vQ zlZ?kV`wz~0(TCg1`43ZDB|+8S>_4pBn+VTCIS;}@mk7U|{wV*U{)q&L&Sn2$#gTaU z>B@N!t-8l!e;mCJLFYj80dbI(z>2omeMI$D{J*7`lxv6QzsFP`l6eq=OzXqMhlP|kkN2@3F#EYK#CboF zzQ)^Gc|i5)xy=gmFtZr*B=X_Ma5H>fW*>rlh1Q=QQ$0@l5Y#`R!65b_JiU#<_`(CV zJb8sNl+&>fQPas7PL*IEqE(_X`bg|UT>W5-^Y^$vhG8!g%ok=KBI~d*gqpJtaj=;Q zOpIk8V&@tYF!+8|_0u?!YYYzOuPEPPacdLo55YdfmVJ1Q+Q2@<`PIhgZ(UG%5dB)1 zK<#(u6mKvv!Te_SA;@RwIO~j@k50e$yFtcyzC5Kks-_7{>CHYw??_`vv}7NG=A*Vc za*U1#9o?^6=gT+&QJ_PZ{m*#NnZ?^OqD4!{Cq7}|b(dR|b^@xtI>KC`k<#heY?P4wSA?R94 z8CIz?>Os3YTjc8#U%A;3B9k`B`X|lT^*_}VRyNs4$E%L!8*i-Rfak0Aa{f8hLmw=0 zfC9{ipxPVp-TuwNeES;ZN5rjZ0bxF?Wqp+D>BA;Cg3+~1nnI_Lx7#K1BO} zu8{OQK`mcBrX%KivJX-Dh#MH(W*;KQ$^*{_>_gOu?*vwP>_aSk-x*vTBW3-TYNFl8 zd!awWJ_OZ9-kEX#jE&je*e_J?L(ulG9_|fY-m(utc?daA*oQcl};^3sau35Ao}Hci2-nf%ZT4Q^2$Z%bqazCi@U4U-pFg7e>qaJ1wsq=!rhS zH2M3Xb6lr}?tneil^@|Z&>hF$rYk>UNCP+Y@1`mLpw@nOsL*+`;&MGY;rL#lV%k5) zbmJ6L9)yYW7{x#Ayz%!sQt`-(U7?!8FvU}*cEkSdgB6FGcgOs=0gBI`=z;k${)+cZ z@q=kidMkd|pf_YU?Wx%PVISP7b>So1roIr^#(*vEO$ z?@2?ykBLY7U_THyS}y&FCiDCN9Xz>Q*58lyf@`JP(*DPq;!#c5s9w-@gHFCaHSvZQ-5@EU0iGXfk-M&~d9MSQx3j_TJB@0X+S$+BVP0Nc=@%etcGRPO zGL~|C@SaOgbYM7=-dE4>M+iF{T16t#x6#OHA%{Cn~bT(v7l zw7@)A!~eD?Q$u+(kBV28e^2{#-UoYJUQYi0$Pw^+Z4aSwrRDj7xa_V*m=FB#ApMr; zeAcByBPdz^r>yVOIgIij4o7~IOy9?rFE%*d^8O(1Z|P6mKVkzT>%Nx$0PXLBpLHSi z`4hRE_TPmSb#OfFfvn%t-)vY^8~X#^l>P!;!?TB2dhvU6xWj+FZ z#>c+3(eI;v7)Qzf(9-oF=++@zKTP^bjkCg}o+QWPb`eAIv>u0KFsEp-+&8{Vlp{2b49yexR9hIdS)5l`vm(naqQr z_pBUP36I|e^7GL5e`}%vxR0g&6=5>3qj?WQz@BxIX@6ig0A4Sse?^#v-UHJu!D$Hj z2x0R0e&$pY{H9O)@9%T8KW&ZS<@5l_^qpU*ZVCaV$VUj%(EfQ;#vJFX`$?vKcDa}( zwCe7u_{m2rT)&-U@<*!ItqrzeL!`fP;hQfk9a0;%+HhXPm|=A>kAw3fYK*Uk{R=oR zV)dB%c)vaZUr+B-?C#e9{a}B^bi5Q)SnoAV+}Yc<9GE}R!pp=vXD`keD3 z$Pct=&3O@>OE{u`&Uq1<-%c?26X!*c@7KK>=SAFoN&RAeC?DZmp$7U6C{%p#o(}ty zUr_9DUcle>xr$dGXbWfCtXBLrr#r?jUm5N6U@`m$=Eft&e^ug=nA?Kp?&vf#IoWw@-+m?SnTl9b% zZfg~PXzB+6<$owHRi`&*hTG_h)~{*Q7kZg@QT*zkKeRqLRq=p#{W0%6NpXui1Ht`H zrs6HT2BTlPTlo!zD~6(vd`7Wp+;Hq)_(1Wti6dck_0Njk`iusbGNpiyS2||ywhh3{ zfXa%U>W#zeZ!N`5%1h!z`QeNlE|CQY*Qvsr0!sLj2I_;|EHhFqcQ>FmKpmILoG*% zW{uc~D4sQ3g!EcN5y-%x3#sMNstr@X&VRzTV z?aVQk>x;|BnR_m(Cw|;wJ~FhfsP~rnfNODRhb8FGZUY`$15LVWw?px zTaJB)n|*4D<29LQ+0_u!YOvqXsjQLsSBH5|p`lpWg!%YU1L2STPNk!)a>BZ~etq&E7WXM5nmRL^xs?(im^Cd+h*_@8zg&umjkrBU zzQfRdzj1trInVt&&WB`S&R6ng>K!y3o; zU+Bn(2r2ah=X)`iFn9=$4>Jdv-37-yW^@PP%JO(wulepf1bdlYgWyHXUd=B<`$_R~ zel6b5;Iq(q%pZ%F^(Cu_F)*mrS)5~EIkD1*82BU^=XT{`es!$$A*dh5m1g@PHZfM^LAd|ei~hQP`C!8Z z@aFw)>~F^Y!@?^&;os|+{1vA5)CUWC80Ems4Kd1pXd9XhYX-6Zuwl_Qy#HqZ!N7Yf z47ePv{0Fb_&6o!ot^9{Oxf{W~EBg)6P1j-GIP=7{=r`17rhMrG#n@+fo4ySD`|0x& zX1u76y+9Yk$;-^w*Ja@NHFK`re6X9X_Z`T=@QlI!6t3())HF_o(Z=jMbla1N_q&nG zhZt5E4{Ogvs{DsJ@iE}NmDxrU2`;J3N8G}p&rtRo-2Vo{!w$?fCI?|ZQ0BS&r$PVE z5i0*-K*vDrH^`ijF%GaNvGN^`w-|~22bnQ{2afh(ewEx8`iOTKN!bQ=Y>czI$NT;Bzc$c{pz4WYz`HUc*+K6&P={hrc?AddcAQiyow9YH0; z#R__+YsR%w#l_d09&&x+M9Y6Te}H*g>)$ZDG_zr^A5d;nceVc3Szp1`hgrM&6Eyqc ztCpwVe2?`9_8GcVd<%CgF?VeD3j5iy&tNzE`TxsrSb6XX<`1*KkW=C@9E@Tv@!qet{(^S(5vUu(+^OCnaIMAsZ2du~nZ>??b@Tn` z4>Nlm+zXR(JE_;(>Af5C9ra8;M5QM=V0hL;E+<|!HyeI;V|Mk~hV>A=?+{h-y8zEz}oAMz}wp|Z3n=$Wxy9Op~@2HlW?aP977JC1IoWWLst6=w%4$_Ap zMmHbx-_6ms#KXd6>_4O%CBTg0>_1R{g)&3ge{f%$hcA1=PZejdSgc>Z53^OQqM&4XJHx!=XyuW9hz zm;DFI!^k|#{sZ+(`Q^uX4;Cd;G4GIl2d5z^aJp4P{61#u4xL`9o1K!3*Dv-R3LKN5 zb|vPp$V7-px0QJe_0r58;AW<*>}iHjfKD-Hquw1-`nw3 zF);Wb`wpGAVg0jNJ>@&-K1RXC9oBfi>WO*N#j(~L31;@zc)YjPS>OJF^?u}K>_1>{ zRIFdI@6h!`80N(=H&`4Bvlg@eup=lG_fKu*JH&1af&K+n%5S)r7>x7rnfFx*28Ugi za(l?}JRJ~>{jx1_d#~!q0TmWWu=tckeyN^`vVT_D^9wQW)*?URRSM1DZ?HfN2M4-wvIHP(ljdpT#pWheF@di!KT@a&qheov0o-V>`}^r0GbywUtF zUC^zS@bYzalpj%I`EocAulFD5m~H=P8TO;7O3xcw@*$!- zFT?RoL;8J4AEN7qrFgzFr1OE6@=2P#UxL?jz5hV!`+}Va)09eyl&IKH0)noS~B?# zD@UY3pUTWmms8P?WFKN;*Hp;bp!Xl>`-t6^g7fk9z61F!W6e__s0;fK0rQgK+C07g zKt4pVV#)Y>)bqe67j+49lQ6GD??VvpDV~Hq4cLdE-}AhydjEm0uaqBDb^zx=Sg%Y# zU-zf-BTU!DL(6UKKP=lB2lIjRAlB@O1*b~iXuMqd57gggWXc!CgC4}-@yI?zwQteb zuj`}o9j2s3IOu^)>$u=|L~%5H2O{KKXiGE{=^KM zI=_AEbxZMs+u@LZL7xXfeuMkbaB%9#K7{wyaLl9A_s5{+UzUX9Gavg9tw)5zyN8$Y z`zeXPn?&s07LNU8E-Ak8J{*0oi|990fGKGUuoq$|_AkGfmo-5Lcuj-L-DcqYfU9|w z4QOU>A^e|Cmi;eiU3~r$4F(N|%&j-1|6pdX6FE=(u|9M=4_zMe-38vO;{4hB%70k@ z)dO}JKFIsMemmefUc4Fyn2-Hf=0A}CaBGtblv(yz`44SIw}7Ej9#j1oT{8=j{%A*$>(f&1U@QGH1I6D_)$K$}B%Y5uV6f04Sy z1cDschiF#K6#Z-VAu0x$;(S>4AtIleV%|-G`uq8PO`%*5_8}53nc{c^`w;Nl1osd7 z5JtmIp{)V?5H>GNasC4P5aBmW;He+`5VU@slk7t*?Pv;DXR{Ac-^2v-s@aFQxWfeV zd)S9C^)ZFcTJ|C0j+nr_hZ+w7~ie`w-a$W>BVDj?8cHPdcpg)|f-r``NM|2IbG&uC5JNjM#_x`LQncJKHAf z(R97(cC8+mMsAh<2;I}%tydrW#c!c{tB#HtgO!co!OBh2*B~F_&*-L*&|xF_4brzI zzoA8}-iM%i)#~bw5NEoM{vPw~zi1!Mbi{tF`g{ng*WJ@P;ds(&I(}q5@77-@@VcF; z{0PbmZ!l;T{=GgwV)~_4@ZdK45ZiyWhT&bmVF50>0QuAU>~CPWpB*4Vjsd`S65hdiG7H|TV27rd9b{G()PDq=3#ZBB%l>XX zbVWVDuhcaBKJ0Yl&!Q`U_Y>SdgYw&xezOnZw9^ykgR>7|+ocQGeq$fPSL_oLqw`5jne z#lKIJ-{<7AK47S6A^VF_o}%T^F7S6?Gx__Yd*X3-z0enHBAH&Fe28n$8vW-Rl+;cR z@_<8=Y{^fMc_Uw~JHWQuHquw1&->+5M;za)E8m|!&z$uF{WvShRKwg}Q=qSIAwM4; zZ<@gewOE5OmcKu`2Va%b3Jz!1kjEDtqYrL7QolRe9+@v#s#FUwvaKSICp!PE?9>GA zbgYQJ)?F?AXaBPi_M0gyeG7V~dDo*c2)~kYIjvu}dqeEE@K5>SKS0uQI=Z_P0f!dYJ$9@gRK`+Mk{=_28}UH8S}qt{U4gYY1phK17)G3qGB+ zg1r;Shp?7DL-H7F9N)Yx^9<-5=$LDbc}G{}`{6#+-g{CP0!yBk>(l-Yi?oE_$4{V- zP?65Z+WRpk@Nrwd^byD>d6{jDm_v*{{w5dd7idM{{CD7+S|bIU*u=#*d)fmh&Qfw=}~%6V8h$o!K1w#c*E4 zl2}LB2%HzObyiC-UB`J5bpu+XQ(Hp4{N5 z7tzhO4VsCp-MHpHjGDnBO0+epsN`DQF;6wcMParembmqA}2IPBq1; zlgGk?5$1}=d5*{N%=(Hu)eD5SjhiWc{&gabzq%;4IXf9D6tq{2SxR`m^in)1a5^j< zi4NU=@1GAd!MVX8#kDKVf{aI_70$Fmb;*`w@)~4HiMenQ!$NC_XM=-aWUUsJkXw z`3OCX`-*ATnNxT45~-!xf3WP@Q*3X+{PCTy*f5Y8dv%Glc;-1y-eSyd=GM18MT>|3 z!{MF8%ku0)l>h4{E?cnw@O?uEF~XHOvQK;QdK7cTN^P+p0&`Rz;4?LI=c!s@ca^z} zy^C0g^V?~Bn#LmyU$heUYq0+?XpNH)PRu^TTZoyy%+3uQ#Q6!##;==-stL^Vv+cy# zb)bs7eFTWiPYk9UHOg5_8>+*65os8_lUB+W%wT>|-U8tF!Nr(7-}` zZNOZqgqawqWxjpKSQK_)_QYh+4zq zmEYh{u9CPH$Xwxbd9h(ObLgY8A}gA?(z(*&2j&?R`41EGN{adk%p>*`7g}6S&$8r0 z7!Ul1{r{M|`u>7f$;>A@e}j?pnJp%M!sm;4cN!?K_}93Ry8lc0VW zJq->(|5dTdf4I{*7xVn|{sWDFJ+@*jNXuY~5CnCI77hI#+YJ(n-Wd<6Cxj<;9< z5Bo7sIhPJc+?WRi;67-^yu3s**4!gi{|n88M9?14Gvz;QsTL20=r2&#HJvYLJh$Fp z_8F=ckHY#2bNIe6%r|3p3JS*YJmy@7*_eqPq4FOJ@~2{66tiK!32J>O zP^J<7=F*CDX9KWTQc00$t@j)7c?lkEEiNjr(fbQj?^>)Y zCeHgZKUw?-og`+*yq_>|quytr^$lNq!~TuTjg7xRi@$omftD9~e1ylVne9T~VLvhU z9|j+MjmKm+2ZpWI`wjGd7A3RMmtf!F{+g{YeXqOR9`YgXdvC`1 zw9J-&H())UMo z_?GIbe29I67Gu5vb8zE@IG?w@^dYEzJF7|t9*^zwsa8kx!+t$a2dAKRitGPQ#d=*^ ztZydCe2FuklHpKKW}2VdFRzXCA@F%qx3W_L6m!ut)w@0h#i3s&lpo>#BL*&&7SfNP z8u`3o(GV91vR+R0M#}%Lb5f^#h`p;L@cEkkhaE4mpZ6NA@*xHt!SmHejjYep{N>-q zVQ`|eM*0vm2dzw_Fq|*vBJ&hzKF9B3;jq87i@aaNXCPhjt#C*m?X0-vwg}8)Z7ux* ztZ(QVM@53EV{7Rb5L3NsE9O1WcTY9!q3BEW`_WSR2E;U9xMKg7`2D_+e!!t)vDm-F zN%{pe=2L4?9O!JF#Yf3z^?Q%hMhwLbpB5 zWqt#V@pamngg$$7na@C+9gz%9R}A(!uy#9%6E8vC;|H`vH#Hec042%vhVO~ay-~Z z*H?bS-^MsUypVkd%1Q6n)kgKRNcW0?vB%hV(B6uMsuSudzhV9ICDCP;*R=&fX zf)Hp{t+w(T4(<=eF<~pk7Mtc`O^kep?m9d^AUh%$`-4$F#6{^pl+(qbzhRkAE-Edj z{tCZlSma;$mL~HctPf^FMzTfzV8dQmZ#00Yzw4n=Zwu)^P``{!>-AufZcg`m()Xx7 ze;sJMm`R_39Gd4@YvD>1`ws!xYp@@u-hUt;BI)pItZ%aq5%Vq!>wD}!+$@&`4QJF+ ze#EWXnb2S{`wwN?t%9zFHIxtW<={%JC$SGvcxwfYAG7}erB~qmRwLy{ob10G`wLW4 zK7{|NWjNl={zHquOQCKn=A8jcalWSBhrnZ3H){P7IG9z1e&0ABEltJs>Q%|QAQ zbUai4i>IaaOuoaCwTm!Mt+HHBe!=>$3o-A$lJY62KaJgfeg6wue@F(^a4X2qPkzFi z_n5cRhPhMQ3>Y0%UM?rU;mET2u;ViO51QZeAh32hxqqmhwW{Ads2osMGOd4RZ#pF8 zl#xuYKcHSZeEwcqGUcOZC7}P{R$6|)RMVRJCl&iymr`7PMk@A;DJhxG?|bj3ps%9$ zA?W(>+7tU>B$SY^NA)Gr-knc3lo%0|X*v7)Xi|ju%6fqFD=9BUrZr_Q(%6GUNAA$KP_mtmoaC8Lv_;(a9@QlEIKI}sbY90Y!FX{6j==tunX#~#S zWgp`F{cwD~x=!^B={HO{7mm*p*A!RC3&;GbD~bzzBEYKZ73Dkp@QA>AEA_X~`w!oJ z!>|wHCFMWVjhO=rYF)+eKNybHHWURuQ!vl_y7UontXuRn7>n1x8+rD3voNQ*g*bMq zANs;~l>cyNX%844eLwH!`Q5N+p|i+%)Cu0&JXHR}gzfEM^W8`2Gi-)j4?98g%hTd% ze{V#0+Cos4?Y=?mLnQWUjL$Dm^2R<3qVuiD39JVVJf11vf#x3?o_(S?u%spaexE4+ z!Doyq_VIWkk7xSK-71)Z4f+yPtEOjis^{14&prg^V?vip+#h4o5cCUN*@yVD*A#m0 zW*?$gPgB?uqW2-_9;oMTQ+)o^_s1aqY-)ynkKTtMt{h_q&u`vP{sZL`jPqn4;`%r< zcv**ih;xNza5SBL2+O~wly|K1A)1Al;duWg#Wdfuc@Op>?teFh^k(csjEgh_(@gdu zs2&o~mwkwQFoi?T>_d#cX^PK7>_g;CH3Q>1>_fErV*>ZAPDmes&Od*$OtF6_`w$Im zO~KQfeF&3B#?Zn3h+Ln}U%%#?;P$W&LB7QT?@dp2$ALy);|sP_aRa(gx4} z>_c2w(H4D>bmd1({nHLSP1DG4lX>y`{axYav=qtYSgt(S0eiHv58++L4VnyOAL8va zcdQ?>4^j2L2c93;hcI#OjPu9Yhp3b038kE)aewIhYq7Ot5;~GoHhc2e=K<4j`>)=ARI_tUZ#Y-zEB6R@=K_cSrPf zYOC#AFiHa{gUEk4D!1Rcq6Wh9P37mI&qVqEPg83Bw|i1p9hLQNTA%WZdU)j{)BZb({XvY-kII!k1Fe6qS9NGNaHm{O?;m-p zI`rMXRlXnnO^&t-=2UG$ej?8Y*Lzlix%>6~GU#~GI#k5@bgSg&qxC)4R6xIQ>3{F% zikS|T@cDRw+#cLt8tjz-``%DKg#LJJf4U0#!wHIAwpPXQTFQseFTXV32-c4dRs6Ak z4eZyT@0UUEpX^Wz^WXISGU)p_W@du@jr9F8h{>P)+rE!{e{wqN?KQ{xyEnd`{C#K- z#aUurKnKZm{C=B)`4G`AiWBlo9V=|L|1RWDW-)!;z z+E8)MHd}a9M&>HwIolBD7y01pm6Sfhn_Z3JjG>$2M)6Ic?|*31ETn8A4w+Tm@WUJmC)ICgFaYp!u#MB`?z(8hSW zdVT8}9lpVsaO-uG6((jEB=$oqTeKchl<`*zGs4_$xf5=>U<3O>_nEi*g?)^n_7v}xX`wH7I zX8X9_;>a#$%sUY-FPIBPbr++*MkyZxvu8v;&bKB%9`Co|!U1pbt_SnM(Oy{3X3jF{ zEXr#N6PQw5% zTiir!j%02#x-s^jU`}&sC}tjJwllEB{wmBh9@i7Se=;x4tt&26XFtNQUv2E4!G6Pa zXG`(bn)!7tb1_51{NtO6cj@`7cuYne>nIo+?vQ-YyU~~QJJH<9>X~^>^u0*KLkIzFgpx52(=r= z(fBLi^9WoRvmZ8~zeB&h(fcRk+^<}G{*G1o57oEqhV0JlKTPeu6Ee%N|KPeV8$O_1#}--z=P*?)-DuE+U$(em$Uj?bvcYtiS6R{0Op zZm-6EtkEj};dikt%qwO8;nJ2>nEw`~{0F-aD=-f}O8E~n3zx&Q@$5hJZMO{mpr1g# z0r?LV?ks|DmdsygWMytG(vv??;WXMpUyKe2rM=+ z2R@yKd86zz97_s>7sHsHI*!5X9rLDRBXB+k`wrLR20`UN;VS>3TJ-@i@(lY7^I!ME z@t*(T3*E540rR9>Pq-hz{J^ji1OWRDwG3S0l{s_8h64TlF!_FzxBT158TTji)`k9X zb78Q`hp3Sf0u}ORDj(wdxW#yXKM{W)dLJU`#D4JUGBUr&hbVpb9&}FYkM+zEqM`p* z(R$2~VJ#qt%r?TG=P-h+X%Vj=(XEh#w9p(0tFVTN# zCYJYR=lzU@t2|EAc_y_BA5eD|4gGR_}si}!O;I?5=jQz8*6 zzH1|yYNj0;#Y0-RHt1ia$mKuh#6r*kz3)KtZ(e3cLwjc-`y1f%ppJa2*o}ba&xJbj zBd9)tL)7RuEtUN<46VbV+%%o6pVPlZ{RoBhn_BEwl&z!j*M4h5AXCHsgHLoY?q3bn zD|O^>JoXL7ekm@}hoJgicc&2aYg}Y~m+E`A)k7iUw6o%cUqWHHgR{Ke(r?uKN*F%R zwU+l2#IPeAw*74-?+++n;!tt~lo-aGHa-%4o|f|ZPrgM>FU+fOXqiv7T;hd|qTy?X zlVr*ZHZKU$cCgTTQ&=P7>rbW`3BHjDC^5 z^i9YQnUa_SHNQ5M{Yi+&3`>P}eVGSp)4(;qNj`m-_)MnjS2GPJ*f1|ym4^Kb*nfC; zDh;1^*?)NIhx5r38%rOC_Ghi-sW`u~u{?h0m`wVO*T2w4`Se}W_c=5*1u~1X|Im6R z`hLL;(LWihqxtwI&yrxpp9Xk;AE=}J{U3HokQ>$jeUU*rI{&|Kk%-p=_8shf62Nqn zt^7Ta!_1!`7z=mLvHvjFC>B=Dw88JA4ds#Q412|Ze@PqV zJ6P0?hMNP}f9T#V3a>xxJ3w8mA7cIk?OS@LtNAq?^J&=zRVWDtjANvlkJwwoWWPX?vj82|D|AF!zg5BrhcmQ)5&tUAo zWhsw;nm^}VCJOsITjpQ!8jSV8W|#$n`2deC^1BR92FxFU*Pbh}-;ibg@ZrOy|1c+h zJ$@g0|G~3WdF(a04rcAq=RuGU(eLP5xbxXe*2C#~a=ztS82Cir|APFhUw&&akDUF7 zeq&d|idM{jqOu@4Oy3WKzOO6$GhyRA_8*GhTLmi~)RgspI!Ej;y$X&rV*U}f67$*F zfAHP10@}^1uJR$gZZC(L_ly+#m0Aw_DzFdH)Oi`!v#KdSB7E6W9Dl4T{fKFp3ErXF zQoP?br1OQA&S|Z>FF{|XisEl47Q+`qy$?|)WS&mzuozx~f!toIFa4ae2>U%%mP~%c z$TJJUKC==%KkMk6nq##POz&2dOg=@0hy}3DxT0KNo^!8epaWAu?q52GSJGxc`L*T$ z+utF&dQ0X*hc9~Hfqo4%IKFgZGOv^8ILiQ^$1lVamwm z^!t3BnTGc$djEm8pML+Nj+c`D3-O}#R48Vl=VP_EVa*l$tBootmlH1!Ou>HiCFJYT zInV4%GUmzX8OKX?fqjx8C`|7|(DC7QI|+JTEhe{z>VqfyC&6n+y$?axuh3_S@U0B{ z5HqGEVqV=J8o!p;vr~x)*iZX6j+eXYs0Yv?^90B#q4yz(*KR@oA^nG3PX5ClO&p9G z|DDFW<$U*lr(s#(>*tefhup=e~8%`jn_}k zgZLheeuT$+xjsF!KY0@kZSK9J`j?LKcb`s;teM)?m{KSaZu zM(jg4=R{+EJm*0q%#6l75B4D(+C@Xk9?pZH{uuW*K2?4LW_@Bl_Y=hd*^%hW7b?Hu zc0?r9Tk=Tp;y#h+&$AElYElH`89cyx{V&Y6nhifMVje{A`^tA9pYTq>UB%Sj=TgcY z`hKL(K)!;V!EMEf8uArxDxP0I0)3$yiYZURBba@NUh5*zN4=)}hC53mupih}#aq)O z@Oni3E%g4w&Ib{&{K=&}dVa#+FVuS*f@9EE@+jMo?!|lVo(ahw*YhY#0<#o^@5QlL z-@d8*hqwm=uphy_ygJ*m!KuHCpgi)=YwqFx*$M6sT}0#2UBRiXKK}vT2F#Xp!}TBK zxyEh6ejE0p?{>_lbt_bP5W{|JFwc#Bi2eok*zcndKW`Z3RTztzCRjh2^<4Q5+UhoV z{IU-b)xrwjWU~*kq$c*`ZpuDHtx$6)$kh7~ zbp0Iv#T<`!y$?ZbITq)(y}zdVV?66-u6&5NfM>e)rOeS6V;`bNlsOpfVIN{m6$^-O z!afA8|D*!@5R{KlA((v#>iM*0&{_F=r2E-o-OONxDfwu4C*@vL~@ud;Rq%T1C(`yCpKMng33x1kFng#n1Gq##SP8$0V&qGb&MPt1W zL1S7S+nHg$hTexD&Mc1mua@42Aij6f9KI*$eF)-Nb{2U5&pt%@FAEs3fPIM0=dix> zKlu5=TmE7@P|A91}Uww199lKrnCv-ilUucc~ zIr|V3|JH}23)zP_n%)5O?e+N(bpJWCWn=8$w<(XZfhZq>>NR&dZp@==ADy!uuC&DY zn(Jjfl6;83r>#I^vQBaSh1T$R!=-X{x|y&Y3thoI>X9`SX|N-@5$JQ2x#8{{RO=b zL3s;Nc^$F8QL@T^_*UEOwUT{^Uh8_m*mdkf)Ed?k?kr^=qHBU5o=@3_cjt;Sj!;ZKNaetxlBpg{`4{EK4wA6g&)Yck0X`!n^S>n+ygj%u@3 zcf-8b9@uZjit^R8_Y%9pp0hr(zEAbug_XO(huki7ykotxq_%ulUvSMNAHr3G_ZON9 zdEFsmmOEWPWq%CKZ_IZXC-Wg_ea-u>-C=3RcJzHp9`_UdhEO5@o?as_v^&lp&?1vx zk*T5OQ8k_E^=SJvlm}9=qmz7pV)AGDuWGLR1B<7fq0cgVc|6kR8~d*lG<$C+^A+ed z7T4|s%Pu#R`3mF{7&P~Q`Ymnc-_z^S?*Vqyqw_QQ0-7t$v^XERj@&+Emz=2@>@R02 zx1YA}`Z)9>=9m>N*X;Fm!Sk81++OHFE~ zZ3{n!|C04@+P)`m8i2Ru*Msz4^m^1!sDHsb=^xNJ>A){*^mAVx)bDR=Z7qX(*srHh z`VZtI%>8N&!2|Efzb9@LQwKh2Z%99Z-p?(`3cmKcB=aZ82Z|nIfqv6DTwm7HHKW#> zV?WR12kEy-@Au|?Em&`qe~>;4UVpWNju=tKvh*ov`=wlu7=}h`hFF}6W3OUu*f-T z`RSON;E+B^G37Dc*fmnI&chUjp6#cYe9HZkedYVn_CL68fqt}m(fex`?XtrDeV~~7 zMPVL_;>rE3Vat^UlF6@V0yen5rDE?gw&+J0;rr3=74vMKH^A|Wa*9uFYlP#Ce-6-c z`c78fZjAjM%F6wR^HE^@vPO_(;x6|WY>%J(ClS!fT3 z9XT(e)@}z#SeHN8r4OrpaxfV>`}^a39+af4`g;am39PK8zfqUJvSaM2FW! z@!sEVm|tnAc-~bHeBL_0zi4|XKcZiY8H$@v^MVJ48}=0~PjN**;=@vTY|-}H*YbfK zK@;&@rvE$vue+fya9Z*DL)~G19Rpp_^7!zcFndc&#f|)W;e6BqipgJVav@A{rI&pH zdvYrtv%4RBDzQoNnQ(lbsGhGl&U+A!-(OX{xz-RkXZc+5*hfP#&-AzAqz%Kt^k-Qp z+P-+bZig`c-0r#!Eo(wjej=mY^MZ_JM0mY6_QpN6tl3Vi*IGve`wWesyOV)oN;;*<}EP4 z9S|t4V*RJcpU{3ACroRx4-uLiAZ&Uu=QSQJYA;~^baI6Fa-I3a$YD5tpZ$lF3PXgc z53}!k~e%iZ&C_q1> zX!%duaw6?eP-TcT}p(MV*lZhbqSGf#5~2Sm?(~1FE zeiU}hKL>rrylVCzp3Zm=$6GLWS@Ih5XxMKUe&9Lw4`&|xs1VMfA5xSTv7^#M^mCb= z2j7K|I_x`aoOcuZ3outYcMWbdV!qq|GOR1c{)5TC^KcpWN0I;VWB3{LGh%W4U*8WS zXWI#weu;V0zav;*Wp?$+$N5Lh{eJ9+)E%)Z43|P5$3yw#{C?6s%eiPP>;h zVAf}Kfy>2$aXzf0c)xbOFw{)Kd0aD;5Ai594HmTv#NUhFhj>(cC(e%56t&}hWRIrg^}$yxPOHGg%`sQO@8075v)*4I zAHrMn8s~#D+sD0t!A+Qd-+PMvAoTtMtzW)%A(RMZ_MQI_wlreae!B+`FX?>-T7O6X zJ77GW`P9jq(8z+>-mw7l;`KfQ)vqS5y$YVKm@_ReV}ESD&p^wK7GD6E!5nCI4*Rb# zAN)V6&N`rq?`h*8iiw3y3Q7n{iHO`gtJsKvi3Nya_t$PZ1p!e+6bZW(TLBfjP_YAB zvAg4)Ijd)W?|(k-vUl&^-Lt!AKJz>or_obI>`)fn~?{{5?H^idl2V8SXbM(5Bn>;*5_D%(M<*OOKs)y(&7~4 z)l^N-EXJ3U!DqFndv!Srd4XECzrJ6kD z#r4{$70c;;Zt{KXM>o|XZID+#@Q?>7G7vTF` zOQEUW*V-@`8NHT*Hy~Z|3-j%EyNT^n&He7<5NKh>8sBxGPh<rE2j;u1CAg60svS4zV7cYBd%LON%4 z68b&a3!a76&$mm0kOy{xccJ~C>5&8vd{zE|zJKk+MD#yzBKU{K`oY@IgA;K~YJ&CM zP*MMdSBo%@$5!wSR9~LAJ^_y>>y@(;Fi)I$2l_rkCb8eclr{??>^k!gy`IIPzmK)> zOQ2`2pr5f=A7to)*C^!mwzGvQn{N}HXY9#mu zs{b!L5CQ#OTH^Vjq4|9%`yd?L11-hpQw?tRs&G8tEhW!TG%pNV&9adC&bd(V{iE^@ zlo3|2BLs5$vu@HV1gex#`3QQ3DYXhlo=f$EAboq}0`%816Q57>yE6yRhlBmhkpJnS zr3^5|bsoHbuI6D7ulXk>9P4;9ME_gsS`l)pHt}<-nK><{w^rX5;Zx^Dl^p(3_hDm2FiX0^ganT{dPSPs{wn z#^Q+dL=R*%tL(qx&reCn1A@%Vg+~{sUdlY zTUqIF=S_9G-ZeBnH8DvCw+75ZYzSHo$NH!|1dVz7Z>GWbc~!|jM(`5;ZPH-K8Uu0s zsGc-0ZW(MkT}2!};(I2ZPeuQU$~ZpO75Of$>!l)ZRGD~O!S@hPTO3e{cu(~6*rc_6 zwgjebtcd$(Dfpm|W0yeLvK7VO6Q4kNG+X^E5buiTW2m;*pcL>qR9{jsxSBjS{}P58T*aO2~9PBTZ?4mi_40?r~MDvoP_=bWySvBoQ2l2VG{VQ z&=bpPe9uizgi$)GCZ4WL)kFyCTShFW-+Rf7Mc{ZqSA2iEA6@>O0HY06P4|oi%<{KJ8wIPhmUaEcJ#xm^T&kQ0jr_!(qjO2a35RNxnTMG0HXKY{u1lUF_7`sd@>QX=m6k%) z516;n;|kTgfHdV{CCx0ByhC@>2#EW7N$Rf7A?P=EMeq-~CqKig-m@`J;hN+hFrO8= z&AKJ{hq^bKDXpdkL2r}0`PZ_y0ebZ-$JYixyLET-M<2`udWVRN@xlCu`(pX;;+9Im z(~kHK_E7QYZ%$2>&g0PKHE zVIJcBY$JR>;CzfL7mTo{gn5Y1HpWo%ND0;dL_WsuFk|#PW*&lg1jo0x^XXZGcm?MK zW4OJ5d5F#5jiKvTH6MeXmxqrrfkP9Rhse8Y0?nRY71tjv-#E|&^Ea4>Fl>i>!wA(M zg0^4vt1;--V;;hMwh6uuFb{EPf-!EtNcgkR{lfc~F>e37)Uy_vz)C;nA>uNzKIF+f zMEja1m}h@lT(2}<^?GIuEv7LKF>Mn1SIjsm{UH2m7(?H8$E7A-Atd%#K0Uk8^Y7e2 zMmUF6DD@#7BfLJChgiAG2>A?^hoI+c^3RxL&OF4JPR0Pse#u-`@HA?W!z=!BKX%b<{tC-X8DA%tNFEIKks~8^!)mzx4iEZpeqM7xiDd$71aj>pv|lpbnw8wlhridYp8ytztRKw|7_Yn!8=?C^`HzdTwmoQf-7p!|8JFC-fETxDy_(n zd_-x07K*Hyhd3My*w4T`MA~izdBo+ozlNfpyl-)9C{0@?_J`)|>o~T7rWI2q?@(!^ zCyuwwL!@W5#rz`XA9#e(HqpSIk3% z`+GsP_RK?6-->?X`OHHsHtdT1IWbiK#Trkc#&2Xd7_>>{A?SDp9qA4StkwJs($qhT z&!}>J;vG`!a(+gTZZGtIVjg19^j@(0EAtR38NFf6d*&fNSMH1cL38l>R{bGPNB4yn z?lbZDtNsw@TlB*W>1o36fa>K`U&1*VI-Y`m=-tW}Hl$4yd;o_g$ zh5aDJL#X}pbo}aF2oUEt&c|pA%60?e%LB#tr{n*4Ir??<@%_sa=xNfyBhELfN1w0ngMM_~#B$pI;j4P$c-=+nkz0BpS0{J~k*{#hw>NnCsXPSL zu=btk35Sn)((f&5gqW=g;|o+C0*|-Hln%X-f7H_TC6<33(-WG`Q2iljpC~`2nR^TI z_q2Z8*KV-6uFK#3MSfzuH~RlM(Df(kW7{To!uws*zdF=|>YH(1P3ZejebvJ<4E^#0 ztm*UUeD&C!=?SIpEb(|)lE0!RuqnVMcXPSi_^mto-J1Np9xcWAFh8<^xSr^El=E@J zdU9RbKMft{FFLpyNUQ9r%C$_D}PuniXW_s{8@|y(ZwfHTsFF`~hi?Bew9ly_#1+ z`u==7sPXg7A^I%({Z0Bbg=)7Om@D$i<>mU7R=B}1Q}&BkH^Ck39N90T zg4P43x&4n{L^Unu-?3jr+XsNWGy6p>*wY%%w?*Rn(Eeo2_oTcNsaJJxhu?wyA~MW6 zATPsy5!&}1;i$pagLHi8@6+=;WB=d`f7DC+@9!)A?uYN+|4AKtv_JMYE|mKH z?12z+EK}+$Fc|9xyQJQ$>klttBav*%ldnfg2=V8#{d>Q!n`4ip- z;rUuc>Z|KUV82EksnJUbJwVN+ZfiUS{lVEUqVlD&Sbu6RmtT&=_o2!l^^aB)F`vDo z)Qw(G!t2dP>Mbk(L%*+qQn$Z85&K7X;GAt`?d7gzl$_O*(I4U&F*5ia3N>$gOo3iS zucS`@HWhMKzn8kjwyBuU`UPmNm&Ul8lgBIVhlR-c|Hs;6m8a`j@7^~`>GqoSME?<( zU(P(l$?`$U;s03I+YzYj$z|>D7obFaWWBPApW@=eJjCUL1C@OfS@$2`U#Y*D^<0a7 z%G_tHTi@udBv~;3&?~X0vSc7@zb-wLm}J)e<+~}qr&+H%-bK;TVg4aCqO+3PoV88o zj!N^9thX4nR~DqP4!i8BJi)yCf4qdXQ)}hjwFv1C;qg*>{96rG2xeV;liXDc)RaIK)3lJ3I#!WesHMF-{~9(8V_ z3>nMX%hpDzoyfXdWh*5sm$la$OQrKQ*4ir#m5*OpUpQo@B-Cf#Vf$JWrI|Zxr^QCf z!G5eagw$7NPGx=gzq(5GB-Yl$Yb%>Jvu--j5c5q~n;O+Xo*`QD3HxhRQ}nO1UQ^9L zIr)aQqd{eb`v3p&3_Gh-RK^*zF0NW$8SccI{2IEoXWgfsp3>cy^_$;1ifbF@AM6Z& zL+_rfN7#SIyeZa;I)8@TNvvNFcn{vF|M3thA+O=UJk~KApF_J?)}9xhpkGo9&KIB5 zQvY0TnTPNoiFJ1C63oL;*C&67Hgj*`^C;^Jhpu71GwWAPiZL%QM*2Zim|O(Qf?4Yx zM!$IUQ=oVAQ_}#>j5vk$kr?R*;dAI1j2ObYaQYE^zhoZ5?nfTZS2N#mcJKkH=)(Hv z@jW=-#QL;zF4pT zjroU}NjWgF0`m{c46to@5zn9{&JNkAisx{xsfpYChI`2 zFo-$H8ne&fJ@O3y{2sjg=E9WJaI8=2ih4xjSuFiGeS=W)EJ{h|4%I+4Awzkzk1 zu07zLE%Oc)`gmb~80)bO@qN97d4_u6iGI7RvjR1Ezhiyiy*v7EGvA=KZ%%oYl7G<7 zbAW9v|A%iVw1rFcSW`9@-T(ga4wP@&@Eq&7>ZUM0J4E<@&>YpAG_9pn`uq#KQR(pnB^;l82aF_#AoT-jatXT=oX)W-!0t z`SK<9f3e=``5YRSVO?p(Q>-^IztHE$Bk&Ah-8A3djhzhtj*decrUEoqVf&2y#Wrpp?yczQy=d{|GLhShe%w$9p497zv#Oa?Cy4w z%R}pK2ItAF_ut%r;|uG1nd{)kl8$oy)nnE`qBU#RHaVE5q4EthpKDz!3rZR=?=bRN z2KcUHzTw&76|lKE>pkhq(La;9kU}EjtHVV!j0} zr}^IU=Vyw13+m;kduWe^(~-Z{2p)p^(W;!Aisz_@$j_i><|7VMv45$R;0vgS?Dh63 z(7a14!7~saLHTwkcd5Jsc~~rsoq>MB?t*V1J$A+{NRMeL`H40`b1*Mmo+W~YMMi~LbJJt z6PpXZfppI+VL1M~2)=>pjg+r$*p7AOT@mP)=`8pLnsa`Z6A5qYux^|bCGsxlSkQd) z(D~7r&*>=m2GUf&AJtRU#Bap=#$x}0$~%xg+ddBc^HfcI#%RZd;IUBU9Y|L+iU-}# zO$FaT*I>W030N;+z2;Q{c$}~ozXvT3+OP=wQB}VO`g`IRG^_0d4?)`F#3JmkRQU(` z{EFWe!HE^B--GBU&tHW3)=h+83Dt|Y{Z0UUm**@w1*AmfeaRWO$}4xJ(zc>(IO7wr?TI}`JXZ9PtLqU`Q0&?XJ{pO0jhT% zc#r+qCRWnlA?FCz7lWC9Ab*bv=8eVrIEMn{Z(}B4e z@!2qNsLMLUI1KL(D*r&dLwZ&y&IeiuUV?ZAgZL0AS;M?Tz`0;J?bc9y9`OyC)q|nN z26M?bgwI(3dt0l15X3iBpE@7r-%$M@s+6%qHgztf2O?PC20Jl{0k*cU+@Vu9{$Qm#{7wLVmbLw?6JY;<7VZ=-_!n8%T0oU8D(+2 zu*UbFZQ3TSlF-jaPb{bLeD}UYVL&E^N@2Tan^_ROoqA+M_P5A=D&BZrP+KZqNRV_>@17f}zP z{o8&&8vX7*OTJ;s>}aTa@T1g}k7VS{JOueW^tt<<=F^4W!+o1*_%P|6)K1%@;ePI0 z>HpAiax{c>WFBI3^JuttmH7wy``YVOKL{P21(;161=pIZJOpW7L-e00W&YuJP$XE~ zdq(vp!8?>VM`FL#Q>p)yjfA6bnSanRiGU6-9!cK8(K`aVOe22+m3Nq99RU`ZaV;?K zPURo+G8!lj>m0D3>?!sK#{uyfN9tO^h2hLYkl(W7C-#Fl(ZL+^RaCx({2<65VDD7s zA#@KL!z+U)`IK!%?{KvI`;|x14(a?TFwfXnd!B-538c4>4oDF?_7eJOueSY+A%T#K*5DFtjrB5WV}E z!prOf`E;+L`)AXJW{_>lJj9w;W>9_^`$MchXaWw+_elOhC(#uB)tHAMo@9S$F7i9$ zL_Wsl!wt}XX$RK(Fl!EZh}-*(Ft2U9)Wq8ixV}~JF!X*MnQw*t<*GjfJuiN4Z3iLl z%tO>LZHj*7n?!yFF{AA}I%D1s^ALg6Tf+9W%tKIrw_&w)IG%)xdY{Ec4=^oUBkHfj zJdj`aH6O~$Q27Y7h{FDC@`q6M(I!|w?VI(lpI>wAlon2w&lKCEdgK!efEi0OM17Mq zECGmUxe~`~)jwk4dDIv%tK(7JM7-K>~B3bThsEZCuU-%iqEHd>(^eG zm%f>Kh?w|xaNj0H@((7b&<`S;d58$}j(|)d-7iGHdA)(1U}q}x5Y!KQ?K|@jZH>D? z%rxd9a-zJ!?lbcciC4N}JuXK2Mf6g-qdyn(5R~^&Es%ML>9u>pnOn?5m`v`4^;YH~ zO2+nrwDTc!KfxMNp{BTPZ+O!(n7*&b%UB)S2R&HlOYL;IFU~hH50TTWAKWTr9-^q7 zFU&v8JVe`LzL=NwpSZu%@k>&CF&}XfUSCvS4b_}q?Tbt=@d~Ox#52SGQ0PBK@(>L* z1K`!Lk#v6$_1J)I10ip8kkoC82UGo1@(&}Q`2)^@iRDxeAMiF1{kr|Ao-gtW77h-C zUxtJ5dUz$yKf~deUy(ipuU{i=R{Iu^bD}%u0gV33Yv^h3nsrBi(Bb&|+T;6+k+!a# z7r6ZzBDP0-5BVY73ilJ|3)ZkSdNaCUUf)2W>72_h^+rElUvd7B-q5xin2lr}!eL!^ z^d;&^+w-7$>(W0xFmLK#UWT4#q|y^Q_3##dPwTu}&=Z28vpApe_<7Lp*QI|4!4r^v z_PHnASlm`@k7{bfKR9H!rsblZOnwu1O%abE{2AWW@PX9t?&A8Rzi;N=4S82Lq4D?f z$k2Gh$yAkxpl!^m-yW8&bQFJ2`$N1>(v+rR`?P-Vo*kh{E8-!j{$1$dU!^@PoNq1m zhyL%#s5YS8EAldg|A67}R_GUECU_F!5%3-iqa9Tqg8qKCQ*-2(>x=81^urC#*bh>N z_y?+&q9437=Ec>*-#eCSoEqY>mi{3g;;{!E@13)q!PVA4@GRs{v!r1&tlw4myFYp! zl&7)tTsd)kX^h!Y(;jx!))V(b+UDxcws6fs2X!%>KOX%q*uwkSKLp=Ezt_>-jbT>( zPw2;BB+k!3uSVcn313`~=Q#YpgcZ#XQtgf^VSj`$1C= z&iNJ!-hw{gs(yWZ{w5xxo#1aqRI3G%g@*)hLEndX2#4&wl8^8?R2%d9b_hO#mOt>V z3l2V;B`-18q8j`zUMKd4zJEafis+A)L;Qd^pAOEf1aFKo#P_GqEUHum{S23h{Uwc) zpXj%>SbTrdtA|&^_p5lZf27MbuYvtP(NdQ!YlwNSp;DJAu7y0y9I3;X)xr6WN%Z;R z{3gGMb@fI_9pc^qpHI}h3fjJT734w3sCgBnO>diEzI6w={=D^O*njUKweg&WFr~bc z)JEQx@UDZE)a3VdGSx`xdM~Zu@Pq17mr1jM&inPn{?hT%9o+=xnS4D&pG~@aV|#p_ ze<(EmpGN-^-cPO0OI_}m1Gv7~E45yV6QHM})Gez!Lx*MONF!_5AI8jeLLPzgJ1mL6 z0fz`@sE|-cd_JCot%}<=2mDQ>{#>~QKA*8)#O|x;AK}7&5p{Ch!KKFy@p<(3TG1KvXJ;Iw<45~5CZG%aI=KG8Ki%E3EA;Hlei6=3x&gi`O8(*d@*c3e zDf>mhpq`i)XrTS~_Ydp$#`!Szi>Pw04=i2hCzo%J>4*NA>=&`8eShej#eNZ{zXzb7 z+D5s4qkV&rZ_byxXow#?-g{Z<)VcxK|L|1mKNp5TO!5z@$Ne`H^OM*w;@@J)L(^s zAoRa88p11Fm;A!;(6NwRdRyu#w&UT_@%vJ@Jv{*eGoMIZbIc^%pBGYBF`ERDS#Kr( z;C*x=96a+0_qP!FS3^yz&oHIOiC|gZuT?HkIa!7Ihp7Gj=-0s7d(vRVX)$Ym+kr}> ztE_80@>Sl}Vg4a7v#+wLFKfMk-b&LH*2~R%Dl0FsZt}3ZQjGPlf4sr=wU{^2nYF|C zE=pDG5B|42r$uMw*Fn}bbUP|1KC+&AuAP!%$2>&Qa!74*x$=~a{dQ6k{vDm zAwIu;1D|tQ@3njhzQiP`*TB0TYkRJ0078J9ddG;REf55tZ%{#E?HESH};q{AX z$wQ3Jxq|+<>T=>AGQVDgtiS7%w(fQwR)68;FV>xg7k^l{c02)JF(2h0@8GofDEjNL zKJq;u^j@+)df*@!9F3Md#JsqD;`q?qA9^^$Ox@j(upwIdL(E9uf&SmoST9rkA!y#l zcp2+G=^J6<|LAR#*TL_((UNz_`I&m~pMZXn%s-5@7z-!SkAb`%s6L@LV+?u(g-O4M`+-5AB(gpm7zo8d z%r_Jc7z7`?vu-uGFW$>oFE{Fi8H&s|jCSk_x4wl+{$aXTN6g=3ecHJlnD0{g1Dbz2 zUdI#WM>5Y)sfz~lELfk8ZUOy$SdT1nME_paDIw_RRf&0rSJ!P|#H$d=Kj?OCgzuLj z)Nd&6xinw)W)o}bw^fX4kjO)7@;%X1Y`Ts~|&GKSp_tg{7ui-$+L+Ceo zi2aJaBoDEp#xwLUV}2oK+GFV7ob{@E4`9#}<`q_Vy9d>lvhI|B2mK3K+qvFCzj5Xj z(zaiRPnoO-I9!EiU0L_raT)vJm|tk?ei15Vu{JF{4}o5+pY}WpDestHc=O~G&JVFp znR^0SXjq?afPM~`UqN$S#6zsue+0&au=e*WfCrYWtLx`M#X^;5p!NUkH~_9gS>GPI z5Bnck_piGL-mOsi23o&XQ7-laus#&G1O4Y!zJZqS_Sy#T+o+oAZQ5#EFu%H!*gw)c zu5E<7lUUcuSr6qau%`T+<||abLGTqFSA)ihHRaKp7Iu)^`}%Vg`cYNPvcVI(Qwuir!Rp6@7v1d)?*gq{2=oVuLmT-wL8o^ z=zA~1yc*W?TE!!O)kg9VYpmnY&r{X3Kkuu=;QVoG$ww4C#XN^Gs-~LB*A3widruMd zXUkjPw0|HJ=d%^zCqeV$Z(|lfcPxQXEsc1G6&+?_O-?KP2gtuEWbZd0b zjDv&K)6{byc!+PO;oWI(w?e=;)9?up+Q_bqY`7ZZ0&v6BvD30LQ<%i0?z%@O?1mO}dEZAF3Z#eiMRu z@Xp9z6^njuy_cbIN~3DgZ}bG~i>Z6JlYF47s9Ip zs^0_s-rujpK~OInQ6I+nL~T(e)FmqKK=c1N2Zi}6)`AzH?cKQ)gFJ?+>6~<|83VIc ztGol9zZITD!7>BZzq&?2(iY|&I?Rd0`NPI|emjbO+i6E5Ap2}1p^0~}tQ~>(*GAIM zp<(%O@Y}EYLC`aT#hNhW`z(=vX|CJLF4TMeg0pg*oz zL11-XAivFeGvd+z+YFztLZ~kSz8zYD9ua1E{`+Gcr&MdwaxMDPn&S2UOGEh=c9Cn~ z{0WtRpm(aRi&w+lGR#9%d7Oj4H}ep?tLMPFp3Fns?vRcB-zpD5JXOx>EX;SSFY4V? zZ=TR33;R*)34VdbgyNt~d_GnA2jU?%q^-hy&^q)!rzPF~Z3YDWWd7lseFk*(Vokh* z^JL~94(we4s}C7UKB7z~(I z;nSJgyOYvj#QSPe$CoYxuSV7I_dF<;f1S7t{r0QU^{%1o^Ypz`m^9gd#uKr;s#hx3 zPt`mO8c*8xU5fRv%HsT@cP8^UDVS$p3Hg8o;om%M>|)pxSW)n?bj6s!%}Z zGVvsh2PZ?z>J`LzM`O(MvWwxv#`1!fpyL_txfnA_$_w6yzE7KX$q=+bU+@cb{a+7G zhQ&Y13BG~+E|wdi|AS9CasJZvHgS6rGQwqrrt7)WxFop#Nl%==#6JYpPl6-fdgA(| z`-NUgBKl#M5uZo*Q~P&|Aggj2@%Plfe#3JSgiqHMpNDgj@HQ&}Vjk-VK7zi}_Bsi0 zp_`82Bk25~@uzg|A5s6H>p7u?>IZ@Me!)L@`7K07;HTsvhKI&s{_hW}Z;8AMrwVbH zuk~H>5O%Jy=$G;h>nD+7`4`_9oS*$F_y)SCz_Vz~uU7d7(mNJJL*blHl7AS{E*kUB zK8pG$jb|;UMPohdgXA3+*hND_4f7D>FXI#XPVx`s)IYbg=1?CnFjoct9I&Qy5_TA%zOJaknaf;7DkFCH0^_5s)9mJj8`=5!k=0@({!`wCNOq ze9LvQK54zS5dcLh4?%iZ>jLGFmJCU|H_Q@_^e{Dkk_jw>b~S3ii-S2{>48Y!tr`n^q+Ys`G>;A zopAhnB>W(DtZ-1?r?x@9T=jpr+|@z}DB}k4rcZ_c1Mv@?>Nui*^fSpnBy6xk|L5nz z52Dlk{g~}xh5f^-9|Y;nE6m~Eh-c#WC;ox_6}Gi}Ch9@-j%YpH1bW&t4-voB1lFy8 zEd3&A{U(XbLp(cdf_VwdL-;K)fidsyOCDlJ2NTTy;(UyntC4r;#5}~-3a02!#XJP@ z=4alztII;!Sa0fO&|1WzCS^XCC7995XPDVIG3~49rF{4^i;a6#5u4 z5Ak(1@)9SRhv?kQ4Ey7mhZug-6vk9768R2vzo2{Y`W)sV7IZR$vJIJss5-(FZd70% z!sd!8d`V&+!s>(xoSk(__&d-X%@r^KeQ)L===ix`WF8{xq6zk_Fb`qmV1gcg%tI`@ zZVdHaG7mxT_=gv%JOn+@c=?&&@nIffbUjndvtu5DzTcGc%tKhUFvIzE<{^gsGJ`Jv z;}7x7(G2q}_Tu=NEbgC1D@|ciOXeXqk1_=lz1_kOf}ZcbwlIN*3v^A-(PisE*qJL zIM}Z%`q{=w{(<~3lh-p3k@BuPdWuEM<$Ha7uz!|$i2ttj#Qts0&+u>58}sa$hq&FW zH}?O8()~v85YBpi@VSwBh*!aV(NlqW2)!NsK-YDy=$|Lvq@;l_tm`*R{5|deF{A#F z(`&lWwA{(l7xPD_(0EUNej2xUU#zE068C@lje0Kkg~gx8Oa5Wt;{N#lHAbvYzw!FJ z10Y^^l+GMRrlX!?`W&2A_Jj5iuzJJeOL(SW)?%-Lm7ab4b z_fUI%575!+AvD$04?pMuKYw_O&!?JK%j!LGe$k8g15tlo*RvOtICuPa{(B4!>;+kY z?Zo!+_HnhIDzI;#j#5@zN*d8${g9dbkqMh#I`k>$ENOo81kH_O1OWW71 ztkMl$#5SkvQA5l9Q@t^d!da|OHP`ozI)jscv%lLf^f+hQ3A*iTBEBzueod$L=znh| zwnxV^ri>O+I$4O{gMO36ciqsx&{XUX{od2VTmUnl#P5OQi>C2l7py1N726{Qg6h34 zF}20SuL=5@=!o-$_J8P78@&F%=MlR=%ai+A!-CRoo!;v<4NCPhBInN597~{YsGBDpPzP`o4o>D#Ovs%klfDekC{c4DcCp z3I2VyI3EkQSA`a366yO1-7T;>)`Mf|`wKmxNlnZniIDpJ8$-z5xIk*dy|pp#Yns%> zA$6f|#u%w*wyux)d;#Kk(>Bv87(xBAeWgB7WK8+HQqNg#3Ju1$mil*qIegvVDz&+- z1LL0!9q+z#n?b<2!$Q;XozdPA{f#zBt^3&t`?XSq#=p^o9dNB`E zQ#fs3V;5Nmx^Ha`FOC%*qI1<`z%cL&Zw~&mRbGS6QN6Y;kjYkg4bmO;T4Elk%4?8r za@?Kx1hIY62GJgXH7lumcGkkwb2(D))m6}6iTxse9c~RR^QOt=Z9+Ver|K$oM{PT- zCpD7#<@fg35Aa#?54qbq;_@7+_mAm}{eF$4F0kr?<3ZA1I)1c&Rwc-zl{CbAo2nNs z?S|t|mekY_I%xU_sZI2H0?ztq|E*7cJTV*DFCuYBpa165W7coP#R8SouO%`IBjP=-_TPr ze!+U{3q^Tg$^66BV_Ie7K-Ql!J(N~StamJMSI(bcT`#~*@%YKQ(9=~(bzuIXz{*8= z{6GA}&MHnymH+XdSn;u$;&znRzjnu7>G_`Z9ls`u)z5IrFX(&QDCV}zKTOqFDHZy# zj%(UTxj&!v^M)46CG01s+5^4wr`9z`euQ;ORa2$^ch*i7jFqMhnTL3FxxQlR!u-RG zi*=PJ{aAl5s;#V?&3eiuLuCN=zvI}4+0h0NceRG{HlKC+?P|)dd#ryxG*CwAFyGMg zRb{1x8S75pDk|6$D!1oazJikbKYYdHI{HdH*0cY8UN@Vviti%UwaS%I=3`#SKmMVl zfsQhK73(%ZKe1nq_0H6<(C-54T16jW>SNYJE5Aejl=ZtVudx4|`3IAPQux!5_149Y zp;2Y#9rl&nhY(}dx{h~|cVc~R>P>m;=9sxBw~p?^Uk`a828?sOP71h5{m<`9${#rjpp{m7>=?@;^rZYb%_x?1{9 z_>OrInZoGw-mc@@DkwWWD9UdVD@+-r+*GHPEFD>t;{0aJ*xEdqD>D zE6dtoQab#27A1LzmbI6`m8Y!x%~%Q}F`oj*C!n4iSKAc0^AB4q_+kDv^A4+O`$B)rJEG60>z(o#YrP7U z{tw>0yF>fytSK)tcn9+g&j)sZZt1KkzsoP2^}>s-Fz=A{r(13~XU+UW*$1xB3Hdql z&VIZ0IQj)TLJr;^{%NOWO~Cg7>(7BU$U8FM5O&!D>)WiUpQm&#^9{2~>OpA$>&y{` z;Mtb-y{6USV*}pV|{WO=GBiXx0T~?_$3WYscVQkadyyg}Y^LU|u%s*-=;FmJ93M z)r&Eoh4}@?l^1b-lXa@Y1$-W3z3S*$*jvi{!jnO#vHr<=^p6v;P0M;=`Z36T%>2S@ z&!bqs`XBwG08Trzwol7LKS1UeDs?%Cd3UU>boXOEE^EgFdti4S^9;5#cVT`D>*^jm z(Q}>ohNXYD!QrKSG0S(r-a*+?Vh3U6~FfYPGJYV8( z0vTljV2HDa7~jaRZ$nxD`lqxK^*ihb!`_8JFly3Dj9&xLZ^!7sFwCoQ7yd3)n>ypY zVmK65a2Mk{-A|1xjDo`HErov&`7!z1j=}j(w*smKlmCCF*Er1kbQ9wNdBi*%gZ?;$ zEvViGR1c>9PgC@Fps||x_m|oKL1w0_;N@ul-{wyR%j&LFAB3ZyY%nW#I?S2Zyx?(> z1?KBmgYny$aOI_o;OS@^5A^52jR7tNG*3YN{G;p5!@LRS0-ATHdUvNf3&6n5S&Wag z%|j-^@GQqk+)rqmPK`rgSxqOwdyzjtU%ODer#lv4tpsSBvz@~5{lh_w_f)T59 zIS%4}N}ti#BSPd`(7P&)!GpAs*aO>4@P{-u7Kth=pGZ_Iu84d?5G|IbPp%L`A&sR3W!~y&ot4- zqyKIb%u6xAdB56FyHx^2t*{mTP~@TX&K5nLD%lF&gg$TJvPJm*Z1b0AX$2QLCxFFR z8?474(bDf7HFO~aEwmBWCow3y!{V_2(gyj9PFi~Aq33}s6>UU4m6p$&5(8bstc9lK zc3opYr>8ZYAHvU@`l{jXJj2>QK8xrQPC$-Kh|>rnJ3XFbz06pE^;c^P!h zmNgE68WUAN2-0f@1;fklDi1;DYv1Ap*zeBTWYc{3QGne5QXGYgM5dYM(-5NXx&2T(; zrJ?a=^LWhn>0v7T42VzKe<%lD`TUx*khhqZRR1okFLToTIC_g-@wRV6)3ILJPhJthIwQ_!9eCA zbP`vhKSgcvdBi^%+*<+V3RM1q_yT*o74W`FEwP;RjQQ#C)74OD;&r;#PKPl;%s+e^ zj)qZNn15J&Fb$tCRQ`e1A72;qE!2ikAJS<9oi2| zg$p+gkPj#nJOpNkVn1gU$wLtTP^%pC5Yc{1aK5sV;0LI_et6wtXi!j*woh{&IMyYj zAFQfRp+DT{uE|($s(|b7rTGicy_*Eqhsuk58}hhQ9wxyY`|^Tkqk8@suVnP&)kprx z8+qvhZF`4g*iutp@H{jJ;#n~nT*j3Xej{{!ohwa3e~_}sbM!{P^ZVM1TasWx6IBy) z-Qj!^_W$aM`wLy)EA}U0eXET4Ji1@_e8D^n_cG#ort^E-lSSx9t}8yD#<$O}6F}cU zS6q)czX7QZ_>3Q^Bd@G3fB`yWwXqx18LMLaye@SEnd1^-cQ{6gf_eu;iO;z7zj zjl+IQm4_gn=R+CH!?0x@!oD~L`-8s=eu0)Z@QK0xxNnkwIC3W%JzBmD#fG1xw!0gJ`5PakCVvR8^2|dtzefD@d%-^t&p>$?M;ufhg0yx>H1s&3`azI( zY!VHv1~U&aXI>Qgp}Z3H?_1yIL27m+ysZ0@>P7hbEdcU&@ow-!@(r`2(9Z$$6^JE4 zKO)ShiGX#jn1^T(8-WbsQ<|?A{KN3!$S3$R4?+G6xsO#p2;vvW58~7$<{>^;M*iU^ z^ACO>!_jY5^@E`GJ1mX>{p%%EZxX!2tKbOAx0afCh>cHg3yu67vY5m-sG9f%@^dII zR(S~0wEtTNFb_d_QxQfg4?+Hb4YHBn9D9w<2k;D74IOreLiMfJB>ylzI~b;1x`y?N zAUM(G3oIWn4gKA2(eFk4m(r%{Xyg~}N&caGX#h-%ejxb=QP1kgJcRADzF1Fxkl%3I z4m^I%lz{%7;o*r#!ta6jiM}E2!Ski6%h*{f*SrD!4xZ$HpSJ<3`_@+~Om+lcO@$KVEr7o%65UlE#;{KIt+r@5z9ve)MZ!MMlL)~{K_+0W- z>KU(1kSBT~`3DoNDcA=w4?+F^4Ie+0%gIk5?fe7j7ts;@7i@Pj53&4-2{-$z`}SQ~(7 zKjtB5`4wOuqGXL3)>khJzJbQGJ%MJhIh%P1@;_K>!92v!bTe4<>Vo7Uy3I1fo=4^( z-WZv|QulLIZ=-s<_WMrUzrAOqE|Xz~&nwJByfQF_uMPZvEPw-2;v7`MlcUSc^C2e%tM4cHN}2% z<{?_=n1O9M<{>i5nEyW>!sCQF`U|i>1o0333-(Gsh)Wa9Ko6LQz-)88|L&Ij1AX7I zDa=DqK1$zr%tPE8VGKt`Z5R9u@e`Y3jbPnz<{_|O3;R{Kh% z;n4ABm^Z~d#I1a1p9FrP`uJ`Eh$p%o6oWs?Wx3YXfgEFGHPQPu7qhf6b^2(Z5dh>x)}F(VvQW2+F%?c`N;I zJvUqPag8U=?=KhiSb7F%yQnR!sgx$_tyBZt1_&zgQ|hkCtOUAgoMH z5%pHmqo#Dk`8m$d__3uE<`XdwF-+eJ`7_SXc+;l~em?UMOLlm}w=XIWLC+w*#@(>K z%{;`2A>HBQJ?0^DH}-%I{>(!xGw2CpikXL?`gl+;m4~1jZkgiVkZ^)|h_x1dz^jeQ zLlB?gbEprD*%K^&Z_-m5^+W!L^D~Tseer%h7srcYkzeA{qd&~KGK+o>4ef8(_5PS& zJ6+^O(DC^1qc05TIF;@ff`_2LzZW)HX!^~1{Pcw((Gw&O;aGD3G)x{VmtP$}5E7R& z4`DugFfwMt|M@p)hNk;tzwJ=5KGo-ah7W~&yFjsj#H`Ysrp4F*{JlbP|In|&G!W~9 zgC!5~#>gLYQOVCCS=9e0T=vJjQ|2KS-v~hdT;&&N8#NvUU{6Lb8ZSk@%kv9FV$Cn*6W3SnC^5uJm@?4h4+R_KUzrsX!#}|sJW_zSf8%1Carqn z@86t0UtE8~ERoM}b^3SydqiyN2Kx`$i|dDuzgKE!m{-qM><=BUeG5B)(Ml_^eR?OE zeaHj-Va$bJ18x8A#uo6+$y96)*Kd`1wK?`EHxTPn4ZWU~3rx6NS6r|3eI^`mgvMuU ziTxqH|BEAZ98gne`cBx(kMHx<==h7@Bl%%7xbUU2_`bBfWu_zgXQ}=WbUsuc?1+8| z<;3wPz9GBR9$qZc!|fG{^V!?Y7UvvvX@3Nd@bY_OzzlBW1t{;Pxkj_v68)$@2|j?% z=l%ta&@cM6;1B3GDZi`{{P*#h-~(v=PhpM8gPQ8$f_Jzvy)oV&DKCTkI`lM@r}29F z^*p*>@cU_Bzc7cAUl(b)xPB%!HUdlMv#5zDDD)t|CxhO{|JK(FJ)$p}Vm?cO(DZw| z+cZS~+x@6RMSXo`8%s!hzw<9IQ0VbrGxVdVyhW@}>v%k}!v3ChQn$&lfyYH64@2-I zkGk2SKi!Hv;_K-cEU{{g^KUEihZ;|EEdSgirhmkf~F_m~mp5p@^emp)$;WrFkJ?W88&vZ1Dx)P)rq z;{2|I)D=!yU`?Wt)ZWpJV3TnJsTXy&0*gu2q;@TDgMLb7rLKS477}`WlsrUUq#gQe zlt?|aeN%`pJtcJoJqP50bEV!~;0U{pW=Nen-WmEq>>>It^!q=o-y9~+87DMdFQvt< zP%gHu)G2e_uz#t6(D*l+d;8pQK5f3>C8(#O{(o+8@59kUbneo8-$9F($X{F+>*M*- z%JP;w^7coiwq4?Z{Z?C~e%D2d^B2pcCO%@jOSsgYJ6hxX;1H?l{)~*2)GkKt(BHMH z)ZdHRL#w1S2kHCK=Z6J%#CPcbq`qL^8S|kt4*Xl*|Be^-kgO477p>ne)*B|*nI`!M z^1~_L_^j0RpLWN5&#Kyge?KhA2ati5dYiTv^bPWtdeD>J=m*Ds5piLCv7e3oBBmz$ zLhYV;w7!P=%MK>?$NaQMB0GwDnOv**L#6#DI5)Rcn>zjy_7?Pqx8E{>o@LQL7tUNA z08nlldI;^OdbIXH(IEI;br<%+>=in^u^;+P?iU)z4{f}uKlTsgOFqGDe*lipg;Lk( z6$ri8pOSi5De@8t=cV2=KM4JeE=xVya0K?lv0udeoRRpveMc_O?=%wnk9r{ahh7$= z;D_=Q=b~ncJPh~Tk>D`uCD7PL=iemlXzWjVC$&wx9?JEV3ur!v{ts%@@1|UO$lB{o z7v+F8^ADGfcUDG^X8mndN2S6h))VKnSAt)%zT3a8Qf$ZkLtFPYitcFEU+XK1=~~t~ zKQ&72hpgY+Z>9V+Vg4cJWJ}CrU~Rm;1=i15_f2cAd^y4TT7(|=j4xmvcECvKfPVP@*6*5EU%{R+sSS?SRc>fmA3IfBNeN<2 zJj19s)(!5|Q0nbqow&D}VuAh?I5vs;gVhNG<>nLCm9AA*mQ-ZkA-=StVsFQ~;_vdx zyDqFR8|o|j$FSDgm&MFW)|geKv|GozTcD0o{}}5Re}3ZgH0znIzv1%`>$uvV!16<+ z!m0%U zVAja$!|20NqF<8gGs9~gK>sRrIn76pN!x>daICjB&c%Em)}eQ{!OX2u(hnkM;%4-l zWQ{B(_Uy5C`L+fC`GbEv#Dy=}*uNGf{U4}*&TIi|>*46fK0Zp+A1DjSv1S_HUs+op zSpqjFv(`DD4Dr6qJ2aZV2*)$lnlJIl4>JEy^H3ZNy%;I|AWFW*Ab%Sv`G>UaQRv6c z{Dbj!?BA)&{DaAWFu40z3xg1n5u3(CrErx$pnm4>^G3t;5zI3b%^QY!*sLw0{osrj>z%2-Fw=uI@$^j_GXGGt zw+Br46e|56CJpETW07C@$2$=JUvm{}+oF!>cgDO!R1Ht4Jd|~DRRt3%m}hwH?~eYy ztRL@n!TuW7p?4gi;d7NYp!x43*-atiWQeGb(KXS3ye-b}Gv6?*)DrXUSyMkr{8ZMB zeT~tdfO!YoXLZnDo^_Yxns|*c->}XV8LqFv(*I$;VI|D34VHNqCof@53h!4`o1}h| zLvdyB^I7|4eb@Gw$oi1$Tb$!&-SN~5t(PtH55{xuYhPDjo!qZH9NaRu0Bd{7CgWKO zy?@p0_FqBn$!W@fVP_Qb_o!<(8tV;FN@&4NWqZt82wLrr{j6h@aZe8@zQ%cw65?B+ zqtjY>`eT_=Z{T&fxTOcx7m&BOh~B_AKyM)P46dnH;afG<-E4~C<5A`p`X0OpQ>U@^ z?tKCIC)SQ{&jR+O$$Ea-MW@l9g!MG%lgP-hw!V1`j^Af~;duB_^v7r2+x0N)a$|k* zSsv`V$NYk3)j=FTSw9)HALsK~mo(Umd?@n_K_$DO`YhJ5Yj(mq6V@4%wqwnid4~6G zw&MIK>&1qfAxM{X;foEhXchAf$;a2hSYWN2vj)1}>L`!L=7=2Z4`o zc50l2Fsz2MbV?DcD3^E99PWmdKKwuYZhR>hN`I^S*8D6^rr){oN6rf+RjAY z4+I}U^V_EPr$BY&AIM*v>Y?PvP{&b=d_%D4mrt}F1y3hvkS|-NrF#8=Y5_1T$piQ2 zvG51)XEg}i+k1%mc;c%$ICnc3-;Y%uVw3RzSW?j+=Co@i>hGj?IS;|Sc6Y%8ke|er zfkUCOrMuwQ=>GL7EC}D1T8i<}qog}}#f^X-x-IGY#d+v%@cH5>u$t&5cmS;VLCX(g zFh8?}7~e5_4LxSYBe&N=@BpC&UdTpFguVw|#dt@2;Srz7n4jb-_NUgCj&OY36s+Ml z7d!y*a(0o^Ai8{W!2_JhY>(&W4D>s45j+6Cvq0ZHv*77NXK_EIp47Q#=HUB`Gxfg% z)ueMu=HdD8ggi+_pfO^}j0MPJItl*_%BLL=9E|fJj^cSXXQCFpcS4YlcPyY@YI>ji z5Rd%cGzZKtDJSv`P9=vyjYrK2$SdE~uNBU%hC`}PGr=bkQ`jgy0?y<$6~~|Msp~T$ z(NCkP;8Wo-_Ehhtd{$%?W8lqXJHf9ILq^{i9U=ftZl#x5DA&sK(;+ zsJ{EGYdG=@jRjwjhP=pvxnZzoxynP(`A&H#*&eE21o03)!$YCzOO<~hUS`ga5UARn zwf0Id&PS?#5X3JGGRNncbPKV4st@mMv;g+~Y$)}I{_~*MAl8SC=R)Eub5TF0?N`vw z#^cW#v$SB)Wb*>LHi%Ji?3e)arkEE{EtQVX@!Kg_uQD&_bbl7mGo;S(Y~-=b#Pcs{ z8b2$ino1sG)`o1r8k^K_?q?yNY9jfFp!!+pCu%G-)uYX_(9fYU^AI!7u7au~8VLS? zey>gLt6<#(<{_RWX29<~^@KkJ_4~V4$w0q|y21~D_UBCcO6(6%^DyY0{`u1tVEA73 ze<1&siY_bAKZSXScCqQ$&&m8lvj@wuzNGRGw7x;~au~Q<^@AWj;@!tItRK|C=a1!r zXE@zG4c02GqgE`#`a1Iu=k%AslP#(r1ThNzBT^ygk;*?1FHya8Ddve*75)&^1G{46 zQv3}J=zT;(ehe{>mw^4;Dl|Td&zs+M2@Kp`SsY(lzv9{yeBP=g{1J#Z^_;O7ddF21 z`4=>PXO2jQ;fE@S@t1fb-_z(9R8!Toe9n+0(3wyke-G6Uq3^*&Sann%ua68Z`PC>> z5}}`!zVMTw`c>-qB=kEihvQ+g@YCu1F$wEaWknti@e%oH$uQohtl%rCp4T-q8T)_r zkO#}u(*FI_S&VrBdh~s9&ZbbiY}jI`npsASXXF=gVnq^OBf27=h{lMrn-{@FMOS71 za;hH$-4A;%kHRtejpQBj4oAX-VXr0cKz=|q$Gnn!!>TptPow)%>WR}MAZf{SsdaNA zkgX%)D z-rDF-G~|KQ ze0uk*+Vnl>JIsQ;mbd@%2X&O_=i_ib_Fg{D(c>IkVmyge0T6$hAcL)6%uHBXV!~OPV$m=iUst&wI>6EWTlm{`bs7IGs0x${kc5LNFmd=J4~l%0rMoP|Y0PEnpr3=j&im zw~La0(DydS`DW%J679`FcQo@5MMY*%#f*6f&2V$@S;aiW|1oveVO4Zp6i2bKJ1K*Z z5CjqKy?anpEJP7O5kc(kLPbDIY;3W`?ygq>yIZllySu)%&*(YdAMf+L%el;*J9DPa z{_VA@&9(v$egflpg5by4AL7GW-5-MMll{9`(p~3cf`4Fr(9x3e-a3Nusq+ud&sx&^ z2*pEiKE>_eLtM`jd2u(!SD_QXbRL5F3O?RDV-*jDL=?P2CLx&!!+!-|JEUDXQyOFN|>1oJeHZFg|}5PpACOizL; z!*6XH*C&NuQ4D@0=39m4->8LF!tdKG{UG4|O{4a06!m5Pjhz26-Ba-pZ9Z3_B5T)) z{1(0^rAInbpR?<@o@jz!x5+!UHh2WZLpX-krBx3U4{^7&S>73?eWGDHo7{T$lAP&~xg!}X|DZ{ZIimNWmbp~wR8`;l$_1>A{`&j4t(U^ubn!)u{?pHT{9ngf}$t3En%on^^)s(uqrAa;f zYcud)iifxp7(ktzC-e16)El|p9KKHHA^6`4m1s%p%c=Yfu79_lrFe*Li-Tx+>2cC8 zA~k<7@{SY_F@6~QzyBy6qVI_|oNvnaE8(B8?N|t&f0aMPj+{_RA08+9h^_g*|?fv$p9r9yG@ct0>+p^2r(YPy$hv>ViEtM^$=V$OSdOV~Z{No3R z@y7c4x-fF8*;i`o!r{1n_L912_Xx`H?JoTw>f3apt8cr=?`Iz3cDv4E|MB+qJkp7L zOGROObRNQ^StqjY%=s46MSYv|-2)Bb;&^e*&%QxN__wzcnt6e6>nPgrHbfk6u9v?Z z-;wU#2QBgUHs)5BI}UVt*HP4#M+% zJyEac?K@`|gnKmM^B!E|Gp>0T1P0e2G@m1!mr`e#o{zy}xa{X(@XcPleWHH)<7qIx zuI?#5&-*OVu?={O+Sp#^Ar2XM{8aqz`fvM;y@>%`7_*~-Lt@aGtV^!A9^~QWg74Y3wibPAnoImW@6U2O-6(GC4^cno{pWkTCXF8RHIuJ(>~U9p zs4e^yKMUT0*WclHRq&Z_g}(wHgZWFV;u+>S{2WT*cpNh9C|(Ww>mk-Bt`CNeYpbDO z^EUD_g2i|YpJGd6Jg*4eg2!mMwGE!{&r3guMw=^BwB;$Tr!&7}cnW{0!zP`FU|oEu z6?IBv9wNbqb$WFhdVNOl5W=4#=BX_O6yGkE^FA@#P>srW+$cYvJ)#C}U$I(fJ|5PM z?7=H#f3B$Db_|#B$yTtBzRE z&TZ-9_w)B3s$T^D{xc;Xk$$EqJ$gTdKQFHDi&Kl!)3M{FX1|D$6_Uj9;J?qgUkdYS zu~Oe$PzHIbL!@5Tx*XmYdP=>fXa&q+L`c2qcttWf1xsCSEb^s#H<6lo#;N-V->>^O z^muAT&+~XleRi=8@}?Z5uG6k6wac)S`gc)eX8tNAb)FM72pJ<%pNh4o`$K<8p25AY zBgOkYm3r>mn$)4}MX7myf5(S?QagmZ(uupPqz)>Eo}-J?rLJ(;9rFV*Qr92hLGV0~ zx_8Yw@c4F=`q~*U_;cmj$NQGY`>Oul6xx3CUeOM1l>Aqz%sdxF-r?mxb zr8a-*hxg_8VtaV~8)r16X2!)*|Iqx=k6cCS0*@P0r_84uKY zF<-Gw!S>tK1vUdcmmWkB7HLOIp5op5Pf=Z!M$xBZATMau?Z+Jxwh- zodf%a{?-k4f*1IG=_{p-Z-spMxv2SM^8A{qe2vz0q~$`XaWA1R&oTu6faiTv|EnSB z=UXNDhq}&f;s3osXpBKqk&0p9=eJ7!;cAig6uWGfOP~yDXI4^bQk)6PkVWRuDY3{KsWaL((#n=n{KIQg1Na9hom#Cv_yDCV74g+_ z-B$Y7XOq^^O7Ral_YGQlq|$%RdTR$4Ds7eJrQNuxbe&C}+HUxb|KkrDWYpG@+bF$s zwwvZMRq2+KT(#@Rm0pnK49`HtJKT${i97|Rhm3O2Y79_1bcCJO75Vc2z7IT{w)&dV zYe!T?UWnoyhK#b&E|bz8aaP)s{z^AUuA)6%r1Xc$m9#@=lzu;_g0}nr{3puzl+#-0 zRlGy)#$_}+H>I`EQrh$ON>}VzLR*le^y|^Zv>qFjEUxJqQ1;baLItw4k%%Ax6xxa@orZd-((@iqqLB}kj@~#Pe*H@OoI*eGsT7{yHgUb8 z^X?>CG(APsQ>>DDQ$>$N%IB~62V@n{1vAAzEN>AqNs=A9z;V5_aKK2dOif#vrcd9MmIYv{-Jo)F7(McQPjV< zo-;f%5jAt0}9o;u&^Vcx}2=Q|ZPxADBXlDxG`L9e5hYNxz2%$(Kz7k1KsA@HFOR z;&^_Y`5M#KHz!OB;^MNo_Q?6zuRgst9p5xs@(}DdnOJ0CHhS5$)OwpV_cn2OU+jr` zT6e8e@m(7CzaEQ-4sS=#bvyJ^7S}MIwI^o#>Bi0AY}5+i(;KF>Yz_aI z)Rw3Rjz!;$h4!@8S>$UezM=iaQ|RYZ{KDSo6Uca1+M?Pq`eCbd(+h{m>5}3Xh9@4R zqKQiTdGDu>|L5PZ;A1B84-~&JYs+4$F-d8c!F#}GE1k!C7xlfb_yx|}={G^?m~&fc zP;I5-7HvkoK=BL3hi;^Mu}V*Eu^#^6N^fvnOS_LMp5ebjt1&;RbpE$1z&k1Z?#eRs zJNk=yKl2194lYHWx6;$LE~eH`8_DHgmoFrbB&8QDm`~+xly;k&4#rXO45eqmzr2mo zNpojmeogTV4HwRUAHC8IR!u`sx6=2vO+`IR@eSRyYZOM zQ`(|%D&`Y(zJZr_wojp)3A*O~ZSFrmQBi5%UI|ojmCiee9{$PkxF#zd(lwUO&(g&H z;QCm{O`~X&wc;U8ejSedah-qQR`#A=2KjSOyYy>k3|hd)$A=bfepwyacasC1U{U{XO6p=_S^`WkG+kJ=hER7Ig%lzKwk8JS- z)RbJr{aft+@8BhVI%jh&gL_aX{7QoVlC$7-;b}wr|De8g*(saZ1HNCbG8+fa2q&)3 zns_d3a;{YBvazPfH(@?yXzuY;p>j?6e6i1L0*xByDDp~}N6GVN0_FSUAo4oSerb*D zz=^ouI*9xX{=PGo%9MEEz_i+U{c64g45r ze*RofEj?=-@*H&@g2(U8kKi4^Lva5K>*`fg;QwjI_aC8eBqbw1tcF<53<~?V&#$d( zzW?^|OQO3uI{(1_7qbs1(uMxIUj*NihBQhDLgNXr3Y)Qvw3cTd5x~ECnN7$@ehMtW>N`!p3fzIr|xuPDe6_6 zr*TNsv(rasP=PQjTrVDB?(>4F!11N@pta6Ja6P-)>m}5?qv9csx-6kwDLVha&mRZl z7gNsRN<7|-JZAQ8SVX&W>6-b5y6%hU<*f>mhv57Q-&#sX=3j{SVZ}qNZNC8i)8zyo z!TtlEiZ8(SC>|nw(0uwlQs*JK24Cm&Jb23J`~&k2Mz?viHz`F7HIdnRg;vq^En*+b5V&GM_@%*Rh z_Vn4{kBSQa2VUP2=h>(y>ih%m??y9bp?|rs$jjh*RK&-bU~VkL{$hWIw5XZzC$Qk_ zgUEZgT`_}JmntN90Its?OPpeCbsmDxhmi-SpVNQG*qc{eKlyp>TS6NBXO~y-3Y;&)d30?D=Mm4_ zJZIafDfqq|bG{yfKNx8G@A7n7+uoeVi;0=I50j_keS`fVeu;Wn_;BVYa*OLJufMZJ z8vU4+OPufgPO-Do6ufVm!5^ao_=~!z{ZFRH(Pn~w;%7$mc2S=^IuF4aOJjm2QQtqm zr9VWc%!%atWUPk93ShF8bsa?7s1nba_aF#X!5bVH-F zK}_$TOcwPXOP+zRmm7*a5_-+MX(HcZ%L1K;VBKd+GOc-cpX*D^Ckx(TOWZxFFQtQ@ zD5~=iynJOE{2tPEe+cFq(ECC4YbYLq{VY0e((^KS`TnU%;011E@%zZd0I*l!(TYsI z&h-uWAgn|-Qvzjgxi0yKfTr;@5_t@KueI6qp4x_tq)Rn#N&ewV$w6Rl?qtEMU-&`z zt?x-?m)*op6Wo6k z4>71^efT9m$ts+CEqoZQHTKgR+U_ZMff?+dq;Y>#dbcp>=*nq^7VUO$sM|7iFz+*SD)>rPmr-%RlkR?V!a_U}iMhgee+ z_5249r5{AE6yz!NP&|ZBTPxI$bRL3_DZGN{>9xDUFM{=CODpi7iihC8?>FJL4hCiO-A)-%NllSYZa`~j!*3@CV;vo+7w4ql;6c2H;hc%vG z6%WDvuD;6@4-s<78qW+D#QD!WKl2s+T@??(>tDM?@enU>S<%CUGZ?SBA4J>1)?|}k z@esL-+R*0liib$8XH9)ZC?3Lb2>6CMiia3n!V2|R#X}suVu|{Z&O`9^l=DAowAOhD z)=Aa5|5o>hV9or)+)s*!7z_W0>LV2o!8}HX-&um6U|ynI6Km9W6c3SXZUaAc#X~UP zvF`AHT(1>*82o!@Hr|uP@49^d*_F!*^}pScf9QYF3jBxSAvk}ecTL4ZbT3o|`OS)l z;Aft}CANy=&-W9%FO}d|vRRBb?os4^h-oJk5ApqSWvXVsfv-oLUvKgoTm`)4I>9q= zeumRnD?G2Q6?_Eik*(e6NYdIYzW4I{f1iTh$Zt|SM8lFMJl`lD!ooqLh51+V`bGWA zzJV|Lu@w)I*rguwPnOB$<}vlb=qes!{!%~cUTBG2o{)h&@)% zW7>Rgrl{ZIJB{}@Hlb$26c2IvNmF|GWtyn3^72z1Fh9{n@ese$o5N3cisU24{s}<6 zUhxnwLITn6qj(6n9W7~33&lg^`rHb6+=_=7ShqEmYpi&Pz>UG=k(Dg!=UhXd|E&$R ztdqpsV`P2U6oP)01mWkvyhiAVQ1YxcmiLdyH_5Ek4t|hvqMpsqOov{C(TUVC;_tbh z%y||8Wk!qf!1dcF55j1FNVNES+|!L?Cbq*pW0>R_kR5?~(qO48zimh9n-veSQfm+1 zT=5W>sRO_BNk53V#*vi$q`UZguF0hp>P*{%yYcxVc#gVXJK_0?`G~Gu(=r~b)|mn_ z6%X;{VHB;Y$@v+){E%TruSi1Atr#ynMvkmRK89E7mXy`zKV?-?=`XuX#r* zeX@=Cd;b2E+L6e>ZH>RLDr#tz7DgcdrWJm_p5KuDGJ@v!Z6U@R*Wj)+kDw8=n~CK- z<}-XFG2he}->3U8a9)Q+y+(i6pJ8}(xgEi?MEFtgm}XuDo+je^c>9=7h(6^jcnKa~ z8AF39*D@0OgSR(&S};8cG77$dKW`NmOm3T*htTsFR&H%gBL{ei-^=@?z@V1!gQ>&U zE95_1GFJ2m#`VYj@Ae%s@c5e1OYsoJPqm_>aZY0Y@b=YR(h~f+gV>+Ef3H<A1a_XYmGs^C}3q}fo(>-V|d4nL1y#^1oXVQ_r-b}ax}}yWN#B*C;JDjEqFoXbMX0Qs8E^Cr!fz~yucyD$VpXb^HSy^IFI9y z!JMpU?!xR$yla@T=KJl_u{saI_3iW-wwTY{CO*&Kxyq*+@|)Nng82z^-D@WPTWUm*hX?KNwQdhGmPngG%`ek+n_*Jx(I;USHO1m5& z^&cDfby@jI&Hft+J?lz6YlJo4pPjKi`u!`bCiZW|s!}(;S(O$ID=&5J@zt^ZB2w@3 zu>;>^E;VZPWL@u_U^J^@qD>iYUY2oJ(@4|jh1e>UZzN0 zyn5^FrbYZ|5A7gUEw88>zloa;CNeHhki0{)(?tH(5mN6S z;EQ}~PpO|3txv&bg{A(r$d4>5#bbLC49rw}Iy9uQtA2>@XTLt~k347hUYuJo+IAYT zyD@1G>T}i+c%p+e%dZ((6rL-_8qPU*!v|n|JP=v9ZM{FzzSWI!zK$iFOX7KE+N`Ex z&WfMK`1vL$q&dC#Gm-x3L3kh0 z{UDf!m_@;4c(_9H56(40=-Ioql7FaFGL-%svsv;A?-sO0zRC`%k2-|Wny&vz&GWMl zT4zf=+q(nivkpr=bzcPfMNde*Jvf4vcRMS2hhjOAw58c4sZ*AAqxa(*O5N7 zyG=O$f`90j5ry&mKaewxD%9^jwhBJ4%z~}ds)FWbznr+2c$p?%X;-fXlPwi`0u_3jzcI6cRkSD}NtI|g49QZMuPgD9! zTSsl^X{C2|u-EbzQ2fKu&NZ~idP>Lks;2FYRyt>}t(JeY(x+mrHJ2w!@1J0a9$dvg zgrry2I!!J3L%w*;j#_mtmgk%>1~fnYnEjd|1j)VN$qC^Kenknbl=hzg4E}LShZcMc|3jrqN8d+JhSJ4e-$s6$(rdcjK>nxF6$W3y zJWaCX9qPTiNcQiQ{xb9&d^8om@bkwhibr0^KR)7Z(s7J`r7xB`LS+M#Ubg%IdZ3i< zV#uN&LzI3o^*?GFq4-bOd$l=kernXbmCNPh@;KcRl1bjZ#%^a^<- z|NJB3+pna-3sR&X#K$trXwqzbIrl>zJG~hG1WFsnEkKWp(pvv?%7gX);~(z0&jx?5 zwB@(yc-~ifOnJ;FMyE(Wh^CDuhZP7qTa;ypq#^fsWf<;e|Z=i z>-VAx-im){(61Z#-6Y9BtbNjj=B-N-{r^1o$Je`U?R0%|NfOO^5=Fc6DgJ@q2L|0t z%w}(Kp3|><&^+*A|NI|XoOeTJvf>-Of}PMmrF4gzH7FuZ>4DbOXlDn-H*ig4 zNmHca@ea!- znIrF9X`AQ2F{iKihCwSonnJ)c{No{p=e#zhR#Sctwg;b^Y;r4}A!FlRc%;Qi|A$UX za!d{JHPD=1M#5+-AyOUGWdLlee2@ z)QZLapCkI$`2Aqy@?qKUFF0%9eYBSzL72bjmwhpyKJqW7YO8y}pJZLP>`j9jYnY$a zX4$|`plBq|_k)WYr_HOonhGrqV?TIGtrw?-*WHAC?$GSd_BY|PH&|<0Zzt_O&>Hun zqZohfw4syt<9Q-b@)4zW9j0Oy0iwRlb4^tS9i)`3=29PZ*-y!XlrHudP_=Pn^S0gV{Y4)=j<)(D_<7M>dvf>#IUR_EK(Mt36vvDP*`yO6M zGxj#Z{ZG%sXn9~hO$%4r_Fy{Z%M{Nr{m2{|FjwjKr)OclTIs3RXHet?#WS!UxMg3Z zSO1ub3E zCH3U;*v|>@e^dH?)v@Gv*jFxR9%oYWla@YEy9;$T77QNB)uk#MP{OrE&=&#W=GhhR)yC84IDEuM#8fxqY{|8^4 zhu~}Ik0IfBKQe#^NHX#G^(_xS)Qh@51p7S{>C*;zcRCM&eq_298A4UsD8Gn@-P)ob z$Vb%AxZaa7EewA2KH_?5vuP06>~Qj0;VrJ$%r}gE5`lW3x8NU`Z&*@1il!#i71#Gk zv-{y$x-$Z8uYC{>Kq=Dci?)<&5yO^{n6w!gm!kSE%?C={!zHM z!qonpyWk)Aea|BZuP##1XdNAY~ae{U8v0sRFITt60k#mUSGw7;^0sE_jTZW0GSshc_v zf%#{6i;Y7bh0a58KREk4!v1beVGt(QXnk98h`Yp|y`CR5+_IuF4*{$&!)2+(;5 z)_As{o)2{Xf!_%hZAzql{dIo`&iuIPl8Al*JwJo{?Jw?4!1Imn2f;kU!K-887ohVI z%p3G~982fkR}=MW9{=0j?LA+3AJo2T(i&-ybXXtH|Ti$o2g6$OTkqQw5>9 zUiJO*eAK7Q^ZA821o%Y^o{zeu&OdN{oB4)6Ps&Oj;$G}La(Jcl54^oYo~P5v;<{#k zhgt2@r5^j>};$;uC6llg2yX07ml;Pur%I}3RhMMVAuKhv|{+Scubg}()R zx)dKd3)epj!M8A9^JnHvs$JGX9AB>aa^3WCAlYm#K4AbgTQ;D|b6X!GhGEHtfreZ!X zACC_cpHJ0hPeC49UU7Zk<2m!)6tX#;M_gaIhIZeOMrA#9e+V8w_D*T&_cG`Gh4c4< zso`7P4~v?M>l>ese@0A!e|2vD{etKCcy}@l|C)>W5Al7$q41N7$c6J^CHwcH7BC5( zIcDO1&ivE6W|L@lYcuhC`5ofi`-$*V`XlPM%s1`pKauus{hfttspwB{dl>#SYkrCP z9*>u)U%(eG|0(?IdHnzPK9y4X{t*4ztXK68jp855E=vXT_Zi=R&%`{#$?mDty}>7`tz1%3r~e=|e8lL?&-apd*flf-?D?7nY;Y|2`o}!N(vfeZ?&6zFMJg&D;{1?gyHA&qn% zVo#Ha6jd>q{O;?15Uj8NPC{Op&O@-~e2je$o=U#KW>_-()t^Ys`4rEJ>O2JV4kZ^S z)1*$1xLzc92lj8c`ssnxCsLE?Vv6D+I1l4WImJUnj!MS;TK9us9-{X6B+BP_NAL~o z$*?>j3I49Pq>j;&a1X!5^#j2>I8ze+T69C|fZ|DH`|ElZUz-npT7_QtczU$;W)`!B z7=Pd=W9UTitt_6q^xjrLo40Ntc#eBn>`j5^5$(<6p0s1heaS!Uvg`^!<_B3JMb{(e z-a%_IKb#&+ddT%4!9Pr%77Bk9UE8_YYYP@M$Mz~7g6pY;nmv{LL;leOKg*|CxK?0Z zqntJ&)tT0Nyb}CF=?zC|`E@(+b1x)#N&U_bW2=s z6%XNeAASR?6c6#VmKD{k^;Gf^nE_Tb%uDAX_?U71<5Q;MAqtMSBHI;;hsgiJiUOP! z53#%jc!F*BBroyK!I}~>6c6D)#fnayza#mFs9#pdS5Z7f#eUXw@%Bx*oc#*Yb}1f$ zd4+6JJjBc9Hpl@}Jj9}bHt;u8JVdGYHstf{GWJhb;rGHkL-Svkgx>@6P1+Fln^rtT zqevSH^;0}V;4^FFk0~Ca@@N}6HCyoz%s;g1t#}CbufF>B6vnsCM>I29lh<9Hhu}GB z?w9Sc^@PmFVE*B0isB*cFT=mVa17&hx{3J){`{E(iicpHWbA~)g1-{i#KXv|Xs&n& z<|iWGC>~-`tQCzPrg#YUvncp~JVfoA*0|m(9%9>c8+c|a9)j~e=;VKrf8h1ES++;= z4?I3hc8Z7KJdqipz2JnMZJjA>~4Qc;+;SVABic9H@sDX#zA;f%qaF9RpeiRSk z6w??y?mYfJBiHX~cf}B=Q*#n+@%D;!|*y{HiXdYu(5()WPRXPJKFOlPJEv0v784nxJ0a2Kd!mP)dAtO zV8Lkqy}}>+_OWm>dl1d_dgf=0XG@3S^TQ?2;MBDp{H=z_e2ggr!oVC3l*`$Vux`_S zf_LC!GBdpcJZF0gUW2uvPA6QCdx-i!j~@ry&NMiwyV(C+bGtvSGv1%OV*47P{_J54 zd)tZZ#&r@J``^$gGKwxdh!n?{HRodt@7_Vy@15Rtq)s=&gy!{~2#%uqTlD-4{=S#D zBB|2C5HTKjdz!dJqQ8XwA|8qHHu7f#4cNhX8M;3L`#sEY4V257m#F059Q!MQ>*G!XdVIYTJWGZ9$Z6{6 zD}F!!X0r$F;Gai=XW(_*f7XW3qbB@ctCPH)n7V<_l_y?c;qgzFi=#t)crvVEh;? z54E5J9@Tif@b5L|e&>UC`YPi0^XI$IGoYVB_k-Yd8rJwAPqN(K<5N}m`?su9hPPMv zF-$k}ME+SxvHy8|CLi~pfSlrDJmGko-rRGi>r)Dg@x#CO)JQjE7#0-ci^qJYGOpOa z`NeqWcbw3duJCKhD}E2}|JEC7;e9T*I9|NH-{*mkIQHwWze59K>1cPFQsJxMBY1z= zY;wo>@;;NVcYKU4{HQ@`V_szPvppY=$Tybst;r*iAHlpuzzr+TLlBzZp`!ZOP|*A9 zTwiBC$H@5>J{@v|KLnpY&pKAYGt>D@K304@*}o^;{G_PI^ZsjCvI>2!dN>oyd|2nK zx1`%vSj-Xi{h|TK)TLiJq969G)Hc(dkg2doY8P)8_>(P{dj3sU`2S9o zdd*lj>Tqbd)SO4t{e6Jcd_KK$tS0rxK6NmE@o6vbYu^5YMe5S-J4>XVw!xb`7F3a% z`G~fI&BV2gKVR#ukv7CTi(|+7djrDxbec6^zf64(6Zt_N}^YxSY^k@4O~>V^xEk5yr~$P(wzmw(xaGWW(w-huf? zo&)~JKO{vqrNC3;CI8T2d^60qO_BUVbiM#;F?*)ac)mAnc-w;J#-~djqGqp_$ZJ_7 z`G<#1f~fSlWn!)e`v|p;*66=oBYA~M+k(lb?MA7ec!p4}fNfIW-5p8}+HR?R4DBda ztxTyu?GB?Cl@Ch2pivm=QO6|jzjeq(ac)f#3f1} zIpm@}vQvD-=~GVHhqX$d%yHCilvVsgh5Po}x)7x!-_+1TXDa>iS2gYZ1*PMPR@J%} zQ~U$`c(jvEmA>L(rFkSN4et@HQ>N0rJ66(SKP!ECLOfRP`=&bbQjb*g0 zbCj-gx|B8<{m}n-2j`b1w7!3oK3JrPUP?8&ViXs-0ir)FBmVM;G{{|(+)>3g%k)0iVl zm&o-6^LGOd$lvF%Kz>PPk4=COA%?tRiD*j<+*Qa!)r_yKcJjDB#(ksL7kvr|o8r1ico?Uq*Wxq_8d_&`#8OVE5dhWu-w9`WI592zcKdpk& zK2_71-6UjR#S^7cTyb_OmUZuO7ioyI|vh3G9ylyz{Jg;<@X#MP7YbQ{+h{=kZVuv^}dmf9=+;e1*+J^h>{`Ged^JXvWkDmiZM}* zpE^Il{huvfdm$fF>2^KcY0)F4BYL>Ne{-z#dwBH9o__6Dn)4-ofcN6s2mjaqZFQ>C zPVo;}=~YpmR(u2JyJo#zyI@+fMDYxTl8%{Xq$vGvPo`;mAEk4@+hYo9 zqId@%%dMv6PKs|RHD|{9$Hu|G_{zm^vp#wOa;P}Hh*c3{=*UI zr>&^1dFQS@dT#~4tRdV#tbuLOtUI^B^JrhxlWJ-3#@9}D8jHNhuBca3(2`!nYdd3S z(*D8BL!6+b7X!7DU*_QY*de=9@vHE4h|z|&n@^`=!{9G*7tc6xT9rW=sQ-nco^c1y zC?m9Kv)0h~O|7|q8o2?Tv{7GnQq-@2?0^0do9ga`zlP!$%nRF_M<};N3=#@rzMwOrc8N@XOr9TXu zg#K_px!hsa1mt5Vz2QI9LoAfGd6a_wiTd*Mi6!A*ZBY7>Un2PDdUAQ`=&|&vyVCDB z#o>PAE0^ERiNWzwdQ=PKEtJ;8CFC%L>^LLcxV zN-tZ}6L}?s>s37JXJzPYi*8h9ot}5W`pWlC^u$Nky#7VGJ5usvBc88P#OIkmOC6V5*Lq20-Gw6W)+p*_ynN8gV47dnDDGG62k^lvh$usvAF*_i{}OQb3k?>-Dv47cn7YrcRrs;#(hqbcbI!Ii55CIiQ~!nB5oIv|30%O z^Is;;7b$lsh3@C7De^JAw>1W9G!FR}j^g=>d5QU1snqzULpIl{`TLf;jmPhE5dH*w zyj}9ZZ@#<(?w4sIe`E9b6e|Bx=OLK+V88X#({vt!``wFvNJ4#6&(Gj``p^DJ^!TaH zL$DsbD-k`{IuF76gnJ@9KJ@$yt|_|BK;Fn&ormE1QJr6f zSVTGf6c1tDc_BDdoqu3H!ff>ddiJi8_)nMu&ZU+E6c1sF znoCDkmKL99e~8EnbEwGOQbO|>``l>``bBjfg149RE2cJ4eh}}s&ju5v^AF4v1Ub#7 zowJMMd32qT=Rn%;n1#$8-T#4kha$nVXngKsf`8!e+wf^7op3KI@-KLQUA;P!8r3f% zeh=^evn^&(zwZ{p@1St*n()q=N%l?_81D^C%m+oe&&2srNN7Iaz8Gd8kFTKMA=tmA zjM;Pw%~MeLr7&;u;6NJqlL8`7hOgI0R!&8|C%<^V;rbHu2@}8O!}G%daXl_IZwe*1 z$tV0Gm}kqWJQe-zdGYz?f>&@mGX?Vvc?FNac{2R@w(Iicd(YeI? z4D%16H71hT1~ZJGzQP|O!F3|?-Ep076X`fJ5cply?Xi+UxGC&QZY z@I(J4>Wf?--M%7~@_7FgJOk%r1BZ?SbM{s857kGe z(#j2A1<$}tk%N|s{`@bJZ(x5M|1h10V1A*l^Em2N>yzLeICI7?Bn9uoAF;ikOng5} zwoZXR_Is)OwMxc5d&l({?jfT51(NB^a-E0Z>z|hw@+`i-;d%n@;}gNkB@-B8!9PUo zfp>*fGI&v)hhTj?cQTm6mvVWzuE}(^$qSypC)CrZMQk$i>z@maYbtTx#g&YwQg0lc zjQaMIEFK%{DyP%DFyw2@eJqxn3e6_VmdSL~Mdu-Erp&^*lT2L?=sW~#bH8MY3f6fD z)}^&%+VxQPgJ8{hJq7FD<@y8XM&sEy2^mj!1kb>p4Dj-!=Qg*+a@I#bCc;DMmRNpy z#A=}=7m%7H&;$JtV=DfpeqwnJLGw^&}Ui%T=ms+RY2QQI< z=WlB*u4`A3_t9X&I=WS@hBjqVNA&+bM7?zr@;9n$9S((3y-Sa{K1LJz*l8{&nxh~3 zG1kAD*bn06_lEGidV=G<7T4G6nk{hGJ-wev{=w^@Gp+voDvRG`<7XZu_u8f}L&KJ2{L-7z?AKLTfoXpGM`pu+R z#X}VQW{vTyc!;5sZO~t>cnHH$YZ`xA@euI*0K=qsh}?^;z|klkVrM5S8t0;T2>yJ~ zF2zHPSq=Y%1jR#~IbezUqn?++bL{;0170W|;#PiZ_+Kj?BF}njJkzSYi~?ac=&x5i z1m|O1DYs8t5BdJfJV*bFiih~r9el-F#Y5C`wZ`>J@erJEV*YX`c!a)!KiKi13jOv| zJj6|hDyTPX6TAyQ^N;&ji56GfD#j14H>Oh!E5o0Ev#2++KSa^5l~Lc^DC&#MM=(#( zzP{oi9ws0UWVX&jF#o`O$*S^eMZKLhkIxt0tGWKke1R#vO&yv#j`@g9cs}T0dT!%` z{KM7o8|WbFfKx~{FLL1x%lO>9$IcueLB}b@es%^gg>F;A=W-=Knt2F z9-?89M&xi#@epG?{o$XY^AKE*3GLXJjMoJZA?D-r`8T1eiStDLlWQ`s{F~x^D_zuw zxdw-~BYM4gj;QxC@38evQ}}bv7WG)xcz35=zOzKVnE!s4p&12Tp27Q5_)!E!HKz?- zrpxtR?Gk`|H^oDooZo`#b)72e#i)N9D_0MMXPDw4V$xc&$CBuu=X&&v{jDhGoX$hA zPWcu@EgFs&`5AUA|cO#J(J6ilb z*LRt}&-oKA?!R15A9}hAuFHal;OAT8Z@(}w%|j&rkXkK_dfgr6mHjn#y?U# zM1im<+E~30>iJG49v|%g(6vG@u|IkLb3R6}PYhl=mxzi(L~5*~WNSg!L7J3B?v<8aQ;(0PdBLnCp$5B$6S28Q47BIx-`#Y2?c zA4$#~oBsX#1fSs02=Y7OFUAw^kJ>HU@q7p`7vuH&<#0OCvz{2Qyxg*HICx}De&43! zVf5Kv_k-a5(Q$ekn)JG^`2ARi@yyXSlzV3#)>xmp@l}_Wv^By*tdI3^V-S7zt^L=J zp_FmJ+}7~#uO+^pe-ryf6x!n~{+@M(!$I)ObmaT5sOK|N->rq6Jb#-V^QV<3ZSj0E z!N~jbhiyHaUzXT^(}h0=*F$5TR{Xm?35GV;yr_GWo{z!D;P5&x)JIDH{r%%D+LU~}u(;lF{ZXI)Ey(*v)L>fzI=a}392y&d&Aa$J2-XdZ)2T&(DeWhT}q>XANtzYLnk zJcO<{?69Su<+n;bw@WqDv)4pM%0HUZlFt*z7nH#B-%yM@%1N7n;SA2V z&;UGuv()eopsW6NnS3wfcbLGc&a|wxS0>LTaL)+mYkkS5WisCle>~G2FG~V5Adkm} ztGFK?sVVh;W8e=`-A3vcm8;_ZUsh@i9@_rPLhNroCyNBvfM0tqsd@ib-tkKE35BOS zkZZBLfA0pV=l6A?s|)8!eafO1_moK8VWk`SPl=TJb^Y3OPgJ{Gq2Dl#RxwuP3nXH8R_D+CW3|Gdq%z@Cght0OWtAhJR;7J_{T$J?)AldMi0yh z9TV$A77@;m!IF1yz14tbd&fxqbZ;Z%$0SJpf%Aa;4v&-kgKcmVMO0<(4p!(rDi{&`DOP?y)P&Pexmy&|G<6|U3`y7{-Ni@5ULk*lK6b)XPAP&Ly;G7 zPU*hwkO^{GYM$3R5qO=oxIej12?zgoN9vDXJJ1M=hf?$XvA|>H7vYk}K?|%JBYA+9 z73{QTYn49WT3!29OYsp-jjL*%w<&Fkve8y~Dn0^!ZrZ7BN;jHYMY~X5@eeb1R?=Ml zkC*VcQbCKJrk0=lT25PZTIo%d%4%ElE8gL;R$4pdtMs03CAGC9l)gQ=xHfsC(rb1W z)rLM&y6^qMnpZ`|JJ=Vq(0(DG{vQwFZYrp4LI3nWeWP!Ft^O9JofhTQUffrD$OUsP z5ffSeK3_P0Zq2%$((_Da+MIq$zkmJ{`Ho62jQED@mD2ZfeL_E8f|#G?If=@n-%+p6 zN;mlaitbw~-oawjbN1kspD&T?3EkYBJen!}sKH6(B`aP0*-E%utG^wHD9R__{1pZ0sn3MD2$FB6=w7KY6Rs2KVp0jYwl%CXZ zI{dekHm@-i{l-dPH=l%lOHU9((YF?gci{SpONi30-+O^qReDY1uJGtle1lKhNaU3(y{dmZdecVfn=Zk$ z$)xiST<;lpycOktns2MkAxejIwSs52;vM+;a(a-`pLSP7e}>{8z$T+k9xweL5*^Fn ze2tg9gU82W^lYcn?!$}Fz1fOqnBTGh#il5|+{v7V4pX|k%}>*YE=mU)ewxa9D*j%{l z1I_1|N-mETybR}ClpHtPHTnt17->#^+>H^=D%w50P)-C{xaQrHht% zU~=>sk$v_{DUI`fPwp;Fd(#F>{^9Bldn#~zfY8XZ)*>C6k>i8js8?3f7QXR^7t(0z z^tB87!NC8)SL1y7T^pmg-x0nDEwzlQspz+iMEx@x^R>OTcbzA~PdFU@8yAqbJWT6) zU<$2?3Cq?zZ-aM<(Vp&|ML(W~2tNs&AKKK?OYr;`B>9NK$2NfH4#4@CfPOU#E#~PK zT#ppb5PfPB`mL1Sx_txney8|_iA&bek)=xKnYxC41}P1%QEaEuk)u}7myL>N2p+Nw z@8e2)4P1(R52f1g$%Q~jB~c>YK+%}4+FuaqHpUr_p4je+oW*2Hq|4=#PO zFM8~i-W%PE?mr~C+_zSD@*l4B($}3SzM#@^J3Es1e3Se<`)$4mF`@r@0_GDd(Fw2i z^!kO)H?VfA-@G1BQpdUrk>QzezgXHW+yhIuF6u6zh7eP-D?~ z2(HJwKW;&dTk1T7;m#DW&w+IIx&iwm7jfRjlCQ1s{%R0>0{65pbO@$idwsrRF>VbnCgx8NU`Z-93x1rDt%_y@j!7{5fI?xFJ! ze81!QD%VzC!ta6acYmle70Rk3_y^`4_;2<&)e-yy^9}4L(L3E!@DA+f@GQM2^3XlS z_A}q`YDaH;pNHTd_}Tvbg}$`zzRo`|@38Axf4UQ>`$h2k+VC=i=;1zh;rGCNfmPfP z+Fi$8@B};_JW31$59*f9^S{jZ@p$np>?U{wX5AMw8VO!e=OK7`^|qs_;w_zj;CgG( z?qg_q6Ia1MFncvjq92^Ue`&*Hx=b}iy%X=_9q4NI!jFM_usP2n?_oR9f6w~)%&}C{Q)%W&uVmNY`?2U>@AxPV zjE~aCAH^b1xw>4wvA`Ir@TZ#8gKCeahuxIE)Nv%;I$c#R-#TXm<@He7?cy-hjBVxe z6BUQj_1`v9`#g&Q&tW6(cg#O96WZ&CO*W5Zu0Qt;nM8|@*<|yx75A*nX+9IzL!E!% z`f&d)3*kp(Bc9)wCx}T~Eb=k1Oz;LDjx9oefzCfL57DX2A}}wOqJGbw17my^;(cGw z$6)=e;{y1h=sd)z(i=P4<#~g&tKd`^R>&Ust*HJt~h5K`mw_8qZk61o@4&Lqcd<^CR*4CIqfmO>0zX)ca zN1UHct7|D9qHMry_@gNvg8dq%tkL-g%r}~{N6eyX=S$%Fm!C5`O{KM2m><@82+TK{ z3ZI?{f8*jJ|AKi4s~$5k9*YUyfzQDh4g5mOqJp=;9G$6A^_iGYE+Tjseuq5zaR!ZD zUs&)iobP~I2F=Kx{wP_qVOZ`^b*`g4f~wfnF-IFP2}7f97At?U_PF2IdpX zdHWOkO`&q{^78mH@f^jYs}o66L=3Mr!6CM%H;F z`GtqYlHtGfO6urb;1%LtN?pkj`4fIR55fKsg2B8h3zP61YoT53(wCY~e!%q#!9NT*(}PNa z-(W8ZoIhHg^&Kg$>m$iOpjJg=CO#7R7+$G1S}D6w^4X|(h!43jW=B01yhC#@2d!6m z!u<9Nu|Br~g|#91-H1uThUNH!<(Peh@t$2!9Wu%XdVc!T`lXwBKw+UcZFDhgfcf{ELjLiifzf0(l3U z6c0gpt-)|Q7aS=ar24|b=#+Sh)Er6$-ar=A!4F!;CFuk=Ua@( zgQ$4R27VQahj`N8mKyX_JcL<))Q@}>578%&E&OT}4{=_@-|tmC#HAQ(`Y>Jb5OIyc zqs%_e^*G@N!TBJO)f5lmIm((UZ&o}+Xzw@u`yFtgewr7~GKC?2By zMP!CeQ9Q)`p;f5#Q^iC0TciHdR_7tOM#Owik+q74I5gLa8oKH{1oIO!uEC!pQ1K8K z18h-G68;ZHzDL@1Gr@0gRTggx*XWNw(!e9G6yuxkL7{mx`VqQ9@CICCVSntLsmnyY zlIzje3N*m``BGUA&g|6?{yU0?XgjqL^5+!~vF@-x-p>^e!Fl3ue(O90*Pnh?X-Wr@ zg+GLt&*%Ar=g7<8S})g=-3m0PK4<6f`7it!&I9b};g8lKnkHC#q;)KK6`?Z`%B+B#PRlt{n4#A>K!9v zxL(cmP^0DVFg&l1l6*st@V3-EaD>oY6Q$_3W{ z5P{>-U(~m`9y4NoCpwnDuh@RBC-eJW<9j*}!P>aIGo3%#ga2L}uP)CzV}7}t*nhk} z=d+!u?cvTio>c`8F@94NEvpkHmSdX@Uxs#s--FIWa7~B#hwD?qMSY&vpRutc?c5e7 zjvue@#!Ym{C%<4I$(aZso+a^45b|EK*2}+#qZ_c+ z`snGlmivEHZ(rm?RuP(iUz^V+8drjO2(FhOGUW6#(CMn>#CXB>8E^FU!uOT_`+Lm| z$SOcSLJ52y_p2W=L|&+i_q(F3Mg6W(bx#_0x3K*CU2WZHX>1{W-UA;r)VMdVJB2OG z|9Ag3Ftl3iN|*fdi1CQ)o3Ys=XLyL^;_VT9M|EF#zBT)q$>$RD5uS}|q8|83Xy%W6 zYuSN0e$9M<$d}nS(H76x&xM}@pI@8W*wPZ`CnE2H&!6N$wwPnTCp3@AgO2cXXm>+= zo_|k=mR4jRm6Hk967M@6M(s#t%u}8dJOv-0^J$goYLSzfeC+U_Pt;^fDjy^KA%t%H z+nVyf$U?oH{WubQMy{y}9+>ko%)x^s_zX4Hpk~iGFN3wYp_ZcqEm^Wr@(ar<)P%p# z8u9l$zCE`)As=p;)P?~r)UWv>$q$&tWeQdR_kaK4wU7^1D3jmS`2Dz7DLdq) z6wc)LAASZJS)n?uTAf$&5}cQ9+48gG5$cmY{H*Uu?Qz8c{wt@XX1|Uzb#_W^$mIpkmv zQ1MeG@XUKp_%&F+@uZ8jDiiY#{LX9a?L~q4?1bhyqkHz=Va*%smu_AcnHU!ddOSuC;5lvPJVb^7$NzG zr1}l0Uq-y-AF6F@NFRcc`HE~!=C6u%@<;yWM9Dv#KiQbfXQl~_@nX7lp(#B4W=Z~G z;JRkCsqTEqD+E>zpkU7>Qah!$08h0-YR-4(%xaz+;A>Q&xK{lCQaAY+gnW_hQV$&# zg!}6r$v=E@ZcTBGvn2n}ZE+B-Pd-F^J>dJ(vBJUhb-;0{x9n+y`HM5G`FdjD_pRJr zFG@XoLR-ped{t`BznWx!OKP*A_Eb3keW@R94W}3Pm0tvSVr^61(L6uGpP`q@RkRyf zO7CA^Nqf{l@ewmGRnWd1Rl4Bsa@x$sijO#DUsf|5Rr+>tX|0c+;v=4pEvYTvr*!(} z;@XLdihuCCUsT)FMrmW|BHE@YN;@^S(1spU8eX89qnY9zzHiO1J*cB}{L8%Bus%wM z*2tq(U83~p|50_;VOcF*8&?s#JCIgX5D>87+3QgO6+uE#3=qZcP83NI10?P4?pDBV zkKKvg-EqEq%|6b&-yi3?&h38KIeYfZtlzp<_X5Vu%Sz8#n9pccSn&?U_Wq`Mjg_`C z{6IWb>BiY#XypI+O=w;p>FF`GJ?5Xc(w(VU&!0r!}ro&U>W~_AGLI0%mv})7I4Do+n3*@R2mn=RcUzOcn3&C896& z!T$gHLlmmp1Nor|(huTw$*%C%OAzr1{yywz)RFeyRN88DTQGA8(hp+Ub3b};LFpc~ zTVg#!=_zHKQ&>&{uQzKP59)bF!}^l0*$-lNKM$-)CWv?t$8(-7Z-nue;vv}oXx*!L z$v<>^>`Xheb^iwTgIJv8jQS;tf6$_w=zf`aUT?*`V?0$Ei~3)<+pKy0@Z+$0WE`US zhiz}`BA%xB2Y8s$wi1eeI8xINJbbK(hcW-qs8KB{wm{ch|Dp<6BR@g$4_-l*G{rYo ztl#4Mhgc5$BC9CAVVO-;@Z3sQcvhY!nks$2UKzxoVnn>F-qsqZU0jS#g3sdk9qX1S zi&N&J80r5|Gpz{n85RFd#uG1@gJ#WRH4e$pmeDqY$B1$@wz z-ncVQ`}8eZTtBb>uAO^dJAXb}*1PC2>4p}*BU8hW`sQ}-xsM8VI0qJCAZ_a0OXS-I&bUTp%?DBE&pp65bVWZ@+St74 z2&@5j2mdk~9JbNeC1V_!28H8&+kv`vp~gMOW2wf;E|QNJWk9}QyH1jiDBpW3@}WC` z2g<|mC%~&{7X4`zB>4#IpG3qIdkg?uxm?QX81u-mQV_S6r{ zkRR9z?N^WQ2Yp?FdSFU#{<8?407}DO1ODbM-v|kRsA+5RK1vno4@6%}7;G}d~XcYM2 zW^#Lh_v29`KrNkpdO14Zz{m6V?oR`{DIHL# z4`qDOc?RCj>oNUM@8T~%;k&Lo;%OxE=`r4?dF|o9*^)&3iTS)YS|~iEHK|ARfM3~0 zP2?AIycx9)!H;W*&&?9wzqSq`6y~a-f0-fH-&5KJqn?D$JMjAb>^tq?fuQpctiPT? zJ(*qlc3xladp?lTr|Ucf$H$Uhv_X9-ormE0jQ@6DtS9R{1dai(CqMWn8AN}|@$l=H z{82O91J_qrylYnq24Q_d=N~vG?CRQ%S`Bg+^)4`ng7{WC^l2ja z2j&~YQwJub@W@EuWu%CnLpD@ZxYb3sR{0>*J?neFcHTo}}9EQ1H z1oF2V3jTq=hd;XaM2@A-KQQ00Ai6iLZPh^V5B&XHI=?U7+2JPq9ykWFa(939FK(jV z1^Z+8TpLL9Qd|Z9z17l_mtx+ts zEv9SE53k!chI&NUiTE?t~B#VG#ad+$h^=2BDC zJK+5ExpT(RpSiYDSH3)kJ{C}Vc%{*(A8jMIpY1pjdC}HVk3Te=+QJWl=eis}8vQ#K z@e*s)V~W7LSOvK=u{6(8>FO<~qke}q+E=uwhta0bEc$%QDwn-N`1(#~&%>Ba)YIU2 zq1K_-BKmaLQt$+<-()OA{6zPI;PFE0l?AAWqIifmH5Xw1qIih=eddD?t0DfL*Br2> zM;A7l3C(LP-|o$Y|ANjx96Yr|n`b!}^G;p!oO$z! zZnNP(pz{yROFUaXi@x8iEaK^`L$z682r7x=u|KKL-Ym*0sB5g_Y5YBjFIkb_XAysz zV3&n@**gEg@&9VeGU-+&UGw?$?3jsoiOxeX|G~UMp`K;M^I-o7+Li(SSoecq{km=j z#&xB+zJr0+BwF20r(SDIiS~2j+*fUQ4(eB2E-Cl{j`!!xO{W+Clo02`F`1oZGLZkO zYwiz+#AMKsImHFf!|zLxlWC||TU_uIyk@iKUMl=7iwWL>{VDPdNkxBAO!!am`8&Ly ziG1*){QemD`p%}!ggSzaC_;vVLI}=bw3F1zs>(lr8C|I1;51o%jyvL*DW>? z_lM_4=?$jBzrsXp=l6A6;i;%+Q$X+?tZyAjqM}Fg3x5perAHN*N-f*x7yKQsUu{pG z3jf!9g1_MV^(=NO#_RcTezU~;QQK}Rb?x!5h&S^4KQb~2Ji;Gd&&K@ap;jSl3K`vh zbG%yA?`TkX3PpbXDeBF0yfCW96e{QcGl$t4=AUCcr%;uxKRCW1_=amvQ|Q*z@9+1#dGeTs&!-7AcKiDru06&64Lj~9 zP~$%DgzoluCfVIg!29)9>gSj7_q$#T?H@4{xmO8v?anKqdCYnJdIGsczm&Sk)dUJK z*LjGDGP8;OeQftU6Fda#-GwI8zhj?@-*c@N)?6=xp9SmoKjY~`i6^KJP!YA0u#VO~ zfpUvJ7W@MH&oaO8aK%HxFR-3oF@c&FeJHj&-B~X5p=A%G=6V<_ujo9){3DBLpH~9v zndm$O>*z%>R0#Dg_*+n;^CRMXfp>xT1rIU*$bIB?MWapLm3r~Y(WnQQhx!wrsA6%{?>DSVec6DKg0;X z4>6u%zlTSq6%WDj;MWTk4{>n_>RZ%PJVe@Q3tDkN@empPEx<>q`WU>u-$=znaK8UA z6P<^^dL(hZia(_k55ay1ofj$|f^+3gB`F?ahl>^XH^oDgTnWE~Rf>n0Y+^-mKkiB% zqChETbQKRVd$JXs?4)=I_G7s6^rqw?Sl2zKcnFh;*6_PgJOsRxQ19icwO1GMi50{g|OK&sW>a63<`fA$ZN``aTP)J6-V*TyMnDOz{xI zA6U}O^@@ksaoB>K7wS9&ulcZFL~fTOg5To)s$?Tes_^=d)aN{Y;LW#7KZsU=W>nK=o8WJlw|KnG4D~~{Fh3>u zi<$m4P;YA!^I!(%8-hd3>3J)ihhY6A)q(;KDIS9TG%CDaEAq*~7-=q=71`9&c?f(z zw4kq6^sN6X5r1SJV*Yo;!*;F|{X6TlabE1tF7p4;{8-bvCN|t;@ygesMgPi zTGU+dUp&>zqyC)M$T!w`2>yM-IbZmp3V#T({?C5bShEzr=Xe0mkNStO+ypJs^j!SgYco#9VWYtqH}(V8OOe`Zbz3@6C0XjQO6~By(Rm1bQw`y^!F2rER1r_-`0U1#?NNV1ub;s>L+xG6Y*fa=fO4F;(HRy-*eR0 z2sXGa4Mq+4=>N|DhzI*6d_OP|`|l;<%`+l8(XoU`@jN*{zI5^S)VSg}K7SFPUA(db z)@VnI`-3r(N2zb2w6FUJaXfy0-{ZQ&?_sEjU-R=n)UP{DOB%%6MLiYv2MirE0Ovo= zP$#ssw%WZXRdVhpw)6daIjtw+_q}=lB3{n*G$LB}{O|soc#M489qZBEWqjRnW;aS) z6)x^CAAd}}?({P>Oze;2)rWqBBmUGy9v|yhh&6TmFP?tH&|`i$!LuBHuk#QS=5?hJ zzU}zSf#Q7l9=Jab1ApFze=p*x8-9e+v8k>9o}Yp1g?tKVC3pe8o*OU2 z=y$B(A;4S2xm&&Hit%J~c|Yx!hte{SrlLLa`F?8%e~kj#f9DhDKI1}X@RIK0`SCHi z9?IuFjYNCkd-R}qJ8JgcRsKEKo4p49+en>l%_#3V*UK;we9ERGgf-x5V*mVm zj(2}(R#|*cxP5Xydj19#|6Z@h^pB0Oo={FaKYm`TQX8UvY$@43@9${@zntQteQZo*mVouxRhh7d`w{kDNc7@ckEjR(N4Y#1!%iK7!lW$QN~KocXV8 zZfkt~XD-+v9{edAYx~S+8=AehA-9A#*?g{iys$qu^dss8$FmLm{(Y)wOMiMj1#iH9 z504EIt!>d?)Bei>2L+b1_S!#a1FONn`eJ`mA@*hS^&Fj6_KM#;PVW$D_e|M>``4P46-$81d zZ${M9^Obs3ax*&pv8mK`tUa-!-cV}fX3?+d_EJ0hwE&-KDK+~6JZ(@(>V~6zus&2= z>K8?Q$>DuIsSS($P|x`l_yhfZ1=aVbkg?aKHa!|Z!vhaVUA03H6?NSp^{dHk;E%KX z0NRrH{xi=peb2fB%;NKWl;=nn9}50~xfyNeEl0c`OAqka2W=MXbq;hQGV=hBA9#(f zcbo&QoEI;72Y#Lvr?)=9?UVV2yfaRyscR|qwQ??~CsT7jdkOJ;u+cCVDq$F7;BPzE zOSk`tzaP0zugk>4FH z`G;cHJi+%RNdDn%V{d94KUMM%%+owcO_BV=m7=XMKFXB5!pKM;T7NRsE@Q!>YAJU!7FT&`~&+eIJ^;QxD^wHW^dG;Ifd|BTd`i-O6f&jqPHezhlOzpGN`bqqm0om)~T z?dV8nir<%-`NyBn9!WjtQbptLj*()$7so_jSHalpp3B;L$ z8H0K&J|gr<31h8CO4qS2ZZzqp_=tsFiyAX-C|ztpVWVk~;vt6rMJz# z4nIq!*S5NX`ge+lXj1zET`*OAL-yUX$k|Z3{+v_Dc~tsi@bUl0PkgF)1UW@&d&Z4i zay+W^r9}rQ?U~YTi|s`YWSsPi7;=3l#=nYhsJmtxIW|!`VZvs7kCZ;wZUgd5mEKuz zExpN5dPeb8GAZC@{=ZfBL=bzw35td-uk8})(sI= zk5)Qw)I`dK-@#uVV$0Mq@C#6y`|K~Xl%Bq40F8zIj|W5T?q0MzP2bM(r){>~s2O+; z-XH6%E}h|Tu5^<(!N^}pko*JpKMiIpJ@Q3s7n$37VhNI zUhxhAo80I|XQd}vJJF_ar8Ab>(`oPx%tLVeX77MHqFx2(Cvm)|%ek6lxg%csLHJd( zp`Rla|G@bx*IO$7q3<|zviYX-44ktVl39biR>$RXE;IWSCsM4wDv$Q@@lO+Fu zd_&F0SMd!EW>412nk!vmbey*QUX=8Am^E#z;2Ahp%j+pYD|&0u6BX~Us6aPucT@fM z9OFg(L2bXO;u{KXXo?!(6Q$q7x-Ob#k~vZG4m*C^YvaO{4yv$P^S>|#JVgm(dKFva z)J|{VA2EX4n-TFwTw`v z&KMLo2fV6p?w8v0iLZCE$r98DQ#`|=a*HUwoYD(z7ogso;ure4&!aMwXDkIwm2$?uGbOistI-3N||t^=FlCeK7&~D4ufriVE@YuTdJcOKEvk zrLQfECZD~{ugy)a6>Xmd~a=PG^WRd;&ktZV*$Bwg$Ze|p6?9O)d2 z^=m?VSi-zNO?cf2>zyR{27br5zC^)14f*hk;1O2`{sJ8kzthlumx=FDF~<&s915}h z@aNhTJuw*Z7@e13evo;CFXMF{f@2_0#$kM0S!t76fn-)wLw}Yo>Sr`|37}KIbsmEK z(L+18L5&2Rhu}HZkcF)&{h`i7aQwYyS}Ux#={&?RZ7O+g@Ik!*ormBY(9_wz$Y1mj zyaIdv*LmFr@qZ7&KQO;Hxq2Ytb?(Cdf%yimw^YmAUGNXgHxwKZ43B{(Vm!xw4u=r*WGa3SNW# z>$(2xdb5V$i+*d&JDeNZgYG3Y5c~tb`@>RtQT7*|f8cr-{C+R!;U@S8j$w~K-Vgq} zuA-g=`!O`VJAm9hT!nuF-=7n22caK#5j+F)0`-axMLx5O;2)Sz2(B@lF2~jvzvsWd z?Kl$k?REZvd55FgXvCwP1^>W&!v?>xIHr@}9e96VJC4USIZ57OX~YB?u*gyJ4t@ip z$iKLw;2oH6Sl=WXyj4BHJ8(QS&m)Eo<~c~-p$f%PkiUZ%e=!^XFU7%s)Sly|8v9ou zdX4pB`&^z6^52heOaO1B^ANoMSsN0-BkH^a^Db|;#KT`f=OOre9p@H@m|`8YR|}2% z+ZraZw92#&e^14n`Oe#DvKn0*?^|g+k89e->yzOBVJG#xClirVuWLRh&w>-^{oYz) zJL^6UiF2uGqT(O=S6PVsV#Pm{=(GU!kd!{Pay~rUEd*b{>l;Bg=V5%M`#*4e ze45KVjK6gLf%7%@kDE)`TQ17{d&>T-nX_tW-Fy+PXnP2$u7G9DE%LyKU`G?Z;)8Ri;RM_40wug!Jp*bbf@II9kehB>gu8wKcHmZcs{JaY7OGSRE&OdNGkNu3|dvd*uBglWr z)iytwiF&xjgdYX-7+vPfq?lU8xWC5w_jc{A$xOtciwZu1WB%*5rqFTl5IA=O|Ng8^ z3WfbCEba&M5=j@6X-7a|?*H)qWowrblaaq)NW4FM{}z@=rY=Pa34aJ~p8+;AD0qk| zj_;=N^|OD{sIvueKL?5HJ!&!)OkF|n61(yK4WWla-an*>J7M0`)U z|LN8#iE2j`5Ih6(PyaY1(e#h`1rNgg5pUlYm0x@xxj#6zG>I%e_h<3%DYS3izd3wv!?a?kg)xO*bom3n{u8J-@mQ6B5 zP}MAf+TZvp{2I8P#r<2T=dk^Y;2D^YaJmx@PovKq52DI9lIhB+c-+5FQs-{~zk~9h za=4aM)q+`wktbk%>;v+d%L?A$yH5i8oA){X5oO>@kpVU~f#zxN*#BG9yC{>EKrJS` z72BD2(B>szocKm;X9j@%CQ^>S5}N%QI<8JY{eYJ_+}Ciuik9mWDE8myQa9WTKZjY* z1pmP2lk*;YLzid5&jImCYEUNue#uXfe_mbGw`hAM9z5+6p_zB!`bp)ZbRL5J9x8o_ zho9IZv3+C9CCI&u2Y;gT5UiK~ibuRc=OLJPI3E>H_EjF_@c5Xu<`9p3`um*E4PIeB zyo;i#U&sT&J7CQd9&FL{ZHmrAWG}i&0b%2)f@z-cgIGDQpt0c7fz)d1qa5~<_;b06 zG4VkUjENpg{-K|H7tB|m=D50U!y2fCG2l#R8qiDe5bZVw(w!1db1?T2tpaYfq97ip^AstG{%BD*wU;06C z{fUKy6%WDZQ*q=!oR6$=f7#X1nwFU>9)jy{*xyw=1p7m*KBoIaaDU42`;G5TalB0M zc+4C8j#WHFueFxQhgLiU`#Xf5JO-X9Q`9HAYGz5d7aRpYGzay<&S{5!z^|dJ;vv|7 zV#!CvL)0u}1-@SAA^7*V`&y#jRj%Y8`1u#Roh|$z`1{6w5S4c+9s+*9^t;V|!9Oss z$9@nM^X-#7gzs5%)C1ci_y^wZnP-mkS3E@OYcu4Z?v#EIOC!wa{C_+IU(>$xX5{3i zc!*AJH7Ikg;vteZ)j+<_X3<{xnk#HGr}N!6Nk&V^EO?2?0hSow>HZMR zL)@zfzxP7SLwIpKRqHX{nj+&?3C;XN-z-}&Tq{NXKWpcbp42mKh2TN>8yGvH1>#}L zB_FY3Knv9CV}FRt2HxH&$dfJ(StjC@9KUZC+nlcXEfxF6H_`Ap9yvG3i)H@$6vtMm zuf7n^pX*nYH)LM+fgh{lAxaeRr9M{_4?#vhsvoZN5F9^r8Pf*&)QX4Tc!U3V;SV9= z1$GAlFvic4@!2kO0_nur48DJYk4T&f|GfU`B0kLV)k|LjXxI2O5l`p%>4(jMh&QE* z^W*a``T+iXClwFD@oMXUWU)U!|964Gbo1nNu|JGYJRaM%C*&9iet_?X-Ocu>XOJZB z7sqdzU+}t<$ln{pYcCs$)%*PqiK{fF?2;QVoq+Qovw*T(%9A7AFt zJ-991ZyozL{_Vm30xe!f3(fau#L_T)|D(k3nGYGYxhr_)NO3cP)>t1-M>>zh-}gd%*T(Q>LO5l;8p_X8+~0js-H`(}NL)Y0SRRf0 zfPY9FAhz>w0vqsJ9&U-|=h=Ywg2n!?Moo?;`kyUv0yw%a#zao$sH0`L3v$7A)Eu zKXcA!X!JWs9^Z3B7}d)R;NOeupEj&3#vFdUUHC$Jp8w|j zhfta}tcCbJ>ka+7!jH;RTtDBB=iS0+;<#q=_zll?p@|!b|6a6ru0L-%+e4f`x4(a% z2GZ=3;j)?Pp|EV?YtXEgI*UPPZ zY4qV*V*lJeQQMTZMOusf^D{k}?nRyJT8Qn~hvEK5PmCeVMEm3IXVaQe|Nd1)eI(`! zIv(|aKSCwZAMo}$`x;W@f%2lgFwem8bCb-nqW$wT`L|#r)PpU>JcDS@?BB2L)_Dlt z-<~N>xW7fk`@zh?vgZyM9~BZj1jg5fy)?W1TVJL)*|3-bel5AyuimOf{{&*po}_xxCb4cWN7%Et2*+dJjjVm$g()R*A% ztv|sQ`5X@g@4)S6Qld4bthk52FD~M@gGSiEZ|YVyUk~rEpqVvt@UMVx@DiHqYb2Zh z!~6H(=fBtAh6c^l>t}HLXn4XF(I${+oYbA zR~PjrHcDM`m;>@BS4)lB671(MHP{&fvoH1gvi0G=I9qDdWiFKXJx%IrZf@*%BemmE z@NqS#NX_*#ki#MM?njNWo-eC@o=M^%b|Li4oNTx>Rdv}(4U@aq^TN@zt zgY8X`U*aY8Z|COl>vfl!>oLum=_K{DHs0tzY^DBnw*`J*P3qx;T4A1FTIyEceK3YD zD78g`FY>iN9r*h^K9^~O{Na02bG@V*V@^rk%s!B|ciJKK*zG~ce^@NF{ZD_YyeRen zkA-;6wdI&V3N`5>b;QRYFv-qR=T8iz0j+Ms-{G>DFQ!y&MaRBZ-_NlRUT@@j6J=)% z_TXF|UN0+nsut~vm?Y++>{0S0v@S&rNf&+&m}6+{A2P1vYQZJFfwyUa3d%@198>;zU=}m)Y@0Xyz5H?>p0tn#Cml@FLTNW^Av3vAmeC@9?Ps{6#dWQPYG*mS`nnEzCDOi*?6*zpdmQ z#+e&1j|r9fTSJXpzxS4Y5cyJxz6}^I`G-H)IVE-dnr%^U{2!^g-qzWUm!&>(E*R^hH>762sg7oMrLH<61T~(O zU&Q-sC5%qF<3;?CJp$%cFK%qmB2wz{_lg*o&rp2Ck(z~#T4}{Ygbgw^ZckSF^-dFG z@e+!MsFlBfv1y{x8~pOY&q47Jo!oxo{ZsnOh3}X@D(y1-3!OkdFwdoMkFeJEkwX4a zddl9ns2`zthoup(;D4|5+EUNa9+VC`@ECc?O3xmgN73( z(y!C$c%>5quYdEb!$ODNvq#O%}b(_QJ6-A|yuRNAKAQLJw$eed@{ zb$3#F?~YXScprAvDwM-sdT&t-XiZs88Dcck>S+=j@fNf7ac z&WPuaspta#gLvr&@n^0B`_W0=qqZI9<4T{+&-oPb(jVgWLNnwvEB(23Rn&Kj=k-#- zKMZP8nc@b=OaF)Nhs)CwJWpOf<9h0yrjX8*3sZq6jw0)T3A4+}urPXYz_=e_1 zKWc9qE8W-nm6lse@eP@+@-%mIr6)vP*B(_+`uFmi@H>c>{KJ~NH?`CA72n|5?!5s}1X{beB1sH7`G<1BY(WYFH}Xf#dsQP)~x_Q<<@u zJ$Z??^7SOiKVS_}yR?6j^m{;kYAtH|Bw6p`!n0&;KsUuV{5YSW^>bHxi)(^b=}VO4 z9qgA+(2U2Tq~F7xi~Tj*`AQ>3sO=f5^ud2SXrEjZ-*97$w^ji>!(aX((bcH+Jv~wI z5j@_qzfoVCny&bUWt%LuechFwHM2CBPo-0imq1SE1j#?#-}4o7aHVUR&(z}F6#tO8 z>Y5fedAQ^sMi~lG%A>)|GZ>kF_&C}Y^}7ckzqXtawNZ^cULDs|@elXs2hnj~#Xp=( zZUeqs>295T;78e0@(?{cdeh*+N*C$e4DY|v$NOsJ{=A3$ebMTKdM6Q*muRVZfmi6p z@qYsEYP7rRC;qS5843 zzX6{!%((PTI(Z!Ofxmw|d~=H#7mc2c_r0ae$4r=$MfI$d?v$H>n0pJk-Rxx=ax|5` z+$$CJ7F&q;1@j13GQp-+R=UFJ8Sta`mfJrTm=1p|rL7E8vF5AvjPX-w)=|YXJlj7R z_fP4({0Z z@eI3ak3ha!Gr=ct|I76Z?0PHhT4@mK(dn9bhQLSt$bXOG8+`WmhX1kB?3L!-vS}{o z`f|MYw{ry6-vzPZv<5>WpXJOszO`0oQ}gplJYlG?jHkVHUV_JXXWsb0 ze@8=mpC{^jvESRS+M4)&aeQp-cyF`^P4rI{HYS2iYeCCb7?A&-5BaCPQFpHu{9+B_ z`^0_^v+`OaKgdJy56m}Yly8IeVx50rKZg&^0g-tXFuMN( z)~K{TuSe7I9!k&l8$~@g)nwjA%+Z6VkD!ZHlzx3_80taV%I!;Q4@JE<8>tgs4x^*P zZN&ZN_z?4K-sNn-yXpMHrtoO0Qp-m8KcrVFNFiI}P=819524lJ2ej3i{d9vaBs zl0ejHVpAL8|K@FW@VQ`0r~A=`&#P<%_B zhhXMy)Z=veGg0@0;P_0Bh;-y<=sX0^@gr`f!EdvI*dIU7%8SzAM_OKJUehR5FAaWl zx*r5@FBY8&Ua2hj126b%n&N$(iTOks;g7%`SJ&K9$oxCk!|>C1JQ?yT1^Ec21wX(s z^R#X7V~8##_z30`*uN;`RY}29a6G=>keQ-h2CqeO{HAiNne=#D3GqC5KEA%mOxkZ+ zLhu?KuWM#M6Fj!gM|=ZcS;%iD@~8EB8CWj@Tbu&kub4O(44q`9+8lUdW3&a@4y*;0I8^zGMTD^hv0K% z-i_-yRLJ@z{2Dk$y=O%N^?mkJ@C?jDTrf?5|IbhHduEUKE_nUEO4|$SzD9|eo`SB0L{bK$i z-8}|;M_vwp>ssvGhIcoLj1BTQUW@CyN;R}7%zy6-UA5p<_z#W59PlB>gP9*QhHUKt zzqcpYuKPdKzS5PNIzJWlFdB5Nh9N>{^uIa}aqGLe5xKW?)AA|eE4m-Vi&HI8zu>v> zf7sa4$~feDLn`?1Tgg9c{^LaTGu}!+2=+S+==dgwy*{`;#=5aKv^d~h4$tkmy(ZK& z2cP@)zj$v|#6rz!&gVBAPZE5?wjJikPgXocxeD+XsG)cW_J=UrqIifQmn^8Xx8fl< z-*e54r*eOGD=aB}$P=mA4`Nl8;vsfju*4Ygk>n$ml(9m+bHzijpF`nu4@BiAe^LQQ;G5$UR{>_>;_EbCs^Aub!gZnQYqqDzcmrII=;OmP#pm>PF zFD+2>P4N(WhFZd3T=5Xhmn^QRc!=m-miXQ%9>S`VC9e-l9)kTmn)T9o2=1>Fms)~X zI4t}hSesY30$-qb2<8X+hURj66xYM`Q!X~h5%E6e3AtWI-D8S}fPXMW#Opi+zERr8 z6Bek^vJd<~n8*)3Yhyu84=NsFztJ3g;BLhC{J{IAXraT+C}_Y=5kKVbaZV{Sy1Z+< zXit2+erwF|z1$|^k$lFc+sewLK=OK9e*FxYwB6S{uw=-Yjwp8aK z_?r0qP4BD~@odf+<@;a4Lh%rt-&s@F1&W90*T9zU9bO^gr5uk$><0Y8a(=%x&Yw=$ z;!W+#i~1Ox&#LwD@_`@qG7+!j_zc$u-)~&{U;cJ+t%-L_GF`ny#Q!w_1VeT_7~a9N)J0rPcZ7i}*6OdswCWfnQfVM7#5C=vnzW ze1G6K;N=ltGJw`B(s>BhF6{%!%Z>dZ*dHLygZYP=X9N!+;tO@%+oC>uI{!V7rwr`x zU~HiKL$Kc4yDb%Jsry4PAK=}xE#=EM^S|Gl7@~%>qq!N$lIN)A7EF^(W{C6W_;cHN z9cjs}X?*?$zMqA|JA$uC!uH1=9KZFu-vR3rQ$+lj&u^7=d$jM#LUTOz*6of&ujBdr zMf|kRvktUsTbwu^Uo-O*=ez4X1Yd6*(=hm1#EAVfzwmltDBX#S7T3@F3mqPc`0YgT z_k8?D1G`|pF;;BnW7H4t3O~kC;&{A2&PS`1I6}tbxn9Mp&|yOJJCo5(f`}*5fyGdiKQc`-%3%_hWx(Px9@={t%*GfMNXF9^jXH3cmo(*B@9gg8uAc z9zw5g((hOVn9XkD`SbJO_2qj3VWNHUJ^b^&D_Pd*jO$4^@b$3&!@|NLV*h;4nMX*k z5-jcqU*FsHVW=4uB=*Pm!!fT5)_?u~yWS%ne80MF_7$4Xm&ZW)6WI@9nP@Ma+`_<9 zdH>Z0zMl*FwiLhT{a1V#iuzt&;&^NrMZK3)3Pd(cb`HMA~Cq)QgnPHJd3tEz|M@>0@nAogz(Z!D z|KVeFa?=Pk+gN~)FQ*;SHd5H&);isElN&%n$6eC+YdIeK|P;5!CQ#){b5a|zTFmo&->UH zWd%>ME7<>KvA@`(R+tl=N4#CMZx3%L8|q!*G=9(TZ=477W=}S9{S5v6I8?b7xi`&~ z+9uu(HOux2&F@p^l6A9-rlJFQkhM}5$*4!Cs;!W^Up^ z==2Dw+tl+wf7DNE_KO%D&{gXFM&dOksXv}DVhyL2)YAf*VSGeV7dhD+{gJEGivzsC zTh^BP`gL!LayOTHXn0H1V=pf?*JE1zyNJ|_2e!t1`j_Mx8h`Y~{OzgK%-hY3yC`+H z6RlBicDv*m78(5T{a7UR>>xkN-zFZvKccZ;V4Ra5=2bxlIR3^A!4snw>c?%_&;EGK zFh88qfPZh`wFF*o=(VB_)kvv|+^aRBzJqlm)ECd!Lh=u#BkbS-K1lKpRl3whKJhfM zZ*H^eGV8#9ak12#pZlfwPNA89us&QD{$Xb%|4_Z91NhZE$v>>mt4G$qzlh&65AlzW z6L|STm`myW!-Nl*V;(Leb&1VRRP%W?$v@DO%Yq+zyGt#g*F5^N!@=x-v4b) zur7H*@Dj7k8i8N-lDxyY6^+4vpbqVS{trO|+-cBi?!$&%CQE_ zKZgj-$V19K6F;5z+3$N9CzcO1*FTSw{6ogU{Kn#uijVkSA)m3; zAEggp`ib>-#Ya?+`9>KBl`dERGYurgM|^$so__3B+F|Y+>Rn&)5&7D_q%EtI9$DfU z-K?&7h%2WaQORVb6Q@2P^FK;o^SetW2P!_IQu$ltd|l}kH?PrK#0Pn9hG#(5D=&j@ zQ2Oog3zQB2_rKfMdY+>tdz3bZw)l=gpfocyXO-r?!7Bd9;9^x$O&>EmdnGh?$c zpHiChhS&Y0bg9<6;UB1Ux%xYh@1XdH9o4qN|5)j)qMOKll+vYZuR{$1#Y5bywi@dN zO1~<%f~*fK-MYk5azwnD*V-^c;18^Lh?t`D5sy>)=f>HT&t35jBX?vXA699@ zfiy}Rr?ls(6nZdA>BhIFQ}_<0C%jHVJqD#Wn9h2u{2)t5b0~I>Fs)@`5QC1pW+)%_o+&gaecg2%JBj#iwdZj zs`Nzb(&UPID7;q7`6q9m6a`g$e#B2EX?j8TtuKpV*d58k< ze`tFT#7X|)VbxFCg;c#>1$$#`UjIpJ<*N9H>oFg-Jn%cbzQ>-X6S{xUC@VIX>%nq8 zcgtq)wIMBa&3uJPt#{g(Z!w5Ba{bs|w6WYPZQ(_oU*I+W!#!VUwzFd3&t4Mi1m5tX zeWJ}Dq`yzRe%f^TJ#BE1zMbn~bm((LZqPg7t&id$jGFm7bcuPb)e|@ef_g?$?6d74NWM?^f-QlhREt zpk{Uj#WM^`S%GyGrF(|W*X+Jdl70}IUe3~%AD<-RbG#n?E-*uTmoQ244iA6L(B8IJ zyu-l`Nm`TIigySHtY}t5>6RvAalKLEd9c63`xd>mnwyj^yEa&RH&toG^fa!I^tavx zzK2@(YKm_d+^>PAeV8bDh{9W3wE?>(O1|M|s0^uF%^#Fr`=(LRh^PtM_TZ_c;mydT6~TcCgI$-IPM zQZ4H=rx#ZkKq{bt~a%)d$7{A?m58kIb8TjfD<-832}wrWti}P!24j_GzKxnH=S~0G7n>& zqnpuipe=ax_8i}Y-}+c%yKQ~2W*#JX3FI>xTi2OF8~6Dj{yZPwPaESl+nLm9vf>%i zLX+VauXOnA>6H9j@e8M~PK8Ij(i{(oZl$zk*FAEAMXk(10qPdgz!A=tqsYJQv~qkK^}~ zEtL+u*B0YFBj*o`coXy8d%x;D1ow~6cLl(oP3Ix_d-Nv5pZ1T_c?k9fo|e>xLb~ZZ z1ll;(D%-$cl?1QAo;vFa`qJzlI={d=V6RH|1fG@OY-Tf z*Vo|qBG+T`Y@*?Nk^uj^_garV-ehU3Z)XpM%B8&E@2H9RJIAml4{wfoAbh;);(PIX z5$@4*-5-ME>xXxG!{5Ll#&djqR*zevCXvoVbVhvLyi#lUGkOR=hz4EVX@Zv@`gC`} z$MNqyhWgXivN|8Ze(ZA=2EyN~iTK`uhe9m9E&Pxhi~g7S5%y~u)k)_gu%i!Vi$M5YuoLaYV7Q6&Mf7EJ3 zKA`Rw!R^C;(rD^eL-&i|+|F-P#=;*<_lw{d-?FsvOE=A#fP5+4FM`J| z)fYxl>?z$Zg1@I;LD6)ef$kTx zAMTbu3iYS$M1RZgRO$I65Ff22`df|{XB-@ccvnrKIVa+%}V zN}P}QUTmLB`?o3nA@R=~Dpf{l3&%P1z+2}bxSmF>`~VaWvGH>z-R`0IheiRJ@Ym4!2lj_}vn7Md{;DeC^Bli8Q6ht) z?RCxZjY^5>l-s3>-~(8v7E7nXTPh39%*)OtX~++(B>tY`H6fm9;IDNa0y$Ee)rnN9 z(oN?f_#5M*rJ~+|&O>mYSmht^1|j9e^W^x^{dzO0tz9{^*D%zJr~wuy1@CNGaXgNx zR~eg3h3AwJ?S=2pvA|^1H!m&jFSnoGHE>S1vEzr1TYWyb0}1g~MCUK#3r={yAcd2|n$MnyDJ zaX!rCxm`;_J?etE-f6;*!R6!>D)B=1hhToI?Yt?}poOlv|2;El3iz)Af|uht!Pq@h zXo6h5JL%LzUT0_h3EPqU1E?A{Vj*T?OC3uu{Mac zsykmfKOS|bj#FkU)Vq24Ma08zea|N2!&v%o@iVW7gZ0`@b0@@6o2#F4xNir~1MlTH zQ}oS>r$w7z3Elu}@LlG!0=jCu+I{%3C;BUs! z$<28=jgn&EoA^-hgEzvTVE;>~L#dKRu795D@J#X#><1oSQt=QM+jc^~taykOy#we( ziD%Le;?SKYRCUB#uCGGRYrRMApA(f``%dx?cP*U2yS(HaN=sEd1lI=`TlT4+;V*D?2)Y((@F~)^i(AiOnhv4{icnQTr z{8QhOyp|~*g5&4oJQNQBZ(@27p?C;*GgGCX%#Tz?{JT8;w6>zTMHCO=yb$#WmM9+L zf%`p6^v|xhEh+xeF{!i0TEb&T=OOs-lbTsl z#}P-sqbw4B6UAp+Vhnm%>a3y`@HaXrj?do{9&=S(lPmI{xxeT77{A))i0kG0NbKKP z!8DuSCsD7$ge>St#(u#+Fpt3gBw>L%55eD4<|STVQanVly)|f(^KR(}anP&=eOsaP z5d8OZ$DlsO8O1|PJZ(nzTy!3Sues{X8q|58;vw!eGAFOfiic>p&YVuq-^lS-gV^6r z3(9|Ry@*fpc%VU~CHzO$iu`OI^J!PCsG&je5FBs0y;t!N`8L{8uX~DzxK_Cil^n)A zgd6*D7!K5E27kh3qP_~puYFInME=@R?teu*mpLr2+$G|C_#G*F#24Sw#UlR6W56#L zeCVwS^AJZw4RhwV*Nt5y^5;1ox$(0%{1z69crM2f)+Dx~b{pr5?HnVwapC&4bNPHk zJal0Rf7G9tgWq%g1@Hi&0pxy0@etRR1!8?x)XNatZQlfekz*c0=Ob=fwxhQ?4vxBANfnxp>02O}oSm45(ES4rv<1(wFGia3A1-txQKgA1H2wzE#{-kv>_cz^Ko zIO5@Oxif9Kt=Grk_-{_BP>Qb`BX|PdzR)%df_6*nj5-e&Sp> z8R7=>@5S|^)&=VK{`H4A;$aup1O97VFGKf}n02%#HQTS(%izEH9N&vx*X_yMgJ9N zV{Jm=w4y?=+@4i59Qn&Z;(GWQX3hA@)ggM8Hh%|J7EskN@%{n zU!Qk`ABmSZU%n@t0}$S#nK&N*p8Yjai+PIn!uRh^WJh>v8Tt3%4{QvVV?)Tlwn6NV z|336dFddF*ERN5=`DlTFp3zPG9^)ND`@8;x7^8Tfcnn>wvOm^z9mV~?`5KDbwnF}n z{om^`Oj_OwevWqXdRO@PVEke$j>qS7XfpDh%Q6oUC*t?3*LY+7$wFv8-j!F)c)lWd z2=;q$3evz>Ru%jMGYGeR-QfpT=|7$!-JtFE0N-7n&sWr^2*22vHeM>j#{*x4_t&{0 zW&A8D{2o{%mQ8mb7yFOT;P=agYFHM*cx;~Fkp`L7$9T_F@KgNE*?Ygna1+s=;TVQ; z{`PckMLs?r``dW5{ZN+3EZDBZ{Rueqwss+Yv%eCHB3Hm zJe+@T_^`u{>X^O;5Am4mTNvyX*CEq>PqNv+j@MdWPO~N7^gO{=@clVqYeR?JZfA3B znfpZCONyLwRcNj^@OzOB`nU7oGtv$0@nZhnhE6p)EqDw*UT)EvH2?cioR6D0{==cQ zFh0nIpM{Oksk`k^zi6M}JGg&sT(J)Ab=aBB_l}QWqdydfH zF&85Bf=@)%R{JU4qbb={Xf8A#^XsE#WEjv$>Y(19^zMj*)a#ylQFAM6seAWs0sqg+ zQs+KxiS@A(QXg<{Ndq(UW%GI)^91D5Fy@qgR_UVGs6 z6m4DudcDv30FSkJy>I89`qVWcV?WOgnQw@=it+7sdk^N}@&0M}f5fZ8@a>x@c!y(0 zYH_UJ@Rxsh*v^v59Vj9Bhc*4JsdBG|QadcFNdtC;2`^7R-w_LHp`LM^;2Bsm-;?b; zNAeK9C+xtRZWP=`APnvqnRVE{7^~q4(#{BHR3pa$2=rF~g{-1RQ9t9a--DrdQ`A(RDz`s8)Ql{Ak#qi^AH+*DPx!TFNNql~IrUlr zPfxTLe#cihc!Ez}DEWs;iOuQ5+hxS>EBCjkHBGCYt(F@3t+c7gM%H4yQScPn*PpFY zvp@et2qUtqkcbfq>= zDcM8$N%&QJNUb9kAF=!SJ>=gjUGBhb`ZQ4S5hc=Zz&}^%6$7rqzf$oLn%5;dcU@Oc=6H&Ccs2O|E&d-~ zqQ;oLsK=zXFX+1q{&`Aw3Ez(XQ|YQ5wotLMif^dcb|cnfmF^y}jym;I`gfbvSWi&; zTF?sGdqC-cj!P-@iPC+#FQUr-<2O-x?mYTjM)3^?*38CwztUUxW+J|(^yBksGrj7MKD5Ri!-+F~1Ni*26jG{4#Gc^8J-gDvb4%vWjOIQ!j>wz>fmoTaAC; zV#@^hUn$N0zfS#>E;nEpEs0m!_QC-0KT3}>^rpwVl`efX9Q7ChPyJWl;B>LlKjI@MvO1 zek1$imUlR(Stse5b9QR9KdaUBh~@QX!9(0 zYqS+PZc0ZzT&ET9s`!STOO|SNLzG@UWR5mEKeMV|NWflL>edQpn$Au`#KbTGE zu9+^2l70`%4|UXPz;B1gD*y4C+E(8v>Gx2)j!{dpReVG2zxA|XCQ9!sR!94R`VyRP zhBZSi!+c21;sZ!eR$K*;^hR%L(J388#eBo zApIU%H``^H8K?M$Is38<>pLj@XIGlxiM8Sx2IciMM0|{tehH z_b2q}_ef(i`)FE!s+Hg)E?8GLj=hjbYh%4d{DNZu0p^q8QLi-T2i7d)E%^hVPqFYP z^OCwv>lpIxsdRJCNyrCPy4SBrYLl&ahR0XN(Xkv)5&z`1DBJnq;rc5*bj}F)MR`hI z!M^`c#77j*!1X9z4p#b>>j3zTHAnnsv&J!tl&XCx%~WZt!o4VPZ8Nz&=xcZQIV&Ch zwkutK*Hmuj{E9A@6wmOmVQ176S33M6Jm5w&&E@ef=lkb9Z;$$oN{{&%OsS=tihOuJ zpDMN5(Uu3sT#h|*en02`^q8bH=TkTh*7*nK0YXpuBR|5(ypG7PFIC2mp5{}!)=*#i z@PY&%!SVTz>8;5rmvVW2!ZC?+Gkion4b0cYd}oN04{F%!d<1)Po6Tv7K9=BjlPcm( zqYN!*>nGjsf%Dh7eqF z5AajOex9exG~xIq_@OG~dL)Q0Pi!pwk+{#~`nTI&G!ow*_G`aXz60W|jYNOXee#Y* z9WlOY$nj9TZ{^WPcZNT7L*ZY+IlE&gg~IQ!f#5UP6P@EV<%=~C@om2U+55ZEqS0=` zzk<&p;#LG*&2tssXU<7J{;4OG3UC$oi^pFMrTS3yeJ&i&74h{Cw*9EKos00Z;B(mR zF#vv<^#$L@InMV224TM9oXdR+>q0$;VD9D2@n(&Ambb%)QR%Br!ry}9y-g;KpoPtx z#CU;Y@YczrsNe=iQQw1euFuRGLrtqV3SNW95M!2%qZM)W1h2vE#d=*Nm@WswYw$TH zZ<JRcd5xbPKA7J7=$g0rY1=@W9;J8)_Tw1)#7UmV{Q0#z5$N~r zB)kLjYdy+D&{KP*nHOpG!V&%%orurBce!Z1KOAvB$4mdLmZg#Z#phg`&iu$kha}Xi zIN^B^g}8A=c+t;>AF3n#I=aIjzcjpX7or~00r~GUlCOHv0KCHqd&!sc`L<44NH^S+ zX1;lDxShdA)V(>M5>jm?-_P%#f@SBUAC1mG@crpC3^n8hY=k%9^Y!)2TpCM24%z^)ouDOSL%?`5>&#NeZk9eKd?5|mf-&BzI6JMhh zpHnbi%gg>D{-xFNPk}#DIXNEAsn@%bOq)pQU7M2WR$^KCKIdmD4o;>8Ic4N{IA_lM zUeCg1F30}Tx7;H@F2N_@8Ik4$H8eBufP2u&S{NSPNU-{3-F(v<$1UI{uHvL zU+9O>i(@?0vUeGw>y1Jo{s*$=bKVOK^_{<`Lf4dLw)W^9h&xO-8=| zweSVFzQQ+jKK@epi5Wr5>74ascvijO`~=n`>+t@Lr6L_(2(R#4k170|^EK!rw1(Kf z;pg6`!bdOH0s+P3g3V^1(ivOhCkzdgLmjPD;oJo#Y0S)6N&!F_p*8J^yiXo@Jk#|Kd# zE}Gv5cvi!2QSlI9*~GsC?^5xT=(NL@)?QToF-kkYLnT7-5Ci9eF)XNfh}=c(Q8RR3 z@o6L zO~W6e;UEXBPi~-I*CaeF_b<=de_eP8zW;AMaG;xAbRL5B!Vma+f5k(b8sZ2)4aGyO zeCY_@N#`MWea(K~7s4-cK22&2U1O22@zMKb@H>-#e|9^?Lri?^fF3Z4hj1S0K$Z8M z;rz75?|1(F9W4|OvC75)^+Tt!`Ps+*5X?ukf24Q__S+a!_#df<<~cm`4r$kP9)jPe zNeOoFAJY9Hn8&M<42CpN=OK9iK3uYc|LYO)gJ8|PN^16D@qgg=)q-;1TjCBe-^2X} zv_lJR=}Db~oNp6-xrq%`b3VZ1kL!Q662!3AkJFJFNmiT8d zZ@_*JUoU1D{V;g^#STuF^TF?j$g9@iPt$~#;P>9bADOEh;x|MlRdhX4KF%|poY^b%}um*gkEEN_5%-c-r=a(#CI?%P!;E=`j&N^<_0(KGzw-IFv8`$DUh#*J z{6v>2$WQm0Wqf}4XDh_t#UDcI>20Gz$<2+3yz+zvs%#MOzch0k~q-4_1J%tOS= z_U7Db2j*S;A%quj_|X>gqZ$8wAN>?Aw1HcBv`G z_Cf>NgD;O2z5?URbkwaQ815L^9-p7!xgFsz70usAKZ?4hme)F=A8DioRp*k88K`%~>%IQm8OW-a|G>ip_OdsBPz-wVHSdO7-K zEa@hi^YMGncB3W(yU6{*bE>A-yMmwSEZgTC^3Y*j35*_pU#@4tnO!NVW?MNv{=Gf# z!oVPg3ZKB=DOjlsY291?)&WDDJAo%^COiqB@5rWY>1n~n2Jf+;NgLz`8_M?ibMANY zV_IEkzW$bh?@aA!+bQNDWIP0p`?oy>dDIro`)A(J7Wp?#{+`GD^uD1~&Lcp^DCbX>zXbss!v)Y zcR3!u{|-4fpqU+9<@(|CK=y+eJlILL$K&H-r#gsf*fS3*`Mi|HLGahImG=+l%Pk^; z5Ra(zAAfMj^d^n4ek>>VBkynBRe|svF3bBX`FXE8CiDj>CFhUx^8?2OfZr~G{rw<* z4G|6eXziq;^8VuE<9tE7XN?F z2j{!uig@1JEdG7w9g6z6(Xsq5vQXP7`Ecel@ms56g(uCjO{arrL9r1zPhW6^@f%V;X@Dj6Sdxg(=(oc^~@UvJf zI;4IT zj0aEn8HH3{m~YdbOR6XpYfZ2cxftOG-Zx0AG>Iq8`g-wtTl0blE>4M_crJ``_;t1#bfA9F-O|;$jR`7 z$o%F==m}-;4jdn^wqvZJ*$-uR#aRabP}=N5M|}1E8O%R0|1;Dw%itY&|N3s#`)BYu z+ke=d;;%oJ?Xe%jpHXf!BIt+oCS(1ypa;FUQo!IFxL?aPyHbWeea(xWbh9?}-vg^6 zhFsa;AMywLz|Yyo;2&nC_|l6%uq?t{kjJ0r-s(UI8yft>kB>Eods6ZF;Cr~_^jgS2 zh8eo-YJZwkqmRKqaLhe9c9_90Ft61tb%LSS7SpI^hgd@+9EkqH(+zzk-AtqVBpBMu z-i-cqvkd-Wbe5THv*#Q9L&?%+_?Iq04nyZ3n6L0FzS7VwKLz1_S;t!D12^i|p}8KL z4eg#%mp0k&F!bo_^=MdG>7OCrpK8|t?<47-A$o3jL)1TJ8{c2Ou@T0{Aw!RN8iIbU z#|?eo6CSylrwm=Te^b0)&KtVnx@M@^x?*Tv$L}6^)6m~H+@X5WVge4Q3dRXQ&83I*g-JcJir#Pv}6jO#hXQ9yI!a$% z6%XxCH{+ZO6~9N$M{e@MBbZOv~rx%Ew821yhlpExU!G>wNiY0+0Xz=tc{HIrlQHP;;hy8b>(7!_I^HnEc{-pH5rK8|+tn}G-Luh8A;vptn z>`yUUl6cyo;rFEUn$p#&K$6mnPNCjFt$1YMJ;xuZ`J5vw`0W%z0p-t6|+ABN7KjdA%LECy>=N&j^_10;F<~>#M51lu!*A}B6 z1?Q5u-}~N|Yqgv_ihtNNW|ih}J4*6hT%YZ+f2DSPrG7s#|L~|4{1c`t{sH~2Q8S_V zhZ~I-!S_t@4$+jNZT&;(3jT3giSLny-vjEs&_i13B|W3G1FLi%f#bQ!%g1O-(Z7dd z*Zd#+wY3)CCmH-hgm*t}=~JZ-jqags-80GHAHb(+T~;c6=8ReE7q9fL+;z0|0g886 zf3KR>*FkB=;@;Y;hZ7CnpY8?b01=MOlZt0ko7)rL$^+NM%2 ztt|M3-@L=55l>CsY$qCi4+Za>HNE&S!SHt&WVORIXX2go`1jDppDtt6a%+^XYiQ?*aLHQ=v4)Gc?<^DUka!VgAMb!&;B5jDVM2 zl}>FjJz%oC;vG&t@k#goI?mu9cus5ILGcesH50XECx;mR568FvtzB_f{6o7x?`c-S z19I3K*LI4B**49NEdLDWe6sjI^eE#^dG7X<`a_PtbH6h0xSj?N@yOa0Je}elIR4iD zQ4fQUV87a=jY{9mXGN~f6z|Y|Xn87COlg}trLo@ZF8LqMPuT^PAd3iHbAHWY!yjO% z6#r1pqY(InZU!GwxqCj!Y}L)+A3DCyjrwz?L)-n-1|@gpe4~l;5wDUyX}KFJjs7C& zuijDoB$5u)FlTJFrPnjtBHw!obG%;WHs7klFQyfa?;iSH4>o6v?N2S&G|aJ`vI+5h z2lJX{QK%oRYw!voT_&QQR_Pf|<0!e2()nMHf}gbF8M+@F4nG8?``;Rhn!7p%Z*V(n zFg2f4-_UU7euxlC)N|aiZcI(mu7Iz}B^M ze)A1~R%u4J-zmP~*O=ziDY&-5GYn5_LcZW3c>T~3{sz7Bp$7tZh~Ikt@J2LkknaD$ zIUV*R>()WM{iS?|<^(gWd2`|F={m%#L!arW|4ugi*p(?{kt{*d7 z=`VueXRr6i;QTe#z(kLAUV(Mg-rAt?^?n!3FBBhXMop{EJMcU8<^uS+)zSF~ey8nN zr_rhJCgC4ApL)BGiB=yl{m0X!Y3*E0~$D+Xfxn56$a$Acf;3!tKXOp-5S z&w(||18FUI2i`WHlRkws>OL?~^1~ee<@rH{y8+@a!13OMm$fOWb%30I$xr&%fuDuH z@F(1(WN&0WD(d4e*Awv!ZS&y<qXVUu ztuFo{tOq^n1b)<4G@qmX<-5?Cw>~nSIey){Q8)N^D9z)2+o@_f{4PLDL33E!i)Nat z$#`I<<<8mOh*wuNbgplG;dxV4_yUf1N81m8$Go?U2iCb84#MwM5zYDKdjlfC6IGG% z#M&icDC*z6@O)T>^>3VZeA95mn{>_j)A7qkf?x2Izeh|$PnYvVu~e%VR_f6L#b7}e%8+m`!-}6p;5B;0@xPtsX z`VnXqrzXK4ue|I(*L$ulmVmnZa@gM_jpxvnC&kn84rTFvT&(fxEm!B!JC(q zMEGGB#q-0Y@%wzJWg_a0|B&m$=l8X5BK_E3M8+eJuY~!D6z^3; zcmv)(^BQ+&6_&r}@29&afxj!ne2m7=zE zx?cpJzaqyHY5scMAA+w3_ZGeOGr#=4Fd8cp=+FB3g>T^J%f<`w@UO@x_apNe=QhM4 zN1j)<&(G7gduP%E*Sx|z^8IADdj|Y5bRL5Dug(7Hcpm9I1pj_gh3Ry`!&07ie7^RL zoJR4Jb7MX|TjTMSdS@zqJ(ElBXFlGj3scdbHb4vx&PJF&0o=<;tKc%Pjg_x2>2^}&1P00<%N~`K+9pYGW9dZv(X>I!JIJy z^Ou>Qzzf{M{JV;I^t%zXJ?UdM=gtvZGSlO+@E7}teEl=Tq3fA@rbfb_?-Tqe*t4{_ zIdAo7td~D#^YPeke@hYWF?9I&2d;Of)1S_x)-VSC`0r)^UrxxTQr%-Itn53E|D#Xa zUYeX9i+bEQ!bflqh?KXnbb7#R;T_mdg8e3v{(U990rMc!qhe{+yqCgHTpY83Mo*4K z@7x!{D~x@z7SFaAYC{ z2ktjf=*BooU#xhDh%2M0<+Xb_KT(AF0j=HFpMITwkj>s0>TmEEbq<~N)_5&q$CA1CAe-oNVr=BlCMAx3Vup%s0e8T>+`jVmBj4jGye#t%xo+JuH21&oJ*4vx%qRNKcL0B+^AP;LX|vh^{j3!aQM8OB z@(YTG;Cj^(HaZW%G5+Yej)>RlJOt}8g`Fs>oAQT9UFis(OYsmXg%DqFuk#T6d>NDK zfPT;Cg$LmE9e@7x(OE-ZUFblKx1Y)8=P5t0*iT||^l9-=;OE`0+4jiKo#N{)p3fmg z94P$0;vtxKn2}%c5WO4Op`Kgsm%;NH_UG82touXo`{>UpcIeN2O!xmTc z70usIFJ=e7pTojGaKDcoWo=QvsPhm!A7&mQeepr@gWx&Xav$`%u6@AJ_hW6~k)rp@ z;Q7|yWo+QLlP&%SJina3p1+@kd|Wv46Z18{5F1K(nIW2=$*YH0)1(c$KLpR`e%V_i zKbA}l{ND&4@Yb;{32Q$ zb)@V?iigPR?@R?Nt(E*K^ABCeyP#fI{2`=1AN3;e&sfENKH?YgeujziSn2){oUh&g zcM!E*v|RGntUYcu1b??oH0MiyE@}e57F+Wd*KiF}n5%PK5KSSpuDqRVo-k%mgTT1>QF<%Rs`9S<3 zq+b2S`Ie|bnrr0yam15SD@5yZlbrEIB`%Jme3|z2X-mt7G7n)X`Q`3I+tbzH$^YfM4+Yjg-vRxDgoh9wz@k+r z>YKtmgwA`^-_e;$JLvr~IR6~*B#e@qO~mIqKQQ@x5Ae?8u)Ra__Z7DEq#N%?8^`C> ztq1ZOIuF4)*DtZ%X_k42j3?gTQgy@N$uyA1Bl99AjvrLXBYqH^?>05idQtI_ePnz5 zoyu=}!EZBMcmo~}s}p+CoA*8Bdh++%tj7ARYd6t+%w4MVpoYF(_{Zjd$)%_O0aQ!<>!Xdj+tgY zzrr`Tjcr3Ws<0nKUEx2Nml;^lU#<^dgF{_gqyKkxxu0>oTJLHt;jiw)$A@~16Fo(*@^uwv5LC7f_$P(^2-H zk1s8=F7lmraz6O{eu)hNUuZ4&Bj+2lGHTPKdllt;v%f;jBZ8k{IpG~Jr!rluWFk}P zGBQ4yS@Nh6NYO4O`FMnn$luiubMm6b_$_m!CJpl~!ut#VkHVUBm@no8h2(zb`~Cgx zDnw%o@cv1D_+4&K@+g&$x5w)hQ{kQ-@F24kUW}g?zdE_mfT9-i{^Y+O(9Huqq`zkI z`iAqV|GacVf6I@;J77$kTCQ=S`pzH3FM>a>vc&}q>RaIn`1op$a--g{&pBU@@QkBY zH_j7&V)wK7czDc(x2{5;Y;NKE==FmC=B)OBANJ)e&VTdy%ovOQ6)n$Y@p@UtS9^TE z>LhrBO6-SdIz7M>^WkH{M=)Qp%;bsn)FIJ)jNbh`@qEnY?d$s==7IX9bc3Jx9`Awp z;2z;Sc>jtP_oSvFI}CoJ>0~cDd4H3kBllMUpS@Nz@6)C~y(wk!3LM`q6Yukz64kKA zP8H4DOOEvcUpUXutzP(|A3O69%%eGK{x7T3k|ps5PZ1DS6ZxiT22U~OY%SFPL>szo zLw_1ud#s^@=LXP=4}%TOe!y-!yBmB$&q#mTus<}5`2k+v4t-b)^;-3D{1f3vxI{a0 zqXv60Wbt~J=NFrkeaNG#Qx?Zkc)c}!i5u!2@@Db9!Z{$Y1Mq9O3*Mn0c={A=L>EVL zb2ymEJOaO;AK!9B%y45SujQEObXe;|xjv@A|Dmq%6OLtEX!qK&hMtz~g8qt)4E~{` zw+sA#ie&P+;ph@kHqHw+%)in~45pJfc*;ZOm4>X~Xb{2{_CI8ctu0QsD+ z@BM1vT^q*9+MoBa^cg3qwH@RZ`|6}kEivDP&@m22JdjPeRcHUY;I_uVKu3E`wj;GFv6*p^w9n7=Rjlq=-Y|G z2G7v#GIJo{xr4b@^pcTXhx*=@PO6KuU=rj=o93~f^>h(5KK{uweq@ah(fdM)XnAv$$s z9q@aqf5xD@brC=L%lLcd+YY*`{uyUGH$Z;|)juQmqK5FqRsA#ApZLt%e~iBm$={ex zTt91Q?)Tz);F6)=4Q+~^&DRZW+xRryzBJn4A<`QCgLsqTBR+&22hXhZ>1Ia|Z&!T8 z=hg>NFQ)X+jyaUtLh%sOduCFB<4PwDNds4}{3Mn{?Sa3f;v;6I>_p9^(ynW^qkoFx zBRZyUK|d;`Z=TyoTdFG_qS?!Jv~{V{#R{*XyZICk5#hd)Yz8Tv)pQy8quv_tMm{I- zN=rq&NbwLM3l`GM*-E<}m`6|EDBbD>`qjE9-eHhc3OW1_FLAj^BKSG=`JKo(@Uu!^ z*)yHeFDf1JdJ4VzsWkg@YOacR;QE#1W=by)9Z%mzD1GF{NX*Zb&O9<0e2L;Aes$`H z{DsoD-}OYkMd@X;yU_96ihuZCqXQ*6Dm~V*H68F)d;|BeUeiqJhBF(Y&O~YEgO9 zq58`AT6`a+9S%O#I*(TR{H@#YBvib^gkqObBcL?sOVOTL#d5q>V~^%g zi+F9}>lnii!sFI-?bYTOsZZs86sFQswDl1&lJB1p)D5-slQn0I2h3;Ccd!flt7@Y! zMN2&`*JOR|K3Q8nL)Tmb8Sgb&J8p^=egJa-viTCL9ebtwDR9k|*XdX-6?_BNzVh!K zSr?_Pouv4O&Hm``5Uk%1%s(7@HcpGHsQWXpe|VG72(9ARNZDWZ7hlqNsP>_c?ytc8 zFRYJ;Yr`8WzF}jxP_2Hj(##+HT}$bK_6@Zb2PR2gjWA8SVN)PC^DX_qt(a1+#llr_dktVHi?qSG3mN&yc-TWbIhnBW{Ao3Bq z|HIe1x3rV@`yroL(#-w{XY-bUA6Yo^PZ?5Q*2mS6f+qHq`bds1`3|zh{8I4{&yp+A z#1lOvpThax+kcfqKY7JFRIHBvG?kTJH=?-sIq-Uc@3{}f|DgHFig%d4q##+eQu;u- zd}RB+o8(tGUs7&aZVH~Oc!&HGerk`vJMh|wYq;lIeZm~NtK_HH4`SVj*ILK|r9Ym1 zqOEVG^tY6|s5$Cl@DMMx8(_9|&HMK{`=VCaRp~7)Piu2-g&E&}llD`a*QtFD$I=mR zGT-;~M7>J$oCjy_3NMk=Iut!{8s>0pp81l1Z9~b%x30k-yqq(bT<$A=Au477`YS8l zd}Ln=uA_9=pm1vYM)3>{2lb$OOO<|Kt2=nLV98H2zrZ{L=3Ite9@+{0ppV6I3t((!~48=DD%xa8$ zw96Fp zCzo=qMJH$Jn)6w=|EfhZy6F4^ubBeB*Py<6_0Ksz%l%}oqzB61b3AlUpPJ}@6)3;Y z>&YUfT6E%FfE+K^aBWyti{3;9NPeEzh)uKnX<2Sv^BS?|%K)+)?=Roy7&rT49(v}7 zeB?6txsTO4?J%RivaWgk_@rns6**Z;@^P#$_p3`&HC^-X9XV8=E^VnP`@`EGRk0Dd z*eHE?SY!CD){y<@{ke3wDGmEs-Ow9KwLm>fb>Tk{kI*XhYDN8T`5OA=j!?uKeI@_M zIZv*)x}WJ|XzuUT!^=nVhwSmcIj$4kPOT<90qd1#!{C>#YhHtQEZL1_jIS#BW!5EH z_kf>;w`g87yQlO*e*ka1{}NDN7^_Px@_a<=>^FqwxAlt&Bi`d!@9#22pg*RYG1K@;Q&UkF^KT z0eY7IQ}blabPYYtgegWXg0BzK^%>IdK844{(B?#C5Kx zpij9LNWTn@_49o7U!VDOE7U>qtQdN=OAU;&84p6?Igd=^Ow2H=1}o} zYz=*V-E73eY=n>CIKZeMvuKZ(uKE1~FJ+8BYvBR-eRwG@1^tDsoRh^IcCIsL8V@$ zalGrm5`EJmuO^^}S}ECoo=+B-lK|$VB+uu>k7T}o0?o58DdU5$IrA80`|ExY%$FPr zP5|#$Tz(JNfZjCb?-!T%HP;i=8J>V1sl{acuz$*&QVI0;!J=|L*iT|aPy(&DE-L*b z_A1>}BX{)PK}3?8ieL-2f${Vj$b z&oB2M$Kcw0OrR@&);&%b}abOP<{l27{e@cy;D76(7nywVSc$EfX+nKbTu9_eqy z@jdUj8OUelVSfzC7rs9@omQ-{lnWO5&2f$Nk|ggNz4H#7Hx{Mqd@$Nv!nvoZJC7maz-C-ED=c%o~5F_b^} zV>Yj?MrZv?&HjR4#L4&B%!V@$kWwfX^QU*&JeHY{nD!-xijR9M{t?`-V^{82Z~<>{ zd{xNTcPDZSiicocqCCY=owl!pSK$5{)tqB!Zqb)=zVLjdphei9DlbIi{Ve@J;%+|^ z{-Hvic{KK)C@Nd(neZ1I-^_x4Q55R!o*4W?@SjnrKT|wJ>#b4Lzm(!3{vH^G9#*