diff --git a/.eslintrc.js b/.eslintrc.js index 552112827..9952fe2a0 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -37,7 +37,7 @@ module.exports = { devDependencies: [ '**/*.test.ts', '**/*.spec.ts', - '**/__integrationtests__/*', + 'tests/**/*', '**/webpack.config.js', ], }, @@ -142,7 +142,7 @@ module.exports = { 'jsdoc/check-tag-names': [ 'warn', { - definedTags: ['group', 'packageDocumentation'], + definedTags: ['packageDocumentation'], }, ], '@typescript-eslint/no-var-requires': 'off', @@ -152,14 +152,6 @@ module.exports = { 'no-console': 'off', }, }, - { - files: ['**/__integrationtests__/*.ts', '**/TestUtils.ts'], - rules: { - 'import/extensions': 'off', - 'jsdoc/require-jsdoc': 'off', - 'no-console': 'off', - }, - }, { files: ['**/augment-api/src/interfaces/**/*.ts'], rules: { @@ -167,16 +159,13 @@ module.exports = { }, }, { - files: ['tests/*'], + files: ['tests/**/*'], rules: { + 'import/extensions': 'off', + 'jsdoc/require-jsdoc': 'off', 'no-console': 'off', '@typescript-eslint/explicit-function-return-type': 'off', - 'import/no-extraneous-dependencies': [ - 'error', - { - devDependencies: ['tests/*', 'tests/bundle.spec.ts'], - }, - ], + 'import/no-extraneous-dependencies': 'off' }, }, ], diff --git a/.github/workflows/test-node-candidate.yml b/.github/workflows/test-node-candidate.yml index 8e933834f..47e249598 100644 --- a/.github/workflows/test-node-candidate.yml +++ b/.github/workflows/test-node-candidate.yml @@ -90,7 +90,7 @@ jobs: - name: run integration tests timeout-minutes: 60 - run: yarn test:integration:ci + run: yarn test:integration -b bundle_cache: runs-on: ubuntu-latest diff --git a/.github/workflows/tests-polkadot-deps.yml b/.github/workflows/tests-polkadot-deps.yml index 837030d49..ce47e76b5 100644 --- a/.github/workflows/tests-polkadot-deps.yml +++ b/.github/workflows/tests-polkadot-deps.yml @@ -122,9 +122,13 @@ jobs: with: image: ${{ env.TESTCONTAINERS_WATCHER_IMG }} - - name: run integration tests + - name: run integration tests (cjs) timeout-minutes: 60 - run: yarn test:integration:ci + run: yarn test:integration -b + + - name: run integration tests (esm) + timeout-minutes: 60 + run: yarn test:integration:esm -b create-issue: runs-on: ubuntu-latest diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 626adea2b..20904ac9d 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -118,8 +118,11 @@ jobs: strategy: matrix: - image: ['latest-master', 'latest-develop', 'latest'] - required: ['optional'] + image: ['latest'] + required: ['required'] + include: + - image: 'latest-develop' + required: 'optional' continue-on-error: ${{ matrix.required == 'optional' }} @@ -161,9 +164,14 @@ jobs: with: image: ${{ env.TESTCONTAINERS_WATCHER_IMG }} - - name: run integration tests + - name: run integration tests (cjs) timeout-minutes: 60 - run: yarn test:integration:ci + run: yarn test:integration -b + + - name: run integration tests (esm) + timeout-minutes: 60 + run: yarn test:integration:esm -b + bundle_cache: runs-on: ubuntu-latest @@ -193,11 +201,11 @@ jobs: needs: [cache_imgs, bundle_cache] strategy: matrix: - image: ['latest-master', 'latest'] - required: ['optional'] + image: ['latest'] + required: ['required'] include: - image: 'latest-develop' - required: 'required' + required: 'optional' continue-on-error: ${{ matrix.required == 'optional' }} steps: diff --git a/babel.config.json b/babel.config.json index c99be6aa9..509e22c8c 100644 --- a/babel.config.json +++ b/babel.config.json @@ -3,7 +3,8 @@ [ "@babel/preset-env", { - "modules": "commonjs" + "modules": "commonjs", + "targets": {"node": "current"} } ] ] diff --git a/jest-setup/setup.js b/jest-setup/setup.js deleted file mode 100644 index ecf272898..000000000 --- a/jest-setup/setup.js +++ /dev/null @@ -1,6 +0,0 @@ -import { cryptoWaitReady } from '@polkadot/util-crypto' -export {} - -beforeAll(async () => { - await cryptoWaitReady() -}) diff --git a/jest.config.js b/jest.config.js index 64f0f026e..40c42c9e7 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,12 +1,18 @@ -module.exports = { - preset: 'ts-jest', +const common = { testEnvironment: 'node', clearMocks: true, - runner: 'groups', - // Parachain block time is 12s - testTimeout: 15000, - setupFilesAfterEnv: ['../jest-setup/setup.js'], + setupFilesAfterEnv: ['/tests/jest.setup.js'], transformIgnorePatterns: ['/node_modules/(?!@polkadot|@babel/runtime/helpers/esm/)'], + transform: { + "\\.js$": ["babel-jest", { root: './' }], + "\\.ts$": "ts-jest" + }, + resolver: "ts-jest-resolver", + moduleDirectories: [ + "node_modules", + "packages/*/src" + ], + coverageDirectory: 'coverage', coverageThreshold: { global: { branches: 70, @@ -15,37 +21,44 @@ module.exports = { statements: 80, }, }, - transform: { - "\\.js$": "babel-jest", - "\\.ts$": "ts-jest" - }, collectCoverageFrom: [ - '**/*/src/**/*.ts', - '!**/index.ts', - '!**/__integrationtests__/**', - '!**/__mocks__/**', - '!**/__tests__/**', - '!**/lib/**', - '!**/test/**', - '!**/kilt/*', - '!**/types/**/*', - '!**/SDKErrors.ts', - '!utils/src/json-schema/*', - '!testing/**', - '!augment-api/**', - '!type-definitions/**', - '!**/*.chain.ts', - '!did/src/Did.chain.ts', - '!did/src/Did.rpc.ts', - '!did/src/Did.utils.ts', - '!utils/src/jsonabc.ts', - '!core/src/utils.ts', + 'packages/*/src/**', ], - resolver: "ts-jest-resolver", - rootDir: 'packages', - coverageDirectory: 'coverage', - moduleDirectories: [ - "node_modules", - "packages/*/src" + coveragePathIgnorePatterns: [ + // test and library code + '/node_modules/', + '/lib/', + '/tests/', + // not properly testable + 'packages/types/', + 'packages/augment-api/', + 'packages/type-definitions/', + 'packages/core/src/kilt/', + 'index.ts', + 'types.ts', + '.chain.ts', + 'SDKErrors.ts', + 'Did.rpc.ts', + 'packages/core/src/utils.ts', + // third party code copied to this repo + 'packages/utils/src/json-schema/', + 'jsonabc.ts', + ], +} + +module.exports = { + ...common, + testTimeout: 5000, + projects: [ + { + ...common, + displayName: 'unit', + roots: ['/packages'], + }, + { + ...common, + displayName: 'breaking', + roots: ['/tests/breakingChanges'], + }, ] } diff --git a/package.json b/package.json index 6d30d27b0..1040f2f9c 100644 --- a/package.json +++ b/package.json @@ -11,23 +11,24 @@ "build": "yarn workspaces foreach -p -t --exclude '{root-workspace}' run build", "build:docs": "typedoc --theme default --out docs/api --tsconfig tsconfig.docs.json && touch docs/.nojekyll", "bundle": "yarn workspace @kiltprotocol/sdk-js run bundle", - "clean": "rimraf tests/dist && yarn workspaces foreach -p --exclude '{root-workspace}' run clean", + "clean": "rimraf tests/bundle/dist && rimraf tests/integration/dist && yarn workspaces foreach -p --exclude '{root-workspace}' run clean", "clean:docs": "rimraf docs/api", "prepublish": "yarn workspaces foreach -p --no-private exec cp -f ../../LICENSE .", "publish": "yarn workspaces foreach -pt --no-private npm publish", - "lint": "eslint packages --format=codeframe", + "lint": "eslint packages tests --format=codeframe", "lint:fix": "yarn lint --fix", "set:version": "npm version --no-git-tag-version --no-workspaces-update --workspaces --include-workspace-root", "style": "prettier -l packages", "style:fix": "yarn style --write", - "test": "jest --coverage --group=unit", - "test:breaking": "jest --group=breaking", + "test": "jest --coverage --selectProjects=unit", + "test:breaking": "jest --selectProjects=breaking", "test:ci": "yarn test --ci --forceExit", - "test:integration": "jest --group=integration -w 3 --testTimeout=30000", - "test:integration:ci": "jest --group=integration -b -w 3 --testTimeout=60000", + "test:integration": "jest -c tests/integration/jest.config.integration.js", + "build:esm-tests": "rimraf tests/integration/dist && tsc -p tests/integration/tsconfig.esm.json && echo '{\"type\":\"module\"}' > tests/integration/dist/package.json", + "test:integration:esm": "yarn build:esm-tests && yarn node --experimental-vm-modules $(yarn bin jest) -c tests/integration/jest.config.integration.esm.js", "test:integration:latest-develop": "TESTCONTAINERS_NODE_IMG=kiltprotocol/mashnet-node:latest-develop yarn test:integration", "test:watch": "yarn test --watch", - "test:bundle": "tsc -p tests/tsconfig.json && yarn ./tests playwright test --config playwright.config.ts", + "test:bundle": "tsc -p tests/bundle/tsconfig.json && yarn ./tests/bundle playwright test --config playwright.config.ts", "test:ci:bundle": "yarn test:ci:bundle:preparation && yarn test:bundle", "test:ci:bundle:preparation": "yarn playwright install-deps && yarn playwright install chromium" }, @@ -47,7 +48,7 @@ "@commitlint/cli": "^9.0.1", "@commitlint/config-conventional": "^9.0.1", "@playwright/test": "^1.21.1", - "@types/jest": "^27.4.0", + "@types/jest": "^29.5.3", "@typescript-eslint/eslint-plugin": "^5.7.0", "@typescript-eslint/parser": "^5.7.0", "eslint": "^7.32.0", @@ -58,18 +59,15 @@ "eslint-plugin-license-header": "^0.2.1", "eslint-plugin-prettier": "^3.4.1", "husky": "^4.2.5", - "jest": "^27.4.7", - "jest-docblock": "^27.4.0", - "jest-runner": "^27.4.6", - "jest-runner-groups": "^2.1.0", + "jest": "^29.6.1", "prettier": "^2.4.1", "rimraf": "^3.0.2", "testcontainers": "^9.0.0", - "ts-jest": "^27.1.2", - "ts-jest-resolver": "^2.0.0", - "typedoc": "^0.22.15", + "ts-jest": "^29.1.1", + "ts-jest-resolver": "^2.0.1", + "typedoc": "^0.23.0", "typescript": "^4.8.3" }, - "version": "0.33.1", + "version": "0.34.0", "packageManager": "yarn@3.3.1" } diff --git a/packages/asset-did/package.json b/packages/asset-did/package.json index a93fb108c..7a0fdbbdd 100644 --- a/packages/asset-did/package.json +++ b/packages/asset-did/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/asset-did", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", diff --git a/packages/augment-api/metadata/spiritnet.json b/packages/augment-api/metadata/spiritnet.json index 908b69fcc..b46f6ba1b 100644 --- a/packages/augment-api/metadata/spiritnet.json +++ b/packages/augment-api/metadata/spiritnet.json @@ -1 +1 @@ -{"result":"0x6d6574610e8507000c1c73705f636f72651863727970746f2c4163636f756e7449643332000004000401205b75383b2033325d0000040000032000000008000800000503000c08306672616d655f73797374656d2c4163636f756e74496e666f0814496e64657801102c4163636f756e74446174610114001401146e6f6e6365100114496e646578000124636f6e73756d6572731c0120526566436f756e7400012470726f7669646572731c0120526566436f756e7400012c73756666696369656e74731c0120526566436f756e740001106461746114012c4163636f756e7444617461000010000005060014083c70616c6c65745f62616c616e6365732c4163636f756e7444617461041c42616c616e63650118001001106672656518011c42616c616e6365000120726573657276656418011c42616c616e636500012c6d6973635f66726f7a656e18011c42616c616e63650001286665655f66726f7a656e18011c42616c616e636500001800000507001c0000050500200c346672616d655f737570706f7274206469737061746368405065724469737061746368436c6173730404540124000c01186e6f726d616c2401045400012c6f7065726174696f6e616c240104540001246d616e6461746f7279240104540000240c2873705f77656967687473247765696768745f76321857656967687400000801207265665f74696d6528010c75363400012870726f6f665f73697a6528010c75363400002800000610002c083c7072696d69746976655f74797065731048323536000004000401205b75383b2033325d000030000002080034102873705f72756e74696d651c67656e65726963186469676573741844696765737400000401106c6f677338013c5665633c4469676573744974656d3e0000380000023c003c102873705f72756e74696d651c67656e6572696318646967657374284469676573744974656d0001142850726552756e74696d650800400144436f6e73656e737573456e67696e654964000030011c5665633c75383e00060024436f6e73656e7375730800400144436f6e73656e737573456e67696e654964000030011c5665633c75383e000400105365616c0800400144436f6e73656e737573456e67696e654964000030011c5665633c75383e000500144f74686572040030011c5665633c75383e0000006452756e74696d65456e7669726f6e6d656e745570646174656400080000400000030400000008004400000248004808306672616d655f73797374656d2c4576656e745265636f7264080445014c0454012c000c011470686173657502011450686173650001146576656e744c010445000118746f70696373790201185665633c543e00004c08447370697269746e65745f72756e74696d653052756e74696d654576656e740001781853797374656d04005001706672616d655f73797374656d3a3a4576656e743c52756e74696d653e0000001c496e6469636573040074017870616c6c65745f696e64696365733a3a4576656e743c52756e74696d653e0005002042616c616e636573040078017c70616c6c65745f62616c616e6365733a3a4576656e743c52756e74696d653e000600485472616e73616374696f6e5061796d656e7404008001a870616c6c65745f7472616e73616374696f6e5f7061796d656e743a3a4576656e743c52756e74696d653e0007001c53657373696f6e040084015470616c6c65745f73657373696f6e3a3a4576656e740016004050617261636861696e5374616b696e67040088018470617261636861696e5f7374616b696e673a3a4576656e743c52756e74696d653e0015002444656d6f6372616379040090018070616c6c65745f64656d6f63726163793a3a4576656e743c52756e74696d653e001e001c436f756e63696c0400a001fc70616c6c65745f636f6c6c6563746976653a3a4576656e743c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365313e001f0048546563686e6963616c436f6d6d69747465650400b001fc70616c6c65745f636f6c6c6563746976653a3a4576656e743c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365323e0020004c546563686e6963616c4d656d626572736869700400b401fc70616c6c65745f6d656d626572736869703a3a4576656e743c52756e74696d652c2070616c6c65745f6d656d626572736869703a3a496e7374616e6365313e0022002054726561737572790400b8017c70616c6c65745f74726561737572793a3a4576656e743c52756e74696d653e0023001c5574696c6974790400bc015470616c6c65745f7574696c6974793a3a4576656e740028001c56657374696e670400c0017870616c6c65745f76657374696e673a3a4576656e743c52756e74696d653e002900245363686564756c65720400c4018070616c6c65745f7363686564756c65723a3a4576656e743c52756e74696d653e002a001450726f78790400d0017070616c6c65745f70726f78793a3a4576656e743c52756e74696d653e002b0020507265696d6167650400dc017c70616c6c65745f707265696d6167653a3a4576656e743c52756e74696d653e002c0038546970734d656d626572736869700400e001fc70616c6c65745f6d656d626572736869703a3a4576656e743c52756e74696d652c2070616c6c65745f6d656d626572736869703a3a496e7374616e6365323e002d0010546970730400e4016c70616c6c65745f746970733a3a4576656e743c52756e74696d653e002e001443747970650400e8015463747970653a3a4576656e743c52756e74696d653e003d002c4174746573746174696f6e0400ec016c6174746573746174696f6e3a3a4576656e743c52756e74696d653e003e002844656c65676174696f6e0400f8016864656c65676174696f6e3a3a4576656e743c52756e74696d653e003f000c44696404000101014c6469643a3a4576656e743c52756e74696d653e004000244469644c6f6f6b757004000501018470616c6c65745f6469645f6c6f6f6b75703a3a4576656e743c52756e74696d653e00430024576562334e616d657304001501018470616c6c65745f776562335f6e616d65733a3a4576656e743c52756e74696d653e004400445075626c696343726564656e7469616c730400210101887075626c69635f63726564656e7469616c733a3a4576656e743c52756e74696d653e0045003c50617261636861696e53797374656d0400910101bc63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d3a3a4576656e743c52756e74696d653e0050002458636d7051756575650400950101a463756d756c75735f70616c6c65745f78636d705f71756575653a3a4576656e743c52756e74696d653e0052002c506f6c6b61646f7458636d0400a101016870616c6c65745f78636d3a3a4576656e743c52756e74696d653e0053002843756d756c757358636d04006d02018863756d756c75735f70616c6c65745f78636d3a3a4576656e743c52756e74696d653e00540020446d7051756575650400710201a063756d756c75735f70616c6c65745f646d705f71756575653a3a4576656e743c52756e74696d653e00550000500c306672616d655f73797374656d1870616c6c6574144576656e740404540001184045787472696e7369635375636365737304013464697370617463685f696e666f5401304469737061746368496e666f00000490416e2065787472696e73696320636f6d706c65746564207375636365737366756c6c792e3c45787472696e7369634661696c656408013864697370617463685f6572726f7260013444697370617463684572726f7200013464697370617463685f696e666f5401304469737061746368496e666f00010450416e2065787472696e736963206661696c65642e2c436f64655570646174656400020450603a636f6465602077617320757064617465642e284e65774163636f756e7404011c6163636f756e74000130543a3a4163636f756e7449640003046841206e6577206163636f756e742077617320637265617465642e344b696c6c65644163636f756e7404011c6163636f756e74000130543a3a4163636f756e74496400040458416e206163636f756e7420776173207265617065642e2052656d61726b656408011873656e646572000130543a3a4163636f756e744964000110686173682c011c543a3a48617368000504704f6e206f6e2d636861696e2072656d61726b2068617070656e65642e04704576656e7420666f72207468652053797374656d2070616c6c65742e540c346672616d655f737570706f7274206469737061746368304469737061746368496e666f00000c0118776569676874240118576569676874000114636c6173735801344469737061746368436c617373000120706179735f6665655c0110506179730000580c346672616d655f737570706f7274206469737061746368344469737061746368436c61737300010c184e6f726d616c0000002c4f7065726174696f6e616c000100244d616e6461746f7279000200005c0c346672616d655f737570706f727420646973706174636810506179730001080c596573000000084e6f0001000060082873705f72756e74696d653444697370617463684572726f72000134144f746865720000003043616e6e6f744c6f6f6b7570000100244261644f726967696e000200184d6f64756c65040064012c4d6f64756c654572726f7200030044436f6e73756d657252656d61696e696e670004002c4e6f50726f76696465727300050040546f6f4d616e79436f6e73756d65727300060014546f6b656e0400680128546f6b656e4572726f720007002841726974686d6574696304006c013c41726974686d657469634572726f72000800345472616e73616374696f6e616c04007001485472616e73616374696f6e616c4572726f7200090024457868617573746564000a0028436f7272757074696f6e000b002c556e617661696c61626c65000c000064082873705f72756e74696d652c4d6f64756c654572726f720000080114696e64657808010875380001146572726f7240018c5b75383b204d41585f4d4f44554c455f4552524f525f454e434f4445445f53495a455d000068082873705f72756e74696d6528546f6b656e4572726f7200011c1c4e6f46756e647300000020576f756c644469650001003042656c6f774d696e696d756d0002003043616e6e6f7443726561746500030030556e6b6e6f776e41737365740004001846726f7a656e0005002c556e737570706f72746564000600006c083473705f61726974686d657469633c41726974686d657469634572726f7200010c24556e646572666c6f77000000204f766572666c6f77000100384469766973696f6e42795a65726f0002000070082873705f72756e74696d65485472616e73616374696f6e616c4572726f72000108304c696d6974526561636865640000001c4e6f4c6179657200010000740c3870616c6c65745f696e64696365731870616c6c6574144576656e7404045400010c34496e64657841737369676e656408010c77686f000130543a3a4163636f756e744964000114696e64657810013c543a3a4163636f756e74496e6465780000047441206163636f756e7420696e646578207761732061737369676e65642e28496e6465784672656564040114696e64657810013c543a3a4163636f756e74496e646578000104bc41206163636f756e7420696e64657820686173206265656e2066726565642075702028756e61737369676e6564292e2c496e64657846726f7a656e080114696e64657810013c543a3a4163636f756e74496e64657800010c77686f000130543a3a4163636f756e744964000204e841206163636f756e7420696e64657820686173206265656e2066726f7a656e20746f206974732063757272656e74206163636f756e742049442e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909780c3c70616c6c65745f62616c616e6365731870616c6c6574144576656e740804540004490001281c456e646f77656408011c6163636f756e74000130543a3a4163636f756e744964000130667265655f62616c616e6365180128543a3a42616c616e6365000004b8416e206163636f756e74207761732063726561746564207769746820736f6d6520667265652062616c616e63652e20447573744c6f737408011c6163636f756e74000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650001083d01416e206163636f756e74207761732072656d6f7665642077686f73652062616c616e636520776173206e6f6e2d7a65726f206275742062656c6f77204578697374656e7469616c4465706f7369742c78726573756c74696e6720696e20616e206f75747269676874206c6f73732e205472616e736665720c011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650002044c5472616e73666572207375636365656465642e2842616c616e63655365740c010c77686f000130543a3a4163636f756e74496400011066726565180128543a3a42616c616e63650001207265736572766564180128543a3a42616c616e636500030468412062616c616e6365207761732073657420627920726f6f742e20526573657276656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000404e0536f6d652062616c616e63652077617320726573657276656420286d6f7665642066726f6d206672656520746f207265736572766564292e28556e726573657276656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000504e8536f6d652062616c616e63652077617320756e726573657276656420286d6f7665642066726f6d20726573657276656420746f2066726565292e4852657365727665526570617472696174656410011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500014864657374696e6174696f6e5f7374617475737c01185374617475730006084d01536f6d652062616c616e636520776173206d6f7665642066726f6d207468652072657365727665206f6620746865206669727374206163636f756e7420746f20746865207365636f6e64206163636f756e742ed846696e616c20617267756d656e7420696e64696361746573207468652064657374696e6174696f6e2062616c616e636520747970652e1c4465706f73697408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000704d8536f6d6520616d6f756e7420776173206465706f73697465642028652e672e20666f72207472616e73616374696f6e2066656573292e20576974686472617708010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650008041d01536f6d6520616d6f756e74207761732077697468647261776e2066726f6d20746865206163636f756e742028652e672e20666f72207472616e73616374696f6e2066656573292e1c536c617368656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650009040101536f6d6520616d6f756e74207761732072656d6f7665642066726f6d20746865206163636f756e742028652e672e20666f72206d69736265686176696f72292e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a0909097c14346672616d655f737570706f72741874726169747318746f6b656e73106d6973633442616c616e6365537461747573000108104672656500000020526573657276656400010000800c6870616c6c65745f7472616e73616374696f6e5f7061796d656e741870616c6c6574144576656e74040454000104485472616e73616374696f6e466565506169640c010c77686f000130543a3a4163636f756e74496400012861637475616c5f66656518013042616c616e63654f663c543e00010c74697018013042616c616e63654f663c543e000008590141207472616e73616374696f6e20666565206061637475616c5f666565602c206f662077686963682060746970602077617320616464656420746f20746865206d696e696d756d20696e636c7573696f6e206665652c5c686173206265656e2070616964206279206077686f602e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909840c3870616c6c65745f73657373696f6e1870616c6c6574144576656e74000104284e657753657373696f6e04013473657373696f6e5f696e6465781c013053657373696f6e496e64657800000839014e65772073657373696f6e206861732068617070656e65642e204e6f746520746861742074686520617267756d656e74206973207468652073657373696f6e20696e6465782c206e6f74207468659c626c6f636b206e756d626572206173207468652074797065206d6967687420737567676573742e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909880c4470617261636861696e5f7374616b696e671870616c6c6574144576656e74040454000154204e6577526f756e640800100138543a3a426c6f636b4e756d62657200001c013053657373696f6e496e6465780000088041206e6577207374616b696e6720726f756e642068617320737461727465642e785c5b626c6f636b206e756d6265722c20726f756e64206e756d6265725c5d50456e7465726564546f7043616e646964617465730400000130543a3a4163636f756e744964000108cc41206e6577206163636f756e7420686173206a6f696e65642074686520736574206f6620746f702063616e646964617465732e2c5c5b6163636f756e745c5d444c656674546f7043616e646964617465730400000130543a3a4163636f756e744964000208d8416e206163636f756e74207761732072656d6f7665642066726f6d2074686520736574206f6620746f702063616e646964617465732e2c5c5b6163636f756e745c5d604a6f696e6564436f6c6c61746f7243616e646964617465730800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000308e041206e6577206163636f756e7420686173206a6f696e65642074686520736574206f6620636f6c6c61746f722063616e646964617465732ebc5c5b6163636f756e742c20616d6f756e74207374616b656420627920746865206e65772063616e6469646174655c5d48436f6c6c61746f725374616b65644d6f72650c00000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e00040801014120636f6c6c61746f722063616e6469646174652068617320696e637265617365642074686520616d6f756e74206f662066756e6473206174207374616b652ec45c5b636f6c6c61746f722773206163636f756e742c2070726576696f7573207374616b652c206e6577207374616b655c5d48436f6c6c61746f725374616b65644c6573730c00000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e00050801014120636f6c6c61746f722063616e64696461746520686173206465637265617365642074686520616d6f756e74206f662066756e6473206174207374616b652ec45c5b636f6c6c61746f722773206163636f756e742c2070726576696f7573207374616b652c206e6577207374616b655c5d54436f6c6c61746f725363686564756c6564457869740c001c013053657373696f6e496e6465780000000130543a3a4163636f756e74496400001c013053657373696f6e496e64657800061001014120636f6c6c61746f722063616e646964617465206861732073746172746564207468652070726f6365737320746f206c656176652074686520736574206f66050163616e646964617465732e205c5b726f756e64206e756d6265722c20636f6c6c61746f722773206163636f756e742c20726f756e64206e756d626572207768656ee074686520636f6c6c61746f722077696c6c206265206566666563746976656c792072656d6f7665642066726f6d2074686520736574206f663063616e646964617465735c5d50436f6c6c61746f7243616e63656c6564457869740400000130543a3a4163636f756e74496400070c05014120636f6c6c61746f722063616e646964617465206861732063616e63656c6564207468652070726f6365737320746f206c656176652074686520736574206f66050163616e6469646174657320616e6420776173206164646564206261636b20746f207468652063616e64696461746520706f6f6c2e205c5b636f6c6c61746f722773246163636f756e745c5d3443616e6469646174654c6566740800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000808cc416e206163636f756e7420686173206c6566742074686520736574206f6620636f6c6c61746f722063616e646964617465732e985c5b6163636f756e742c20616d6f756e74206f662066756e647320756e2d7374616b65645c5d3c436f6c6c61746f7252656d6f7665640800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000908e4416e206163636f756e742077617320666f726365646c792072656d6f7665642066726f6d207468652020736574206f6620636f6c6c61746f72c863616e646964617465732e205c5b6163636f756e742c20616d6f756e74206f662066756e647320756e2d7374616b65645c5d604d617843616e6469646174655374616b654368616e676564040018013042616c616e63654f663c543e000a08b4546865206d6178696d756d2063616e646964617465207374616b6520686173206265656e206368616e6765642e485c5b6e6577206d617820616d6f756e745c5d4c44656c656761746f725374616b65644d6f72651000000130543a3a4163636f756e7449640000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e000b0cf0412064656c656761746f722068617320696e637265617365642074686520616d6f756e74206f662066756e6473206174207374616b6520666f722061f4636f6c6c61746f722e205c5b64656c656761746f722773206163636f756e742c20636f6c6c61746f722773206163636f756e742c2070726576696f7573a064656c65676174696f6e207374616b652c206e65772064656c65676174696f6e207374616b655c5d4c44656c656761746f725374616b65644c6573731000000130543a3a4163636f756e7449640000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e000c0cf0412064656c656761746f7220686173206465637265617365642074686520616d6f756e74206f662066756e6473206174207374616b6520666f722061f4636f6c6c61746f722e205c5b64656c656761746f722773206163636f756e742c20636f6c6c61746f722773206163636f756e742c2070726576696f7573a064656c65676174696f6e207374616b652c206e65772064656c65676174696f6e207374616b655c5d3444656c656761746f724c6566740800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000d08a8416e206163636f756e7420686173206c6566742074686520736574206f662064656c656761746f72732e985c5b6163636f756e742c20616d6f756e74206f662066756e647320756e2d7374616b65645c5d2844656c65676174696f6e1000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e0000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000e0cc8416e206163636f756e74206861732064656c6567617465642061206e657720636f6c6c61746f722063616e6469646174652e11015c5b6163636f756e742c20616d6f756e74206f662066756e6473207374616b65642c20746f74616c20616d6f756e74206f662064656c656761746f7273272066756e64738c7374616b656420666f722074686520636f6c6c61746f722063616e6469646174655c5d4844656c65676174696f6e5265706c616365641800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e0000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e0000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000f180d0141206e65772064656c65676174696f6e20686173207265706c6163656420616e206578697374696e67206f6e6520696e2074686520736574206f66206f6e676f696e67010164656c65676174696f6e7320666f72206120636f6c6c61746f722063616e6469646174652e205c5b6e65772064656c656761746f722773206163636f756e742c0901616d6f756e74206f662066756e6473207374616b656420696e20746865206e65772064656c65676174696f6e2c207265706c616365642064656c656761746f7227730d016163636f756e742c20616d6f756e74206f662066756e6473207374616b656420696e20746865207265706c6163652064656c65676174696f6e2c20636f6c6c61746f72050163616e6469646174652773206163636f756e742c206e657720746f74616c20616d6f756e74206f662064656c656761746f7273272066756e6473207374616b656470666f722074686520636f6c6c61746f722063616e6469646174655c5d5444656c656761746f724c656674436f6c6c61746f721000000130543a3a4163636f756e7449640000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e00100cdc416e206163636f756e74206861732073746f707065642064656c65676174696e67206120636f6c6c61746f722063616e6469646174652e09015c5b6163636f756e742c20636f6c6c61746f722063616e6469646174652773206163636f756e742c206f6c6420616d6f756e74206f662064656c656761746f727327d866756e6473207374616b65642c206e657720616d6f756e74206f662064656c656761746f7273272066756e6473207374616b65645c5d2052657761726465640800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e001108c04120636f6c6c61746f72206f7220612064656c656761746f72206861732072656365697665642061207265776172642e745c5b6163636f756e742c20616d6f756e74206f66207265776172645c5d44526f756e64496e666c6174696f6e53657410008c012c5065727175696e74696c6c00008c012c5065727175696e74696c6c00008c012c5065727175696e74696c6c00008c012c5065727175696e74696c6c00120c0501496e666c6174696f6e20636f6e66696775726174696f6e20666f72206675747572652076616c69646174696f6e20726f756e647320686173206368616e6765642e09015c5b6d6178696d756d20636f6c6c61746f722773207374616b696e6720726174652c206d6178696d756d20636f6c6c61746f7227732072657761726420726174652c0d016d6178696d756d2064656c656761746f722773207374616b696e6720726174652c206d6178696d756d2064656c656761746f7227732072657761726420726174655c5d604d617853656c656374656443616e6469646174657353657408001c010c75333200001c010c753332001308f0546865206d6178696d756d206e756d626572206f6620636f6c6c61746f722063616e646964617465732073656c656374656420696e20667574757265dc76616c69646174696f6e20726f756e647320686173206368616e6765642e205c5b6f6c642076616c75652c206e65772076616c75655c5d44426c6f636b73506572526f756e6453657410001c013053657373696f6e496e6465780000100138543a3a426c6f636b4e756d6265720000100138543a3a426c6f636b4e756d6265720000100138543a3a426c6f636b4e756d62657200140cf8546865206c656e67746820696e20626c6f636b7320666f72206675747572652076616c69646174696f6e20726f756e647320686173206368616e6765642e01015c5b726f756e64206e756d6265722c20666972737420626c6f636b20696e207468652063757272656e7420726f756e642c206f6c642076616c75652c206e65771c76616c75655c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a0909098c0c3473705f61726974686d65746963287065725f7468696e67732c5065727175696e74696c6c0000040010010c7536340000900c4070616c6c65745f64656d6f63726163791870616c6c6574144576656e740404540001382050726f706f73656408013870726f706f73616c5f696e6465781c012450726f70496e64657800011c6465706f73697418013042616c616e63654f663c543e000004bc41206d6f74696f6e20686173206265656e2070726f706f7365642062792061207075626c6963206163636f756e742e185461626c656408013870726f706f73616c5f696e6465781c012450726f70496e64657800011c6465706f73697418013042616c616e63654f663c543e000104d841207075626c69632070726f706f73616c20686173206265656e207461626c656420666f72207265666572656e64756d20766f74652e3845787465726e616c5461626c656400020494416e2065787465726e616c2070726f706f73616c20686173206265656e207461626c65642e1c537461727465640801247265665f696e6465781c013c5265666572656e64756d496e6465780001247468726573686f6c64940134566f74655468726573686f6c640003045c41207265666572656e64756d2068617320626567756e2e185061737365640401247265665f696e6465781c013c5265666572656e64756d496e646578000404ac412070726f706f73616c20686173206265656e20617070726f766564206279207265666572656e64756d2e244e6f745061737365640401247265665f696e6465781c013c5265666572656e64756d496e646578000504ac412070726f706f73616c20686173206265656e2072656a6563746564206279207265666572656e64756d2e2443616e63656c6c65640401247265665f696e6465781c013c5265666572656e64756d496e6465780006048041207265666572656e64756d20686173206265656e2063616e63656c6c65642e2444656c65676174656408010c77686f000130543a3a4163636f756e744964000118746172676574000130543a3a4163636f756e744964000704dc416e206163636f756e74206861732064656c65676174656420746865697220766f746520746f20616e6f74686572206163636f756e742e2c556e64656c65676174656404011c6163636f756e74000130543a3a4163636f756e744964000804e4416e206163636f756e74206861732063616e63656c6c656420612070726576696f75732064656c65676174696f6e206f7065726174696f6e2e185665746f65640c010c77686f000130543a3a4163636f756e74496400013470726f706f73616c5f686173682c011048323536000114756e74696c100138543a3a426c6f636b4e756d62657200090494416e2065787465726e616c2070726f706f73616c20686173206265656e207665746f65642e2c426c61636b6c697374656404013470726f706f73616c5f686173682c011048323536000a04c4412070726f706f73616c5f6861736820686173206265656e20626c61636b6c6973746564207065726d616e656e746c792e14566f7465640c0114766f746572000130543a3a4163636f756e7449640001247265665f696e6465781c013c5265666572656e64756d496e646578000110766f74659801644163636f756e74566f74653c42616c616e63654f663c543e3e000b0490416e206163636f756e742068617320766f74656420696e2061207265666572656e64756d205365636f6e6465640801207365636f6e646572000130543a3a4163636f756e74496400012870726f705f696e6465781c012450726f70496e646578000c048c416e206163636f756e742068617320736563636f6e64656420612070726f706f73616c4050726f706f73616c43616e63656c656404012870726f705f696e6465781c012450726f70496e646578000d0460412070726f706f73616c20676f742063616e63656c65642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909940c4070616c6c65745f64656d6f637261637938766f74655f7468726573686f6c6434566f74655468726573686f6c6400010c5053757065724d616a6f72697479417070726f76650000005053757065724d616a6f72697479416761696e73740001003853696d706c654d616a6f7269747900020000980c4070616c6c65745f64656d6f637261637910766f74652c4163636f756e74566f7465041c42616c616e636501180108205374616e64617264080110766f74659c0110566f746500011c62616c616e636518011c42616c616e63650000001453706c697408010c61796518011c42616c616e636500010c6e617918011c42616c616e6365000100009c0c4070616c6c65745f64656d6f637261637910766f746510566f74650000040008000000a00c4470616c6c65745f636f6c6c6563746976651870616c6c6574144576656e7408045400044900011c2050726f706f73656410011c6163636f756e74000130543a3a4163636f756e74496400013870726f706f73616c5f696e6465781c013450726f706f73616c496e64657800013470726f706f73616c5f686173682c011c543a3a486173680001247468726573686f6c641c012c4d656d626572436f756e74000008490141206d6f74696f6e2028676976656e20686173682920686173206265656e2070726f706f7365642028627920676976656e206163636f756e742920776974682061207468726573686f6c642028676976656e3c604d656d626572436f756e7460292e14566f74656414011c6163636f756e74000130543a3a4163636f756e74496400013470726f706f73616c5f686173682c011c543a3a48617368000114766f746564a40110626f6f6c00010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e74000108050141206d6f74696f6e2028676976656e20686173682920686173206265656e20766f746564206f6e20627920676976656e206163636f756e742c206c656176696e671501612074616c6c79202879657320766f74657320616e64206e6f20766f74657320676976656e20726573706563746976656c7920617320604d656d626572436f756e7460292e20417070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000204c041206d6f74696f6e2077617320617070726f76656420627920746865207265717569726564207468726573686f6c642e2c446973617070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000304d041206d6f74696f6e20776173206e6f7420617070726f76656420627920746865207265717569726564207468726573686f6c642e20457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74a801384469737061746368526573756c74000404210141206d6f74696f6e207761732065786563757465643b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e384d656d626572457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74a801384469737061746368526573756c740005044901412073696e676c65206d656d6265722064696420736f6d6520616374696f6e3b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e18436c6f7365640c013470726f706f73616c5f686173682c011c543a3a4861736800010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e740006045501412070726f706f73616c2077617320636c6f736564206265636175736520697473207468726573686f6c64207761732072656163686564206f7220616674657220697473206475726174696f6e207761732075702e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909a40000050000a80418526573756c7408045401ac044501600108084f6b0400ac000000000c4572720400600000010000ac0000040000b00c4470616c6c65745f636f6c6c6563746976651870616c6c6574144576656e7408045400044900011c2050726f706f73656410011c6163636f756e74000130543a3a4163636f756e74496400013870726f706f73616c5f696e6465781c013450726f706f73616c496e64657800013470726f706f73616c5f686173682c011c543a3a486173680001247468726573686f6c641c012c4d656d626572436f756e74000008490141206d6f74696f6e2028676976656e20686173682920686173206265656e2070726f706f7365642028627920676976656e206163636f756e742920776974682061207468726573686f6c642028676976656e3c604d656d626572436f756e7460292e14566f74656414011c6163636f756e74000130543a3a4163636f756e74496400013470726f706f73616c5f686173682c011c543a3a48617368000114766f746564a40110626f6f6c00010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e74000108050141206d6f74696f6e2028676976656e20686173682920686173206265656e20766f746564206f6e20627920676976656e206163636f756e742c206c656176696e671501612074616c6c79202879657320766f74657320616e64206e6f20766f74657320676976656e20726573706563746976656c7920617320604d656d626572436f756e7460292e20417070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000204c041206d6f74696f6e2077617320617070726f76656420627920746865207265717569726564207468726573686f6c642e2c446973617070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000304d041206d6f74696f6e20776173206e6f7420617070726f76656420627920746865207265717569726564207468726573686f6c642e20457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74a801384469737061746368526573756c74000404210141206d6f74696f6e207761732065786563757465643b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e384d656d626572457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74a801384469737061746368526573756c740005044901412073696e676c65206d656d6265722064696420736f6d6520616374696f6e3b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e18436c6f7365640c013470726f706f73616c5f686173682c011c543a3a4861736800010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e740006045501412070726f706f73616c2077617320636c6f736564206265636175736520697473207468726573686f6c64207761732072656163686564206f7220616674657220697473206475726174696f6e207761732075702e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909b40c4470616c6c65745f6d656d626572736869701870616c6c6574144576656e740804540004490001182c4d656d6265724164646564000004e054686520676976656e206d656d626572207761732061646465643b2073656520746865207472616e73616374696f6e20666f722077686f2e344d656d62657252656d6f766564000104e854686520676976656e206d656d626572207761732072656d6f7665643b2073656520746865207472616e73616374696f6e20666f722077686f2e384d656d6265727353776170706564000204d854776f206d656d62657273207765726520737761707065643b2073656520746865207472616e73616374696f6e20666f722077686f2e304d656d6265727352657365740003041501546865206d656d62657273686970207761732072657365743b2073656520746865207472616e73616374696f6e20666f722077686f20746865206e6577207365742069732e284b65794368616e676564000404844f6e65206f6620746865206d656d6265727327206b657973206368616e6765642e1444756d6d790005046c5068616e746f6d206d656d6265722c206e6576657220757365642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909b80c3c70616c6c65745f74726561737572791870616c6c6574144576656e740804540004490001242050726f706f73656404013870726f706f73616c5f696e6465781c013450726f706f73616c496e646578000004344e65772070726f706f73616c2e205370656e64696e670401406275646765745f72656d61696e696e6718013c42616c616e63654f663c542c20493e000104e45765206861766520656e6465642061207370656e6420706572696f6420616e642077696c6c206e6f7720616c6c6f636174652066756e64732e1c417761726465640c013870726f706f73616c5f696e6465781c013450726f706f73616c496e646578000114617761726418013c42616c616e63654f663c542c20493e00011c6163636f756e74000130543a3a4163636f756e7449640002047c536f6d652066756e64732068617665206265656e20616c6c6f63617465642e2052656a656374656408013870726f706f73616c5f696e6465781c013450726f706f73616c496e64657800011c736c617368656418013c42616c616e63654f663c542c20493e000304b0412070726f706f73616c207761732072656a65637465643b2066756e6473207765726520736c61736865642e144275726e7404012c6275726e745f66756e647318013c42616c616e63654f663c542c20493e00040488536f6d65206f66206f75722066756e64732068617665206265656e206275726e742e20526f6c6c6f766572040140726f6c6c6f7665725f62616c616e636518013c42616c616e63654f663c542c20493e0005042d015370656e64696e67206861732066696e69736865643b20746869732069732074686520616d6f756e74207468617420726f6c6c73206f76657220756e74696c206e657874207370656e642e1c4465706f73697404011476616c756518013c42616c616e63654f663c542c20493e0006047c536f6d652066756e64732068617665206265656e206465706f73697465642e345370656e64417070726f7665640c013870726f706f73616c5f696e6465781c013450726f706f73616c496e646578000118616d6f756e7418013c42616c616e63654f663c542c20493e00012c62656e6566696369617279000130543a3a4163636f756e7449640007049c41206e6577207370656e642070726f706f73616c20686173206265656e20617070726f7665642e3c55706461746564496e61637469766508012c726561637469766174656418013c42616c616e63654f663c542c20493e00012c646561637469766174656418013c42616c616e63654f663c542c20493e000804cc54686520696e6163746976652066756e6473206f66207468652070616c6c65742068617665206265656e20757064617465642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909bc0c3870616c6c65745f7574696c6974791870616c6c6574144576656e74000118404261746368496e746572727570746564080114696e6465781c010c7533320001146572726f7260013444697370617463684572726f7200000855014261746368206f66206469737061746368657320646964206e6f7420636f6d706c6574652066756c6c792e20496e646578206f66206669727374206661696c696e6720646973706174636820676976656e2c2061734877656c6c20617320746865206572726f722e384261746368436f6d706c65746564000104c84261746368206f66206469737061746368657320636f6d706c657465642066756c6c792077697468206e6f206572726f722e604261746368436f6d706c65746564576974684572726f7273000204b44261746368206f66206469737061746368657320636f6d706c657465642062757420686173206572726f72732e344974656d436f6d706c657465640003041d01412073696e676c65206974656d2077697468696e2061204261746368206f6620646973706174636865732068617320636f6d706c657465642077697468206e6f206572726f722e284974656d4661696c65640401146572726f7260013444697370617463684572726f720004041101412073696e676c65206974656d2077697468696e2061204261746368206f6620646973706174636865732068617320636f6d706c657465642077697468206572726f722e30446973706174636865644173040118726573756c74a801384469737061746368526573756c7400050458412063616c6c2077617320646973706174636865642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909c00c3870616c6c65745f76657374696e671870616c6c6574144576656e740404540001083856657374696e675570646174656408011c6163636f756e74000130543a3a4163636f756e744964000120756e76657374656418013042616c616e63654f663c543e000008510154686520616d6f756e742076657374656420686173206265656e20757064617465642e205468697320636f756c6420696e6469636174652061206368616e676520696e2066756e647320617661696c61626c652e25015468652062616c616e636520676976656e2069732074686520616d6f756e74207768696368206973206c65667420756e7665737465642028616e642074687573206c6f636b6564292e4056657374696e67436f6d706c6574656404011c6163636f756e74000130543a3a4163636f756e7449640001049c416e205c5b6163636f756e745c5d20686173206265636f6d652066756c6c79207665737465642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909c40c4070616c6c65745f7363686564756c65721870616c6c6574144576656e74040454000118245363686564756c65640801107768656e100138543a3a426c6f636b4e756d626572000114696e6465781c010c753332000004505363686564756c656420736f6d65207461736b2e2043616e63656c65640801107768656e100138543a3a426c6f636b4e756d626572000114696e6465781c010c7533320001044c43616e63656c656420736f6d65207461736b2e28446973706174636865640c01107461736bc8016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964cc01404f7074696f6e3c5461736b4e616d653e000118726573756c74a801384469737061746368526573756c74000204544469737061746368656420736f6d65207461736b2e3c43616c6c556e617661696c61626c650801107461736bc8016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964cc01404f7074696f6e3c5461736b4e616d653e00030429015468652063616c6c20666f72207468652070726f7669646564206861736820776173206e6f7420666f756e6420736f20746865207461736b20686173206265656e2061626f727465642e38506572696f6469634661696c65640801107461736bc8016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964cc01404f7074696f6e3c5461736b4e616d653e0004043d0154686520676976656e207461736b2077617320756e61626c6520746f2062652072656e657765642073696e636520746865206167656e64612069732066756c6c206174207468617420626c6f636b2e545065726d616e656e746c794f7665727765696768740801107461736bc8016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964cc01404f7074696f6e3c5461736b4e616d653e000504f054686520676976656e207461736b2063616e206e657665722062652065786563757465642073696e6365206974206973206f7665727765696768742e04304576656e747320747970652ec800000408101c00cc04184f7074696f6e04045401040108104e6f6e6500000010536f6d650400040000010000d00c3070616c6c65745f70726f78791870616c6c6574144576656e740404540001143450726f78794578656375746564040118726573756c74a801384469737061746368526573756c74000004bc412070726f78792077617320657865637574656420636f72726563746c792c20776974682074686520676976656e2e2c507572654372656174656410011070757265000130543a3a4163636f756e74496400010c77686f000130543a3a4163636f756e74496400012870726f78795f74797065d40130543a3a50726f787954797065000150646973616d626967756174696f6e5f696e646578d8010c753136000108dc412070757265206163636f756e7420686173206265656e2063726561746564206279206e65772070726f7879207769746820676976656e90646973616d626967756174696f6e20696e64657820616e642070726f787920747970652e24416e6e6f756e6365640c01107265616c000130543a3a4163636f756e74496400011470726f7879000130543a3a4163636f756e74496400012463616c6c5f686173682c013443616c6c486173684f663c543e000204e0416e20616e6e6f756e63656d656e742077617320706c6163656420746f206d616b6520612063616c6c20696e20746865206675747572652e2850726f7879416464656410012464656c656761746f72000130543a3a4163636f756e74496400012464656c656761746565000130543a3a4163636f756e74496400012870726f78795f74797065d40130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d62657200030448412070726f7879207761732061646465642e3050726f787952656d6f76656410012464656c656761746f72000130543a3a4163636f756e74496400012464656c656761746565000130543a3a4163636f756e74496400012870726f78795f74797065d40130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d62657200040450412070726f7879207761732072656d6f7665642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909d408447370697269746e65745f72756e74696d652450726f7879547970650001180c416e790000002c4e6f6e5472616e7366657200010028476f7665726e616e63650002004050617261636861696e5374616b696e670003002c43616e63656c50726f7879000400484e6f6e4465706f736974436c61696d696e6700050000d80000050400dc0c3c70616c6c65745f707265696d6167651870616c6c6574144576656e7404045400010c144e6f746564040110686173682c011c543a3a48617368000004684120707265696d61676520686173206265656e206e6f7465642e24526571756573746564040110686173682c011c543a3a48617368000104784120707265696d61676520686173206265656e207265717565737465642e1c436c6561726564040110686173682c011c543a3a486173680002046c4120707265696d616765206861732062656e20636c65617265642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909e00c4470616c6c65745f6d656d626572736869701870616c6c6574144576656e740804540004490001182c4d656d6265724164646564000004e054686520676976656e206d656d626572207761732061646465643b2073656520746865207472616e73616374696f6e20666f722077686f2e344d656d62657252656d6f766564000104e854686520676976656e206d656d626572207761732072656d6f7665643b2073656520746865207472616e73616374696f6e20666f722077686f2e384d656d6265727353776170706564000204d854776f206d656d62657273207765726520737761707065643b2073656520746865207472616e73616374696f6e20666f722077686f2e304d656d6265727352657365740003041501546865206d656d62657273686970207761732072657365743b2073656520746865207472616e73616374696f6e20666f722077686f20746865206e6577207365742069732e284b65794368616e676564000404844f6e65206f6620746865206d656d6265727327206b657973206368616e6765642e1444756d6d790005046c5068616e746f6d206d656d6265722c206e6576657220757365642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909e40c2c70616c6c65745f746970731870616c6c6574144576656e74080454000449000114184e65775469700401207469705f686173682c011c543a3a486173680000049441206e6577207469702073756767657374696f6e20686173206265656e206f70656e65642e28546970436c6f73696e670401207469705f686173682c011c543a3a48617368000104d841207469702073756767657374696f6e206861732072656163686564207468726573686f6c6420616e6420697320636c6f73696e672e24546970436c6f7365640c01207469705f686173682c011c543a3a4861736800010c77686f000130543a3a4163636f756e7449640001187061796f757418013c42616c616e63654f663c542c20493e0002048441207469702073756767657374696f6e20686173206265656e20636c6f7365642e305469705265747261637465640401207469705f686173682c011c543a3a486173680003049041207469702073756767657374696f6e20686173206265656e207265747261637465642e28546970536c61736865640c01207469705f686173682c011c543a3a4861736800011866696e646572000130543a3a4163636f756e74496400011c6465706f73697418013c42616c616e63654f663c542c20493e0004048841207469702073756767657374696f6e20686173206265656e20736c61736865642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909e80c1463747970651870616c6c6574144576656e74040454000108304354797065437265617465640800000144437479706543726561746f724f663c543e00002c01384374797065486173684f663c543e0000087441206e657720435479706520686173206265656e20637265617465642e885c5b63726561746f72206964656e7469666965722c20435479706520686173685c5d3043547970655570646174656404002c01384374797065486173684f663c543e000108ac496e666f726d6174696f6e2061626f7574206120435479706520686173206265656e20757064617465642e385c5b435479706520686173685c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909ec0c2c6174746573746174696f6e1870616c6c6574144576656e74040454000110484174746573746174696f6e43726561746564100000013441747465737465724f663c543e00002c0138436c61696d486173684f663c543e00002c01384374797065486173684f663c543e0000f001704f7074696f6e3c417574686f72697a6174696f6e49644f663c543e3e0000088c41206e6577206174746573746174696f6e20686173206265656e20637265617465642e05015c5b61747465737465722049442c20636c61696d20686173682c20435479706520686173682c20286f7074696f6e616c292064656c65676174696f6e2049445c5d484174746573746174696f6e5265766f6b6564080000013441747465737465724f663c543e00002c0138436c61696d486173684f663c543e00010880416e206174746573746174696f6e20686173206265656e207265766f6b65642e685c5b6163636f756e742069642c20636c61696d20686173685c5d484174746573746174696f6e52656d6f766564080000013441747465737465724f663c543e00002c0138436c61696d486173684f663c543e00020880416e206174746573746174696f6e20686173206265656e2072656d6f7665642e685c5b6163636f756e742069642c20636c61696d20686173685c5d404465706f7369745265636c61696d656408000001384163636f756e7449644f663c543e00002c0138436c61696d486173684f663c543e0003080501546865206465706f736974206f776e6572207265636c61696d65642061206465706f7369742062792072656d6f76696e6720616e206174746573746174696f6e2e685c5b6163636f756e742069642c20636c61696d20686173685c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909f004184f7074696f6e04045401f40108104e6f6e6500000010536f6d650400f40000010000f40c3872756e74696d655f636f6d6d6f6e34617574686f72697a6174696f6e3c417574686f72697a6174696f6e4964043044656c65676174696f6e4964012c01042844656c65676174696f6e04002c013044656c65676174696f6e496400000000f80c2864656c65676174696f6e1870616c6c6574144576656e7404045400011c40486965726172636879437265617465640c0000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00002c01384374797065486173684f663c543e0000088441206e65772068696572617263687920686173206265656e20637265617465642ea05c5b63726561746f722049442c20726f6f74206e6f64652049442c20435459504520686173685c5d404869657261726368795265766f6b6564080000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00010874412068696572617263687920686173206265656e207265766f6b65642e705c5b7265766f6b65722049442c20726f6f74206e6f64652049445c5d4048696572617263687952656d6f766564080000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e000208dc412068696572617263687920686173206265656e2072656d6f7665642066726f6d207468652073746f72616765206f6e20636861696e2e705c5b72656d6f7665722049442c20726f6f74206e6f64652049445c5d4444656c65676174696f6e43726561746564180000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e000000014044656c656761746f7249644f663c543e0000fc012c5065726d697373696f6e7300030c8841206e65772064656c65676174696f6e20686173206265656e20637265617465642efc5c5b63726561746f722049442c20726f6f74206e6f64652049442c2064656c65676174696f6e206e6f64652049442c20706172656e74206e6f64652049442c6864656c65676174652049442c207065726d697373696f6e735c5d4444656c65676174696f6e5265766f6b6564080000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00040878412064656c65676174696f6e20686173206265656e207265766f6b65642e885c5b7265766f6b65722049442c2064656c65676174696f6e206e6f64652049445c5d4444656c65676174696f6e52656d6f76656408000001384163636f756e7449644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00050878412064656c65676174696f6e20686173206265656e2072656d6f7665642e885c5b72656d6f7665722049442c2064656c65676174696f6e206e6f64652049445c5d404465706f7369745265636c61696d656408000001384163636f756e7449644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e000608f8546865206465706f736974206f776e6572207265636c61696d65642061206465706f7369742062792072656d6f76696e6720612064656c65676174696f6eac737562747265652e205c5b7265766f6b65722049442c2064656c65676174696f6e206e6f64652049445c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909fc0c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368792c5065726d697373696f6e730000040110626974731c010c753332000001010c0c6469641870616c6c6574144576656e74040454000110284469644372656174656408000001384163636f756e7449644f663c543e00000001484469644964656e7469666965724f663c543e0000086c41206e65772044494420686173206265656e20637265617465642e985c5b7472616e73616374696f6e207369676e65722c20444944206964656e7469666965725c5d284469645570646174656404000001484469644964656e7469666965724f663c543e0001085c412044494420686173206265656e20757064617465642e485c5b444944206964656e7469666965725c5d2844696444656c6574656404000001484469644964656e7469666965724f663c543e0002085c412044494420686173206265656e2064656c657465642e485c5b444944206964656e7469666965725c5d4444696443616c6c4469737061746368656408000001484469644964656e7469666965724f663c543e0000a801384469737061746368526573756c74000308a041204449442d617574686f72697365642063616c6c20686173206265656e2065786563757465642e7c5c5b4449442063616c6c65722c20646973706174636820726573756c745c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090905010c4470616c6c65745f6469645f6c6f6f6b75701870616c6c6574144576656e74040454000110584173736f63696174696f6e45737461626c69736865640800090101444c696e6b61626c654163636f756e74496400000001484469644964656e7469666965724f663c543e000004f841206e6577206173736f63696174696f6e206265747765656e20612044494420616e6420616e206163636f756e742049442077617320637265617465642e484173736f63696174696f6e52656d6f7665640800090101444c696e6b61626c654163636f756e74496400000001484469644964656e7469666965724f663c543e000104ec416e206173736f63696174696f6e206265747765656e20612044494420616e6420616e206163636f756e74204944207761732072656d6f7665642e444d6967726174696f6e50726f6772657373000204c454686572652077617320736f6d652070726f677265737320696e20746865206d6967726174696f6e2070726f636573732e484d6967726174696f6e436f6d706c65746564000304dc416c6c204163636f756e744964732068617665206265656e206d6967726174656420746f204c696e6b61626c654163636f756e7449642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090909010c4470616c6c65745f6469645f6c6f6f6b7570406c696e6b61626c655f6163636f756e74444c696e6b61626c654163636f756e7449640001082c4163636f756e744964323004000d01012c4163636f756e74496432300000002c4163636f756e7449643332040000012c4163636f756e7449643332000100000d010c4470616c6c65745f6469645f6c6f6f6b75701c6163636f756e742c4163636f756e744964323000000400110101205b75383b2032305d0000110100000314000000080015010c4470616c6c65745f776562335f6e616d65731870616c6c6574144576656e740404540001103c576562334e616d65436c61696d65640801146f776e6572000148576562334e616d654f776e65724f663c543e0001106e616d6519010134576562334e616d654f663c543e0000047041206e6577206e616d6520686173206265656e20636c61696d65642e40576562334e616d6552656c65617365640801146f776e6572000148576562334e616d654f776e65724f663c543e0001106e616d6519010134576562334e616d654f663c543e0001046441206e616d6520686173206265656e2072656c65617365642e38576562334e616d6542616e6e65640401106e616d6519010134576562334e616d654f663c543e0002045c41206e616d6520686173206265656e2062616e6e65642e40576562334e616d65556e62616e6e65640401106e616d6519010134576562334e616d654f663c543e0003046441206e616d6520686173206265656e20756e62616e6e65642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090919010c4470616c6c65745f776562335f6e616d657324776562335f6e616d65344173636969576562334e616d65040454000004001d010180426f756e6465645665633c75382c20543a3a4d61784e616d654c656e6774683e00001d01101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e000021010c487075626c69635f63726564656e7469616c731870616c6c6574144576656e740404540001104043726564656e7469616c53746f7265640801287375626a6563745f696425010130543a3a5375626a65637449640488546865207375626a656374206f6620746865206e65772063726564656e7469616c2e013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e0474546865206964206f6620746865206e65772063726564656e7469616c2e0004a041206e6577207075626c69632063726564656e7469616c20686173206265656e206973737565642e4443726564656e7469616c52656d6f7665640801287375626a6563745f696425010130543a3a5375626a65637449640498546865207375626a656374206f66207468652072656d6f7665642063726564656e7469616c2e013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e0484546865206964206f66207468652072656d6f7665642063726564656e7469616c2e01049841207075626c69632063726564656e7469616c7320686173206265656e2072656d6f7665642e4443726564656e7469616c5265766f6b656404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e0484546865206964206f6620746865207265766f6b65642063726564656e7469616c2e02049441207075626c69632063726564656e7469616c20686173206265656e207265766f6b65642e4c43726564656e7469616c556e7265766f6b656404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e048c546865206964206f662074686520756e7265766f6b65642063726564656e7469616c2e03049c41207075626c69632063726564656e7469616c20686173206265656e20756e7265766f6b65642e0490546865206576656e74732067656e65726174656420627920746869732070616c6c65742e25010c3872756e74696d655f636f6d6d6f6e18617373657473204173736574446964000004002901013c41737365744964656e746966696572000029010c3c6b696c745f61737365745f646964730876312041737365744469640000080120636861696e5f69642d01011c436861696e496400012061737365745f69645501011c4173736574496400002d01103c6b696c745f61737365745f6469647314636861696e0876311c436861696e49640001141845697031353504003101013c4569703135355265666572656e63650000001842697031323204003501016447656e657369734865784861736833325265666572656e63650001001c446f7473616d6104003501016447656e657369734865784861736833325265666572656e636500020018536f6c616e6104003d01017047656e657369734261736535384861736833325265666572656e63650003001c47656e6572696304004501013847656e65726963436861696e4964000400003101103c6b696c745f61737365745f6469647314636861696e0876313c4569703135355265666572656e6365000004001801107531323800003501103c6b696c745f61737365745f6469647314636861696e0876316447656e657369734865784861736833325265666572656e636500000400390101205b75383b2031365d000039010000031000000008003d01103c6b696c745f61737365745f6469647314636861696e0876317047656e657369734261736535384861736833325265666572656e63650000040041010170426f756e6465645665633c75382c20436f6e73745533323c33323e3e00004101101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00004501103c6b696c745f61737365745f6469647314636861696e0876313847656e65726963436861696e496400000801246e616d6573706163654901015447656e65726963436861696e4e616d6573706163650001247265666572656e63655101015447656e65726963436861696e5265666572656e636500004901103c6b696c745f61737365745f6469647314636861696e0876315447656e65726963436861696e4e616d657370616365000004004d0101d8426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f4e414d4553504143455f4c454e4754485f5533323e3e00004d01101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00005101103c6b696c745f61737365745f6469647314636861696e0876315447656e65726963436861696e5265666572656e636500000400410101d8426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f5245464552454e43455f4c454e4754485f5533323e3e00005501103c6b696c745f61737365745f646964731461737365740876311c4173736574496400011418536c6970343404005901013c536c697034345265666572656e636500000014457263323004006501018445766d536d617274436f6e747261637446756e6769626c655265666572656e63650001001845726337323104006901019045766d536d617274436f6e74726163744e6f6e46756e6769626c655265666572656e63650002001c4572633131353504006901019045766d536d617274436f6e74726163744e6f6e46756e6769626c655265666572656e63650003001c47656e6572696304007901013847656e6572696341737365744964000400005901103c6b696c745f61737365745f646964731461737365740876313c536c697034345265666572656e6365000004005d0101105532353600005d01083c7072696d69746976655f7479706573105532353600000400610101205b7536343b20345d000061010000030400000010006501103c6b696c745f61737365745f646964731461737365740876318445766d536d617274436f6e747261637446756e6769626c655265666572656e636500000400110101205b75383b2032305d00006901103c6b696c745f61737365745f646964731461737365740876319045766d536d617274436f6e74726163744e6f6e46756e6769626c655265666572656e6365000008006501018445766d536d617274436f6e747261637446756e6769626c655265666572656e636500006d0101b44f7074696f6e3c45766d536d617274436f6e74726163744e6f6e46756e6769626c654964656e7469666965723e00006d0104184f7074696f6e0404540171010108104e6f6e6500000010536f6d650400710100000100007101103c6b696c745f61737365745f646964731461737365740876319445766d536d617274436f6e74726163744e6f6e46756e6769626c654964656e74696669657200000400750101dc426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f4944454e5449464945525f4c454e4754485f5533323e3e00007501101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00007901103c6b696c745f61737365745f646964731461737365740876313847656e657269634173736574496400000c01246e616d6573706163657d01015447656e6572696341737365744e616d6573706163650001247265666572656e63658101015447656e6572696341737365745265666572656e63650001086964890101784f7074696f6e3c47656e6572696341737365744964656e7469666965723e00007d01103c6b696c745f61737365745f646964731461737365740876315447656e6572696341737365744e616d657370616365000004004d0101d8426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f4e414d4553504143455f4c454e4754485f5533323e3e00008101103c6b696c745f61737365745f646964731461737365740876315447656e6572696341737365745265666572656e636500000400850101d8426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f5245464552454e43455f4c454e4754485f5533323e3e00008501101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000890104184f7074696f6e040454018d010108104e6f6e6500000010536f6d6504008d0100000100008d01103c6b696c745f61737365745f646964731461737365740876315847656e6572696341737365744964656e74696669657200000400750101dc426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f4944454e5449464945525f4c454e4754485f5533323e3e000091010c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d1870616c6c6574144576656e7404045400011c6056616c69646174696f6e46756e6374696f6e53746f726564000004d05468652076616c69646174696f6e2066756e6374696f6e20686173206265656e207363686564756c656420746f206170706c792e6456616c69646174696f6e46756e6374696f6e4170706c69656404015472656c61795f636861696e5f626c6f636b5f6e756d1c015452656c6179436861696e426c6f636b4e756d62657200010445015468652076616c69646174696f6e2066756e6374696f6e20776173206170706c696564206173206f662074686520636f6e7461696e65642072656c617920636861696e20626c6f636b206e756d6265722e6c56616c69646174696f6e46756e6374696f6e446973636172646564000204b05468652072656c61792d636861696e2061626f727465642074686520757067726164652070726f636573732e4455706772616465417574686f72697a6564040124636f64655f686173682c011c543a3a486173680003047c416e207570677261646520686173206265656e20617574686f72697a65642e60446f776e776172644d657373616765735265636569766564040114636f756e741c010c7533320004040101536f6d6520646f776e77617264206d657373616765732068617665206265656e20726563656976656420616e642077696c6c2062652070726f6365737365642e64446f776e776172644d6573736167657350726f63657373656408012c7765696768745f75736564240118576569676874000120646d715f686561642c014472656c61795f636861696e3a3a48617368000504e0446f776e77617264206d6573736167657320776572652070726f636573736564207573696e672074686520676976656e207765696768742e445570776172644d65737361676553656e740401306d6573736167655f68617368cc013c4f7074696f6e3c58636d486173683e000604b8416e20757077617264206d657373616765207761732073656e7420746f207468652072656c617920636861696e2e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090995010c6463756d756c75735f70616c6c65745f78636d705f71756575651870616c6c6574144576656e7404045400011c1c537563636573730801306d6573736167655f68617368cc013c4f7074696f6e3c58636d486173683e00011877656967687424011857656967687400000464536f6d652058434d20776173206578656375746564206f6b2e104661696c0c01306d6573736167655f68617368cc013c4f7074696f6e3c58636d486173683e0001146572726f729901012058636d4572726f7200011877656967687424011857656967687400010440536f6d652058434d206661696c65642e2842616456657273696f6e0401306d6573736167655f68617368cc013c4f7074696f6e3c58636d486173683e000204544261642058434d2076657273696f6e20757365642e24426164466f726d61740401306d6573736167655f68617368cc013c4f7074696f6e3c58636d486173683e000304504261642058434d20666f726d617420757365642e3c58636d704d65737361676553656e740401306d6573736167655f68617368cc013c4f7074696f6e3c58636d486173683e000404c0416e2048524d50206d657373616765207761732073656e7420746f2061207369626c696e672070617261636861696e2e484f766572776569676874456e71756575656410011873656e6465729d01011850617261496400011c73656e745f61741c014052656c6179426c6f636b4e756d626572000114696e64657810013c4f766572776569676874496e6465780001207265717569726564240118576569676874000504d4416e2058434d2065786365656465642074686520696e646976696475616c206d65737361676520776569676874206275646765742e484f7665727765696768745365727669636564080114696e64657810013c4f766572776569676874496e646578000110757365642401185765696768740006044101416e2058434d2066726f6d20746865206f7665727765696768742071756575652077617320657865637574656420776974682074686520676976656e2061637475616c2077656967687420757365642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a0909099901100c78636d08763318747261697473144572726f720001a0204f766572666c6f7700000034556e696d706c656d656e74656400010060556e74727573746564526573657276654c6f636174696f6e00020064556e7472757374656454656c65706f72744c6f636174696f6e000300304c6f636174696f6e46756c6c000400544c6f636174696f6e4e6f74496e7665727469626c65000500244261644f726967696e0006003c496e76616c69644c6f636174696f6e0007003441737365744e6f74466f756e64000800544661696c6564546f5472616e7361637441737365740009003c4e6f74576974686472617761626c65000a00484c6f636174696f6e43616e6e6f74486f6c64000b0054457863656564734d61784d65737361676553697a65000c005844657374696e6174696f6e556e737570706f72746564000d00245472616e73706f7274000e0028556e726f757461626c65000f0030556e6b6e6f776e436c61696d001000384661696c6564546f4465636f6465001100404d6178576569676874496e76616c6964001200384e6f74486f6c64696e674665657300130030546f6f457870656e736976650014001054726170040010010c753634001500404578706563746174696f6e46616c73650016003850616c6c65744e6f74466f756e64001700304e616d654d69736d617463680018004c56657273696f6e496e636f6d70617469626c6500190050486f6c64696e67576f756c644f766572666c6f77001a002c4578706f72744572726f72001b00385265616e63686f724661696c6564001c00184e6f4465616c001d0028466565734e6f744d6574001e00244c6f636b4572726f72001f00304e6f5065726d697373696f6e00200028556e616e63686f726564002100384e6f744465706f73697461626c650022004c556e68616e646c656458636d56657273696f6e002300485765696768744c696d69745265616368656404002401185765696768740024001c426172726965720025004c5765696768744e6f74436f6d70757461626c650026004445786365656473537461636b4c696d6974002700009d010c48706f6c6b61646f745f70617261636861696e287072696d697469766573084964000004001c010c7533320000a1010c2870616c6c65745f78636d1870616c6c6574144576656e7404045400015c24417474656d707465640400a501015078636d3a3a6c61746573743a3a4f7574636f6d6500000ca8457865637574696f6e206f6620616e2058434d206d6573736167652077617320617474656d707465642e00345c5b206f7574636f6d65205c5d1053656e740c00a90101344d756c74694c6f636174696f6e0000a90101344d756c74694c6f636174696f6e0000cd01011c58636d3c28293e00010c5c412058434d206d657373616765207761732073656e742e00885c5b206f726967696e2c2064657374696e6174696f6e2c206d657373616765205c5d48556e6578706563746564526573706f6e73650800a90101344d756c74694c6f636174696f6e000010011c517565727949640002145901517565727920726573706f6e736520726563656976656420776869636820646f6573206e6f74206d61746368206120726567697374657265642071756572792e2054686973206d61792062652062656361757365206155016d61746368696e6720717565727920776173206e6576657220726567697374657265642c206974206d617920626520626563617573652069742069732061206475706c696361746520726573706f6e73652c206f727062656361757365207468652071756572792074696d6564206f75742e00645c5b206f726967696e206c6f636174696f6e2c206964205c5d34526573706f6e73655265616479080010011c517565727949640000f5010120526573706f6e73650003105d01517565727920726573706f6e736520686173206265656e20726563656976656420616e6420697320726561647920666f722074616b696e672077697468206074616b655f726573706f6e7365602e205468657265206973806e6f2072656769737465726564206e6f74696669636174696f6e2063616c6c2e00485c5b2069642c20726573706f6e7365205c5d204e6f7469666965640c0010011c5175657279496400000801087538000008010875380004105901517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e205468652072656769737465726564206e6f74696669636174696f6e20686173a86265656e206469737061746368656420616e64206578656375746564207375636365737366756c6c792e00885c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e646578205c5d404e6f746966794f766572776569676874140010011c517565727949640000080108753800000801087538000024011857656967687400002401185765696768740005146101517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e205468652072656769737465726564206e6f74696669636174696f6e20636f756c6441016e6f742062652064697370617463686564206265636175736520746865206469737061746368207765696768742069732067726561746572207468616e20746865206d6178696d756d20776569676874e46f726967696e616c6c7920627564676574656420627920746869732072756e74696d6520666f722074686520717565727920726573756c742e0019015c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e6465782c2061637475616c207765696768742c206d617820627564676574656420776569676874205c5d4c4e6f7469667944697370617463684572726f720c0010011c5175657279496400000801087538000008010875380006105501517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e2054686572652077617320612067656e6572616c206572726f722077697468886469737061746368696e6720746865206e6f74696669636174696f6e2063616c6c2e00885c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e646578205c5d484e6f746966794465636f64654661696c65640c0010011c5175657279496400000801087538000008010875380007145101517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e205468652064697370617463682077617320756e61626c6520746f20626559016465636f64656420696e746f2061206043616c6c603b2074686973206d696768742062652064756520746f2064697370617463682066756e6374696f6e20686176696e672061207369676e6174757265207768696368946973206e6f742060286f726967696e2c20517565727949642c20526573706f6e736529602e00885c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e646578205c5d40496e76616c6964526573706f6e6465720c00a90101344d756c74694c6f636174696f6e000010011c517565727949640000110201544f7074696f6e3c4d756c74694c6f636174696f6e3e0008145901457870656374656420717565727920726573706f6e736520686173206265656e2072656365697665642062757420746865206f726967696e206c6f636174696f6e206f662074686520726573706f6e736520646f657355016e6f74206d6174636820746861742065787065637465642e205468652071756572792072656d61696e73207265676973746572656420666f722061206c617465722c2076616c69642c20726573706f6e736520746f6c626520726563656976656420616e642061637465642075706f6e2e00b05c5b206f726967696e206c6f636174696f6e2c2069642c206578706563746564206c6f636174696f6e205c5d5c496e76616c6964526573706f6e64657256657273696f6e0800a90101344d756c74694c6f636174696f6e000010011c517565727949640009245101457870656374656420717565727920726573706f6e736520686173206265656e2072656365697665642062757420746865206578706563746564206f726967696e206c6f636174696f6e20706c6163656420696e4d0173746f7261676520627920746869732072756e74696d652070726576696f75736c792063616e6e6f74206265206465636f6465642e205468652071756572792072656d61696e7320726567697374657265642e0041015468697320697320756e6578706563746564202873696e63652061206c6f636174696f6e20706c6163656420696e2073746f7261676520696e20612070726576696f75736c7920657865637574696e674d0172756e74696d652073686f756c64206265207265616461626c65207072696f7220746f2071756572792074696d656f75742920616e642064616e6765726f75732073696e63652074686520706f737369626c79590176616c696420726573706f6e73652077696c6c2062652064726f707065642e204d616e75616c20676f7665726e616e636520696e74657276656e74696f6e2069732070726f6261626c7920676f696e6720746f2062651c6e65656465642e00645c5b206f726967696e206c6f636174696f6e2c206964205c5d34526573706f6e736554616b656e040010011c51756572794964000a0cc8526563656976656420717565727920726573706f6e736520686173206265656e207265616420616e642072656d6f7665642e00205c5b206964205c5d34417373657473547261707065640c002c0110483235360000a90101344d756c74694c6f636174696f6e00003102015056657273696f6e65644d756c7469417373657473000b0cb8536f6d65206173736574732068617665206265656e20706c6163656420696e20616e20617373657420747261702e00685c5b20686173682c206f726967696e2c20617373657473205c5d5456657273696f6e4368616e67654e6f7469666965640c00a90101344d756c74694c6f636174696f6e00001c012858636d56657273696f6e0000d901012c4d756c7469417373657473000c142501416e2058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e206d65737361676520686173206265656e20617474656d7074656420746f2062652073656e742e00e054686520636f7374206f662073656e64696e672069742028626f726e652062792074686520636861696e2920697320696e636c756465642e007c5c5b2064657374696e6174696f6e2c20726573756c742c20636f7374205c5d5c537570706f7274656456657273696f6e4368616e6765640800a90101344d756c74694c6f636174696f6e00001c012858636d56657273696f6e000d10390154686520737570706f727465642076657273696f6e206f662061206c6f636174696f6e20686173206265656e206368616e6765642e2054686973206d69676874206265207468726f75676820616ec06175746f6d61746963206e6f74696669636174696f6e206f722061206d616e75616c20696e74657276656e74696f6e2e006c5c5b206c6f636174696f6e2c2058434d2076657273696f6e205c5d504e6f7469667954617267657453656e644661696c0c00a90101344d756c74694c6f636174696f6e000010011c5175657279496400009901012058636d4572726f72000e1059014120676976656e206c6f636174696f6e2077686963682068616420612076657273696f6e206368616e676520737562736372697074696f6e207761732064726f70706564206f77696e6720746f20616e206572726f727c73656e64696e6720746865206e6f74696669636174696f6e20746f2069742e007c5c5b206c6f636174696f6e2c2071756572792049442c206572726f72205c5d644e6f746966795461726765744d6967726174696f6e4661696c08006902015856657273696f6e65644d756c74694c6f636174696f6e000010011c51756572794964000f1059014120676976656e206c6f636174696f6e2077686963682068616420612076657273696f6e206368616e676520737562736372697074696f6e207761732064726f70706564206f77696e6720746f20616e206572726f72b46d6967726174696e6720746865206c6f636174696f6e20746f206f7572206e65772058434d20666f726d61742e00605c5b206c6f636174696f6e2c207175657279204944205c5d54496e76616c69645175657269657256657273696f6e0800a90101344d756c74694c6f636174696f6e000010011c517565727949640010245501457870656374656420717565727920726573706f6e736520686173206265656e20726563656976656420627574207468652065787065637465642071756572696572206c6f636174696f6e20706c6163656420696e4d0173746f7261676520627920746869732072756e74696d652070726576696f75736c792063616e6e6f74206265206465636f6465642e205468652071756572792072656d61696e7320726567697374657265642e0041015468697320697320756e6578706563746564202873696e63652061206c6f636174696f6e20706c6163656420696e2073746f7261676520696e20612070726576696f75736c7920657865637574696e674d0172756e74696d652073686f756c64206265207265616461626c65207072696f7220746f2071756572792074696d656f75742920616e642064616e6765726f75732073696e63652074686520706f737369626c79590176616c696420726573706f6e73652077696c6c2062652064726f707065642e204d616e75616c20676f7665726e616e636520696e74657276656e74696f6e2069732070726f6261626c7920676f696e6720746f2062651c6e65656465642e00645c5b206f726967696e206c6f636174696f6e2c206964205c5d38496e76616c6964517565726965721000a90101344d756c74694c6f636174696f6e000010011c517565727949640000a90101344d756c74694c6f636174696f6e0000110201544f7074696f6e3c4d756c74694c6f636174696f6e3e0011145d01457870656374656420717565727920726573706f6e736520686173206265656e20726563656976656420627574207468652071756572696572206c6f636174696f6e206f662074686520726573706f6e736520646f657351016e6f74206d61746368207468652065787065637465642e205468652071756572792072656d61696e73207265676973746572656420666f722061206c617465722c2076616c69642c20726573706f6e736520746f6c626520726563656976656420616e642061637465642075706f6e2e0005015c5b206f726967696e206c6f636174696f6e2c2069642c20657870656374656420717565726965722c206d617962652061637475616c2071756572696572205c5d5056657273696f6e4e6f74696679537461727465640800a90101344d756c74694c6f636174696f6e0000d901012c4d756c74694173736574730012105901412072656d6f746520686173207265717565737465642058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e2066726f6d20757320616e64207765206861766520686f6e6f7265642069742e1d01412076657273696f6e20696e666f726d6174696f6e206d6573736167652069732073656e7420746f207468656d20616e642069747320636f737420697320696e636c756465642e00805c5b2064657374696e6174696f6e206c6f636174696f6e2c20636f7374205c5d5856657273696f6e4e6f746966795265717565737465640800a90101344d756c74694c6f636174696f6e0000d901012c4d756c746941737365747300130c41015765206861766520726571756573746564207468617420612072656d6f746520636861696e2073656e64732075732058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e732e00805c5b2064657374696e6174696f6e206c6f636174696f6e2c20636f7374205c5d6056657273696f6e4e6f74696679556e7265717565737465640800a90101344d756c74694c6f636174696f6e0000d901012c4d756c746941737365747300140c61015765206861766520726571756573746564207468617420612072656d6f746520636861696e2073746f70732073656e64696e672075732058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e732e00805c5b2064657374696e6174696f6e206c6f636174696f6e2c20636f7374205c5d2046656573506169640800a90101344d756c74694c6f636174696f6e0000d901012c4d756c746941737365747300150c310146656573207765726520706169642066726f6d2061206c6f636174696f6e20666f7220616e206f7065726174696f6e20286f6674656e20666f72207573696e67206053656e6458636d60292e006c5c5b20706179696e67206c6f636174696f6e2c2066656573205c5d34417373657473436c61696d65640c002c0110483235360000a90101344d756c74694c6f636174696f6e00003102015056657273696f6e65644d756c746941737365747300160cc0536f6d65206173736574732068617665206265656e20636c61696d65642066726f6d20616e206173736574207472617000685c5b20686173682c206f726967696e2c20617373657473205c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909a501100c78636d087633187472616974731c4f7574636f6d6500010c20436f6d706c657465040024011857656967687400000028496e636f6d706c65746508002401185765696768740000990101144572726f72000100144572726f720400990101144572726f7200020000a901100c78636d087633346d756c74696c6f636174696f6e344d756c74694c6f636174696f6e000008011c706172656e74730801087538000120696e746572696f72ad0101244a756e6374696f6e730000ad01100c78636d087633246a756e6374696f6e73244a756e6374696f6e7300012410486572650000000858310400b10101204a756e6374696f6e0001000858320800b10101204a756e6374696f6e0000b10101204a756e6374696f6e0002000858330c00b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0003000858341000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0004000858351400b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0005000858361800b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0006000858371c00b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0007000858382000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e0000b10101204a756e6374696f6e00080000b101100c78636d087633206a756e6374696f6e204a756e6374696f6e0001282450617261636861696e0400b501010c7533320000002c4163636f756e744964333208011c6e6574776f726bb90101444f7074696f6e3c4e6574776f726b49643e00010869640401205b75383b2033325d000100384163636f756e74496e646578363408011c6e6574776f726bb90101444f7074696f6e3c4e6574776f726b49643e000114696e64657828010c753634000200304163636f756e744b6579323008011c6e6574776f726bb90101444f7074696f6e3c4e6574776f726b49643e00010c6b6579110101205b75383b2032305d0003003850616c6c6574496e7374616e6365040008010875380004003047656e6572616c496e6465780400c1010110753132380005002847656e6572616c4b65790801186c656e6774680801087538000110646174610401205b75383b2033325d000600244f6e6c794368696c6400070024506c7572616c6974790801086964c5010118426f6479496400011070617274c9010120426f6479506172740008003c476c6f62616c436f6e73656e7375730400bd0101244e6574776f726b496400090000b5010000061c00b90104184f7074696f6e04045401bd010108104e6f6e6500000010536f6d650400bd010000010000bd01100c78636d087633206a756e6374696f6e244e6574776f726b496400012824427947656e6573697304000401205b75383b2033325d000000184279466f726b080130626c6f636b5f6e756d62657210010c753634000128626c6f636b5f686173680401205b75383b2033325d00010020506f6c6b61646f74000200184b7573616d610003001c57657374656e6400040018526f636f636f00050018576f636f636f00060020457468657265756d040120636861696e5f696428010c7536340007002c426974636f696e436f72650008002c426974636f696e4361736800090000c1010000061800c501100c78636d087633206a756e6374696f6e18426f6479496400012810556e69740000001c4d6f6e696b6572040040011c5b75383b20345d00010014496e6465780400b501010c7533320002002445786563757469766500030024546563686e6963616c0004002c4c656769736c6174697665000500204a7564696369616c0006001c446566656e73650007003841646d696e697374726174696f6e00080020547265617375727900090000c901100c78636d087633206a756e6374696f6e20426f64795061727400011414566f6963650000001c4d656d62657273040114636f756e74b501010c753332000100204672616374696f6e08010c6e6f6db501010c75333200011464656e6f6db501010c7533320002004441744c6561737450726f706f7274696f6e08010c6e6f6db501010c75333200011464656e6f6db501010c753332000300484d6f72655468616e50726f706f7274696f6e08010c6e6f6db501010c75333200011464656e6f6db501010c75333200040000cd010c0c78636d0876330c58636d041043616c6c00000400d10101585665633c496e737472756374696f6e3c43616c6c3e3e0000d101000002d50100d5010c0c78636d0876332c496e737472756374696f6e041043616c6c0001c034576974686472617741737365740400d901012c4d756c7469417373657473000000545265736572766541737365744465706f73697465640400d901012c4d756c7469417373657473000100585265636569766554656c65706f7274656441737365740400d901012c4d756c7469417373657473000200345175657279526573706f6e736510012071756572795f696428011c51756572794964000120726573706f6e7365f5010120526573706f6e73650001286d61785f77656967687424011857656967687400011c71756572696572110201544f7074696f6e3c4d756c74694c6f636174696f6e3e000300345472616e736665724173736574080118617373657473d901012c4d756c746941737365747300012c62656e6566696369617279a90101344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c0118617373657473d901012c4d756c746941737365747300011064657374a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f6b696e64150201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737424011857656967687400011063616c6c1902014c446f75626c65456e636f6465643c43616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572b501010c7533320001406d61785f6d6573736167655f73697a65b501010c7533320001306d61785f6361706163697479b501010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74b501010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72b501010c75333200011873656e646572b501010c753332000124726563697069656e74b501010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e0400ad010154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f7204001d0201445175657279526573706f6e7365496e666f000c00304465706f7369744173736574080118617373657473210201404d756c7469417373657446696c74657200012c62656e6566696369617279a90101344d756c74694c6f636174696f6e000d004c4465706f7369745265736572766541737365740c0118617373657473210201404d756c7469417373657446696c74657200011064657374a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e000e003445786368616e676541737365740c011067697665210201404d756c7469417373657446696c74657200011077616e74d901012c4d756c746941737365747300011c6d6178696d616ca40110626f6f6c000f005c496e6974696174655265736572766557697468647261770c0118617373657473210201404d756c7469417373657446696c74657200011c72657365727665a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473210201404d756c7469417373657446696c74657200011064657374a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e001100345265706f7274486f6c64696e67080134726573706f6e73655f696e666f1d0201445175657279526573706f6e7365496e666f000118617373657473210201404d756c7469417373657446696c74657200120030427579457865637574696f6e08011066656573e10101284d756c746941737365740001307765696768745f6c696d69742d02012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c65720400cd01012458636d3c43616c6c3e0015002c536574417070656e6469780400cd01012458636d3c43616c6c3e00160028436c6561724572726f7200170028436c61696d4173736574080118617373657473d901012c4d756c74694173736574730001187469636b6574a90101344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f776569676874240118576569676874001a0048556e73756273637269626556657273696f6e001b00244275726e41737365740400d901012c4d756c7469417373657473001c002c45787065637441737365740400d901012c4d756c7469417373657473001d00304578706563744f726967696e0400110201544f7074696f6e3c4d756c74694c6f636174696f6e3e001e002c4578706563744572726f720400f90101504f7074696f6e3c287533322c204572726f72293e001f00504578706563745472616e7361637453746174757304000d0201384d617962654572726f72436f64650020002c517565727950616c6c657408012c6d6f64756c655f6e616d6530011c5665633c75383e000134726573706f6e73655f696e666f1d0201445175657279526573706f6e7365496e666f0021003045787065637450616c6c6574140114696e646578b501010c7533320001106e616d6530011c5665633c75383e00012c6d6f64756c655f6e616d6530011c5665633c75383e00012c63726174655f6d616a6f72b501010c75333200013c6d696e5f63726174655f6d696e6f72b501010c753332002200505265706f72745472616e7361637453746174757304001d0201445175657279526573706f6e7365496e666f0023004c436c6561725472616e736163745374617475730024003c556e6976657273616c4f726967696e0400b10101204a756e6374696f6e002500344578706f72744d6573736167650c011c6e6574776f726bbd0101244e6574776f726b496400012c64657374696e6174696f6ead010154496e746572696f724d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e002600244c6f636b41737365740801146173736574e10101284d756c74694173736574000120756e6c6f636b6572a90101344d756c74694c6f636174696f6e0027002c556e6c6f636b41737365740801146173736574e10101284d756c74694173736574000118746172676574a90101344d756c74694c6f636174696f6e002800384e6f7465556e6c6f636b61626c650801146173736574e10101284d756c746941737365740001146f776e6572a90101344d756c74694c6f636174696f6e0029003452657175657374556e6c6f636b0801146173736574e10101284d756c746941737365740001186c6f636b6572a90101344d756c74694c6f636174696f6e002a002c536574466565734d6f64650401306a69745f7769746864726177a40110626f6f6c002b0020536574546f70696304000401205b75383b2033325d002c0028436c656172546f706963002d002c416c6961734f726967696e0400a90101344d756c74694c6f636174696f6e002e003c556e70616964457865637574696f6e0801307765696768745f6c696d69742d02012c5765696768744c696d6974000130636865636b5f6f726967696e110201544f7074696f6e3c4d756c74694c6f636174696f6e3e002f0000d901100c78636d087633286d756c746961737365742c4d756c746941737365747300000400dd01013c5665633c4d756c746941737365743e0000dd01000002e10100e101100c78636d087633286d756c74696173736574284d756c7469417373657400000801086964e501011c4173736574496400010c66756ee901012c46756e676962696c6974790000e501100c78636d087633286d756c746961737365741c4173736574496400010820436f6e63726574650400a90101344d756c74694c6f636174696f6e00000020416273747261637404000401205b75383b2033325d00010000e901100c78636d087633286d756c746961737365742c46756e676962696c6974790001082046756e6769626c650400c1010110753132380000002c4e6f6e46756e6769626c650400ed0101344173736574496e7374616e636500010000ed01100c78636d087633286d756c74696173736574344173736574496e7374616e636500011824556e646566696e656400000014496e6465780400c10101107531323800010018417272617934040040011c5b75383b20345d000200184172726179380400f101011c5b75383b20385d0003001c417272617931360400390101205b75383b2031365d0004001c4172726179333204000401205b75383b2033325d00050000f101000003080000000800f5010c0c78636d08763320526573706f6e7365000118104e756c6c000000184173736574730400d901012c4d756c74694173736574730001003c457865637574696f6e526573756c740400f90101504f7074696f6e3c287533322c204572726f72293e0002001c56657273696f6e04001c013873757065723a3a56657273696f6e0003002c50616c6c657473496e666f04000102013456656350616c6c6574496e666f000400384469737061746368526573756c7404000d0201384d617962654572726f72436f646500050000f90104184f7074696f6e04045401fd010108104e6f6e6500000010536f6d650400fd010000010000fd01000004081c99010001020c0c78636d0876333456656350616c6c6574496e666f000004000502013c5665633c50616c6c6574496e666f3e0000050200000209020009020c0c78636d0876332850616c6c6574496e666f0000180114696e646578b501010c7533320001106e616d6530011c5665633c75383e00012c6d6f64756c655f6e616d6530011c5665633c75383e0001146d616a6f72b501010c7533320001146d696e6f72b501010c7533320001147061746368b501010c75333200000d020c0c78636d087633384d617962654572726f72436f646500010c1c53756363657373000000144572726f72040030011c5665633c75383e000100385472756e63617465644572726f72040030011c5665633c75383e00020000110204184f7074696f6e04045401a9010108104e6f6e6500000010536f6d650400a901000001000015020c0c78636d087632284f726967696e4b696e64000110184e617469766500000040536f7665726569676e4163636f756e74000100245375706572757365720002000c58636d0003000019020c0c78636d38646f75626c655f656e636f64656434446f75626c65456e636f646564040454000004011c656e636f64656430011c5665633c75383e00001d020c0c78636d087633445175657279526573706f6e7365496e666f00000c012c64657374696e6174696f6ea90101344d756c74694c6f636174696f6e00012071756572795f696428011c517565727949640001286d61785f77656967687424011857656967687400002102100c78636d087633286d756c74696173736574404d756c7469417373657446696c74657200010820446566696e6974650400d901012c4d756c74694173736574730000001057696c6404002502013857696c644d756c74694173736574000100002502100c78636d087633286d756c746961737365743857696c644d756c746941737365740001100c416c6c00000014416c6c4f660801086964e501011c4173736574496400010c66756e2902013c57696c6446756e676962696c69747900010028416c6c436f756e7465640400b501010c75333200020030416c6c4f66436f756e7465640c01086964e501011c4173736574496400010c66756e2902013c57696c6446756e676962696c697479000114636f756e74b501010c753332000300002902100c78636d087633286d756c746961737365743c57696c6446756e676962696c6974790001082046756e6769626c650000002c4e6f6e46756e6769626c65000100002d020c0c78636d0876332c5765696768744c696d697400010824556e6c696d697465640000001c4c696d697465640400240118576569676874000100003102080c78636d5056657273696f6e65644d756c746941737365747300010808563204003502013c76323a3a4d756c74694173736574730000000856330400d901013c76333a3a4d756c7469417373657473000100003502100c78636d087632286d756c746961737365742c4d756c7469417373657473000004003902013c5665633c4d756c746941737365743e000039020000023d02003d02100c78636d087632286d756c74696173736574284d756c74694173736574000008010869644102011c4173736574496400010c66756e6102012c46756e676962696c69747900004102100c78636d087632286d756c746961737365741c4173736574496400010820436f6e63726574650400450201344d756c74694c6f636174696f6e000000204162737472616374040030011c5665633c75383e000100004502100c78636d087632346d756c74696c6f636174696f6e344d756c74694c6f636174696f6e000008011c706172656e74730801087538000120696e746572696f72490201244a756e6374696f6e7300004902100c78636d087632346d756c74696c6f636174696f6e244a756e6374696f6e73000124104865726500000008583104004d0201204a756e6374696f6e00010008583208004d0201204a756e6374696f6e00004d0201204a756e6374696f6e0002000858330c004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00030008583410004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00040008583514004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00050008583618004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e0006000858371c004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00070008583820004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e00004d0201204a756e6374696f6e000800004d02100c78636d087632206a756e6374696f6e204a756e6374696f6e0001242450617261636861696e0400b501010c7533320000002c4163636f756e744964333208011c6e6574776f726b510201244e6574776f726b496400010869640401205b75383b2033325d000100384163636f756e74496e646578363408011c6e6574776f726b510201244e6574776f726b4964000114696e64657828010c753634000200304163636f756e744b6579323008011c6e6574776f726b510201244e6574776f726b496400010c6b6579110101205b75383b2032305d0003003850616c6c6574496e7374616e6365040008010875380004003047656e6572616c496e6465780400c1010110753132380005002847656e6572616c4b65790400550201805765616b426f756e6465645665633c75382c20436f6e73745533323c33323e3e000600244f6e6c794368696c6400070024506c7572616c697479080108696459020118426f64794964000110706172745d020120426f6479506172740008000051020c0c78636d087632244e6574776f726b49640001100c416e79000000144e616d65640400550201805765616b426f756e6465645665633c75382c20436f6e73745533323c33323e3e00010020506f6c6b61646f74000200184b7573616d61000300005502101c73705f636f72651c626f756e646564407765616b5f626f756e6465645f766563385765616b426f756e64656456656308045401080453000004003001185665633c543e000059020c0c78636d08763218426f6479496400012810556e6974000000144e616d65640400550201805765616b426f756e6465645665633c75382c20436f6e73745533323c33323e3e00010014496e6465780400b501010c7533320002002445786563757469766500030024546563686e6963616c0004002c4c656769736c6174697665000500204a7564696369616c0006001c446566656e73650007003841646d696e697374726174696f6e000800205472656173757279000900005d020c0c78636d08763220426f64795061727400011414566f6963650000001c4d656d62657273040114636f756e74b501010c753332000100204672616374696f6e08010c6e6f6db501010c75333200011464656e6f6db501010c7533320002004441744c6561737450726f706f7274696f6e08010c6e6f6db501010c75333200011464656e6f6db501010c753332000300484d6f72655468616e50726f706f7274696f6e08010c6e6f6db501010c75333200011464656e6f6db501010c753332000400006102100c78636d087632286d756c746961737365742c46756e676962696c6974790001082046756e6769626c650400c1010110753132380000002c4e6f6e46756e6769626c650400650201344173736574496e7374616e6365000100006502100c78636d087632286d756c74696173736574344173736574496e7374616e636500011c24556e646566696e656400000014496e6465780400c10101107531323800010018417272617934040040011c5b75383b20345d000200184172726179380400f101011c5b75383b20385d0003001c417272617931360400390101205b75383b2031365d0004001c4172726179333204000401205b75383b2033325d00050010426c6f62040030011c5665633c75383e000600006902080c78636d5856657273696f6e65644d756c74694c6f636174696f6e00010808563204004502014476323a3a4d756c74694c6f636174696f6e0000000856330400a901014476333a3a4d756c74694c6f636174696f6e000100006d020c4863756d756c75735f70616c6c65745f78636d1870616c6c6574144576656e7404045400010c34496e76616c6964466f726d617404000401205b75383b2033325d00000880446f776e77617264206d65737361676520697320696e76616c69642058434d2e205c5b206964205c5d48556e737570706f7274656456657273696f6e04000401205b75383b2033325d000108bc446f776e77617264206d65737361676520697320756e737570706f727465642076657273696f6e206f662058434d2e205c5b206964205c5d404578656375746564446f776e7761726408000401205b75383b2033325d0000a501011c4f7574636f6d65000208c4446f776e77617264206d65737361676520657865637574656420776974682074686520676976656e206f7574636f6d652e445c5b2069642c206f7574636f6d65205c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090971020c6063756d756c75735f70616c6c65745f646d705f71756575651870616c6c6574144576656e7404045400011834496e76616c6964466f726d61740401286d6573736167655f69640401244d657373616765496400000480446f776e77617264206d65737361676520697320696e76616c69642058434d2e48556e737570706f7274656456657273696f6e0401286d6573736167655f69640401244d6573736167654964000104bc446f776e77617264206d65737361676520697320756e737570706f727465642076657273696f6e206f662058434d2e404578656375746564446f776e776172640801286d6573736167655f69640401244d657373616765496400011c6f7574636f6d65a501011c4f7574636f6d65000204c4446f776e77617264206d65737361676520657865637574656420776974682074686520676976656e206f7574636f6d652e3c5765696768744578686175737465640c01286d6573736167655f69640401244d657373616765496400014072656d61696e696e675f77656967687424011857656967687400013c72657175697265645f776569676874240118576569676874000304f054686520776569676874206c696d697420666f722068616e646c696e6720646f776e77617264206d657373616765732077617320726561636865642e484f766572776569676874456e7175657565640c01286d6573736167655f69640401244d65737361676549640001406f7665727765696768745f696e64657810013c4f766572776569676874496e64657800013c72657175697265645f7765696768742401185765696768740004041901446f776e77617264206d657373616765206973206f76657277656967687420616e642077617320706c6163656420696e20746865206f7665727765696768742071756575652e484f76657277656967687453657276696365640801406f7665727765696768745f696e64657810013c4f766572776569676874496e64657800012c7765696768745f75736564240118576569676874000504e0446f776e77617264206d6573736167652066726f6d20746865206f766572776569676874207175657565207761732065786563757465642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909750208306672616d655f73797374656d14506861736500010c384170706c7945787472696e73696304001c010c7533320000003046696e616c697a6174696f6e00010038496e697469616c697a6174696f6e0002000079020000022c007d02000002c800810208306672616d655f73797374656d584c61737452756e74696d6555706772616465496e666f0000080130737065635f76657273696f6eb501014c636f6465633a3a436f6d706163743c7533323e000124737065635f6e616d658502016473705f72756e74696d653a3a52756e74696d65537472696e6700008502000005020089020c306672616d655f73797374656d1870616c6c65741043616c6c0404540001201872656d61726b04011872656d61726b30011c5665633c75383e000014684d616b6520736f6d65206f6e2d636861696e2072656d61726b2e002823203c7765696768743e202d20604f283129602c23203c2f7765696768743e387365745f686561705f7061676573040114706167657310010c753634000104f853657420746865206e756d626572206f6620706167657320696e2074686520576562417373656d626c7920656e7669726f6e6d656e74277320686561702e207365745f636f6465040110636f646530011c5665633c75383e0002306453657420746865206e65772072756e74696d6520636f64652e002823203c7765696768743e31012d20604f2843202b2053296020776865726520604360206c656e677468206f662060636f64656020616e642060536020636f6d706c6578697479206f66206063616e5f7365745f636f64656045012d20312063616c6c20746f206063616e5f7365745f636f6465603a20604f28532960202863616c6c73206073705f696f3a3a6d6973633a3a72756e74696d655f76657273696f6e60207768696368206973342020657870656e73697665292e842d20312073746f726167652077726974652028636f64656320604f28432960292e402d203120646967657374206974656d2e282d2031206576656e742e4d0154686520776569676874206f6620746869732066756e6374696f6e20697320646570656e64656e74206f6e207468652072756e74696d652c206275742067656e6572616c6c7920746869732069732076657279b8657870656e736976652e2057652077696c6c207472656174207468697320617320612066756c6c20626c6f636b2e2c23203c2f7765696768743e5c7365745f636f64655f776974686f75745f636865636b73040110636f646530011c5665633c75383e000324190153657420746865206e65772072756e74696d6520636f646520776974686f757420646f696e6720616e7920636865636b73206f662074686520676976656e2060636f6465602e002823203c7765696768743e8c2d20604f2843296020776865726520604360206c656e677468206f662060636f646560842d20312073746f726167652077726974652028636f64656320604f28432960292e402d203120646967657374206974656d2e282d2031206576656e742e550154686520776569676874206f6620746869732066756e6374696f6e20697320646570656e64656e74206f6e207468652072756e74696d652e2057652077696c6c207472656174207468697320617320612066756c6c48626c6f636b2e2023203c2f7765696768743e2c7365745f73746f726167650401146974656d738d0201345665633c4b657956616c75653e0004046853657420736f6d65206974656d73206f662073746f726167652e306b696c6c5f73746f726167650401106b657973950201205665633c4b65793e000504744b696c6c20736f6d65206974656d732066726f6d2073746f726167652e2c6b696c6c5f70726566697808011870726566697830010c4b657900011c7375626b6579731c010c75333200061011014b696c6c20616c6c2073746f72616765206974656d7320776974682061206b657920746861742073746172747320776974682074686520676976656e207072656669782e0039012a2a4e4f54453a2a2a2057652072656c79206f6e2074686520526f6f74206f726967696e20746f2070726f7669646520757320746865206e756d626572206f66207375626b65797320756e6465723d0174686520707265666978207765206172652072656d6f76696e6720746f2061636375726174656c792063616c63756c6174652074686520776569676874206f6620746869732066756e6374696f6e2e4472656d61726b5f776974685f6576656e7404011872656d61726b30011c5665633c75383e000704a44d616b6520736f6d65206f6e2d636861696e2072656d61726b20616e6420656d6974206576656e742e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e8d020000029102009102000004083030009502000002300099020c306672616d655f73797374656d186c696d69747330426c6f636b5765696768747300000c0128626173655f626c6f636b2401185765696768740001246d61785f626c6f636b2401185765696768740001247065725f636c6173739d0201845065724469737061746368436c6173733c57656967687473506572436c6173733e00009d020c346672616d655f737570706f7274206469737061746368405065724469737061746368436c61737304045401a102000c01186e6f726d616ca10201045400012c6f7065726174696f6e616ca1020104540001246d616e6461746f7279a1020104540000a1020c306672616d655f73797374656d186c696d6974733c57656967687473506572436c6173730000100138626173655f65787472696e7369632401185765696768740001346d61785f65787472696e736963a50201384f7074696f6e3c5765696768743e0001246d61785f746f74616ca50201384f7074696f6e3c5765696768743e0001207265736572766564a50201384f7074696f6e3c5765696768743e0000a50204184f7074696f6e04045401240108104e6f6e6500000010536f6d650400240000010000a9020c306672616d655f73797374656d186c696d6974732c426c6f636b4c656e677468000004010c6d6178ad0201545065724469737061746368436c6173733c7533323e0000ad020c346672616d655f737570706f7274206469737061746368405065724469737061746368436c617373040454011c000c01186e6f726d616c1c01045400012c6f7065726174696f6e616c1c0104540001246d616e6461746f72791c0104540000b102082873705f776569676874733c52756e74696d65446257656967687400000801107265616410010c753634000114777269746510010c7536340000b502082873705f76657273696f6e3852756e74696d6556657273696f6e0000200124737065635f6e616d658502013452756e74696d65537472696e67000124696d706c5f6e616d658502013452756e74696d65537472696e67000144617574686f72696e675f76657273696f6e1c010c753332000130737065635f76657273696f6e1c010c753332000130696d706c5f76657273696f6e1c010c75333200011061706973b902011c4170697356656300014c7472616e73616374696f6e5f76657273696f6e1c010c75333200013473746174655f76657273696f6e08010875380000b902040c436f7704045401bd02000400bd02000000bd02000002c10200c10200000408f1011c00c5020c306672616d655f73797374656d1870616c6c6574144572726f720404540001183c496e76616c6964537065634e616d650000081101546865206e616d65206f662073706563696669636174696f6e20646f6573206e6f74206d61746368206265747765656e207468652063757272656e742072756e74696d6550616e6420746865206e65772072756e74696d652e685370656356657273696f6e4e65656473546f496e63726561736500010841015468652073706563696669636174696f6e2076657273696f6e206973206e6f7420616c6c6f77656420746f206465637265617365206265747765656e207468652063757272656e742072756e74696d6550616e6420746865206e65772072756e74696d652e744661696c6564546f4578747261637452756e74696d6556657273696f6e00020cec4661696c656420746f2065787472616374207468652072756e74696d652076657273696f6e2066726f6d20746865206e65772072756e74696d652e0009014569746865722063616c6c696e672060436f72655f76657273696f6e60206f72206465636f64696e67206052756e74696d6556657273696f6e60206661696c65642e4c4e6f6e44656661756c74436f6d706f73697465000304fc537569636964652063616c6c6564207768656e20746865206163636f756e7420686173206e6f6e2d64656661756c7420636f6d706f7369746520646174612e3c4e6f6e5a65726f526566436f756e74000404350154686572652069732061206e6f6e2d7a65726f207265666572656e636520636f756e742070726576656e74696e6720746865206163636f756e742066726f6d206265696e67207075726765642e3043616c6c46696c7465726564000504d0546865206f726967696e2066696c7465722070726576656e74207468652063616c6c20746f20626520646973706174636865642e046c4572726f7220666f72207468652053797374656d2070616c6c6574c902101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454012c045300000400790201185665633c543e0000cd020c4070616c6c65745f74696d657374616d701870616c6c65741043616c6c0404540001040c73657404010c6e6f77280124543a3a4d6f6d656e7400004054536574207468652063757272656e742074696d652e005501546869732063616c6c2073686f756c6420626520696e766f6b65642065786163746c79206f6e63652070657220626c6f636b2e2049742077696c6c2070616e6963206174207468652066696e616c697a6174696f6ed470686173652c20696620746869732063616c6c206861736e2774206265656e20696e766f6b656420627920746861742074696d652e0041015468652074696d657374616d702073686f756c642062652067726561746572207468616e207468652070726576696f7573206f6e652062792074686520616d6f756e742073706563696669656420627940604d696e696d756d506572696f64602e00d4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d7573742062652060496e686572656e74602e002823203c7765696768743e31012d20604f2831296020284e6f7465207468617420696d706c656d656e746174696f6e73206f6620604f6e54696d657374616d7053657460206d75737420616c736f20626520604f283129602961012d20312073746f72616765207265616420616e6420312073746f72616765206d75746174696f6e2028636f64656320604f28312960292e202862656361757365206f6620604469645570646174653a3a74616b656020696e402020606f6e5f66696e616c697a656029d42d2031206576656e742068616e646c657220606f6e5f74696d657374616d705f736574602e204d75737420626520604f283129602e2c23203c2f7765696768743e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ed1020000040c0018a400d5020c3870616c6c65745f696e64696365731870616c6c65741043616c6c04045400011414636c61696d040114696e64657810013c543a3a4163636f756e74496e6465780000489841737369676e20616e2070726576696f75736c7920756e61737369676e656420696e6465782e00dc5061796d656e743a20604465706f736974602069732072657365727665642066726f6d207468652073656e646572206163636f756e742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00f02d2060696e646578603a2074686520696e64657820746f20626520636c61696d65642e2054686973206d757374206e6f7420626520696e207573652e0090456d6974732060496e64657841737369676e656460206966207375636365737366756c2e002823203c7765696768743e242d20604f283129602e982d204f6e652073746f72616765206d75746174696f6e2028636f64656320604f28312960292e602d204f6e652072657365727665206f7065726174696f6e2e302d204f6e65206576656e742e4c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d902d204442205765696768743a203120526561642f577269746520284163636f756e7473292c23203c2f7765696768743e207472616e7366657208010c6e6577d90201504163636f756e7449644c6f6f6b75704f663c543e000114696e64657810013c543a3a4163636f756e74496e6465780001505d0141737369676e20616e20696e64657820616c7265616479206f776e6564206279207468652073656e64657220746f20616e6f74686572206163636f756e742e205468652062616c616e6365207265736572766174696f6eb86973206566666563746976656c79207472616e7366657272656420746f20746865206e6577206163636f756e742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0025012d2060696e646578603a2074686520696e64657820746f2062652072652d61737369676e65642e2054686973206d757374206265206f776e6564206279207468652073656e6465722e5d012d20606e6577603a20746865206e6577206f776e6572206f662074686520696e6465782e20546869732066756e6374696f6e2069732061206e6f2d6f7020696620697420697320657175616c20746f2073656e6465722e0090456d6974732060496e64657841737369676e656460206966207375636365737366756c2e002823203c7765696768743e242d20604f283129602e982d204f6e652073746f72616765206d75746174696f6e2028636f64656320604f28312960292e642d204f6e65207472616e73666572206f7065726174696f6e2e302d204f6e65206576656e742e4c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d302d204442205765696768743ae02020202d2052656164733a20496e6469636573204163636f756e74732c2053797374656d204163636f756e742028726563697069656e7429e42020202d205772697465733a20496e6469636573204163636f756e74732c2053797374656d204163636f756e742028726563697069656e74292c23203c2f7765696768743e1066726565040114696e64657810013c543a3a4163636f756e74496e646578000248944672656520757020616e20696e646578206f776e6564206279207468652073656e6465722e005d015061796d656e743a20416e792070726576696f7573206465706f73697420706c6163656420666f722074686520696e64657820697320756e726573657276656420696e207468652073656e646572206163636f756e742e005501546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e646572206d757374206f776e2074686520696e6465782e000d012d2060696e646578603a2074686520696e64657820746f2062652066726565642e2054686973206d757374206265206f776e6564206279207468652073656e6465722e0084456d6974732060496e646578467265656460206966207375636365737366756c2e002823203c7765696768743e242d20604f283129602e982d204f6e652073746f72616765206d75746174696f6e2028636f64656320604f28312960292e602d204f6e652072657365727665206f7065726174696f6e2e302d204f6e65206576656e742e4c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d902d204442205765696768743a203120526561642f577269746520284163636f756e7473292c23203c2f7765696768743e38666f7263655f7472616e736665720c010c6e6577d90201504163636f756e7449644c6f6f6b75704f663c543e000114696e64657810013c543a3a4163636f756e74496e646578000118667265657a65a40110626f6f6c0003545501466f72636520616e20696e64657820746f20616e206163636f756e742e205468697320646f65736e277420726571756972652061206465706f7369742e2049662074686520696e64657820697320616c7265616479e868656c642c207468656e20616e79206465706f736974206973207265696d62757273656420746f206974732063757272656e74206f776e65722e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e00a42d2060696e646578603a2074686520696e64657820746f206265202872652d2961737369676e65642e5d012d20606e6577603a20746865206e6577206f776e6572206f662074686520696e6465782e20546869732066756e6374696f6e2069732061206e6f2d6f7020696620697420697320657175616c20746f2073656e6465722e41012d2060667265657a65603a2069662073657420746f206074727565602c2077696c6c20667265657a652074686520696e64657820736f2069742063616e6e6f74206265207472616e736665727265642e0090456d6974732060496e64657841737369676e656460206966207375636365737366756c2e002823203c7765696768743e242d20604f283129602e982d204f6e652073746f72616765206d75746174696f6e2028636f64656320604f28312960292e782d20557020746f206f6e652072657365727665206f7065726174696f6e2e302d204f6e65206576656e742e4c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d302d204442205765696768743af42020202d2052656164733a20496e6469636573204163636f756e74732c2053797374656d204163636f756e7420286f726967696e616c206f776e657229f82020202d205772697465733a20496e6469636573204163636f756e74732c2053797374656d204163636f756e7420286f726967696e616c206f776e6572292c23203c2f7765696768743e18667265657a65040114696e64657810013c543a3a4163636f756e74496e6465780004484101467265657a6520616e20696e64657820736f2069742077696c6c20616c7761797320706f696e7420746f207468652073656e646572206163636f756e742e205468697320636f6e73756d657320746865206465706f7369742e005901546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d757374206861766520616c6e6f6e2d66726f7a656e206163636f756e742060696e646578602e00ac2d2060696e646578603a2074686520696e64657820746f2062652066726f7a656e20696e20706c6163652e0088456d6974732060496e64657846726f7a656e60206966207375636365737366756c2e002823203c7765696768743e242d20604f283129602e982d204f6e652073746f72616765206d75746174696f6e2028636f64656320604f28312960292e702d20557020746f206f6e6520736c617368206f7065726174696f6e2e302d204f6e65206576656e742e4c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d902d204442205765696768743a203120526561642f577269746520284163636f756e7473292c23203c2f7765696768743e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ed9020c2873705f72756e74696d65306d756c746961646472657373304d756c74694164647265737308244163636f756e7449640100304163636f756e74496e64657801ac011408496404000001244163636f756e74496400000014496e6465780400dd0201304163636f756e74496e6465780001000c526177040030011c5665633c75383e0002002441646472657373333204000401205b75383b2033325d000300244164647265737332300400110101205b75383b2032305d00040000dd02000006ac00e1020c3870616c6c65745f696e64696365731870616c6c6574144572726f720404540001142c4e6f7441737369676e65640000048c54686520696e64657820776173206e6f7420616c72656164792061737369676e65642e204e6f744f776e6572000104a454686520696e6465782069732061737369676e656420746f20616e6f74686572206163636f756e742e14496e5573650002047054686520696e64657820776173206e6f7420617661696c61626c652e2c4e6f745472616e73666572000304c854686520736f7572636520616e642064657374696e6174696f6e206163636f756e747320617265206964656e746963616c2e245065726d616e656e74000404d054686520696e646578206973207065726d616e656e7420616e64206d6179206e6f742062652066726565642f6368616e6765642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909e502101c73705f636f72651c626f756e646564407765616b5f626f756e6465645f766563385765616b426f756e64656456656308045401e902045300000400f10201185665633c543e0000e902083c70616c6c65745f62616c616e6365732c42616c616e63654c6f636b041c42616c616e63650118000c01086964f10101384c6f636b4964656e746966696572000118616d6f756e7418011c42616c616e636500011c726561736f6e73ed02011c526561736f6e730000ed02083c70616c6c65745f62616c616e6365731c526561736f6e7300010c0c466565000000104d6973630001000c416c6c00020000f102000002e90200f502101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401f902045300000400fd0201185665633c543e0000f902083c70616c6c65745f62616c616e6365732c52657365727665446174610844526573657276654964656e74696669657201f1011c42616c616e63650118000801086964f1010144526573657276654964656e746966696572000118616d6f756e7418011c42616c616e63650000fd02000002f9020001030c3c70616c6c65745f62616c616e6365731870616c6c65741043616c6c080454000449000118207472616e7366657208011064657374d90201504163636f756e7449644c6f6f6b75704f663c543e00011476616c7565c1010128543a3a42616c616e6365000064d45472616e7366657220736f6d65206c697175696420667265652062616c616e636520746f20616e6f74686572206163636f756e742e000501607472616e73666572602077696c6c207365742074686520604672656542616c616e636560206f66207468652073656e64657220616e642072656365697665722e11014966207468652073656e6465722773206163636f756e742069732062656c6f7720746865206578697374656e7469616c206465706f736974206173206120726573756c74b06f6620746865207472616e736665722c20746865206163636f756e742077696c6c206265207265617065642e001501546865206469737061746368206f726967696e20666f7220746869732063616c6c206d75737420626520605369676e65646020627920746865207472616e736163746f722e002823203c7765696768743e61012d20446570656e64656e74206f6e20617267756d656e747320627574206e6f7420637269746963616c2c20676976656e2070726f70657220696d706c656d656e746174696f6e7320666f7220696e70757420636f6e66696794202074797065732e205365652072656c617465642066756e6374696f6e732062656c6f772e31012d20497420636f6e7461696e732061206c696d69746564206e756d626572206f6620726561647320616e642077726974657320696e7465726e616c6c7920616e64206e6f20636f6d706c6578382020636f6d7075746174696f6e2e004852656c617465642066756e6374696f6e733a004d0120202d2060656e737572655f63616e5f77697468647261776020697320616c776179732063616c6c656420696e7465726e616c6c792062757420686173206120626f756e64656420636f6d706c65786974792e290120202d205472616e7366657272696e672062616c616e63657320746f206163636f756e7473207468617420646964206e6f74206578697374206265666f72652077696c6c206361757365cc2020202060543a3a4f6e4e65774163636f756e743a3a6f6e5f6e65775f6163636f756e746020746f2062652063616c6c65642e5d0120202d2052656d6f76696e6720656e6f7567682066756e64732066726f6d20616e206163636f756e742077696c6c20747269676765722060543a3a4475737452656d6f76616c3a3a6f6e5f756e62616c616e636564602e5d0120202d20607472616e736665725f6b6565705f616c6976656020776f726b73207468652073616d652077617920617320607472616e73666572602c206275742068617320616e206164646974696f6e616c20636865636bdc202020207468617420746865207472616e736665722077696c6c206e6f74206b696c6c20746865206f726967696e206163636f756e742e842d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d11012d204f726967696e206163636f756e7420697320616c726561647920696e206d656d6f72792c20736f206e6f204442206f7065726174696f6e7320666f72207468656d2e2c23203c2f7765696768743e2c7365745f62616c616e63650c010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e0001206e65775f66726565c1010128543a3a42616c616e63650001306e65775f7265736572766564c1010128543a3a42616c616e636500012090536574207468652062616c616e636573206f66206120676976656e206163636f756e742e001d01546869732077696c6c20616c74657220604672656542616c616e63656020616e642060526573657276656442616c616e63656020696e2073746f726167652e2069742077696c6c3101616c736f20616c7465722074686520746f74616c2069737375616e6365206f66207468652073797374656d202860546f74616c49737375616e6365602920617070726f7072696174656c792e1501496620746865206e65772066726565206f722072657365727665642062616c616e63652069732062656c6f7720746865206578697374656e7469616c206465706f7369742cfc69742077696c6c20726573657420746865206163636f756e74206e6f6e63652028606672616d655f73797374656d3a3a4163636f756e744e6f6e636560292e00b0546865206469737061746368206f726967696e20666f7220746869732063616c6c2069732060726f6f74602e38666f7263655f7472616e736665720c0118736f75726365d90201504163636f756e7449644c6f6f6b75704f663c543e00011064657374d90201504163636f756e7449644c6f6f6b75704f663c543e00011476616c7565c1010128543a3a42616c616e63650002184d0145786163746c7920617320607472616e73666572602c2065786365707420746865206f726967696e206d75737420626520726f6f7420616e642074686520736f75726365206163636f756e74206d6179206265287370656369666965642e2823203c7765696768743e4d012d2053616d65206173207472616e736665722c20627574206164646974696f6e616c207265616420616e6420777269746520626563617573652074686520736f75726365206163636f756e74206973206e6f747c2020617373756d656420746f20626520696e20746865206f7665726c61792e2c23203c2f7765696768743e4c7472616e736665725f6b6565705f616c69766508011064657374d90201504163636f756e7449644c6f6f6b75704f663c543e00011476616c7565c1010128543a3a42616c616e63650003184d0153616d6520617320746865205b607472616e73666572605d2063616c6c2c206275742077697468206120636865636b207468617420746865207472616e736665722077696c6c206e6f74206b696c6c207468653c6f726967696e206163636f756e742e00b8393925206f66207468652074696d6520796f752077616e74205b607472616e73666572605d20696e73746561642e00c05b607472616e73666572605d3a207374727563742e50616c6c65742e68746d6c236d6574686f642e7472616e73666572307472616e736665725f616c6c08011064657374d90201504163636f756e7449644c6f6f6b75704f663c543e0001286b6565705f616c697665a40110626f6f6c00044405015472616e736665722074686520656e74697265207472616e7366657261626c652062616c616e63652066726f6d207468652063616c6c6572206163636f756e742e0059014e4f54453a20546869732066756e6374696f6e206f6e6c7920617474656d70747320746f207472616e73666572205f7472616e7366657261626c655f2062616c616e6365732e2054686973206d65616e7320746861746101616e79206c6f636b65642c2072657365727665642c206f72206578697374656e7469616c206465706f7369747320287768656e20606b6565705f616c6976656020697320607472756560292c2077696c6c206e6f742062655d017472616e7366657272656420627920746869732066756e6374696f6e2e20546f20656e73757265207468617420746869732066756e6374696f6e20726573756c747320696e2061206b696c6c6564206163636f756e742c4501796f75206d69676874206e65656420746f207072657061726520746865206163636f756e742062792072656d6f76696e6720616e79207265666572656e636520636f756e746572732c2073746f72616765406465706f736974732c206574632e2e2e00c0546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205369676e65642e00a02d206064657374603a2054686520726563697069656e74206f6620746865207472616e736665722e59012d20606b6565705f616c697665603a204120626f6f6c65616e20746f2064657465726d696e652069662074686520607472616e736665725f616c6c60206f7065726174696f6e2073686f756c642073656e6420616c6c4d0120206f66207468652066756e647320746865206163636f756e74206861732c2063617573696e67207468652073656e646572206163636f756e7420746f206265206b696c6c6564202866616c7365292c206f72590120207472616e736665722065766572797468696e6720657863657074206174206c6561737420746865206578697374656e7469616c206465706f7369742c2077686963682077696c6c2067756172616e74656520746fc820206b656570207468652073656e646572206163636f756e7420616c697665202874727565292e2023203c7765696768743e39012d204f2831292e204a757374206c696b65207472616e736665722c206275742072656164696e672074686520757365722773207472616e7366657261626c652062616c616e63652066697273742e302020233c2f7765696768743e3c666f7263655f756e7265736572766508010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e74180128543a3a42616c616e636500050cb0556e7265736572766520736f6d652062616c616e63652066726f6d2061207573657220627920666f7263652e006c43616e206f6e6c792062652063616c6c656420627920524f4f542e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e05030c3c70616c6c65745f62616c616e6365731870616c6c6574144572726f720804540004490001203856657374696e6742616c616e63650000049856657374696e672062616c616e636520746f6f206869676820746f2073656e642076616c7565544c69717569646974795265737472696374696f6e73000104c44163636f756e74206c6971756964697479207265737472696374696f6e732070726576656e74207769746864726177616c4c496e73756666696369656e7442616c616e63650002047842616c616e636520746f6f206c6f7720746f2073656e642076616c75652e484578697374656e7469616c4465706f736974000304e856616c756520746f6f206c6f7720746f20637265617465206163636f756e742064756520746f206578697374656e7469616c206465706f736974244b656570416c6976650004048c5472616e736665722f7061796d656e7420776f756c64206b696c6c206163636f756e745c4578697374696e6756657374696e675363686564756c65000504c8412076657374696e67207363686564756c6520616c72656164792065786973747320666f722074686973206163636f756e742c446561644163636f756e740006048842656e6566696369617279206163636f756e74206d757374207072652d65786973743c546f6f4d616e795265736572766573000704ac4e756d626572206f66206e616d656420726573657276657320657863656564204d6178526573657276657304b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090909030c3473705f61726974686d657469632c66697865645f706f696e7424466978656455313238000004001801107531323800000d03086870616c6c65745f7472616e73616374696f6e5f7061796d656e742052656c6561736573000108245631416e6369656e74000000085632000100001103101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e6465645665630804540115030453000004001d0301185665633c543e00001503104473705f636f6e73656e7375735f617572611c737232353531392c6170705f73723235353139185075626c6963000004001903013c737232353531393a3a5075626c6963000019030c1c73705f636f72651c73723235353139185075626c6963000004000401205b75383b2033325d00001d030000021503002103084873705f636f6e73656e7375735f736c6f747310536c6f740000040010010c75363400002503000002000029030000022d03002d030000040800310300310308447370697269746e65745f72756e74696d652c53657373696f6e4b657973000004011061757261150301c43c41757261206173202463726174653a3a426f756e64546f52756e74696d654170705075626c69633e3a3a5075626c6963000035030000021c003903000004083d0330003d030c1c73705f636f72651863727970746f244b65795479706549640000040040011c5b75383b20345d000041030c3870616c6c65745f73657373696f6e1870616c6c65741043616c6c040454000108207365745f6b6579730801106b6579733103011c543a3a4b65797300011470726f6f6630011c5665633c75383e000038e453657473207468652073657373696f6e206b6579287329206f66207468652066756e6374696f6e2063616c6c657220746f20606b657973602e1d01416c6c6f777320616e206163636f756e7420746f20736574206974732073657373696f6e206b6579207072696f7220746f206265636f6d696e6720612076616c696461746f722ec05468697320646f65736e27742074616b652065666665637420756e74696c20746865206e6578742073657373696f6e2e00d0546865206469737061746368206f726967696e206f6620746869732066756e6374696f6e206d757374206265207369676e65642e002823203c7765696768743e11012d20436f6d706c65786974793a20604f283129602e2041637475616c20636f737420646570656e6473206f6e20746865206e756d626572206f66206c656e677468206f6698202060543a3a4b6579733a3a6b65795f6964732829602077686963682069732066697865642eec2d20446252656164733a20606f726967696e206163636f756e74602c2060543a3a56616c696461746f7249644f66602c20604e6578744b65797360a02d2044625772697465733a20606f726967696e206163636f756e74602c20604e6578744b65797360802d204462526561647320706572206b65792069643a20604b65794f776e657260842d20446257726974657320706572206b65792069643a20604b65794f776e6572602c23203c2f7765696768743e2870757267655f6b657973000140c852656d6f76657320616e792073657373696f6e206b6579287329206f66207468652066756e6374696f6e2063616c6c65722e00c05468697320646f65736e27742074616b652065666665637420756e74696c20746865206e6578742073657373696f6e2e005501546865206469737061746368206f726967696e206f6620746869732066756e6374696f6e206d757374206265205369676e656420616e6420746865206163636f756e74206d757374206265206569746865722062655d01636f6e7665727469626c6520746f20612076616c696461746f72204944207573696e672074686520636861696e2773207479706963616c2061646472657373696e672073797374656d20287468697320757375616c6c7951016d65616e73206265696e67206120636f6e74726f6c6c6572206163636f756e7429206f72206469726563746c7920636f6e7665727469626c6520696e746f20612076616c696461746f722049442028776869636894757375616c6c79206d65616e73206265696e672061207374617368206163636f756e74292e002823203c7765696768743e61012d20436f6d706c65786974793a20604f2831296020696e206e756d626572206f66206b65792074797065732e2041637475616c20636f737420646570656e6473206f6e20746865206e756d626572206f66206c656e677468a420206f662060543a3a4b6579733a3a6b65795f6964732829602077686963682069732066697865642eec2d20446252656164733a2060543a3a56616c696461746f7249644f66602c20604e6578744b657973602c20606f726967696e206163636f756e7460a02d2044625772697465733a20604e6578744b657973602c20606f726967696e206163636f756e7460842d20446257726974657320706572206b65792069643a20604b65794f776e6572602c23203c2f7765696768743e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e45030c3870616c6c65745f73657373696f6e1870616c6c6574144572726f7204045400011430496e76616c696450726f6f6600000460496e76616c6964206f776e6572736869702070726f6f662e5c4e6f4173736f63696174656456616c696461746f7249640001049c4e6f206173736f6369617465642076616c696461746f7220494420666f72206163636f756e742e344475706c6963617465644b65790002046452656769737465726564206475706c6963617465206b65792e184e6f4b657973000304a44e6f206b65797320617265206173736f63696174656420776974682074686973206163636f756e742e244e6f4163636f756e7400040419014b65792073657474696e67206163636f756e74206973206e6f74206c6976652c20736f206974277320696d706f737369626c6520746f206173736f6369617465206b6579732e04744572726f7220666f72207468652073657373696f6e2070616c6c65742e49030c4470617261636861696e5f7374616b696e6714747970657324526f756e64496e666f042c426c6f636b4e756d6265720110000c011c63757272656e741c013053657373696f6e496e646578000114666972737410012c426c6f636b4e756d6265720001186c656e67746810012c426c6f636b4e756d62657200004d030c4470617261636861696e5f7374616b696e671474797065734444656c65676174696f6e436f756e7465720000080114726f756e641c013053657373696f6e496e64657800011c636f756e7465721c010c753332000051030c4470617261636861696e5f7374616b696e67147479706573145374616b6508244163636f756e74496401001c42616c616e63650118000801146f776e65720001244163636f756e744964000118616d6f756e7418011c42616c616e6365000055030c4470617261636861696e5f7374616b696e671474797065732443616e6469646174650c244163636f756e74496401001c42616c616e63650118644d617844656c656761746f727350657243616e646964617465000014010869640001244163636f756e7449640001147374616b6518011c42616c616e636500012864656c656761746f727359030101014f7264657265645365743c5374616b653c4163636f756e7449642c2042616c616e63653e2c204d617844656c656761746f727350657243616e6469646174653e000114746f74616c18011c42616c616e63650001187374617475736503013c43616e646964617465537461747573000059030c4470617261636861696e5f7374616b696e670c736574284f7264657265645365740804540151030453000004005d030140426f756e6465645665633c542c20533e00005d03101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454015103045300000400610301185665633c543e0000610300000251030065030c4470617261636861696e5f7374616b696e671474797065733c43616e646964617465537461747573000108184163746976650000001c4c656176696e6704001c013053657373696f6e496e6465780001000069030c4470617261636861696e5f7374616b696e6714747970657328546f74616c5374616b65041c42616c616e6365011800080124636f6c6c61746f727318011c42616c616e636500012864656c656761746f727318011c42616c616e636500006d030c4470617261636861696e5f7374616b696e670c736574284f72646572656453657408045401510304530000040071030140426f756e6465645665633c542c20533e00007103101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454015103045300000400610301185665633c543e000075030c4470617261636861696e5f7374616b696e6724696e666c6174696f6e34496e666c6174696f6e496e666f0000080120636f6c6c61746f727903012c5374616b696e67496e666f00012464656c656761746f727903012c5374616b696e67496e666f000079030c4470617261636861696e5f7374616b696e6724696e666c6174696f6e2c5374616b696e67496e666f00000801206d61785f726174658c012c5065727175696e74696c6c00012c7265776172645f726174657d0301285265776172645261746500007d030c4470617261636861696e5f7374616b696e6724696e666c6174696f6e28526577617264526174650000080118616e6e75616c8c012c5065727175696e74696c6c0001247065725f626c6f636b8c012c5065727175696e74696c6c00008103101c73705f636f72651c626f756e64656444626f756e6465645f62747265655f6d61703c426f756e64656442547265654d61700c044b0110045601180453000004008503013842547265654d61703c4b2c20563e00008503042042547265654d617008044b011004560118000400890300000089030000028d03008d030000040810180091030c4470617261636861696e5f7374616b696e671870616c6c65741043616c6c0404540001543c666f7263655f6e65775f726f756e64000018d0466f7263657320746865207374617274206f6620746865206e657720726f756e6420696e20746865206e65787420626c6f636b2e00a0546865206e657720726f756e642077696c6c20626520656e666f7263656420766961203c54206173a453686f756c64456e6453657373696f6e3c5f3e3e3a3a73686f756c645f656e645f73657373696f6e2e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e347365745f696e666c6174696f6e100170636f6c6c61746f725f6d61785f726174655f70657263656e746167658c012c5065727175696e74696c6c000198636f6c6c61746f725f616e6e75616c5f7265776172645f726174655f70657263656e746167658c012c5065727175696e74696c6c00017464656c656761746f725f6d61785f726174655f70657263656e746167658c012c5065727175696e74696c6c00019c64656c656761746f725f616e6e75616c5f7265776172645f726174655f70657263656e746167658c012c5065727175696e74696c6c00013cf05365742074686520616e6e75616c20696e666c6174696f6e207261746520746f20646572697665207065722d726f756e6420696e666c6174696f6e2e00110154686520696e666c6174696f6e2064657461696c732061726520636f6e736964657265642076616c69642069662074686520616e6e75616c207265776172642072617465f0697320617070726f78696d6174656c7920746865207065722d626c6f636b207265776172642072617465206d756c7469706c69656420627920746865ac657374696d617465642a20746f74616c206e756d626572206f6620626c6f636b732070657220796561722e00cc54686520657374696d61746564206176657261676520626c6f636b2074696d65206973207477656c7665207365636f6e64732e000d014e4f54453a204974657261746573206f7665722043616e646964617465506f6f6c20616e6420666f7220656163682063616e646964617465206f766572207468656972090164656c656761746f727320746f207570646174652074686569722072657761726473206265666f72652074686520726577617264207261746573206368616e67652ee04e6565647320746f20626520696d70726f766564207768656e207363616c696e6720757020604d6178546f7043616e64696461746573602e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0068456d6974732060526f756e64496e666c6174696f6e536574602e6c7365745f6d61785f73656c65637465645f63616e6469646174657304010c6e65771c010c75333200022c090153657420746865206d6178696d756d206e756d626572206f6620636f6c6c61746f722063616e6469646174657320746861742063616e2062652073656c6563746564a861742074686520626567696e6e696e67206f6620656163682076616c69646174696f6e20726f756e642e00e84368616e67657320617265206e6f74206170706c69656420756e74696c20746865207374617274206f6620746865206e65787420726f756e642e000d01546865206e65772076616c7565206d75737420626520686967686572207468616e20746865206d696e696d756d20616c6c6f7765642061732073657420696e207468655c70616c6c6574277320636f6e66696775726174696f6e2e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0084456d69747320604d617853656c656374656443616e64696461746573536574602e507365745f626c6f636b735f7065725f726f756e6404010c6e6577100138543a3a426c6f636b4e756d62657200032cd453657420746865206e756d626572206f6620626c6f636b7320656163682076616c69646174696f6e20726f756e64206c617374732e000901496620746865206e65772076616c7565206973206c657373207468616e20746865206c656e677468206f66207468652063757272656e7420726f756e642c20746865050173797374656d2077696c6c20696d6d6564696174656c79206d6f766520746f20746865206e65787420726f756e6420696e20746865206e65787420626c6f636b2e000d01546865206e65772076616c7565206d75737420626520686967686572207468616e20746865206d696e696d756d20616c6c6f7765642061732073657420696e207468655c70616c6c6574277320636f6e66696775726174696f6e2e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0068456d6974732060426c6f636b73506572526f756e64536574602e5c7365745f6d61785f63616e6469646174655f7374616b6504010c6e657718013042616c616e63654f663c543e000418110153657420746865206d6178696d616c20616d6f756e74206120636f6c6c61746f722063616e207374616b652e204578697374696e67207374616b657320617265206e6f74206368616e6765642e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0084456d69747320604d617843616e6469646174655374616b654368616e676564602e58666f7263655f72656d6f76655f63616e646964617465040120636f6c6c61746f72d902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f757263650005300101466f726365646c792072656d6f766573206120636f6c6c61746f722063616e6469646174652066726f6d2074686520546f7043616e6469646174657320616e64e4636c6561727320616c6c206173736f6369617465642073746f7261676520666f72207468652063616e64696461746520616e642074686569722c64656c656761746f72732e00fc507265706172657320756e7374616b696e67206f66207468652063616e6469646174657320616e642074686569722064656c656761746f7273207374616b65f077686963682063616e20626520756e6c6f636b6564207669612060756e6c6f636b5f756e7374616b6564602061667465722077616974696e6720617409016c6561737420605374616b654475726174696f6e60206d616e7920626c6f636b732e20416c736f20696e6372656d656e7473207265776172647320666f722074686578636f6c6c61746f7220616e642074686569722064656c656761746f72732e00d4496e6372656d656e74732072657761726473206f662063616e64696461746520616e642074686569722064656c656761746f72732e0064456d697473206043616e64696461746552656d6f766564602e3c6a6f696e5f63616e646964617465730401147374616b6518013042616c616e63654f663c543e000644904a6f696e2074686520736574206f6620636f6c6c61746f722063616e646964617465732e00f8496e20746865206e65787420626c6f636b732c2069662074686520636f6c6c61746f722063616e6469646174652068617320656e6f7567682066756e6473fc7374616b656420746f20626520696e636c7564656420696e20616e79206f662074686520746f7020604d617853656c656374656443616e64696461746573600d01706f736974696f6e732c2069742077696c6c20626520696e636c7564656420696e2074686520736574206f6620706f74656e7469616c20617574686f72732074686174050177696c6c2062652073656c656374656420627920746865207374616b652d77656967687465642072616e646f6d2073656c656374696f6e2066756e6374696f6e2e00fc546865207374616b65642066756e6473206f6620746865206e657720636f6c6c61746f722063616e6469646174652061726520616464656420746f2074686568746f74616c207374616b65206f66207468652073797374656d2e00110154686520746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e2074686520616c6c6f7765642072616e67652061738873657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e00f0546865206469737061746368206f726967696e206d757374206e6f7420626520616c72656164792070617274206f662074686520636f6c6c61746f729463616e64696461746573206e6f72206f66207468652064656c656761746f7273207365742e0084456d69747320604a6f696e6564436f6c6c61746f7243616e64696461746573602e54696e69745f6c656176655f63616e6469646174657300076cc05265717565737420746f206c656176652074686520736574206f6620636f6c6c61746f722063616e646964617465732e0005014f6e20737563636573732c20746865206163636f756e7420697320696d6d6564696174656c792072656d6f7665642066726f6d207468652063616e6469646174651101706f6f6c20746f2070726576656e742073656c656374696f6e206173206120636f6c6c61746f7220696e206675747572652076616c69646174696f6e20726f756e64732cd862757420756e7374616b696e67206f66207468652066756e6473206973206578656375746564207769746820612064656c6179206f665c605374616b654475726174696f6e6020626c6f636b732e00ac546865206578697420726571756573742063616e2062652072657665727365642062792063616c6c696e67686063616e63656c5f6c656176655f63616e64696461746573602e00f454686973206f7065726174696f6e2061666665637473207468652070616c6c6574277320746f74616c207374616b6520616d6f756e742e204974206973110175706461746564206576656e2074686f756768207468652066756e6473206f66207468652063616e6469646174652077686f207369676e616c656420746f206c65617665fc617265207374696c6c206c6f636b656420666f7220604578697444656c617960202b20605374616b654475726174696f6e60206d6f726520626c6f636b732e000d014e4f544520313a2055706f6e207374617274696e672061206e65772073657373696f6e5f6920696e20606e65775f73657373696f6e602c207468652063757272656e741101746f702063616e64696461746573206172652073656c656374656420746f20626520626c6f636b20617574686f727320666f722073657373696f6e5f692b312e20416e7905016368616e67657320746f2074686520746f702063616e64696461746573206166746572776172647320646f206e6f74206566666563742074686520736574206f6660617574686f727320666f722073657373696f6e5f692b312ed8546875732c207765206861766520746f206d616b652073757265206e6f6e65206f6620746865736520636f6c6c61746f72732063616ebc6c65617665206265666f72652073657373696f6e5f692b3120656e64732062792064656c6179696e67207468656972846578697420666f7220604578697444656c617960206d616e7920626c6f636b732e00f04e4f544520323a20576520646f206e6f7420696e6372656d656e74207265776172647320696e20746869732065787472696e73696320617320746865110163616e64696461746520636f756c64207374696c6c20617574686f7220626c6f636b732c20616e64207468757320626520656c696769626c6520746f2072656365697665ac726577617264732c20756e74696c2074686520656e64206f6620746865206e6578742073657373696f6e2e0078456d6974732060436f6c6c61746f725363686564756c656445786974602e60657865637574655f6c656176655f63616e64696461746573040120636f6c6c61746f72d902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f7572636500084405014578656375746520746865206e6574776f726b2065786974206f6620612063616e6469646174652077686f2072657175657374656420746f206c65617665206174f06c65617374206045786974517565756544656c61796020726f756e64732061676f2e20507265706172657320756e7374616b696e67206f6620746865fc63616e6469646174657320616e642074686569722064656c656761746f7273207374616b652077686963682063616e20626520756e6c6f636b656420766961f460756e6c6f636b5f756e7374616b6564602061667465722077616974696e67206174206c6561737420605374616b654475726174696f6e60206d616e791c626c6f636b732e00c05265717569726573207468652063616e64696461746520746f2070726576696f75736c7920686176652063616c6c65646060696e69745f6c656176655f63616e64696461746573602e00ac546865206578697420726571756573742063616e2062652072657665727365642062792063616c6c696e67686063616e63656c5f6c656176655f63616e64696461746573602e00fc4e4f54453a204974657261746573206f7665722043616e646964617465506f6f6c20666f7220656163682063616e646964617465206f766572207468656972fc64656c656761746f727320746f2073657420726577617264732e204e6565647320746f20626520696d70726f766564207768656e207363616c696e672075704c604d6178546f7043616e64696461746573602e0054456d6974732060436f6c6c61746f724c656674602e5c63616e63656c5f6c656176655f63616e646964617465730009200501526576657274207468652070726576696f75736c79207265717565737465642065786974206f6620746865206e6574776f726b206f66206120636f6c6c61746f720d0163616e6469646174652e204f6e20737563636573732c2061646473206261636b207468652063616e64696461746520746f2074686520546f7043616e6469646174657368616e6420757064617465732074686520636f6c6c61746f72732e00c05265717569726573207468652063616e64696461746520746f2070726576696f75736c7920686176652063616c6c65646060696e69745f6c656176655f63616e64696461746573602e0074456d6974732060436f6c6c61746f7243616e63656c656445786974602e5063616e6469646174655f7374616b655f6d6f72650401106d6f726518013042616c616e63654f663c543e000a30a85374616b65206d6f72652066756e647320666f72206120636f6c6c61746f722063616e6469646174652e0001014966206e6f7420696e2074686520736574206f662063616e646964617465732c207374616b696e6720656e6f7567682066756e647320616c6c6f77732074686505016163636f756e7420746f20626520616464656420746f2069742e20546865206c617267657220616d6f756e74206f662066756e64732c2074686520686967686572dc6368616e63657320746f2062652073656c65637465642061732074686520617574686f72206f6620746865206e65787420626c6f636b2e00dc54686973206f7065726174696f6e2061666665637473207468652070616c6c6574277320746f74616c207374616b6520616d6f756e742e00f454686520726573756c74696e6720746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e20746865cc616c6c6f7765642072616e67652061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e006c456d6974732060436f6c6c61746f725374616b65644d6f7265602e5063616e6469646174655f7374616b655f6c6573730401106c65737318013042616c616e63654f663c543e000b3ca85374616b65206c6573732066756e647320666f72206120636f6c6c61746f722063616e6469646174652e000501496620746865206e657720616d6f756e74206f66207374616b65642066756e64206973206e6f74206c6172676520656e6f7567682c20746865206163636f756e74fc636f756c642062652072656d6f7665642066726f6d2074686520736574206f6620636f6c6c61746f722063616e6469646174657320616e64206e6f74206265a4636f6e7369646572656420666f7220617574686f72696e6720746865206e65787420626c6f636b732e00dc54686973206f7065726174696f6e2061666665637473207468652070616c6c6574277320746f74616c207374616b6520616d6f756e742e000d0154686520756e7374616b65642066756e647320617265206e6f742072656c656173656420696d6d6564696174656c7920746f20746865206163636f756e742c20627574d0746865792077696c6c20626520617661696c61626c6520616674657220605374616b654475726174696f6e6020626c6f636b732e00f454686520726573756c74696e6720746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e20746865cc616c6c6f7765642072616e67652061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e006c456d6974732060436f6c6c61746f725374616b65644c657373602e3c6a6f696e5f64656c656761746f7273080120636f6c6c61746f72d902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f75726365000118616d6f756e7418013042616c616e63654f663c543e000c5805014a6f696e2074686520736574206f662064656c656761746f72732062792064656c65676174696e6720746f206120636f6c6c61746f722063616e6469646174652e000501546865206163636f756e7420746861742077616e747320746f2064656c65676174652063616e6e6f742062652070617274206f662074686520636f6c6c61746f725c63616e64696461746573207365742061732077656c6c2e0009015468652063616c6c6572206d757374205f6e6f745f206861766520612064656c65676174696f6e2e20496620746861742069732074686520636173652c2074686579b061726520726571756972656420746f2066697273742072656d6f7665207468652064656c65676174696f6e2e00110154686520616d6f756e74207374616b6564206d757374206265206c6172676572207468616e20746865206d696e696d756d20726571756972656420746f206265636f6d65c4612064656c656761746f722061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e0009014173206f6e6c7920604d617844656c656761746f7273506572436f6c6c61746f72602061726520616c6c6f77656420746f2064656c6567617465206120676976656e0501636f6c6c61746f722c2074686520616d6f756e74207374616b6564206d757374206265206c6172676572207468616e20746865206c6f77657374206f6e6520696e01017468652063757272656e7420736574206f662064656c656761746f7220666f7220746865206f7065726174696f6e20746f206265206d65616e696e6766756c2e00090154686520636f6c6c61746f72277320746f74616c207374616b652061732077656c6c206173207468652070616c6c6574277320746f74616c207374616b652061726558696e63726561736564206163636f7264696e676c792e004c456d697473206044656c65676174696f6e602ebc456d697473206044656c65676174696f6e5265706c6163656460206966207468652063616e64696461746520686173f8604d617844656c656761746f7273506572436f6c6c61746f7260206d616e792064656c65676174696f6e732062757420746869732064656c656761746f72fc7374616b6564206d6f7265207468616e206f6e65206f6620746865206f746865722064656c656761746f7273206f6620746869732063616e6469646174652e406c656176655f64656c656761746f7273000d400d014c656176652074686520736574206f662064656c656761746f727320616e642c20627920696d706c69636174696f6e2c207265766f6b6520746865206f6e676f696e672c64656c65676174696f6e2e001101416c6c207374616b65642066756e647320617265206e6f7420756e6c6f636b656420696d6d6564696174656c792c2062757420746865792061726520616464656420746f0101746865207175657565206f662070656e64696e6720756e7374616b696e672c20616e642077696c6c206566666563746976656c792062652072656c65617365640901616674657220605374616b654475726174696f6e6020626c6f636b732066726f6d20746865206d6f6d656e74207468652064656c656761746f72206c65617665732e000d0154686973206f7065726174696f6e20726564756365732074686520746f74616c207374616b65206f66207468652070616c6c65742061732077656c6c2061732074686509017374616b6573206f6620616c6c20636f6c6c61746f7273207468617420776572652064656c6567617465642c20706f74656e7469616c6c7920616666656374696e6705017468656972206368616e63657320746f20626520696e636c7564656420696e2074686520736574206f662063616e6469646174657320696e20746865206e6578741c726f756e64732e0005014175746f6d61746963616c6c7920696e6372656d656e74732074686520616363756d756c617465642072657761726473206f6620746865206f726967696e206f665c7468652063757272656e742064656c65676174696f6e2e0058456d697473206044656c656761746f724c656674602e5064656c656761746f725f7374616b655f6d6f72650401106d6f726518013042616c616e63654f663c543e000e18dc496e63726561736520746865207374616b6520666f722064656c65676174696e67206120636f6c6c61746f722063616e6469646174652e0001014966206e6f7420696e2074686520736574206f662063616e646964617465732c207374616b696e6720656e6f7567682066756e647320616c6c6f77732074686594636f6c6c61746f722063616e64696461746520746f20626520616464656420746f2069742e0070456d697473206044656c656761746f725374616b65644d6f7265602e5064656c656761746f725f7374616b655f6c6573730401106c65737318013042616c616e63654f663c543e000f40d452656475636520746865207374616b6520666f722064656c65676174696e67206120636f6c6c61746f722063616e6469646174652e000901496620746865206e657720616d6f756e74206f66207374616b65642066756e64206973206e6f74206c6172676520656e6f7567682c2074686520636f6c6c61746f72fc636f756c642062652072656d6f7665642066726f6d2074686520736574206f6620636f6c6c61746f722063616e6469646174657320616e64206e6f74206265a4636f6e7369646572656420666f7220617574686f72696e6720746865206e65787420626c6f636b732e00090154686520756e7374616b65642066756e647320617265206e6f742072656c6561736520696d6d6564696174656c7920746f20746865206163636f756e742c20627574d0746865792077696c6c20626520617661696c61626c6520616674657220605374616b654475726174696f6e6020626c6f636b732e0001015468652072656d61696e696e67207374616b65642066756e6473206d757374207374696c6c206265206c6172676572207468616e20746865206d696e696d756df0726571756972656420627920746869732070616c6c657420746f206d61696e7461696e2074686520737461747573206f662064656c656761746f722e00f454686520726573756c74696e6720746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e20746865cc616c6c6f7765642072616e67652061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e0070456d697473206044656c656761746f725374616b65644c657373602e3c756e6c6f636b5f756e7374616b6564040118746172676574d902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f75726365001028f4556e6c6f636b20616c6c2070726576696f75736c79207374616b65642066756e6473207468617420617265206e6f7720617661696c61626c6520666f720501756e6c6f636b696e6720627920746865206f726967696e206163636f756e7420616674657220605374616b654475726174696f6e6020626c6f636b73206861766520656c61707365642e00fc5765696768743a204f285529207768657265205520697320746865206e756d626572206f66206c6f636b656420756e7374616b696e6720726571756573747380626f756e64656420627920604d6178556e7374616b655265717565737473602eac2d2052656164733a205b4f726967696e204163636f756e745d2c20556e7374616b696e672c204c6f636b73682d205772697465733a20556e7374616b696e672c204c6f636b73e82d204b696c6c733a20556e7374616b696e672026204c6f636b73206966206e6f2062616c616e6365206973206c6f636b656420616e796d6f72652c23203c2f7765696768743e34636c61696d5f7265776172647300113cd4436c61696d20626c6f636b20617574686f72696e67207265776172647320666f72207468652074617267657420616464726573732e00090152657175697265732060526577617264736020746f20626520736574206265666f726568616e642c2077686963682063616e2062792074726967676572656420627970616e79206f662074686520666f6c6c6f77696e67206f7074696f6e73e82a2043616c6c696e6720696e6372656d656e745f7b636f6c6c61746f722c2064656c656761746f727d5f72657761726473202861637469766529782a20416c746572696e6720796f7572207374616b65202861637469766529b02a204c656176696e6720746865206e6574776f726b206173206120636f6c6c61746f72202861637469766529bc2a205265766f6b696e6720612064656c65676174696f6e20617320612064656c656761746f7220286163746976652909012a204265696e6720612064656c656761746f722077686f736520636f6c6c61746f72206c65667420746865206e6574776f726b2c20616c7465726564207468656972a020207374616b65206f7220696e6372656d656e746564207265776172647320287061737369766529000501546865206469737061746368206f726967696e2063616e20626520616e79207369676e6564206f6e652c20652e672e2c20616e796f6e652063616e20636c61696d2c666f7220616e796f6e652e0044456d69747320605265776172646564602e68696e6372656d656e745f636f6c6c61746f725f72657761726473001218b44163746976656c7920696e6372656d656e74207468652072657761726473206f66206120636f6c6c61746f722e0005015468652073616d652065666665637420697320747269676765726564206279206368616e67696e6720746865207374616b65206f72206c656176696e6720746865206e6574776f726b2e009c546865206469737061746368206f726967696e206d757374206265206120636f6c6c61746f722e6c696e6372656d656e745f64656c656761746f725f72657761726473001318b84163746976656c7920696e6372656d656e74207468652072657761726473206f6620612064656c656761746f722e00f85468652073616d652065666665637420697320747269676765726564206279206368616e67696e6720746865207374616b65206f72207265766f6b696e673064656c65676174696f6e732e00a0546865206469737061746368206f726967696e206d75737420626520612064656c656761746f722e7c657865637574655f7363686564756c65645f7265776172645f6368616e67650014280d0145786563757465732074686520616e6e75616c20726564756374696f6e206f66207468652072657761726420726174657320666f7220636f6c6c61746f727320616e642c64656c656761746f72732e00dc4d6f72656f7665722c2073657473207265776172647320666f7220616c6c20636f6c6c61746f727320616e642064656c656761746f72737c6265666f72652061646a757374696e672074686520696e666c6174696f6e2e000d01546865206469737061746368206f726967696e2063616e20626520616e79207369676e6564206f6e652062656361757365207765206261696c2069662063616c6c656428746f6f206561726c792e0068456d6974732060526f756e64496e666c6174696f6e536574602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e95030c4470617261636861696e5f7374616b696e671870616c6c6574144572726f7204045400017c4444656c656761746f724e6f74466f756e64000004b8546865206163636f756e74206973206e6f742070617274206f66207468652064656c656761746f7273207365742e4443616e6469646174654e6f74466f756e64000104dc546865206163636f756e74206973206e6f742070617274206f662074686520636f6c6c61746f722063616e64696461746573207365742e3c44656c656761746f72457869737473000204c8546865206163636f756e7420697320616c72656164792070617274206f66207468652064656c656761746f7273207365742e3c43616e646964617465457869737473000304ec546865206163636f756e7420697320616c72656164792070617274206f662074686520636f6c6c61746f722063616e64696461746573207365742e3056616c5374616b655a65726f000404e4546865206163636f756e7420747269656420746f207374616b65206d6f7265206f72206c657373207769746820616d6f756e74207a65726f2e4056616c5374616b6542656c6f774d696e0005080d01546865206163636f756e7420686173206e6f74207374616b656420656e6f7567682066756e647320746f20626520616464656420746f2074686520636f6c6c61746f723c63616e64696461746573207365742e4056616c5374616b6541626f76654d61780006041101546865206163636f756e742068617320616c7265616479207374616b656420746865206d6178696d756d20616d6f756e74206f662066756e647320706f737369626c652e4844656c65676174696f6e42656c6f774d696e000708f8546865206163636f756e7420686173206e6f74207374616b656420656e6f7567682066756e647320746f2064656c6567617465206120636f6c6c61746f722863616e6469646174652e38416c72656164794c656176696e670008080d0154686520636f6c6c61746f722063616e6469646174652068617320616c72656164792074726967676572207468652070726f6365737320746f206c65617665207468656c736574206f6620636f6c6c61746f722063616e646964617465732e284e6f744c656176696e67000908f454686520636f6c6c61746f722063616e6469646174652077616e74656420746f20657865637574652074686520657869742062757420686173206e6f74f472657175657374656420746f206c65617665206265666f72652062792063616c6c696e672060696e69745f6c656176655f63616e64696461746573602e3843616e6e6f744c65617665596574000a08dc54686520636f6c6c61746f7220747269656420746f206c65617665206265666f72652077616974696e67206174206c6561737420666f72746045786974517565756544656c617960206d616e7920726f756e64732e6443616e6e6f744a6f696e4265666f7265556e6c6f636b696e67000b10f8546865206163636f756e742068617320612066756c6c206c697374206f6620756e7374616b696e6720726571756573747320616e64206e6565647320746ffc756e6c6f636b206174206c65617374206f6e65206f66207468657365206265666f7265206265696e672061626c6520746f206a6f696e2028616761696e292edc4e4f54453a2043616e206f6e6c792068617070656e20696620746865206163636f756e742077617320612063616e646964617465206f72f464656c656761746f72206265666f726520616e642065697468657220676f74206b69636b6564206f722065786974656420766f6c756e746172696c792e44416c726561647944656c65676174696e67000c04e4546865206163636f756e7420697320616c72656164792064656c65676174696e672074686520636f6c6c61746f722063616e6469646174652e404e6f7459657444656c65676174696e67000d080901546865206163636f756e7420686173206e6f742064656c65676174656420616e7920636f6c6c61746f722063616e646964617465207965742c2068656e6365206974806973206e6f7420696e2074686520736574206f662064656c656761746f72732e6c44656c65676174696f6e73506572526f756e644578636565646564000e1811015468652064656c656761746f722068617320657863656564656420746865206e756d626572206f662064656c65676174696f6e732070657220726f756e6420776869636894697320657175616c20746f204d617844656c656761746f7273506572436f6c6c61746f722e000901546869732070726f746563747320616761696e73742061747461636b7320696e20776869636820612064656c656761746f722063616e2072652d64656c6567617465010166726f6d206120636f6c6c61746f722077686f2068617320616c726561647920617574686f726564206120626c6f636b2c20746f20616e6f74686572206f6e6570776869636820686173206e6f7420696e207468697320726f756e642e44546f6f4d616e7944656c656761746f7273000f14010154686520636f6c6c61746f722063616e6469646174652068617320616c7265616479207265616368656420746865206d6178696d756d206e756d626572206f662c64656c656761746f72732e00050154686973206572726f722069732067656e65726174656420696e20636173652061206e65772064656c65676174696f6e207265717565737420646f6573206e6f74f47374616b6520656e6f7567682066756e647320746f207265706c61636520736f6d65206f74686572206578697374696e672064656c65676174696f6e2e60546f6f466577436f6c6c61746f7243616e64696461746573001008110154686520736574206f6620636f6c6c61746f722063616e6469646174657320776f756c642066616c6c2062656c6f7720746865207265717569726564206d696e696d756d5469662074686520636f6c6c61746f72206c6566742e5043616e6e6f745374616b6549664c656176696e67001108f854686520636f6c6c61746f722063616e64696461746520697320696e207468652070726f63657373206f66206c656176696e672074686520736574206f66010163616e6469646174657320616e642063616e6e6f7420706572666f726d20616e79206f7468657220616374696f6e7320696e20746865206d65616e74696d652e5c43616e6e6f7444656c656761746549664c656176696e67001208f854686520636f6c6c61746f722063616e64696461746520697320696e207468652070726f63657373206f66206c656176696e672074686520736574206f66ac63616e6469646174657320616e6420746875732063616e6e6f742062652064656c65676174656420746f2e804d6178436f6c6c61746f727350657244656c656761746f72457863656564656400130811015468652064656c656761746f722068617320616c72656164792064656c65676174656420746865206d6178696d756d206e756d626572206f662063616e6469646174657320616c6c6f7765642e60416c726561647944656c656761746564436f6c6c61746f72001408ec5468652064656c656761746f722068617320616c72656164792070726576696f75736c792064656c6567617465642074686520636f6c6c61746f722863616e6469646174652e4844656c65676174696f6e4e6f74466f756e64001504f854686520676976656e2064656c65676174696f6e20646f6573206e6f7420657869737420696e2074686520736574206f662064656c65676174696f6e732e24556e646572666c6f77001608050154686520636f6c6c61746f722064656c6567617465206f72207468652064656c656761746f7220697320747279696e6720746f20756e2d7374616b65206d6f72658066756e64732074686174206172652063757272656e746c79207374616b65642e4443616e6e6f7453657441626f76654d6178001708d8546865206e756d626572206f662073656c65637465642063616e6469646174657320706572207374616b696e6720726f756e642069738061626f766520746865206d6178696d756d2076616c756520616c6c6f7765642e4443616e6e6f7453657442656c6f774d696e001808d8546865206e756d626572206f662073656c65637465642063616e6469646174657320706572207374616b696e6720726f756e642069738062656c6f7720746865206d696e696d756d2076616c756520616c6c6f7765642e3c496e76616c69645363686564756c65001904dc416e20696e76616c696420696e666c6174696f6e20636f6e66696775726174696f6e20697320747279696e6720746f206265207365742e3c4e6f4d6f7265556e7374616b696e67001a08c4546865207374616b696e6720726577617264206265696e6720756e6c6f636b656420646f6573206e6f742065786973742e7c4d617820756e6c6f636b696e6720726571756573747320726561636865642e20546f6f4561726c79001b0801015468652072657761726420726174652063616e6e6f742062652061646a75737465642079657420617320616e20656e74697265207965617220686173206e6f741c7061737365642e345374616b654e6f74466f756e64001c04d850726f7669646564207374616b65642076616c7565206973207a65726f2e2053686f756c64206e65766572206265207468726f776e2e40556e7374616b696e674973456d707479001d049443616e6e6f7420756e6c6f636b207768656e20556e7374616b656420697320656d7074792e3c526577617264734e6f74466f756e64001e047843616e6e6f7420636c61696d207265776172647320696620656d7074792e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909099903101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454019d03045300000400590501185665633c543e00009d030000040c1ca1030000a10310346672616d655f737570706f72741874726169747324707265696d616765731c426f756e64656404045401a503010c184c6567616379040110686173682c01104861736800000018496e6c696e65040085010134426f756e646564496e6c696e65000100184c6f6f6b7570080110686173682c01104861736800010c6c656e1c010c75333200020000a50308447370697269746e65745f72756e74696d652c52756e74696d6543616c6c0001741853797374656d0400890201ad0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c53797374656d2c2052756e74696d653e0000002454696d657374616d700400cd0201b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c54696d657374616d702c2052756e74696d653e0002001c496e64696365730400d50201b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c496e64696365732c2052756e74696d653e0005002042616c616e6365730400010301b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c42616c616e6365732c2052756e74696d653e0006001c53657373696f6e0400410301b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c53657373696f6e2c2052756e74696d653e0016004050617261636861696e5374616b696e670400910301d50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c50617261636861696e5374616b696e672c2052756e74696d653e0015002444656d6f63726163790400a90301b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c44656d6f63726163792c2052756e74696d653e001e001c436f756e63696c0400b50301b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c436f756e63696c2c2052756e74696d653e001f0048546563686e6963616c436f6d6d69747465650400c50301dd0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546563686e6963616c436f6d6d69747465652c2052756e74696d653e0020004c546563686e6963616c4d656d626572736869700400c90301e10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546563686e6963616c4d656d626572736869702c2052756e74696d653e0022002054726561737572790400cd0301b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c54726561737572792c2052756e74696d653e0023001c5574696c6974790400d10301b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5574696c6974792c2052756e74696d653e0028001c56657374696e670400f90301b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c56657374696e672c2052756e74696d653e002900245363686564756c65720400010401b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5363686564756c65722c2052756e74696d653e002a001450726f78790400090401a90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c50726f78792c2052756e74696d653e002b0020507265696d6167650400110401b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c507265696d6167652c2052756e74696d653e002c0038546970734d656d626572736869700400150401cd0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546970734d656d626572736869702c2052756e74696d653e002d0010546970730400190401a50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546970732c2052756e74696d653e002e0014437479706504001d0401a90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c43747970652c2052756e74696d653e003d002c4174746573746174696f6e0400210401c10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4174746573746174696f6e2c2052756e74696d653e003e002844656c65676174696f6e0400350401bd0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c44656c65676174696f6e2c2052756e74696d653e003f000c4469640400510401a10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4469642c2052756e74696d653e004000244469644c6f6f6b75700400a50401b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4469644c6f6f6b75702c2052756e74696d653e00430024576562334e616d65730400b50401b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c576562334e616d65732c2052756e74696d653e004400445075626c696343726564656e7469616c730400b90401d90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5075626c696343726564656e7469616c732c2052756e74696d653e0045003c50617261636861696e53797374656d0400c90401d10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c50617261636861696e53797374656d2c2052756e74696d653e0050002458636d7051756575650400fd0401b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c58636d7051756575652c2052756e74696d653e0052002c506f6c6b61646f7458636d0400010501c10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c506f6c6b61646f7458636d2c2052756e74696d653e00530020446d7051756575650400550501b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c446d7051756575652c2052756e74696d653e00550000a9030c4070616c6c65745f64656d6f63726163791870616c6c65741043616c6c0404540001481c70726f706f736508012070726f706f73616ca1030140426f756e64656443616c6c4f663c543e00011476616c7565c101013042616c616e63654f663c543e0000249c50726f706f736520612073656e73697469766520616374696f6e20746f2062652074616b656e2e001501546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e646572206d75737480686176652066756e647320746f20636f76657220746865206465706f7369742e00d42d206070726f706f73616c5f68617368603a205468652068617368206f66207468652070726f706f73616c20707265696d6167652e15012d206076616c7565603a2054686520616d6f756e74206f66206465706f73697420286d757374206265206174206c6561737420604d696e696d756d4465706f73697460292e0044456d697473206050726f706f736564602e187365636f6e6404012070726f706f73616cb501012450726f70496e646578000118b45369676e616c732061677265656d656e742077697468206120706172746963756c61722070726f706f73616c2e000101546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e64657211016d75737420686176652066756e647320746f20636f76657220746865206465706f7369742c20657175616c20746f20746865206f726967696e616c206465706f7369742e00c82d206070726f706f73616c603a2054686520696e646578206f66207468652070726f706f73616c20746f207365636f6e642e10766f74650801247265665f696e646578b501013c5265666572656e64756d496e646578000110766f74659801644163636f756e74566f74653c42616c616e63654f663c543e3e00021c3101566f746520696e2061207265666572656e64756d2e2049662060766f74652e69735f6179652829602c2074686520766f746520697320746f20656e616374207468652070726f706f73616c3bb86f7468657277697365206974206973206120766f746520746f206b65657020746865207374617475732071756f2e00c8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2e00dc2d20607265665f696e646578603a2054686520696e646578206f6620746865207265666572656e64756d20746f20766f746520666f722e842d2060766f7465603a2054686520766f746520636f6e66696775726174696f6e2e40656d657267656e63795f63616e63656c0401247265665f696e6465781c013c5265666572656e64756d496e6465780003204d015363686564756c6520616e20656d657267656e63792063616e63656c6c6174696f6e206f662061207265666572656e64756d2e2043616e6e6f742068617070656e20747769636520746f207468652073616d652c7265666572656e64756d2e00f8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265206043616e63656c6c6174696f6e4f726967696e602e00d02d607265665f696e646578603a2054686520696e646578206f6620746865207265666572656e64756d20746f2063616e63656c2e003c5765696768743a20604f283129602e4065787465726e616c5f70726f706f736504012070726f706f73616ca1030140426f756e64656443616c6c4f663c543e0004182d015363686564756c652061207265666572656e64756d20746f206265207461626c6564206f6e6365206974206973206c6567616c20746f207363686564756c6520616e2065787465726e616c2c7265666572656e64756d2e00e8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265206045787465726e616c4f726967696e602e00d42d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c2e6465787465726e616c5f70726f706f73655f6d616a6f7269747904012070726f706f73616ca1030140426f756e64656443616c6c4f663c543e00052c55015363686564756c652061206d616a6f726974792d63617272696573207265666572656e64756d20746f206265207461626c6564206e657874206f6e6365206974206973206c6567616c20746f207363686564756c655c616e2065787465726e616c207265666572656e64756d2e00ec546865206469737061746368206f6620746869732063616c6c206d757374206265206045787465726e616c4d616a6f726974794f726967696e602e00d42d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c2e004901556e6c696b65206065787465726e616c5f70726f706f7365602c20626c61636b6c697374696e6720686173206e6f20656666656374206f6e207468697320616e64206974206d6179207265706c6163652061987072652d7363686564756c6564206065787465726e616c5f70726f706f7365602063616c6c2e00385765696768743a20604f283129606065787465726e616c5f70726f706f73655f64656661756c7404012070726f706f73616ca1030140426f756e64656443616c6c4f663c543e00062c45015363686564756c652061206e656761746976652d7475726e6f75742d62696173207265666572656e64756d20746f206265207461626c6564206e657874206f6e6365206974206973206c6567616c20746f807363686564756c6520616e2065787465726e616c207265666572656e64756d2e00e8546865206469737061746368206f6620746869732063616c6c206d757374206265206045787465726e616c44656661756c744f726967696e602e00d42d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c2e004901556e6c696b65206065787465726e616c5f70726f706f7365602c20626c61636b6c697374696e6720686173206e6f20656666656374206f6e207468697320616e64206974206d6179207265706c6163652061987072652d7363686564756c6564206065787465726e616c5f70726f706f7365602063616c6c2e00385765696768743a20604f2831296028666173745f747261636b0c013470726f706f73616c5f686173682c011048323536000134766f74696e675f706572696f64100138543a3a426c6f636b4e756d62657200011464656c6179100138543a3a426c6f636b4e756d6265720007404d015363686564756c65207468652063757272656e746c792065787465726e616c6c792d70726f706f736564206d616a6f726974792d63617272696573207265666572656e64756d20746f206265207461626c65646101696d6d6564696174656c792e204966207468657265206973206e6f2065787465726e616c6c792d70726f706f736564207265666572656e64756d2063757272656e746c792c206f72206966207468657265206973206f6e65e8627574206974206973206e6f742061206d616a6f726974792d63617272696573207265666572656e64756d207468656e206974206661696c732e00d0546865206469737061746368206f6620746869732063616c6c206d757374206265206046617374547261636b4f726967696e602e00f42d206070726f706f73616c5f68617368603a205468652068617368206f66207468652063757272656e742065787465726e616c2070726f706f73616c2e5d012d2060766f74696e675f706572696f64603a2054686520706572696f64207468617420697320616c6c6f77656420666f7220766f74696e67206f6e20746869732070726f706f73616c2e20496e6372656173656420746f88094d75737420626520616c776179732067726561746572207468616e207a65726f2e350109466f72206046617374547261636b4f726967696e60206d75737420626520657175616c206f722067726561746572207468616e206046617374547261636b566f74696e67506572696f64602e51012d206064656c6179603a20546865206e756d626572206f6620626c6f636b20616674657220766f74696e672068617320656e64656420696e20617070726f76616c20616e6420746869732073686f756c64206265b82020656e61637465642e205468697320646f65736e277420686176652061206d696e696d756d20616d6f756e742e0040456d697473206053746172746564602e00385765696768743a20604f28312960347665746f5f65787465726e616c04013470726f706f73616c5f686173682c011048323536000824b85665746f20616e6420626c61636b6c697374207468652065787465726e616c2070726f706f73616c20686173682e00d8546865206469737061746368206f726967696e206f6620746869732063616c6c206d75737420626520605665746f4f726967696e602e002d012d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c20746f207665746f20616e6420626c61636b6c6973742e003c456d69747320605665746f6564602e00fc5765696768743a20604f2856202b206c6f6728562929602077686572652056206973206e756d626572206f6620606578697374696e67207665746f657273604463616e63656c5f7265666572656e64756d0401247265665f696e646578b501013c5265666572656e64756d496e64657800091c5052656d6f76652061207265666572656e64756d2e00c0546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f526f6f745f2e00d42d20607265665f696e646578603a2054686520696e646578206f6620746865207265666572656e64756d20746f2063616e63656c2e004423205765696768743a20604f283129602e2064656c65676174650c0108746fd90201504163636f756e7449644c6f6f6b75704f663c543e000128636f6e76696374696f6ead030128436f6e76696374696f6e00011c62616c616e636518013042616c616e63654f663c543e000a50390144656c65676174652074686520766f74696e6720706f77657220287769746820736f6d6520676976656e20636f6e76696374696f6e29206f66207468652073656e64696e67206163636f756e742e0055015468652062616c616e63652064656c656761746564206973206c6f636b656420666f72206173206c6f6e6720617320697427732064656c6567617465642c20616e64207468657265616674657220666f7220746865c874696d6520617070726f70726961746520666f722074686520636f6e76696374696f6e2773206c6f636b20706572696f642e005d01546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2c20616e6420746865207369676e696e67206163636f756e74206d757374206569746865723a7420202d2062652064656c65676174696e6720616c72656164793b206f72590120202d2068617665206e6f20766f74696e67206163746976697479202869662074686572652069732c207468656e2069742077696c6c206e65656420746f2062652072656d6f7665642f636f6e736f6c69646174656494202020207468726f7567682060726561705f766f746560206f722060756e766f746560292e0045012d2060746f603a20546865206163636f756e742077686f736520766f74696e6720746865206074617267657460206163636f756e74277320766f74696e6720706f7765722077696c6c20666f6c6c6f772e55012d2060636f6e76696374696f6e603a2054686520636f6e76696374696f6e20746861742077696c6c20626520617474616368656420746f207468652064656c65676174656420766f7465732e205768656e20746865410120206163636f756e7420697320756e64656c6567617465642c207468652066756e64732077696c6c206265206c6f636b656420666f722074686520636f72726573706f6e64696e6720706572696f642e61012d206062616c616e6365603a2054686520616d6f756e74206f6620746865206163636f756e7427732062616c616e636520746f206265207573656420696e2064656c65676174696e672e2054686973206d757374206e6f74b420206265206d6f7265207468616e20746865206163636f756e7427732063757272656e742062616c616e63652e0048456d697473206044656c656761746564602e003d015765696768743a20604f28522960207768657265205220697320746865206e756d626572206f66207265666572656e64756d732074686520766f7465722064656c65676174696e6720746f20686173c82020766f746564206f6e2e205765696768742069732063686172676564206173206966206d6178696d756d20766f7465732e28756e64656c6567617465000b30cc556e64656c65676174652074686520766f74696e6720706f776572206f66207468652073656e64696e67206163636f756e742e005d01546f6b656e73206d617920626520756e6c6f636b656420666f6c6c6f77696e67206f6e636520616e20616d6f756e74206f662074696d6520636f6e73697374656e74207769746820746865206c6f636b20706572696f64dc6f662074686520636f6e76696374696f6e2077697468207768696368207468652064656c65676174696f6e20776173206973737565642e004501546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d7573742062655463757272656e746c792064656c65676174696e672e0050456d6974732060556e64656c656761746564602e003d015765696768743a20604f28522960207768657265205220697320746865206e756d626572206f66207265666572656e64756d732074686520766f7465722064656c65676174696e6720746f20686173c82020766f746564206f6e2e205765696768742069732063686172676564206173206966206d6178696d756d20766f7465732e58636c6561725f7075626c69635f70726f706f73616c73000c1470436c6561727320616c6c207075626c69632070726f706f73616c732e00c0546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f526f6f745f2e003c5765696768743a20604f283129602e18756e6c6f636b040118746172676574d90201504163636f756e7449644c6f6f6b75704f663c543e000d1ca0556e6c6f636b20746f6b656e732074686174206861766520616e2065787069726564206c6f636b2e00c8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2e00b82d2060746172676574603a20546865206163636f756e7420746f2072656d6f766520746865206c6f636b206f6e2e00bc5765696768743a20604f2852296020776974682052206e756d626572206f6620766f7465206f66207461726765742e2c72656d6f76655f766f7465040114696e6465781c013c5265666572656e64756d496e646578000e6c7c52656d6f7665206120766f746520666f722061207265666572656e64756d2e000c49663a882d20746865207265666572656e64756d207761732063616e63656c6c65642c206f727c2d20746865207265666572656e64756d206973206f6e676f696e672c206f72902d20746865207265666572656e64756d2068617320656e64656420737563682074686174fc20202d2074686520766f7465206f6620746865206163636f756e742077617320696e206f70706f736974696f6e20746f2074686520726573756c743b206f72d420202d20746865726520776173206e6f20636f6e76696374696f6e20746f20746865206163636f756e74277320766f74653b206f728420202d20746865206163636f756e74206d61646520612073706c697420766f74655d012e2e2e7468656e2074686520766f74652069732072656d6f76656420636c65616e6c7920616e64206120666f6c6c6f77696e672063616c6c20746f2060756e6c6f636b60206d617920726573756c7420696e206d6f72655866756e6473206265696e6720617661696c61626c652e00a849662c20686f77657665722c20746865207265666572656e64756d2068617320656e64656420616e643aec2d2069742066696e697368656420636f72726573706f6e64696e6720746f2074686520766f7465206f6620746865206163636f756e742c20616e64dc2d20746865206163636f756e74206d6164652061207374616e6461726420766f7465207769746820636f6e76696374696f6e2c20616e64bc2d20746865206c6f636b20706572696f64206f662074686520636f6e76696374696f6e206973206e6f74206f76657259012e2e2e7468656e20746865206c6f636b2077696c6c206265206167677265676174656420696e746f20746865206f766572616c6c206163636f756e742773206c6f636b2c207768696368206d617920696e766f6c766559012a6f7665726c6f636b696e672a20287768657265207468652074776f206c6f636b732061726520636f6d62696e656420696e746f20612073696e676c65206c6f636b207468617420697320746865206d6178696d756de46f6620626f74682074686520616d6f756e74206c6f636b656420616e64207468652074696d65206973206974206c6f636b656420666f72292e004901546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2c20616e6420746865207369676e6572206d7573742068617665206120766f7465887265676973746572656420666f72207265666572656e64756d2060696e646578602e00f42d2060696e646578603a2054686520696e646578206f66207265666572656e64756d206f662074686520766f746520746f2062652072656d6f7665642e0055015765696768743a20604f2852202b206c6f6720522960207768657265205220697320746865206e756d626572206f66207265666572656e646120746861742060746172676574602068617320766f746564206f6e2ed820205765696768742069732063616c63756c6174656420666f7220746865206d6178696d756d206e756d626572206f6620766f74652e4472656d6f76655f6f746865725f766f7465080118746172676574d90201504163636f756e7449644c6f6f6b75704f663c543e000114696e6465781c013c5265666572656e64756d496e646578000f3c7c52656d6f7665206120766f746520666f722061207265666572656e64756d2e004d0149662074686520607461726765746020697320657175616c20746f20746865207369676e65722c207468656e20746869732066756e6374696f6e2069732065786163746c79206571756976616c656e7420746f2d016072656d6f76655f766f7465602e204966206e6f7420657175616c20746f20746865207369676e65722c207468656e2074686520766f7465206d757374206861766520657870697265642c5501656974686572206265636175736520746865207265666572656e64756d207761732063616e63656c6c65642c20626563617573652074686520766f746572206c6f737420746865207265666572656e64756d206f7298626563617573652074686520636f6e76696374696f6e20706572696f64206973206f7665722e00c8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2e004d012d2060746172676574603a20546865206163636f756e74206f662074686520766f746520746f2062652072656d6f7665643b2074686973206163636f756e74206d757374206861766520766f74656420666f725420207265666572656e64756d2060696e646578602ef42d2060696e646578603a2054686520696e646578206f66207265666572656e64756d206f662074686520766f746520746f2062652072656d6f7665642e0055015765696768743a20604f2852202b206c6f6720522960207768657265205220697320746865206e756d626572206f66207265666572656e646120746861742060746172676574602068617320766f746564206f6e2ed820205765696768742069732063616c63756c6174656420666f7220746865206d6178696d756d206e756d626572206f6620766f74652e24626c61636b6c69737408013470726f706f73616c5f686173682c01104832353600013c6d617962655f7265665f696e646578b103015c4f7074696f6e3c5265666572656e64756d496e6465783e00103c45015065726d616e656e746c7920706c61636520612070726f706f73616c20696e746f2074686520626c61636b6c6973742e20546869732070726576656e74732069742066726f6d2065766572206265696e673c70726f706f73656420616761696e2e00510149662063616c6c6564206f6e206120717565756564207075626c6963206f722065787465726e616c2070726f706f73616c2c207468656e20746869732077696c6c20726573756c7420696e206974206265696e67510172656d6f7665642e2049662074686520607265665f696e6465786020737570706c69656420697320616e20616374697665207265666572656e64756d2077697468207468652070726f706f73616c20686173682c687468656e2069742077696c6c2062652063616e63656c6c65642e00ec546865206469737061746368206f726967696e206f6620746869732063616c6c206d7573742062652060426c61636b6c6973744f726967696e602e00f82d206070726f706f73616c5f68617368603a205468652070726f706f73616c206861736820746f20626c61636b6c697374207065726d616e656e746c792e45012d20607265665f696e646578603a20416e206f6e676f696e67207265666572656e64756d2077686f73652068617368206973206070726f706f73616c5f68617368602c2077686963682077696c6c2062652863616e63656c6c65642e0041015765696768743a20604f28702960202874686f756768206173207468697320697320616e20686967682d70726976696c6567652064697370617463682c20776520617373756d65206974206861732061502020726561736f6e61626c652076616c7565292e3c63616e63656c5f70726f706f73616c04012870726f705f696e646578b501012450726f70496e64657800111c4852656d6f766520612070726f706f73616c2e000101546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265206043616e63656c50726f706f73616c4f726967696e602e00d02d206070726f705f696e646578603a2054686520696e646578206f66207468652070726f706f73616c20746f2063616e63656c2e00e45765696768743a20604f28702960207768657265206070203d205075626c696350726f70733a3a3c543e3a3a6465636f64655f6c656e282960042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ead030c4070616c6c65745f64656d6f637261637928636f6e76696374696f6e28436f6e76696374696f6e00011c104e6f6e65000000204c6f636b65643178000100204c6f636b65643278000200204c6f636b65643378000300204c6f636b65643478000400204c6f636b65643578000500204c6f636b6564367800060000b10304184f7074696f6e040454011c0108104e6f6e6500000010536f6d6504001c0000010000b5030c4470616c6c65745f636f6c6c6563746976651870616c6c65741043616c6c08045400044900011c2c7365745f6d656d626572730c012c6e65775f6d656d62657273250301445665633c543a3a4163636f756e7449643e0001147072696d65b90301504f7074696f6e3c543a3a4163636f756e7449643e0001246f6c645f636f756e741c012c4d656d626572436f756e74000080805365742074686520636f6c6c6563746976652773206d656d626572736869702e0045012d20606e65775f6d656d62657273603a20546865206e6577206d656d626572206c6973742e204265206e69636520746f2074686520636861696e20616e642070726f7669646520697420736f727465642ee02d20607072696d65603a20546865207072696d65206d656d6265722077686f736520766f74652073657473207468652064656661756c742e59012d20606f6c645f636f756e74603a2054686520757070657220626f756e6420666f72207468652070726576696f7573206e756d626572206f66206d656d6265727320696e2073746f726167652e205573656420666f7250202077656967687420657374696d6174696f6e2e0054526571756972657320726f6f74206f726967696e2e0051014e4f54453a20446f6573206e6f7420656e666f7263652074686520657870656374656420604d61784d656d6265727360206c696d6974206f6e2074686520616d6f756e74206f66206d656d626572732c2062757421012020202020207468652077656967687420657374696d6174696f6e732072656c79206f6e20697420746f20657374696d61746520646973706174636861626c65207765696768742e002823205741524e494e473a005901546865206070616c6c65742d636f6c6c656374697665602063616e20616c736f206265206d616e61676564206279206c6f676963206f757473696465206f66207468652070616c6c6574207468726f75676820746865b8696d706c656d656e746174696f6e206f6620746865207472616974205b604368616e67654d656d62657273605d2e5501416e792063616c6c20746f20607365745f6d656d6265727360206d757374206265206361726566756c207468617420746865206d656d6265722073657420646f65736e277420676574206f7574206f662073796e63a477697468206f74686572206c6f676963206d616e6167696e6720746865206d656d626572207365742e002823203c7765696768743e24232320576569676874502d20604f284d50202b204e29602077686572653ae020202d20604d60206f6c642d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429e020202d20604e60206e65772d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e646564299820202d206050602070726f706f73616c732d636f756e742028636f64652d626f756e64656429142d2044423a510120202d20312073746f72616765206d75746174696f6e2028636f64656320604f284d296020726561642c20604f284e29602077726974652920666f722072656164696e6720616e642077726974696e67207468652c202020206d656d62657273ec20202d20312073746f7261676520726561642028636f64656320604f285029602920666f722072656164696e67207468652070726f706f73616c73450120202d206050602073746f72616765206d75746174696f6e732028636f64656320604f284d29602920666f72207570646174696e672074686520766f74657320666f7220656163682070726f706f73616c5d0120202d20312073746f726167652077726974652028636f64656320604f283129602920666f722064656c6574696e6720746865206f6c6420607072696d656020616e642073657474696e6720746865206e6577206f6e652c23203c2f7765696768743e1c6578656375746508012070726f706f73616ca503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64b501010c75333200012cf0446973706174636820612070726f706f73616c2066726f6d2061206d656d626572207573696e672074686520604d656d62657260206f726967696e2e00a84f726967696e206d7573742062652061206d656d626572206f662074686520636f6c6c6563746976652e002823203c7765696768743e2423232057656967687455012d20604f284d202b2050296020776865726520604d60206d656d626572732d636f756e742028636f64652d626f756e6465642920616e642060506020636f6d706c6578697479206f66206469737061746368696e673020206070726f706f73616c60d42d2044423a203120726561642028636f64656320604f284d296029202b20444220616363657373206f66206070726f706f73616c60242d2031206576656e742c23203c2f7765696768743e1c70726f706f73650c01247468726573686f6c64b501012c4d656d626572436f756e7400012070726f706f73616ca503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64b501010c75333200026cf84164642061206e65772070726f706f73616c20746f2065697468657220626520766f746564206f6e206f72206578656375746564206469726563746c792e00845265717569726573207468652073656e64657220746f206265206d656d6265722e004101607468726573686f6c64602064657465726d696e65732077686574686572206070726f706f73616c60206973206578656375746564206469726563746c792028607468726573686f6c64203c20326029546f722070757420757020666f7220766f74696e672e002823203c7765696768743e24232320576569676874ac2d20604f2842202b204d202b2050312960206f7220604f2842202b204d202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c420202d206272616e6368696e6720697320696e666c75656e63656420627920607468726573686f6c64602077686572653af4202020202d20605031602069732070726f706f73616c20657865637574696f6e20636f6d706c65786974792028607468726573686f6c64203c20326029fc202020202d20605032602069732070726f706f73616c732d636f756e742028636f64652d626f756e646564292028607468726573686f6c64203e3d20326029142d2044423ab420202d20312073746f726167652072656164206069735f6d656d626572602028636f64656320604f284d296029f020202d20312073746f726167652072656164206050726f706f73616c4f663a3a636f6e7461696e735f6b6579602028636f64656320604f2831296029a820202d20444220616363657373657320696e666c75656e63656420627920607468726573686f6c64603a0901202020202d204549544845522073746f7261676520616363657373657320646f6e65206279206070726f706f73616c602028607468726573686f6c64203c20326029b8202020202d204f522070726f706f73616c20696e73657274696f6e2028607468726573686f6c64203c3d20326029d82020202020202d20312073746f72616765206d75746174696f6e206050726f706f73616c73602028636f64656320604f285032296029e42020202020202d20312073746f72616765206d75746174696f6e206050726f706f73616c436f756e74602028636f64656320604f2831296029cc2020202020202d20312073746f72616765207772697465206050726f706f73616c4f66602028636f64656320604f2842296029bc2020202020202d20312073746f726167652077726974652060566f74696e67602028636f64656320604f284d2960292c20202d2031206576656e742c23203c2f7765696768743e10766f74650c012070726f706f73616c2c011c543a3a48617368000114696e646578b501013450726f706f73616c496e64657800011c617070726f7665a40110626f6f6c00033cf041646420616e20617965206f72206e617920766f746520666f72207468652073656e64657220746f2074686520676976656e2070726f706f73616c2e008c5265717569726573207468652073656e64657220746f2062652061206d656d6265722e0049015472616e73616374696f6e20666565732077696c6c2062652077616976656420696620746865206d656d62657220697320766f74696e67206f6e20616e7920706172746963756c61722070726f706f73616c5101666f72207468652066697273742074696d6520616e64207468652063616c6c206973207375636365737366756c2e2053756273657175656e7420766f7465206368616e6765732077696c6c206368617267652061106665652e2823203c7765696768743e2423232057656967687409012d20604f284d296020776865726520604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429142d2044423aac20202d20312073746f72616765207265616420604d656d62657273602028636f64656320604f284d296029b820202d20312073746f72616765206d75746174696f6e2060566f74696e67602028636f64656320604f284d296029242d2031206576656e742c23203c2f7765696768743e40636c6f73655f6f6c645f77656967687410013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578b501013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e64bd0301244f6c645765696768740001306c656e6774685f626f756e64b501010c7533320004804d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e002823203c7765696768743e24232320576569676874742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e64656429142d2044423a0d01202d20322073746f726167652072656164732028604d656d62657273603a20636f64656320604f284d29602c20605072696d65603a20636f64656320604f28312960295901202d2033206d75746174696f6e73202860566f74696e67603a20636f64656320604f284d29602c206050726f706f73616c4f66603a20636f64656320604f284229602c206050726f706f73616c73603a20636f6465632c202020604f285032296029dc202d20616e79206d75746174696f6e7320646f6e65207768696c6520657865637574696e67206070726f706f73616c6020286050316029402d20757020746f2033206576656e74732c23203c2f7765696768743e4c646973617070726f76655f70726f706f73616c04013470726f706f73616c5f686173682c011c543a3a486173680005385901446973617070726f766520612070726f706f73616c2c20636c6f73652c20616e642072656d6f76652069742066726f6d207468652073797374656d2c207265676172646c657373206f66206974732063757272656e741873746174652e00884d7573742062652063616c6c65642062792074686520526f6f74206f726967696e2e002c506172616d65746572733a1d012a206070726f706f73616c5f68617368603a205468652068617368206f66207468652070726f706f73616c20746861742073686f756c6420626520646973617070726f7665642e002823203c7765696768743edc436f6d706c65786974793a204f285029207768657265205020697320746865206e756d626572206f66206d61782070726f706f73616c73284442205765696768743a482a2052656164733a2050726f706f73616c739c2a205772697465733a20566f74696e672c2050726f706f73616c732c2050726f706f73616c4f662c23203c2f7765696768743e14636c6f736510013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578b501013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e642401185765696768740001306c656e6774685f626f756e64b501010c7533320006804d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e002823203c7765696768743e24232320576569676874742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e64656429142d2044423a0d01202d20322073746f726167652072656164732028604d656d62657273603a20636f64656320604f284d29602c20605072696d65603a20636f64656320604f28312960295901202d2033206d75746174696f6e73202860566f74696e67603a20636f64656320604f284d29602c206050726f706f73616c4f66603a20636f64656320604f284229602c206050726f706f73616c73603a20636f6465632c202020604f285032296029dc202d20616e79206d75746174696f6e7320646f6e65207768696c6520657865637574696e67206070726f706f73616c6020286050316029402d20757020746f2033206576656e74732c23203c2f7765696768743e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632eb90304184f7074696f6e04045401000108104e6f6e6500000010536f6d650400000000010000bd03000006c10300c103082873705f77656967687473244f6c645765696768740000040010010c7536340000c5030c4470616c6c65745f636f6c6c6563746976651870616c6c65741043616c6c08045400044900011c2c7365745f6d656d626572730c012c6e65775f6d656d62657273250301445665633c543a3a4163636f756e7449643e0001147072696d65b90301504f7074696f6e3c543a3a4163636f756e7449643e0001246f6c645f636f756e741c012c4d656d626572436f756e74000080805365742074686520636f6c6c6563746976652773206d656d626572736869702e0045012d20606e65775f6d656d62657273603a20546865206e6577206d656d626572206c6973742e204265206e69636520746f2074686520636861696e20616e642070726f7669646520697420736f727465642ee02d20607072696d65603a20546865207072696d65206d656d6265722077686f736520766f74652073657473207468652064656661756c742e59012d20606f6c645f636f756e74603a2054686520757070657220626f756e6420666f72207468652070726576696f7573206e756d626572206f66206d656d6265727320696e2073746f726167652e205573656420666f7250202077656967687420657374696d6174696f6e2e0054526571756972657320726f6f74206f726967696e2e0051014e4f54453a20446f6573206e6f7420656e666f7263652074686520657870656374656420604d61784d656d6265727360206c696d6974206f6e2074686520616d6f756e74206f66206d656d626572732c2062757421012020202020207468652077656967687420657374696d6174696f6e732072656c79206f6e20697420746f20657374696d61746520646973706174636861626c65207765696768742e002823205741524e494e473a005901546865206070616c6c65742d636f6c6c656374697665602063616e20616c736f206265206d616e61676564206279206c6f676963206f757473696465206f66207468652070616c6c6574207468726f75676820746865b8696d706c656d656e746174696f6e206f6620746865207472616974205b604368616e67654d656d62657273605d2e5501416e792063616c6c20746f20607365745f6d656d6265727360206d757374206265206361726566756c207468617420746865206d656d6265722073657420646f65736e277420676574206f7574206f662073796e63a477697468206f74686572206c6f676963206d616e6167696e6720746865206d656d626572207365742e002823203c7765696768743e24232320576569676874502d20604f284d50202b204e29602077686572653ae020202d20604d60206f6c642d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429e020202d20604e60206e65772d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e646564299820202d206050602070726f706f73616c732d636f756e742028636f64652d626f756e64656429142d2044423a510120202d20312073746f72616765206d75746174696f6e2028636f64656320604f284d296020726561642c20604f284e29602077726974652920666f722072656164696e6720616e642077726974696e67207468652c202020206d656d62657273ec20202d20312073746f7261676520726561642028636f64656320604f285029602920666f722072656164696e67207468652070726f706f73616c73450120202d206050602073746f72616765206d75746174696f6e732028636f64656320604f284d29602920666f72207570646174696e672074686520766f74657320666f7220656163682070726f706f73616c5d0120202d20312073746f726167652077726974652028636f64656320604f283129602920666f722064656c6574696e6720746865206f6c6420607072696d656020616e642073657474696e6720746865206e6577206f6e652c23203c2f7765696768743e1c6578656375746508012070726f706f73616ca503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64b501010c75333200012cf0446973706174636820612070726f706f73616c2066726f6d2061206d656d626572207573696e672074686520604d656d62657260206f726967696e2e00a84f726967696e206d7573742062652061206d656d626572206f662074686520636f6c6c6563746976652e002823203c7765696768743e2423232057656967687455012d20604f284d202b2050296020776865726520604d60206d656d626572732d636f756e742028636f64652d626f756e6465642920616e642060506020636f6d706c6578697479206f66206469737061746368696e673020206070726f706f73616c60d42d2044423a203120726561642028636f64656320604f284d296029202b20444220616363657373206f66206070726f706f73616c60242d2031206576656e742c23203c2f7765696768743e1c70726f706f73650c01247468726573686f6c64b501012c4d656d626572436f756e7400012070726f706f73616ca503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64b501010c75333200026cf84164642061206e65772070726f706f73616c20746f2065697468657220626520766f746564206f6e206f72206578656375746564206469726563746c792e00845265717569726573207468652073656e64657220746f206265206d656d6265722e004101607468726573686f6c64602064657465726d696e65732077686574686572206070726f706f73616c60206973206578656375746564206469726563746c792028607468726573686f6c64203c20326029546f722070757420757020666f7220766f74696e672e002823203c7765696768743e24232320576569676874ac2d20604f2842202b204d202b2050312960206f7220604f2842202b204d202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c420202d206272616e6368696e6720697320696e666c75656e63656420627920607468726573686f6c64602077686572653af4202020202d20605031602069732070726f706f73616c20657865637574696f6e20636f6d706c65786974792028607468726573686f6c64203c20326029fc202020202d20605032602069732070726f706f73616c732d636f756e742028636f64652d626f756e646564292028607468726573686f6c64203e3d20326029142d2044423ab420202d20312073746f726167652072656164206069735f6d656d626572602028636f64656320604f284d296029f020202d20312073746f726167652072656164206050726f706f73616c4f663a3a636f6e7461696e735f6b6579602028636f64656320604f2831296029a820202d20444220616363657373657320696e666c75656e63656420627920607468726573686f6c64603a0901202020202d204549544845522073746f7261676520616363657373657320646f6e65206279206070726f706f73616c602028607468726573686f6c64203c20326029b8202020202d204f522070726f706f73616c20696e73657274696f6e2028607468726573686f6c64203c3d20326029d82020202020202d20312073746f72616765206d75746174696f6e206050726f706f73616c73602028636f64656320604f285032296029e42020202020202d20312073746f72616765206d75746174696f6e206050726f706f73616c436f756e74602028636f64656320604f2831296029cc2020202020202d20312073746f72616765207772697465206050726f706f73616c4f66602028636f64656320604f2842296029bc2020202020202d20312073746f726167652077726974652060566f74696e67602028636f64656320604f284d2960292c20202d2031206576656e742c23203c2f7765696768743e10766f74650c012070726f706f73616c2c011c543a3a48617368000114696e646578b501013450726f706f73616c496e64657800011c617070726f7665a40110626f6f6c00033cf041646420616e20617965206f72206e617920766f746520666f72207468652073656e64657220746f2074686520676976656e2070726f706f73616c2e008c5265717569726573207468652073656e64657220746f2062652061206d656d6265722e0049015472616e73616374696f6e20666565732077696c6c2062652077616976656420696620746865206d656d62657220697320766f74696e67206f6e20616e7920706172746963756c61722070726f706f73616c5101666f72207468652066697273742074696d6520616e64207468652063616c6c206973207375636365737366756c2e2053756273657175656e7420766f7465206368616e6765732077696c6c206368617267652061106665652e2823203c7765696768743e2423232057656967687409012d20604f284d296020776865726520604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429142d2044423aac20202d20312073746f72616765207265616420604d656d62657273602028636f64656320604f284d296029b820202d20312073746f72616765206d75746174696f6e2060566f74696e67602028636f64656320604f284d296029242d2031206576656e742c23203c2f7765696768743e40636c6f73655f6f6c645f77656967687410013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578b501013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e64bd0301244f6c645765696768740001306c656e6774685f626f756e64b501010c7533320004804d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e002823203c7765696768743e24232320576569676874742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e64656429142d2044423a0d01202d20322073746f726167652072656164732028604d656d62657273603a20636f64656320604f284d29602c20605072696d65603a20636f64656320604f28312960295901202d2033206d75746174696f6e73202860566f74696e67603a20636f64656320604f284d29602c206050726f706f73616c4f66603a20636f64656320604f284229602c206050726f706f73616c73603a20636f6465632c202020604f285032296029dc202d20616e79206d75746174696f6e7320646f6e65207768696c6520657865637574696e67206070726f706f73616c6020286050316029402d20757020746f2033206576656e74732c23203c2f7765696768743e4c646973617070726f76655f70726f706f73616c04013470726f706f73616c5f686173682c011c543a3a486173680005385901446973617070726f766520612070726f706f73616c2c20636c6f73652c20616e642072656d6f76652069742066726f6d207468652073797374656d2c207265676172646c657373206f66206974732063757272656e741873746174652e00884d7573742062652063616c6c65642062792074686520526f6f74206f726967696e2e002c506172616d65746572733a1d012a206070726f706f73616c5f68617368603a205468652068617368206f66207468652070726f706f73616c20746861742073686f756c6420626520646973617070726f7665642e002823203c7765696768743edc436f6d706c65786974793a204f285029207768657265205020697320746865206e756d626572206f66206d61782070726f706f73616c73284442205765696768743a482a2052656164733a2050726f706f73616c739c2a205772697465733a20566f74696e672c2050726f706f73616c732c2050726f706f73616c4f662c23203c2f7765696768743e14636c6f736510013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578b501013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e642401185765696768740001306c656e6774685f626f756e64b501010c7533320006804d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e002823203c7765696768743e24232320576569676874742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e64656429142d2044423a0d01202d20322073746f726167652072656164732028604d656d62657273603a20636f64656320604f284d29602c20605072696d65603a20636f64656320604f28312960295901202d2033206d75746174696f6e73202860566f74696e67603a20636f64656320604f284d29602c206050726f706f73616c4f66603a20636f64656320604f284229602c206050726f706f73616c73603a20636f6465632c202020604f285032296029dc202d20616e79206d75746174696f6e7320646f6e65207768696c6520657865637574696e67206070726f706f73616c6020286050316029402d20757020746f2033206576656e74732c23203c2f7765696768743e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ec9030c4470616c6c65745f6d656d626572736869701870616c6c65741043616c6c08045400044900011c286164645f6d656d62657204010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e00000c784164642061206d656d626572206077686f6020746f20746865207365742e009c4d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a4164644f726967696e602e3472656d6f76655f6d656d62657204010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e00010c8c52656d6f76652061206d656d626572206077686f602066726f6d20746865207365742e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656d6f76654f726967696e602e2c737761705f6d656d62657208011872656d6f7665d90201504163636f756e7449644c6f6f6b75704f663c543e00010c616464d90201504163636f756e7449644c6f6f6b75704f663c543e000214bc53776170206f7574206f6e65206d656d626572206072656d6f76656020666f7220616e6f746865722060616464602e00a04d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a537761704f726967696e602e000d015072696d65206d656d62657273686970206973202a6e6f742a207061737365642066726f6d206072656d6f76656020746f2060616464602c20696620657874616e742e3472657365745f6d656d6265727304011c6d656d62657273250301445665633c543a3a4163636f756e7449643e00031055014368616e676520746865206d656d6265727368697020746f2061206e6577207365742c20646973726567617264696e6720746865206578697374696e67206d656d626572736869702e204265206e69636520616e64687061737320606d656d6265727360207072652d736f727465642e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52657365744f726967696e602e286368616e67655f6b657904010c6e6577d90201504163636f756e7449644c6f6f6b75704f663c543e000414d453776170206f7574207468652073656e64696e67206d656d62657220666f7220736f6d65206f74686572206b657920606e6577602e00f04d6179206f6e6c792062652063616c6c65642066726f6d20605369676e656460206f726967696e206f6620612063757272656e74206d656d6265722e001d015072696d65206d656d62657273686970206973207061737365642066726f6d20746865206f726967696e206163636f756e7420746f20606e6577602c20696620657874616e742e247365745f7072696d6504010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e00050cbc53657420746865207072696d65206d656d6265722e204d75737420626520612063757272656e74206d656d6265722e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e2c636c6561725f7072696d6500060c9452656d6f766520746865207072696d65206d656d626572206966206974206578697374732e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ecd030c3c70616c6c65745f74726561737572791870616c6c65741043616c6c0804540004490001143470726f706f73655f7370656e6408011476616c7565c101013c42616c616e63654f663c542c20493e00012c62656e6566696369617279d90201504163636f756e7449644c6f6f6b75704f663c543e000024290150757420666f727761726420612073756767657374696f6e20666f72207370656e64696e672e2041206465706f7369742070726f706f7274696f6e616c20746f207468652076616c75653101697320726573657276656420616e6420736c6173686564206966207468652070726f706f73616c2069732072656a65637465642e2049742069732072657475726e6564206f6e6365207468655070726f706f73616c20697320617761726465642e002823203c7765696768743e482d20436f6d706c65786974793a204f283129b02d20446252656164733a206050726f706f73616c436f756e74602c20606f726967696e206163636f756e7460e82d2044625772697465733a206050726f706f73616c436f756e74602c206050726f706f73616c73602c20606f726967696e206163636f756e74602c23203c2f7765696768743e3c72656a6563745f70726f706f73616c04012c70726f706f73616c5f6964b501013450726f706f73616c496e646578000124f852656a65637420612070726f706f736564207370656e642e20546865206f726967696e616c206465706f7369742077696c6c20626520736c61736865642e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656a6563744f726967696e602e002823203c7765696768743e482d20436f6d706c65786974793a204f283129cc2d20446252656164733a206050726f706f73616c73602c206072656a65637465642070726f706f736572206163636f756e7460d02d2044625772697465733a206050726f706f73616c73602c206072656a65637465642070726f706f736572206163636f756e74602c23203c2f7765696768743e40617070726f76655f70726f706f73616c04012c70726f706f73616c5f6964b501013450726f706f73616c496e6465780002285901417070726f766520612070726f706f73616c2e2041742061206c617465722074696d652c207468652070726f706f73616c2077696c6c20626520616c6c6f636174656420746f207468652062656e6566696369617279a8616e6420746865206f726967696e616c206465706f7369742077696c6c2062652072657475726e65642e00ac4d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a417070726f76654f726967696e602e002823203c7765696768743e4c2d20436f6d706c65786974793a204f2831292e8c2d20446252656164733a206050726f706f73616c73602c2060417070726f76616c7360582d20446257726974653a2060417070726f76616c73602c23203c2f7765696768743e147370656e64080118616d6f756e74c101013c42616c616e63654f663c542c20493e00012c62656e6566696369617279d90201504163636f756e7449644c6f6f6b75704f663c543e000320b850726f706f736520616e6420617070726f76652061207370656e64206f662074726561737572792066756e64732e004d012d20606f726967696e603a204d75737420626520605370656e644f726967696e60207769746820746865206053756363657373602076616c7565206265696e67206174206c656173742060616d6f756e74602e41012d2060616d6f756e74603a2054686520616d6f756e7420746f206265207472616e736665727265642066726f6d2074686520747265617375727920746f20746865206062656e6566696369617279602ee82d206062656e6566696369617279603a205468652064657374696e6174696f6e206163636f756e7420666f7220746865207472616e736665722e0045014e4f54453a20466f72207265636f72642d6b656570696e6720707572706f7365732c207468652070726f706f736572206973206465656d656420746f206265206571756976616c656e7420746f207468653062656e65666963696172792e3c72656d6f76655f617070726f76616c04012c70726f706f73616c5f6964b501013450726f706f73616c496e64657800043c2d01466f72636520612070726576696f75736c7920617070726f7665642070726f706f73616c20746f2062652072656d6f7665642066726f6d2074686520617070726f76616c2071756575652ec0546865206f726967696e616c206465706f7369742077696c6c206e6f206c6f6e6765722062652072657475726e65642e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656a6563744f726967696e602ea02d206070726f706f73616c5f6964603a2054686520696e646578206f6620612070726f706f73616c002823203c7765696768743edc2d20436f6d706c65786974793a204f2841292077686572652060416020697320746865206e756d626572206f6620617070726f76616c73882d20446220726561647320616e64207772697465733a2060417070726f76616c73602c23203c2f7765696768743e001c4572726f72733a61012d206050726f706f73616c4e6f74417070726f766564603a20546865206070726f706f73616c5f69646020737570706c69656420776173206e6f7420666f756e6420696e2074686520617070726f76616c2071756575652c5101692e652e2c207468652070726f706f73616c20686173206e6f74206265656e20617070726f7665642e205468697320636f756c6420616c736f206d65616e207468652070726f706f73616c20646f6573206e6f745901657869737420616c746f6765746865722c2074687573207468657265206973206e6f2077617920697420776f756c642068617665206265656e20617070726f76656420696e2074686520666972737420706c6163652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ed1030c3870616c6c65745f7574696c6974791870616c6c65741043616c6c04045400011814626174636804011463616c6c73d503017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00004c7c53656e642061206261746368206f662064697370617463682063616c6c732e00b04d61792062652063616c6c65642066726f6d20616e79206f726967696e2065786365707420604e6f6e65602e005d012d206063616c6c73603a205468652063616c6c7320746f20626520646973706174636865642066726f6d207468652073616d65206f726967696e2e20546865206e756d626572206f662063616c6c206d757374206e6f74390120206578636565642074686520636f6e7374616e743a2060626174636865645f63616c6c735f6c696d6974602028617661696c61626c6520696e20636f6e7374616e74206d65746164617461292e0055014966206f726967696e20697320726f6f74207468656e207468652063616c6c7320617265206469737061746368656420776974686f757420636865636b696e67206f726967696e2066696c7465722e202854686973ec696e636c7564657320627970617373696e6720606672616d655f73797374656d3a3a436f6e6669673a3a4261736543616c6c46696c74657260292e002823203c7765696768743e01012d20436f6d706c65786974793a204f284329207768657265204320697320746865206e756d626572206f662063616c6c7320746f20626520626174636865642e2c23203c2f7765696768743e005501546869732077696c6c2072657475726e20604f6b6020696e20616c6c2063697263756d7374616e6365732e20546f2064657465726d696e65207468652073756363657373206f66207468652062617463682c20616e31016576656e74206973206465706f73697465642e20496620612063616c6c206661696c656420616e64207468652062617463682077617320696e7465727275707465642c207468656e207468655501604261746368496e74657272757074656460206576656e74206973206465706f73697465642c20616c6f6e67207769746820746865206e756d626572206f66207375636365737366756c2063616c6c73206d6164654d01616e6420746865206572726f72206f6620746865206661696c65642063616c6c2e20496620616c6c2077657265207375636365737366756c2c207468656e2074686520604261746368436f6d706c65746564604c6576656e74206973206465706f73697465642e3461735f64657269766174697665080114696e646578d8010c75313600011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000134dc53656e6420612063616c6c207468726f75676820616e20696e64657865642070736575646f6e796d206f66207468652073656e6465722e00550146696c7465722066726f6d206f726967696e206172652070617373656420616c6f6e672e205468652063616c6c2077696c6c2062652064697370617463686564207769746820616e206f726967696e207768696368bc757365207468652073616d652066696c74657220617320746865206f726967696e206f6620746869732063616c6c2e0045014e4f54453a20496620796f75206e65656420746f20656e73757265207468617420616e79206163636f756e742d62617365642066696c746572696e67206973206e6f7420686f6e6f7265642028692e652e61016265636175736520796f7520657870656374206070726f78796020746f2068617665206265656e2075736564207072696f7220696e207468652063616c6c20737461636b20616e6420796f7520646f206e6f742077616e7451017468652063616c6c207265737472696374696f6e7320746f206170706c7920746f20616e79207375622d6163636f756e7473292c207468656e20757365206061735f6d756c74695f7468726573686f6c645f31607c696e20746865204d756c74697369672070616c6c657420696e73746561642e00f44e4f54453a205072696f7220746f2076657273696f6e202a31322c2074686973207761732063616c6c6564206061735f6c696d697465645f737562602e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e2462617463685f616c6c04011463616c6c73d503017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000238ec53656e642061206261746368206f662064697370617463682063616c6c7320616e642061746f6d6963616c6c792065786563757465207468656d2e21015468652077686f6c65207472616e73616374696f6e2077696c6c20726f6c6c6261636b20616e64206661696c20696620616e79206f66207468652063616c6c73206661696c65642e00b04d61792062652063616c6c65642066726f6d20616e79206f726967696e2065786365707420604e6f6e65602e005d012d206063616c6c73603a205468652063616c6c7320746f20626520646973706174636865642066726f6d207468652073616d65206f726967696e2e20546865206e756d626572206f662063616c6c206d757374206e6f74390120206578636565642074686520636f6e7374616e743a2060626174636865645f63616c6c735f6c696d6974602028617661696c61626c6520696e20636f6e7374616e74206d65746164617461292e0055014966206f726967696e20697320726f6f74207468656e207468652063616c6c7320617265206469737061746368656420776974686f757420636865636b696e67206f726967696e2066696c7465722e202854686973ec696e636c7564657320627970617373696e6720606672616d655f73797374656d3a3a436f6e6669673a3a4261736543616c6c46696c74657260292e002823203c7765696768743e01012d20436f6d706c65786974793a204f284329207768657265204320697320746865206e756d626572206f662063616c6c7320746f20626520626174636865642e2c23203c2f7765696768743e2c64697370617463685f617308012461735f6f726967696ed9030154426f783c543a3a50616c6c6574734f726967696e3e00011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000328c84469737061746368657320612066756e6374696f6e2063616c6c207769746820612070726f7669646564206f726967696e2e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e002823203c7765696768743e1c2d204f2831292e602d204c696d697465642073746f726167652072656164732e5c2d204f6e6520444220777269746520286576656e74292e1d012d20576569676874206f662064657269766174697665206063616c6c6020657865637574696f6e202b20543a3a576569676874496e666f3a3a64697370617463685f617328292e2c23203c2f7765696768743e2c666f7263655f626174636804011463616c6c73d503017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e0004387c53656e642061206261746368206f662064697370617463682063616c6c732ed4556e6c696b6520606261746368602c20697420616c6c6f7773206572726f727320616e6420776f6e277420696e746572727570742e00b04d61792062652063616c6c65642066726f6d20616e79206f726967696e2065786365707420604e6f6e65602e005d012d206063616c6c73603a205468652063616c6c7320746f20626520646973706174636865642066726f6d207468652073616d65206f726967696e2e20546865206e756d626572206f662063616c6c206d757374206e6f74390120206578636565642074686520636f6e7374616e743a2060626174636865645f63616c6c735f6c696d6974602028617661696c61626c6520696e20636f6e7374616e74206d65746164617461292e004d014966206f726967696e20697320726f6f74207468656e207468652063616c6c732061726520646973706174636820776974686f757420636865636b696e67206f726967696e2066696c7465722e202854686973ec696e636c7564657320627970617373696e6720606672616d655f73797374656d3a3a436f6e6669673a3a4261736543616c6c46696c74657260292e002823203c7765696768743e01012d20436f6d706c65786974793a204f284329207768657265204320697320746865206e756d626572206f662063616c6c7320746f20626520626174636865642e2c23203c2f7765696768743e2c776974685f77656967687408011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000118776569676874240118576569676874000518c4446973706174636820612066756e6374696f6e2063616c6c2077697468206120737065636966696564207765696768742e002d01546869732066756e6374696f6e20646f6573206e6f7420636865636b2074686520776569676874206f66207468652063616c6c2c20616e6420696e737465616420616c6c6f777320746865b8526f6f74206f726967696e20746f20737065636966792074686520776569676874206f66207468652063616c6c2e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ed503000002a50300d90308447370697269746e65745f72756e74696d65304f726967696e43616c6c657200011c1873797374656d0400dd0301746672616d655f73797374656d3a3a4f726967696e3c52756e74696d653e0000001c436f756e63696c0400e10301010170616c6c65745f636f6c6c6563746976653a3a4f726967696e3c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365313e001f0048546563686e6963616c436f6d6d69747465650400e50301010170616c6c65745f636f6c6c6563746976653a3a4f726967696e3c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365323e0020000c4469640400e90301506469643a3a4f726967696e3c52756e74696d653e0040002c506f6c6b61646f7458636d0400ed03014870616c6c65745f78636d3a3a4f726967696e0053002843756d756c757358636d0400f103016863756d756c75735f70616c6c65745f78636d3a3a4f726967696e00540010566f69640400f50301110173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a566f696400060000dd030c346672616d655f737570706f7274206469737061746368245261774f726967696e04244163636f756e7449640100010c10526f6f74000000185369676e656404000001244163636f756e744964000100104e6f6e6500020000e103084470616c6c65745f636f6c6c656374697665245261774f726967696e08244163636f756e7449640100044900010c1c4d656d6265727308001c012c4d656d626572436f756e7400001c012c4d656d626572436f756e74000000184d656d62657204000001244163636f756e744964000100205f5068616e746f6d00020000e503084470616c6c65745f636f6c6c656374697665245261774f726967696e08244163636f756e7449640100044900010c1c4d656d6265727308001c012c4d656d626572436f756e7400001c012c4d656d626572436f756e74000000184d656d62657204000001244163636f756e744964000100205f5068616e746f6d00020000e9030c0c646964186f726967696e304469645261774f726967696e08344469644964656e7469666965720100244163636f756e74496401000008010869640001344469644964656e7469666965720001247375626d69747465720001244163636f756e7449640000ed030c2870616c6c65745f78636d1870616c6c6574184f726967696e0001080c58636d0400a90101344d756c74694c6f636174696f6e00000020526573706f6e73650400a90101344d756c74694c6f636174696f6e00010000f1030c4863756d756c75735f70616c6c65745f78636d1870616c6c6574184f726967696e0001081452656c6179000000405369626c696e6750617261636861696e04009d01011850617261496400010000f503081c73705f636f726510566f696400010000f9030c3870616c6c65745f76657374696e671870616c6c65741043616c6c0404540001141076657374000034b8556e6c6f636b20616e79207665737465642066756e6473206f66207468652073656e646572206163636f756e742e005d01546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e646572206d75737420686176652066756e6473207374696c6c646c6f636b656420756e64657220746869732070616c6c65742e00d0456d69747320656974686572206056657374696e67436f6d706c6574656460206f72206056657374696e6755706461746564602e002823203c7765696768743e242d20604f283129602e742d2044625765696768743a20322052656164732c203220577269746573f8202020202d2052656164733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c205b53656e646572204163636f756e745dfc202020202d205772697465733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c205b53656e646572204163636f756e745d2c23203c2f7765696768743e28766573745f6f74686572040118746172676574d90201504163636f756e7449644c6f6f6b75704f663c543e00013cb8556e6c6f636b20616e79207665737465642066756e6473206f662061206074617267657460206163636f756e742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0051012d2060746172676574603a20546865206163636f756e742077686f7365207665737465642066756e64732073686f756c6420626520756e6c6f636b65642e204d75737420686176652066756e6473207374696c6c646c6f636b656420756e64657220746869732070616c6c65742e00d0456d69747320656974686572206056657374696e67436f6d706c6574656460206f72206056657374696e6755706461746564602e002823203c7765696768743e242d20604f283129602e742d2044625765696768743a20332052656164732c203320577269746573f0202020202d2052656164733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c20546172676574204163636f756e74f4202020202d205772697465733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c20546172676574204163636f756e742c23203c2f7765696768743e3c7665737465645f7472616e73666572080118746172676574d90201504163636f756e7449644c6f6f6b75704f663c543e0001207363686564756c65fd0301a456657374696e67496e666f3c42616c616e63654f663c543e2c20543a3a426c6f636b4e756d6265723e00024464437265617465206120766573746564207472616e736665722e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00cc2d2060746172676574603a20546865206163636f756e7420726563656976696e6720746865207665737465642066756e64732ef02d20607363686564756c65603a205468652076657374696e67207363686564756c6520617474616368656420746f20746865207472616e736665722e005c456d697473206056657374696e6743726561746564602e00fc4e4f54453a20546869732077696c6c20756e6c6f636b20616c6c207363686564756c6573207468726f756768207468652063757272656e7420626c6f636b2e002823203c7765696768743e242d20604f283129602e742d2044625765696768743a20332052656164732c2033205772697465733901202020202d2052656164733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c20546172676574204163636f756e742c205b53656e646572204163636f756e745d3d01202020202d205772697465733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c20546172676574204163636f756e742c205b53656e646572204163636f756e745d2c23203c2f7765696768743e54666f7263655f7665737465645f7472616e736665720c0118736f75726365d90201504163636f756e7449644c6f6f6b75704f663c543e000118746172676574d90201504163636f756e7449644c6f6f6b75704f663c543e0001207363686564756c65fd0301a456657374696e67496e666f3c42616c616e63654f663c543e2c20543a3a426c6f636b4e756d6265723e00034860466f726365206120766573746564207472616e736665722e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e00e82d2060736f75726365603a20546865206163636f756e742077686f73652066756e64732073686f756c64206265207472616e736665727265642e11012d2060746172676574603a20546865206163636f756e7420746861742073686f756c64206265207472616e7366657272656420746865207665737465642066756e64732ef02d20607363686564756c65603a205468652076657374696e67207363686564756c6520617474616368656420746f20746865207472616e736665722e005c456d697473206056657374696e6743726561746564602e00fc4e4f54453a20546869732077696c6c20756e6c6f636b20616c6c207363686564756c6573207468726f756768207468652063757272656e7420626c6f636b2e002823203c7765696768743e242d20604f283129602e742d2044625765696768743a20342052656164732c2034205772697465733101202020202d2052656164733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c20546172676574204163636f756e742c20536f75726365204163636f756e743501202020202d205772697465733a2056657374696e672053746f726167652c2042616c616e636573204c6f636b732c20546172676574204163636f756e742c20536f75726365204163636f756e742c23203c2f7765696768743e3c6d657267655f7363686564756c657308013c7363686564756c65315f696e6465781c010c75333200013c7363686564756c65325f696e6465781c010c7533320004545d014d657267652074776f2076657374696e67207363686564756c657320746f6765746865722c206372656174696e672061206e65772076657374696e67207363686564756c65207468617420756e6c6f636b73206f7665725501746865206869676865737420706f737369626c6520737461727420616e6420656e6420626c6f636b732e20496620626f7468207363686564756c6573206861766520616c7265616479207374617274656420746865590163757272656e7420626c6f636b2077696c6c206265207573656420617320746865207363686564756c652073746172743b207769746820746865206361766561742074686174206966206f6e65207363686564756c655d0169732066696e6973686564206279207468652063757272656e7420626c6f636b2c20746865206f746865722077696c6c206265207472656174656420617320746865206e6577206d6572676564207363686564756c652c2c756e6d6f6469666965642e00f84e4f54453a20496620607363686564756c65315f696e646578203d3d207363686564756c65325f696e6465786020746869732069732061206e6f2d6f702e41014e4f54453a20546869732077696c6c20756e6c6f636b20616c6c207363686564756c6573207468726f756768207468652063757272656e7420626c6f636b207072696f7220746f206d657267696e672e61014e4f54453a20496620626f7468207363686564756c6573206861766520656e646564206279207468652063757272656e7420626c6f636b2c206e6f206e6577207363686564756c652077696c6c206265206372656174656464616e6420626f74682077696c6c2062652072656d6f7665642e006c4d6572676564207363686564756c6520617474726962757465733a35012d20607374617274696e675f626c6f636b603a20604d4158287363686564756c65312e7374617274696e675f626c6f636b2c207363686564756c6564322e7374617274696e675f626c6f636b2c48202063757272656e745f626c6f636b29602e21012d2060656e64696e675f626c6f636b603a20604d4158287363686564756c65312e656e64696e675f626c6f636b2c207363686564756c65322e656e64696e675f626c6f636b29602e59012d20606c6f636b6564603a20607363686564756c65312e6c6f636b65645f61742863757272656e745f626c6f636b29202b207363686564756c65322e6c6f636b65645f61742863757272656e745f626c6f636b29602e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00e82d20607363686564756c65315f696e646578603a20696e646578206f6620746865206669727374207363686564756c6520746f206d657267652eec2d20607363686564756c65325f696e646578603a20696e646578206f6620746865207365636f6e64207363686564756c6520746f206d657267652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632efd030c3870616c6c65745f76657374696e673076657374696e675f696e666f2c56657374696e67496e666f081c42616c616e636501182c426c6f636b4e756d6265720110000c01186c6f636b656418011c42616c616e63650001247065725f626c6f636b18011c42616c616e63650001387374617274696e675f626c6f636b10012c426c6f636b4e756d626572000001040c4070616c6c65745f7363686564756c65721870616c6c65741043616c6c040454000118207363686564756c651001107768656e100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963050401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00000470416e6f6e796d6f75736c79207363686564756c652061207461736b2e1863616e63656c0801107768656e100138543a3a426c6f636b4e756d626572000114696e6465781c010c7533320001049443616e63656c20616e20616e6f6e796d6f75736c79207363686564756c6564207461736b2e387363686564756c655f6e616d656414010869640401205461736b4e616d650001107768656e100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963050401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000204585363686564756c652061206e616d6564207461736b2e3063616e63656c5f6e616d656404010869640401205461736b4e616d650003047843616e63656c2061206e616d6564207363686564756c6564207461736b2e387363686564756c655f61667465721001146166746572100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963050401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000414a8416e6f6e796d6f75736c79207363686564756c652061207461736b20616674657220612064656c61792e002823203c7765696768743e5453616d65206173205b607363686564756c65605d2e2c23203c2f7765696768743e507363686564756c655f6e616d65645f616674657214010869640401205461736b4e616d650001146166746572100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963050401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000514905363686564756c652061206e616d6564207461736b20616674657220612064656c61792e002823203c7765696768743ec453616d65206173205b607363686564756c655f6e616d6564605d2853656c663a3a7363686564756c655f6e616d6564292e2c23203c2f7765696768743e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e050404184f7074696f6e04045401c80108104e6f6e6500000010536f6d650400c8000001000009040c3070616c6c65745f70726f78791870616c6c65741043616c6c0404540001281470726f78790c01107265616cd90201504163636f756e7449644c6f6f6b75704f663c543e000140666f7263655f70726f78795f747970650d0401504f7074696f6e3c543a3a50726f7879547970653e00011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e0000244d0144697370617463682074686520676976656e206063616c6c602066726f6d20616e206163636f756e742074686174207468652073656e64657220697320617574686f726973656420666f72207468726f75676830606164645f70726f7879602e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e61012d2060666f7263655f70726f78795f74797065603a2053706563696679207468652065786163742070726f7879207479706520746f206265207573656420616e6420636865636b656420666f7220746869732063616c6c2ed02d206063616c6c603a205468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e246164645f70726f78790c012064656c6567617465d90201504163636f756e7449644c6f6f6b75704f663c543e00012870726f78795f74797065d40130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d6265720001244501526567697374657220612070726f7879206163636f756e7420666f72207468652073656e64657220746861742069732061626c6520746f206d616b652063616c6c73206f6e2069747320626568616c662e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a11012d206070726f7879603a20546865206163636f756e74207468617420746865206063616c6c65726020776f756c64206c696b6520746f206d616b6520612070726f78792efc2d206070726f78795f74797065603a20546865207065726d697373696f6e7320616c6c6f77656420666f7220746869732070726f7879206163636f756e742e4d012d206064656c6179603a2054686520616e6e6f756e63656d656e7420706572696f64207265717569726564206f662074686520696e697469616c2070726f78792e2057696c6c2067656e6572616c6c79206265147a65726f2e3072656d6f76655f70726f78790c012064656c6567617465d90201504163636f756e7449644c6f6f6b75704f663c543e00012870726f78795f74797065d40130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d62657200021ca8556e726567697374657220612070726f7879206163636f756e7420666f72207468652073656e6465722e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a25012d206070726f7879603a20546865206163636f756e74207468617420746865206063616c6c65726020776f756c64206c696b6520746f2072656d6f766520617320612070726f78792e41012d206070726f78795f74797065603a20546865207065726d697373696f6e732063757272656e746c7920656e61626c656420666f72207468652072656d6f7665642070726f7879206163636f756e742e3872656d6f76655f70726f78696573000318b4556e726567697374657220616c6c2070726f7879206163636f756e747320666f72207468652073656e6465722e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0041015741524e494e473a2054686973206d61792062652063616c6c6564206f6e206163636f756e74732063726561746564206279206070757265602c20686f776576657220696620646f6e652c207468656e590174686520756e726573657276656420666565732077696c6c20626520696e61636365737369626c652e202a2a416c6c2061636365737320746f2074686973206163636f756e742077696c6c206265206c6f73742e2a2a2c6372656174655f707572650c012870726f78795f74797065d40130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d626572000114696e646578d8010c7531360004483901537061776e2061206672657368206e6577206163636f756e7420746861742069732067756172616e7465656420746f206265206f746865727769736520696e61636365737369626c652c20616e64fc696e697469616c697a65206974207769746820612070726f7879206f66206070726f78795f747970656020666f7220606f726967696e602073656e6465722e006c5265717569726573206120605369676e656460206f726967696e2e0051012d206070726f78795f74797065603a205468652074797065206f66207468652070726f78792074686174207468652073656e6465722077696c6c2062652072656769737465726564206173206f766572207468654d016e6577206163636f756e742e20546869732077696c6c20616c6d6f737420616c7761797320626520746865206d6f7374207065726d697373697665206050726f7879547970656020706f737369626c6520746f78616c6c6f7720666f72206d6178696d756d20666c65786962696c6974792e51012d2060696e646578603a204120646973616d626967756174696f6e20696e6465782c20696e206361736520746869732069732063616c6c6564206d756c7469706c652074696d657320696e207468652073616d655d017472616e73616374696f6e2028652e672e207769746820607574696c6974793a3a626174636860292e20556e6c65737320796f75277265207573696e67206062617463686020796f752070726f6261626c79206a7573744077616e7420746f20757365206030602e4d012d206064656c6179603a2054686520616e6e6f756e63656d656e7420706572696f64207265717569726564206f662074686520696e697469616c2070726f78792e2057696c6c2067656e6572616c6c79206265147a65726f2e0051014661696c73207769746820604475706c69636174656020696620746869732068617320616c7265616479206265656e2063616c6c656420696e2074686973207472616e73616374696f6e2c2066726f6d207468659873616d652073656e6465722c2077697468207468652073616d6520706172616d65746572732e00e44661696c732069662074686572652061726520696e73756666696369656e742066756e647320746f2070617920666f72206465706f7369742e246b696c6c5f7075726514011c737061776e6572d90201504163636f756e7449644c6f6f6b75704f663c543e00012870726f78795f74797065d40130543a3a50726f787954797065000114696e646578d8010c753136000118686569676874280138543a3a426c6f636b4e756d6265720001246578745f696e646578b501010c753332000540a052656d6f76657320612070726576696f75736c7920737061776e656420707572652070726f78792e0049015741524e494e473a202a2a416c6c2061636365737320746f2074686973206163636f756e742077696c6c206265206c6f73742e2a2a20416e792066756e64732068656c6420696e2069742077696c6c20626534696e61636365737369626c652e0059015265717569726573206120605369676e656460206f726967696e2c20616e64207468652073656e646572206163636f756e74206d7573742068617665206265656e206372656174656420627920612063616c6c20746f94607075726560207769746820636f72726573706f6e64696e6720706172616d65746572732e0039012d2060737061776e6572603a20546865206163636f756e742074686174206f726967696e616c6c792063616c6c65642060707572656020746f206372656174652074686973206163636f756e742e39012d2060696e646578603a2054686520646973616d626967756174696f6e20696e646578206f726967696e616c6c792070617373656420746f206070757265602e2050726f6261626c79206030602eec2d206070726f78795f74797065603a205468652070726f78792074797065206f726967696e616c6c792070617373656420746f206070757265602e29012d2060686569676874603a2054686520686569676874206f662074686520636861696e207768656e207468652063616c6c20746f20607075726560207761732070726f6365737365642e35012d20606578745f696e646578603a205468652065787472696e73696320696e64657820696e207768696368207468652063616c6c20746f20607075726560207761732070726f6365737365642e0035014661696c73207769746820604e6f5065726d697373696f6e6020696e2063617365207468652063616c6c6572206973206e6f7420612070726576696f75736c7920637265617465642070757265dc6163636f756e742077686f7365206070757265602063616c6c2068617320636f72726573706f6e64696e6720706172616d65746572732e20616e6e6f756e63650801107265616cd90201504163636f756e7449644c6f6f6b75704f663c543e00012463616c6c5f686173682c013443616c6c486173684f663c543e00063c05015075626c697368207468652068617368206f6620612070726f78792d63616c6c20746861742077696c6c206265206d61646520696e20746865206675747572652e005d0154686973206d7573742062652063616c6c656420736f6d65206e756d626572206f6620626c6f636b73206265666f72652074686520636f72726573706f6e64696e67206070726f78796020697320617474656d7074656425016966207468652064656c6179206173736f6369617465642077697468207468652070726f78792072656c6174696f6e736869702069732067726561746572207468616e207a65726f2e0011014e6f206d6f7265207468616e20604d617850656e64696e676020616e6e6f756e63656d656e7473206d6179206265206d61646520617420616e79206f6e652074696d652e000901546869732077696c6c2074616b652061206465706f736974206f662060416e6e6f756e63656d656e744465706f736974466163746f72602061732077656c6c206173190160416e6e6f756e63656d656e744465706f736974426173656020696620746865726520617265206e6f206f746865722070656e64696e6720616e6e6f756e63656d656e74732e002501546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420612070726f7879206f6620607265616c602e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e15012d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e4c72656d6f76655f616e6e6f756e63656d656e740801107265616cd90201504163636f756e7449644c6f6f6b75704f663c543e00012463616c6c5f686173682c013443616c6c486173684f663c543e0007287052656d6f7665206120676976656e20616e6e6f756e63656d656e742e0059014d61792062652063616c6c656420627920612070726f7879206163636f756e7420746f2072656d6f766520612063616c6c20746865792070726576696f75736c7920616e6e6f756e63656420616e642072657475726e30746865206465706f7369742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e15012d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e4c72656a6563745f616e6e6f756e63656d656e7408012064656c6567617465d90201504163636f756e7449644c6f6f6b75704f663c543e00012463616c6c5f686173682c013443616c6c486173684f663c543e000828b052656d6f76652074686520676976656e20616e6e6f756e63656d656e74206f6620612064656c65676174652e0061014d61792062652063616c6c6564206279206120746172676574202870726f7869656429206163636f756e7420746f2072656d6f766520612063616c6c2074686174206f6e65206f662074686569722064656c6567617465732501286064656c656761746560292068617320616e6e6f756e63656420746865792077616e7420746f20657865637574652e20546865206465706f7369742069732072657475726e65642e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733af42d206064656c6567617465603a20546865206163636f756e7420746861742070726576696f75736c7920616e6e6f756e636564207468652063616c6c2ebc2d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f206265206d6164652e3c70726f78795f616e6e6f756e63656410012064656c6567617465d90201504163636f756e7449644c6f6f6b75704f663c543e0001107265616cd90201504163636f756e7449644c6f6f6b75704f663c543e000140666f7263655f70726f78795f747970650d0401504f7074696f6e3c543a3a50726f7879547970653e00011063616c6ca503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00092c4d0144697370617463682074686520676976656e206063616c6c602066726f6d20616e206163636f756e742074686174207468652073656e64657220697320617574686f72697a656420666f72207468726f75676830606164645f70726f7879602e00a852656d6f76657320616e7920636f72726573706f6e64696e6720616e6e6f756e63656d656e742873292e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e61012d2060666f7263655f70726f78795f74797065603a2053706563696679207468652065786163742070726f7879207479706520746f206265207573656420616e6420636865636b656420666f7220746869732063616c6c2ed02d206063616c6c603a205468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e0d0404184f7074696f6e04045401d40108104e6f6e6500000010536f6d650400d4000001000011040c3c70616c6c65745f707265696d6167651870616c6c65741043616c6c040454000110346e6f74655f707265696d616765040114627974657330011c5665633c75383e000010745265676973746572206120707265696d616765206f6e2d636861696e2e00550149662074686520707265696d616765207761732070726576696f75736c79207265717565737465642c206e6f2066656573206f72206465706f73697473206172652074616b656e20666f722070726f766964696e67550174686520707265696d6167652e204f74686572776973652c2061206465706f7369742069732074616b656e2070726f706f7274696f6e616c20746f207468652073697a65206f662074686520707265696d6167652e3c756e6e6f74655f707265696d616765040110686173682c011c543a3a48617368000118dc436c65617220616e20756e72657175657374656420707265696d6167652066726f6d207468652072756e74696d652073746f726167652e00fc496620606c656e602069732070726f76696465642c207468656e2069742077696c6c2062652061206d7563682063686561706572206f7065726174696f6e2e0001012d206068617368603a205468652068617368206f662074686520707265696d61676520746f2062652072656d6f7665642066726f6d207468652073746f72652eb82d20606c656e603a20546865206c656e677468206f662074686520707265696d616765206f66206068617368602e40726571756573745f707265696d616765040110686173682c011c543a3a48617368000210410152657175657374206120707265696d6167652062652075706c6f6164656420746f2074686520636861696e20776974686f757420706179696e6720616e792066656573206f72206465706f736974732e00550149662074686520707265696d6167652072657175657374732068617320616c7265616479206265656e2070726f7669646564206f6e2d636861696e2c20776520756e7265736572766520616e79206465706f7369743901612075736572206d6179206861766520706169642c20616e642074616b652074686520636f6e74726f6c206f662074686520707265696d616765206f7574206f662074686569722068616e64732e48756e726571756573745f707265696d616765040110686173682c011c543a3a4861736800030cbc436c65617220612070726576696f75736c79206d616465207265717565737420666f72206120707265696d6167652e002d014e4f54453a2054484953204d555354204e4f542042452043414c4c4544204f4e20606861736860204d4f52452054494d4553205448414e2060726571756573745f707265696d616765602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e15040c4470616c6c65745f6d656d626572736869701870616c6c65741043616c6c08045400044900011c286164645f6d656d62657204010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e00000c784164642061206d656d626572206077686f6020746f20746865207365742e009c4d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a4164644f726967696e602e3472656d6f76655f6d656d62657204010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e00010c8c52656d6f76652061206d656d626572206077686f602066726f6d20746865207365742e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656d6f76654f726967696e602e2c737761705f6d656d62657208011872656d6f7665d90201504163636f756e7449644c6f6f6b75704f663c543e00010c616464d90201504163636f756e7449644c6f6f6b75704f663c543e000214bc53776170206f7574206f6e65206d656d626572206072656d6f76656020666f7220616e6f746865722060616464602e00a04d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a537761704f726967696e602e000d015072696d65206d656d62657273686970206973202a6e6f742a207061737365642066726f6d206072656d6f76656020746f2060616464602c20696620657874616e742e3472657365745f6d656d6265727304011c6d656d62657273250301445665633c543a3a4163636f756e7449643e00031055014368616e676520746865206d656d6265727368697020746f2061206e6577207365742c20646973726567617264696e6720746865206578697374696e67206d656d626572736869702e204265206e69636520616e64687061737320606d656d6265727360207072652d736f727465642e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52657365744f726967696e602e286368616e67655f6b657904010c6e6577d90201504163636f756e7449644c6f6f6b75704f663c543e000414d453776170206f7574207468652073656e64696e67206d656d62657220666f7220736f6d65206f74686572206b657920606e6577602e00f04d6179206f6e6c792062652063616c6c65642066726f6d20605369676e656460206f726967696e206f6620612063757272656e74206d656d6265722e001d015072696d65206d656d62657273686970206973207061737365642066726f6d20746865206f726967696e206163636f756e7420746f20606e6577602c20696620657874616e742e247365745f7072696d6504010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e00050cbc53657420746865207072696d65206d656d6265722e204d75737420626520612063757272656e74206d656d6265722e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e2c636c6561725f7072696d6500060c9452656d6f766520746865207072696d65206d656d626572206966206974206578697374732e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e19040c2c70616c6c65745f746970731870616c6c65741043616c6c080454000449000118387265706f72745f617765736f6d65080118726561736f6e30011c5665633c75383e00010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e00004c59015265706f727420736f6d657468696e672060726561736f6e60207468617420646573657276657320612074697020616e6420636c61696d20616e79206576656e7475616c207468652066696e6465722773206665652e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0051015061796d656e743a20605469705265706f72744465706f73697442617365602077696c6c2062652072657365727665642066726f6d20746865206f726967696e206163636f756e742c2061732077656c6c206173bc60446174614465706f736974506572427974656020666f722065616368206279746520696e2060726561736f6e602e005d012d2060726561736f6e603a2054686520726561736f6e20666f722c206f7220746865207468696e6720746861742064657365727665732c20746865207469703b2067656e6572616c6c7920746869732077696c6c20626558202061205554462d382d656e636f6465642055524c2ee82d206077686f603a20546865206163636f756e742077686963682073686f756c6420626520637265646974656420666f7220746865207469702e0074456d69747320604e657754697060206966207375636365737366756c2e002823203c7765696768743ec82d20436f6d706c65786974793a20604f2852296020776865726520605260206c656e677468206f662060726561736f6e602e9020202d20656e636f64696e6720616e642068617368696e67206f662027726561736f6e27702d20446252656164733a2060526561736f6e73602c20605469707360742d2044625772697465733a2060526561736f6e73602c206054697073602c23203c2f7765696768743e2c726574726163745f746970040110686173682c011c543a3a4861736800014c5101526574726163742061207072696f72207469702d7265706f72742066726f6d20607265706f72745f617765736f6d65602c20616e642063616e63656c207468652070726f63657373206f662074697070696e672e00dc4966207375636365737366756c2c20746865206f726967696e616c206465706f7369742077696c6c20626520756e72657365727665642e004d01546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e642074686520746970206964656e7469666965642062792060686173686041016d7573742068617665206265656e207265706f7274656420627920746865207369676e696e67206163636f756e74207468726f75676820607265706f72745f617765736f6d65602028616e64206e6f744c7468726f75676820607469705f6e657760292e0061012d206068617368603a20546865206964656e74697479206f6620746865206f70656e2074697020666f722077686963682061207469702076616c7565206973206465636c617265642e205468697320697320666f726d65645d0120206173207468652068617368206f6620746865207475706c65206f6620746865206f726967696e616c207469702060726561736f6e6020616e64207468652062656e6566696369617279206163636f756e742049442e008c456d697473206054697052657472616374656460206966207375636365737366756c2e002823203c7765696768743e502d20436f6d706c65786974793a20604f28312960d820202d20446570656e6473206f6e20746865206c656e677468206f662060543a3a48617368602077686963682069732066697865642e8c2d20446252656164733a206054697073602c20606f726967696e206163636f756e7460bc2d2044625772697465733a2060526561736f6e73602c206054697073602c20606f726967696e206163636f756e74602c23203c2f7765696768743e1c7469705f6e65770c0118726561736f6e30011c5665633c75383e00010c77686fd90201504163636f756e7449644c6f6f6b75704f663c543e0001247469705f76616c7565c101013c42616c616e63654f663c542c20493e000258f04769766520612074697020666f7220736f6d657468696e67206e65773b206e6f2066696e6465722773206665652077696c6c2062652074616b656e2e005101546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d7573742062652061706d656d626572206f662074686520605469707065727360207365742e005d012d2060726561736f6e603a2054686520726561736f6e20666f722c206f7220746865207468696e6720746861742064657365727665732c20746865207469703b2067656e6572616c6c7920746869732077696c6c20626558202061205554462d382d656e636f6465642055524c2ee82d206077686f603a20546865206163636f756e742077686963682073686f756c6420626520637265646974656420666f7220746865207469702e4d012d20607469705f76616c7565603a2054686520616d6f756e74206f66207469702074686174207468652073656e64657220776f756c64206c696b6520746f20676976652e20546865206d656469616e20746970d4202076616c7565206f662061637469766520746970706572732077696c6c20626520676976656e20746f20746865206077686f602e0074456d69747320604e657754697060206966207375636365737366756c2e002823203c7765696768743e51012d20436f6d706c65786974793a20604f2852202b2054296020776865726520605260206c656e677468206f662060726561736f6e602c2060546020697320746865206e756d626572206f6620746970706572732e5d0120202d20604f285429603a206465636f64696e6720605469707065726020766563206f66206c656e677468206054602e20605460206973206368617267656420617320757070657220626f756e6420676976656e2062792d012020202060436f6e7461696e734c656e677468426f756e64602e205468652061637475616c20636f737420646570656e6473206f6e2074686520696d706c656d656e746174696f6e206f66442020202060543a3a54697070657273602ee020202d20604f285229603a2068617368696e6720616e6420656e636f64696e67206f6620726561736f6e206f66206c656e677468206052607c2d20446252656164733a206054697070657273602c2060526561736f6e7360742d2044625772697465733a2060526561736f6e73602c206054697073602c23203c2f7765696768743e0c746970080110686173682c011c543a3a486173680001247469705f76616c7565c101013c42616c616e63654f663c542c20493e000360b04465636c6172652061207469702076616c756520666f7220616e20616c72656164792d6f70656e207469702e005101546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d7573742062652061706d656d626572206f662074686520605469707065727360207365742e0061012d206068617368603a20546865206964656e74697479206f6620746865206f70656e2074697020666f722077686963682061207469702076616c7565206973206465636c617265642e205468697320697320666f726d65645d0120206173207468652068617368206f6620746865207475706c65206f66207468652068617368206f6620746865206f726967696e616c207469702060726561736f6e6020616e64207468652062656e65666963696172793420206163636f756e742049442e4d012d20607469705f76616c7565603a2054686520616d6f756e74206f66207469702074686174207468652073656e64657220776f756c64206c696b6520746f20676976652e20546865206d656469616e20746970d4202076616c7565206f662061637469766520746970706572732077696c6c20626520676976656e20746f20746865206077686f602e006101456d6974732060546970436c6f73696e676020696620746865207468726573686f6c64206f66207469707065727320686173206265656e207265616368656420616e642074686520636f756e74646f776e20706572696f643068617320737461727465642e002823203c7765696768743e61012d20436f6d706c65786974793a20604f285429602077686572652060546020697320746865206e756d626572206f6620746970706572732e206465636f64696e6720605469707065726020766563206f66206c656e6774682d0120206054602c20696e736572742074697020616e6420636865636b20636c6f73696e672c20605460206973206368617267656420617320757070657220626f756e6420676976656e2062795d01202060436f6e7461696e734c656e677468426f756e64602e205468652061637475616c20636f737420646570656e6473206f6e2074686520696d706c656d656e746174696f6e206f662060543a3a54697070657273602e005d01202041637475616c6c792077656967687420636f756c64206265206c6f77657220617320697420646570656e6473206f6e20686f77206d616e7920746970732061726520696e20604f70656e5469706020627574206974d02020697320776569676874656420617320696620616c6d6f73742066756c6c20692e65206f66206c656e6774682060542d31602e702d20446252656164733a206054697070657273602c20605469707360482d2044625772697465733a206054697073602c23203c2f7765696768743e24636c6f73655f746970040110686173682c011c543a3a486173680004405c436c6f736520616e64207061796f75742061207469702e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00150154686520746970206964656e74696669656420627920606861736860206d75737420686176652066696e69736865642069747320636f756e74646f776e20706572696f642e0061012d206068617368603a20546865206964656e74697479206f6620746865206f70656e2074697020666f722077686963682061207469702076616c7565206973206465636c617265642e205468697320697320666f726d65645d0120206173207468652068617368206f6620746865207475706c65206f6620746865206f726967696e616c207469702060726561736f6e6020616e64207468652062656e6566696369617279206163636f756e742049442e002823203c7765696768743e61012d20436f6d706c65786974793a20604f285429602077686572652060546020697320746865206e756d626572206f6620746970706572732e206465636f64696e6720605469707065726020766563206f66206c656e677468510120206054602e20605460206973206368617267656420617320757070657220626f756e6420676976656e2062792060436f6e7461696e734c656e677468426f756e64602e205468652061637475616c20636f7374c02020646570656e6473206f6e2074686520696d706c656d656e746174696f6e206f662060543a3a54697070657273602ea82d20446252656164733a206054697073602c206054697070657273602c20607469702066696e64657260d82d2044625772697465733a2060526561736f6e73602c206054697073602c206054697070657273602c20607469702066696e646572602c23203c2f7765696768743e24736c6173685f746970040110686173682c011c543a3a486173680005309452656d6f766520616e6420736c61736820616e20616c72656164792d6f70656e207469702e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656a6563744f726967696e602e00f44173206120726573756c742c207468652066696e64657220697320736c617368656420616e6420746865206465706f7369747320617265206c6f73742e0084456d6974732060546970536c617368656460206966207375636365737366756c2e002823203c7765696768743efc2020605460206973206368617267656420617320757070657220626f756e6420676976656e2062792060436f6e7461696e734c656e677468426f756e64602e010120205468652061637475616c20636f737420646570656e6473206f6e2074686520696d706c656d656e746174696f6e206f662060543a3a54697070657273602e2c23203c2f7765696768743e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e1d040c1463747970651870616c6c65741043616c6c0404540001080c616464040114637479706530011c5665633c75383e00003009014372656174652061206e65772043547970652066726f6d2074686520676976656e20756e69717565204354797065206861736820616e64206173736f6369617465735069742077697468206974732063726561746f722e00dc412043547970652077697468207468652073616d652068617368206d757374206e6f742062652073746f726564206f6e20636861696e2e0054456d6974732060435479706543726561746564602e002823203c7765696768743e305765696768743a204f283129602d2052656164733a204374797065732c2042616c616e6365642d205772697465733a204374797065732c2042616c616e63652c23203c2f7765696768743e407365745f626c6f636b5f6e756d62657208012863747970655f686173682c01384374797065486173684f663c543e000130626c6f636b5f6e756d626572100144426c6f636b4e756d626572466f723c543e00010ce853657420746865206372656174696f6e20626c6f636b206e756d62657220666f72206120676976656e2043547970652c20696620666f756e642e0054456d6974732060435479706555706461746564602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e21040c2c6174746573746174696f6e1870616c6c65741043616c6c0404540001180c6164640c0128636c61696d5f686173682c0138436c61696d486173684f663c543e00012863747970655f686173682c01384374797065486173684f663c543e000134617574686f72697a6174696f6e250401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e000054644372656174652061206e6577206174746573746174696f6e2e00f85468652061747465737465722063616e206f7074696f6e616c6c792070726f766964652061207265666572656e636520746f20616e206578697374696e67090164656c65676174696f6e20746861742077696c6c20626520736176656420616c6f6e67207769746820746865206174746573746174696f6e20697473656c6620696e8c74686520666f726d206f6620616e2061747465737465642064656c65676174696f6e2e00ec546865207265666572656e6365642043547970652068617368206d75737420616c72656164792062652070726573656e74206f6e20636861696e2e000901496620616e206f7074696f6e616c2064656c65676174696f6e2069642069732070726f76696465642c20746865206469737061746368206f726967696e206d757374e8626520746865206f776e6572206f66207468652064656c65676174696f6e2e204f74686572776973652c20697420636f756c6420626520616e79546044656c65676174696f6e456e746974794964602e006c456d69747320604174746573746174696f6e43726561746564602e002823203c7765696768743e305765696768743a204f283129b82d2052656164733a205b4f726967696e204163636f756e745d2c2043747970652c204174746573746174696f6e73e42d2052656164732069662064656c65676174696f6e2069642069732070726f76696465643a2044656c65676174696f6e732c20526f6f74732c5c202044656c6567617465644174746573746174696f6e73bc2d205772697465733a204174746573746174696f6e732c202844656c6567617465644174746573746174696f6e73292c23203c2f7765696768743e187265766f6b65080128636c61696d5f686173682c0138436c61696d486173684f663c543e000134617574686f72697a6174696f6e250401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e0001447c5265766f6b6520616e206578697374696e67206174746573746174696f6e2e00fc546865207265766f6b6572206d75737420626520656974686572207468652063726561746f72206f6620746865206174746573746174696f6e206265696e6709017265766f6b6564206f7220616e20656e74697479207468617420696e207468652064656c65676174696f6e207472656520697320616e20616e636573746f72206f6609017468652061747465737465722c20692e652e2c2069742077617320656974686572207468652064656c656761746f72206f6620746865206174746573746572206f7250616e20616e636573746f722074686572656f662e006c456d69747320604174746573746174696f6e5265766f6b6564602e002823203c7765696768743e0d015765696768743a204f285029207768657265205020697320746865206e756d626572206f6620737465707320726571756972656420746f2076657269667920746861740901746865206469737061746368204f726967696e20636f6e74726f6c73207468652064656c65676174696f6e20656e7469746c656420746f207265766f6b6520746865c86174746573746174696f6e2e20497420697320626f756e64656420627920606d61785f706172656e745f636865636b73602ee82d2052656164733a205b4f726967696e204163636f756e745d2c204174746573746174696f6e732c2064656c65676174696f6e3a3a526f6f7473d82d205265616473207065722064656c65676174696f6e207374657020503a2064656c65676174696f6e3a3a44656c65676174696f6e73b42d205772697465733a204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e732c23203c2f7765696768743e1872656d6f7665080128636c61696d5f686173682c0138436c61696d486173684f663c543e000134617574686f72697a6174696f6e250401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e0002445852656d6f766520616e206174746573746174696f6e2e00f8546865206f726967696e206d75737420626520656974686572207468652063726561746f72206f6620746865206174746573746174696f6e206f7220616e0d01656e7469747920776869636820697320616e20616e636573746f72206f662074686520617474657374657220696e207468652064656c65676174696f6e20747265652c0101692e652e2c2069742077617320656974686572207468652064656c656761746f72206f6620746865206174746573746572206f7220616e20616e636573746f722074686572656f662e006c456d69747320604174746573746174696f6e52656d6f766564602e002823203c7765696768743e0d015765696768743a204f285029207768657265205020697320746865206e756d626572206f6620737465707320726571756972656420746f2076657269667920746861740901746865206469737061746368204f726967696e20636f6e74726f6c73207468652064656c65676174696f6e20656e7469746c656420746f207265766f6b6520746865c86174746573746174696f6e2e20497420697320626f756e64656420627920606d61785f706172656e745f636865636b73602ee82d2052656164733a205b4f726967696e204163636f756e745d2c204174746573746174696f6e732c2064656c65676174696f6e3a3a526f6f7473d82d205265616473207065722064656c65676174696f6e207374657020503a2064656c65676174696f6e3a3a44656c65676174696f6e73b42d205772697465733a204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e732c23203c2f7765696768743e3c7265636c61696d5f6465706f736974040128636c61696d5f686173682c0138436c61696d486173684f663c543e000324d05265636c61696d20612073746f72616765206465706f7369742062792072656d6f76696e6720616e206174746573746174696f6e0064456d69747320604465706f7369745265636c61696d6564602e002823203c7765696768743e305765696768743a204f283129f82d2052656164733a205b4f726967696e204163636f756e745d2c204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e73b42d205772697465733a204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e732c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e6572040128636c61696d5f686173682c0138436c61696d486173684f663c543e00041c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00ec546865207375626a656374206f66207468652063616c6c206d757374206265207468652061747465737465722077686f206973737565732074686509016174746573746174696f6e2e205468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f736974040128636c61696d5f686173682c0138436c61696d486173684f663c543e00050cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e250404184f7074696f6e0404540129040108104e6f6e6500000010536f6d6504002904000001000029040c3872756e74696d655f636f6d6d6f6e34617574686f72697a6174696f6e3c50616c6c6574417574686f72697a65043044656c65676174696f6e4163012d0401042844656c65676174696f6e04002d04013044656c65676174696f6e4163000000002d040c2864656c65676174696f6e386163636573735f636f6e74726f6c3044656c65676174696f6e41630404540131040008013c7375626a6563745f6e6f64655f69642c015444656c65676174696f6e4e6f646549644f663c543e0001286d61785f636865636b731c010c7533320000310408447370697269746e65745f72756e74696d651c52756e74696d650000000035040c2864656c65676174696f6e1870616c6c65741043616c6c04045400011c406372656174655f686965726172636879080130726f6f745f6e6f64655f69642c015444656c65676174696f6e4e6f646549644f663c543e00012863747970655f686173682c01384374797065486173684f663c543e00006401014372656174652061206e65772064656c65676174696f6e20726f6f74206173736f6369617465642077697468206120676976656e20435479706520686173682e00f8546865206e657720726f6f742077696c6c20616c6c6f772061206e65772074727573742068696572617263687920746f2062652063726561746564206279a0616464696e67206368696c6472656e2064656c65676174696f6e7320746f2074686520726f6f742e000d015468657265206d757374206265206e6f2064656c65676174696f6e2077697468207468652073616d652049442073746f726564206f6e20636861696e2c207768696c65fc7468657265206d75737420626520616c7265616479206120435479706520776974682074686520676976656e20686173682073746f72656420696e207468653443547970652070616c6c65742e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e000d015265717569726573207468652073656e646572206f6620746865207472616e73616374696f6e20746f206861766520612072657365727661626c652062616c616e6365886f66206174206c6561737420604465706f73697460206d616e7920746f6b656e732e0050456d6974732060526f6f7443726561746564602e002823203c7765696768743e305765696768743a204f283129a02d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c204354797065733c2d205772697465733a20526f6f74732c23203c2f7765696768743e386164645f64656c65676174696f6e14013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e000124706172656e745f69642c015444656c65676174696f6e4e6f646549644f663c543e00012064656c656761746500014044656c656761746f7249644f663c543e00012c7065726d697373696f6e73fc012c5065726d697373696f6e7300014864656c65676174655f7369676e61747572653904016844656c65676174655369676e6174757265547970654f663c543e000180744372656174652061206e65772064656c65676174696f6e206e6f64652e00f4546865206e65772064656c65676174696f6e206e6f646520726570726573656e74732061206e65772074727573742068696572617263687920746861740d01636f6e73696465727320746865206e6577206e6f64652061732069747320726f6f742e20546865206f776e6572206f662074686973206e6f6465206861732066756c6ce0636f6e74726f6c206f76657220616e79206f66206974732064697265637420616e6420696e6469726563742064657363656e64616e74732e00fc466f7220746865206372656174696f6e20746f20737563636565642c207468652064656c656761746565206d7573742070726f7669646520612076616c696411017369676e6174757265206f766572207468652028626c616b65323536292068617368206f6620746865206372656174696f6e206f7065726174696f6e2064657461696c731101776869636820696e636c7564652028696e206f72646572292064656c65676174696f6e2069642c20726f6f74206e6f64652069642c20706172656e742069642c20616e64707065726d697373696f6e73206f6620746865206e6577206e6f64652e00f45468657265206d757374206265206e6f2064656c65676174696f6e2077697468207468652073616d652069642073746f726564206f6e20636861696e2e0501467572746865726d6f72652c20746865207265666572656e63656420726f6f7420616e6420706172656e74206e6f646573206d75737420616c7265616479206265050170726573656e74206f6e20636861696e20616e6420636f6e7461696e207468652076616c6964207065726d697373696f6e7320616e64207265766f636174696f6e6c7374617475732028692e652e2c206e6f74207265766f6b6564292e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e000d015265717569726573207468652073656e646572206f6620746865207472616e73616374696f6e20746f206861766520612072657365727661626c652062616c616e6365886f66206174206c6561737420604465706f73697460206d616e7920746f6b656e732e0068456d697473206044656c65676174696f6e43726561746564602e002823203c7765696768743e305765696768743a204f283129b42d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2044656c65676174696f6e73542d205772697465733a2044656c65676174696f6e732c23203c2f7765696768743e447265766f6b655f64656c65676174696f6e0c013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e0001446d61785f706172656e745f636865636b731c010c75333200013c6d61785f7265766f636174696f6e731c010c753332000274f85265766f6b6520612064656c65676174696f6e206e6f64652028706f74656e7469616c6c79206120726f6f74206e6f64652920616e6420616c6c20697473246368696c6472656e2e00fc446f6573206e6f7420726566756e64207468652064656c65676174696f6e206261636b20746f20746865206465706f736974206f776e657220617320746865f06e6f6465206973207374696c6c2073746f726564206f6e20636861696e2e20526571756972657320746f206164646974696f6e616c6c792063616c6cb46072656d6f76655f64656c65676174696f6e6020746f20756e7265736572766520746865206465706f7369742e0009015265766f6b696e6720612064656c65676174696f6e206e6f646520726573756c747320696e2074686520747275737420686965726172636879207374617274696e67090166726f6d2074686520676976656e206e6f6465206265696e67207265766f6b65642e204e657665727468656c6573732c207265766f636174696f6e20737461727473090166726f6d20746865206c65617665206e6f64657320757077617264732c20736f20696620746865206f7065726174696f6e20656e6473207072656d61747572656c791101626563617573652069742072756e73206f7574206f66206761732c207468652064656c65676174696f6e20737461746520776f756c6420626520636f6e73697374656e7401016173206e6f206368696c6420776f756c64202273757276697665222069747320706172656e742e204173206120636f6e73657175656e63652c206966207468650d01676976656e206e6f6465206973207265766f6b65642c2074686520747275737420686965726172636879207769746820746865206e6f646520617320726f6f7420697364746f20626520636f6e73696465726564207265766f6b65642e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e0078456d6974732043202a206044656c65676174696f6e5265766f6b6564602e002823203c7765696768743e01015765696768743a204f284329207768657265204320697320746865206e756d626572206f66206368696c6472656e206f66207468652064656c65676174696f6ea06e6f646520776869636820697320626f756e64656420627920606d61785f6368696c6472656e602e01012d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2043202a2044656c65676174696f6e732c2043202a204368696c6472656e2e802d205772697465733a20526f6f74732c2043202a2044656c65676174696f6e732c23203c2f7765696768743e4472656d6f76655f64656c65676174696f6e08013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e0001306d61785f72656d6f76616c731c010c753332000370f852656d6f766520612064656c65676174696f6e206e6f64652028706f74656e7469616c6c79206120726f6f74206e6f64652920616e6420616c6c20697473246368696c6472656e2e00f052657475726e73207468652064656c65676174696f6e206465706f73697420746f20746865206465706f736974206f776e657220666f722065616368a472656d6f7665642044656c65676174696f6e4e6f646520627920756e726573657276696e672069742e00090152656d6f76696e6720612064656c65676174696f6e206e6f646520726573756c747320696e2074686520747275737420686965726172636879207374617274696e67fc66726f6d2074686520676976656e206e6f6465206265696e672072656d6f7665642e204e657665727468656c6573732c2072656d6f76616c20737461727473090166726f6d20746865206c65617665206e6f64657320757077617264732c20736f20696620746865206f7065726174696f6e20656e6473207072656d61747572656c791101626563617573652069742072756e73206f7574206f66206761732c207468652064656c65676174696f6e20737461746520776f756c6420626520636f6e73697374656e7401016173206e6f206368696c6420776f756c64202273757276697665222069747320706172656e742e204173206120636f6e73657175656e63652c206966207468650d01676976656e206e6f64652069732072656d6f7665642c2074686520747275737420686965726172636879207769746820746865206e6f646520617320726f6f7420697364746f20626520636f6e736964657265642072656d6f7665642e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e0078456d6974732043202a206044656c65676174696f6e52656d6f766564602e002823203c7765696768743e01015765696768743a204f284329207768657265204320697320746865206e756d626572206f66206368696c6472656e206f66207468652064656c65676174696f6ea06e6f646520776869636820697320626f756e64656420627920606d61785f6368696c6472656e602e01012d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2043202a2044656c65676174696f6e732c2043202a204368696c6472656e2e902d205772697465733a20526f6f74732c2032202a2043202a2044656c65676174696f6e732c23203c2f7765696768743e3c7265636c61696d5f6465706f73697408013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e0001306d61785f72656d6f76616c731c010c753332000460f45265636c61696d20746865206465706f73697420666f7220612064656c65676174696f6e206e6f64652028706f74656e7469616c6c79206120726f6f74b86e6f6465292c2072656d6f76696e6720746865206e6f646520616e6420616c6c20697473206368696c6472656e2e00f052657475726e73207468652064656c65676174696f6e206465706f73697420746f20746865206465706f736974206f776e657220666f722065616368a472656d6f7665642044656c65676174696f6e4e6f646520627920756e726573657276696e672069742e00090152656d6f76696e6720612064656c65676174696f6e206e6f646520726573756c747320696e2074686520747275737420686965726172636879207374617274696e67fc66726f6d2074686520676976656e206e6f6465206265696e672072656d6f7665642e204e657665727468656c6573732c2072656d6f76616c20737461727473090166726f6d20746865206c65617665206e6f64657320757077617264732c20736f20696620746865206f7065726174696f6e20656e6473207072656d61747572656c791101626563617573652069742072756e73206f7574206f66206761732c207468652064656c65676174696f6e20737461746520776f756c6420626520636f6e73697374656e7401016173206e6f206368696c6420776f756c64202273757276697665222069747320706172656e742e204173206120636f6e73657175656e63652c206966207468650d01676976656e206e6f64652069732072656d6f7665642c2074686520747275737420686965726172636879207769746820746865206e6f646520617320726f6f7420697364746f20626520636f6e736964657265642072656d6f7665642e000d01546865206469737061746368206f726967696e206d757374206265207369676e6564206279207468652064656c65676174696f6e206465706f736974206f776e65722e004c604465706f7369745265636c61696d6564602e002823203c7765696768743e01015765696768743a204f284329207768657265204320697320746865206e756d626572206f66206368696c6472656e206f66207468652064656c65676174696f6ea06e6f646520776869636820697320626f756e64656420627920606d61785f72656d6f76616c73602e01012d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2043202a2044656c65676174696f6e732c2043202a204368696c6472656e2e902d205772697465733a20526f6f74732c2032202a2043202a2044656c65676174696f6e732c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e657204013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e00051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e000501546865207375626a656374206f66207468652063616c6c206d75737420626520746865206f776e6572206f66207468652064656c65676174696f6e206e6f64652ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e00060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e39040c0c6469642c6469645f64657461696c73304469645369676e617475726500010c1c4564323535313904003d040148656432353531393a3a5369676e61747572650000001c53723235353139040045040148737232353531393a3a5369676e617475726500010014456364736104004904014065636473613a3a5369676e6174757265000200003d040c1c73705f636f72651c65643235353139245369676e617475726500000400410401205b75383b2036345d0000410400000340000000080045040c1c73705f636f72651c73723235353139245369676e617475726500000400410401205b75383b2036345d000049040c1c73705f636f7265146563647361245369676e6174757265000004004d0401205b75383b2036355d00004d0400000341000000080051040c0c6469641870616c6c65741043616c6c04045400013c1863726561746508011c64657461696c7355040168426f783c4469644372656174696f6e44657461696c733c543e3e0001247369676e6174757265390401304469645369676e617475726500007cec53746f72652061206e657720444944206f6e20636861696e2c20616674657220766572696679696e67207468617420746865206372656174696f6e05016f7065726174696f6e20686173206265656e207369676e656420627920746865204b494c54206163636f756e74206173736f63696174656420776974682074686501016964656e746966696572206f662074686520444944206265696e67206372656174656420616e6420746861742061204449442077697468207468652073616d6511016964656e74696669657220686173206e6f742070726576696f75736c792065786973746564206f6e2028616e64207468656e2064656c657465642066726f6d292074686518636861696e2e000d015468657265206d757374206265206e6f2044494420696e666f726d6174696f6e2073746f726564206f6e20636861696e20756e646572207468652073616d65204449442c6964656e7469666965722e00fc546865206e6577206b65797320616464656420776974682074686973206f7065726174696f6e206172652073746f72656420756e646572207468652044494405016964656e74696669657220616c6f6e6720776974682074686520626c6f636b206e756d62657220696e20776869636820746865206f7065726174696f6e207761732465786563757465642e000101546865206469737061746368206f726967696e2063616e20626520616e79204b494c54206163636f756e74207769746820656e6f7567682066756e647320746f0d0165786563757465207468652065787472696e73696320616e6420697420646f6573206e6f74206861766520746f206265207469656420696e20616e792077617920746fb4746865204b494c54206163636f756e74206964656e74696679696e672074686520444944207375626a6563742e004c456d697473206044696443726561746564602e002823203c7765696768743e0d012d20546865207472616e73616374696f6e277320636f6d706c6578697479206973206d61696e6c7920646570656e64656e74206f6e20746865206e756d626572206f66010120206e6577206b65792061677265656d656e74206b65797320616e6420746865206e756d626572206f66206e6577207365727669636520656e64706f696e7473702020696e636c7564656420696e20746865206f7065726174696f6e2e242d2d2d2d2d2d2d2d2df85765696768743a204f284b29202b204f284e29207768657265204b20697320746865206e756d626572206f66206e6577206b65792061677265656d656e7409016b65797320626f756e64656420627920604d61784e65774b657941677265656d656e744b657973602c207768696c65204e20697320746865206e756d626572206f66f46e6577207365727669636520656e64706f696e747320626f756e64656420627920604d61784e756d6265724f665365727669636573506572446964602eb02d2052656164733a205b4f726967696e204163636f756e745d2c204469642c20446964426c61636b6c697374fc2d205772697465733a20446964202877697468204b206e6577206b65792061677265656d656e74206b657973292c2053657276696365456e64706f696e7473cc20202877697468204e206e6577207365727669636520656e64706f696e7473292c20446964456e64706f696e7473436f756e742c23203c2f7765696768743e587365745f61757468656e7469636174696f6e5f6b657904011c6e65775f6b65796d040148446964566572696669636174696f6e4b65790001408855706461746520746865204449442061757468656e7469636174696f6e206b65792e00ec546865206f6c64206b65792069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b65797320696620697420697309016e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e20546865206e6577206b657920697320616464656420746f207468654c736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e487365745f64656c65676174696f6e5f6b657904011c6e65775f6b65796d040148446964566572696669636174696f6e4b657900024094536574206f722075706461746520746865204449442064656c65676174696f6e206b65792e000d01496620616e206f6c64206b657920657869737465642c2069742069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b65797320696611016974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e20546865206e6577206b657920697320616464656420746f5c74686520736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e5472656d6f76655f64656c65676174696f6e5f6b657900033c7852656d6f766520746865204449442064656c65676174696f6e206b65792e00d4546865206f6c64206b65792069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b657973206966b06974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e4c7365745f6174746573746174696f6e5f6b657904011c6e65775f6b65796d040148446964566572696669636174696f6e4b657900044098536574206f72207570646174652074686520444944206174746573746174696f6e206b65792e000d01496620616e206f6c64206b657920657869737465642c2069742069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b65797320696611016974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e20546865206e6577206b657920697320616464656420746f5c74686520736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e5872656d6f76655f6174746573746174696f6e5f6b657900053c7c52656d6f76652074686520444944206174746573746174696f6e206b65792e00d4546865206f6c64206b65792069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b657973206966b06974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e546164645f6b65795f61677265656d656e745f6b657904011c6e65775f6b65795d040140446964456e6372797074696f6e4b6579000638b841646420612073696e676c65206e6577206b65792061677265656d656e74206b657920746f20746865204449442e00bc546865206e6577206b657920697320616464656420746f2074686520736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e6072656d6f76655f6b65795f61677265656d656e745f6b65790401186b65795f69642c01284b657949644f663c543e000734050152656d6f7665206120444944206b65792061677265656d656e74206b65792066726f6d20626f74682069747320736574206f66206b65792061677265656d656e74906b65797320616e642061732077656c6c20617320697473207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e506164645f736572766963655f656e64706f696e74040140736572766963655f656e64706f696e7481040138446964456e64706f696e743c543e000830bc4164642061206e6577207365727669636520656e64706f696e7420756e6465722074686520676976656e204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f2831290d012d2052656164733a205b4f726967696e204163636f756e745d2c204469642c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e74c82d205772697465733a204469642c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e742c23203c2f7765696768743e5c72656d6f76655f736572766963655f656e64706f696e74040128736572766963655f69648504015053657276696365456e64706f696e7449643c543e000930d452656d6f76652074686520736572766963652077697468207468652070726f76696465642049442066726f6d20746865204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129f82d2052656164733a205b4f726967696e204163636f756e745d2c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e74c82d205772697465733a204469642c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e742c23203c2f7765696768743e1864656c65746504014c656e64706f696e74735f746f5f72656d6f76651c010c753332000a600d0144656c6574652061204449442066726f6d2074686520636861696e20616e6420616c6c20696e666f726d6174696f6e206173736f63696174656420776974682069742c1101616674657220766572696679696e672074686174207468652064656c657465206f7065726174696f6e20686173206265656e207369676e65642062792074686520444944fc7375626a656374207573696e67207468652061757468656e7469636174696f6e206b65792063757272656e746c792073746f726564206f6e20636861696e2e000501546865207265666572656e63656420444944206964656e746966696572206d7573742062652070726573656e74206f6e20636861696e206265666f7265207468657864656c657465206f7065726174696f6e206973206576616c75617465642e00f441667465722069742069732064656c657465642c2061204449442077697468207468652073616d65206964656e7469666965722063616e6e6f742062655872652d63726561746564206576657220616761696e2e00010141732074686520726573756c74206f66207468652064656c6574696f6e2c20616c6c20747261636573206f662074686520444944206172652072656d6f766564e866726f6d207468652073746f726167652c20776869636820726573756c747320696e2074686520696e76616c69646174696f6e206f6620616c6c9c6174746573746174696f6e73206973737565642062792074686520444944207375626a6563742e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696444656c65746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964cc2d204b696c6c733a2044696420656e747279206173736f63696174656420746f2074686520444944206964656e7469666965722c23203c2f7765696768743e3c7265636c61696d5f6465706f73697408012c6469645f7375626a6563740001484469644964656e7469666965724f663c543e00014c656e64706f696e74735f746f5f72656d6f76651c010c753332000b54f45265636c61696d2061206465706f73697420666f722061204449442e20546869732077696c6c2064656c657465207468652044494420616e6420616c6c0901696e666f726d6174696f6e206173736f63696174656420776974682069742c20616674657220766572696679696e672074686174207468652063616c6c657220697364746865206f776e6572206f6620746865206465706f7369742e000501546865207265666572656e63656420444944206964656e746966696572206d7573742062652070726573656e74206f6e20636861696e206265666f7265207468657864656c657465206f7065726174696f6e206973206576616c75617465642e00f441667465722069742069732064656c657465642c2061204449442077697468207468652073616d65206964656e7469666965722063616e6e6f742062655872652d63726561746564206576657220616761696e2e00010141732074686520726573756c74206f66207468652064656c6574696f6e2c20616c6c20747261636573206f662074686520444944206172652072656d6f766564e866726f6d207468652073746f726167652c20776869636820726573756c747320696e2074686520696e76616c69646174696f6e206f6620616c6c9c6174746573746174696f6e73206973737565642062792074686520444944207375626a6563742e004c456d697473206044696444656c65746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964cc2d204b696c6c733a2044696420656e747279206173736f63696174656420746f2074686520444944206964656e7469666965722c23203c2f7765696768743e3c7375626d69745f6469645f63616c6c0801206469645f63616c6ca1040188426f783c446964417574686f72697a656443616c6c4f7065726174696f6e3c543e3e0001247369676e6174757265390401304469645369676e6174757265000c8cec50726f7879206120646973706174636861626c652063616c6c206f6620616e6f746865722072756e74696d652065787472696e736963207468617458737570706f727473206120444944206f726967696e2e000501546865207265666572656e63656420444944206964656e746966696572206d7573742062652070726573656e74206f6e20636861696e206265666f726520746865606f7065726174696f6e20697320646973706174636865642e00fc412063616c6c207375626d6974746564207468726f75676820746869732065787472696e736963206d757374206265207369676e65642077697468207468650901726967687420444944206b65792c20646570656e64696e67206f6e207468652063616c6c2e205468697320696e666f726d6174696f6e2069732070726f766964656409016279207468652060446964417574686f72697a656443616c6c4f7065726174696f6e6020706172616d657465722c20776869636820737065636966696573207468650901444944207375626a65637420616374696e6720617320746865206f726967696e206f66207468652063616c6c2c2074686520444944277320747820636f756e7465720101286e6f6e6365292c2074686520646973706174636861626c6520746f2063616c6c20696e2063617365207369676e617475726520766572696669636174696f6ef073756363656564732c207468652074797065206f6620444944206b657920746f2075736520746f2076657269667920746865206f7065726174696f6efc7369676e61747572652c20616e642074686520626c6f636b206e756d62657220746865206f7065726174696f6e2077617320746172676574696e6720666f72a8696e636c7573696f6e2c207768656e20697420776173206372656174656420616e64207369676e65642e00fc496e206361736520746865207369676e617475726520697320696e636f72726563742c20746865206e6f6e6365206973206e6f742076616c69642c20746865fc7265717569726564206b6579206973206e6f742070726573656e7420666f722074686520737065636966696564204449442c206f722074686520626c6f636bfc73706563696669656420697320746f6f206f6c642074686520766572696669636174696f6e206661696c7320616e64207468652063616c6c206973206e6f74f4646973706174636865642e204f74686572776973652c207468652063616c6c2069732070726f7065726c79206469737061746368656420776974682061b8604469644f726967696e60206f726967696e20696e6469636174696e672074686520444944207375626a6563742e00110141207375636365737366756c206469737061746368206f7065726174696f6e20726573756c747320696e2074686520747820636f756e746572206173736f6369617465640501776974682074686520676976656e2044494420746f20626520696e6372656d656e7465642c20746f206d69746967617465207265706c61792061747461636b732e000101546865206469737061746368206f726967696e2063616e20626520616e79204b494c54206163636f756e74207769746820656e6f7567682066756e647320746f0d0165786563757465207468652065787472696e73696320616e6420697420646f6573206e6f74206861766520746f206265207469656420696e20616e792077617920746fb4746865204b494c54206163636f756e74206964656e74696679696e672074686520444944207375626a6563742e0068456d697473206044696443616c6c44697370617463686564602e002823203c7765696768743eb05765696768743a204f283129202b20776569676874206f662074686520646973706174636865642063616c6c782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e6572000d1c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00b8546865207375626a656374206f66207468652063616c6c206d7573742062652074686520646964206f776e65722ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404010c6469640001484469644964656e7469666965724f663c543e000e0cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e55040c0c6469642c6469645f64657461696c73484469644372656174696f6e44657461696c73040454000018010c6469640001484469644964656e7469666965724f663c543e0001247375626d69747465720001384163636f756e7449644f663c543e0001586e65775f6b65795f61677265656d656e745f6b6579735904016c4469644e65774b657941677265656d656e744b65795365743c543e00014c6e65775f6174746573746174696f6e5f6b6579690401684f7074696f6e3c446964566572696669636174696f6e4b65793e0001486e65775f64656c65676174696f6e5f6b6579690401684f7074696f6e3c446964566572696669636174696f6e4b65793e00014c6e65775f736572766963655f64657461696c737d04014c5665633c446964456e64706f696e743c543e3e00005904101c73705f636f72651c626f756e64656444626f756e6465645f62747265655f7365743c426f756e6465644254726565536574080454015d040453000004006104012c42547265655365743c543e00005d040c0c6469642c6469645f64657461696c7340446964456e6372797074696f6e4b65790001041858323535313904000401205b75383b2033325d00000000610404204254726565536574040454015d04000400650400000065040000025d0400690404184f7074696f6e040454016d040108104e6f6e6500000010536f6d6504006d0400000100006d040c0c6469642c6469645f64657461696c7348446964566572696669636174696f6e4b657900010c1c4564323535313904007104013c656432353531393a3a5075626c69630000001c5372323535313904001903013c737232353531393a3a5075626c696300010014456364736104007504013465636473613a3a5075626c69630002000071040c1c73705f636f72651c65643235353139185075626c6963000004000401205b75383b2033325d000075040c1c73705f636f7265146563647361185075626c696300000400790401205b75383b2033335d000079040000032100000008007d0400000281040081040c0c64696444736572766963655f656e64706f696e74732c446964456e64706f696e7404045400000c010869648504015053657276696365456e64706f696e7449643c543e000134736572766963655f74797065738904017453657276696365456e64706f696e7454797065456e74726965733c543e00011075726c739504017053657276696365456e64706f696e7455726c456e74726965733c543e00008504101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00008904101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454018d04045300000400910401185665633c543e00008d04101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e000091040000028d04009504101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e6465645665630804540199040453000004009d0401185665633c543e00009904101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00009d04000002990400a1040c0c6469642c6469645f64657461696c7368446964417574686f72697a656443616c6c4f7065726174696f6e040454000014010c6469640001484469644964656e7469666965724f663c543e00012874785f636f756e74657210010c75363400011063616c6ca503014044696443616c6c61626c654f663c543e000130626c6f636b5f6e756d626572100140426c6f636b4e756d6265724f663c543e0001247375626d69747465720001384163636f756e7449644f663c543e0000a5040c4470616c6c65745f6469645f6c6f6f6b75701870616c6c65741043616c6c040454000120446173736f63696174655f6163636f756e7408010c726571a904015c4173736f63696174654163636f756e745265717565737400012865787069726174696f6e1001a03c54206173206672616d655f73797374656d3a3a436f6e6669673e3a3a426c6f636b4e756d62657200004405014173736f63696174652074686520676976656e206163636f756e7420746f2074686520444944207468617420617574686f72697a656420746869732063616c6c2e000501546865206163636f756e742068617320746f207369676e207468652044494420616e64206120626c6f636b6e756d62657220616674657220776869636820746865e07369676e6174757265206578706972657320696e206f7264657220746f20617574686f72697a6520746865206173736f63696174696f6e2e001101546865207369676e61747572652077696c6c20626520636865636b656420616761696e737420746865207363616c6520656e636f646564207475706c65206f66207468650d016d6574686f64207370656369666963206964206f662074686520646964206964656e74696669657220616e642074686520626c6f636b206e756d626572206166746572bc776869636820746865207369676e61747572652073686f756c6420626520726567617264656420696e76616c69642e001101456d69747320604173736f63696174696f6e45737461626c69736865646020616e642c206f7074696f6e616c6c792c20604173736f63696174696f6e52656d6f76656460d069662074686572652077617320612070726576696f7573206173736f63696174696f6e20666f7220746865206163636f756e742e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e406173736f63696174655f73656e64657200012c01014173736f6369617465207468652073656e646572206f66207468652063616c6c20746f2074686520444944207468617420617574686f72697a656420746869731463616c6c2e001101456d69747320604173736f63696174696f6e45737461626c69736865646020616e642c206f7074696f6e616c6c792c20604173736f63696174696f6e52656d6f76656460d069662074686572652077617320612070726576696f7573206173736f63696174696f6e20666f7220746865206163636f756e742e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e6472656d6f76655f73656e6465725f6173736f63696174696f6e000228fc52656d6f766520746865206173736f63696174696f6e206f66207468652073656e646572206163636f756e742e20546869732063616c6c20646f65736e27740d01726571756972652074686520617574686f72697a6174696f6e206f6620746865204449442c206275742072657175697265732061207369676e6564206f726967696e2e006c456d69747320604173736f63696174696f6e52656d6f766564602e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e6872656d6f76655f6163636f756e745f6173736f63696174696f6e04011c6163636f756e74090101444c696e6b61626c654163636f756e74496400032c110152656d6f766520746865206173736f63696174696f6e206f66207468652070726f7669646564206163636f756e742049442e20546869732063616c6c20646f65736e27740d01726571756972652074686520617574686f72697a6174696f6e206f6620746865206163636f756e742049442c2062757420746865206173736f63696174656420444944c46e6565647320746f206d617463682074686520444944207468617420617574686f72697a656420746869732063616c6c2e006c456d69747320604173736f63696174696f6e52656d6f766564602e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e3c7265636c61696d5f6465706f73697404011c6163636f756e74090101444c696e6b61626c654163636f756e74496400042c090152656d6f766520746865206173736f63696174696f6e206f66207468652070726f7669646564206163636f756e742e20546869732063616c6c2063616e206f6e6c79f862652063616c6c65642066726f6d20746865206465706f736974206f776e65722e20546865207265736572766564206465706f7369742077696c6c2062651866726565642e006c456d69747320604173736f63696174696f6e52656d6f766564602e002823203c7765696768743e305765696768743a204f283129582d2052656164733a20436f6e6e6563746564446964735c2d205772697465733a20436f6e6e6563746564446964732c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e657204011c6163636f756e74090101444c696e6b61626c654163636f756e74496400051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00d8546865207375626a656374206f66207468652063616c6c206d757374206265206c696e6b656420746f20746865206163636f756e742ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404011c6163636f756e74090101444c696e6b61626c654163636f756e74496400060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e1c6d6967726174650401146c696d69741c010c75333200fe18e8457865637574657320746865206b65792074797065206d6967726174696f6e206f66207468652060436f6e6e6563746564446964736020616e64010160436f6e6e65637465644163636f756e7473602073746f726167657320627920636f6e76657274696e672074686520676976656e20604163636f756e74496460f0696e746f20604c696e6b61626c654163636f756e744964284163636f756e74496429602e204f6e636520616c6c206b6579732068617665206265656efc6d696772617465642c20746865206d6967726174696f6e20697320646f6e6520616e6420746869732063616c6c2077696c6c2062652066696c74657265642e007043616e2062652063616c6c656420627920616e79206f726967696e2e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ea9040c4470616c6c65745f6469645f6c6f6f6b7570646173736f63696174655f6163636f756e745f726571756573745c4173736f63696174654163636f756e745265717565737400010820506f6c6b61646f74080000012c4163636f756e74496433320000ad0401384d756c74695369676e617475726500000020457468657265756d08000d01012c4163636f756e74496432300000b1040144457468657265756d5369676e617475726500010000ad04082873705f72756e74696d65384d756c74695369676e617475726500010c1c4564323535313904003d040148656432353531393a3a5369676e61747572650000001c53723235353139040045040148737232353531393a3a5369676e617475726500010014456364736104004904014065636473613a3a5369676e617475726500020000b1040c4470616c6c65745f6469645f6c6f6f6b75701c6163636f756e7444457468657265756d5369676e6174757265000004004904014065636473613a3a5369676e61747572650000b5040c4470616c6c65745f776562335f6e616d65731870616c6c65741043616c6c04045400011c14636c61696d0401106e616d651d010140576562334e616d65496e7075743c543e00003ce841737369676e2074686520737065636966696564206e616d6520746f20746865206f776e65722061732073706563696669656420696e207468651c6f726967696e2e000d01546865206e616d65206d757374206e6f74206861766520616c7265616479206265656e20636c61696d656420627920736f6d656f6e6520656c736520616e6420746865a06f776e6572206d757374206e6f7420616c7265616479206f776e20616e6f74686572206e616d652e00dc456d6974732060576562334e616d65436c61696d65646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f28312909012d2052656164733a204e616d65732c204f776e65722c2042616e6e65642073746f7261676520656e7472696573202b20617661696c61626c652063757272656e6379582020636865636b202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722073746f7261676520656e7472696573202b2063757272656e6379206465706f73697420726573657276652c23203c2f7765696768743e4072656c656173655f62795f6f776e6572000130a452656c65617365207468652070726f7669646564206e616d652066726f6d20697473206f776e65722e00cc546865206f726967696e206d75737420626520746865206f776e6572206f662074686520737065636966696564206e616d652e00e0456d6974732060576562334e616d6552656c65617365646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129ac2d2052656164733a204e616d65732073746f7261676520656e747279202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722073746f7261676520656e7472696573202b2063757272656e6379206465706f7369742072656c656173652c23203c2f7765696768743e3c7265636c61696d5f6465706f7369740401106e616d651d010140576562334e616d65496e7075743c543e000230a452656c65617365207468652070726f7669646564206e616d652066726f6d20697473206f776e65722e000101546865206f726967696e206d75737420626520746865206163636f756e742074686174207061696420666f7220746865206e616d652773206465706f7369742e00e0456d6974732060576562334e616d6552656c65617365646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129ac2d2052656164733a204f776e65722073746f7261676520656e747279202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722073746f7261676520656e7472696573202b2063757272656e6379206465706f7369742072656c656173652c23203c2f7765696768743e0c62616e0401106e616d651d010140576562334e616d65496e7075743c543e0003402c42616e2061206e616d652e00f4412062616e6e6564206e616d652063616e6e6f7420626520636c61696d656420627920616e796f6e652e20546865206e616d652773206465706f7369748869732072657475726e656420746f20746865206f726967696e616c2070617965722e0088546865206f726967696e206d757374206265207468652062616e206f726967696e2e00d8456d6974732060576562334e616d6542616e6e65646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129f02d2052656164733a2042616e6e65642c204f776e65722c204e616d65732073746f7261676520656e7472696573202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722c2042616e6e65642073746f7261676520656e7472696573202b2063757272656e6379206465706f73697424202072656c656173652c23203c2f7765696768743e14756e62616e0401106e616d651d010140576562334e616d65496e7075743c543e00043834556e62616e2061206e616d652e00704d616b652061206e616d6520636c61696d61626c6520616761696e2e0088546865206f726967696e206d757374206265207468652062616e206f726967696e2e00e0456d6974732060576562334e616d65556e62616e6e65646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129b02d2052656164733a2042616e6e65642073746f7261676520656e747279202b206f726967696e20636865636bb82d205772697465733a2042616e6e65642073746f7261676520656e747279206465706f7369742072656c656173652c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e657200051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00e8546865207375626a656374206f66207468652063616c6c206d75737420626520746865206f776e6572206f662074686520776562336e616d652ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f7369740401286e616d655f696e7075741d010140576562334e616d65496e7075743c543e00060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632eb9040c487075626c69635f63726564656e7469616c731870616c6c65741043616c6c04045400011c0c61646404012863726564656e7469616cbd040164426f783c496e70757443726564656e7469616c4f663c543e3e000018a852656769737465722061206e6577207075626c69632063726564656e7469616c206f6e20636861696e2e001101546869732066756e6374696f6e206661696c7320696620612063726564656e7469616c2077697468207468652073616d65206964656e74696669657220616c72656164798465786973747320666f722074686520737065636966696564207375626a6563742e0064456d697473206043726564656e7469616c53746f726564602e187265766f6b6508013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000134617574686f72697a6174696f6e250401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e000120705265766f6b65732061207075626c69632063726564656e7469616c2e001101496620612063726564656e7469616c2077617320616c7265616479207265766f6b65642c20746869732066756e6374696f6e20646f6573206e6f74206661696c206275746473696d706c7920726573756c747320696e2061206e6f6f702e000101546865206469737061746368206f726967696e206d75737420626520617574686f72697a656420746f207265766f6b65207468652063726564656e7469616c2e0068456d697473206043726564656e7469616c5265766f6b6564602e20756e7265766f6b6508013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000134617574686f72697a6174696f6e250401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e00022478556e7265766f6b65732061207075626c69632063726564656e7469616c2e000101496620612063726564656e7469616c20776173206e6f74207265766f6b65642c20746869732066756e6374696f6e20646f6573206e6f74206661696c206275746473696d706c7920726573756c747320696e2061206e6f6f702e00d8546865206469737061746368206f726967696e206d75737420626520617574686f72697a656420746f20756e7265766f6b65207468652c63726564656e7469616c2e0070456d697473206043726564656e7469616c556e7265766f6b6564602e1872656d6f766508013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000134617574686f72697a6174696f6e250401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e000344fc52656d6f7665732074686520696e666f726d6174696f6e207065727461696e696e672061207075626c69632063726564656e7469616c2066726f6d2074686518636861696e2e0009015468652072656d6f76616c206f66207468652063726564656e7469616c20646f6573206e6f742064656c65746520697420656e746972656c792066726f6d207468650501626c6f636b636861696e20686973746f72792c20627574206f6e6c7920697473206c696e6b202a66726f6d2a2074686520626c6f636b636861696e2073746174659c2a746f2a2074686520626c6f636b636861696e20686973746f72792069732072656d6f7665642e00cc436c69656e74732070617273696e67207075626c69632063726564656e7469616c732073686f756c6420696e746572707265740101746865206c61636b206f6620737563682061206c696e6b2061732074686520666163742074686174207468652063726564656e7469616c20686173206265656eb872656d6f7665642062792069747320617474657374657220736f6d652074696d6520696e2074686520706173742e001101546869732066756e6374696f6e206661696c7320696620612063726564656e7469616c20616c72656164792065786973747320666f722074686520737065636966696564207375626a6563742e000101546865206469737061746368206f726967696e206d75737420626520617574686f72697a656420746f2072656d6f7665207468652063726564656e7469616c2e0068456d697473206043726564656e7469616c52656d6f766564602e3c7265636c61696d5f6465706f73697404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000448fc52656d6f7665732074686520696e666f726d6174696f6e207065727461696e696e672061207075626c69632063726564656e7469616c2066726f6d20746865ac636861696e20616e642072657475726e7320746865206465706f73697420746f206974732070617965722e0009015468652072656d6f76616c206f66207468652063726564656e7469616c20646f6573206e6f742064656c65746520697420656e746972656c792066726f6d207468650501626c6f636b636861696e20686973746f72792c20627574206f6e6c7920697473206c696e6b202a66726f6d2a2074686520626c6f636b636861696e2073746174659c2a746f2a2074686520626c6f636b636861696e20686973746f72792069732072656d6f7665642e00cc436c69656e74732070617273696e67207075626c69632063726564656e7469616c732073686f756c6420696e746572707265740101746865206c61636b206f6620737563682061206c696e6b2061732074686520666163742074686174207468652063726564656e7469616c20686173206265656eb872656d6f7665642062792069747320617474657374657220736f6d652074696d6520696e2074686520706173742e001101546869732066756e6374696f6e206661696c7320696620612063726564656e7469616c20616c72656164792065786973747320666f722074686520737065636966696564207375626a6563742e000d01546865206469737061746368206f726967696e206d75737420626520746865206f776e6572206f6620746865206465706f7369742c2068656e6365206e6f74207468655863726564656e7469616c27732061747465737465722e0068456d697473206043726564656e7469616c52656d6f766564602e506368616e67655f6465706f7369745f6f776e657204013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e00051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00f0546865207375626a656374206f66207468652063616c6c206d75737420626520746865206f776e6572206f66207468652063726564656e7469616c2ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e00060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ebd040c487075626c69635f63726564656e7469616c732c63726564656e7469616c732843726564656e7469616c1024437479706548617368012c445375626a6563744964656e74696669657201c10418436c61696d7301c50434416363657373436f6e74726f6c0129040010012863747970655f686173682c012443747970654861736800011c7375626a656374c10401445375626a6563744964656e746966696572000118636c61696d73c5040118436c61696d73000134617574686f72697a6174696f6e250401544f7074696f6e3c416363657373436f6e74726f6c3e0000c104101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000c504101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000c9040c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d1870616c6c65741043616c6c0404540001104c7365745f76616c69646174696f6e5f6461746104011064617461cd04015450617261636861696e496e686572656e744461746100002480536574207468652063757272656e742076616c69646174696f6e20646174612e004101546869732073686f756c6420626520696e766f6b65642065786163746c79206f6e63652070657220626c6f636b2e2049742077696c6c2070616e6963206174207468652066696e616c697a6174696f6e887068617365206966207468652063616c6c20776173206e6f7420696e766f6b65642e00d0546865206469737061746368206f726967696e20666f7220746869732063616c6c206d7573742062652060496e686572656e7460002101417320612073696465206566666563742c20746869732066756e6374696f6e207570677261646573207468652063757272656e742076616c69646174696f6e2066756e6374696f6e8469662074686520617070726f7072696174652074696d652068617320636f6d652e607375646f5f73656e645f7570776172645f6d65737361676504011c6d6573736167653001345570776172644d65737361676500010044617574686f72697a655f75706772616465040124636f64655f686173682c011c543a3a4861736800020060656e6163745f617574686f72697a65645f75706772616465040110636f646530011c5665633c75383e000300042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ecd04089463756d756c75735f7072696d6974697665735f70617261636861696e5f696e686572656e745450617261636861696e496e686572656e7444617461000010013c76616c69646174696f6e5f64617461d104015c50657273697374656456616c69646174696f6e4461746100014472656c61795f636861696e5f7374617465d904015473705f747269653a3a53746f7261676550726f6f66000144646f776e776172645f6d65737361676573e104016c5665633c496e626f756e64446f776e776172644d6573736167653e00014c686f72697a6f6e74616c5f6d65737361676573e90401a442547265654d61703c5061726149642c205665633c496e626f756e6448726d704d6573736167653e3e0000d1040c4c706f6c6b61646f745f7072696d6974697665730876325c50657273697374656456616c69646174696f6e44617461080448012c044e011c0010012c706172656e745f68656164d5040120486561644461746100014c72656c61795f706172656e745f6e756d6265721c01044e00016472656c61795f706172656e745f73746f726167655f726f6f742c0104480001306d61785f706f765f73697a651c010c7533320000d5040c48706f6c6b61646f745f70617261636861696e287072696d6974697665732048656164446174610000040030011c5665633c75383e0000d9040c1c73705f747269653473746f726167655f70726f6f663053746f7261676550726f6f660000040128747269655f6e6f646573dd04014442547265655365743c5665633c75383e3e0000dd040420425472656553657404045401300004009502000000e104000002e50400e5040860706f6c6b61646f745f636f72655f7072696d69746976657358496e626f756e64446f776e776172644d657373616765042c426c6f636b4e756d626572011c0008011c73656e745f61741c012c426c6f636b4e756d62657200010c6d736730013c446f776e776172644d6573736167650000e904042042547265654d617008044b019d01045601ed04000400f504000000ed04000002f10400f1040860706f6c6b61646f745f636f72655f7072696d69746976657348496e626f756e6448726d704d657373616765042c426c6f636b4e756d626572011c0008011c73656e745f61741c012c426c6f636b4e756d6265720001106461746130015073705f7374643a3a7665633a3a5665633c75383e0000f504000002f90400f904000004089d01ed0400fd040c6463756d756c75735f70616c6c65745f78636d705f71756575651870616c6c65741043616c6c04045400012448736572766963655f6f766572776569676874080114696e64657810013c4f766572776569676874496e6465780001307765696768745f6c696d697424011857656967687400003484536572766963657320612073696e676c65206f7665727765696768742058434d2e00c02d20606f726967696e603a204d75737420706173732060457865637574654f7665727765696768744f726967696e602ed42d2060696e646578603a2054686520696e646578206f6620746865206f7665727765696768742058434d20746f20736572766963650d012d20607765696768745f6c696d6974603a2054686520616d6f756e74206f662077656967687420746861742058434d20657865637574696f6e206d61792074616b652e001c4572726f72733a5d012d20604261644f766572776569676874496e646578603a2058434d20756e6465722060696e64657860206973206e6f7420666f756e6420696e2074686520604f766572776569676874602073746f72616765206d61702e45012d206042616458636d603a2058434d20756e6465722060696e646578602063616e6e6f742062652070726f7065726c79206465636f64656420696e746f20612076616c69642058434d20666f726d61742e09012d20605765696768744f7665724c696d6974603a2058434d20657865637574696f6e206d617920757365206772656174657220607765696768745f6c696d6974602e001c4576656e74733a8c2d20604f7665727765696768745365727669636564603a204f6e20737563636573732e5473757370656e645f78636d5f657865637574696f6e00010c490153757370656e647320616c6c2058434d20657865637574696f6e7320666f72207468652058434d502071756575652c207265676172646c657373206f66207468652073656e6465722773206f726967696e2e00a42d20606f726967696e603a204d75737420706173732060436f6e74726f6c6c65724f726967696e602e50726573756d655f78636d5f657865637574696f6e000214b8526573756d657320616c6c2058434d20657865637574696f6e7320666f72207468652058434d502071756575652e003d014e6f7465207468617420746869732066756e6374696f6e20646f65736e2774206368616e67652074686520737461747573206f662074686520696e2f6f757420626f756e64206368616e6e656c732e00a42d20606f726967696e603a204d75737420706173732060436f6e74726f6c6c65724f726967696e602e607570646174655f73757370656e645f7468726573686f6c6404010c6e65771c010c75333200031499014f76657277726974657320746865206e756d626572206f66207061676573206f66206d65737361676573207768696368206d75737420626520696e2074686520717565756520666f7220746865206f74686572207369646520746f20626520746f6c6420746f5873757370656e642074686569722073656e64696e672e00742d20606f726967696e603a204d75737420706173732060526f6f74602ee82d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e73757370656e645f76616c756560547570646174655f64726f705f7468726573686f6c6404010c6e65771c010c75333200041495014f76657277726974657320746865206e756d626572206f66207061676573206f66206d65737361676573207768696368206d75737420626520696e207468652071756575652061667465722077686963682077652064726f7020616e792066757274686572686d657373616765732066726f6d20746865206368616e6e656c2e00742d20606f726967696e603a204d75737420706173732060526f6f74602eec2d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e64726f705f7468726573686f6c64605c7570646174655f726573756d655f7468726573686f6c6404010c6e65771c010c75333200051491014f76657277726974657320746865206e756d626572206f66207061676573206f66206d6573736167657320776869636820746865207175657565206d757374206265207265647563656420746f206265666f7265206974207369676e616c732074686174ec6d6573736167652073656e64696e67206d6179207265636f6d6d656e636520616674657220697420686173206265656e2073757370656e6465642e00742d20606f726967696e603a204d75737420706173732060526f6f74602ef42d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e726573756d655f7468726573686f6c64605c7570646174655f7468726573686f6c645f77656967687404010c6e657724011857656967687400061049014f7665727772697465732074686520616d6f756e74206f662072656d61696e696e672077656967687420756e6465722077686963682077652073746f702070726f63657373696e67206d657373616765732e00742d20606f726967696e603a204d75737420706173732060526f6f74602ef42d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e7468726573686f6c645f77656967687460707570646174655f7765696768745f72657374726963745f646563617904010c6e657724011857656967687400071445014f7665727772697465732074686520737065656420746f2077686963682074686520617661696c61626c652077656967687420617070726f616368657320746865206d6178696d756d207765696768742ea50141206c6f776572206e756d62657220726573756c747320696e2061206661737465722070726f6772657373696f6e2e20412076616c7565206f662031206d616b65732074686520656e746972652077656967687420617661696c61626c6520696e697469616c6c792e00742d20606f726967696e603a204d75737420706173732060526f6f74602e0d012d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e7765696768745f72657374726963745f6465636179602e847570646174655f78636d705f6d61785f696e646976696475616c5f77656967687404010c6e657724011857656967687400081429014f766572777269746520746865206d6178696d756d20616d6f756e74206f662077656967687420616e7920696e646976696475616c206d657373616765206d617920636f6e73756d652e71014d657373616765732061626f766520746869732077656967687420676f20696e746f20746865206f76657277656967687420717565756520616e64206d6179206f6e6c79206265207365727669636564206578706c696369746c792e00742d20606f726967696e603a204d75737420706173732060526f6f74602e21012d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e78636d705f6d61785f696e646976696475616c5f776569676874602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e01050c2870616c6c65745f78636d1870616c6c65741043616c6c0404540001281073656e64080110646573746902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011c6d65737361676505050154426f783c56657273696f6e656458636d3c28293e3e0000003c74656c65706f72745f617373657473100110646573746902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172796902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747331020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c75333200013c110154656c65706f727420736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f20736f6d652064657374696e6174696f6e20636861696e2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602e2054686520776569676874206c696d697420666f722066656573206973206e6f742070726f766964656420616e64207468757320697320756e6c696d697465642cb47769746820616c6c20666565732074616b656e206173206e65656465642066726f6d207468652061737365742e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652ead012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546865206669727374206974656d2073686f756c64206265207468652063757272656e6379207573656420746f20746f207061792074686520666565206f6e2074686580202060646573746020736964652e204d6179206e6f7420626520656d7074792e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e5c726573657276655f7472616e736665725f617373657473100110646573746902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172796902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747331020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c7533320002404d015472616e7366657220736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f2074686520736f7665726569676e206163636f756e74206f6620612064657374696e6174696f6e94636861696e20616e6420666f72776172642061206e6f74696669636174696f6e2058434d2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602e2054686520776569676874206c696d697420666f722066656573206973206e6f742070726f766964656420616e64207468757320697320756e6c696d697465642cb47769746820616c6c20666565732074616b656e206173206e65656465642066726f6d207468652061737365742e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652e85012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546869732073686f756c6420696e636c7564652074686520617373657473207573656420746f207061792074686520666565206f6e2074686538202060646573746020736964652e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e1c6578656375746508011c6d657373616765350501c0426f783c56657273696f6e656458636d3c3c5420617320537973436f6e6669673e3a3a52756e74696d6543616c6c3e3e0001286d61785f77656967687424011857656967687400032cd04578656375746520616e2058434d206d6573736167652066726f6d2061206c6f63616c2c207369676e65642c206f726967696e2e004d01416e206576656e74206973206465706f736974656420696e6469636174696e67207768657468657220606d73676020636f756c6420626520657865637574656420636f6d706c6574656c79206f72206f6e6c79287061727469616c6c792e006d014e6f206d6f7265207468616e20606d61785f776569676874602077696c6c206265207573656420696e2069747320617474656d7074656420657865637574696f6e2e2049662074686973206973206c657373207468616e2074686559016d6178696d756d20616d6f756e74206f6620776569676874207468617420746865206d65737361676520636f756c642074616b6520746f2062652065786563757465642c207468656e206e6f20657865637574696f6e54617474656d70742077696c6c206265206d6164652e006d014e4f54453a2041207375636365737366756c2072657475726e20746f207468697320646f6573202a6e6f742a20696d706c7920746861742074686520606d73676020776173206578656375746564207375636365737366756c6c79cc746f20636f6d706c6574696f6e3b206f6e6c792074686174202a736f6d652a206f66206974207761732065786563757465642e44666f7263655f78636d5f76657273696f6e0801206c6f636174696f6ea9010148426f783c4d756c74694c6f636174696f6e3e00012c78636d5f76657273696f6e1c012858636d56657273696f6e00041849014578746f6c6c2074686174206120706172746963756c61722064657374696e6174696f6e2063616e20626520636f6d6d756e6963617465642077697468207468726f756768206120706172746963756c61723c76657273696f6e206f662058434d2e00642d20606f726967696e603a204d75737420626520526f6f742ed82d20606c6f636174696f6e603a205468652064657374696e6174696f6e2074686174206973206265696e67206465736372696265642e11012d206078636d5f76657273696f6e603a20546865206c61746573742076657273696f6e206f662058434d207468617420606c6f636174696f6e6020737570706f7274732e64666f7263655f64656661756c745f78636d5f76657273696f6e0401446d617962655f78636d5f76657273696f6eb10301484f7074696f6e3c58636d56657273696f6e3e0005145901536574206120736166652058434d2076657273696f6e20287468652076657273696f6e20746861742058434d2073686f756c6420626520656e636f646564207769746820696620746865206d6f737420726563656e74b476657273696f6e20612064657374696e6174696f6e2063616e2061636365707420697320756e6b6e6f776e292e00642d20606f726967696e603a204d75737420626520526f6f742e39012d20606d617962655f78636d5f76657273696f6e603a205468652064656661756c742058434d20656e636f64696e672076657273696f6e2c206f7220604e6f6e656020746f2064697361626c652e78666f7263655f7375627363726962655f76657273696f6e5f6e6f746966790401206c6f636174696f6e6902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e000610390141736b2061206c6f636174696f6e20746f206e6f7469667920757320726567617264696e672074686569722058434d2076657273696f6e20616e6420616e79206368616e67657320746f2069742e00642d20606f726967696e603a204d75737420626520526f6f742e59012d20606c6f636174696f6e603a20546865206c6f636174696f6e20746f2077686963682077652073686f756c642073756273637269626520666f722058434d2076657273696f6e206e6f74696669636174696f6e732e80666f7263655f756e7375627363726962655f76657273696f6e5f6e6f746966790401206c6f636174696f6e6902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e0007184901526571756972652074686174206120706172746963756c61722064657374696e6174696f6e2073686f756c64206e6f206c6f6e676572206e6f7469667920757320726567617264696e6720616e792058434d4076657273696f6e206368616e6765732e00642d20606f726967696e603a204d75737420626520526f6f742e3d012d20606c6f636174696f6e603a20546865206c6f636174696f6e20746f207768696368207765206172652063757272656e746c79207375627363726962656420666f722058434d2076657273696f6ea820206e6f74696669636174696f6e73207768696368207765206e6f206c6f6e676572206465736972652e7c6c696d697465645f726573657276655f7472616e736665725f617373657473140110646573746902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172796902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747331020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c7533320001307765696768745f6c696d69742d02012c5765696768744c696d69740008484d015472616e7366657220736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f2074686520736f7665726569676e206163636f756e74206f6620612064657374696e6174696f6e94636861696e20616e6420666f72776172642061206e6f74696669636174696f6e2058434d2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602c20757020746f20656e6f75676820746f2070617920666f7220607765696768745f6c696d697460206f66207765696768742e204966206d6f72652077656967687459016973206e6565646564207468616e20607765696768745f6c696d6974602c207468656e20746865206f7065726174696f6e2077696c6c206661696c20616e6420746865206173736574732073656e64206d6179206265206174207269736b2e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652e85012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546869732073686f756c6420696e636c7564652074686520617373657473207573656420746f207061792074686520666565206f6e2074686538202060646573746020736964652e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e45012d20607765696768745f6c696d6974603a205468652072656d6f74652d7369646520776569676874206c696d69742c20696620616e792c20666f72207468652058434d206665652070757263686173652e5c6c696d697465645f74656c65706f72745f617373657473140110646573746902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172796902016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747331020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c7533320001307765696768745f6c696d69742d02012c5765696768744c696d6974000944110154656c65706f727420736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f20736f6d652064657374696e6174696f6e20636861696e2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602c20757020746f20656e6f75676820746f2070617920666f7220607765696768745f6c696d697460206f66207765696768742e204966206d6f72652077656967687459016973206e6565646564207468616e20607765696768745f6c696d6974602c207468656e20746865206f7065726174696f6e2077696c6c206661696c20616e6420746865206173736574732073656e64206d6179206265206174207269736b2e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652ead012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546865206669727374206974656d2073686f756c64206265207468652063757272656e6379207573656420746f20746f207061792074686520666565206f6e2074686580202060646573746020736964652e204d6179206e6f7420626520656d7074792e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e45012d20607765696768745f6c696d6974603a205468652072656d6f74652d7369646520776569676874206c696d69742c20696620616e792c20666f72207468652058434d206665652070757263686173652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e0505080c78636d3056657273696f6e656458636d042c52756e74696d6543616c6c00010808563204000905015076323a3a58636d3c52756e74696d6543616c6c3e0002000856330400cd01015076333a3a58636d3c52756e74696d6543616c6c3e0003000009050c0c78636d0876320c58636d042c52756e74696d6543616c6c000004000d0501745665633c496e737472756374696f6e3c52756e74696d6543616c6c3e3e00000d0500000211050011050c0c78636d0876322c496e737472756374696f6e042c52756e74696d6543616c6c000170345769746864726177417373657404003502012c4d756c7469417373657473000000545265736572766541737365744465706f736974656404003502012c4d756c7469417373657473000100585265636569766554656c65706f72746564417373657404003502012c4d756c7469417373657473000200345175657279526573706f6e73650c012071756572795f696428011c51756572794964000120726573706f6e736515050120526573706f6e73650001286d61785f77656967687428010c753634000300345472616e7366657241737365740801186173736574733502012c4d756c746941737365747300012c62656e6566696369617279450201344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c01186173736574733502012c4d756c746941737365747300011064657374450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f74797065150201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737428010c75363400011063616c6c19020168446f75626c65456e636f6465643c52756e74696d6543616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572b501010c7533320001406d61785f6d6573736167655f73697a65b501010c7533320001306d61785f6361706163697479b501010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74b501010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72b501010c75333200011873656e646572b501010c753332000124726563697069656e74b501010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e040049020154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f720c012071756572795f696428011c5175657279496400011064657374450201344d756c74694c6f636174696f6e00014c6d61785f726573706f6e73655f77656967687428010c753634000c00304465706f73697441737365740c0118617373657473250501404d756c7469417373657446696c7465720001286d61785f617373657473b501010c75333200012c62656e6566696369617279450201344d756c74694c6f636174696f6e000d004c4465706f736974526573657276654173736574100118617373657473250501404d756c7469417373657446696c7465720001286d61785f617373657473b501010c75333200011064657374450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e000e003445786368616e6765417373657408011067697665250501404d756c7469417373657446696c74657200011c726563656976653502012c4d756c7469417373657473000f005c496e6974696174655265736572766557697468647261770c0118617373657473250501404d756c7469417373657446696c74657200011c72657365727665450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473250501404d756c7469417373657446696c74657200011064657374450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e001100305175657279486f6c64696e6710012071756572795f696428011c5175657279496400011064657374450201344d756c74694c6f636174696f6e000118617373657473250501404d756c7469417373657446696c74657200014c6d61785f726573706f6e73655f77656967687428010c75363400120030427579457865637574696f6e080110666565733d0201284d756c746941737365740001307765696768745f6c696d69743105012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c657204000905014058636d3c52756e74696d6543616c6c3e0015002c536574417070656e64697804000905014058636d3c52756e74696d6543616c6c3e00160028436c6561724572726f7200170028436c61696d41737365740801186173736574733502012c4d756c74694173736574730001187469636b6574450201344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f77656967687428010c753634001a0048556e73756273637269626556657273696f6e001b000015050c0c78636d08763220526573706f6e7365000110104e756c6c0000001841737365747304003502012c4d756c74694173736574730001003c457865637574696f6e526573756c740400190501504f7074696f6e3c287533322c204572726f72293e0002001c56657273696f6e04001c013873757065723a3a56657273696f6e00030000190504184f7074696f6e040454011d050108104e6f6e6500000010536f6d6504001d0500000100001d05000004081c2105002105100c78636d08763218747261697473144572726f72000168204f766572666c6f7700000034556e696d706c656d656e74656400010060556e74727573746564526573657276654c6f636174696f6e00020064556e7472757374656454656c65706f72744c6f636174696f6e000300444d756c74694c6f636174696f6e46756c6c000400684d756c74694c6f636174696f6e4e6f74496e7665727469626c65000500244261644f726967696e0006003c496e76616c69644c6f636174696f6e0007003441737365744e6f74466f756e64000800544661696c6564546f5472616e7361637441737365740009003c4e6f74576974686472617761626c65000a00484c6f636174696f6e43616e6e6f74486f6c64000b0054457863656564734d61784d65737361676553697a65000c005844657374696e6174696f6e556e737570706f72746564000d00245472616e73706f7274000e0028556e726f757461626c65000f0030556e6b6e6f776e436c61696d001000384661696c6564546f4465636f6465001100404d6178576569676874496e76616c6964001200384e6f74486f6c64696e674665657300130030546f6f457870656e736976650014001054726170040010010c7536340015004c556e68616e646c656458636d56657273696f6e001600485765696768744c696d69745265616368656404001001185765696768740017001c426172726965720018004c5765696768744e6f74436f6d70757461626c65001900002505100c78636d087632286d756c74696173736574404d756c7469417373657446696c74657200010820446566696e69746504003502012c4d756c74694173736574730000001057696c6404002905013857696c644d756c74694173736574000100002905100c78636d087632286d756c746961737365743857696c644d756c746941737365740001080c416c6c00000014416c6c4f6608010869644102011c4173736574496400010c66756e2d05013c57696c6446756e676962696c697479000100002d05100c78636d087632286d756c746961737365743c57696c6446756e676962696c6974790001082046756e6769626c650000002c4e6f6e46756e6769626c650001000031050c0c78636d0876322c5765696768744c696d697400010824556e6c696d697465640000001c4c696d69746564040028010c753634000100003505080c78636d3056657273696f6e656458636d042c52756e74696d6543616c6c00010808563204003905015076323a3a58636d3c52756e74696d6543616c6c3e00020008563304004905015076333a3a58636d3c52756e74696d6543616c6c3e0003000039050c0c78636d0876320c58636d042c52756e74696d6543616c6c000004003d0501745665633c496e737472756374696f6e3c52756e74696d6543616c6c3e3e00003d0500000241050041050c0c78636d0876322c496e737472756374696f6e042c52756e74696d6543616c6c000170345769746864726177417373657404003502012c4d756c7469417373657473000000545265736572766541737365744465706f736974656404003502012c4d756c7469417373657473000100585265636569766554656c65706f72746564417373657404003502012c4d756c7469417373657473000200345175657279526573706f6e73650c012071756572795f696428011c51756572794964000120726573706f6e736515050120526573706f6e73650001286d61785f77656967687428010c753634000300345472616e7366657241737365740801186173736574733502012c4d756c746941737365747300012c62656e6566696369617279450201344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c01186173736574733502012c4d756c746941737365747300011064657374450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f74797065150201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737428010c75363400011063616c6c45050168446f75626c65456e636f6465643c52756e74696d6543616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572b501010c7533320001406d61785f6d6573736167655f73697a65b501010c7533320001306d61785f6361706163697479b501010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74b501010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72b501010c75333200011873656e646572b501010c753332000124726563697069656e74b501010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e040049020154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f720c012071756572795f696428011c5175657279496400011064657374450201344d756c74694c6f636174696f6e00014c6d61785f726573706f6e73655f77656967687428010c753634000c00304465706f73697441737365740c0118617373657473250501404d756c7469417373657446696c7465720001286d61785f617373657473b501010c75333200012c62656e6566696369617279450201344d756c74694c6f636174696f6e000d004c4465706f736974526573657276654173736574100118617373657473250501404d756c7469417373657446696c7465720001286d61785f617373657473b501010c75333200011064657374450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e000e003445786368616e6765417373657408011067697665250501404d756c7469417373657446696c74657200011c726563656976653502012c4d756c7469417373657473000f005c496e6974696174655265736572766557697468647261770c0118617373657473250501404d756c7469417373657446696c74657200011c72657365727665450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473250501404d756c7469417373657446696c74657200011064657374450201344d756c74694c6f636174696f6e00010c78636d0905011c58636d3c28293e001100305175657279486f6c64696e6710012071756572795f696428011c5175657279496400011064657374450201344d756c74694c6f636174696f6e000118617373657473250501404d756c7469417373657446696c74657200014c6d61785f726573706f6e73655f77656967687428010c75363400120030427579457865637574696f6e080110666565733d0201284d756c746941737365740001307765696768745f6c696d69743105012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c657204003905014058636d3c52756e74696d6543616c6c3e0015002c536574417070656e64697804003905014058636d3c52756e74696d6543616c6c3e00160028436c6561724572726f7200170028436c61696d41737365740801186173736574733502012c4d756c74694173736574730001187469636b6574450201344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f77656967687428010c753634001a0048556e73756273637269626556657273696f6e001b000045050c0c78636d38646f75626c655f656e636f64656434446f75626c65456e636f646564040454000004011c656e636f64656430011c5665633c75383e000049050c0c78636d0876330c58636d041043616c6c000004004d0501585665633c496e737472756374696f6e3c43616c6c3e3e00004d0500000251050051050c0c78636d0876332c496e737472756374696f6e041043616c6c0001c034576974686472617741737365740400d901012c4d756c7469417373657473000000545265736572766541737365744465706f73697465640400d901012c4d756c7469417373657473000100585265636569766554656c65706f7274656441737365740400d901012c4d756c7469417373657473000200345175657279526573706f6e736510012071756572795f696428011c51756572794964000120726573706f6e7365f5010120526573706f6e73650001286d61785f77656967687424011857656967687400011c71756572696572110201544f7074696f6e3c4d756c74694c6f636174696f6e3e000300345472616e736665724173736574080118617373657473d901012c4d756c746941737365747300012c62656e6566696369617279a90101344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c0118617373657473d901012c4d756c746941737365747300011064657374a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f6b696e64150201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737424011857656967687400011063616c6c4505014c446f75626c65456e636f6465643c43616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572b501010c7533320001406d61785f6d6573736167655f73697a65b501010c7533320001306d61785f6361706163697479b501010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74b501010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72b501010c75333200011873656e646572b501010c753332000124726563697069656e74b501010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e0400ad010154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f7204001d0201445175657279526573706f6e7365496e666f000c00304465706f7369744173736574080118617373657473210201404d756c7469417373657446696c74657200012c62656e6566696369617279a90101344d756c74694c6f636174696f6e000d004c4465706f7369745265736572766541737365740c0118617373657473210201404d756c7469417373657446696c74657200011064657374a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e000e003445786368616e676541737365740c011067697665210201404d756c7469417373657446696c74657200011077616e74d901012c4d756c746941737365747300011c6d6178696d616ca40110626f6f6c000f005c496e6974696174655265736572766557697468647261770c0118617373657473210201404d756c7469417373657446696c74657200011c72657365727665a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473210201404d756c7469417373657446696c74657200011064657374a90101344d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e001100345265706f7274486f6c64696e67080134726573706f6e73655f696e666f1d0201445175657279526573706f6e7365496e666f000118617373657473210201404d756c7469417373657446696c74657200120030427579457865637574696f6e08011066656573e10101284d756c746941737365740001307765696768745f6c696d69742d02012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c657204004905012458636d3c43616c6c3e0015002c536574417070656e64697804004905012458636d3c43616c6c3e00160028436c6561724572726f7200170028436c61696d4173736574080118617373657473d901012c4d756c74694173736574730001187469636b6574a90101344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f776569676874240118576569676874001a0048556e73756273637269626556657273696f6e001b00244275726e41737365740400d901012c4d756c7469417373657473001c002c45787065637441737365740400d901012c4d756c7469417373657473001d00304578706563744f726967696e0400110201544f7074696f6e3c4d756c74694c6f636174696f6e3e001e002c4578706563744572726f720400f90101504f7074696f6e3c287533322c204572726f72293e001f00504578706563745472616e7361637453746174757304000d0201384d617962654572726f72436f64650020002c517565727950616c6c657408012c6d6f64756c655f6e616d6530011c5665633c75383e000134726573706f6e73655f696e666f1d0201445175657279526573706f6e7365496e666f0021003045787065637450616c6c6574140114696e646578b501010c7533320001106e616d6530011c5665633c75383e00012c6d6f64756c655f6e616d6530011c5665633c75383e00012c63726174655f6d616a6f72b501010c75333200013c6d696e5f63726174655f6d696e6f72b501010c753332002200505265706f72745472616e7361637453746174757304001d0201445175657279526573706f6e7365496e666f0023004c436c6561725472616e736163745374617475730024003c556e6976657273616c4f726967696e0400b10101204a756e6374696f6e002500344578706f72744d6573736167650c011c6e6574776f726bbd0101244e6574776f726b496400012c64657374696e6174696f6ead010154496e746572696f724d756c74694c6f636174696f6e00010c78636dcd01011c58636d3c28293e002600244c6f636b41737365740801146173736574e10101284d756c74694173736574000120756e6c6f636b6572a90101344d756c74694c6f636174696f6e0027002c556e6c6f636b41737365740801146173736574e10101284d756c74694173736574000118746172676574a90101344d756c74694c6f636174696f6e002800384e6f7465556e6c6f636b61626c650801146173736574e10101284d756c746941737365740001146f776e6572a90101344d756c74694c6f636174696f6e0029003452657175657374556e6c6f636b0801146173736574e10101284d756c746941737365740001186c6f636b6572a90101344d756c74694c6f636174696f6e002a002c536574466565734d6f64650401306a69745f7769746864726177a40110626f6f6c002b0020536574546f70696304000401205b75383b2033325d002c0028436c656172546f706963002d002c416c6961734f726967696e0400a90101344d756c74694c6f636174696f6e002e003c556e70616964457865637574696f6e0801307765696768745f6c696d69742d02012c5765696768744c696d6974000130636865636b5f6f726967696e110201544f7074696f6e3c4d756c74694c6f636174696f6e3e002f000055050c6063756d756c75735f70616c6c65745f646d705f71756575651870616c6c65741043616c6c04045400010448736572766963655f6f766572776569676874080114696e64657810013c4f766572776569676874496e6465780001307765696768745f6c696d6974240118576569676874000004905365727669636520612073696e676c65206f766572776569676874206d6573736167652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e59050000029d03005d0500000408610518006105101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e6465645665630804540100045300000400250301185665633c543e000065050c4070616c6c65745f64656d6f6372616379147479706573385265666572656e64756d496e666f0c2c426c6f636b4e756d62657201102050726f706f73616c01a1031c42616c616e6365011801081c4f6e676f696e670400690501c05265666572656e64756d5374617475733c426c6f636b4e756d6265722c2050726f706f73616c2c2042616c616e63653e0000002046696e6973686564080120617070726f766564a40110626f6f6c00010c656e6410012c426c6f636b4e756d6265720001000069050c4070616c6c65745f64656d6f6372616379147479706573405265666572656e64756d5374617475730c2c426c6f636b4e756d62657201102050726f706f73616c01a1031c42616c616e636501180014010c656e6410012c426c6f636b4e756d62657200012070726f706f73616ca103012050726f706f73616c0001247468726573686f6c64940134566f74655468726573686f6c6400011464656c617910012c426c6f636b4e756d62657200011474616c6c796d05013854616c6c793c42616c616e63653e00006d050c4070616c6c65745f64656d6f63726163791474797065731454616c6c79041c42616c616e63650118000c01106179657318011c42616c616e63650001106e61797318011c42616c616e636500011c7475726e6f757418011c42616c616e6365000071050c4070616c6c65745f64656d6f637261637910766f746518566f74696e67101c42616c616e63650118244163636f756e74496401002c426c6f636b4e756d6265720110204d6178566f746573000108184469726563740c0114766f746573750501f4426f756e6465645665633c285265666572656e64756d496e6465782c204163636f756e74566f74653c42616c616e63653e292c204d6178566f7465733e00012c64656c65676174696f6e738105015044656c65676174696f6e733c42616c616e63653e0001147072696f728505017c5072696f724c6f636b3c426c6f636b4e756d6265722c2042616c616e63653e0000002844656c65676174696e6714011c62616c616e636518011c42616c616e63650001187461726765740001244163636f756e744964000128636f6e76696374696f6ead030128436f6e76696374696f6e00012c64656c65676174696f6e738105015044656c65676174696f6e733c42616c616e63653e0001147072696f728505017c5072696f724c6f636b3c426c6f636b4e756d6265722c2042616c616e63653e000100007505101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e6465645665630804540179050453000004007d0501185665633c543e00007905000004081c98007d0500000279050081050c4070616c6c65745f64656d6f63726163791474797065732c44656c65676174696f6e73041c42616c616e6365011800080114766f74657318011c42616c616e636500011c6361706974616c18011c42616c616e6365000085050c4070616c6c65745f64656d6f637261637910766f7465245072696f724c6f636b082c426c6f636b4e756d62657201101c42616c616e6365011800080010012c426c6f636b4e756d626572000018011c42616c616e63650000890500000408a10394008d05000004081061050091050c4070616c6c65745f64656d6f63726163791870616c6c6574144572726f7204045400015c2056616c75654c6f770000043456616c756520746f6f206c6f773c50726f706f73616c4d697373696e670001045c50726f706f73616c20646f6573206e6f742065786973743c416c726561647943616e63656c65640002049443616e6e6f742063616e63656c207468652073616d652070726f706f73616c207477696365444475706c696361746550726f706f73616c0003045450726f706f73616c20616c7265616479206d6164654c50726f706f73616c426c61636b6c69737465640004046850726f706f73616c207374696c6c20626c61636b6c6973746564444e6f7453696d706c654d616a6f72697479000504a84e6578742065787465726e616c2070726f706f73616c206e6f742073696d706c65206d616a6f726974792c496e76616c69644861736800060430496e76616c69642068617368284e6f50726f706f73616c000704504e6f2065787465726e616c2070726f706f73616c34416c72656164795665746f6564000804984964656e74697479206d6179206e6f74207665746f20612070726f706f73616c207477696365445265666572656e64756d496e76616c696400090484566f746520676976656e20666f7220696e76616c6964207265666572656e64756d2c4e6f6e6557616974696e67000a04504e6f2070726f706f73616c732077616974696e67204e6f74566f746572000b04c454686520676976656e206163636f756e7420646964206e6f7420766f7465206f6e20746865207265666572656e64756d2e304e6f5065726d697373696f6e000c04c8546865206163746f7220686173206e6f207065726d697373696f6e20746f20636f6e647563742074686520616374696f6e2e44416c726561647944656c65676174696e67000d0488546865206163636f756e7420697320616c72656164792064656c65676174696e672e44496e73756666696369656e7446756e6473000e04fc546f6f206869676820612062616c616e6365207761732070726f7669646564207468617420746865206163636f756e742063616e6e6f74206166666f72642e344e6f7444656c65676174696e67000f04a0546865206163636f756e74206973206e6f742063757272656e746c792064656c65676174696e672e28566f74657345786973740010085501546865206163636f756e742063757272656e746c792068617320766f74657320617474616368656420746f20697420616e6420746865206f7065726174696f6e2063616e6e6f74207375636365656420756e74696ce87468657365206172652072656d6f7665642c20656974686572207468726f7567682060756e766f746560206f722060726561705f766f7465602e44496e7374616e744e6f74416c6c6f776564001104d854686520696e7374616e74207265666572656e64756d206f726967696e2069732063757272656e746c7920646973616c6c6f7765642e204e6f6e73656e73650012049444656c65676174696f6e20746f206f6e6573656c66206d616b6573206e6f2073656e73652e3c57726f6e675570706572426f756e6400130450496e76616c696420757070657220626f756e642e3c4d6178566f74657352656163686564001404804d6178696d756d206e756d626572206f6620766f74657320726561636865642e1c546f6f4d616e79001504804d6178696d756d206e756d626572206f66206974656d7320726561636865642e3c566f74696e67506572696f644c6f7700160454566f74696e6720706572696f6420746f6f206c6f7704b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909099505101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454012c045300000400790201185665633c543e00009905084470616c6c65745f636f6c6c65637469766514566f74657308244163636f756e74496401002c426c6f636b4e756d626572011000140114696e6465781c013450726f706f73616c496e6465780001247468726573686f6c641c012c4d656d626572436f756e7400011061796573250301385665633c4163636f756e7449643e0001106e617973250301385665633c4163636f756e7449643e00010c656e6410012c426c6f636b4e756d62657200009d050c4470616c6c65745f636f6c6c6563746976651870616c6c6574144572726f72080454000449000128244e6f744d656d6265720000045c4163636f756e74206973206e6f742061206d656d626572444475706c696361746550726f706f73616c0001047c4475706c69636174652070726f706f73616c73206e6f7420616c6c6f7765643c50726f706f73616c4d697373696e670002044c50726f706f73616c206d7573742065786973742857726f6e67496e646578000304404d69736d61746368656420696e646578344475706c6963617465566f7465000404584475706c696361746520766f74652069676e6f72656448416c7265616479496e697469616c697a6564000504804d656d626572732061726520616c726561647920696e697469616c697a65642120546f6f4561726c79000604010154686520636c6f73652063616c6c20776173206d61646520746f6f206561726c792c206265666f72652074686520656e64206f662074686520766f74696e672e40546f6f4d616e7950726f706f73616c73000704fc54686572652063616e206f6e6c792062652061206d6178696d756d206f6620604d617850726f706f73616c7360206163746976652070726f706f73616c732e4c57726f6e6750726f706f73616c576569676874000804d054686520676976656e2077656967687420626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e4c57726f6e6750726f706f73616c4c656e677468000904d054686520676976656e206c656e67746820626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909a105101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454012c045300000400790201185665633c543e0000a5050c4470616c6c65745f636f6c6c6563746976651870616c6c6574144572726f72080454000449000128244e6f744d656d6265720000045c4163636f756e74206973206e6f742061206d656d626572444475706c696361746550726f706f73616c0001047c4475706c69636174652070726f706f73616c73206e6f7420616c6c6f7765643c50726f706f73616c4d697373696e670002044c50726f706f73616c206d7573742065786973742857726f6e67496e646578000304404d69736d61746368656420696e646578344475706c6963617465566f7465000404584475706c696361746520766f74652069676e6f72656448416c7265616479496e697469616c697a6564000504804d656d626572732061726520616c726561647920696e697469616c697a65642120546f6f4561726c79000604010154686520636c6f73652063616c6c20776173206d61646520746f6f206561726c792c206265666f72652074686520656e64206f662074686520766f74696e672e40546f6f4d616e7950726f706f73616c73000704fc54686572652063616e206f6e6c792062652061206d6178696d756d206f6620604d617850726f706f73616c7360206163746976652070726f706f73616c732e4c57726f6e6750726f706f73616c576569676874000804d054686520676976656e2077656967687420626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e4c57726f6e6750726f706f73616c4c656e677468000904d054686520676976656e206c656e67746820626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909a905101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e6465645665630804540100045300000400250301185665633c543e0000ad050c4470616c6c65745f6d656d626572736869701870616c6c6574144572726f7208045400044900010c34416c72656164794d656d62657200000444416c72656164792061206d656d6265722e244e6f744d656d626572000104344e6f742061206d656d6265722e38546f6f4d616e794d656d6265727300020444546f6f206d616e79206d656d626572732e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909b105083c70616c6c65745f74726561737572792050726f706f73616c08244163636f756e74496401001c42616c616e636501180010012070726f706f7365720001244163636f756e74496400011476616c756518011c42616c616e636500012c62656e65666963696172790001244163636f756e744964000110626f6e6418011c42616c616e63650000b505101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e646564566563080454011c045300000400350301185665633c543e0000b9050c3473705f61726974686d65746963287065725f7468696e67731c5065726d696c6c000004001c010c7533320000bd0504184f7074696f6e04045401180108104e6f6e6500000010536f6d650400180000010000c10508346672616d655f737570706f72742050616c6c6574496400000400f101011c5b75383b20385d0000c5050c3c70616c6c65745f74726561737572791870616c6c6574144572726f7208045400044900011470496e73756666696369656e7450726f706f7365727342616c616e63650000047850726f706f73657227732062616c616e636520697320746f6f206c6f772e30496e76616c6964496e646578000104904e6f2070726f706f73616c206f7220626f756e7479206174207468617420696e6465782e40546f6f4d616e79417070726f76616c7300020480546f6f206d616e7920617070726f76616c7320696e207468652071756575652e58496e73756666696369656e745065726d697373696f6e0003084501546865207370656e64206f726967696e2069732076616c6964206275742074686520616d6f756e7420697420697320616c6c6f77656420746f207370656e64206973206c6f776572207468616e207468654c616d6f756e7420746f206265207370656e742e4c50726f706f73616c4e6f74417070726f7665640004047c50726f706f73616c20686173206e6f74206265656e20617070726f7665642e04784572726f7220666f72207468652074726561737572792070616c6c65742ec9050c3870616c6c65745f7574696c6974791870616c6c6574144572726f7204045400010430546f6f4d616e7943616c6c730000045c546f6f206d616e792063616c6c7320626174636865642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909cd05101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401fd03045300000400d10501185665633c543e0000d105000002fd0300d505083870616c6c65745f76657374696e672052656c656173657300010808563000000008563100010000d9050c3870616c6c65745f76657374696e671870616c6c6574144572726f72040454000114284e6f7456657374696e6700000484546865206163636f756e7420676976656e206973206e6f742076657374696e672e5441744d617856657374696e675363686564756c65730001082501546865206163636f756e7420616c72656164792068617320604d617856657374696e675363686564756c65736020636f756e74206f66207363686564756c657320616e642074687573510163616e6e6f742061646420616e6f74686572206f6e652e20436f6e7369646572206d657267696e67206578697374696e67207363686564756c657320696e206f7264657220746f2061646420616e6f746865722e24416d6f756e744c6f770002040501416d6f756e74206265696e67207472616e7366657272656420697320746f6f206c6f7720746f2063726561746520612076657374696e67207363686564756c652e605363686564756c65496e6465784f75744f66426f756e6473000304d0416e20696e64657820776173206f7574206f6620626f756e6473206f66207468652076657374696e67207363686564756c65732e54496e76616c69645363686564756c65506172616d730004040d014661696c656420746f206372656174652061206e6577207363686564756c65206265636175736520736f6d6520706172616d657465722077617320696e76616c69642e04744572726f7220666f72207468652076657374696e672070616c6c65742edd05101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401e105045300000400e90501185665633c543e0000e10504184f7074696f6e04045401e5050108104e6f6e6500000010536f6d650400e5050000010000e505084070616c6c65745f7363686564756c6572245363686564756c656414104e616d6501041043616c6c01a1032c426c6f636b4e756d62657201103450616c6c6574734f726967696e01d903244163636f756e7449640100001401206d617962655f6964cc01304f7074696f6e3c4e616d653e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6ca103011043616c6c0001386d617962655f706572696f646963050401944f7074696f6e3c7363686564756c653a3a506572696f643c426c6f636b4e756d6265723e3e0001186f726967696ed903013450616c6c6574734f726967696e0000e905000002e10500ed050c4070616c6c65745f7363686564756c65721870616c6c6574144572726f72040454000114404661696c6564546f5363686564756c65000004644661696c656420746f207363686564756c6520612063616c6c204e6f74466f756e640001047c43616e6e6f742066696e6420746865207363686564756c65642063616c6c2e5c546172676574426c6f636b4e756d626572496e50617374000204a4476976656e2074617267657420626c6f636b206e756d62657220697320696e2074686520706173742e4852657363686564756c654e6f4368616e6765000304f052657363686564756c65206661696c6564206265636175736520697420646f6573206e6f74206368616e6765207363686564756c65642074696d652e144e616d6564000404d0417474656d707420746f207573652061206e6f6e2d6e616d65642066756e6374696f6e206f6e2061206e616d6564207461736b2e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909f10500000408f5051800f505101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401f905045300000400fd0501185665633c543e0000f905083070616c6c65745f70726f78793c50726f7879446566696e6974696f6e0c244163636f756e74496401002450726f78795479706501d42c426c6f636b4e756d6265720110000c012064656c65676174650001244163636f756e74496400012870726f78795f74797065d4012450726f78795479706500011464656c617910012c426c6f636b4e756d6265720000fd05000002f90500010600000408050618000506101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e6465645665630804540109060453000004000d0601185665633c543e00000906083070616c6c65745f70726f787930416e6e6f756e63656d656e740c244163636f756e74496401001048617368012c2c426c6f636b4e756d6265720110000c01107265616c0001244163636f756e74496400012463616c6c5f686173682c01104861736800011868656967687410012c426c6f636b4e756d62657200000d0600000209060011060c3070616c6c65745f70726f78791870616c6c6574144572726f720404540001201c546f6f4d616e79000004210154686572652061726520746f6f206d616e792070726f786965732072656769737465726564206f7220746f6f206d616e7920616e6e6f756e63656d656e74732070656e64696e672e204e6f74466f756e640001047450726f787920726567697374726174696f6e206e6f7420666f756e642e204e6f7450726f7879000204cc53656e646572206973206e6f7420612070726f7879206f6620746865206163636f756e7420746f2062652070726f786965642e2c556e70726f787961626c650003042101412063616c6c20776869636820697320696e636f6d70617469626c652077697468207468652070726f7879207479706527732066696c7465722077617320617474656d707465642e244475706c69636174650004046c4163636f756e7420697320616c726561647920612070726f78792e304e6f5065726d697373696f6e000504150143616c6c206d6179206e6f74206265206d6164652062792070726f78792062656361757365206974206d617920657363616c617465206974732070726976696c656765732e2c556e616e6e6f756e636564000604d0416e6e6f756e63656d656e742c206966206d61646520617420616c6c2c20776173206d61646520746f6f20726563656e746c792e2c4e6f53656c6650726f78790007046443616e6e6f74206164642073656c662061732070726f78792e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909091506083c70616c6c65745f707265696d616765345265717565737453746174757308244163636f756e74496401001c42616c616e6365011801082c556e72657175657374656408011c6465706f73697419060150284163636f756e7449642c2042616c616e63652900010c6c656e1c010c753332000000245265717565737465640c011c6465706f7369741d0601704f7074696f6e3c284163636f756e7449642c2042616c616e6365293e000114636f756e741c010c75333200010c6c656eb103012c4f7074696f6e3c7533323e000100001906000004080018001d0604184f7074696f6e0404540119060108104e6f6e6500000010536f6d650400190600000100002106000004082c1c002506101c73705f636f72651c626f756e6465642c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e000029060c3c70616c6c65745f707265696d6167651870616c6c6574144572726f7204045400011818546f6f426967000004a0507265696d61676520697320746f6f206c6172676520746f2073746f7265206f6e2d636861696e2e30416c72656164794e6f746564000104a4507265696d6167652068617320616c7265616479206265656e206e6f746564206f6e2d636861696e2e344e6f74417574686f72697a6564000204c85468652075736572206973206e6f7420617574686f72697a656420746f20706572666f726d207468697320616374696f6e2e204e6f744e6f746564000304fc54686520707265696d6167652063616e6e6f742062652072656d6f7665642073696e636520697420686173206e6f7420796574206265656e206e6f7465642e2452657175657374656400040409014120707265696d616765206d6179206e6f742062652072656d6f766564207768656e20746865726520617265206f75747374616e64696e672072657175657374732e304e6f745265717565737465640005042d0154686520707265696d61676520726571756573742063616e6e6f742062652072656d6f7665642073696e6365206e6f206f75747374616e64696e672072657175657374732065786973742e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909092d060c4470616c6c65745f6d656d626572736869701870616c6c6574144572726f7208045400044900010c34416c72656164794d656d62657200000444416c72656164792061206d656d6265722e244e6f744d656d626572000104344e6f742061206d656d6265722e38546f6f4d616e794d656d6265727300020444546f6f206d616e79206d656d626572732e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909093106082c70616c6c65745f746970731c4f70656e54697010244163636f756e74496401001c42616c616e636501182c426c6f636b4e756d62657201101048617368012c001c0118726561736f6e2c01104861736800010c77686f0001244163636f756e74496400011866696e6465720001244163636f756e74496400011c6465706f73697418011c42616c616e6365000118636c6f7365733506014c4f7074696f6e3c426c6f636b4e756d6265723e00011074697073390601645665633c284163636f756e7449642c2042616c616e6365293e00012c66696e646572735f666565a40110626f6f6c0000350604184f7074696f6e04045401100108104e6f6e6500000010536f6d65040010000001000039060000021906003d060c3473705f61726974686d65746963287065725f7468696e67731c50657263656e74000004000801087538000041060c2c70616c6c65745f746970731870616c6c6574144572726f7208045400044900011830526561736f6e546f6f4269670000048454686520726561736f6e20676976656e206973206a75737420746f6f206269672e30416c72656164794b6e6f776e00010488546865207469702077617320616c726561647920666f756e642f737461727465642e28556e6b6e6f776e5469700002046054686520746970206861736820697320756e6b6e6f776e2e244e6f7446696e6465720003041d01546865206163636f756e7420617474656d7074696e6720746f20726574726163742074686520746970206973206e6f74207468652066696e646572206f6620746865207469702e245374696c6c4f70656e0004042901546865207469702063616e6e6f7420626520636c61696d65642f636c6f736564206265636175736520746865726520617265206e6f7420656e6f7567682074697070657273207965742e245072656d61747572650005043101546865207469702063616e6e6f7420626520636c61696d65642f636c6f73656420626563617573652069742773207374696c6c20696e2074686520636f756e74646f776e20706572696f642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090945060c1463747970652c63747970655f656e747279284374797065456e747279081c43726561746f7201002c426c6f636b4e756d62657201100008011c63726561746f7200011c43726561746f72000128637265617465645f617410012c426c6f636b4e756d626572000049060c1463747970651870616c6c6574144572726f7204045400010c204e6f74466f756e64000004985468657265206973206e6f20435479706520776974682074686520676976656e20686173682e34416c72656164794578697374730001046454686520435479706520616c7265616479206578697374732e3c556e61626c65546f506179466565730002040d0154686520706179696e67206163636f756e742077617320756e61626c6520746f2070617920746865206665657320666f72206372656174696e6720612063747970652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909094d060c2c6174746573746174696f6e306174746573746174696f6e73484174746573746174696f6e44657461696c73040454000014012863747970655f686173682c01384374797065486173684f663c543e000120617474657374657200013441747465737465724f663c543e000140617574686f72697a6174696f6e5f6964f001704f7074696f6e3c417574686f72697a6174696f6e49644f663c543e3e00011c7265766f6b6564a40110626f6f6c00011c6465706f736974510601944465706f7369743c4163636f756e7449644f663c543e2c2042616c616e63654f663c543e3e000051060c306b696c745f737570706f72741c6465706f7369741c4465706f736974081c4163636f756e7401001c42616c616e63650118000801146f776e657200011c4163636f756e74000118616d6f756e7418011c42616c616e63650000550600000408f42c0059060c2c6174746573746174696f6e1870616c6c6574144572726f720404540001183c416c726561647941747465737465640000080901546865726520697320616c726561647920616e206174746573746174696f6e2077697468207468652073616d6520636c61696d20686173682073746f726564206f6e18636861696e2e38416c72656164795265766f6b6564000104a4546865206174746573746174696f6e2068617320616c7265616479206265656e207265766f6b65642e204e6f74466f756e64000204c04e6f206174746573746174696f6e206f6e20636861696e206d61746368696e672074686520636c61696d20686173682e3443547970654d69736d61746368000308fc546865206174746573746174696f6e20435479706520646f6573206e6f74206d61746368207468652043547970652073706563696669656420696e207468656864656c65676174696f6e2068696572617263687920726f6f742e344e6f74417574686f72697a6564000404f05468652063616c6c206f726967696e206973206e6f7420617574686f72697a656420746f206368616e676520746865206174746573746174696f6e2e804d617844656c6567617465644174746573746174696f6e73457863656564656400050cf4546865206d6178696d756d206e756d626572206f662064656c656761746564206174746573746174696f6e732068617320616c7265616479206265656e05017265616368656420666f722074686520636f72726573706f6e64696e672064656c65676174696f6e2069642073756368207468617420616e6f74686572206f6e654063616e6e6f742062652061646465642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909095d060c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368793844656c65676174696f6e4e6f646504045400001401446869657261726368795f726f6f745f69642c015444656c65676174696f6e4e6f646549644f663c543e000118706172656e74610601744f7074696f6e3c44656c65676174696f6e4e6f646549644f663c543e3e0001206368696c6472656e650601d8426f756e64656442547265655365743c44656c65676174696f6e4e6f646549644f663c543e2c20543a3a4d61784368696c6472656e3e00011c64657461696c736d06015044656c65676174696f6e44657461696c733c543e00011c6465706f736974510601944465706f7369743c4163636f756e7449644f663c543e2c2042616c616e63654f663c543e3e0000610604184f7074696f6e040454012c0108104e6f6e6500000010536f6d6504002c00000100006506101c73705f636f72651c626f756e64656444626f756e6465645f62747265655f7365743c426f756e6465644254726565536574080454012c0453000004006906012c42547265655365743c543e0000690604204254726565536574040454012c00040079020000006d060c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368794444656c65676174696f6e44657461696c7304045400000c01146f776e657200014044656c656761746f7249644f663c543e00011c7265766f6b6564a40110626f6f6c00012c7065726d697373696f6e73fc012c5065726d697373696f6e73000071060c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368796844656c65676174696f6e48696572617263687944657461696c73040454000004012863747970655f686173682c01384374797065486173684f663c543e000075060c2864656c65676174696f6e1870616c6c6574144572726f720404540001585c44656c65676174696f6e416c72656164794578697374730000041101546865726520697320616c726561647920612064656c65676174696f6e206e6f64652077697468207468652073616d652049442073746f726564206f6e20636861696e2e60496e76616c696444656c65676174655369676e617475726500010805015468652064656c65676174652773207369676e617475726520666f72207468652064656c65676174696f6e206372656174696f6e206f7065726174696f6e20697320696e76616c69642e4844656c65676174696f6e4e6f74466f756e64000204c04e6f2064656c65676174696f6e20776974682074686520676976656e2049442073746f726564206f6e20636861696e2e4044656c65676174654e6f74466f756e64000304b84e6f2064656c656761746520776974682074686520676976656e2049442073746f726564206f6e20636861696e2e58486965726172636879416c7265616479457869737473000404f8546865726520697320616c72656164792061206869657261726368792077697468207468652073616d652049442073746f726564206f6e20636861696e2e444869657261726368794e6f74466f756e64000504bc4e6f2068696572617263687920776974682074686520676976656e2049442073746f726564206f6e20636861696e2e544d617853656172636844657074685265616368656400060409014d6178206e756d626572206f66206e6f64657320636865636b656420776974686f757420766572696679696e672074686520676976656e20636f6e646974696f6e2e684e6f744f776e65724f66506172656e7444656c65676174696f6e000708f45468652064656c65676174696f6e2063726561746f72206973206e6f7420616c6c6f77656420746f207772697465207468652064656c65676174696f6ef462656361757365207468657920617265206e6f7420746865206f776e6572206f66207468652064656c65676174696f6e20706172656e74206e6f64652e744e6f744f776e65724f6644656c65676174696f6e486965726172636879000808f45468652064656c65676174696f6e2063726561746f72206973206e6f7420616c6c6f77656420746f207772697465207468652064656c65676174696f6eec62656361757365207468657920617265206e6f7420746865206f776e6572206f66207468652064656c65676174696f6e20726f6f74206e6f64652e60506172656e7444656c65676174696f6e4e6f74466f756e64000904dc4e6f20706172656e742064656c65676174696f6e20776974682074686520676976656e2049442073746f726564206f6e20636861696e2e5c506172656e7444656c65676174696f6e5265766f6b6564000a04c854686520706172656e742064656c65676174696f6e206861732070726576696f75736c79206265656e207265766f6b65642e58556e617574686f72697a65645265766f636174696f6e000b04fc5468652064656c65676174696f6e207265766f6b6572206973206e6f7420616c6c6f77656420746f207265766f6b65207468652064656c65676174696f6e2e4c556e617574686f72697a656452656d6f76616c000c04ec5468652063616c6c206f726967696e206973206e6f7420617574686f72697a656420746f2072656d6f7665207468652064656c65676174696f6e2e58556e617574686f72697a656444656c65676174696f6e000d04fc5468652064656c65676174696f6e2063726561746f72206973206e6f7420616c6c6f77656420746f20637265617465207468652064656c65676174696f6e2e3041636365737344656e696564000e04f0546865206f7065726174696f6e207761736e277420616c6c6f7765642062656361757365206f6620696e73756666696369656e74207269676874732e6045786365656465645265766f636174696f6e426f756e6473000f080d014d6178206e756d626572206f66207265766f636174696f6e7320666f722064656c65676174696f6e206e6f64657320686173206265656e207265616368656420666f7238746865206f7065726174696f6e2e54457863656564656452656d6f76616c426f756e647300100811014d6178206e756d626572206f662072656d6f76616c7320666f722064656c65676174696f6e206e6f64657320686173206265656e207265616368656420666f7220746865286f7065726174696f6e2e584d61785265766f636174696f6e73546f6f4c61726765001104f8546865206d6178206e756d626572206f66207265766f636174696f6e206578636565647320746865206c696d697420666f72207468652070616c6c65742e4c4d617852656d6f76616c73546f6f4c61726765001204f0546865206d6178206e756d626572206f662072656d6f76616c73206578636565647320746865206c696d697420666f72207468652070616c6c65742e5c4d6178506172656e74436865636b73546f6f4c617267650013040501546865206d6178206e756d626572206f6620706172656e7420636865636b73206578636565647320746865206c696d697420666f72207468652070616c6c65742e20496e7465726e616c001404f4416e206572726f722074686174206973206e6f7420737570706f73656420746f2074616b6520706c6163652c207965742069742068617070656e65642e4c4d61784368696c6472656e4578636565646564001508dc546865206d6178206e756d626572206f6620616c6c206368696c6472656e20686173206265656e207265616368656420666f722074686578636f72726573706f6e64696e672064656c65676174696f6e206e6f64652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090979060c0c6469642c6469645f64657461696c732844696444657461696c7304045400001c014861757468656e7469636174696f6e5f6b65792c01284b657949644f663c543e0001486b65795f61677265656d656e745f6b6579737d0601604469644b657941677265656d656e744b65795365743c543e00013864656c65676174696f6e5f6b6579610601484f7074696f6e3c4b657949644f663c543e3e00013c6174746573746174696f6e5f6b6579610601484f7074696f6e3c4b657949644f663c543e3e00012c7075626c69635f6b657973810601484469645075626c69634b65794d61703c543e00013c6c6173745f74785f636f756e74657210010c75363400011c6465706f736974510601944465706f7369743c4163636f756e7449644f663c543e2c2042616c616e63654f663c543e3e00007d06101c73705f636f72651c626f756e64656444626f756e6465645f62747265655f7365743c426f756e6465644254726565536574080454012c0453000004006906012c42547265655365743c543e00008106101c73705f636f72651c626f756e64656444626f756e6465645f62747265655f6d61703c426f756e64656442547265654d61700c044b012c04560185060453000004008d06013842547265654d61703c4b2c20563e000085060c0c6469642c6469645f64657461696c734c4469645075626c69634b657944657461696c73042c426c6f636b4e756d62657201100008010c6b6579890601304469645075626c69634b6579000130626c6f636b5f6e756d62657210012c426c6f636b4e756d626572000089060c0c6469642c6469645f64657461696c73304469645075626c69634b6579000108545075626c6963566572696669636174696f6e4b657904006d040148446964566572696669636174696f6e4b65790000004c5075626c6963456e6372797074696f6e4b657904005d040140446964456e6372797074696f6e4b6579000100008d06042042547265654d617008044b012c0456018506000400910600000091060000029506009506000004082c850600990600000408008504009d060c0c6469641870616c6c6574144572726f7204045400016c58496e76616c69645369676e6174757265466f726d6174000008050154686520444944206f7065726174696f6e207369676e6174757265206973206e6f7420696e2074686520666f726d61742074686520766572696669636174696f6e306b657920657870656374732e40496e76616c69645369676e6174757265000108f854686520444944206f7065726174696f6e207369676e617475726520697320696e76616c696420666f7220746865207061796c6f616420616e642074686568766572696669636174696f6e206b65792070726f76696465642e34416c7265616479457869737473000204f85468652044494420776974682074686520676976656e206964656e74696669657220697320616c72656164792070726573656e74206f6e20636861696e2e204e6f74466f756e64000304d44e6f2044494420776974682074686520676976656e206964656e7469666965722069732070726573656e74206f6e20636861696e2e5c566572696669636174696f6e4b65794e6f74466f756e6400040809014f6e65206f72206d6f726520766572696669636174696f6e206b657973207265666572656e63656420617265206e6f742073746f72656420696e2074686520736574546f6620766572696669636174696f6e206b6579732e30496e76616c69644e6f6e6365000504090154686520444944206f7065726174696f6e206e6f6e6365206973206e6f7420657175616c20746f207468652063757272656e7420444944206e6f6e6365202b20312e7c556e737570706f72746564446964417574686f72697a6174696f6e43616c6c000604e05468652063616c6c65642065787472696e73696320646f6573206e6f7420737570706f72742044494420617574686f7269736174696f6e2e6c496e76616c6964446964417574686f72697a6174696f6e43616c6c000708dc5468652063616c6c2068616420706172616d6574657273207468617420636f6e666c696374656420776974682065616368206f74686572406f72207765726520696e76616c69642e8c4d61784e65774b657941677265656d656e744b6579734c696d697445786365656465640008080d0141206e756d626572206f66206e6577206b65792061677265656d656e74206b6579732067726561746572207468616e20746865206d6178696d756d20616c6c6f77656448686173206265656e2070726f76696465642e544d61785075626c69634b65797345786365656465640009080501546865206d6178696d756d206e756d626572206f66207075626c6963206b65797320666f72207468697320444944206b6579206964656e74696669657220686173346265656e20726561636865642e6c4d61784b657941677265656d656e744b6579734578636565646564000a080501546865206d6178696d756d206e756d626572206f66206b65792061677265656d656e747320686173206265656e207265616368656420666f722074686520444944207375626a6563742e304261644469644f726967696e000b04bc546865204449442063616c6c20776173207375626d6974746564206279207468652077726f6e67206163636f756e74485472616e73616374696f6e45787069726564000c040d0154686520626c6f636b206e756d6265722070726f766964656420696e2061204449442d617574686f72697a6564206f7065726174696f6e20697320696e76616c69642e38416c726561647944656c65746564000d04b0546865204449442068617320616c7265616479206265656e2070726576696f75736c792064656c657465642e444e6f744f776e65724f664465706f736974000e04fc4f6e6c7920746865206f776e6572206f6620746865206465706f7369742063616e207265636c61696d206974732072657365727665642062616c616e63652e3c556e61626c65546f50617946656573000f04f0546865206f726967696e20697320756e61626c6520746f207265736572766520746865206465706f73697420616e642070617920746865206665652e6c4d61784e756d6265724f66536572766963657345786365656465640010041101546865206d6178696d756d206e756d626572206f66207365727669636520656e64706f696e747320666f7220612044494420686173206265656e2065786365656465642e684d61785365727669636549644c656e6774684578636565646564001104f0546865207365727669636520656e64706f696e7420494420657863656564656420746865206d6178696d756d20616c6c6f776564206c656e6774682e704d617853657276696365547970654c656e6774684578636565646564001208f84f6e65206f6620746865207365727669636520656e64706f696e7420747970657320657863656564656420746865206d6178696d756d20616c6c6f7765641c6c656e6774682e884d61784e756d6265724f665479706573506572536572766963654578636565646564001308ec546865206d6178696d756d206e756d626572206f6620747970657320666f722061207365727669636520656e64706f696e7420686173206265656e2465786365656465642e6c4d61785365727669636555726c4c656e6774684578636565646564001408f44f6e65206f6620746865207365727669636520656e64706f696e742055524c7320657863656564656420746865206d6178696d756d20616c6c6f7765641c6c656e6774682e844d61784e756d6265724f6655726c735065725365727669636545786365656465640015041101546865206d6178696d756d206e756d626572206f662055524c7320666f722061207365727669636520656e64706f696e7420686173206265656e2065786365656465642e5053657276696365416c726561647945786973747300160411014120736572766963652077697468207468652070726f766964656420494420697320616c72656164792070726573656e7420666f722074686520676976656e204449442e3c536572766963654e6f74466f756e6400170409014120736572766963652077697468207468652070726f7669646564204944206973206e6f742070726573656e7420756e6465722074686520676976656e204449442e58496e76616c696453657276696365456e636f64696e6700180409014f6e65206f6620746865207365727669636520656e64706f696e742064657461696c7320636f6e7461696e73206e6f6e2d415343494920636861726163746572732e7c4d617853746f726564456e64706f696e7473436f756e7445786365656465640019080d01546865206e756d626572206f66207365727669636520656e64706f696e74732073746f72656420756e6465722074686520444944206973206c6172676572207468616e88746865206e756d626572206f6620656e64706f696e747320746f2064656c6574652e20496e7465726e616c001a04f4416e206572726f722074686174206973206e6f7420737570706f73656420746f2074616b6520706c6163652c207965742069742068617070656e65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909a1060c4470616c6c65745f6469645f6c6f6f6b757044636f6e6e656374696f6e5f7265636f726440436f6e6e656374696f6e5265636f72640c344469644964656e74696669657201001c4163636f756e7401001c42616c616e636501180008010c6469640001344469644964656e74696669657200011c6465706f736974510601644465706f7369743c4163636f756e742c2042616c616e63653e0000a5060000040800090100a9060c4470616c6c65745f6469645f6c6f6f6b75703c6d6967726174696f6e5f7374617465384d6967726174696f6e537461746500010c10446f6e65000000285072655570677261646500010024557067726164696e670400ad06013c4d6978656453746f726167654b657900020000ad060c4470616c6c65745f6469645f6c6f6f6b7570286d6967726174696f6e733c4d6978656453746f726167654b6579000108085631040000012c4163636f756e74496433320000000856320400090101444c696e6b61626c654163636f756e74496400010000b1060c4470616c6c65745f6469645f6c6f6f6b75701870616c6c6574144572726f72040454000114204e6f74466f756e640000047c546865206173736f63696174696f6e20646f6573206e6f742065786973742e344e6f74417574686f72697a65640001081101546865206f726967696e20776173206e6f7420616c6c6f77656420746f206d616e61676520746865206173736f63696174696f6e206265747765656e20746865204449444c616e6420746865206163636f756e742049442e344f7574646174656450726f6f66000204b454686520737570706c6965642070726f6f66206f66206f776e65727368697020776173206f757464617465642e44496e73756666696369656e7446756e64730003081101546865206163636f756e742068617320696e73756666696369656e742066756e647320616e642063616e277420706179207468652066656573206f72207265736572766530746865206465706f7369742e244d6967726174696f6e00040c010154686520436f6e6e65637465644163636f756e747320616e6420436f6e6e6563746564446964732073746f7261676520617265206f7574206f662073796e632e0011014e4f54453a20746869732077696c6c206f6e6c792062652072657475726e6564206966207468652073746f726167652068617320696e636f6e73697374656e636965732e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909b5060c4470616c6c65745f776562335f6e616d657324776562335f6e616d6544576562334e616d654f776e6572736869700c144f776e657201001c4465706f7369740151062c426c6f636b4e756d6265720110000c01146f776e65720001144f776e6572000128636c61696d65645f617410012c426c6f636b4e756d62657200011c6465706f7369745106011c4465706f7369740000b9060c4470616c6c65745f776562335f6e616d65731870616c6c6574144572726f7204045400013044496e73756666696369656e7446756e64730000040d01546865207478207375626d697474657220646f6573206e6f74206861766520656e6f7567682066756e647320746f2070617920666f7220746865206465706f7369742e34416c7265616479457869737473000104dc54686520737065636966696564206e616d652068617320616c7265616479206265656e2070726576696f75736c7920636c61696d65642e204e6f74466f756e640002048854686520737065636966696564206e616d6520646f6573206e6f742065786973742e484f776e6572416c7265616479457869737473000304a054686520737065636966696564206f776e657220616c7265616479206f776e732061206e616d652e344f776e65724e6f74466f756e64000404ac54686520737065636966696564206f776e657220646f6573206e6f74206f776e20616e79206e616d65732e1842616e6e6564000508ec54686520737065636966696564206e616d6520686173206265656e2062616e6e656420616e642063616e6e6f7420626520696e746572616374656414776974682e244e6f7442616e6e6564000604ac54686520737065636966696564206e616d65206973206e6f742063757272656e746c792062616e6e65642e34416c726561647942616e6e6564000704d854686520737065636966696564206e616d652068617320616c7265616479206265656e2070726576696f75736c792062616e6e65642e344e6f74417574686f72697a6564000804cc546865206163746f722063616e6e6f7420706572666f726d65642074686520737065636966696564206f7065726174696f6e2e20546f6f53686f7274000904a841206e616d65207468617420697320746f6f2073686f7274206973206265696e6720636c61696d65642e1c546f6f4c6f6e67000a04a441206e616d65207468617420697320746f6f206c6f6e67206973206265696e6720636c61696d65642e40496e76616c6964436861726163746572000b04f441206e616d65207468617420636f6e7461696e73206e6f7420616c6c6f7765642063686172616374657273206973206265696e6720636c61696d65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909bd060000040825012c00c1060c487075626c69635f63726564656e7469616c732c63726564656e7469616c733c43726564656e7469616c456e7472791824435479706548617368012c20417474657374657201002c426c6f636b4e756d6265720110244163636f756e74496401001c42616c616e636501183c417574686f72697a6174696f6e496401f40018012863747970655f686173682c01244354797065486173680001206174746573746572000120417474657374657200011c7265766f6b6564a40110626f6f6c000130626c6f636b5f6e756d62657210012c426c6f636b4e756d62657200011c6465706f7369745106016c4465706f7369743c4163636f756e7449642c2042616c616e63653e000140617574686f72697a6174696f6e5f6964f0015c4f7074696f6e3c417574686f72697a6174696f6e49643e0000c5060c487075626c69635f63726564656e7469616c731870616c6c6574144572726f720404540001183c416c72656164794174746573746564000008f8412063726564656e7469616c2077697468207468652073616d6520726f6f7420686173682068617320616c72656164792069737375656420746f2074686548737065636966696564207375626a6563742e204e6f74466f756e6400010805014e6f2063726564656e7469616c2077697468207468652073706563696669656420726f6f74206861736820686173206265656e2069737375656420746f2074686548737065636966696564207375626a6563742e3c556e61626c65546f50617946656573000204d44e6f7420656e6f75676820746f6b656e7320746f2070617920666f72207468652066656573206f7220746865206465706f7369742e30496e76616c6964496e707574000304805468652063726564656e7469616c20696e70757420697320696e76616c69642e344e6f74417574686f72697a6564000404e05468652063616c6c6572206973206e6f7420617574686f72697a656420746f20706572666f726d656420746865206f7065726174696f6e2e20496e7465726e616c000508f443617463682d616c6c20666f7220616e79206f74686572206572726f727320746861742073686f756c64206e6f742068617070656e2c207965742069742468617070656e65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909c90604184f7074696f6e04045401cd060108104e6f6e6500000010536f6d650400cd060000010000cd060c4c706f6c6b61646f745f7072696d69746976657308763248557067726164655265737472696374696f6e0001041c50726573656e7400000000d1060c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d5072656c61795f73746174655f736e617073686f74584d6573736167696e675374617465536e617073686f740000100130646d715f6d71635f686561642c014472656c61795f636861696e3a3a4861736800016472656c61795f64697370617463685f71756575655f73697a65d5060128287533322c2075333229000140696e67726573735f6368616e6e656c73d90601885665633c285061726149642c20416272696467656448726d704368616e6e656c293e00013c6567726573735f6368616e6e656c73d90601885665633c285061726149642c20416272696467656448726d704368616e6e656c293e0000d506000004081c1c00d906000002dd0600dd06000004089d01e10600e1060c4c706f6c6b61646f745f7072696d6974697665730876324c416272696467656448726d704368616e6e656c00001801306d61785f63617061636974791c010c7533320001386d61785f746f74616c5f73697a651c010c7533320001406d61785f6d6573736167655f73697a651c010c7533320001246d73675f636f756e741c010c753332000128746f74616c5f73697a651c010c7533320001206d71635f68656164610601304f7074696f6e3c486173683e0000e5060c4c706f6c6b61646f745f7072696d697469766573087632644162726964676564486f7374436f6e66696775726174696f6e00002401346d61785f636f64655f73697a651c010c7533320001486d61785f686561645f646174615f73697a651c010c7533320001586d61785f7570776172645f71756575655f636f756e741c010c7533320001546d61785f7570776172645f71756575655f73697a651c010c75333200015c6d61785f7570776172645f6d6573736167655f73697a651c010c7533320001906d61785f7570776172645f6d6573736167655f6e756d5f7065725f63616e6469646174651c010c75333200018868726d705f6d61785f6d6573736167655f6e756d5f7065725f63616e6469646174651c010c75333200016c76616c69646174696f6e5f757067726164655f636f6f6c646f776e1c012c426c6f636b4e756d62657200016076616c69646174696f6e5f757067726164655f64656c61791c012c426c6f636b4e756d6265720000e906089463756d756c75735f7072696d6974697665735f70617261636861696e5f696e686572656e74444d6573736167655175657565436861696e000004002c012452656c6179486173680000ed06042042547265654d617008044b019d01045601e906000400f106000000f106000002f50600f506000004089d01e90600f906000002fd0600fd060860706f6c6b61646f745f636f72655f7072696d6974697665734c4f7574626f756e6448726d704d65737361676504084964019d0100080124726563697069656e749d01010849640001106461746130015073705f7374643a3a7665633a3a5665633c75383e000001070c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d1870616c6c6574144572726f720404540001204c4f7665726c617070696e6755706772616465730000041501417474656d707420746f20757067726164652076616c69646174696f6e2066756e6374696f6e207768696c65206578697374696e6720757067726164652070656e64696e675050726f686962697465644279506f6c6b61646f740001044901506f6c6b61646f742063757272656e746c792070726f68696269747320746869732070617261636861696e2066726f6d20757067726164696e67206974732076616c69646174696f6e2066756e6374696f6e18546f6f426967000208450154686520737570706c6965642076616c69646174696f6e2066756e6374696f6e2068617320636f6d70696c656420696e746f206120626c6f62206c6172676572207468616e20506f6c6b61646f742069733877696c6c696e6720746f2072756e6856616c69646174696f6e446174614e6f74417661696c61626c65000304190154686520696e686572656e7420776869636820737570706c696573207468652076616c69646174696f6e206461746120646964206e6f742072756e207468697320626c6f636b74486f7374436f6e66696775726174696f6e4e6f74417661696c61626c65000404250154686520696e686572656e7420776869636820737570706c6965732074686520686f737420636f6e66696775726174696f6e20646964206e6f742072756e207468697320626c6f636b304e6f745363686564756c6564000504d84e6f2076616c69646174696f6e2066756e6374696f6e20757067726164652069732063757272656e746c79207363686564756c65642e444e6f7468696e67417574686f72697a6564000604904e6f20636f6465207570677261646520686173206265656e20617574686f72697a65642e30556e617574686f72697a6564000704bc54686520676976656e20636f6465207570677261646520686173206e6f74206265656e20617574686f72697a65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090905070000020907000907086463756d756c75735f70616c6c65745f78636d705f717565756554496e626f756e644368616e6e656c44657461696c7300000c011873656e6465729d01011850617261496400011473746174650d070130496e626f756e6453746174650001406d6573736167655f6d65746164617461110701a85665633c2852656c6179426c6f636b4e756d6265722c2058636d704d657373616765466f726d6174293e00000d07086463756d756c75735f70616c6c65745f78636d705f717565756530496e626f756e645374617465000108084f6b0000002453757370656e6465640001000011070000021507001507000004081c19070019070c48706f6c6b61646f745f70617261636861696e287072696d6974697665734458636d704d657373616765466f726d617400010c60436f6e636174656e6174656456657273696f6e656458636d0000005c436f6e636174656e61746564456e636f646564426c6f620001001c5369676e616c73000200001d07000004089d011c0021070000022507002507086463756d756c75735f70616c6c65745f78636d705f7175657565584f7574626f756e644368616e6e656c44657461696c730000140124726563697069656e749d0101185061726149640001147374617465290701344f7574626f756e6453746174650001347369676e616c735f6578697374a40110626f6f6c00012c66697273745f696e646578d8010c7531360001286c6173745f696e646578d8010c75313600002907086463756d756c75735f70616c6c65745f78636d705f7175657565344f7574626f756e645374617465000108084f6b0000002453757370656e646564000100002d07000004089d01d8003107086463756d756c75735f70616c6c65745f78636d705f71756575653c5175657565436f6e66696744617461000018014473757370656e645f7468726573686f6c641c010c75333200013864726f705f7468726573686f6c641c010c753332000140726573756d655f7468726573686f6c641c010c7533320001407468726573686f6c645f7765696768742401185765696768740001547765696768745f72657374726963745f646563617924011857656967687400016878636d705f6d61785f696e646976696475616c5f776569676874240118576569676874000035070000040c9d011c300039070c6463756d756c75735f70616c6c65745f78636d705f71756575651870616c6c6574144572726f72040454000114304661696c6564546f53656e640000046c4661696c656420746f2073656e642058434d206d6573736167652e3042616458636d4f726967696e0001043c4261642058434d206f726967696e2e1842616458636d000204344261642058434d20646174612e484261644f766572776569676874496e64657800030454426164206f76657277656967687420696e6465782e3c5765696768744f7665724c696d6974000404f850726f76696465642077656967687420697320706f737369626c79206e6f7420656e6f75676820746f206578656375746520746865206d6573736167652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909093d070c2870616c6c65745f78636d1870616c6c6574144572726f720404540001502c556e726561636861626c650000085d0154686520646573697265642064657374696e6174696f6e2077617320756e726561636861626c652c2067656e6572616c6c7920626563617573652074686572652069732061206e6f20776179206f6620726f7574696e6718746f2069742e2c53656e644661696c757265000108610154686572652077617320736f6d65206f746865722069737375652028692e652e206e6f7420746f20646f207769746820726f7574696e672920696e2073656e64696e6720746865206d6573736167652e2050657268617073a861206c61636b206f6620737061636520666f7220627566666572696e6720746865206d6573736167652e2046696c74657265640002049c546865206d65737361676520657865637574696f6e206661696c73207468652066696c7465722e48556e776569676861626c654d657373616765000304b4546865206d65737361676527732077656967687420636f756c64206e6f742062652064657465726d696e65642e6044657374696e6174696f6e4e6f74496e7665727469626c65000404f05468652064657374696e6174696f6e20604d756c74694c6f636174696f6e602070726f76696465642063616e6e6f7420626520696e7665727465642e14456d707479000504805468652061737365747320746f2062652073656e742061726520656d7074792e3843616e6e6f745265616e63686f720006043501436f756c64206e6f742072652d616e63686f72207468652061737365747320746f206465636c61726520746865206665657320666f72207468652064657374696e6174696f6e20636861696e2e34546f6f4d616e79417373657473000704c4546f6f206d616e79206173736574732068617665206265656e20617474656d7074656420666f72207472616e736665722e34496e76616c69644f726967696e000804784f726967696e20697320696e76616c696420666f722073656e64696e672e2842616456657273696f6e00090421015468652076657273696f6e206f6620746865206056657273696f6e6564602076616c75652075736564206973206e6f742061626c6520746f20626520696e7465727072657465642e2c4261644c6f636174696f6e000a08410154686520676976656e206c6f636174696f6e20636f756c64206e6f7420626520757365642028652e672e20626563617573652069742063616e6e6f742062652065787072657373656420696e2074686560646573697265642076657273696f6e206f662058434d292e384e6f537562736372697074696f6e000b04bc546865207265666572656e63656420737562736372697074696f6e20636f756c64206e6f7420626520666f756e642e44416c726561647953756273637269626564000c041101546865206c6f636174696f6e20697320696e76616c69642073696e636520697420616c726561647920686173206120737562736372697074696f6e2066726f6d2075732e30496e76616c69644173736574000d0480496e76616c696420617373657420666f7220746865206f7065726174696f6e2e284c6f7742616c616e6365000e044101546865206f776e657220646f6573206e6f74206f776e2028616c6c29206f662074686520617373657420746861742074686579207769736820746f20646f20746865206f7065726174696f6e206f6e2e30546f6f4d616e794c6f636b73000f04c0546865206173736574206f776e65722068617320746f6f206d616e79206c6f636b73206f6e207468652061737365742e4c4163636f756e744e6f74536f7665726569676e001004310154686520676976656e206163636f756e74206973206e6f7420616e206964656e7469666961626c6520736f7665726569676e206163636f756e7420666f7220616e79206c6f636174696f6e2e28466565734e6f744d65740011042901546865206f7065726174696f6e207265717569726564206665657320746f20626520706169642077686963682074686520696e69746961746f7220636f756c64206e6f74206d6565742e304c6f636b4e6f74466f756e64001204f4412072656d6f7465206c6f636b20776974682074686520636f72726573706f6e64696e67206461746120636f756c64206e6f7420626520666f756e642e14496e557365001304390154686520756e6c6f636b206f7065726174696f6e2063616e6e6f742073756363656564206265636175736520746865726520617265207374696c6c207573657273206f6620746865206c6f636b2e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090941070c4863756d756c75735f70616c6c65745f78636d1870616c6c6574144572726f7204045400010004b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909094507086063756d756c75735f70616c6c65745f646d705f717565756528436f6e6669674461746100000401386d61785f696e646976696475616c24011857656967687400004907086063756d756c75735f70616c6c65745f646d705f71756575653450616765496e6465784461746100000c0128626567696e5f757365641c012c50616765436f756e746572000120656e645f757365641c012c50616765436f756e7465720001406f7665727765696768745f636f756e7410013c4f766572776569676874496e64657800004d070000025107005107000004081c300055070c6063756d756c75735f70616c6c65745f646d705f71756575651870616c6c6574144572726f720404540001081c556e6b6e6f776e0000048c546865206d65737361676520696e64657820676976656e20697320756e6b6e6f776e2e244f7665724c696d6974000104310154686520616d6f756e74206f662077656967687420676976656e20697320706f737369626c79206e6f7420656e6f75676820666f7220657865637574696e6720746865206d6573736167652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909095907102873705f72756e74696d651c67656e657269634c756e636865636b65645f65787472696e73696348556e636865636b656445787472696e736963101c4164647265737301d9021043616c6c01a503245369676e617475726501ad04144578747261015d07000400300000005d07000004206107650769076d07710779077d07810700610710306672616d655f73797374656d28657874656e73696f6e7354636865636b5f6e6f6e5f7a65726f5f73656e64657248436865636b4e6f6e5a65726f53656e64657204045400000000650710306672616d655f73797374656d28657874656e73696f6e7348636865636b5f737065635f76657273696f6e40436865636b5370656356657273696f6e04045400000000690710306672616d655f73797374656d28657874656e73696f6e7340636865636b5f74785f76657273696f6e38436865636b547856657273696f6e040454000000006d0710306672616d655f73797374656d28657874656e73696f6e7334636865636b5f67656e6573697330436865636b47656e6573697304045400000000710710306672616d655f73797374656d28657874656e73696f6e733c636865636b5f6d6f7274616c69747938436865636b4d6f7274616c697479040454000004007507010c45726100007507102873705f72756e74696d651c67656e657269630c6572610c4572610001010420496d6d6f7274616c0000001c4d6f7274616c31040008000001001c4d6f7274616c32040008000002001c4d6f7274616c33040008000003001c4d6f7274616c34040008000004001c4d6f7274616c35040008000005001c4d6f7274616c36040008000006001c4d6f7274616c37040008000007001c4d6f7274616c38040008000008001c4d6f7274616c3904000800000900204d6f7274616c313004000800000a00204d6f7274616c313104000800000b00204d6f7274616c313204000800000c00204d6f7274616c313304000800000d00204d6f7274616c313404000800000e00204d6f7274616c313504000800000f00204d6f7274616c313604000800001000204d6f7274616c313704000800001100204d6f7274616c313804000800001200204d6f7274616c313904000800001300204d6f7274616c323004000800001400204d6f7274616c323104000800001500204d6f7274616c323204000800001600204d6f7274616c323304000800001700204d6f7274616c323404000800001800204d6f7274616c323504000800001900204d6f7274616c323604000800001a00204d6f7274616c323704000800001b00204d6f7274616c323804000800001c00204d6f7274616c323904000800001d00204d6f7274616c333004000800001e00204d6f7274616c333104000800001f00204d6f7274616c333204000800002000204d6f7274616c333304000800002100204d6f7274616c333404000800002200204d6f7274616c333504000800002300204d6f7274616c333604000800002400204d6f7274616c333704000800002500204d6f7274616c333804000800002600204d6f7274616c333904000800002700204d6f7274616c343004000800002800204d6f7274616c343104000800002900204d6f7274616c343204000800002a00204d6f7274616c343304000800002b00204d6f7274616c343404000800002c00204d6f7274616c343504000800002d00204d6f7274616c343604000800002e00204d6f7274616c343704000800002f00204d6f7274616c343804000800003000204d6f7274616c343904000800003100204d6f7274616c353004000800003200204d6f7274616c353104000800003300204d6f7274616c353204000800003400204d6f7274616c353304000800003500204d6f7274616c353404000800003600204d6f7274616c353504000800003700204d6f7274616c353604000800003800204d6f7274616c353704000800003900204d6f7274616c353804000800003a00204d6f7274616c353904000800003b00204d6f7274616c363004000800003c00204d6f7274616c363104000800003d00204d6f7274616c363204000800003e00204d6f7274616c363304000800003f00204d6f7274616c363404000800004000204d6f7274616c363504000800004100204d6f7274616c363604000800004200204d6f7274616c363704000800004300204d6f7274616c363804000800004400204d6f7274616c363904000800004500204d6f7274616c373004000800004600204d6f7274616c373104000800004700204d6f7274616c373204000800004800204d6f7274616c373304000800004900204d6f7274616c373404000800004a00204d6f7274616c373504000800004b00204d6f7274616c373604000800004c00204d6f7274616c373704000800004d00204d6f7274616c373804000800004e00204d6f7274616c373904000800004f00204d6f7274616c383004000800005000204d6f7274616c383104000800005100204d6f7274616c383204000800005200204d6f7274616c383304000800005300204d6f7274616c383404000800005400204d6f7274616c383504000800005500204d6f7274616c383604000800005600204d6f7274616c383704000800005700204d6f7274616c383804000800005800204d6f7274616c383904000800005900204d6f7274616c393004000800005a00204d6f7274616c393104000800005b00204d6f7274616c393204000800005c00204d6f7274616c393304000800005d00204d6f7274616c393404000800005e00204d6f7274616c393504000800005f00204d6f7274616c393604000800006000204d6f7274616c393704000800006100204d6f7274616c393804000800006200204d6f7274616c393904000800006300244d6f7274616c31303004000800006400244d6f7274616c31303104000800006500244d6f7274616c31303204000800006600244d6f7274616c31303304000800006700244d6f7274616c31303404000800006800244d6f7274616c31303504000800006900244d6f7274616c31303604000800006a00244d6f7274616c31303704000800006b00244d6f7274616c31303804000800006c00244d6f7274616c31303904000800006d00244d6f7274616c31313004000800006e00244d6f7274616c31313104000800006f00244d6f7274616c31313204000800007000244d6f7274616c31313304000800007100244d6f7274616c31313404000800007200244d6f7274616c31313504000800007300244d6f7274616c31313604000800007400244d6f7274616c31313704000800007500244d6f7274616c31313804000800007600244d6f7274616c31313904000800007700244d6f7274616c31323004000800007800244d6f7274616c31323104000800007900244d6f7274616c31323204000800007a00244d6f7274616c31323304000800007b00244d6f7274616c31323404000800007c00244d6f7274616c31323504000800007d00244d6f7274616c31323604000800007e00244d6f7274616c31323704000800007f00244d6f7274616c31323804000800008000244d6f7274616c31323904000800008100244d6f7274616c31333004000800008200244d6f7274616c31333104000800008300244d6f7274616c31333204000800008400244d6f7274616c31333304000800008500244d6f7274616c31333404000800008600244d6f7274616c31333504000800008700244d6f7274616c31333604000800008800244d6f7274616c31333704000800008900244d6f7274616c31333804000800008a00244d6f7274616c31333904000800008b00244d6f7274616c31343004000800008c00244d6f7274616c31343104000800008d00244d6f7274616c31343204000800008e00244d6f7274616c31343304000800008f00244d6f7274616c31343404000800009000244d6f7274616c31343504000800009100244d6f7274616c31343604000800009200244d6f7274616c31343704000800009300244d6f7274616c31343804000800009400244d6f7274616c31343904000800009500244d6f7274616c31353004000800009600244d6f7274616c31353104000800009700244d6f7274616c31353204000800009800244d6f7274616c31353304000800009900244d6f7274616c31353404000800009a00244d6f7274616c31353504000800009b00244d6f7274616c31353604000800009c00244d6f7274616c31353704000800009d00244d6f7274616c31353804000800009e00244d6f7274616c31353904000800009f00244d6f7274616c3136300400080000a000244d6f7274616c3136310400080000a100244d6f7274616c3136320400080000a200244d6f7274616c3136330400080000a300244d6f7274616c3136340400080000a400244d6f7274616c3136350400080000a500244d6f7274616c3136360400080000a600244d6f7274616c3136370400080000a700244d6f7274616c3136380400080000a800244d6f7274616c3136390400080000a900244d6f7274616c3137300400080000aa00244d6f7274616c3137310400080000ab00244d6f7274616c3137320400080000ac00244d6f7274616c3137330400080000ad00244d6f7274616c3137340400080000ae00244d6f7274616c3137350400080000af00244d6f7274616c3137360400080000b000244d6f7274616c3137370400080000b100244d6f7274616c3137380400080000b200244d6f7274616c3137390400080000b300244d6f7274616c3138300400080000b400244d6f7274616c3138310400080000b500244d6f7274616c3138320400080000b600244d6f7274616c3138330400080000b700244d6f7274616c3138340400080000b800244d6f7274616c3138350400080000b900244d6f7274616c3138360400080000ba00244d6f7274616c3138370400080000bb00244d6f7274616c3138380400080000bc00244d6f7274616c3138390400080000bd00244d6f7274616c3139300400080000be00244d6f7274616c3139310400080000bf00244d6f7274616c3139320400080000c000244d6f7274616c3139330400080000c100244d6f7274616c3139340400080000c200244d6f7274616c3139350400080000c300244d6f7274616c3139360400080000c400244d6f7274616c3139370400080000c500244d6f7274616c3139380400080000c600244d6f7274616c3139390400080000c700244d6f7274616c3230300400080000c800244d6f7274616c3230310400080000c900244d6f7274616c3230320400080000ca00244d6f7274616c3230330400080000cb00244d6f7274616c3230340400080000cc00244d6f7274616c3230350400080000cd00244d6f7274616c3230360400080000ce00244d6f7274616c3230370400080000cf00244d6f7274616c3230380400080000d000244d6f7274616c3230390400080000d100244d6f7274616c3231300400080000d200244d6f7274616c3231310400080000d300244d6f7274616c3231320400080000d400244d6f7274616c3231330400080000d500244d6f7274616c3231340400080000d600244d6f7274616c3231350400080000d700244d6f7274616c3231360400080000d800244d6f7274616c3231370400080000d900244d6f7274616c3231380400080000da00244d6f7274616c3231390400080000db00244d6f7274616c3232300400080000dc00244d6f7274616c3232310400080000dd00244d6f7274616c3232320400080000de00244d6f7274616c3232330400080000df00244d6f7274616c3232340400080000e000244d6f7274616c3232350400080000e100244d6f7274616c3232360400080000e200244d6f7274616c3232370400080000e300244d6f7274616c3232380400080000e400244d6f7274616c3232390400080000e500244d6f7274616c3233300400080000e600244d6f7274616c3233310400080000e700244d6f7274616c3233320400080000e800244d6f7274616c3233330400080000e900244d6f7274616c3233340400080000ea00244d6f7274616c3233350400080000eb00244d6f7274616c3233360400080000ec00244d6f7274616c3233370400080000ed00244d6f7274616c3233380400080000ee00244d6f7274616c3233390400080000ef00244d6f7274616c3234300400080000f000244d6f7274616c3234310400080000f100244d6f7274616c3234320400080000f200244d6f7274616c3234330400080000f300244d6f7274616c3234340400080000f400244d6f7274616c3234350400080000f500244d6f7274616c3234360400080000f600244d6f7274616c3234370400080000f700244d6f7274616c3234380400080000f800244d6f7274616c3234390400080000f900244d6f7274616c3235300400080000fa00244d6f7274616c3235310400080000fb00244d6f7274616c3235320400080000fc00244d6f7274616c3235330400080000fd00244d6f7274616c3235340400080000fe00244d6f7274616c3235350400080000ff0000790710306672616d655f73797374656d28657874656e73696f6e732c636865636b5f6e6f6e636528436865636b4e6f6e636504045400000400280120543a3a496e64657800007d0710306672616d655f73797374656d28657874656e73696f6e7330636865636b5f7765696768742c436865636b576569676874040454000000008107086870616c6c65745f7472616e73616374696f6e5f7061796d656e74604368617267655472616e73616374696f6e5061796d656e7404045400000400c101013042616c616e63654f663c543e0000941853797374656d011853797374656d401c4163636f756e7401010402000c510100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004e8205468652066756c6c206163636f756e7420696e666f726d6174696f6e20666f72206120706172746963756c6172206163636f756e742049442e3845787472696e736963436f756e7400001c040004b820546f74616c2065787472696e7369637320636f756e7420666f72207468652063757272656e7420626c6f636b2e2c426c6f636b576569676874010020180000000000000488205468652063757272656e742077656967687420666f722074686520626c6f636b2e40416c6c45787472696e736963734c656e00001c040004410120546f74616c206c656e6774682028696e2062797465732920666f7220616c6c2065787472696e736963732070757420746f6765746865722c20666f72207468652063757272656e7420626c6f636b2e24426c6f636b4861736801010405102c8000000000000000000000000000000000000000000000000000000000000000000498204d6170206f6620626c6f636b206e756d6265727320746f20626c6f636b206861736865732e3445787472696e73696344617461010104051c300400043d012045787472696e73696373206461746120666f72207468652063757272656e7420626c6f636b20286d61707320616e2065787472696e736963277320696e64657820746f206974732064617461292e184e756d626572010010200000000000000000040901205468652063757272656e7420626c6f636b206e756d626572206265696e672070726f6365737365642e205365742062792060657865637574655f626c6f636b602e28506172656e744861736801002c80000000000000000000000000000000000000000000000000000000000000000004702048617368206f66207468652070726576696f757320626c6f636b2e18446967657374010034040004f020446967657374206f66207468652063757272656e7420626c6f636b2c20616c736f2070617274206f662074686520626c6f636b206865616465722e184576656e747301004404001ca0204576656e7473206465706f736974656420666f72207468652063757272656e7420626c6f636b2e001d01204e4f54453a20546865206974656d20697320756e626f756e6420616e642073686f756c64207468657265666f7265206e657665722062652072656164206f6e20636861696e2ed020497420636f756c64206f746865727769736520696e666c6174652074686520506f562073697a65206f66206120626c6f636b2e002d01204576656e747320686176652061206c6172676520696e2d6d656d6f72792073697a652e20426f7820746865206576656e747320746f206e6f7420676f206f75742d6f662d6d656d6f7279fc206a75737420696e206361736520736f6d656f6e65207374696c6c207265616473207468656d2066726f6d2077697468696e207468652072756e74696d652e284576656e74436f756e7401001c100000000004b820546865206e756d626572206f66206576656e747320696e2074686520604576656e74733c543e60206c6973742e2c4576656e74546f70696373010104022c7d020400282501204d617070696e67206265747765656e206120746f7069632028726570726573656e74656420627920543a3a486173682920616e64206120766563746f72206f6620696e646578657394206f66206576656e747320696e2074686520603c4576656e74733c543e3e60206c6973742e00510120416c6c20746f70696320766563746f727320686176652064657465726d696e69737469632073746f72616765206c6f636174696f6e7320646570656e64696e67206f6e2074686520746f7069632e2054686973450120616c6c6f7773206c696768742d636c69656e747320746f206c6576657261676520746865206368616e67657320747269652073746f7261676520747261636b696e67206d656368616e69736d20616e64e420696e2063617365206f66206368616e67657320666574636820746865206c697374206f66206576656e7473206f6620696e7465726573742e004d01205468652076616c756520686173207468652074797065206028543a3a426c6f636b4e756d6265722c204576656e74496e646578296020626563617573652069662077652075736564206f6e6c79206a7573744d012074686520604576656e74496e64657860207468656e20696e20636173652069662074686520746f70696320686173207468652073616d6520636f6e74656e7473206f6e20746865206e65787420626c6f636b0101206e6f206e6f74696669636174696f6e2077696c6c20626520747269676765726564207468757320746865206576656e74206d69676874206265206c6f73742e484c61737452756e74696d65557067726164650000810204000455012053746f726573207468652060737065635f76657273696f6e6020616e642060737065635f6e616d6560206f66207768656e20746865206c6173742072756e74696d6520757067726164652068617070656e65642e545570677261646564546f553332526566436f756e740100a40400044d012054727565206966207765206861766520757067726164656420736f207468617420607479706520526566436f756e74602069732060753332602e2046616c7365202864656661756c7429206966206e6f742e605570677261646564546f547269706c65526566436f756e740100a40400085d012054727565206966207765206861766520757067726164656420736f2074686174204163636f756e74496e666f20636f6e7461696e73207468726565207479706573206f662060526566436f756e74602e2046616c736548202864656661756c7429206966206e6f742e38457865637574696f6e506861736500007502040004882054686520657865637574696f6e207068617365206f662074686520626c6f636b2e01890201501830426c6f636b5765696768747399026d01624fd75a00070088526a740200400102c0cd1700010700028fa54b0200d000010700e6bd4f570200f00001000002c0cd1700010700a423c0680200200101070088526a7402004001010700a2941a1d0200500002c0cd170000000004d020426c6f636b20262065787472696e7369637320776569676874733a20626173652076616c75657320616e64206c696d6974732e2c426c6f636b4c656e677468a9023000003c00000050000000500004a820546865206d6178696d756d206c656e677468206f66206120626c6f636b2028696e206279746573292e38426c6f636b48617368436f756e7410206009000000000000045501204d6178696d756d206e756d626572206f6620626c6f636b206e756d62657220746f20626c6f636b2068617368206d617070696e677320746f206b65657020286f6c64657374207072756e6564206669727374292e204462576569676874b1024040787d010000000000e1f505000000000409012054686520776569676874206f662072756e74696d65206461746162617365206f7065726174696f6e73207468652072756e74696d652063616e20696e766f6b652e1c56657273696f6eb5026103386b696c742d7370697269746e6574386b696c742d7370697269746e657401000000f82a00000000000038df6acb689907609b0400000037e397fc7c91f5e401000000bc9d89904f5b923f0100000037c8bb1350a9a2a803000000f3ff14d5ab5270590300000040fe3ad401f8959a06000000d2bc9897eed08f1503000000f78b278be53f454c02000000ab3c0572291feb8b01000000dd718d5cc53262d401000000ea93e3f16f3d69620200000026609555c065660302000000a47b7d544994c99b0100000045bfba51a310b2230100000006000000000484204765742074686520636861696e27732063757272656e742076657273696f6e2e2853533538507265666978d808260014a8205468652064657369676e61746564205353353820707265666978206f66207468697320636861696e2e0039012054686973207265706c6163657320746865202273733538466f726d6174222070726f7065727479206465636c6172656420696e2074686520636861696e20737065632e20526561736f6e20697331012074686174207468652072756e74696d652073686f756c64206b6e6f772061626f7574207468652070726566697820696e206f7264657220746f206d616b6520757365206f662069742061737020616e206964656e746966696572206f662074686520636861696e2e01c502006052616e646f6d6e657373436f6c6c656374697665466c6970016052616e646f6d6e657373436f6c6c656374697665466c6970043852616e646f6d4d6174657269616c0100c90204000c610120536572696573206f6620626c6f636b20686561646572732066726f6d20746865206c61737420383120626c6f636b73207468617420616374732061732072616e646f6d2073656564206d6174657269616c2e2054686973610120697320617272616e67656420617320612072696e672062756666657220776974682060626c6f636b5f6e756d626572202520383160206265696e672074686520696e64657820696e746f20746865206056656360206f664420746865206f6c6465737420686173682e00000000012454696d657374616d70012454696d657374616d70080c4e6f7701001020000000000000000004902043757272656e742074696d6520666f72207468652063757272656e7420626c6f636b2e244469645570646174650100a4040004b420446964207468652074696d657374616d7020676574207570646174656420696e207468697320626c6f636b3f01cd020004344d696e696d756d506572696f6410207017000000000000104d0120546865206d696e696d756d20706572696f64206265747765656e20626c6f636b732e204265776172652074686174207468697320697320646966666572656e7420746f20746865202a65787065637465642a5d0120706572696f6420746861742074686520626c6f636b2070726f64756374696f6e206170706172617475732070726f76696465732e20596f75722063686f73656e20636f6e73656e7375732073797374656d2077696c6c5d012067656e6572616c6c7920776f726b2077697468207468697320746f2064657465726d696e6520612073656e7369626c6520626c6f636b2074696d652e20652e672e20466f7220417572612c2069742077696c6c206265a020646f75626c65207468697320706572696f64206f6e2064656661756c742073657474696e67732e00021c496e6469636573011c496e646963657304204163636f756e74730001040210d1020400048820546865206c6f6f6b75702066726f6d20696e64657820746f206163636f756e742e01d5020174041c4465706f736974184000b47cf328350000000000000000000004ac20546865206465706f736974206e656564656420666f7220726573657276696e6720616e20696e6465782e01e102052042616c616e636573012042616c616e6365731434546f74616c49737375616e6365010018400000000000000000000000000000000004982054686520746f74616c20756e6974732069737375656420696e207468652073797374656d2e40496e61637469766549737375616e636501001840000000000000000000000000000000000409012054686520746f74616c20756e697473206f66206f75747374616e64696e672064656163746976617465642062616c616e636520696e207468652073797374656d2e1c4163636f756e74010104020014010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600901205468652042616c616e6365732070616c6c6574206578616d706c65206f662073746f72696e67207468652062616c616e6365206f6620616e206163636f756e742e00282023204578616d706c650034206060606e6f636f6d70696c65b02020696d706c2070616c6c65745f62616c616e6365733a3a436f6e66696720666f722052756e74696d65207b19022020202074797065204163636f756e7453746f7265203d2053746f726167654d61705368696d3c53656c663a3a4163636f756e743c52756e74696d653e2c206672616d655f73797374656d3a3a50726f76696465723c52756e74696d653e2c204163636f756e7449642c2053656c663a3a4163636f756e74446174613c42616c616e63653e3e0c20207d102060606000150120596f752063616e20616c736f2073746f7265207468652062616c616e6365206f6620616e206163636f756e7420696e20746865206053797374656d602070616c6c65742e00282023204578616d706c650034206060606e6f636f6d70696c65b02020696d706c2070616c6c65745f62616c616e6365733a3a436f6e66696720666f722052756e74696d65207b7420202074797065204163636f756e7453746f7265203d2053797374656d0c20207d102060606000510120427574207468697320636f6d657320776974682074726164656f6666732c2073746f72696e67206163636f756e742062616c616e63657320696e207468652073797374656d2070616c6c65742073746f7265736d0120606672616d655f73797374656d60206461746120616c6f6e677369646520746865206163636f756e74206461746120636f6e747261727920746f2073746f72696e67206163636f756e742062616c616e63657320696e207468652901206042616c616e636573602070616c6c65742c20776869636820757365732061206053746f726167654d61706020746f2073746f72652062616c616e6365732064617461206f6e6c792e4101204e4f54453a2054686973206973206f6e6c79207573656420696e207468652063617365207468617420746869732070616c6c6574206973207573656420746f2073746f72652062616c616e6365732e144c6f636b730101040200e502040008b820416e79206c6971756964697479206c6f636b73206f6e20736f6d65206163636f756e742062616c616e6365732e2501204e4f54453a2053686f756c64206f6e6c79206265206163636573736564207768656e2073657474696e672c206368616e67696e6720616e642066726565696e672061206c6f636b2e2052657365727665730101040200f502040004a4204e616d6564207265736572766573206f6e20736f6d65206163636f756e742062616c616e6365732e01010301780c484578697374656e7469616c4465706f736974184000a0724e18090000000000000000000004d420546865206d696e696d756d20616d6f756e7420726571756972656420746f206b65657020616e206163636f756e74206f70656e2e204d61784c6f636b731c103200000008f420546865206d6178696d756d206e756d626572206f66206c6f636b7320746861742073686f756c64206578697374206f6e20616e206163636f756e742edc204e6f74207374726963746c7920656e666f726365642c20627574207573656420666f722077656967687420657374696d6174696f6e2e2c4d617852657365727665731c1032000000040d0120546865206d6178696d756d206e756d626572206f66206e616d656420726573657276657320746861742063616e206578697374206f6e20616e206163636f756e742e01050306485472616e73616374696f6e5061796d656e7401485472616e73616374696f6e5061796d656e7408444e6578744665654d756c7469706c6965720100090340000064a7b3b6e00d0000000000000000003853746f7261676556657273696f6e01000d0304000000018004604f7065726174696f6e616c4665654d756c7469706c696572080405545901204120666565206d756c6974706c69657220666f7220604f7065726174696f6e616c602065787472696e7369637320746f20636f6d7075746520227669727475616c207469702220746f20626f6f73742074686569722c20607072696f7269747960004d0120546869732076616c7565206973206d756c7469706c656420627920746865206066696e616c5f6665656020746f206f627461696e206120227669727475616c20746970222074686174206973206c61746572f420616464656420746f20612074697020636f6d706f6e656e7420696e20726567756c617220607072696f72697479602063616c63756c6174696f6e732e4d01204974206d65616e732074686174206120604e6f726d616c60207472616e73616374696f6e2063616e2066726f6e742d72756e20612073696d696c61726c792d73697a656420604f7065726174696f6e616c6041012065787472696e736963202877697468206e6f20746970292c20627920696e636c7564696e672061207469702076616c75652067726561746572207468616e20746865207669727475616c207469702e003c20606060727573742c69676e6f726540202f2f20466f7220604e6f726d616c608c206c6574207072696f72697479203d207072696f726974795f63616c6328746970293b0054202f2f20466f7220604f7065726174696f6e616c601101206c6574207669727475616c5f746970203d2028696e636c7573696f6e5f666565202b2074697029202a204f7065726174696f6e616c4665654d756c7469706c6965723bc4206c6574207072696f72697479203d207072696f726974795f63616c6328746970202b207669727475616c5f746970293b1020606060005101204e6f746520746861742073696e636520776520757365206066696e616c5f6665656020746865206d756c7469706c696572206170706c69657320616c736f20746f2074686520726567756c61722060746970605d012073656e74207769746820746865207472616e73616374696f6e2e20536f2c206e6f74206f6e6c7920646f657320746865207472616e73616374696f6e206765742061207072696f726974792062756d702062617365646101206f6e207468652060696e636c7573696f6e5f666565602c2062757420776520616c736f20616d706c6966792074686520696d70616374206f662074697073206170706c69656420746f20604f7065726174696f6e616c6038207472616e73616374696f6e732e00071041757261011041757261082c417574686f726974696573010011030400046c205468652063757272656e7420617574686f72697479207365742e2c43757272656e74536c6f74010021032000000000000000000c80205468652063757272656e7420736c6f74206f66207468697320626c6f636b2e009420546869732077696c6c2062652073657420696e20606f6e5f696e697469616c697a65602e00000000171c53657373696f6e011c53657373696f6e1c2856616c696461746f7273010025030400047c205468652063757272656e7420736574206f662076616c696461746f72732e3043757272656e74496e64657801001c100000000004782043757272656e7420696e646578206f66207468652073657373696f6e2e345175657565644368616e6765640100a4040008390120547275652069662074686520756e6465726c79696e672065636f6e6f6d6963206964656e746974696573206f7220776569676874696e6720626568696e64207468652076616c696461746f7273a420686173206368616e67656420696e20746865207175657565642076616c696461746f72207365742e285175657565644b657973010029030400083d012054686520717565756564206b65797320666f7220746865206e6578742073657373696f6e2e205768656e20746865206e6578742073657373696f6e20626567696e732c207468657365206b657973e02077696c6c206265207573656420746f2064657465726d696e65207468652076616c696461746f7227732073657373696f6e206b6579732e4844697361626c656456616c696461746f7273010035030400148020496e6469636573206f662064697361626c65642076616c696461746f72732e003d01205468652076656320697320616c77617973206b65707420736f7274656420736f20746861742077652063616e2066696e642077686574686572206120676976656e2076616c696461746f722069733d012064697361626c6564207573696e672062696e617279207365617263682e204974206765747320636c6561726564207768656e20606f6e5f73657373696f6e5f656e64696e67602072657475726e73642061206e657720736574206f66206964656e7469746965732e204e6578744b657973000104050031030400049c20546865206e6578742073657373696f6e206b65797320666f7220612076616c696461746f722e204b65794f776e657200010405390300040004090120546865206f776e6572206f662061206b65792e20546865206b65792069732074686520604b657954797065496460202b2074686520656e636f646564206b65792e014103018400014503164050617261636861696e5374616b696e67014050617261636861696e5374616b696e6740544d617853656c656374656443616e6469646174657301001c100000000004090120546865206d6178696d756d206e756d626572206f6620636f6c6c61746f722063616e646964617465732073656c6563746564206174206561636820726f756e642e14526f756e640100490350000000000000000000000000140000000000000004e82043757272656e7420726f756e64206e756d62657220616e64206e65787420726f756e64207363686564756c6564207472616e736974696f6e2e384c61737444656c65676174696f6e01010405004d03200000000000000000140d012044656c65676174696f6e20696e666f726d6174696f6e20666f7220746865206c61746573742073657373696f6e20696e20776869636820612064656c656761746f722c2064656c6567617465642e000501204974206d6170732066726f6d20616e206163636f756e7420746f20746865206e756d626572206f662064656c65676174696f6e7320696e20746865206c617374982073657373696f6e20696e2077686963682074686579202872652d2964656c6567617465642e3844656c656761746f7253746174650001040500510304000c802044656c65676174696f6e207374616b696e6720696e666f726d6174696f6e2e00cc204974206d6170732066726f6d20616e206163636f756e7420746f206974732064656c65676174696f6e2064657461696c732e3443616e646964617465506f6f6c00010405005503040010a420546865207374616b696e6720696e666f726d6174696f6e20666f7220612063616e6469646174652e00b0204974206d6170732066726f6d20616e206163636f756e7420746f2069747320696e666f726d6174696f6e2eb8204d6f72656f7665722c20697420636f756e747320746865206e756d626572206f662063616e646964617465732e5c436f756e746572466f7243616e646964617465506f6f6c01001c100000000004ac436f756e74657220666f72207468652072656c6174656420636f756e7465642073746f72616765206d617048546f74616c436f6c6c61746f725374616b650100690380000000000000000000000000000000000000000000000000000000000000000014f420546f74616c2066756e6473206c6f636b656420746f206261636b207468652063757272656e746c792073656c656374656420636f6c6c61746f72732ed0205468652073756d206f6620616c6c20636f6c6c61746f7220616e642074686569722064656c656761746f72207374616b65732e002101204e6f74653a20546865726520617265206d6f72652066756e6473206c6f636b656420627920746869732070616c6c65742c2073696e636520746865206261636b696e6720666f720901206e6f6e20636f6c6c6174696e672063616e64696461746573206973206e6f7420696e636c7564656420696e205b546f74616c436f6c6c61746f725374616b655d2e34546f7043616e6469646174657301006d03040028e82054686520636f6c6c61746f722063616e64696461746573207769746820746865206869676865737420616d6f756e74206f66207374616b652e00190120456163682074696d6520746865207374616b65206f66206120636f6c6c61746f7220697320696e637265617365642c20697420697320636865636b65642077686574686572050120746869732070757368657320616e6f746865722063616e646964617465206f7574206f6620746865206c6973742e205768656e20746865207374616b652069732101207265647563656420686f77657665722c206974206973206e6f7420636865636b656420696620616e6f746865722063616e64696461746520686173206d6f7265207374616b652c11012073696e6365207468697320776f756c64207265717569726520697465726174696e67206f7665722074686520656e74697265205b43616e646964617465506f6f6c5d2e001501205468657265206d75737420616c77617973206265206d6f72652063616e64696461746573207468616e205b4d617853656c656374656443616e646964617465735d20736f0d012074686174206120636f6c6c61746f722063616e2064726f70206f7574206f662074686520636f6c6c61746f7220736574206279207265647563696e672074686569721c207374616b652e3c496e666c6174696f6e436f6e66696701007503c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000046420496e666c6174696f6e20636f6e66696775726174696f6e2e24556e7374616b696e670101040500810304001088205468652066756e64732077616974696e6720746f20626520756e7374616b65642e001d01204974206d6170732066726f6d206163636f756e747320746f20616c6c207468652066756e64732061646472657373656420746f207468656d20696e20746865206675747572652020626c6f636b732e644d6178436f6c6c61746f7243616e6469646174655374616b65010018400000000000000000000000000000000004cc20546865206d6178696d756d20616d6f756e74206120636f6c6c61746f722063616e6469646174652063616e207374616b652e4c4c617374526577617264526564756374696f6e010010200000000000000000140d0120546865207965617220696e20776869636820746865206c617374206175746f6d6174696320726564756374696f6e206f66207468652072657761726420726174657328206f636375727265642e00250120497420737461727473206174207a65726f2061742067656e6573697320616e6420696e6372656d656e7473206279206f6e6520657665727920424c4f434b535f5045525f5945415234206d616e7920626c6f636b732e38426c6f636b73417574686f726564010104050010200000000000000000080d0120546865206e756d626572206f6620617574686f72656420626c6f636b7320666f7220636f6c6c61746f72732e20497420697320757064617465642076696120746865b020606e6f74655f617574686f726020686f6f6b207768656e20617574686f72696e67206120626c6f636b202e38426c6f636b73526577617264656401010405001020000000000000000024210120546865206e756d626572206f6620626c6f636b7320666f7220776869636820726577617264732068617665206265656e20636c61696d656420627920616e20616464726573732e00190120466f7220636f6c6c61746f72732c20746869732063616e206265206174206d6f737420426c6f636b73417574686f7265642e2049742069732075706461746564207768656ecc20696e6372656d656e74696e6720636f6c6c61746f7220726577617264732c20656974686572207768656e2063616c6c696e67e02060696e635f636f6c6c61746f725f7265776172647360206f72207570646174696e67207468652060496e666c6174696f6e496e666f602e00250120466f722064656c656761746f72732c20746869732063616e206265206174206d6f737420426c6f636b73417574686f726564206f662074686520636f6c6c61746f722e497420697305012075706461746564207768656e20696e6372656d656e74696e672064656c656761746f7220726577617264732c20656974686572207768656e2063616c6c696e67e42060696e635f64656c656761746f725f7265776172647360206f72207570646174696e67207468652060496e666c6174696f6e496e666f602e1c5265776172647301010405001840000000000000000000000000000000000c01012054686520616363756d756c61746564207265776172647320666f7220636f6c6c61746f722063616e6469646174657320616e642064656c656761746f72732e001101204974206d6170732066726f6d206163636f756e747320746f20746865697220746f74616c20726577617264732073696e636520746865206c617374207061796f75742e34466f7263654e6577526f756e640100a404000001910301883c444d696e426c6f636b73506572526f756e6410202c0100000000000004d4204d696e696d756d206e756d626572206f6620626c6f636b732076616c69646174696f6e20726f756e64732063616e206c6173742e5444656661756c74426c6f636b73506572526f756e641020580200000000000008fc2044656661756c74206e756d626572206f6620626c6f636b732076616c69646174696f6e20726f756e6473206c6173742c2061732073657420696e207468655c2067656e6573697320636f6e66696775726174696f6e2e345374616b654475726174696f6e1020e0c40000000000000c0501204e756d626572206f6620626c6f636b7320666f7220776869636820756e7374616b65642062616c616e63652077696c6c207374696c6c206265206c6f636b6564f0206265666f72652069742063616e20626520756e6c6f636b6564206279206163746976656c792063616c6c696e67207468652065787472696e7369634c2060756e6c6f636b5f756e7374616b6564602e3845786974517565756544656c61791c1002000000080901204e756d626572206f6620726f756e6473206120636f6c6c61746f722068617320746f207374617920616374697665206166746572207375626d697474696e672061c4207265717565737420746f206c656176652074686520736574206f6620636f6c6c61746f722063616e646964617465732e304d696e436f6c6c61746f72731c1010000000080d01204d696e696d756d206e756d626572206f6620636f6c6c61746f72732073656c65637465642066726f6d2074686520736574206f662063616e64696461746573206174602065766572792076616c69646174696f6e20726f756e642e504d696e5265717569726564436f6c6c61746f72731c1004000000081101204d696e696d756d206e756d626572206f6620636f6c6c61746f72732077686963682063616e6e6f74206c6561766520746865206e6574776f726b2069662074686572653c20617265206e6f206f74686572732e584d617844656c65676174696f6e73506572526f756e641c1001000000140101204d6178696d756d206e756d626572206f662064656c65676174696f6e732077686963682063616e206265206d6164652077697468696e207468652073616d651c20726f756e642e000d01204e4f54453a20546f2070726576656e742072652d64656c65676174696f6e2d7265776172642061747461636b732c2077652073686f756c64206b65657020746869732c20746f206265206f6e652e604d617844656c656761746f7273506572436f6c6c61746f721c102300000004e4204d6178696d756d206e756d626572206f662064656c656761746f727320612073696e676c6520636f6c6c61746f722063616e20686176652e404d6178546f7043616e646964617465731c104b00000004a0204d6178696d756d2073697a65206f662074686520746f702063616e64696461746573207365742e404d696e436f6c6c61746f725374616b6518400000e8890423c78a0000000000000000080901204d696e696d756d207374616b6520726571756972656420666f7220616e79206163636f756e7420746f20626520656c65637465642061732076616c696461746f723420666f72206120726f756e642e644d696e436f6c6c61746f7243616e6469646174655374616b6518400000e8890423c78a0000000000000000080501204d696e696d756d207374616b6520726571756972656420666f7220616e79206163636f756e7420746f20626520616464656420746f2074686520736574206f66302063616e646964617465732e444d696e44656c656761746f725374616b651840000082dfe40d4700000000000000000004f8204d696e696d756d207374616b6520726571756972656420666f7220616e79206163636f756e7420746f206265636f6d6520612064656c656761746f722e484d6178556e7374616b6552657175657374731c100a00000028e8204d6178206e756d626572206f6620636f6e63757272656e742061637469766520756e7374616b696e67207265717565737473206265666f72652c20756e6c6f636b696e672e001501204e4f54453a20546f2070726f7465637420616761696e737420697272656d6f766162696c697479206f6620612063616e646964617465206f722064656c656761746f722cf4207765206f6e6c7920616c6c6f7720666f72204d6178556e7374616b655265717565737473202d2031206d616e79206d616e75616c20756e7374616b6501012072657175657374732e20546865206c617374206f6e6520736572766573206173206120706c616365686f6c64657220666f7220746865206361736573206f66f02063616c6c696e672065697468657220606b69636b5f64656c656761746f72602c20666f7263655f72656d6f76655f63616e64696461746560206f7209012060657865637574655f6c656176655f63616e64696461746573602e204f74686572776973652c2061207573657220636f756c64206d6178206f75742074686569720d0120756e7374616b6520726571756573747320616e642070726576656e74207468656d73656c7665732066726f6d206265696e67206b69636b65642066726f6d20746865f020736574206f662063616e646964617465732f64656c656761746f727320756e74696c207468657920756e6c6f636b2074686569722066756e64732e484e6574776f726b5265776172645374617274102048a3c800000000000c110120546865207374617274696e6720626c6f636b206e756d62657220666f7220746865206e6574776f726b20726577617264732e204f6e6365207468652063757272656e74090120626c6f636b206e756d626572206578636565647320746869732073746172742c207468652062656e65666963696172792077696c6c2072656365697665207468658420636f6e666967757265642072657761726420696e206561636820626c6f636b2e444e6574776f726b526577617264526174658c2000008a5d784563010c0d0120546865207261746520696e2070657263656e7420666f7220746865206e6574776f726b207265776172647320776869636820617265206261736564206f6e207468650901206d6178696d756d206e756d626572206f6620636f6c6c61746f727320616e6420746865206d6178696d756d20616d6f756e74206120636f6c6c61746f722063616e1c207374616b652e0195031528417574686f72736869700128417574686f72736869700418417574686f720000000400046420417574686f72206f662063757272656e7420626c6f636b2e00000000141c41757261457874011c41757261457874042c417574686f72697469657301001103040014942053657276657320617320636163686520666f722074686520617574686f7269746965732e0071012054686520617574686f72697469657320696e204175526120617265206f7665727772697474656e20696e20606f6e5f696e697469616c697a6560207768656e2077652073776974636820746f2061206e65772073657373696f6e2c790120627574207765207265717569726520746865206f6c6420617574686f72697469657320746f2076657269667920746865207365616c207768656e2076616c69646174696e67206120506f562e20546869732077696c6c20616c77617973f0206265207570646174656420746f20746865206c6174657374204175526120617574686f72697469657320696e20606f6e5f66696e616c697a65602e00000000182444656d6f6372616379012444656d6f63726163792c3c5075626c696350726f70436f756e7401001c100000000004f420546865206e756d626572206f6620287075626c6963292070726f706f73616c7320746861742068617665206265656e206d61646520736f206661722e2c5075626c696350726f707301009903040004050120546865207075626c69632070726f706f73616c732e20556e736f727465642e20546865207365636f6e64206974656d206973207468652070726f706f73616c2e244465706f7369744f66000104051c5d0504000c842054686f73652077686f2068617665206c6f636b65642061206465706f7369742e00d82054574f582d4e4f54453a20536166652c20617320696e6372656173696e6720696e7465676572206b6579732061726520736166652e3c5265666572656e64756d436f756e7401001c100000000004310120546865206e6578742066726565207265666572656e64756d20696e6465782c20616b6120746865206e756d626572206f66207265666572656e6461207374617274656420736f206661722e344c6f77657374556e62616b656401001c100000000008250120546865206c6f77657374207265666572656e64756d20696e64657820726570726573656e74696e6720616e20756e62616b6564207265666572656e64756d2e20457175616c20746fdc20605265666572656e64756d436f756e74602069662074686572652069736e2774206120756e62616b6564207265666572656e64756d2e405265666572656e64756d496e666f4f66000104051c650504000cb420496e666f726d6174696f6e20636f6e6365726e696e6720616e7920676976656e207265666572656e64756d2e0009012054574f582d4e4f54453a205341464520617320696e646578657320617265206e6f7420756e64657220616e2061747461636b6572e280997320636f6e74726f6c2e20566f74696e674f6601010405007105e800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105d0120416c6c20766f74657320666f72206120706172746963756c617220766f7465722e2057652073746f7265207468652062616c616e636520666f7220746865206e756d626572206f6620766f74657320746861742077655d012068617665207265636f726465642e20546865207365636f6e64206974656d2069732074686520746f74616c20616d6f756e74206f662064656c65676174696f6e732c20746861742077696c6c2062652061646465642e00e82054574f582d4e4f54453a205341464520617320604163636f756e7449646073206172652063727970746f2068617368657320616e797761792e544c6173745461626c656457617345787465726e616c0100a40400085901205472756520696620746865206c617374207265666572656e64756d207461626c656420776173207375626d69747465642065787465726e616c6c792e2046616c7365206966206974207761732061207075626c6963282070726f706f73616c2e304e65787445787465726e616c00008905040010590120546865207265666572656e64756d20746f206265207461626c6564207768656e6576657220697420776f756c642062652076616c696420746f207461626c6520616e2065787465726e616c2070726f706f73616c2e550120546869732068617070656e73207768656e2061207265666572656e64756d206e6565647320746f206265207461626c656420616e64206f6e65206f662074776f20636f6e646974696f6e7320617265206d65743aa4202d20604c6173745461626c656457617345787465726e616c60206973206066616c7365603b206f7268202d20605075626c696350726f70736020697320656d7074792e24426c61636b6c697374000104062c8d0504000851012041207265636f7264206f662077686f207665746f656420776861742e204d6170732070726f706f73616c206861736820746f206120706f737369626c65206578697374656e7420626c6f636b206e756d626572e82028756e74696c207768656e206974206d6179206e6f742062652072657375626d69747465642920616e642077686f207665746f65642069742e3443616e63656c6c6174696f6e73010104062ca40400042901205265636f7264206f6620616c6c2070726f706f73616c7320746861742068617665206265656e207375626a65637420746f20656d657267656e63792063616e63656c6c6174696f6e2e01a9030190303c456e6163746d656e74506572696f641020201c00000000000014e82054686520706572696f64206265747765656e20612070726f706f73616c206265696e6720617070726f76656420616e6420656e61637465642e0031012049742073686f756c642067656e6572616c6c792062652061206c6974746c65206d6f7265207468616e2074686520756e7374616b6520706572696f6420746f20656e737572652074686174510120766f74696e67207374616b657273206861766520616e206f70706f7274756e69747920746f2072656d6f7665207468656d73656c7665732066726f6d207468652073797374656d20696e207468652063617365b4207768657265207468657920617265206f6e20746865206c6f73696e672073696465206f66206120766f74652e304c61756e6368506572696f641020e0c400000000000004e420486f77206f6674656e2028696e20626c6f636b7329206e6577207075626c6963207265666572656e646120617265206c61756e636865642e30566f74696e67506572696f641020e0c400000000000004b820486f77206f6674656e2028696e20626c6f636b732920746f20636865636b20666f72206e657720766f7465732e44566f74654c6f636b696e67506572696f641020e0c4000000000000109020546865206d696e696d756d20706572696f64206f6620766f7465206c6f636b696e672e0065012049742073686f756c64206265206e6f2073686f72746572207468616e20656e6163746d656e7420706572696f6420746f20656e73757265207468617420696e207468652063617365206f6620616e20617070726f76616c2c49012074686f7365207375636365737366756c20766f7465727320617265206c6f636b656420696e746f2074686520636f6e73657175656e636573207468617420746865697220766f74657320656e7461696c2e384d696e696d756d4465706f73697418400080c6a47e8d0300000000000000000004350120546865206d696e696d756d20616d6f756e7420746f20626520757365642061732061206465706f73697420666f722061207075626c6963207265666572656e64756d2070726f706f73616c2e38496e7374616e74416c6c6f776564a404010c550120496e64696361746f7220666f72207768657468657220616e20656d657267656e6379206f726967696e206973206576656e20616c6c6f77656420746f2068617070656e2e20536f6d6520636861696e73206d617961012077616e7420746f207365742074686973207065726d616e656e746c7920746f206066616c7365602c206f7468657273206d61792077616e7420746f20636f6e646974696f6e206974206f6e207468696e67732073756368a020617320616e207570677261646520686176696e672068617070656e656420726563656e746c792e5446617374547261636b566f74696e67506572696f641020840300000000000004ec204d696e696d756d20766f74696e6720706572696f6420616c6c6f77656420666f72206120666173742d747261636b207265666572656e64756d2e34436f6f6c6f6666506572696f641020e0c400000000000004610120506572696f6420696e20626c6f636b7320776865726520616e2065787465726e616c2070726f706f73616c206d6179206e6f742062652072652d7375626d6974746564206166746572206265696e67207665746f65642e204d6178566f7465731c106400000010b020546865206d6178696d756d206e756d626572206f6620766f74657320666f7220616e206163636f756e742e00d420416c736f207573656420746f20636f6d70757465207765696768742c20616e206f7665726c79206269672076616c75652063616e1501206c65616420746f2065787472696e7369632077697468207665727920626967207765696768743a20736565206064656c65676174656020666f7220696e7374616e63652e304d617850726f706f73616c731c1064000000040d0120546865206d6178696d756d206e756d626572206f66207075626c69632070726f706f73616c7320746861742063616e20657869737420617420616e792074696d652e2c4d61784465706f736974731c1064000000041d0120546865206d6178696d756d206e756d626572206f66206465706f736974732061207075626c69632070726f706f73616c206d6179206861766520617420616e792074696d652e384d6178426c61636b6c69737465641c106400000004d820546865206d6178696d756d206e756d626572206f66206974656d732077686963682063616e20626520626c61636b6c69737465642e0191051e1c436f756e63696c011c436f756e63696c182450726f706f73616c7301009505040004902054686520686173686573206f6620746865206163746976652070726f706f73616c732e2850726f706f73616c4f66000104062ca503040004cc2041637475616c2070726f706f73616c20666f72206120676976656e20686173682c20696620697427732063757272656e742e18566f74696e67000104062c9905040004b420566f746573206f6e206120676976656e2070726f706f73616c2c206966206974206973206f6e676f696e672e3450726f706f73616c436f756e7401001c100000000004482050726f706f73616c7320736f206661722e1c4d656d62657273010025030400043901205468652063757272656e74206d656d62657273206f662074686520636f6c6c6563746976652e20546869732069732073746f72656420736f7274656420286a7573742062792076616c7565292e145072696d65000000040004650120546865207072696d65206d656d62657220746861742068656c70732064657465726d696e65207468652064656661756c7420766f7465206265686176696f7220696e2063617365206f6620616273656e746174696f6e732e01b50301a000019d051f48546563686e6963616c436f6d6d69747465650148546563686e6963616c436f6d6d6974746565182450726f706f73616c730100a105040004902054686520686173686573206f6620746865206163746976652070726f706f73616c732e2850726f706f73616c4f66000104062ca503040004cc2041637475616c2070726f706f73616c20666f72206120676976656e20686173682c20696620697427732063757272656e742e18566f74696e67000104062c9905040004b420566f746573206f6e206120676976656e2070726f706f73616c2c206966206974206973206f6e676f696e672e3450726f706f73616c436f756e7401001c100000000004482050726f706f73616c7320736f206661722e1c4d656d62657273010025030400043901205468652063757272656e74206d656d62657273206f662074686520636f6c6c6563746976652e20546869732069732073746f72656420736f7274656420286a7573742062792076616c7565292e145072696d65000000040004650120546865207072696d65206d656d62657220746861742068656c70732064657465726d696e65207468652064656661756c7420766f7465206265686176696f7220696e2063617365206f6620616273656e746174696f6e732e01c50301b00001a505204c546563686e6963616c4d656d62657273686970014c546563686e6963616c4d656d62657273686970081c4d656d626572730100a905040004c8205468652063757272656e74206d656d626572736869702c2073746f72656420617320616e206f726465726564205665632e145072696d65000000040004a4205468652063757272656e74207072696d65206d656d6265722c206966206f6e65206578697374732e01c90301b40001ad052220547265617375727901205472656173757279103450726f706f73616c436f756e7401001c100000000004a4204e756d626572206f662070726f706f73616c7320746861742068617665206265656e206d6164652e2450726f706f73616c73000104051cb1050400047c2050726f706f73616c7320746861742068617665206265656e206d6164652e2c4465616374697661746564010018400000000000000000000000000000000004f02054686520616d6f756e7420776869636820686173206265656e207265706f7274656420617320696e61637469766520746f2043757272656e63792e24417070726f76616c730100b505040004f82050726f706f73616c20696e646963657320746861742068617665206265656e20617070726f76656420627574206e6f742079657420617761726465642e01cd0301b81c3050726f706f73616c426f6e64b9051050c30000085501204672616374696f6e206f6620612070726f706f73616c27732076616c756520746861742073686f756c6420626520626f6e64656420696e206f7264657220746f20706c616365207468652070726f706f73616c2e110120416e2061636365707465642070726f706f73616c2067657473207468657365206261636b2e20412072656a65637465642070726f706f73616c20646f6573206e6f742e4c50726f706f73616c426f6e644d696e696d756d1840000082dfe40d47000000000000000000044901204d696e696d756d20616d6f756e74206f662066756e647320746861742073686f756c6420626520706c6163656420696e2061206465706f73697420666f72206d616b696e6720612070726f706f73616c2e4c50726f706f73616c426f6e644d6178696d756dbd050400044901204d6178696d756d20616d6f756e74206f662066756e647320746861742073686f756c6420626520706c6163656420696e2061206465706f73697420666f72206d616b696e6720612070726f706f73616c2e2c5370656e64506572696f641020c0a8000000000000048820506572696f64206265747765656e2073756363657373697665207370656e64732e104275726eb90510000000000411012050657263656e74616765206f662073706172652066756e64732028696620616e7929207468617420617265206275726e7420706572207370656e6420706572696f642e2050616c6c65744964c105206b696c742f7473790419012054686520747265617375727927732070616c6c65742069642c207573656420666f72206465726976696e672069747320736f7665726569676e206163636f756e742049442e304d6178417070726f76616c731c10640000000c150120546865206d6178696d756d206e756d626572206f6620617070726f76616c7320746861742063616e207761697420696e20746865207370656e64696e672071756575652e004d01204e4f54453a205468697320706172616d6574657220697320616c736f20757365642077697468696e2074686520426f756e746965732050616c6c657420657874656e73696f6e20696620656e61626c65642e01c505231c5574696c6974790001d10301bc044c626174636865645f63616c6c735f6c696d69741c10aa2a000004a820546865206c696d6974206f6e20746865206e756d626572206f6620626174636865642063616c6c732e01c905281c56657374696e67011c56657374696e67081c56657374696e670001040200cd05040004d820496e666f726d6174696f6e20726567617264696e67207468652076657374696e67206f66206120676976656e206163636f756e742e3853746f7261676556657273696f6e0100d50504000c7c2053746f726167652076657273696f6e206f66207468652070616c6c65742e003101204e6577206e6574776f726b732073746172742077697468206c61746573742076657273696f6e2c2061732064657465726d696e6564206279207468652067656e65736973206275696c642e01f90301c008444d696e5665737465645472616e73666572184000407a10f35a0000000000000000000004e820546865206d696e696d756d20616d6f756e74207472616e7366657272656420746f2063616c6c20607665737465645f7472616e73666572602e4c4d617856657374696e675363686564756c65731c101c0000000001d90529245363686564756c657201245363686564756c65720c3c496e636f6d706c65746553696e6365000010040000184167656e64610101040510dd050400044d01204974656d7320746f2062652065786563757465642c20696e64657865642062792074686520626c6f636b206e756d626572207468617420746865792073686f756c64206265206578656375746564206f6e2e184c6f6f6b75700001040504c8040010f8204c6f6f6b75702066726f6d2061206e616d6520746f2074686520626c6f636b206e756d62657220616e6420696e646578206f6620746865207461736b2e00590120466f72207633202d3e207634207468652070726576696f75736c7920756e626f756e646564206964656e7469746965732061726520426c616b65322d3235362068617368656420746f20666f726d2074686520763430206964656e7469746965732e01010401c408344d6178696d756d57656967687424280700a0db215d0200000104290120546865206d6178696d756d207765696768742074686174206d6179206265207363686564756c65642070657220626c6f636b20666f7220616e7920646973706174636861626c65732e504d61785363686564756c6564506572426c6f636b1c1032000000041d0120546865206d6178696d756d206e756d626572206f66207363686564756c65642063616c6c7320696e2074686520717565756520666f7220612073696e676c6520626c6f636b2e01ed052a1450726f7879011450726f7879081c50726f786965730101040500f1054400000000000000000000000000000000000845012054686520736574206f66206163636f756e742070726f786965732e204d61707320746865206163636f756e74207768696368206861732064656c65676174656420746f20746865206163636f756e7473210120776869636820617265206265696e672064656c65676174656420746f2c20746f67657468657220776974682074686520616d6f756e742068656c64206f6e206465706f7369742e34416e6e6f756e63656d656e74730101040500010644000000000000000000000000000000000004ac2054686520616e6e6f756e63656d656e7473206d616465206279207468652070726f787920286b6579292e01090401d0184050726f78794465706f7369744261736518400020f7a54b330000000000000000000010110120546865206261736520616d6f756e74206f662063757272656e6379206e656564656420746f207265736572766520666f72206372656174696e6720612070726f78792e00010120546869732069732068656c6420666f7220616e206164646974696f6e616c2073746f72616765206974656d2077686f73652076616c75652073697a652069732501206073697a656f662842616c616e6365296020627974657320616e642077686f7365206b65792073697a65206973206073697a656f66284163636f756e74496429602062797465732e4850726f78794465706f736974466163746f72184000f4a92b80010000000000000000000014bc2054686520616d6f756e74206f662063757272656e6379206e6565646564207065722070726f78792061646465642e00350120546869732069732068656c6420666f7220616464696e6720333220627974657320706c757320616e20696e7374616e6365206f66206050726f78795479706560206d6f726520696e746f20616101207072652d6578697374696e672073746f726167652076616c75652e20546875732c207768656e20636f6e6669677572696e67206050726f78794465706f736974466163746f7260206f6e652073686f756c642074616b65f420696e746f206163636f756e7420603332202b2070726f78795f747970652e656e636f646528292e6c656e282960206279746573206f6620646174612e284d617850726f786965731c100a00000004f020546865206d6178696d756d20616d6f756e74206f662070726f7869657320616c6c6f77656420666f7220612073696e676c65206163636f756e742e284d617850656e64696e671c100a00000004450120546865206d6178696d756d20616d6f756e74206f662074696d652d64656c6179656420616e6e6f756e63656d656e747320746861742061726520616c6c6f77656420746f2062652070656e64696e672e5c416e6e6f756e63656d656e744465706f7369744261736518400020f7a54b330000000000000000000010310120546865206261736520616d6f756e74206f662063757272656e6379206e656564656420746f207265736572766520666f72206372656174696e6720616e20616e6e6f756e63656d656e742e00490120546869732069732068656c64207768656e2061206e65772073746f72616765206974656d20686f6c64696e672061206042616c616e636560206973206372656174656420287479706963616c6c7920313620206279746573292e64416e6e6f756e63656d656e744465706f736974466163746f72184000e8535700030000000000000000000010d42054686520616d6f756e74206f662063757272656e6379206e65656465642070657220616e6e6f756e63656d656e74206d6164652e00590120546869732069732068656c6420666f7220616464696e6720616e20604163636f756e744964602c2060486173686020616e642060426c6f636b4e756d6265726020287479706963616c6c79203638206279746573298c20696e746f2061207072652d6578697374696e672073746f726167652076616c75652e0111062b20507265696d6167650120507265696d6167650824537461747573466f72000104062c15060400049020546865207265717565737420737461747573206f66206120676976656e20686173682e2c507265696d616765466f72000104062106250604000001110401dc000129062c38546970734d656d626572736869700138546970734d656d62657273686970081c4d656d626572730100a905040004c8205468652063757272656e74206d656d626572736869702c2073746f72656420617320616e206f726465726564205665632e145072696d65000000040004a4205468652063757272656e74207072696d65206d656d6265722c206966206f6e65206578697374732e01150401e000012d062d1054697073011054697073081054697073000104052c310604000c650120546970734d6170207468617420617265206e6f742079657420636f6d706c657465642e204b65796564206279207468652068617368206f66206028726561736f6e2c2077686f29602066726f6d207468652076616c75652e3d012054686973206861732074686520696e73656375726520656e756d657261626c6520686173682066756e6374696f6e2073696e636520746865206b657920697473656c6620697320616c7265616479802067756172616e7465656420746f20626520612073656375726520686173682e1c526561736f6e73000104062c3004000849012053696d706c6520707265696d616765206c6f6f6b75702066726f6d2074686520726561736f6e2773206861736820746f20746865206f726967696e616c20646174612e20416761696e2c2068617320616e610120696e73656375726520656e756d657261626c6520686173682073696e636520746865206b65792069732067756172616e7465656420746f2062652074686520726573756c74206f6620612073656375726520686173682e01190401e4144c4d6178696d756d526561736f6e4c656e6774681c10004000000c88204d6178696d756d2061636365707461626c6520726561736f6e206c656e6774682e0065012042656e63686d61726b7320646570656e64206f6e20746869732076616c75652c206265207375726520746f2075706461746520776569676874732066696c65207768656e206368616e67696e6720746869732076616c756548446174614465706f73697450657242797465184000743ba40b00000000000000000000000461012054686520616d6f756e742068656c64206f6e206465706f7369742070657220627974652077697468696e2074686520746970207265706f727420726561736f6e206f7220626f756e7479206465736372697074696f6e2e30546970436f756e74646f776e1020201c0000000000000445012054686520706572696f6420666f722077686963682061207469702072656d61696e73206f70656e20616674657220697320686173206163686965766564207468726573686f6c6420746970706572732e3454697046696e646572734665653d060414043501205468652070657263656e74206f66207468652066696e616c2074697020776869636820676f657320746f20746865206f726967696e616c207265706f72746572206f6620746865207469702e505469705265706f72744465706f73697442617365184000f45628fa320000000000000000000004d42054686520616d6f756e742068656c64206f6e206465706f73697420666f7220706c6163696e67206120746970207265706f72742e0141062e144374797065011443747970650418437479706573000104022c450604001060204354797065732073746f726564206f6e20636861696e2e001901204974206d6170732066726f6d2061204354797065206861736820746f206974732063726561746f7220616e6420626c6f636b206e756d62657220696e207768696368206974342077617320637265617465642e011d0401e8000149063d2c4174746573746174696f6e012c4174746573746174696f6e08304174746573746174696f6e73000104022c4d0604000c78204174746573746174696f6e732073746f726564206f6e20636861696e2e00cc204974206d6170732066726f6d206120636c61696d206861736820746f207468652066756c6c206174746573746174696f6e2e5045787465726e616c4174746573746174696f6e7301010805025506a404000ca02044656c656761746564206174746573746174696f6e732073746f726564206f6e20636861696e2e00e8204974206d6170732066726f6d20612064656c65676174696f6e20494420746f206120766563746f72206f6620636c61696d206861736865732e01210401ec081c4465706f7369741840001cc9dd006e0000000000000000000004e420546865206465706f736974207468617420697320726571756972656420666f722073746f72696e6720616e206174746573746174696f6e2e604d617844656c6567617465644174746573746174696f6e731c10e803000008090120546865206d6178696d756d206e756d626572206f662064656c656761746564206174746573746174696f6e732077686963682063616e206265206d61646520627954207468652073616d652064656c65676174696f6e2e0159063e2844656c65676174696f6e012844656c65676174696f6e083c44656c65676174696f6e4e6f646573000104022c5d0604000c882044656c65676174696f6e206e6f6465732073746f726564206f6e20636861696e2e00b0204974206d6170732066726f6d2061206e6f646520494420746f20746865206e6f64652064657461696c732e5444656c65676174696f6e4869657261726368696573000104022c710604000ca02044656c65676174696f6e2068696572617263686965732073746f726564206f6e20636861696e2e00dc204974206d61707320666f7220612028726f6f7429206e6f646520494420746f20746865206869657261726368792064657461696c732e01350401f8181c4465706f73697418400080c6a47e8d0300000000000000000004dc20546865206465706f736974207468617420697320726571756972656420666f722073746f72696e6720612064656c65676174696f6e2e584d61785369676e6174757265427974654c656e677468d808400000384d61785265766f636174696f6e731c1005000000047c204d6178696d756d206e756d626572206f66207265766f636174696f6e732e2c4d617852656d6f76616c731c100500000004f4204d6178696d756d206e756d626572206f662072656d6f76616c732e2053686f756c642062652073616d65206173204d61785265766f636174696f6e733c4d6178506172656e74436865636b731c1005000000080d01204d6178696d756d206e756d626572206f6620757077617264732074726176657273616c73206f66207468652064656c65676174696f6e20747265652066726f6d2061f0206e6f646520746f2074686520726f6f7420616e64207468757320746865206465707468206f66207468652064656c65676174696f6e20747265652e2c4d61784368696c6472656e1c10e80300000c0d01204d6178696d756d206e756d626572206f6620616c6c206368696c6472656e20666f7220612064656c65676174696f6e206e6f64652e20466f7220612062696e617279fc20747265652c20746869732073686f756c6420626520747769636520746865206d6178696d756d206465707468206f662074686520747265652c20692e652e5c206032205e204d6178506172656e74436865636b73602e0175063f0c446964010c446964100c4469640001040200790604000c5820444944732073746f726564206f6e20636861696e2e00c8204974206d6170732066726f6d206120444944206964656e74696669657220746f20746865204449442064657461696c732e4053657276696365456e64706f696e747300010805029906810404000ca0205365727669636520656e64706f696e7473206173736f636961746564207769746820444944732e000901204974206d6170732066726f6d2028444944206964656e7469666965722c20736572766963652049442920746f2074686520736572766963652064657461696c732e44446964456e64706f696e7473436f756e7401010402001c10000000000cac20436f756e746572206f66207365727669636520656e64706f696e747320666f722065616368204449442e00cc204974206d6170732066726f6d2028444944206964656e7469666965722920746f20612033322d62697420636f756e7465722e30446964426c61636b6c6973740001040200ac0400141d012054686520736574206f66204449447320746861742068617665206265656e2064656c6574656420616e642063616e6e6f74207468657265666f726520626520637265617465647020616761696e20666f7220736563757269747920726561736f6e732e002101204974206d6170732066726f6d206120444944206964656e74696669657220746f206120756e6974207475706c652c20666f72207468652073616b65206f6620747261636b696e674420444944206964656e746966696572732e015104010101301c4465706f736974184000983ea62c22070000000000000000000c0d012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f722065616368204449442061732061206465706f736974110120746f20696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e20546865206465706f7369742063616e2062658c207265636c61696d6564207768656e20746865204449442069732064656c657465642e0c466565184000203d88792d000000000000000000000c09012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f7220656163682044494420617320612066656520746f0d0120696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e20546865206665652077696c6c206e6f74206765748820726566756e646564207768656e20746865204449442069732064656c657465642e4c4d61785075626c69634b6579735065724469641c10140000000c1101204d6178696d756d206e756d626572206f6620746f74616c207075626c6963206b6579732077686963682063616e2062652073746f7265642070657220444944206b6579d8206964656e7469666965722e205468697320696e636c7564657320746865206f6e65732063757272656e746c79207573656420666f72f02061757468656e7469636174696f6e2c206b65792061677265656d656e742c206174746573746174696f6e2c20616e642064656c65676174696f6e2e584d61784e65774b657941677265656d656e744b6579731c100a000000081501204d6178696d756d206e756d626572206f66206b65792061677265656d656e74206b65797320746861742063616e20626520616464656420696e2061206372656174696f6e2c206f7065726174696f6e2e604d6178546f74616c4b657941677265656d656e744b6579731c1013000000101101204d6178696d756d206e756d626572206f6620746f74616c206b65792061677265656d656e74206b65797320746861742063616e2062652073746f72656420666f7220613420444944207375626a6563742e00c42053686f756c642062652067726561746572207468616e20604d61784e65774b657941677265656d656e744b657973602e4c4d6178426c6f636b73547856616c696469747910202c0100000000000008ec20546865206d6178696d756d206e756d626572206f6620626c6f636b732061204449442d617574686f72697a6564206f7065726174696f6e2069739420636f6e736964657265642076616c696420616674657220697473206372656174696f6e2e644d61784e756d6265724f6653657276696365735065724469641c101900000004fc20546865206d6178696d756d206e756d626572206f6620736572766963657320746861742063616e2062652073746f72656420756e6465722061204449442e484d61785365727669636549644c656e6774681c1032000000049020546865206d6178696d756d206c656e677468206f66206120736572766963652049442e504d617853657276696365547970654c656e6774681c103200000004c820546865206d6178696d756d206c656e677468206f66206120736572766963652074797065206465736372697074696f6e2e684d61784e756d6265724f665479706573506572536572766963651c100100000004090120546865206d6178696d756d206e756d626572206f662061207479706573206465736372697074696f6e20666f722061207365727669636520656e64706f696e742e4c4d61785365727669636555726c4c656e6774681c10c8000000049420546865206d6178696d756d206c656e677468206f66206120736572766963652055524c2e644d61784e756d6265724f6655726c73506572536572766963651c100100000004d420546865206d6178696d756d206e756d626572206f6620612055524c7320666f722061207365727669636520656e64706f696e742e019d064024496e666c6174696f6e000000084c496e697469616c506572696f644c656e677468102048a3c800000000000c050120546865206c656e677468206f662074686520696e697469616c20706572696f6420696e2077686963682074686520636f6e7374616e74207265776172642069731101206d696e7465642e204f6e6365207468652063757272656e7420626c6f636b206578636565647320746869732c207265776172647320617265206e6f206675727468657220206973737565642e4c496e697469616c506572696f64526577617264184036f539fdaeb30200000000000000000008fc2054686520616d6f756e74206f66206e65776c792069737375656420746f6b656e732070657220626c6f636b20647572696e672074686520696e697469616c2020706572696f642e0042244469644c6f6f6b757001244469644c6f6f6b75700c34436f6e6e656374656444696473000104020901a106040004a8204d617070696e672066726f6d206163636f756e74206964656e7469666965727320746f20444944732e44436f6e6e65637465644163636f756e74730001080202a506ac04000cbc204d617070696e672066726f6d2028444944202b206163636f756e74206964656e74696669657229202d3e2028292e0d012054686520656d707479207475706c65206973207573656420617320612073656e74696e656c2076616c756520746f2073696d706c7920696e64696361746520746865982070726573656e6365206f66206120676976656e207475706c6520696e20746865206d61702e4c4d6967726174696f6e537461746553746f72650100a90604010001a504010501041c4465706f736974184000c0afd69136000000000000000000000c0d012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f722065616368204449442061732061206465706f736974110120746f20696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e20546865206465706f7369742063616e2062658c207265636c61696d6564207768656e20746865204449442069732064656c657465642e01b1064324576562334e616d65730124576562334e616d65730c144f776e6572000104021901b50604000488204d6170206f66206e616d65202d3e206f776e6572736869702064657461696c732e144e616d65730001040200190104000458204d6170206f66206f776e6572202d3e206e616d652e1842616e6e6564000104021901ac04000c4c204d6170206f66206e616d65202d3e2028292e00e02049662061206e616d65206b65792069732070726573656e742c20746865206e616d652069732063757272656e746c792062616e6e65642e01b5040115010c1c4465706f736974184000d450a85d6b0000000000000000000004bc2054686520616d6f756e74206f66204b494c5420746f206465706f73697420746f20636c61696d2061206e616d652e344d696e4e616d654c656e6774681c1003000000048820546865206d696e20656e636f646564206c656e677468206f662061206e616d652e344d61784e616d654c656e6774681c1020000000048820546865206d617820656e636f646564206c656e677468206f662061206e616d652e01b90644445075626c696343726564656e7469616c7301445075626c696343726564656e7469616c73082c43726564656e7469616c730001080502bd06c10604000cc020546865206d6170206f66207075626c69632063726564656e7469616c7320616c72656164792061747465737465642ef0204974206d6170732066726f6d206120287375626a656374206964202b2063726564656e7469616c20696429202d3e20746865206372656174696f6e6c2064657461696c73206f66207468652063726564656e7469616c2e4843726564656e7469616c5375626a65637473000104022c250104001025012041207265766572736520696e646578206d617070696e672066726f6d2063726564656e7469616c20494420746f20746865207375626a656374207468652063726564656e7469616c3c207761732069737375656420746f2e001901204974206974207573656420746f20706572666f726d20656666696369656e74206c6f6f6b7570206f662063726564656e7469616c7320676976656e2074686569722049442e01b9040121010c1c4465706f7369741840005c6a51fc45000000000000000000000411012054686520616d6f756e74206f6620746f6b656e7320746f2072657365727665207768656e20617474657374696e672061207075626c69632063726564656e7469616c2e584d6178456e636f646564436c61696d734c656e6774681c10a0860100040d0120546865206d6178696d756d206c656e67746820696e206279746573206f662074686520656e636f64656420636c61696d73206f6620612063726564656e7469616c2e484d61785375626a65637449644c656e6774681c100c01000008e820546865206d6178696d756d206c656e67746820696e206279746573206f6620746865207261772063726564656e7469616c207375626a65637430206964656e7469666965722e01c506453c50617261636861696e53797374656d013c50617261636861696e53797374656d545450656e64696e6756616c69646174696f6e436f64650100300400187d0120496e2063617365206f662061207363686564756c656420757067726164652c20746869732073746f72616765206669656c6420636f6e7461696e73207468652076616c69646174696f6e20636f646520746f206265206170706c6965642e00c10120417320736f6f6e206173207468652072656c617920636861696e2067697665732075732074686520676f2d6168656164207369676e616c2c2077652077696c6c206f766572777269746520746865205b603a636f6465605d5b77656c6c5f6b6e6f776e5f6b6579733a3a434f44455dad012077686963682077696c6c20726573756c7420746865206e65787420626c6f636b2070726f63657373207769746820746865206e65772076616c69646174696f6e20636f64652e205468697320636f6e636c756465732074686520757067726164652070726f636573732e000501205b77656c6c5f6b6e6f776e5f6b6579733a3a434f44455d3a2073705f636f72653a3a73746f726167653a3a77656c6c5f6b6e6f776e5f6b6579733a3a434f4445444e657756616c69646174696f6e436f64650000300400145d012056616c69646174696f6e20636f6465207468617420697320736574206279207468652070617261636861696e20616e6420697320746f20626520636f6d6d756e69636174656420746f20636f6c6c61746f7220616e647820636f6e73657175656e746c79207468652072656c61792d636861696e2e00650120546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b206966206e6f206f746865722070616c6c657420616c7265616479207365742c207468652076616c75652e3856616c69646174696f6e446174610000d10404000cd020546865205b6050657273697374656456616c69646174696f6e44617461605d2073657420666f72207468697320626c6f636b2e2d0120546869732076616c756520697320657870656374656420746f20626520736574206f6e6c79206f6e63652070657220626c6f636b20616e642069742773206e657665722073746f7265643420696e2074686520747269652e5044696453657456616c69646174696f6e436f64650100a4040004e02057657265207468652076616c69646174696f6e20646174612073657420746f206e6f74696679207468652072656c617920636861696e3f644c61737452656c6179436861696e426c6f636b4e756d62657201001c1000000000041d01205468652072656c617920636861696e20626c6f636b206e756d626572206173736f636961746564207769746820746865206c6173742070617261636861696e20626c6f636b2e60557067726164655265737472696374696f6e5369676e616c0100c90604001c750120416e206f7074696f6e20776869636820696e64696361746573206966207468652072656c61792d636861696e20726573747269637473207369676e616c6c696e6720612076616c69646174696f6e20636f646520757067726164652e610120496e206f7468657220776f7264732c20696620746869732069732060536f6d656020616e64205b604e657756616c69646174696f6e436f6465605d2069732060536f6d6560207468656e207468652070726f64756365646c2063616e6469646174652077696c6c20626520696e76616c69642e00710120546869732073746f72616765206974656d2069732061206d6972726f72206f662074686520636f72726573706f6e64696e672076616c756520666f72207468652063757272656e742070617261636861696e2066726f6d207468656d012072656c61792d636861696e2e20546869732076616c756520697320657068656d6572616c207768696368206d65616e7320697420646f65736e277420686974207468652073746f726167652e20546869732076616c756520697360207365742061667465722074686520696e686572656e742e3c52656c6179537461746550726f6f660000d904040018c4205468652073746174652070726f6f6620666f7220746865206c6173742072656c617920706172656e7420626c6f636b2e006d012054686973206669656c64206973206d65616e7420746f2062652075706461746564206561636820626c6f636b2077697468207468652076616c69646174696f6e206461746120696e686572656e742e205468657265666f72652c4d01206265666f72652070726f63657373696e67206f662074686520696e686572656e742c20652e672e20696e20606f6e5f696e697469616c697a656020746869732064617461206d6179206265207374616c652e00ac2054686973206461746120697320616c736f20616273656e742066726f6d207468652067656e657369732e5852656c6576616e744d6573736167696e6753746174650000d10604001c65012054686520736e617073686f74206f6620736f6d652073746174652072656c6174656420746f206d6573736167696e672072656c6576616e7420746f207468652063757272656e742070617261636861696e2061732070657248207468652072656c617920706172656e742e006d012054686973206669656c64206973206d65616e7420746f2062652075706461746564206561636820626c6f636b2077697468207468652076616c69646174696f6e206461746120696e686572656e742e205468657265666f72652c4d01206265666f72652070726f63657373696e67206f662074686520696e686572656e742c20652e672e20696e20606f6e5f696e697469616c697a656020746869732064617461206d6179206265207374616c652e00ac2054686973206461746120697320616c736f20616273656e742066726f6d207468652067656e657369732e44486f7374436f6e66696775726174696f6e0000e5060400182901205468652070617261636861696e20686f737420636f6e66696775726174696f6e207468617420776173206f627461696e65642066726f6d207468652072656c617920706172656e742e006d012054686973206669656c64206973206d65616e7420746f2062652075706461746564206561636820626c6f636b2077697468207468652076616c69646174696f6e206461746120696e686572656e742e205468657265666f72652c4d01206265666f72652070726f63657373696e67206f662074686520696e686572656e742c20652e672e20696e20606f6e5f696e697469616c697a656020746869732064617461206d6179206265207374616c652e00ac2054686973206461746120697320616c736f20616273656e742066726f6d207468652067656e657369732e384c617374446d714d7163486561640100e90680000000000000000000000000000000000000000000000000000000000000000010f420546865206c61737420646f776e77617264206d65737361676520717565756520636861696e20686561642077652068617665206f627365727665642e00650120546869732076616c7565206973206c6f61646564206265666f726520616e642073617665642061667465722070726f63657373696e6720696e626f756e6420646f776e77617264206d65737361676573206361727269656460206279207468652073797374656d20696e686572656e742e404c61737448726d704d716348656164730100ed06040010490120546865206d65737361676520717565756520636861696e2068656164732077652068617665206f62736572766564207065722065616368206368616e6e656c20696e636f6d696e67206368616e6e656c2e00650120546869732076616c7565206973206c6f61646564206265666f726520616e642073617665642061667465722070726f63657373696e6720696e626f756e6420646f776e77617264206d65737361676573206361727269656460206279207468652073797374656d20696e686572656e742e6450726f636573736564446f776e776172644d6573736167657301001c10000000000cc8204e756d626572206f6620646f776e77617264206d657373616765732070726f63657373656420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e3448726d7057617465726d61726b01001c10000000000ca02048524d502077617465726d61726b2074686174207761732073657420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e5048726d704f7574626f756e644d657373616765730100f90604000ca42048524d50206d65737361676573207468617420776572652073656e7420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e385570776172644d657373616765730100950204000cac20557077617264206d65737361676573207468617420776572652073656e7420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e5450656e64696e675570776172644d6573736167657301009502040004310120557077617264206d65737361676573207468617420617265207374696c6c2070656e64696e6720616e64206e6f74207965742073656e6420746f207468652072656c617920636861696e2e84416e6e6f756e63656448726d704d6573736167657350657243616e64696461746501001c100000000008650120546865206e756d626572206f662048524d50206d65737361676573207765206f6273657276656420696e20606f6e5f696e697469616c697a656020616e64207468757320757365642074686174206e756d62657220666f72f020616e6e6f756e63696e672074686520776569676874206f6620606f6e5f696e697469616c697a656020616e6420606f6e5f66696e616c697a65602e68526573657276656458636d705765696768744f766572726964650000240400085d01205468652077656967687420776520726573657276652061742074686520626567696e6e696e67206f662074686520626c6f636b20666f722070726f63657373696e672058434d50206d657373616765732e2054686973b8206f76657272696465732074686520616d6f756e742073657420696e2074686520436f6e6669672074726169742e645265736572766564446d705765696768744f766572726964650000240400085901205468652077656967687420776520726573657276652061742074686520626567696e6e696e67206f662074686520626c6f636b20666f722070726f63657373696e6720444d50206d657373616765732e2054686973b8206f76657272696465732074686520616d6f756e742073657420696e2074686520436f6e6669672074726169742e44417574686f72697a65645570677261646500002c040004b820546865206e65787420617574686f72697a656420757067726164652c206966207468657265206973206f6e652e60437573746f6d56616c69646174696f6e486561644461746100003004000c2901204120637573746f6d2068656164206461746120746861742073686f756c642062652072657475726e656420617320726573756c74206f66206076616c69646174655f626c6f636b602e00190120536565205b6050616c6c65743a3a7365745f637573746f6d5f76616c69646174696f6e5f686561645f64617461605d20666f72206d6f726520696e666f726d6174696f6e2e01c90401910100010107503450617261636861696e496e666f013450617261636861696e496e666f042c50617261636861696e496401009d0110640000000000000000512458636d705175657565012458636d7051756575652844496e626f756e6458636d70537461747573010005070400049420537461747573206f662074686520696e626f756e642058434d50206368616e6e656c732e4c496e626f756e6458636d704d6573736167657301010802051d0730040004190120496e626f756e64206167677265676174652058434d50206d657373616765732e2049742063616e206f6e6c79206265206f6e6520706572205061726149642f626c6f636b2e484f7574626f756e6458636d70537461747573010021070400185d0120546865206e6f6e2d656d7074792058434d50206368616e6e656c7320696e206f72646572206f66206265636f6d696e67206e6f6e2d656d7074792c20616e642074686520696e646578206f6620746865206669727374510120616e64206c617374206f7574626f756e64206d6573736167652e204966207468652074776f20696e64696365732061726520657175616c2c207468656e20697420696e6469636174657320616e20656d707479590120717565756520616e64207468657265206d7573742062652061206e6f6e2d604f6b6020604f7574626f756e64537461747573602e20576520617373756d65207175657565732067726f77206e6f20677265617465725901207468616e203635353335206974656d732e20517565756520696e646963657320666f72206e6f726d616c206d6573736167657320626567696e206174206f6e653b207a65726f20697320726573657276656420696e11012063617365206f6620746865206e65656420746f2073656e64206120686967682d7072696f72697479207369676e616c206d657373616765207468697320626c6f636b2e09012054686520626f6f6c20697320747275652069662074686572652069732061207369676e616c206d6573736167652077616974696e6720746f2062652073656e742e504f7574626f756e6458636d704d6573736167657301010802052d0730040004bc20546865206d65737361676573206f7574626f756e6420696e206120676976656e2058434d50206368616e6e656c2e385369676e616c4d65737361676573010104029d0130040004a020416e79207369676e616c206d657373616765732077616974696e6720746f2062652073656e742e2c5175657565436f6e6669670100310774020000000500000001000000821a06000008000700c817a804020004000415012054686520636f6e66696775726174696f6e20776869636820636f6e74726f6c73207468652064796e616d696373206f6620746865206f7574626f756e642071756575652e284f76657277656967687400010405103507040010050120546865206d657373616765732074686174206578636565646564206d617820696e646976696475616c206d65737361676520776569676874206275646765742e003901205468657365206d657373616765207374617920696e20746869732073746f72616765206d617020756e74696c207468657920617265206d616e75616c6c79206469737061746368656420766961582060736572766963655f6f766572776569676874602e50436f756e746572466f724f76657277656967687401001c100000000004ac436f756e74657220666f72207468652072656c6174656420636f756e7465642073746f72616765206d61703c4f766572776569676874436f756e7401001020000000000000000008690120546865206e756d626572206f66206f766572776569676874206d657373616765732065766572207265636f7264656420696e20604f766572776569676874602e20416c736f20646f75626c657320617320746865206e6578748420617661696c61626c652066726565206f76657277656967687420696e6465782e38517565756553757370656e6465640100a404000441012057686574686572206f72206e6f74207468652058434d502071756575652069732073757370656e6465642066726f6d20657865637574696e6720696e636f6d696e672058434d73206f72206e6f742e01fd0401950100013907522c506f6c6b61646f7458636d0001010501a10100013d07532843756d756c757358636d0000016d02000141075420446d7051756575650120446d7051756575651434436f6e66696775726174696f6e01004507280700e40b540202000400044c2054686520636f6e66696775726174696f6e2e2450616765496e646578010049074000000000000000000000000000000000044020546865207061676520696e6465782e145061676573010104021c4d0704000444205468652071756575652070616765732e284f766572776569676874000104021051070400046420546865206f766572776569676874206d657373616765732e50436f756e746572466f724f76657277656967687401001c100000000004ac436f756e74657220666f72207468652072656c6174656420636f756e7465642073746f72616765206d617001550501710200015507555907042048436865636b4e6f6e5a65726f53656e6465726107ac40436865636b5370656356657273696f6e65071c38436865636b547856657273696f6e69071c30436865636b47656e657369736d072c38436865636b4d6f7274616c69747971072c28436865636b4e6f6e63657907ac2c436865636b5765696768747d07ac604368617267655472616e73616374696f6e5061796d656e748107ac3104"} \ No newline at end of file +{"result":"0x6d6574610eb507000c1c73705f636f72651863727970746f2c4163636f756e7449643332000004000401205b75383b2033325d0000040000032000000008000800000503000c08306672616d655f73797374656d2c4163636f756e74496e666f0814496e64657801102c4163636f756e74446174610114001401146e6f6e6365100114496e646578000124636f6e73756d6572731c0120526566436f756e7400012470726f7669646572731c0120526566436f756e7400012c73756666696369656e74731c0120526566436f756e740001106461746114012c4163636f756e7444617461000010000005060014083c70616c6c65745f62616c616e6365732c4163636f756e7444617461041c42616c616e63650118001001106672656518011c42616c616e6365000120726573657276656418011c42616c616e636500012c6d6973635f66726f7a656e18011c42616c616e63650001286665655f66726f7a656e18011c42616c616e636500001800000507001c0000050500200c346672616d655f737570706f7274206469737061746368405065724469737061746368436c6173730404540124000c01186e6f726d616c2401045400012c6f7065726174696f6e616c240104540001246d616e6461746f7279240104540000240c2873705f77656967687473247765696768745f76321857656967687400000801207265665f74696d6528010c75363400012870726f6f665f73697a6528010c75363400002800000610002c083c7072696d69746976655f74797065731048323536000004000401205b75383b2033325d000030000002080034102873705f72756e74696d651c67656e65726963186469676573741844696765737400000401106c6f677338013c5665633c4469676573744974656d3e0000380000023c003c102873705f72756e74696d651c67656e6572696318646967657374284469676573744974656d0001142850726552756e74696d650800400144436f6e73656e737573456e67696e654964000030011c5665633c75383e00060024436f6e73656e7375730800400144436f6e73656e737573456e67696e654964000030011c5665633c75383e000400105365616c0800400144436f6e73656e737573456e67696e654964000030011c5665633c75383e000500144f74686572040030011c5665633c75383e0000006452756e74696d65456e7669726f6e6d656e745570646174656400080000400000030400000008004400000248004808306672616d655f73797374656d2c4576656e745265636f7264080445014c0454012c000c011470686173658902011450686173650001146576656e744c010445000118746f706963738d0201185665633c543e00004c08447370697269746e65745f72756e74696d653052756e74696d654576656e7400017c1853797374656d04005001706672616d655f73797374656d3a3a4576656e743c52756e74696d653e0000001c496e6469636573040074017870616c6c65745f696e64696365733a3a4576656e743c52756e74696d653e0005002042616c616e636573040078017c70616c6c65745f62616c616e6365733a3a4576656e743c52756e74696d653e000600485472616e73616374696f6e5061796d656e7404008001a870616c6c65745f7472616e73616374696f6e5f7061796d656e743a3a4576656e743c52756e74696d653e0007001c53657373696f6e040084015470616c6c65745f73657373696f6e3a3a4576656e740016004050617261636861696e5374616b696e67040088018470617261636861696e5f7374616b696e673a3a4576656e743c52756e74696d653e0015002444656d6f6372616379040090018070616c6c65745f64656d6f63726163793a3a4576656e743c52756e74696d653e001e001c436f756e63696c0400a401fc70616c6c65745f636f6c6c6563746976653a3a4576656e743c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365313e001f0048546563686e6963616c436f6d6d69747465650400b401fc70616c6c65745f636f6c6c6563746976653a3a4576656e743c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365323e0020004c546563686e6963616c4d656d626572736869700400b801fc70616c6c65745f6d656d626572736869703a3a4576656e743c52756e74696d652c2070616c6c65745f6d656d626572736869703a3a496e7374616e6365313e0022002054726561737572790400bc017c70616c6c65745f74726561737572793a3a4576656e743c52756e74696d653e0023001c5574696c6974790400c0015470616c6c65745f7574696c6974793a3a4576656e740028001c56657374696e670400c4017870616c6c65745f76657374696e673a3a4576656e743c52756e74696d653e002900245363686564756c65720400c8018070616c6c65745f7363686564756c65723a3a4576656e743c52756e74696d653e002a001450726f78790400d4017070616c6c65745f70726f78793a3a4576656e743c52756e74696d653e002b0020507265696d6167650400e0017c70616c6c65745f707265696d6167653a3a4576656e743c52756e74696d653e002c0038546970734d656d626572736869700400e401fc70616c6c65745f6d656d626572736869703a3a4576656e743c52756e74696d652c2070616c6c65745f6d656d626572736869703a3a496e7374616e6365323e002d0010546970730400e8016c70616c6c65745f746970733a3a4576656e743c52756e74696d653e002e00204d756c74697369670400ec017c70616c6c65745f6d756c74697369673a3a4576656e743c52756e74696d653e002f001443747970650400f4015463747970653a3a4576656e743c52756e74696d653e003d002c4174746573746174696f6e0400f8016c6174746573746174696f6e3a3a4576656e743c52756e74696d653e003e002844656c65676174696f6e04000501016864656c65676174696f6e3a3a4576656e743c52756e74696d653e003f000c44696404000d01014c6469643a3a4576656e743c52756e74696d653e004000244469644c6f6f6b757004001101018470616c6c65745f6469645f6c6f6f6b75703a3a4576656e743c52756e74696d653e00430024576562334e616d657304002101018470616c6c65745f776562335f6e616d65733a3a4576656e743c52756e74696d653e004400445075626c696343726564656e7469616c7304002d0101887075626c69635f63726564656e7469616c733a3a4576656e743c52756e74696d653e0045003c50617261636861696e53797374656d04009d0101bc63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d3a3a4576656e743c52756e74696d653e0050002458636d7051756575650400a10101a463756d756c75735f70616c6c65745f78636d705f71756575653a3a4576656e743c52756e74696d653e0052002c506f6c6b61646f7458636d0400ad01016870616c6c65745f78636d3a3a4576656e743c52756e74696d653e0053002843756d756c757358636d04008102018863756d756c75735f70616c6c65745f78636d3a3a4576656e743c52756e74696d653e00540020446d7051756575650400850201a063756d756c75735f70616c6c65745f646d705f71756575653a3a4576656e743c52756e74696d653e00550000500c306672616d655f73797374656d1870616c6c6574144576656e740404540001184045787472696e7369635375636365737304013464697370617463685f696e666f5401304469737061746368496e666f00000490416e2065787472696e73696320636f6d706c65746564207375636365737366756c6c792e3c45787472696e7369634661696c656408013864697370617463685f6572726f7260013444697370617463684572726f7200013464697370617463685f696e666f5401304469737061746368496e666f00010450416e2065787472696e736963206661696c65642e2c436f64655570646174656400020450603a636f6465602077617320757064617465642e284e65774163636f756e7404011c6163636f756e74000130543a3a4163636f756e7449640003046841206e6577206163636f756e742077617320637265617465642e344b696c6c65644163636f756e7404011c6163636f756e74000130543a3a4163636f756e74496400040458416e206163636f756e7420776173207265617065642e2052656d61726b656408011873656e646572000130543a3a4163636f756e744964000110686173682c011c543a3a48617368000504704f6e206f6e2d636861696e2072656d61726b2068617070656e65642e04704576656e7420666f72207468652053797374656d2070616c6c65742e540c346672616d655f737570706f7274206469737061746368304469737061746368496e666f00000c0118776569676874240118576569676874000114636c6173735801344469737061746368436c617373000120706179735f6665655c0110506179730000580c346672616d655f737570706f7274206469737061746368344469737061746368436c61737300010c184e6f726d616c0000002c4f7065726174696f6e616c000100244d616e6461746f7279000200005c0c346672616d655f737570706f727420646973706174636810506179730001080c596573000000084e6f0001000060082873705f72756e74696d653444697370617463684572726f72000134144f746865720000003043616e6e6f744c6f6f6b7570000100244261644f726967696e000200184d6f64756c65040064012c4d6f64756c654572726f7200030044436f6e73756d657252656d61696e696e670004002c4e6f50726f76696465727300050040546f6f4d616e79436f6e73756d65727300060014546f6b656e0400680128546f6b656e4572726f720007002841726974686d6574696304006c013c41726974686d657469634572726f72000800345472616e73616374696f6e616c04007001485472616e73616374696f6e616c4572726f7200090024457868617573746564000a0028436f7272757074696f6e000b002c556e617661696c61626c65000c000064082873705f72756e74696d652c4d6f64756c654572726f720000080114696e64657808010875380001146572726f7240018c5b75383b204d41585f4d4f44554c455f4552524f525f454e434f4445445f53495a455d000068082873705f72756e74696d6528546f6b656e4572726f7200011c1c4e6f46756e647300000020576f756c644469650001003042656c6f774d696e696d756d0002003043616e6e6f7443726561746500030030556e6b6e6f776e41737365740004001846726f7a656e0005002c556e737570706f72746564000600006c083473705f61726974686d657469633c41726974686d657469634572726f7200010c24556e646572666c6f77000000204f766572666c6f77000100384469766973696f6e42795a65726f0002000070082873705f72756e74696d65485472616e73616374696f6e616c4572726f72000108304c696d6974526561636865640000001c4e6f4c6179657200010000740c3870616c6c65745f696e64696365731870616c6c6574144576656e7404045400010c34496e64657841737369676e656408010c77686f000130543a3a4163636f756e744964000114696e64657810013c543a3a4163636f756e74496e6465780000047441206163636f756e7420696e646578207761732061737369676e65642e28496e6465784672656564040114696e64657810013c543a3a4163636f756e74496e646578000104bc41206163636f756e7420696e64657820686173206265656e2066726565642075702028756e61737369676e6564292e2c496e64657846726f7a656e080114696e64657810013c543a3a4163636f756e74496e64657800010c77686f000130543a3a4163636f756e744964000204e841206163636f756e7420696e64657820686173206265656e2066726f7a656e20746f206974732063757272656e74206163636f756e742049442e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909780c3c70616c6c65745f62616c616e6365731870616c6c6574144576656e740804540004490001281c456e646f77656408011c6163636f756e74000130543a3a4163636f756e744964000130667265655f62616c616e6365180128543a3a42616c616e6365000004b8416e206163636f756e74207761732063726561746564207769746820736f6d6520667265652062616c616e63652e20447573744c6f737408011c6163636f756e74000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650001083d01416e206163636f756e74207761732072656d6f7665642077686f73652062616c616e636520776173206e6f6e2d7a65726f206275742062656c6f77204578697374656e7469616c4465706f7369742c78726573756c74696e6720696e20616e206f75747269676874206c6f73732e205472616e736665720c011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650002044c5472616e73666572207375636365656465642e2842616c616e63655365740c010c77686f000130543a3a4163636f756e74496400011066726565180128543a3a42616c616e63650001207265736572766564180128543a3a42616c616e636500030468412062616c616e6365207761732073657420627920726f6f742e20526573657276656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000404e0536f6d652062616c616e63652077617320726573657276656420286d6f7665642066726f6d206672656520746f207265736572766564292e28556e726573657276656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000504e8536f6d652062616c616e63652077617320756e726573657276656420286d6f7665642066726f6d20726573657276656420746f2066726565292e4852657365727665526570617472696174656410011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500014864657374696e6174696f6e5f7374617475737c01185374617475730006084d01536f6d652062616c616e636520776173206d6f7665642066726f6d207468652072657365727665206f6620746865206669727374206163636f756e7420746f20746865207365636f6e64206163636f756e742ed846696e616c20617267756d656e7420696e64696361746573207468652064657374696e6174696f6e2062616c616e636520747970652e1c4465706f73697408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000704d8536f6d6520616d6f756e7420776173206465706f73697465642028652e672e20666f72207472616e73616374696f6e2066656573292e20576974686472617708010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650008041d01536f6d6520616d6f756e74207761732077697468647261776e2066726f6d20746865206163636f756e742028652e672e20666f72207472616e73616374696f6e2066656573292e1c536c617368656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650009040101536f6d6520616d6f756e74207761732072656d6f7665642066726f6d20746865206163636f756e742028652e672e20666f72206d69736265686176696f72292e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a0909097c14346672616d655f737570706f72741874726169747318746f6b656e73106d6973633442616c616e6365537461747573000108104672656500000020526573657276656400010000800c6870616c6c65745f7472616e73616374696f6e5f7061796d656e741870616c6c6574144576656e74040454000104485472616e73616374696f6e466565506169640c010c77686f000130543a3a4163636f756e74496400012861637475616c5f66656518013042616c616e63654f663c543e00010c74697018013042616c616e63654f663c543e000008590141207472616e73616374696f6e20666565206061637475616c5f666565602c206f662077686963682060746970602077617320616464656420746f20746865206d696e696d756d20696e636c7573696f6e206665652c5c686173206265656e2070616964206279206077686f602e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909840c3870616c6c65745f73657373696f6e1870616c6c6574144576656e74000104284e657753657373696f6e04013473657373696f6e5f696e6465781c013053657373696f6e496e64657800000839014e65772073657373696f6e206861732068617070656e65642e204e6f746520746861742074686520617267756d656e74206973207468652073657373696f6e20696e6465782c206e6f74207468659c626c6f636b206e756d626572206173207468652074797065206d6967687420737567676573742e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909880c4470617261636861696e5f7374616b696e671870616c6c6574144576656e74040454000154204e6577526f756e640800100138543a3a426c6f636b4e756d62657200001c013053657373696f6e496e6465780000088041206e6577207374616b696e6720726f756e642068617320737461727465642e785c5b626c6f636b206e756d6265722c20726f756e64206e756d6265725c5d50456e7465726564546f7043616e646964617465730400000130543a3a4163636f756e744964000108cc41206e6577206163636f756e7420686173206a6f696e65642074686520736574206f6620746f702063616e646964617465732e2c5c5b6163636f756e745c5d444c656674546f7043616e646964617465730400000130543a3a4163636f756e744964000208d8416e206163636f756e74207761732072656d6f7665642066726f6d2074686520736574206f6620746f702063616e646964617465732e2c5c5b6163636f756e745c5d604a6f696e6564436f6c6c61746f7243616e646964617465730800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000308e041206e6577206163636f756e7420686173206a6f696e65642074686520736574206f6620636f6c6c61746f722063616e646964617465732ebc5c5b6163636f756e742c20616d6f756e74207374616b656420627920746865206e65772063616e6469646174655c5d48436f6c6c61746f725374616b65644d6f72650c00000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e00040801014120636f6c6c61746f722063616e6469646174652068617320696e637265617365642074686520616d6f756e74206f662066756e6473206174207374616b652ec45c5b636f6c6c61746f722773206163636f756e742c2070726576696f7573207374616b652c206e6577207374616b655c5d48436f6c6c61746f725374616b65644c6573730c00000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e00050801014120636f6c6c61746f722063616e64696461746520686173206465637265617365642074686520616d6f756e74206f662066756e6473206174207374616b652ec45c5b636f6c6c61746f722773206163636f756e742c2070726576696f7573207374616b652c206e6577207374616b655c5d54436f6c6c61746f725363686564756c6564457869740c001c013053657373696f6e496e6465780000000130543a3a4163636f756e74496400001c013053657373696f6e496e64657800061001014120636f6c6c61746f722063616e646964617465206861732073746172746564207468652070726f6365737320746f206c656176652074686520736574206f66050163616e646964617465732e205c5b726f756e64206e756d6265722c20636f6c6c61746f722773206163636f756e742c20726f756e64206e756d626572207768656ee074686520636f6c6c61746f722077696c6c206265206566666563746976656c792072656d6f7665642066726f6d2074686520736574206f663063616e646964617465735c5d50436f6c6c61746f7243616e63656c6564457869740400000130543a3a4163636f756e74496400070c05014120636f6c6c61746f722063616e646964617465206861732063616e63656c6564207468652070726f6365737320746f206c656176652074686520736574206f66050163616e6469646174657320616e6420776173206164646564206261636b20746f207468652063616e64696461746520706f6f6c2e205c5b636f6c6c61746f722773246163636f756e745c5d3443616e6469646174654c6566740800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000808cc416e206163636f756e7420686173206c6566742074686520736574206f6620636f6c6c61746f722063616e646964617465732e985c5b6163636f756e742c20616d6f756e74206f662066756e647320756e2d7374616b65645c5d3c436f6c6c61746f7252656d6f7665640800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000908e4416e206163636f756e742077617320666f726365646c792072656d6f7665642066726f6d207468652020736574206f6620636f6c6c61746f72c863616e646964617465732e205c5b6163636f756e742c20616d6f756e74206f662066756e647320756e2d7374616b65645c5d604d617843616e6469646174655374616b654368616e676564040018013042616c616e63654f663c543e000a08b4546865206d6178696d756d2063616e646964617465207374616b6520686173206265656e206368616e6765642e485c5b6e6577206d617820616d6f756e745c5d4c44656c656761746f725374616b65644d6f72651000000130543a3a4163636f756e7449640000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e000b0cf0412064656c656761746f722068617320696e637265617365642074686520616d6f756e74206f662066756e6473206174207374616b6520666f722061f4636f6c6c61746f722e205c5b64656c656761746f722773206163636f756e742c20636f6c6c61746f722773206163636f756e742c2070726576696f7573a064656c65676174696f6e207374616b652c206e65772064656c65676174696f6e207374616b655c5d4c44656c656761746f725374616b65644c6573731000000130543a3a4163636f756e7449640000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e000c0cf0412064656c656761746f7220686173206465637265617365642074686520616d6f756e74206f662066756e6473206174207374616b6520666f722061f4636f6c6c61746f722e205c5b64656c656761746f722773206163636f756e742c20636f6c6c61746f722773206163636f756e742c2070726576696f7573a064656c65676174696f6e207374616b652c206e65772064656c65676174696f6e207374616b655c5d3444656c656761746f724c6566740800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000d08a8416e206163636f756e7420686173206c6566742074686520736574206f662064656c656761746f72732e985c5b6163636f756e742c20616d6f756e74206f662066756e647320756e2d7374616b65645c5d2844656c65676174696f6e1000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e0000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000e0cc8416e206163636f756e74206861732064656c6567617465642061206e657720636f6c6c61746f722063616e6469646174652e11015c5b6163636f756e742c20616d6f756e74206f662066756e6473207374616b65642c20746f74616c20616d6f756e74206f662064656c656761746f7273272066756e64738c7374616b656420666f722074686520636f6c6c61746f722063616e6469646174655c5d4844656c65676174696f6e5265706c616365641800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e0000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e0000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000f180d0141206e65772064656c65676174696f6e20686173207265706c6163656420616e206578697374696e67206f6e6520696e2074686520736574206f66206f6e676f696e67010164656c65676174696f6e7320666f72206120636f6c6c61746f722063616e6469646174652e205c5b6e65772064656c656761746f722773206163636f756e742c0901616d6f756e74206f662066756e6473207374616b656420696e20746865206e65772064656c65676174696f6e2c207265706c616365642064656c656761746f7227730d016163636f756e742c20616d6f756e74206f662066756e6473207374616b656420696e20746865207265706c6163652064656c65676174696f6e2c20636f6c6c61746f72050163616e6469646174652773206163636f756e742c206e657720746f74616c20616d6f756e74206f662064656c656761746f7273272066756e6473207374616b656470666f722074686520636f6c6c61746f722063616e6469646174655c5d5444656c656761746f724c656674436f6c6c61746f721000000130543a3a4163636f756e7449640000000130543a3a4163636f756e744964000018013042616c616e63654f663c543e000018013042616c616e63654f663c543e00100cdc416e206163636f756e74206861732073746f707065642064656c65676174696e67206120636f6c6c61746f722063616e6469646174652e09015c5b6163636f756e742c20636f6c6c61746f722063616e6469646174652773206163636f756e742c206f6c6420616d6f756e74206f662064656c656761746f727327d866756e6473207374616b65642c206e657720616d6f756e74206f662064656c656761746f7273272066756e6473207374616b65645c5d2052657761726465640800000130543a3a4163636f756e744964000018013042616c616e63654f663c543e001108c04120636f6c6c61746f72206f7220612064656c656761746f72206861732072656365697665642061207265776172642e745c5b6163636f756e742c20616d6f756e74206f66207265776172645c5d44526f756e64496e666c6174696f6e53657410008c012c5065727175696e74696c6c00008c012c5065727175696e74696c6c00008c012c5065727175696e74696c6c00008c012c5065727175696e74696c6c00120c0501496e666c6174696f6e20636f6e66696775726174696f6e20666f72206675747572652076616c69646174696f6e20726f756e647320686173206368616e6765642e09015c5b6d6178696d756d20636f6c6c61746f722773207374616b696e6720726174652c206d6178696d756d20636f6c6c61746f7227732072657761726420726174652c0d016d6178696d756d2064656c656761746f722773207374616b696e6720726174652c206d6178696d756d2064656c656761746f7227732072657761726420726174655c5d604d617853656c656374656443616e6469646174657353657408001c010c75333200001c010c753332001308f0546865206d6178696d756d206e756d626572206f6620636f6c6c61746f722063616e646964617465732073656c656374656420696e20667574757265dc76616c69646174696f6e20726f756e647320686173206368616e6765642e205c5b6f6c642076616c75652c206e65772076616c75655c5d44426c6f636b73506572526f756e6453657410001c013053657373696f6e496e6465780000100138543a3a426c6f636b4e756d6265720000100138543a3a426c6f636b4e756d6265720000100138543a3a426c6f636b4e756d62657200140cf8546865206c656e67746820696e20626c6f636b7320666f72206675747572652076616c69646174696f6e20726f756e647320686173206368616e6765642e01015c5b726f756e64206e756d6265722c20666972737420626c6f636b20696e207468652063757272656e7420726f756e642c206f6c642076616c75652c206e65771c76616c75655c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a0909098c0c3473705f61726974686d65746963287065725f7468696e67732c5065727175696e74696c6c0000040010010c7536340000900c4070616c6c65745f64656d6f63726163791870616c6c6574144576656e740404540001442050726f706f73656408013870726f706f73616c5f696e6465781c012450726f70496e64657800011c6465706f73697418013042616c616e63654f663c543e000004bc41206d6f74696f6e20686173206265656e2070726f706f7365642062792061207075626c6963206163636f756e742e185461626c656408013870726f706f73616c5f696e6465781c012450726f70496e64657800011c6465706f73697418013042616c616e63654f663c543e000104d841207075626c69632070726f706f73616c20686173206265656e207461626c656420666f72207265666572656e64756d20766f74652e3845787465726e616c5461626c656400020494416e2065787465726e616c2070726f706f73616c20686173206265656e207461626c65642e1c537461727465640801247265665f696e6465781c013c5265666572656e64756d496e6465780001247468726573686f6c64940134566f74655468726573686f6c640003045c41207265666572656e64756d2068617320626567756e2e185061737365640401247265665f696e6465781c013c5265666572656e64756d496e646578000404ac412070726f706f73616c20686173206265656e20617070726f766564206279207265666572656e64756d2e244e6f745061737365640401247265665f696e6465781c013c5265666572656e64756d496e646578000504ac412070726f706f73616c20686173206265656e2072656a6563746564206279207265666572656e64756d2e2443616e63656c6c65640401247265665f696e6465781c013c5265666572656e64756d496e6465780006048041207265666572656e64756d20686173206265656e2063616e63656c6c65642e2444656c65676174656408010c77686f000130543a3a4163636f756e744964000118746172676574000130543a3a4163636f756e744964000704dc416e206163636f756e74206861732064656c65676174656420746865697220766f746520746f20616e6f74686572206163636f756e742e2c556e64656c65676174656404011c6163636f756e74000130543a3a4163636f756e744964000804e4416e206163636f756e74206861732063616e63656c6c656420612070726576696f75732064656c65676174696f6e206f7065726174696f6e2e185665746f65640c010c77686f000130543a3a4163636f756e74496400013470726f706f73616c5f686173682c011048323536000114756e74696c100138543a3a426c6f636b4e756d62657200090494416e2065787465726e616c2070726f706f73616c20686173206265656e207665746f65642e2c426c61636b6c697374656404013470726f706f73616c5f686173682c011048323536000a04c4412070726f706f73616c5f6861736820686173206265656e20626c61636b6c6973746564207065726d616e656e746c792e14566f7465640c0114766f746572000130543a3a4163636f756e7449640001247265665f696e6465781c013c5265666572656e64756d496e646578000110766f74659801644163636f756e74566f74653c42616c616e63654f663c543e3e000b0490416e206163636f756e742068617320766f74656420696e2061207265666572656e64756d205365636f6e6465640801207365636f6e646572000130543a3a4163636f756e74496400012870726f705f696e6465781c012450726f70496e646578000c048c416e206163636f756e742068617320736563636f6e64656420612070726f706f73616c4050726f706f73616c43616e63656c656404012870726f705f696e6465781c012450726f70496e646578000d0460412070726f706f73616c20676f742063616e63656c65642e2c4d657461646174615365740801146f776e6572a001344d657461646174614f776e6572043c4d65746164617461206f776e65722e0110686173682c0130507265696d616765486173680438507265696d61676520686173682e0e04d44d6574616461746120666f7220612070726f706f73616c206f722061207265666572656e64756d20686173206265656e207365742e3c4d65746164617461436c65617265640801146f776e6572a001344d657461646174614f776e6572043c4d65746164617461206f776e65722e0110686173682c0130507265696d616765486173680438507265696d61676520686173682e0f04e44d6574616461746120666f7220612070726f706f73616c206f722061207265666572656e64756d20686173206265656e20636c65617265642e4c4d657461646174615472616e736665727265640c0128707265765f6f776e6572a001344d657461646174614f776e6572046050726576696f7573206d65746164617461206f776e65722e01146f776e6572a001344d657461646174614f776e6572044c4e6577206d65746164617461206f776e65722e0110686173682c0130507265696d616765486173680438507265696d61676520686173682e1004ac4d6574616461746120686173206265656e207472616e7366657272656420746f206e6577206f776e65722e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909940c4070616c6c65745f64656d6f637261637938766f74655f7468726573686f6c6434566f74655468726573686f6c6400010c5053757065724d616a6f72697479417070726f76650000005053757065724d616a6f72697479416761696e73740001003853696d706c654d616a6f7269747900020000980c4070616c6c65745f64656d6f637261637910766f74652c4163636f756e74566f7465041c42616c616e636501180108205374616e64617264080110766f74659c0110566f746500011c62616c616e636518011c42616c616e63650000001453706c697408010c61796518011c42616c616e636500010c6e617918011c42616c616e6365000100009c0c4070616c6c65745f64656d6f637261637910766f746510566f74650000040008000000a00c4070616c6c65745f64656d6f6372616379147479706573344d657461646174614f776e657200010c2045787465726e616c0000002050726f706f73616c04001c012450726f70496e646578000100285265666572656e64756d04001c013c5265666572656e64756d496e64657800020000a40c4470616c6c65745f636f6c6c6563746976651870616c6c6574144576656e7408045400044900011c2050726f706f73656410011c6163636f756e74000130543a3a4163636f756e74496400013870726f706f73616c5f696e6465781c013450726f706f73616c496e64657800013470726f706f73616c5f686173682c011c543a3a486173680001247468726573686f6c641c012c4d656d626572436f756e74000008490141206d6f74696f6e2028676976656e20686173682920686173206265656e2070726f706f7365642028627920676976656e206163636f756e742920776974682061207468726573686f6c642028676976656e3c604d656d626572436f756e7460292e14566f74656414011c6163636f756e74000130543a3a4163636f756e74496400013470726f706f73616c5f686173682c011c543a3a48617368000114766f746564a80110626f6f6c00010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e74000108050141206d6f74696f6e2028676976656e20686173682920686173206265656e20766f746564206f6e20627920676976656e206163636f756e742c206c656176696e671501612074616c6c79202879657320766f74657320616e64206e6f20766f74657320676976656e20726573706563746976656c7920617320604d656d626572436f756e7460292e20417070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000204c041206d6f74696f6e2077617320617070726f76656420627920746865207265717569726564207468726573686f6c642e2c446973617070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000304d041206d6f74696f6e20776173206e6f7420617070726f76656420627920746865207265717569726564207468726573686f6c642e20457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74ac01384469737061746368526573756c74000404210141206d6f74696f6e207761732065786563757465643b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e384d656d626572457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74ac01384469737061746368526573756c740005044901412073696e676c65206d656d6265722064696420736f6d6520616374696f6e3b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e18436c6f7365640c013470726f706f73616c5f686173682c011c543a3a4861736800010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e740006045501412070726f706f73616c2077617320636c6f736564206265636175736520697473207468726573686f6c64207761732072656163686564206f7220616674657220697473206475726174696f6e207761732075702e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909a80000050000ac0418526573756c7408045401b0044501600108084f6b0400b0000000000c4572720400600000010000b00000040000b40c4470616c6c65745f636f6c6c6563746976651870616c6c6574144576656e7408045400044900011c2050726f706f73656410011c6163636f756e74000130543a3a4163636f756e74496400013870726f706f73616c5f696e6465781c013450726f706f73616c496e64657800013470726f706f73616c5f686173682c011c543a3a486173680001247468726573686f6c641c012c4d656d626572436f756e74000008490141206d6f74696f6e2028676976656e20686173682920686173206265656e2070726f706f7365642028627920676976656e206163636f756e742920776974682061207468726573686f6c642028676976656e3c604d656d626572436f756e7460292e14566f74656414011c6163636f756e74000130543a3a4163636f756e74496400013470726f706f73616c5f686173682c011c543a3a48617368000114766f746564a80110626f6f6c00010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e74000108050141206d6f74696f6e2028676976656e20686173682920686173206265656e20766f746564206f6e20627920676976656e206163636f756e742c206c656176696e671501612074616c6c79202879657320766f74657320616e64206e6f20766f74657320676976656e20726573706563746976656c7920617320604d656d626572436f756e7460292e20417070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000204c041206d6f74696f6e2077617320617070726f76656420627920746865207265717569726564207468726573686f6c642e2c446973617070726f76656404013470726f706f73616c5f686173682c011c543a3a48617368000304d041206d6f74696f6e20776173206e6f7420617070726f76656420627920746865207265717569726564207468726573686f6c642e20457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74ac01384469737061746368526573756c74000404210141206d6f74696f6e207761732065786563757465643b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e384d656d626572457865637574656408013470726f706f73616c5f686173682c011c543a3a48617368000118726573756c74ac01384469737061746368526573756c740005044901412073696e676c65206d656d6265722064696420736f6d6520616374696f6e3b20726573756c742077696c6c20626520604f6b602069662069742072657475726e656420776974686f7574206572726f722e18436c6f7365640c013470726f706f73616c5f686173682c011c543a3a4861736800010c7965731c012c4d656d626572436f756e740001086e6f1c012c4d656d626572436f756e740006045501412070726f706f73616c2077617320636c6f736564206265636175736520697473207468726573686f6c64207761732072656163686564206f7220616674657220697473206475726174696f6e207761732075702e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909b80c4470616c6c65745f6d656d626572736869701870616c6c6574144576656e740804540004490001182c4d656d6265724164646564000004e054686520676976656e206d656d626572207761732061646465643b2073656520746865207472616e73616374696f6e20666f722077686f2e344d656d62657252656d6f766564000104e854686520676976656e206d656d626572207761732072656d6f7665643b2073656520746865207472616e73616374696f6e20666f722077686f2e384d656d6265727353776170706564000204d854776f206d656d62657273207765726520737761707065643b2073656520746865207472616e73616374696f6e20666f722077686f2e304d656d6265727352657365740003041501546865206d656d62657273686970207761732072657365743b2073656520746865207472616e73616374696f6e20666f722077686f20746865206e6577207365742069732e284b65794368616e676564000404844f6e65206f6620746865206d656d6265727327206b657973206368616e6765642e1444756d6d790005046c5068616e746f6d206d656d6265722c206e6576657220757365642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909bc0c3c70616c6c65745f74726561737572791870616c6c6574144576656e740804540004490001242050726f706f73656404013870726f706f73616c5f696e6465781c013450726f706f73616c496e646578000004344e65772070726f706f73616c2e205370656e64696e670401406275646765745f72656d61696e696e6718013c42616c616e63654f663c542c20493e000104e45765206861766520656e6465642061207370656e6420706572696f6420616e642077696c6c206e6f7720616c6c6f636174652066756e64732e1c417761726465640c013870726f706f73616c5f696e6465781c013450726f706f73616c496e646578000114617761726418013c42616c616e63654f663c542c20493e00011c6163636f756e74000130543a3a4163636f756e7449640002047c536f6d652066756e64732068617665206265656e20616c6c6f63617465642e2052656a656374656408013870726f706f73616c5f696e6465781c013450726f706f73616c496e64657800011c736c617368656418013c42616c616e63654f663c542c20493e000304b0412070726f706f73616c207761732072656a65637465643b2066756e6473207765726520736c61736865642e144275726e7404012c6275726e745f66756e647318013c42616c616e63654f663c542c20493e00040488536f6d65206f66206f75722066756e64732068617665206265656e206275726e742e20526f6c6c6f766572040140726f6c6c6f7665725f62616c616e636518013c42616c616e63654f663c542c20493e0005042d015370656e64696e67206861732066696e69736865643b20746869732069732074686520616d6f756e74207468617420726f6c6c73206f76657220756e74696c206e657874207370656e642e1c4465706f73697404011476616c756518013c42616c616e63654f663c542c20493e0006047c536f6d652066756e64732068617665206265656e206465706f73697465642e345370656e64417070726f7665640c013870726f706f73616c5f696e6465781c013450726f706f73616c496e646578000118616d6f756e7418013c42616c616e63654f663c542c20493e00012c62656e6566696369617279000130543a3a4163636f756e7449640007049c41206e6577207370656e642070726f706f73616c20686173206265656e20617070726f7665642e3c55706461746564496e61637469766508012c726561637469766174656418013c42616c616e63654f663c542c20493e00012c646561637469766174656418013c42616c616e63654f663c542c20493e000804cc54686520696e6163746976652066756e6473206f66207468652070616c6c65742068617665206265656e20757064617465642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909c00c3870616c6c65745f7574696c6974791870616c6c6574144576656e74000118404261746368496e746572727570746564080114696e6465781c010c7533320001146572726f7260013444697370617463684572726f7200000855014261746368206f66206469737061746368657320646964206e6f7420636f6d706c6574652066756c6c792e20496e646578206f66206669727374206661696c696e6720646973706174636820676976656e2c2061734877656c6c20617320746865206572726f722e384261746368436f6d706c65746564000104c84261746368206f66206469737061746368657320636f6d706c657465642066756c6c792077697468206e6f206572726f722e604261746368436f6d706c65746564576974684572726f7273000204b44261746368206f66206469737061746368657320636f6d706c657465642062757420686173206572726f72732e344974656d436f6d706c657465640003041d01412073696e676c65206974656d2077697468696e2061204261746368206f6620646973706174636865732068617320636f6d706c657465642077697468206e6f206572726f722e284974656d4661696c65640401146572726f7260013444697370617463684572726f720004041101412073696e676c65206974656d2077697468696e2061204261746368206f6620646973706174636865732068617320636f6d706c657465642077697468206572726f722e30446973706174636865644173040118726573756c74ac01384469737061746368526573756c7400050458412063616c6c2077617320646973706174636865642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909c40c3870616c6c65745f76657374696e671870616c6c6574144576656e740404540001083856657374696e675570646174656408011c6163636f756e74000130543a3a4163636f756e744964000120756e76657374656418013042616c616e63654f663c543e000008510154686520616d6f756e742076657374656420686173206265656e20757064617465642e205468697320636f756c6420696e6469636174652061206368616e676520696e2066756e647320617661696c61626c652e25015468652062616c616e636520676976656e2069732074686520616d6f756e74207768696368206973206c65667420756e7665737465642028616e642074687573206c6f636b6564292e4056657374696e67436f6d706c6574656404011c6163636f756e74000130543a3a4163636f756e7449640001049c416e205c5b6163636f756e745c5d20686173206265636f6d652066756c6c79207665737465642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909c80c4070616c6c65745f7363686564756c65721870616c6c6574144576656e74040454000118245363686564756c65640801107768656e100138543a3a426c6f636b4e756d626572000114696e6465781c010c753332000004505363686564756c656420736f6d65207461736b2e2043616e63656c65640801107768656e100138543a3a426c6f636b4e756d626572000114696e6465781c010c7533320001044c43616e63656c656420736f6d65207461736b2e28446973706174636865640c01107461736bcc016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964d001404f7074696f6e3c5461736b4e616d653e000118726573756c74ac01384469737061746368526573756c74000204544469737061746368656420736f6d65207461736b2e3c43616c6c556e617661696c61626c650801107461736bcc016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964d001404f7074696f6e3c5461736b4e616d653e00030429015468652063616c6c20666f72207468652070726f7669646564206861736820776173206e6f7420666f756e6420736f20746865207461736b20686173206265656e2061626f727465642e38506572696f6469634661696c65640801107461736bcc016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964d001404f7074696f6e3c5461736b4e616d653e0004043d0154686520676976656e207461736b2077617320756e61626c6520746f2062652072656e657765642073696e636520746865206167656e64612069732066756c6c206174207468617420626c6f636b2e545065726d616e656e746c794f7665727765696768740801107461736bcc016c5461736b416464726573733c543a3a426c6f636b4e756d6265723e0001086964d001404f7074696f6e3c5461736b4e616d653e000504f054686520676976656e207461736b2063616e206e657665722062652065786563757465642073696e6365206974206973206f7665727765696768742e04304576656e747320747970652ecc00000408101c00d004184f7074696f6e04045401040108104e6f6e6500000010536f6d650400040000010000d40c3070616c6c65745f70726f78791870616c6c6574144576656e740404540001143450726f78794578656375746564040118726573756c74ac01384469737061746368526573756c74000004bc412070726f78792077617320657865637574656420636f72726563746c792c20776974682074686520676976656e2e2c507572654372656174656410011070757265000130543a3a4163636f756e74496400010c77686f000130543a3a4163636f756e74496400012870726f78795f74797065d80130543a3a50726f787954797065000150646973616d626967756174696f6e5f696e646578dc010c753136000108dc412070757265206163636f756e7420686173206265656e2063726561746564206279206e65772070726f7879207769746820676976656e90646973616d626967756174696f6e20696e64657820616e642070726f787920747970652e24416e6e6f756e6365640c01107265616c000130543a3a4163636f756e74496400011470726f7879000130543a3a4163636f756e74496400012463616c6c5f686173682c013443616c6c486173684f663c543e000204e0416e20616e6e6f756e63656d656e742077617320706c6163656420746f206d616b6520612063616c6c20696e20746865206675747572652e2850726f7879416464656410012464656c656761746f72000130543a3a4163636f756e74496400012464656c656761746565000130543a3a4163636f756e74496400012870726f78795f74797065d80130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d62657200030448412070726f7879207761732061646465642e3050726f787952656d6f76656410012464656c656761746f72000130543a3a4163636f756e74496400012464656c656761746565000130543a3a4163636f756e74496400012870726f78795f74797065d80130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d62657200040450412070726f7879207761732072656d6f7665642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909d808447370697269746e65745f72756e74696d652450726f7879547970650001180c416e790000002c4e6f6e5472616e7366657200010028476f7665726e616e63650002004050617261636861696e5374616b696e670003002c43616e63656c50726f7879000400484e6f6e4465706f736974436c61696d696e6700050000dc0000050400e00c3c70616c6c65745f707265696d6167651870616c6c6574144576656e7404045400010c144e6f746564040110686173682c011c543a3a48617368000004684120707265696d61676520686173206265656e206e6f7465642e24526571756573746564040110686173682c011c543a3a48617368000104784120707265696d61676520686173206265656e207265717565737465642e1c436c6561726564040110686173682c011c543a3a486173680002046c4120707265696d616765206861732062656e20636c65617265642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909e40c4470616c6c65745f6d656d626572736869701870616c6c6574144576656e740804540004490001182c4d656d6265724164646564000004e054686520676976656e206d656d626572207761732061646465643b2073656520746865207472616e73616374696f6e20666f722077686f2e344d656d62657252656d6f766564000104e854686520676976656e206d656d626572207761732072656d6f7665643b2073656520746865207472616e73616374696f6e20666f722077686f2e384d656d6265727353776170706564000204d854776f206d656d62657273207765726520737761707065643b2073656520746865207472616e73616374696f6e20666f722077686f2e304d656d6265727352657365740003041501546865206d656d62657273686970207761732072657365743b2073656520746865207472616e73616374696f6e20666f722077686f20746865206e6577207365742069732e284b65794368616e676564000404844f6e65206f6620746865206d656d6265727327206b657973206368616e6765642e1444756d6d790005046c5068616e746f6d206d656d6265722c206e6576657220757365642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909e80c2c70616c6c65745f746970731870616c6c6574144576656e74080454000449000114184e65775469700401207469705f686173682c011c543a3a486173680000049441206e6577207469702073756767657374696f6e20686173206265656e206f70656e65642e28546970436c6f73696e670401207469705f686173682c011c543a3a48617368000104d841207469702073756767657374696f6e206861732072656163686564207468726573686f6c6420616e6420697320636c6f73696e672e24546970436c6f7365640c01207469705f686173682c011c543a3a4861736800010c77686f000130543a3a4163636f756e7449640001187061796f757418013c42616c616e63654f663c542c20493e0002048441207469702073756767657374696f6e20686173206265656e20636c6f7365642e305469705265747261637465640401207469705f686173682c011c543a3a486173680003049041207469702073756767657374696f6e20686173206265656e207265747261637465642e28546970536c61736865640c01207469705f686173682c011c543a3a4861736800011866696e646572000130543a3a4163636f756e74496400011c6465706f73697418013c42616c616e63654f663c542c20493e0004048841207469702073756767657374696f6e20686173206265656e20736c61736865642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909ec0c3c70616c6c65745f6d756c74697369671870616c6c6574144576656e740404540001102c4e65774d756c74697369670c0124617070726f76696e67000130543a3a4163636f756e7449640001206d756c7469736967000130543a3a4163636f756e74496400012463616c6c5f6861736804012043616c6c486173680000048c41206e6577206d756c7469736967206f7065726174696f6e2068617320626567756e2e404d756c7469736967417070726f76616c100124617070726f76696e67000130543a3a4163636f756e74496400012474696d65706f696e74f0016454696d65706f696e743c543a3a426c6f636b4e756d6265723e0001206d756c7469736967000130543a3a4163636f756e74496400012463616c6c5f6861736804012043616c6c48617368000104c841206d756c7469736967206f7065726174696f6e20686173206265656e20617070726f76656420627920736f6d656f6e652e404d756c74697369674578656375746564140124617070726f76696e67000130543a3a4163636f756e74496400012474696d65706f696e74f0016454696d65706f696e743c543a3a426c6f636b4e756d6265723e0001206d756c7469736967000130543a3a4163636f756e74496400012463616c6c5f6861736804012043616c6c48617368000118726573756c74ac01384469737061746368526573756c740002049c41206d756c7469736967206f7065726174696f6e20686173206265656e2065786563757465642e444d756c746973696743616e63656c6c656410012863616e63656c6c696e67000130543a3a4163636f756e74496400012474696d65706f696e74f0016454696d65706f696e743c543a3a426c6f636b4e756d6265723e0001206d756c7469736967000130543a3a4163636f756e74496400012463616c6c5f6861736804012043616c6c48617368000304a041206d756c7469736967206f7065726174696f6e20686173206265656e2063616e63656c6c65642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909f0083c70616c6c65745f6d756c74697369672454696d65706f696e74042c426c6f636b4e756d62657201100008011868656967687410012c426c6f636b4e756d626572000114696e6465781c010c7533320000f40c1463747970651870616c6c6574144576656e74040454000108304354797065437265617465640800000144437479706543726561746f724f663c543e00002c01384374797065486173684f663c543e0000087441206e657720435479706520686173206265656e20637265617465642e885c5b63726561746f72206964656e7469666965722c20435479706520686173685c5d3043547970655570646174656404002c01384374797065486173684f663c543e000108ac496e666f726d6174696f6e2061626f7574206120435479706520686173206265656e20757064617465642e385c5b435479706520686173685c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909f80c2c6174746573746174696f6e1870616c6c6574144576656e74040454000110484174746573746174696f6e43726561746564100000013441747465737465724f663c543e00002c0138436c61696d486173684f663c543e00002c01384374797065486173684f663c543e0000fc01704f7074696f6e3c417574686f72697a6174696f6e49644f663c543e3e0000088c41206e6577206174746573746174696f6e20686173206265656e20637265617465642e05015c5b61747465737465722049442c20636c61696d20686173682c20435479706520686173682c20286f7074696f6e616c292064656c65676174696f6e2049445c5d484174746573746174696f6e5265766f6b6564080000013441747465737465724f663c543e00002c0138436c61696d486173684f663c543e00010880416e206174746573746174696f6e20686173206265656e207265766f6b65642e685c5b6163636f756e742069642c20636c61696d20686173685c5d484174746573746174696f6e52656d6f766564080000013441747465737465724f663c543e00002c0138436c61696d486173684f663c543e00020880416e206174746573746174696f6e20686173206265656e2072656d6f7665642e685c5b6163636f756e742069642c20636c61696d20686173685c5d404465706f7369745265636c61696d656408000001384163636f756e7449644f663c543e00002c0138436c61696d486173684f663c543e0003080501546865206465706f736974206f776e6572207265636c61696d65642061206465706f7369742062792072656d6f76696e6720616e206174746573746174696f6e2e685c5b6163636f756e742069642c20636c61696d20686173685c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909fc04184f7074696f6e0404540101010108104e6f6e6500000010536f6d6504000101000001000001010c3872756e74696d655f636f6d6d6f6e34617574686f72697a6174696f6e3c417574686f72697a6174696f6e4964043044656c65676174696f6e4964012c01042844656c65676174696f6e04002c013044656c65676174696f6e49640000000005010c2864656c65676174696f6e1870616c6c6574144576656e7404045400011c40486965726172636879437265617465640c0000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00002c01384374797065486173684f663c543e0000088441206e65772068696572617263687920686173206265656e20637265617465642ea05c5b63726561746f722049442c20726f6f74206e6f64652049442c20435459504520686173685c5d404869657261726368795265766f6b6564080000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00010874412068696572617263687920686173206265656e207265766f6b65642e705c5b7265766f6b65722049442c20726f6f74206e6f64652049445c5d4048696572617263687952656d6f766564080000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e000208dc412068696572617263687920686173206265656e2072656d6f7665642066726f6d207468652073746f72616765206f6e20636861696e2e705c5b72656d6f7665722049442c20726f6f74206e6f64652049445c5d4444656c65676174696f6e43726561746564180000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e000000014044656c656761746f7249644f663c543e00000901012c5065726d697373696f6e7300030c8841206e65772064656c65676174696f6e20686173206265656e20637265617465642efc5c5b63726561746f722049442c20726f6f74206e6f64652049442c2064656c65676174696f6e206e6f64652049442c20706172656e74206e6f64652049442c6864656c65676174652049442c207065726d697373696f6e735c5d4444656c65676174696f6e5265766f6b6564080000014044656c656761746f7249644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00040878412064656c65676174696f6e20686173206265656e207265766f6b65642e885c5b7265766f6b65722049442c2064656c65676174696f6e206e6f64652049445c5d4444656c65676174696f6e52656d6f76656408000001384163636f756e7449644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e00050878412064656c65676174696f6e20686173206265656e2072656d6f7665642e885c5b72656d6f7665722049442c2064656c65676174696f6e206e6f64652049445c5d404465706f7369745265636c61696d656408000001384163636f756e7449644f663c543e00002c015444656c65676174696f6e4e6f646549644f663c543e000608f8546865206465706f736974206f776e6572207265636c61696d65642061206465706f7369742062792072656d6f76696e6720612064656c65676174696f6eac737562747265652e205c5b7265766f6b65722049442c2064656c65676174696f6e206e6f64652049445c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090909010c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368792c5065726d697373696f6e730000040110626974731c010c75333200000d010c0c6469641870616c6c6574144576656e74040454000110284469644372656174656408000001384163636f756e7449644f663c543e00000001484469644964656e7469666965724f663c543e0000086c41206e65772044494420686173206265656e20637265617465642e985c5b7472616e73616374696f6e207369676e65722c20444944206964656e7469666965725c5d284469645570646174656404000001484469644964656e7469666965724f663c543e0001085c412044494420686173206265656e20757064617465642e485c5b444944206964656e7469666965725c5d2844696444656c6574656404000001484469644964656e7469666965724f663c543e0002085c412044494420686173206265656e2064656c657465642e485c5b444944206964656e7469666965725c5d4444696443616c6c4469737061746368656408000001484469644964656e7469666965724f663c543e0000ac01384469737061746368526573756c74000308a041204449442d617574686f72697365642063616c6c20686173206265656e2065786563757465642e7c5c5b4449442063616c6c65722c20646973706174636820726573756c745c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090911010c4470616c6c65745f6469645f6c6f6f6b75701870616c6c6574144576656e74040454000110584173736f63696174696f6e45737461626c69736865640800150101444c696e6b61626c654163636f756e74496400000001484469644964656e7469666965724f663c543e000004f841206e6577206173736f63696174696f6e206265747765656e20612044494420616e6420616e206163636f756e742049442077617320637265617465642e484173736f63696174696f6e52656d6f7665640800150101444c696e6b61626c654163636f756e74496400000001484469644964656e7469666965724f663c543e000104ec416e206173736f63696174696f6e206265747765656e20612044494420616e6420616e206163636f756e74204944207761732072656d6f7665642e444d6967726174696f6e50726f6772657373000204c454686572652077617320736f6d652070726f677265737320696e20746865206d6967726174696f6e2070726f636573732e484d6967726174696f6e436f6d706c65746564000304dc416c6c204163636f756e744964732068617665206265656e206d6967726174656420746f204c696e6b61626c654163636f756e7449642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090915010c4470616c6c65745f6469645f6c6f6f6b7570406c696e6b61626c655f6163636f756e74444c696e6b61626c654163636f756e7449640001082c4163636f756e744964323004001901012c4163636f756e74496432300000002c4163636f756e7449643332040000012c4163636f756e74496433320001000019010c4470616c6c65745f6469645f6c6f6f6b75701c6163636f756e742c4163636f756e7449643230000004001d0101205b75383b2032305d00001d0100000314000000080021010c4470616c6c65745f776562335f6e616d65731870616c6c6574144576656e740404540001103c576562334e616d65436c61696d65640801146f776e6572000148576562334e616d654f776e65724f663c543e0001106e616d6525010134576562334e616d654f663c543e0000047041206e6577206e616d6520686173206265656e20636c61696d65642e40576562334e616d6552656c65617365640801146f776e6572000148576562334e616d654f776e65724f663c543e0001106e616d6525010134576562334e616d654f663c543e0001046441206e616d6520686173206265656e2072656c65617365642e38576562334e616d6542616e6e65640401106e616d6525010134576562334e616d654f663c543e0002045c41206e616d6520686173206265656e2062616e6e65642e40576562334e616d65556e62616e6e65640401106e616d6525010134576562334e616d654f663c543e0003046441206e616d6520686173206265656e20756e62616e6e65642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090925010c4470616c6c65745f776562335f6e616d657324776562335f6e616d65344173636969576562334e616d650404540000040029010180426f756e6465645665633c75382c20543a3a4d61784e616d654c656e6774683e000029010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00002d010c487075626c69635f63726564656e7469616c731870616c6c6574144576656e740404540001104043726564656e7469616c53746f7265640801287375626a6563745f696431010130543a3a5375626a65637449640488546865207375626a656374206f6620746865206e65772063726564656e7469616c2e013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e0474546865206964206f6620746865206e65772063726564656e7469616c2e0004a041206e6577207075626c69632063726564656e7469616c20686173206265656e206973737565642e4443726564656e7469616c52656d6f7665640801287375626a6563745f696431010130543a3a5375626a65637449640498546865207375626a656374206f66207468652072656d6f7665642063726564656e7469616c2e013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e0484546865206964206f66207468652072656d6f7665642063726564656e7469616c2e01049841207075626c69632063726564656e7469616c7320686173206265656e2072656d6f7665642e4443726564656e7469616c5265766f6b656404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e0484546865206964206f6620746865207265766f6b65642063726564656e7469616c2e02049441207075626c69632063726564656e7469616c20686173206265656e207265766f6b65642e4c43726564656e7469616c556e7265766f6b656404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e048c546865206964206f662074686520756e7265766f6b65642063726564656e7469616c2e03049c41207075626c69632063726564656e7469616c20686173206265656e20756e7265766f6b65642e0490546865206576656e74732067656e65726174656420627920746869732070616c6c65742e31010c3872756e74696d655f636f6d6d6f6e18617373657473204173736574446964000004003501013c41737365744964656e746966696572000035010c3c6b696c745f61737365745f646964730876312041737365744469640000080120636861696e5f69643901011c436861696e496400012061737365745f69646101011c4173736574496400003901103c6b696c745f61737365745f6469647314636861696e0876311c436861696e49640001141845697031353504003d01013c4569703135355265666572656e63650000001842697031323204004101016447656e657369734865784861736833325265666572656e63650001001c446f7473616d6104004101016447656e657369734865784861736833325265666572656e636500020018536f6c616e6104004901017047656e657369734261736535384861736833325265666572656e63650003001c47656e6572696304005101013847656e65726963436861696e4964000400003d01103c6b696c745f61737365745f6469647314636861696e0876313c4569703135355265666572656e6365000004001801107531323800004101103c6b696c745f61737365745f6469647314636861696e0876316447656e657369734865784861736833325265666572656e636500000400450101205b75383b2031365d000045010000031000000008004901103c6b696c745f61737365745f6469647314636861696e0876317047656e657369734261736535384861736833325265666572656e6365000004004d010170426f756e6465645665633c75382c20436f6e73745533323c33323e3e00004d010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00005101103c6b696c745f61737365745f6469647314636861696e0876313847656e65726963436861696e496400000801246e616d6573706163655501015447656e65726963436861696e4e616d6573706163650001247265666572656e63655d01015447656e65726963436861696e5265666572656e636500005501103c6b696c745f61737365745f6469647314636861696e0876315447656e65726963436861696e4e616d65737061636500000400590101f0426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f434841494e5f4e414d4553504143455f4c454e4754485f5533323e3e000059010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00005d01103c6b696c745f61737365745f6469647314636861696e0876315447656e65726963436861696e5265666572656e6365000004004d0101f0426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f434841494e5f5245464552454e43455f4c454e4754485f5533323e3e00006101103c6b696c745f61737365745f646964731461737365740876311c4173736574496400011418536c6970343404006501013c536c697034345265666572656e636500000014457263323004007101018445766d536d617274436f6e747261637446756e6769626c655265666572656e63650001001845726337323104007501019045766d536d617274436f6e74726163744e6f6e46756e6769626c655265666572656e63650002001c4572633131353504007501019045766d536d617274436f6e74726163744e6f6e46756e6769626c655265666572656e63650003001c47656e6572696304008501013847656e6572696341737365744964000400006501103c6b696c745f61737365745f646964731461737365740876313c536c697034345265666572656e636500000400690101105532353600006901083c7072696d69746976655f74797065731055323536000004006d0101205b7536343b20345d00006d010000030400000010007101103c6b696c745f61737365745f646964731461737365740876318445766d536d617274436f6e747261637446756e6769626c655265666572656e6365000004001d0101205b75383b2032305d00007501103c6b696c745f61737365745f646964731461737365740876319045766d536d617274436f6e74726163744e6f6e46756e6769626c655265666572656e6365000008007101018445766d536d617274436f6e747261637446756e6769626c655265666572656e63650000790101b44f7074696f6e3c45766d536d617274436f6e74726163744e6f6e46756e6769626c654964656e7469666965723e0000790104184f7074696f6e040454017d010108104e6f6e6500000010536f6d6504007d0100000100007d01103c6b696c745f61737365745f646964731461737365740876319445766d536d617274436f6e74726163744e6f6e46756e6769626c654964656e74696669657200000400810101f4426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f41535345545f4944454e5449464945525f4c454e4754485f5533323e3e000081010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e00008501103c6b696c745f61737365745f646964731461737365740876313847656e657269634173736574496400000c01246e616d6573706163658901015447656e6572696341737365744e616d6573706163650001247265666572656e63658d01015447656e6572696341737365745265666572656e63650001086964950101784f7074696f6e3c47656e6572696341737365744964656e7469666965723e00008901103c6b696c745f61737365745f646964731461737365740876315447656e6572696341737365744e616d65737061636500000400590101f0426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f41535345545f4e414d4553504143455f4c454e4754485f5533323e3e00008d01103c6b696c745f61737365745f646964731461737365740876315447656e6572696341737365745265666572656e636500000400910101f0426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f41535345545f5245464552454e43455f4c454e4754485f5533323e3e000091010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000950104184f7074696f6e0404540199010108104e6f6e6500000010536f6d650400990100000100009901103c6b696c745f61737365745f646964731461737365740876315847656e6572696341737365744964656e74696669657200000400810101f4426f756e6465645665633c75382c20436f6e73745533323c4d4158494d554d5f41535345545f4944454e5449464945525f4c454e4754485f5533323e3e00009d010c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d1870616c6c6574144576656e7404045400011c6056616c69646174696f6e46756e6374696f6e53746f726564000004d05468652076616c69646174696f6e2066756e6374696f6e20686173206265656e207363686564756c656420746f206170706c792e6456616c69646174696f6e46756e6374696f6e4170706c69656404015472656c61795f636861696e5f626c6f636b5f6e756d1c015452656c6179436861696e426c6f636b4e756d62657200010445015468652076616c69646174696f6e2066756e6374696f6e20776173206170706c696564206173206f662074686520636f6e7461696e65642072656c617920636861696e20626c6f636b206e756d6265722e6c56616c69646174696f6e46756e6374696f6e446973636172646564000204b05468652072656c61792d636861696e2061626f727465642074686520757067726164652070726f636573732e4455706772616465417574686f72697a6564040124636f64655f686173682c011c543a3a486173680003047c416e207570677261646520686173206265656e20617574686f72697a65642e60446f776e776172644d657373616765735265636569766564040114636f756e741c010c7533320004040101536f6d6520646f776e77617264206d657373616765732068617665206265656e20726563656976656420616e642077696c6c2062652070726f6365737365642e64446f776e776172644d6573736167657350726f63657373656408012c7765696768745f75736564240118576569676874000120646d715f686561642c014472656c61795f636861696e3a3a48617368000504e0446f776e77617264206d6573736167657320776572652070726f636573736564207573696e672074686520676976656e207765696768742e445570776172644d65737361676553656e740401306d6573736167655f68617368d0013c4f7074696f6e3c58636d486173683e000604b8416e20757077617264206d657373616765207761732073656e7420746f207468652072656c617920636861696e2e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909a1010c6463756d756c75735f70616c6c65745f78636d705f71756575651870616c6c6574144576656e7404045400011c1c537563636573730801306d6573736167655f68617368d0013c4f7074696f6e3c58636d486173683e00011877656967687424011857656967687400000464536f6d652058434d20776173206578656375746564206f6b2e104661696c0c01306d6573736167655f68617368d0013c4f7074696f6e3c58636d486173683e0001146572726f72a501012058636d4572726f7200011877656967687424011857656967687400010440536f6d652058434d206661696c65642e2842616456657273696f6e0401306d6573736167655f68617368d0013c4f7074696f6e3c58636d486173683e000204544261642058434d2076657273696f6e20757365642e24426164466f726d61740401306d6573736167655f68617368d0013c4f7074696f6e3c58636d486173683e000304504261642058434d20666f726d617420757365642e3c58636d704d65737361676553656e740401306d6573736167655f68617368d0013c4f7074696f6e3c58636d486173683e000404c0416e2048524d50206d657373616765207761732073656e7420746f2061207369626c696e672070617261636861696e2e484f766572776569676874456e71756575656410011873656e646572a901011850617261496400011c73656e745f61741c014052656c6179426c6f636b4e756d626572000114696e64657810013c4f766572776569676874496e6465780001207265717569726564240118576569676874000504d4416e2058434d2065786365656465642074686520696e646976696475616c206d65737361676520776569676874206275646765742e484f7665727765696768745365727669636564080114696e64657810013c4f766572776569676874496e646578000110757365642401185765696768740006044101416e2058434d2066726f6d20746865206f7665727765696768742071756575652077617320657865637574656420776974682074686520676976656e2061637475616c2077656967687420757365642e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909a501100c78636d08763318747261697473144572726f720001a0204f766572666c6f7700000034556e696d706c656d656e74656400010060556e74727573746564526573657276654c6f636174696f6e00020064556e7472757374656454656c65706f72744c6f636174696f6e000300304c6f636174696f6e46756c6c000400544c6f636174696f6e4e6f74496e7665727469626c65000500244261644f726967696e0006003c496e76616c69644c6f636174696f6e0007003441737365744e6f74466f756e64000800544661696c6564546f5472616e7361637441737365740009003c4e6f74576974686472617761626c65000a00484c6f636174696f6e43616e6e6f74486f6c64000b0054457863656564734d61784d65737361676553697a65000c005844657374696e6174696f6e556e737570706f72746564000d00245472616e73706f7274000e0028556e726f757461626c65000f0030556e6b6e6f776e436c61696d001000384661696c6564546f4465636f6465001100404d6178576569676874496e76616c6964001200384e6f74486f6c64696e674665657300130030546f6f457870656e736976650014001054726170040010010c753634001500404578706563746174696f6e46616c73650016003850616c6c65744e6f74466f756e64001700304e616d654d69736d617463680018004c56657273696f6e496e636f6d70617469626c6500190050486f6c64696e67576f756c644f766572666c6f77001a002c4578706f72744572726f72001b00385265616e63686f724661696c6564001c00184e6f4465616c001d0028466565734e6f744d6574001e00244c6f636b4572726f72001f00304e6f5065726d697373696f6e00200028556e616e63686f726564002100384e6f744465706f73697461626c650022004c556e68616e646c656458636d56657273696f6e002300485765696768744c696d69745265616368656404002401185765696768740024001c426172726965720025004c5765696768744e6f74436f6d70757461626c650026004445786365656473537461636b4c696d697400270000a9010c48706f6c6b61646f745f70617261636861696e287072696d697469766573084964000004001c010c7533320000ad010c2870616c6c65745f78636d1870616c6c6574144576656e7404045400015c24417474656d707465640400b101015078636d3a3a6c61746573743a3a4f7574636f6d6500000ca8457865637574696f6e206f6620616e2058434d206d6573736167652077617320617474656d707465642e00345c5b206f7574636f6d65205c5d1053656e740c00b50101344d756c74694c6f636174696f6e0000b50101344d756c74694c6f636174696f6e0000d901011c58636d3c28293e00010c5c412058434d206d657373616765207761732073656e742e00885c5b206f726967696e2c2064657374696e6174696f6e2c206d657373616765205c5d48556e6578706563746564526573706f6e73650800b50101344d756c74694c6f636174696f6e000010011c517565727949640002145901517565727920726573706f6e736520726563656976656420776869636820646f6573206e6f74206d61746368206120726567697374657265642071756572792e2054686973206d61792062652062656361757365206155016d61746368696e6720717565727920776173206e6576657220726567697374657265642c206974206d617920626520626563617573652069742069732061206475706c696361746520726573706f6e73652c206f727062656361757365207468652071756572792074696d6564206f75742e00645c5b206f726967696e206c6f636174696f6e2c206964205c5d34526573706f6e73655265616479080010011c51756572794964000001020120526573706f6e73650003105d01517565727920726573706f6e736520686173206265656e20726563656976656420616e6420697320726561647920666f722074616b696e672077697468206074616b655f726573706f6e7365602e205468657265206973806e6f2072656769737465726564206e6f74696669636174696f6e2063616c6c2e00485c5b2069642c20726573706f6e7365205c5d204e6f7469666965640c0010011c5175657279496400000801087538000008010875380004105901517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e205468652072656769737465726564206e6f74696669636174696f6e20686173a86265656e206469737061746368656420616e64206578656375746564207375636365737366756c6c792e00885c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e646578205c5d404e6f746966794f766572776569676874140010011c517565727949640000080108753800000801087538000024011857656967687400002401185765696768740005146101517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e205468652072656769737465726564206e6f74696669636174696f6e20636f756c6441016e6f742062652064697370617463686564206265636175736520746865206469737061746368207765696768742069732067726561746572207468616e20746865206d6178696d756d20776569676874e46f726967696e616c6c7920627564676574656420627920746869732072756e74696d6520666f722074686520717565727920726573756c742e0019015c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e6465782c2061637475616c207765696768742c206d617820627564676574656420776569676874205c5d4c4e6f7469667944697370617463684572726f720c0010011c5175657279496400000801087538000008010875380006105501517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e2054686572652077617320612067656e6572616c206572726f722077697468886469737061746368696e6720746865206e6f74696669636174696f6e2063616c6c2e00885c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e646578205c5d484e6f746966794465636f64654661696c65640c0010011c5175657279496400000801087538000008010875380007145101517565727920726573706f6e736520686173206265656e20726563656976656420616e642071756572792069732072656d6f7665642e205468652064697370617463682077617320756e61626c6520746f20626559016465636f64656420696e746f2061206043616c6c603b2074686973206d696768742062652064756520746f2064697370617463682066756e6374696f6e20686176696e672061207369676e6174757265207768696368946973206e6f742060286f726967696e2c20517565727949642c20526573706f6e736529602e00885c5b2069642c2070616c6c657420696e6465782c2063616c6c20696e646578205c5d40496e76616c6964526573706f6e6465720c00b50101344d756c74694c6f636174696f6e000010011c517565727949640000250201544f7074696f6e3c4d756c74694c6f636174696f6e3e0008145901457870656374656420717565727920726573706f6e736520686173206265656e2072656365697665642062757420746865206f726967696e206c6f636174696f6e206f662074686520726573706f6e736520646f657355016e6f74206d6174636820746861742065787065637465642e205468652071756572792072656d61696e73207265676973746572656420666f722061206c617465722c2076616c69642c20726573706f6e736520746f6c626520726563656976656420616e642061637465642075706f6e2e00b05c5b206f726967696e206c6f636174696f6e2c2069642c206578706563746564206c6f636174696f6e205c5d5c496e76616c6964526573706f6e64657256657273696f6e0800b50101344d756c74694c6f636174696f6e000010011c517565727949640009245101457870656374656420717565727920726573706f6e736520686173206265656e2072656365697665642062757420746865206578706563746564206f726967696e206c6f636174696f6e20706c6163656420696e4d0173746f7261676520627920746869732072756e74696d652070726576696f75736c792063616e6e6f74206265206465636f6465642e205468652071756572792072656d61696e7320726567697374657265642e0041015468697320697320756e6578706563746564202873696e63652061206c6f636174696f6e20706c6163656420696e2073746f7261676520696e20612070726576696f75736c7920657865637574696e674d0172756e74696d652073686f756c64206265207265616461626c65207072696f7220746f2071756572792074696d656f75742920616e642064616e6765726f75732073696e63652074686520706f737369626c79590176616c696420726573706f6e73652077696c6c2062652064726f707065642e204d616e75616c20676f7665726e616e636520696e74657276656e74696f6e2069732070726f6261626c7920676f696e6720746f2062651c6e65656465642e00645c5b206f726967696e206c6f636174696f6e2c206964205c5d34526573706f6e736554616b656e040010011c51756572794964000a0cc8526563656976656420717565727920726573706f6e736520686173206265656e207265616420616e642072656d6f7665642e00205c5b206964205c5d34417373657473547261707065640c002c0110483235360000b50101344d756c74694c6f636174696f6e00004502015056657273696f6e65644d756c7469417373657473000b0cb8536f6d65206173736574732068617665206265656e20706c6163656420696e20616e20617373657420747261702e00685c5b20686173682c206f726967696e2c20617373657473205c5d5456657273696f6e4368616e67654e6f7469666965640c00b50101344d756c74694c6f636174696f6e00001c012858636d56657273696f6e0000e501012c4d756c7469417373657473000c142501416e2058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e206d65737361676520686173206265656e20617474656d7074656420746f2062652073656e742e00e054686520636f7374206f662073656e64696e672069742028626f726e652062792074686520636861696e2920697320696e636c756465642e007c5c5b2064657374696e6174696f6e2c20726573756c742c20636f7374205c5d5c537570706f7274656456657273696f6e4368616e6765640800b50101344d756c74694c6f636174696f6e00001c012858636d56657273696f6e000d10390154686520737570706f727465642076657273696f6e206f662061206c6f636174696f6e20686173206265656e206368616e6765642e2054686973206d69676874206265207468726f75676820616ec06175746f6d61746963206e6f74696669636174696f6e206f722061206d616e75616c20696e74657276656e74696f6e2e006c5c5b206c6f636174696f6e2c2058434d2076657273696f6e205c5d504e6f7469667954617267657453656e644661696c0c00b50101344d756c74694c6f636174696f6e000010011c517565727949640000a501012058636d4572726f72000e1059014120676976656e206c6f636174696f6e2077686963682068616420612076657273696f6e206368616e676520737562736372697074696f6e207761732064726f70706564206f77696e6720746f20616e206572726f727c73656e64696e6720746865206e6f74696669636174696f6e20746f2069742e007c5c5b206c6f636174696f6e2c2071756572792049442c206572726f72205c5d644e6f746966795461726765744d6967726174696f6e4661696c08007d02015856657273696f6e65644d756c74694c6f636174696f6e000010011c51756572794964000f1059014120676976656e206c6f636174696f6e2077686963682068616420612076657273696f6e206368616e676520737562736372697074696f6e207761732064726f70706564206f77696e6720746f20616e206572726f72b46d6967726174696e6720746865206c6f636174696f6e20746f206f7572206e65772058434d20666f726d61742e00605c5b206c6f636174696f6e2c207175657279204944205c5d54496e76616c69645175657269657256657273696f6e0800b50101344d756c74694c6f636174696f6e000010011c517565727949640010245501457870656374656420717565727920726573706f6e736520686173206265656e20726563656976656420627574207468652065787065637465642071756572696572206c6f636174696f6e20706c6163656420696e4d0173746f7261676520627920746869732072756e74696d652070726576696f75736c792063616e6e6f74206265206465636f6465642e205468652071756572792072656d61696e7320726567697374657265642e0041015468697320697320756e6578706563746564202873696e63652061206c6f636174696f6e20706c6163656420696e2073746f7261676520696e20612070726576696f75736c7920657865637574696e674d0172756e74696d652073686f756c64206265207265616461626c65207072696f7220746f2071756572792074696d656f75742920616e642064616e6765726f75732073696e63652074686520706f737369626c79590176616c696420726573706f6e73652077696c6c2062652064726f707065642e204d616e75616c20676f7665726e616e636520696e74657276656e74696f6e2069732070726f6261626c7920676f696e6720746f2062651c6e65656465642e00645c5b206f726967696e206c6f636174696f6e2c206964205c5d38496e76616c6964517565726965721000b50101344d756c74694c6f636174696f6e000010011c517565727949640000b50101344d756c74694c6f636174696f6e0000250201544f7074696f6e3c4d756c74694c6f636174696f6e3e0011145d01457870656374656420717565727920726573706f6e736520686173206265656e20726563656976656420627574207468652071756572696572206c6f636174696f6e206f662074686520726573706f6e736520646f657351016e6f74206d61746368207468652065787065637465642e205468652071756572792072656d61696e73207265676973746572656420666f722061206c617465722c2076616c69642c20726573706f6e736520746f6c626520726563656976656420616e642061637465642075706f6e2e0005015c5b206f726967696e206c6f636174696f6e2c2069642c20657870656374656420717565726965722c206d617962652061637475616c2071756572696572205c5d5056657273696f6e4e6f74696679537461727465640800b50101344d756c74694c6f636174696f6e0000e501012c4d756c74694173736574730012105901412072656d6f746520686173207265717565737465642058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e2066726f6d20757320616e64207765206861766520686f6e6f7265642069742e1d01412076657273696f6e20696e666f726d6174696f6e206d6573736167652069732073656e7420746f207468656d20616e642069747320636f737420697320696e636c756465642e00805c5b2064657374696e6174696f6e206c6f636174696f6e2c20636f7374205c5d5856657273696f6e4e6f746966795265717565737465640800b50101344d756c74694c6f636174696f6e0000e501012c4d756c746941737365747300130c41015765206861766520726571756573746564207468617420612072656d6f746520636861696e2073656e64732075732058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e732e00805c5b2064657374696e6174696f6e206c6f636174696f6e2c20636f7374205c5d6056657273696f6e4e6f74696679556e7265717565737465640800b50101344d756c74694c6f636174696f6e0000e501012c4d756c746941737365747300140c61015765206861766520726571756573746564207468617420612072656d6f746520636861696e2073746f70732073656e64696e672075732058434d2076657273696f6e206368616e6765206e6f74696669636174696f6e732e00805c5b2064657374696e6174696f6e206c6f636174696f6e2c20636f7374205c5d2046656573506169640800b50101344d756c74694c6f636174696f6e0000e501012c4d756c746941737365747300150c310146656573207765726520706169642066726f6d2061206c6f636174696f6e20666f7220616e206f7065726174696f6e20286f6674656e20666f72207573696e67206053656e6458636d60292e006c5c5b20706179696e67206c6f636174696f6e2c2066656573205c5d34417373657473436c61696d65640c002c0110483235360000b50101344d756c74694c6f636174696f6e00004502015056657273696f6e65644d756c746941737365747300160cc0536f6d65206173736574732068617665206265656e20636c61696d65642066726f6d20616e206173736574207472617000685c5b20686173682c206f726967696e2c20617373657473205c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909b101100c78636d087633187472616974731c4f7574636f6d6500010c20436f6d706c657465040024011857656967687400000028496e636f6d706c65746508002401185765696768740000a50101144572726f72000100144572726f720400a50101144572726f7200020000b501100c78636d087633346d756c74696c6f636174696f6e344d756c74694c6f636174696f6e000008011c706172656e74730801087538000120696e746572696f72b90101244a756e6374696f6e730000b901100c78636d087633246a756e6374696f6e73244a756e6374696f6e7300012410486572650000000858310400bd0101204a756e6374696f6e0001000858320800bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0002000858330c00bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0003000858341000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0004000858351400bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0005000858361800bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0006000858371c00bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0007000858382000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e0000bd0101204a756e6374696f6e00080000bd01100c78636d087633206a756e6374696f6e204a756e6374696f6e0001282450617261636861696e0400c101010c7533320000002c4163636f756e744964333208011c6e6574776f726bc50101444f7074696f6e3c4e6574776f726b49643e00010869640401205b75383b2033325d000100384163636f756e74496e646578363408011c6e6574776f726bc50101444f7074696f6e3c4e6574776f726b49643e000114696e64657828010c753634000200304163636f756e744b6579323008011c6e6574776f726bc50101444f7074696f6e3c4e6574776f726b49643e00010c6b65791d0101205b75383b2032305d0003003850616c6c6574496e7374616e6365040008010875380004003047656e6572616c496e6465780400cd010110753132380005002847656e6572616c4b65790801186c656e6774680801087538000110646174610401205b75383b2033325d000600244f6e6c794368696c6400070024506c7572616c6974790801086964d1010118426f6479496400011070617274d5010120426f6479506172740008003c476c6f62616c436f6e73656e7375730400c90101244e6574776f726b496400090000c1010000061c00c50104184f7074696f6e04045401c9010108104e6f6e6500000010536f6d650400c9010000010000c901100c78636d087633206a756e6374696f6e244e6574776f726b496400012824427947656e6573697304000401205b75383b2033325d000000184279466f726b080130626c6f636b5f6e756d62657210010c753634000128626c6f636b5f686173680401205b75383b2033325d00010020506f6c6b61646f74000200184b7573616d610003001c57657374656e6400040018526f636f636f00050018576f636f636f00060020457468657265756d040120636861696e5f696428010c7536340007002c426974636f696e436f72650008002c426974636f696e4361736800090000cd010000061800d101100c78636d087633206a756e6374696f6e18426f6479496400012810556e69740000001c4d6f6e696b6572040040011c5b75383b20345d00010014496e6465780400c101010c7533320002002445786563757469766500030024546563686e6963616c0004002c4c656769736c6174697665000500204a7564696369616c0006001c446566656e73650007003841646d696e697374726174696f6e00080020547265617375727900090000d501100c78636d087633206a756e6374696f6e20426f64795061727400011414566f6963650000001c4d656d62657273040114636f756e74c101010c753332000100204672616374696f6e08010c6e6f6dc101010c75333200011464656e6f6dc101010c7533320002004441744c6561737450726f706f7274696f6e08010c6e6f6dc101010c75333200011464656e6f6dc101010c753332000300484d6f72655468616e50726f706f7274696f6e08010c6e6f6dc101010c75333200011464656e6f6dc101010c75333200040000d9010c0c78636d0876330c58636d041043616c6c00000400dd0101585665633c496e737472756374696f6e3c43616c6c3e3e0000dd01000002e10100e1010c0c78636d0876332c496e737472756374696f6e041043616c6c0001c034576974686472617741737365740400e501012c4d756c7469417373657473000000545265736572766541737365744465706f73697465640400e501012c4d756c7469417373657473000100585265636569766554656c65706f7274656441737365740400e501012c4d756c7469417373657473000200345175657279526573706f6e736510012071756572795f696428011c51756572794964000120726573706f6e736501020120526573706f6e73650001286d61785f77656967687424011857656967687400011c71756572696572250201544f7074696f6e3c4d756c74694c6f636174696f6e3e000300345472616e736665724173736574080118617373657473e501012c4d756c746941737365747300012c62656e6566696369617279b50101344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c0118617373657473e501012c4d756c746941737365747300011064657374b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f6b696e64290201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737424011857656967687400011063616c6c2d02014c446f75626c65456e636f6465643c43616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572c101010c7533320001406d61785f6d6573736167655f73697a65c101010c7533320001306d61785f6361706163697479c101010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74c101010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72c101010c75333200011873656e646572c101010c753332000124726563697069656e74c101010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e0400b9010154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f720400310201445175657279526573706f6e7365496e666f000c00304465706f7369744173736574080118617373657473350201404d756c7469417373657446696c74657200012c62656e6566696369617279b50101344d756c74694c6f636174696f6e000d004c4465706f7369745265736572766541737365740c0118617373657473350201404d756c7469417373657446696c74657200011064657374b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e000e003445786368616e676541737365740c011067697665350201404d756c7469417373657446696c74657200011077616e74e501012c4d756c746941737365747300011c6d6178696d616ca80110626f6f6c000f005c496e6974696174655265736572766557697468647261770c0118617373657473350201404d756c7469417373657446696c74657200011c72657365727665b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473350201404d756c7469417373657446696c74657200011064657374b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e001100345265706f7274486f6c64696e67080134726573706f6e73655f696e666f310201445175657279526573706f6e7365496e666f000118617373657473350201404d756c7469417373657446696c74657200120030427579457865637574696f6e08011066656573ed0101284d756c746941737365740001307765696768745f6c696d69744102012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c65720400d901012458636d3c43616c6c3e0015002c536574417070656e6469780400d901012458636d3c43616c6c3e00160028436c6561724572726f7200170028436c61696d4173736574080118617373657473e501012c4d756c74694173736574730001187469636b6574b50101344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f776569676874240118576569676874001a0048556e73756273637269626556657273696f6e001b00244275726e41737365740400e501012c4d756c7469417373657473001c002c45787065637441737365740400e501012c4d756c7469417373657473001d00304578706563744f726967696e0400250201544f7074696f6e3c4d756c74694c6f636174696f6e3e001e002c4578706563744572726f720400050201504f7074696f6e3c287533322c204572726f72293e001f00504578706563745472616e7361637453746174757304001d0201384d617962654572726f72436f64650020002c517565727950616c6c657408012c6d6f64756c655f6e616d6530011c5665633c75383e000134726573706f6e73655f696e666f310201445175657279526573706f6e7365496e666f0021003045787065637450616c6c6574140114696e646578c101010c7533320001106e616d6530011c5665633c75383e00012c6d6f64756c655f6e616d6530011c5665633c75383e00012c63726174655f6d616a6f72c101010c75333200013c6d696e5f63726174655f6d696e6f72c101010c753332002200505265706f72745472616e736163745374617475730400310201445175657279526573706f6e7365496e666f0023004c436c6561725472616e736163745374617475730024003c556e6976657273616c4f726967696e0400bd0101204a756e6374696f6e002500344578706f72744d6573736167650c011c6e6574776f726bc90101244e6574776f726b496400012c64657374696e6174696f6eb9010154496e746572696f724d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e002600244c6f636b41737365740801146173736574ed0101284d756c74694173736574000120756e6c6f636b6572b50101344d756c74694c6f636174696f6e0027002c556e6c6f636b41737365740801146173736574ed0101284d756c74694173736574000118746172676574b50101344d756c74694c6f636174696f6e002800384e6f7465556e6c6f636b61626c650801146173736574ed0101284d756c746941737365740001146f776e6572b50101344d756c74694c6f636174696f6e0029003452657175657374556e6c6f636b0801146173736574ed0101284d756c746941737365740001186c6f636b6572b50101344d756c74694c6f636174696f6e002a002c536574466565734d6f64650401306a69745f7769746864726177a80110626f6f6c002b0020536574546f70696304000401205b75383b2033325d002c0028436c656172546f706963002d002c416c6961734f726967696e0400b50101344d756c74694c6f636174696f6e002e003c556e70616964457865637574696f6e0801307765696768745f6c696d69744102012c5765696768744c696d6974000130636865636b5f6f726967696e250201544f7074696f6e3c4d756c74694c6f636174696f6e3e002f0000e501100c78636d087633286d756c746961737365742c4d756c746941737365747300000400e901013c5665633c4d756c746941737365743e0000e901000002ed0100ed01100c78636d087633286d756c74696173736574284d756c7469417373657400000801086964f101011c4173736574496400010c66756ef501012c46756e676962696c6974790000f101100c78636d087633286d756c746961737365741c4173736574496400010820436f6e63726574650400b50101344d756c74694c6f636174696f6e00000020416273747261637404000401205b75383b2033325d00010000f501100c78636d087633286d756c746961737365742c46756e676962696c6974790001082046756e6769626c650400cd010110753132380000002c4e6f6e46756e6769626c650400f90101344173736574496e7374616e636500010000f901100c78636d087633286d756c74696173736574344173736574496e7374616e636500011824556e646566696e656400000014496e6465780400cd0101107531323800010018417272617934040040011c5b75383b20345d000200184172726179380400fd01011c5b75383b20385d0003001c417272617931360400450101205b75383b2031365d0004001c4172726179333204000401205b75383b2033325d00050000fd0100000308000000080001020c0c78636d08763320526573706f6e7365000118104e756c6c000000184173736574730400e501012c4d756c74694173736574730001003c457865637574696f6e526573756c740400050201504f7074696f6e3c287533322c204572726f72293e0002001c56657273696f6e04001c013873757065723a3a56657273696f6e0003002c50616c6c657473496e666f04000d020198426f756e6465645665633c50616c6c6574496e666f2c204d617850616c6c657473496e666f3e000400384469737061746368526573756c7404001d0201384d617962654572726f72436f646500050000050204184f7074696f6e0404540109020108104e6f6e6500000010536f6d650400090200000100000902000004081ca501000d020c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454011102045300000400190201185665633c543e000011020c0c78636d0876332850616c6c6574496e666f0000180114696e646578c101010c7533320001106e616d6515020180426f756e6465645665633c75382c204d617850616c6c65744e616d654c656e3e00012c6d6f64756c655f6e616d6515020180426f756e6465645665633c75382c204d617850616c6c65744e616d654c656e3e0001146d616a6f72c101010c7533320001146d696e6f72c101010c7533320001147061746368c101010c753332000015020c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e000019020000021102001d020c0c78636d087633384d617962654572726f72436f646500010c1c53756363657373000000144572726f7204002102018c426f756e6465645665633c75382c204d617844697370617463684572726f724c656e3e000100385472756e63617465644572726f7204002102018c426f756e6465645665633c75382c204d617844697370617463684572726f724c656e3e0002000021020c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000250204184f7074696f6e04045401b5010108104e6f6e6500000010536f6d650400b501000001000029020c0c78636d087632284f726967696e4b696e64000110184e617469766500000040536f7665726569676e4163636f756e74000100245375706572757365720002000c58636d000300002d020c0c78636d38646f75626c655f656e636f64656434446f75626c65456e636f646564040454000004011c656e636f64656430011c5665633c75383e000031020c0c78636d087633445175657279526573706f6e7365496e666f00000c012c64657374696e6174696f6eb50101344d756c74694c6f636174696f6e00012071756572795f696428011c517565727949640001286d61785f77656967687424011857656967687400003502100c78636d087633286d756c74696173736574404d756c7469417373657446696c74657200010820446566696e6974650400e501012c4d756c74694173736574730000001057696c6404003902013857696c644d756c74694173736574000100003902100c78636d087633286d756c746961737365743857696c644d756c746941737365740001100c416c6c00000014416c6c4f660801086964f101011c4173736574496400010c66756e3d02013c57696c6446756e676962696c69747900010028416c6c436f756e7465640400c101010c75333200020030416c6c4f66436f756e7465640c01086964f101011c4173736574496400010c66756e3d02013c57696c6446756e676962696c697479000114636f756e74c101010c753332000300003d02100c78636d087633286d756c746961737365743c57696c6446756e676962696c6974790001082046756e6769626c650000002c4e6f6e46756e6769626c650001000041020c0c78636d0876332c5765696768744c696d697400010824556e6c696d697465640000001c4c696d697465640400240118576569676874000100004502080c78636d5056657273696f6e65644d756c746941737365747300010808563204004902013c76323a3a4d756c74694173736574730001000856330400e501013c76333a3a4d756c7469417373657473000300004902100c78636d087632286d756c746961737365742c4d756c7469417373657473000004004d02013c5665633c4d756c746941737365743e00004d020000025102005102100c78636d087632286d756c74696173736574284d756c74694173736574000008010869645502011c4173736574496400010c66756e7502012c46756e676962696c69747900005502100c78636d087632286d756c746961737365741c4173736574496400010820436f6e63726574650400590201344d756c74694c6f636174696f6e000000204162737472616374040030011c5665633c75383e000100005902100c78636d087632346d756c74696c6f636174696f6e344d756c74694c6f636174696f6e000008011c706172656e74730801087538000120696e746572696f725d0201244a756e6374696f6e7300005d02100c78636d087632346d756c74696c6f636174696f6e244a756e6374696f6e7300012410486572650000000858310400610201204a756e6374696f6e0001000858320800610201204a756e6374696f6e0000610201204a756e6374696f6e0002000858330c00610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0003000858341000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0004000858351400610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0005000858361800610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0006000858371c00610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0007000858382000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e0000610201204a756e6374696f6e000800006102100c78636d087632206a756e6374696f6e204a756e6374696f6e0001242450617261636861696e0400c101010c7533320000002c4163636f756e744964333208011c6e6574776f726b650201244e6574776f726b496400010869640401205b75383b2033325d000100384163636f756e74496e646578363408011c6e6574776f726b650201244e6574776f726b4964000114696e64657828010c753634000200304163636f756e744b6579323008011c6e6574776f726b650201244e6574776f726b496400010c6b65791d0101205b75383b2032305d0003003850616c6c6574496e7374616e6365040008010875380004003047656e6572616c496e6465780400cd010110753132380005002847656e6572616c4b65790400690201805765616b426f756e6465645665633c75382c20436f6e73745533323c33323e3e000600244f6e6c794368696c6400070024506c7572616c69747908010869646d020118426f647949640001107061727471020120426f6479506172740008000065020c0c78636d087632244e6574776f726b49640001100c416e79000000144e616d65640400690201805765616b426f756e6465645665633c75382c20436f6e73745533323c33323e3e00010020506f6c6b61646f74000200184b7573616d610003000069020c4c626f756e6465645f636f6c6c656374696f6e73407765616b5f626f756e6465645f766563385765616b426f756e64656456656308045401080453000004003001185665633c543e00006d020c0c78636d08763218426f6479496400012810556e6974000000144e616d65640400690201805765616b426f756e6465645665633c75382c20436f6e73745533323c33323e3e00010014496e6465780400c101010c7533320002002445786563757469766500030024546563686e6963616c0004002c4c656769736c6174697665000500204a7564696369616c0006001c446566656e73650007003841646d696e697374726174696f6e0008002054726561737572790009000071020c0c78636d08763220426f64795061727400011414566f6963650000001c4d656d62657273040114636f756e74c101010c753332000100204672616374696f6e08010c6e6f6dc101010c75333200011464656e6f6dc101010c7533320002004441744c6561737450726f706f7274696f6e08010c6e6f6dc101010c75333200011464656e6f6dc101010c753332000300484d6f72655468616e50726f706f7274696f6e08010c6e6f6dc101010c75333200011464656e6f6dc101010c753332000400007502100c78636d087632286d756c746961737365742c46756e676962696c6974790001082046756e6769626c650400cd010110753132380000002c4e6f6e46756e6769626c650400790201344173736574496e7374616e6365000100007902100c78636d087632286d756c74696173736574344173736574496e7374616e636500011c24556e646566696e656400000014496e6465780400cd0101107531323800010018417272617934040040011c5b75383b20345d000200184172726179380400fd01011c5b75383b20385d0003001c417272617931360400450101205b75383b2031365d0004001c4172726179333204000401205b75383b2033325d00050010426c6f62040030011c5665633c75383e000600007d02080c78636d5856657273696f6e65644d756c74694c6f636174696f6e00010808563204005902014476323a3a4d756c74694c6f636174696f6e0001000856330400b501014476333a3a4d756c74694c6f636174696f6e0003000081020c4863756d756c75735f70616c6c65745f78636d1870616c6c6574144576656e7404045400010c34496e76616c6964466f726d617404000401205b75383b2033325d00000880446f776e77617264206d65737361676520697320696e76616c69642058434d2e205c5b206964205c5d48556e737570706f7274656456657273696f6e04000401205b75383b2033325d000108bc446f776e77617264206d65737361676520697320756e737570706f727465642076657273696f6e206f662058434d2e205c5b206964205c5d404578656375746564446f776e7761726408000401205b75383b2033325d0000b101011c4f7574636f6d65000208c4446f776e77617264206d65737361676520657865637574656420776974682074686520676976656e206f7574636f6d652e445c5b2069642c206f7574636f6d65205c5d04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a09090985020c6063756d756c75735f70616c6c65745f646d705f71756575651870616c6c6574144576656e7404045400011c34496e76616c6964466f726d61740401286d6573736167655f69640401244d657373616765496400000480446f776e77617264206d65737361676520697320696e76616c69642058434d2e48556e737570706f7274656456657273696f6e0401286d6573736167655f69640401244d6573736167654964000104bc446f776e77617264206d65737361676520697320756e737570706f727465642076657273696f6e206f662058434d2e404578656375746564446f776e776172640801286d6573736167655f69640401244d657373616765496400011c6f7574636f6d65b101011c4f7574636f6d65000204c4446f776e77617264206d65737361676520657865637574656420776974682074686520676976656e206f7574636f6d652e3c5765696768744578686175737465640c01286d6573736167655f69640401244d657373616765496400014072656d61696e696e675f77656967687424011857656967687400013c72657175697265645f776569676874240118576569676874000304f054686520776569676874206c696d697420666f722068616e646c696e6720646f776e77617264206d657373616765732077617320726561636865642e484f766572776569676874456e7175657565640c01286d6573736167655f69640401244d65737361676549640001406f7665727765696768745f696e64657810013c4f766572776569676874496e64657800013c72657175697265645f7765696768742401185765696768740004041901446f776e77617264206d657373616765206973206f76657277656967687420616e642077617320706c6163656420696e20746865206f7665727765696768742071756575652e484f76657277656967687453657276696365640801406f7665727765696768745f696e64657810013c4f766572776569676874496e64657800012c7765696768745f75736564240118576569676874000504e0446f776e77617264206d6573736167652066726f6d20746865206f766572776569676874207175657565207761732065786563757465642e504d61784d657373616765734578686175737465640401286d6573736167655f69640401244d6573736167654964000604b0546865206d6178696d756d206e756d626572206f6620646f776e77617264206d65737361676573207761732e04a1010a090909546865205b6576656e745d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f2920656d69747465640a090909627920746869732070616c6c65742e0a090909890208306672616d655f73797374656d14506861736500010c384170706c7945787472696e73696304001c010c7533320000003046696e616c697a6174696f6e00010038496e697469616c697a6174696f6e000200008d020000022c009102000002cc00950208306672616d655f73797374656d584c61737452756e74696d6555706772616465496e666f0000080130737065635f76657273696f6ec101014c636f6465633a3a436f6d706163743c7533323e000124737065635f6e616d659902016473705f72756e74696d653a3a52756e74696d65537472696e670000990200000502009d020c306672616d655f73797374656d1870616c6c65741043616c6c0404540001201872656d61726b04011872656d61726b30011c5665633c75383e000010684d616b6520736f6d65206f6e2d636861696e2072656d61726b2e0034232320436f6d706c6578697479202d20604f28312960387365745f686561705f7061676573040114706167657310010c753634000104f853657420746865206e756d626572206f6620706167657320696e2074686520576562417373656d626c7920656e7669726f6e6d656e74277320686561702e207365745f636f6465040110636f646530011c5665633c75383e0002106453657420746865206e65772072756e74696d6520636f64652e0034232320436f6d706c657869747931012d20604f2843202b2053296020776865726520604360206c656e677468206f662060636f64656020616e642060536020636f6d706c6578697479206f66206063616e5f7365745f636f6465605c7365745f636f64655f776974686f75745f636865636b73040110636f646530011c5665633c75383e000310190153657420746865206e65772072756e74696d6520636f646520776974686f757420646f696e6720616e7920636865636b73206f662074686520676976656e2060636f6465602e0034232320436f6d706c65786974798c2d20604f2843296020776865726520604360206c656e677468206f662060636f6465602c7365745f73746f726167650401146974656d73a10201345665633c4b657956616c75653e0004046853657420736f6d65206974656d73206f662073746f726167652e306b696c6c5f73746f726167650401106b657973a90201205665633c4b65793e000504744b696c6c20736f6d65206974656d732066726f6d2073746f726167652e2c6b696c6c5f70726566697808011870726566697830010c4b657900011c7375626b6579731c010c75333200061011014b696c6c20616c6c2073746f72616765206974656d7320776974682061206b657920746861742073746172747320776974682074686520676976656e207072656669782e0039012a2a4e4f54453a2a2a2057652072656c79206f6e2074686520526f6f74206f726967696e20746f2070726f7669646520757320746865206e756d626572206f66207375626b65797320756e6465723d0174686520707265666978207765206172652072656d6f76696e6720746f2061636375726174656c792063616c63756c6174652074686520776569676874206f6620746869732066756e6374696f6e2e4472656d61726b5f776974685f6576656e7404011872656d61726b30011c5665633c75383e000704a44d616b6520736f6d65206f6e2d636861696e2072656d61726b20616e6420656d6974206576656e742e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ea102000002a50200a50200000408303000a9020000023000ad020c306672616d655f73797374656d186c696d69747330426c6f636b5765696768747300000c0128626173655f626c6f636b2401185765696768740001246d61785f626c6f636b2401185765696768740001247065725f636c617373b10201845065724469737061746368436c6173733c57656967687473506572436c6173733e0000b1020c346672616d655f737570706f7274206469737061746368405065724469737061746368436c61737304045401b502000c01186e6f726d616cb50201045400012c6f7065726174696f6e616cb5020104540001246d616e6461746f7279b5020104540000b5020c306672616d655f73797374656d186c696d6974733c57656967687473506572436c6173730000100138626173655f65787472696e7369632401185765696768740001346d61785f65787472696e736963b90201384f7074696f6e3c5765696768743e0001246d61785f746f74616cb90201384f7074696f6e3c5765696768743e0001207265736572766564b90201384f7074696f6e3c5765696768743e0000b90204184f7074696f6e04045401240108104e6f6e6500000010536f6d650400240000010000bd020c306672616d655f73797374656d186c696d6974732c426c6f636b4c656e677468000004010c6d6178c10201545065724469737061746368436c6173733c7533323e0000c1020c346672616d655f737570706f7274206469737061746368405065724469737061746368436c617373040454011c000c01186e6f726d616c1c01045400012c6f7065726174696f6e616c1c0104540001246d616e6461746f72791c0104540000c502082873705f776569676874733c52756e74696d65446257656967687400000801107265616410010c753634000114777269746510010c7536340000c902082873705f76657273696f6e3852756e74696d6556657273696f6e0000200124737065635f6e616d659902013452756e74696d65537472696e67000124696d706c5f6e616d659902013452756e74696d65537472696e67000144617574686f72696e675f76657273696f6e1c010c753332000130737065635f76657273696f6e1c010c753332000130696d706c5f76657273696f6e1c010c75333200011061706973cd02011c4170697356656300014c7472616e73616374696f6e5f76657273696f6e1c010c75333200013473746174655f76657273696f6e08010875380000cd02040c436f7704045401d102000400d102000000d102000002d50200d50200000408fd011c00d9020c306672616d655f73797374656d1870616c6c6574144572726f720404540001183c496e76616c6964537065634e616d650000081101546865206e616d65206f662073706563696669636174696f6e20646f6573206e6f74206d61746368206265747765656e207468652063757272656e742072756e74696d6550616e6420746865206e65772072756e74696d652e685370656356657273696f6e4e65656473546f496e63726561736500010841015468652073706563696669636174696f6e2076657273696f6e206973206e6f7420616c6c6f77656420746f206465637265617365206265747765656e207468652063757272656e742072756e74696d6550616e6420746865206e65772072756e74696d652e744661696c6564546f4578747261637452756e74696d6556657273696f6e00020cec4661696c656420746f2065787472616374207468652072756e74696d652076657273696f6e2066726f6d20746865206e65772072756e74696d652e0009014569746865722063616c6c696e672060436f72655f76657273696f6e60206f72206465636f64696e67206052756e74696d6556657273696f6e60206661696c65642e4c4e6f6e44656661756c74436f6d706f73697465000304fc537569636964652063616c6c6564207768656e20746865206163636f756e7420686173206e6f6e2d64656661756c7420636f6d706f7369746520646174612e3c4e6f6e5a65726f526566436f756e74000404350154686572652069732061206e6f6e2d7a65726f207265666572656e636520636f756e742070726576656e74696e6720746865206163636f756e742066726f6d206265696e67207075726765642e3043616c6c46696c7465726564000504d0546865206f726967696e2066696c7465722070726576656e74207468652063616c6c20746f20626520646973706174636865642e046c4572726f7220666f72207468652053797374656d2070616c6c6574dd020c4070616c6c65745f74696d657374616d701870616c6c65741043616c6c0404540001040c73657404010c6e6f77280124543a3a4d6f6d656e7400003c54536574207468652063757272656e742074696d652e005501546869732063616c6c2073686f756c6420626520696e766f6b65642065786163746c79206f6e63652070657220626c6f636b2e2049742077696c6c2070616e6963206174207468652066696e616c697a6174696f6ed470686173652c20696620746869732063616c6c206861736e2774206265656e20696e766f6b656420627920746861742074696d652e0041015468652074696d657374616d702073686f756c642062652067726561746572207468616e207468652070726576696f7573206f6e652062792074686520616d6f756e742073706563696669656420627940604d696e696d756d506572696f64602e00d4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d7573742062652060496e686572656e74602e0034232320436f6d706c657869747931012d20604f2831296020284e6f7465207468617420696d706c656d656e746174696f6e73206f6620604f6e54696d657374616d7053657460206d75737420616c736f20626520604f283129602961012d20312073746f72616765207265616420616e6420312073746f72616765206d75746174696f6e2028636f64656320604f28312960292e202862656361757365206f6620604469645570646174653a3a74616b656020696e402020606f6e5f66696e616c697a656029d42d2031206576656e742068616e646c657220606f6e5f74696d657374616d705f736574602e204d75737420626520604f283129602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ee1020000040c0018a800e5020c3870616c6c65745f696e64696365731870616c6c65741043616c6c04045400011414636c61696d040114696e64657810013c543a3a4163636f756e74496e6465780000309841737369676e20616e2070726576696f75736c7920756e61737369676e656420696e6465782e00dc5061796d656e743a20604465706f736974602069732072657365727665642066726f6d207468652073656e646572206163636f756e742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00f02d2060696e646578603a2074686520696e64657820746f20626520636c61696d65642e2054686973206d757374206e6f7420626520696e207573652e0090456d6974732060496e64657841737369676e656460206966207375636365737366756c2e0034232320436f6d706c6578697479242d20604f283129602e207472616e7366657208010c6e6577e90201504163636f756e7449644c6f6f6b75704f663c543e000114696e64657810013c543a3a4163636f756e74496e6465780001305d0141737369676e20616e20696e64657820616c7265616479206f776e6564206279207468652073656e64657220746f20616e6f74686572206163636f756e742e205468652062616c616e6365207265736572766174696f6eb86973206566666563746976656c79207472616e7366657272656420746f20746865206e6577206163636f756e742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0025012d2060696e646578603a2074686520696e64657820746f2062652072652d61737369676e65642e2054686973206d757374206265206f776e6564206279207468652073656e6465722e5d012d20606e6577603a20746865206e6577206f776e6572206f662074686520696e6465782e20546869732066756e6374696f6e2069732061206e6f2d6f7020696620697420697320657175616c20746f2073656e6465722e0090456d6974732060496e64657841737369676e656460206966207375636365737366756c2e0034232320436f6d706c6578697479242d20604f283129602e1066726565040114696e64657810013c543a3a4163636f756e74496e646578000230944672656520757020616e20696e646578206f776e6564206279207468652073656e6465722e005d015061796d656e743a20416e792070726576696f7573206465706f73697420706c6163656420666f722074686520696e64657820697320756e726573657276656420696e207468652073656e646572206163636f756e742e005501546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e646572206d757374206f776e2074686520696e6465782e000d012d2060696e646578603a2074686520696e64657820746f2062652066726565642e2054686973206d757374206265206f776e6564206279207468652073656e6465722e0084456d6974732060496e646578467265656460206966207375636365737366756c2e0034232320436f6d706c6578697479242d20604f283129602e38666f7263655f7472616e736665720c010c6e6577e90201504163636f756e7449644c6f6f6b75704f663c543e000114696e64657810013c543a3a4163636f756e74496e646578000118667265657a65a80110626f6f6c0003345501466f72636520616e20696e64657820746f20616e206163636f756e742e205468697320646f65736e277420726571756972652061206465706f7369742e2049662074686520696e64657820697320616c7265616479e868656c642c207468656e20616e79206465706f736974206973207265696d62757273656420746f206974732063757272656e74206f776e65722e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e00a42d2060696e646578603a2074686520696e64657820746f206265202872652d2961737369676e65642e5d012d20606e6577603a20746865206e6577206f776e6572206f662074686520696e6465782e20546869732066756e6374696f6e2069732061206e6f2d6f7020696620697420697320657175616c20746f2073656e6465722e41012d2060667265657a65603a2069662073657420746f206074727565602c2077696c6c20667265657a652074686520696e64657820736f2069742063616e6e6f74206265207472616e736665727265642e0090456d6974732060496e64657841737369676e656460206966207375636365737366756c2e0034232320436f6d706c6578697479242d20604f283129602e18667265657a65040114696e64657810013c543a3a4163636f756e74496e6465780004304101467265657a6520616e20696e64657820736f2069742077696c6c20616c7761797320706f696e7420746f207468652073656e646572206163636f756e742e205468697320636f6e73756d657320746865206465706f7369742e005901546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d757374206861766520616c6e6f6e2d66726f7a656e206163636f756e742060696e646578602e00ac2d2060696e646578603a2074686520696e64657820746f2062652066726f7a656e20696e20706c6163652e0088456d6974732060496e64657846726f7a656e60206966207375636365737366756c2e0034232320436f6d706c6578697479242d20604f283129602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ee9020c2873705f72756e74696d65306d756c746961646472657373304d756c74694164647265737308244163636f756e7449640100304163636f756e74496e64657801b0011408496404000001244163636f756e74496400000014496e6465780400ed0201304163636f756e74496e6465780001000c526177040030011c5665633c75383e0002002441646472657373333204000401205b75383b2033325d0003002441646472657373323004001d0101205b75383b2032305d00040000ed02000006b000f1020c3870616c6c65745f696e64696365731870616c6c6574144572726f720404540001142c4e6f7441737369676e65640000048c54686520696e64657820776173206e6f7420616c72656164792061737369676e65642e204e6f744f776e6572000104a454686520696e6465782069732061737369676e656420746f20616e6f74686572206163636f756e742e14496e5573650002047054686520696e64657820776173206e6f7420617661696c61626c652e2c4e6f745472616e73666572000304c854686520736f7572636520616e642064657374696e6174696f6e206163636f756e747320617265206964656e746963616c2e245065726d616e656e74000404d054686520696e646578206973207065726d616e656e7420616e64206d6179206e6f742062652066726565642f6368616e6765642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909f5020c4c626f756e6465645f636f6c6c656374696f6e73407765616b5f626f756e6465645f766563385765616b426f756e64656456656308045401f902045300000400010301185665633c543e0000f902083c70616c6c65745f62616c616e6365732c42616c616e63654c6f636b041c42616c616e63650118000c01086964fd0101384c6f636b4964656e746966696572000118616d6f756e7418011c42616c616e636500011c726561736f6e73fd02011c526561736f6e730000fd02083c70616c6c65745f62616c616e6365731c526561736f6e7300010c0c466565000000104d6973630001000c416c6c000200000103000002f9020005030c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540109030453000004000d0301185665633c543e00000903083c70616c6c65745f62616c616e6365732c52657365727665446174610844526573657276654964656e74696669657201fd011c42616c616e63650118000801086964fd010144526573657276654964656e746966696572000118616d6f756e7418011c42616c616e636500000d0300000209030011030c3c70616c6c65745f62616c616e6365731870616c6c65741043616c6c080454000449000118207472616e7366657208011064657374e90201504163636f756e7449644c6f6f6b75704f663c543e00011476616c7565cd010128543a3a42616c616e6365000058d45472616e7366657220736f6d65206c697175696420667265652062616c616e636520746f20616e6f74686572206163636f756e742e000501607472616e73666572602077696c6c207365742074686520604672656542616c616e636560206f66207468652073656e64657220616e642072656365697665722e11014966207468652073656e6465722773206163636f756e742069732062656c6f7720746865206578697374656e7469616c206465706f736974206173206120726573756c74b06f6620746865207472616e736665722c20746865206163636f756e742077696c6c206265207265617065642e001501546865206469737061746368206f726967696e20666f7220746869732063616c6c206d75737420626520605369676e65646020627920746865207472616e736163746f722e0034232320436f6d706c657869747961012d20446570656e64656e74206f6e20617267756d656e747320627574206e6f7420637269746963616c2c20676976656e2070726f70657220696d706c656d656e746174696f6e7320666f7220696e70757420636f6e66696794202074797065732e205365652072656c617465642066756e6374696f6e732062656c6f772e31012d20497420636f6e7461696e732061206c696d69746564206e756d626572206f6620726561647320616e642077726974657320696e7465726e616c6c7920616e64206e6f20636f6d706c6578382020636f6d7075746174696f6e2e004852656c617465642066756e6374696f6e733a004d0120202d2060656e737572655f63616e5f77697468647261776020697320616c776179732063616c6c656420696e7465726e616c6c792062757420686173206120626f756e64656420636f6d706c65786974792e290120202d205472616e7366657272696e672062616c616e63657320746f206163636f756e7473207468617420646964206e6f74206578697374206265666f72652077696c6c206361757365cc2020202060543a3a4f6e4e65774163636f756e743a3a6f6e5f6e65775f6163636f756e746020746f2062652063616c6c65642e5d0120202d2052656d6f76696e6720656e6f7567682066756e64732066726f6d20616e206163636f756e742077696c6c20747269676765722060543a3a4475737452656d6f76616c3a3a6f6e5f756e62616c616e636564602e5d0120202d20607472616e736665725f6b6565705f616c6976656020776f726b73207468652073616d652077617920617320607472616e73666572602c206275742068617320616e206164646974696f6e616c20636865636bdc202020207468617420746865207472616e736665722077696c6c206e6f74206b696c6c20746865206f726967696e206163636f756e742e2c7365745f62616c616e63650c010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e0001206e65775f66726565cd010128543a3a42616c616e63650001306e65775f7265736572766564cd010128543a3a42616c616e636500012090536574207468652062616c616e636573206f66206120676976656e206163636f756e742e001d01546869732077696c6c20616c74657220604672656542616c616e63656020616e642060526573657276656442616c616e63656020696e2073746f726167652e2069742077696c6c3101616c736f20616c7465722074686520746f74616c2069737375616e6365206f66207468652073797374656d202860546f74616c49737375616e6365602920617070726f7072696174656c792e1501496620746865206e65772066726565206f722072657365727665642062616c616e63652069732062656c6f7720746865206578697374656e7469616c206465706f7369742cfc69742077696c6c20726573657420746865206163636f756e74206e6f6e63652028606672616d655f73797374656d3a3a4163636f756e744e6f6e636560292e00b0546865206469737061746368206f726967696e20666f7220746869732063616c6c2069732060726f6f74602e38666f7263655f7472616e736665720c0118736f75726365e90201504163636f756e7449644c6f6f6b75704f663c543e00011064657374e90201504163636f756e7449644c6f6f6b75704f663c543e00011476616c7565cd010128543a3a42616c616e63650002144d0145786163746c7920617320607472616e73666572602c2065786365707420746865206f726967696e206d75737420626520726f6f7420616e642074686520736f75726365206163636f756e74206d6179206265287370656369666965642e34232320436f6d706c65786974794d012d2053616d65206173207472616e736665722c20627574206164646974696f6e616c207265616420616e6420777269746520626563617573652074686520736f75726365206163636f756e74206973206e6f747c2020617373756d656420746f20626520696e20746865206f7665726c61792e4c7472616e736665725f6b6565705f616c69766508011064657374e90201504163636f756e7449644c6f6f6b75704f663c543e00011476616c7565cd010128543a3a42616c616e63650003184d0153616d6520617320746865205b607472616e73666572605d2063616c6c2c206275742077697468206120636865636b207468617420746865207472616e736665722077696c6c206e6f74206b696c6c207468653c6f726967696e206163636f756e742e00b8393925206f66207468652074696d6520796f752077616e74205b607472616e73666572605d20696e73746561642e00c05b607472616e73666572605d3a207374727563742e50616c6c65742e68746d6c236d6574686f642e7472616e73666572307472616e736665725f616c6c08011064657374e90201504163636f756e7449644c6f6f6b75704f663c543e0001286b6565705f616c697665a80110626f6f6c00044005015472616e736665722074686520656e74697265207472616e7366657261626c652062616c616e63652066726f6d207468652063616c6c6572206163636f756e742e0059014e4f54453a20546869732066756e6374696f6e206f6e6c7920617474656d70747320746f207472616e73666572205f7472616e7366657261626c655f2062616c616e6365732e2054686973206d65616e7320746861746101616e79206c6f636b65642c2072657365727665642c206f72206578697374656e7469616c206465706f7369747320287768656e20606b6565705f616c6976656020697320607472756560292c2077696c6c206e6f742062655d017472616e7366657272656420627920746869732066756e6374696f6e2e20546f20656e73757265207468617420746869732066756e6374696f6e20726573756c747320696e2061206b696c6c6564206163636f756e742c4501796f75206d69676874206e65656420746f207072657061726520746865206163636f756e742062792072656d6f76696e6720616e79207265666572656e636520636f756e746572732c2073746f72616765406465706f736974732c206574632e2e2e00c0546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205369676e65642e00a02d206064657374603a2054686520726563697069656e74206f6620746865207472616e736665722e59012d20606b6565705f616c697665603a204120626f6f6c65616e20746f2064657465726d696e652069662074686520607472616e736665725f616c6c60206f7065726174696f6e2073686f756c642073656e6420616c6c4d0120206f66207468652066756e647320746865206163636f756e74206861732c2063617573696e67207468652073656e646572206163636f756e7420746f206265206b696c6c6564202866616c7365292c206f72590120207472616e736665722065766572797468696e6720657863657074206174206c6561737420746865206578697374656e7469616c206465706f7369742c2077686963682077696c6c2067756172616e74656520746fd420206b656570207468652073656e646572206163636f756e7420616c697665202874727565292e20232320436f6d706c657869747939012d204f2831292e204a757374206c696b65207472616e736665722c206275742072656164696e672074686520757365722773207472616e7366657261626c652062616c616e63652066697273742e3c666f7263655f756e7265736572766508010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e74180128543a3a42616c616e636500050cb0556e7265736572766520736f6d652062616c616e63652066726f6d2061207573657220627920666f7263652e006c43616e206f6e6c792062652063616c6c656420627920524f4f542e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e15030c3c70616c6c65745f62616c616e6365731870616c6c6574144572726f720804540004490001203856657374696e6742616c616e63650000049856657374696e672062616c616e636520746f6f206869676820746f2073656e642076616c7565544c69717569646974795265737472696374696f6e73000104c44163636f756e74206c6971756964697479207265737472696374696f6e732070726576656e74207769746864726177616c4c496e73756666696369656e7442616c616e63650002047842616c616e636520746f6f206c6f7720746f2073656e642076616c75652e484578697374656e7469616c4465706f736974000304e856616c756520746f6f206c6f7720746f20637265617465206163636f756e742064756520746f206578697374656e7469616c206465706f736974244b656570416c6976650004048c5472616e736665722f7061796d656e7420776f756c64206b696c6c206163636f756e745c4578697374696e6756657374696e675363686564756c65000504c8412076657374696e67207363686564756c6520616c72656164792065786973747320666f722074686973206163636f756e742c446561644163636f756e740006048842656e6566696369617279206163636f756e74206d757374207072652d65786973743c546f6f4d616e795265736572766573000704ac4e756d626572206f66206e616d656420726573657276657320657863656564204d6178526573657276657304b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090919030c3473705f61726974686d657469632c66697865645f706f696e7424466978656455313238000004001801107531323800001d03086870616c6c65745f7472616e73616374696f6e5f7061796d656e742052656c6561736573000108245631416e6369656e740000000856320001000021030c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540125030453000004002d0301185665633c543e00002503104473705f636f6e73656e7375735f617572611c737232353531392c6170705f73723235353139185075626c6963000004002903013c737232353531393a3a5075626c6963000029030c1c73705f636f72651c73723235353139185075626c6963000004000401205b75383b2033325d00002d030000022503003103084873705f636f6e73656e7375735f736c6f747310536c6f740000040010010c75363400003503000002000039030000023d03003d030000040800410300410308447370697269746e65745f72756e74696d652c53657373696f6e4b657973000004011061757261250301c43c41757261206173202463726174653a3a426f756e64546f52756e74696d654170705075626c69633e3a3a5075626c6963000045030000021c004903000004084d0330004d030c1c73705f636f72651863727970746f244b65795479706549640000040040011c5b75383b20345d000051030c3870616c6c65745f73657373696f6e1870616c6c65741043616c6c040454000108207365745f6b6579730801106b6579734103011c543a3a4b65797300011470726f6f6630011c5665633c75383e000024e453657473207468652073657373696f6e206b6579287329206f66207468652066756e6374696f6e2063616c6c657220746f20606b657973602e1d01416c6c6f777320616e206163636f756e7420746f20736574206974732073657373696f6e206b6579207072696f7220746f206265636f6d696e6720612076616c696461746f722ec05468697320646f65736e27742074616b652065666665637420756e74696c20746865206e6578742073657373696f6e2e00d0546865206469737061746368206f726967696e206f6620746869732066756e6374696f6e206d757374206265207369676e65642e0034232320436f6d706c657869747959012d20604f283129602e2041637475616c20636f737420646570656e6473206f6e20746865206e756d626572206f66206c656e677468206f662060543a3a4b6579733a3a6b65795f69647328296020776869636820697320202066697865642e2870757267655f6b657973000130c852656d6f76657320616e792073657373696f6e206b6579287329206f66207468652066756e6374696f6e2063616c6c65722e00c05468697320646f65736e27742074616b652065666665637420756e74696c20746865206e6578742073657373696f6e2e005501546865206469737061746368206f726967696e206f6620746869732066756e6374696f6e206d757374206265205369676e656420616e6420746865206163636f756e74206d757374206265206569746865722062655d01636f6e7665727469626c6520746f20612076616c696461746f72204944207573696e672074686520636861696e2773207479706963616c2061646472657373696e672073797374656d20287468697320757375616c6c7951016d65616e73206265696e67206120636f6e74726f6c6c6572206163636f756e7429206f72206469726563746c7920636f6e7665727469626c6520696e746f20612076616c696461746f722049442028776869636894757375616c6c79206d65616e73206265696e672061207374617368206163636f756e74292e0034232320436f6d706c65786974793d012d20604f2831296020696e206e756d626572206f66206b65792074797065732e2041637475616c20636f737420646570656e6473206f6e20746865206e756d626572206f66206c656e677468206f6698202060543a3a4b6579733a3a6b65795f6964732829602077686963682069732066697865642e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e55030c3870616c6c65745f73657373696f6e1870616c6c6574144572726f7204045400011430496e76616c696450726f6f6600000460496e76616c6964206f776e6572736869702070726f6f662e5c4e6f4173736f63696174656456616c696461746f7249640001049c4e6f206173736f6369617465642076616c696461746f7220494420666f72206163636f756e742e344475706c6963617465644b65790002046452656769737465726564206475706c6963617465206b65792e184e6f4b657973000304a44e6f206b65797320617265206173736f63696174656420776974682074686973206163636f756e742e244e6f4163636f756e7400040419014b65792073657474696e67206163636f756e74206973206e6f74206c6976652c20736f206974277320696d706f737369626c6520746f206173736f6369617465206b6579732e04744572726f7220666f72207468652073657373696f6e2070616c6c65742e59030c4470617261636861696e5f7374616b696e6714747970657324526f756e64496e666f042c426c6f636b4e756d6265720110000c011c63757272656e741c013053657373696f6e496e646578000114666972737410012c426c6f636b4e756d6265720001186c656e67746810012c426c6f636b4e756d62657200005d030c4470617261636861696e5f7374616b696e671474797065734444656c65676174696f6e436f756e7465720000080114726f756e641c013053657373696f6e496e64657800011c636f756e7465721c010c753332000061030c4470617261636861696e5f7374616b696e67147479706573145374616b6508244163636f756e74496401001c42616c616e63650118000801146f776e65720001244163636f756e744964000118616d6f756e7418011c42616c616e6365000065030c4470617261636861696e5f7374616b696e671474797065732443616e6469646174650c244163636f756e74496401001c42616c616e63650118644d617844656c656761746f727350657243616e646964617465000014010869640001244163636f756e7449640001147374616b6518011c42616c616e636500012864656c656761746f727369030101014f7264657265645365743c5374616b653c4163636f756e7449642c2042616c616e63653e2c204d617844656c656761746f727350657243616e6469646174653e000114746f74616c18011c42616c616e63650001187374617475737503013c43616e646964617465537461747573000069030c4470617261636861696e5f7374616b696e670c736574284f7264657265645365740804540161030453000004006d030140426f756e6465645665633c542c20533e00006d030c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454016103045300000400710301185665633c543e0000710300000261030075030c4470617261636861696e5f7374616b696e671474797065733c43616e646964617465537461747573000108184163746976650000001c4c656176696e6704001c013053657373696f6e496e6465780001000079030c4470617261636861696e5f7374616b696e6714747970657328546f74616c5374616b65041c42616c616e6365011800080124636f6c6c61746f727318011c42616c616e636500012864656c656761746f727318011c42616c616e636500007d030c4470617261636861696e5f7374616b696e670c736574284f72646572656453657408045401610304530000040081030140426f756e6465645665633c542c20533e000081030c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454016103045300000400710301185665633c543e000085030c4470617261636861696e5f7374616b696e6724696e666c6174696f6e34496e666c6174696f6e496e666f0000080120636f6c6c61746f728903012c5374616b696e67496e666f00012464656c656761746f728903012c5374616b696e67496e666f000089030c4470617261636861696e5f7374616b696e6724696e666c6174696f6e2c5374616b696e67496e666f00000801206d61785f726174658c012c5065727175696e74696c6c00012c7265776172645f726174658d0301285265776172645261746500008d030c4470617261636861696e5f7374616b696e6724696e666c6174696f6e28526577617264526174650000080118616e6e75616c8c012c5065727175696e74696c6c0001247065725f626c6f636b8c012c5065727175696e74696c6c000091030c4c626f756e6465645f636f6c6c656374696f6e7344626f756e6465645f62747265655f6d61703c426f756e64656442547265654d61700c044b0110045601180453000004009503013842547265654d61703c4b2c20563e00009503042042547265654d617008044b011004560118000400990300000099030000029d03009d0300000408101800a1030c4470617261636861696e5f7374616b696e671870616c6c65741043616c6c0404540001543c666f7263655f6e65775f726f756e64000018d0466f7263657320746865207374617274206f6620746865206e657720726f756e6420696e20746865206e65787420626c6f636b2e00a0546865206e657720726f756e642077696c6c20626520656e666f7263656420766961203c54206173a453686f756c64456e6453657373696f6e3c5f3e3e3a3a73686f756c645f656e645f73657373696f6e2e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e347365745f696e666c6174696f6e100170636f6c6c61746f725f6d61785f726174655f70657263656e746167658c012c5065727175696e74696c6c000198636f6c6c61746f725f616e6e75616c5f7265776172645f726174655f70657263656e746167658c012c5065727175696e74696c6c00017464656c656761746f725f6d61785f726174655f70657263656e746167658c012c5065727175696e74696c6c00019c64656c656761746f725f616e6e75616c5f7265776172645f726174655f70657263656e746167658c012c5065727175696e74696c6c00013cf05365742074686520616e6e75616c20696e666c6174696f6e207261746520746f20646572697665207065722d726f756e6420696e666c6174696f6e2e00110154686520696e666c6174696f6e2064657461696c732061726520636f6e736964657265642076616c69642069662074686520616e6e75616c207265776172642072617465f0697320617070726f78696d6174656c7920746865207065722d626c6f636b207265776172642072617465206d756c7469706c69656420627920746865ac657374696d617465642a20746f74616c206e756d626572206f6620626c6f636b732070657220796561722e00cc54686520657374696d61746564206176657261676520626c6f636b2074696d65206973207477656c7665207365636f6e64732e000d014e4f54453a204974657261746573206f7665722043616e646964617465506f6f6c20616e6420666f7220656163682063616e646964617465206f766572207468656972090164656c656761746f727320746f207570646174652074686569722072657761726473206265666f72652074686520726577617264207261746573206368616e67652ee04e6565647320746f20626520696d70726f766564207768656e207363616c696e6720757020604d6178546f7043616e64696461746573602e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0068456d6974732060526f756e64496e666c6174696f6e536574602e6c7365745f6d61785f73656c65637465645f63616e6469646174657304010c6e65771c010c75333200022c090153657420746865206d6178696d756d206e756d626572206f6620636f6c6c61746f722063616e6469646174657320746861742063616e2062652073656c6563746564a861742074686520626567696e6e696e67206f6620656163682076616c69646174696f6e20726f756e642e00e84368616e67657320617265206e6f74206170706c69656420756e74696c20746865207374617274206f6620746865206e65787420726f756e642e000d01546865206e65772076616c7565206d75737420626520686967686572207468616e20746865206d696e696d756d20616c6c6f7765642061732073657420696e207468655c70616c6c6574277320636f6e66696775726174696f6e2e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0084456d69747320604d617853656c656374656443616e64696461746573536574602e507365745f626c6f636b735f7065725f726f756e6404010c6e6577100138543a3a426c6f636b4e756d62657200032cd453657420746865206e756d626572206f6620626c6f636b7320656163682076616c69646174696f6e20726f756e64206c617374732e000901496620746865206e65772076616c7565206973206c657373207468616e20746865206c656e677468206f66207468652063757272656e7420726f756e642c20746865050173797374656d2077696c6c20696d6d6564696174656c79206d6f766520746f20746865206e65787420726f756e6420696e20746865206e65787420626c6f636b2e000d01546865206e65772076616c7565206d75737420626520686967686572207468616e20746865206d696e696d756d20616c6c6f7765642061732073657420696e207468655c70616c6c6574277320636f6e66696775726174696f6e2e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0068456d6974732060426c6f636b73506572526f756e64536574602e5c7365745f6d61785f63616e6469646174655f7374616b6504010c6e657718013042616c616e63654f663c543e000418110153657420746865206d6178696d616c20616d6f756e74206120636f6c6c61746f722063616e207374616b652e204578697374696e67207374616b657320617265206e6f74206368616e6765642e0084546865206469737061746368206f726967696e206d75737420626520526f6f742e0084456d69747320604d617843616e6469646174655374616b654368616e676564602e58666f7263655f72656d6f76655f63616e646964617465040120636f6c6c61746f72e902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f757263650005300101466f726365646c792072656d6f766573206120636f6c6c61746f722063616e6469646174652066726f6d2074686520546f7043616e6469646174657320616e64e4636c6561727320616c6c206173736f6369617465642073746f7261676520666f72207468652063616e64696461746520616e642074686569722c64656c656761746f72732e00fc507265706172657320756e7374616b696e67206f66207468652063616e6469646174657320616e642074686569722064656c656761746f7273207374616b65f077686963682063616e20626520756e6c6f636b6564207669612060756e6c6f636b5f756e7374616b6564602061667465722077616974696e6720617409016c6561737420605374616b654475726174696f6e60206d616e7920626c6f636b732e20416c736f20696e6372656d656e7473207265776172647320666f722074686578636f6c6c61746f7220616e642074686569722064656c656761746f72732e00d4496e6372656d656e74732072657761726473206f662063616e64696461746520616e642074686569722064656c656761746f72732e0064456d697473206043616e64696461746552656d6f766564602e3c6a6f696e5f63616e646964617465730401147374616b6518013042616c616e63654f663c543e000644904a6f696e2074686520736574206f6620636f6c6c61746f722063616e646964617465732e00f8496e20746865206e65787420626c6f636b732c2069662074686520636f6c6c61746f722063616e6469646174652068617320656e6f7567682066756e6473fc7374616b656420746f20626520696e636c7564656420696e20616e79206f662074686520746f7020604d617853656c656374656443616e64696461746573600d01706f736974696f6e732c2069742077696c6c20626520696e636c7564656420696e2074686520736574206f6620706f74656e7469616c20617574686f72732074686174050177696c6c2062652073656c656374656420627920746865207374616b652d77656967687465642072616e646f6d2073656c656374696f6e2066756e6374696f6e2e00fc546865207374616b65642066756e6473206f6620746865206e657720636f6c6c61746f722063616e6469646174652061726520616464656420746f2074686568746f74616c207374616b65206f66207468652073797374656d2e00110154686520746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e2074686520616c6c6f7765642072616e67652061738873657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e00f0546865206469737061746368206f726967696e206d757374206e6f7420626520616c72656164792070617274206f662074686520636f6c6c61746f729463616e64696461746573206e6f72206f66207468652064656c656761746f7273207365742e0084456d69747320604a6f696e6564436f6c6c61746f7243616e64696461746573602e54696e69745f6c656176655f63616e6469646174657300076cc05265717565737420746f206c656176652074686520736574206f6620636f6c6c61746f722063616e646964617465732e0005014f6e20737563636573732c20746865206163636f756e7420697320696d6d6564696174656c792072656d6f7665642066726f6d207468652063616e6469646174651101706f6f6c20746f2070726576656e742073656c656374696f6e206173206120636f6c6c61746f7220696e206675747572652076616c69646174696f6e20726f756e64732cd862757420756e7374616b696e67206f66207468652066756e6473206973206578656375746564207769746820612064656c6179206f665c605374616b654475726174696f6e6020626c6f636b732e00ac546865206578697420726571756573742063616e2062652072657665727365642062792063616c6c696e67686063616e63656c5f6c656176655f63616e64696461746573602e00f454686973206f7065726174696f6e2061666665637473207468652070616c6c6574277320746f74616c207374616b6520616d6f756e742e204974206973110175706461746564206576656e2074686f756768207468652066756e6473206f66207468652063616e6469646174652077686f207369676e616c656420746f206c65617665fc617265207374696c6c206c6f636b656420666f7220604578697444656c617960202b20605374616b654475726174696f6e60206d6f726520626c6f636b732e000d014e4f544520313a2055706f6e207374617274696e672061206e65772073657373696f6e5f6920696e20606e65775f73657373696f6e602c207468652063757272656e741101746f702063616e64696461746573206172652073656c656374656420746f20626520626c6f636b20617574686f727320666f722073657373696f6e5f692b312e20416e7905016368616e67657320746f2074686520746f702063616e64696461746573206166746572776172647320646f206e6f74206566666563742074686520736574206f6660617574686f727320666f722073657373696f6e5f692b312ed8546875732c207765206861766520746f206d616b652073757265206e6f6e65206f6620746865736520636f6c6c61746f72732063616ebc6c65617665206265666f72652073657373696f6e5f692b3120656e64732062792064656c6179696e67207468656972846578697420666f7220604578697444656c617960206d616e7920626c6f636b732e00f04e4f544520323a20576520646f206e6f7420696e6372656d656e74207265776172647320696e20746869732065787472696e73696320617320746865110163616e64696461746520636f756c64207374696c6c20617574686f7220626c6f636b732c20616e64207468757320626520656c696769626c6520746f2072656365697665ac726577617264732c20756e74696c2074686520656e64206f6620746865206e6578742073657373696f6e2e0078456d6974732060436f6c6c61746f725363686564756c656445786974602e60657865637574655f6c656176655f63616e64696461746573040120636f6c6c61746f72e902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f7572636500084405014578656375746520746865206e6574776f726b2065786974206f6620612063616e6469646174652077686f2072657175657374656420746f206c65617665206174f06c65617374206045786974517565756544656c61796020726f756e64732061676f2e20507265706172657320756e7374616b696e67206f6620746865fc63616e6469646174657320616e642074686569722064656c656761746f7273207374616b652077686963682063616e20626520756e6c6f636b656420766961f460756e6c6f636b5f756e7374616b6564602061667465722077616974696e67206174206c6561737420605374616b654475726174696f6e60206d616e791c626c6f636b732e00c05265717569726573207468652063616e64696461746520746f2070726576696f75736c7920686176652063616c6c65646060696e69745f6c656176655f63616e64696461746573602e00ac546865206578697420726571756573742063616e2062652072657665727365642062792063616c6c696e67686063616e63656c5f6c656176655f63616e64696461746573602e00fc4e4f54453a204974657261746573206f7665722043616e646964617465506f6f6c20666f7220656163682063616e646964617465206f766572207468656972fc64656c656761746f727320746f2073657420726577617264732e204e6565647320746f20626520696d70726f766564207768656e207363616c696e672075704c604d6178546f7043616e64696461746573602e0054456d6974732060436f6c6c61746f724c656674602e5c63616e63656c5f6c656176655f63616e646964617465730009200501526576657274207468652070726576696f75736c79207265717565737465642065786974206f6620746865206e6574776f726b206f66206120636f6c6c61746f720d0163616e6469646174652e204f6e20737563636573732c2061646473206261636b207468652063616e64696461746520746f2074686520546f7043616e6469646174657368616e6420757064617465732074686520636f6c6c61746f72732e00c05265717569726573207468652063616e64696461746520746f2070726576696f75736c7920686176652063616c6c65646060696e69745f6c656176655f63616e64696461746573602e0074456d6974732060436f6c6c61746f7243616e63656c656445786974602e5063616e6469646174655f7374616b655f6d6f72650401106d6f726518013042616c616e63654f663c543e000a30a85374616b65206d6f72652066756e647320666f72206120636f6c6c61746f722063616e6469646174652e0001014966206e6f7420696e2074686520736574206f662063616e646964617465732c207374616b696e6720656e6f7567682066756e647320616c6c6f77732074686505016163636f756e7420746f20626520616464656420746f2069742e20546865206c617267657220616d6f756e74206f662066756e64732c2074686520686967686572dc6368616e63657320746f2062652073656c65637465642061732074686520617574686f72206f6620746865206e65787420626c6f636b2e00dc54686973206f7065726174696f6e2061666665637473207468652070616c6c6574277320746f74616c207374616b6520616d6f756e742e00f454686520726573756c74696e6720746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e20746865cc616c6c6f7765642072616e67652061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e006c456d6974732060436f6c6c61746f725374616b65644d6f7265602e5063616e6469646174655f7374616b655f6c6573730401106c65737318013042616c616e63654f663c543e000b3ca85374616b65206c6573732066756e647320666f72206120636f6c6c61746f722063616e6469646174652e000501496620746865206e657720616d6f756e74206f66207374616b65642066756e64206973206e6f74206c6172676520656e6f7567682c20746865206163636f756e74fc636f756c642062652072656d6f7665642066726f6d2074686520736574206f6620636f6c6c61746f722063616e6469646174657320616e64206e6f74206265a4636f6e7369646572656420666f7220617574686f72696e6720746865206e65787420626c6f636b732e00dc54686973206f7065726174696f6e2061666665637473207468652070616c6c6574277320746f74616c207374616b6520616d6f756e742e000d0154686520756e7374616b65642066756e647320617265206e6f742072656c656173656420696d6d6564696174656c7920746f20746865206163636f756e742c20627574d0746865792077696c6c20626520617661696c61626c6520616674657220605374616b654475726174696f6e6020626c6f636b732e00f454686520726573756c74696e6720746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e20746865cc616c6c6f7765642072616e67652061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e006c456d6974732060436f6c6c61746f725374616b65644c657373602e3c6a6f696e5f64656c656761746f7273080120636f6c6c61746f72e902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f75726365000118616d6f756e7418013042616c616e63654f663c543e000c5805014a6f696e2074686520736574206f662064656c656761746f72732062792064656c65676174696e6720746f206120636f6c6c61746f722063616e6469646174652e000501546865206163636f756e7420746861742077616e747320746f2064656c65676174652063616e6e6f742062652070617274206f662074686520636f6c6c61746f725c63616e64696461746573207365742061732077656c6c2e0009015468652063616c6c6572206d757374205f6e6f745f206861766520612064656c65676174696f6e2e20496620746861742069732074686520636173652c2074686579b061726520726571756972656420746f2066697273742072656d6f7665207468652064656c65676174696f6e2e00110154686520616d6f756e74207374616b6564206d757374206265206c6172676572207468616e20746865206d696e696d756d20726571756972656420746f206265636f6d65c4612064656c656761746f722061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e0009014173206f6e6c7920604d617844656c656761746f7273506572436f6c6c61746f72602061726520616c6c6f77656420746f2064656c6567617465206120676976656e0501636f6c6c61746f722c2074686520616d6f756e74207374616b6564206d757374206265206c6172676572207468616e20746865206c6f77657374206f6e6520696e01017468652063757272656e7420736574206f662064656c656761746f7220666f7220746865206f7065726174696f6e20746f206265206d65616e696e6766756c2e00090154686520636f6c6c61746f72277320746f74616c207374616b652061732077656c6c206173207468652070616c6c6574277320746f74616c207374616b652061726558696e63726561736564206163636f7264696e676c792e004c456d697473206044656c65676174696f6e602ebc456d697473206044656c65676174696f6e5265706c6163656460206966207468652063616e64696461746520686173f8604d617844656c656761746f7273506572436f6c6c61746f7260206d616e792064656c65676174696f6e732062757420746869732064656c656761746f72fc7374616b6564206d6f7265207468616e206f6e65206f6620746865206f746865722064656c656761746f7273206f6620746869732063616e6469646174652e406c656176655f64656c656761746f7273000d400d014c656176652074686520736574206f662064656c656761746f727320616e642c20627920696d706c69636174696f6e2c207265766f6b6520746865206f6e676f696e672c64656c65676174696f6e2e001101416c6c207374616b65642066756e647320617265206e6f7420756e6c6f636b656420696d6d6564696174656c792c2062757420746865792061726520616464656420746f0101746865207175657565206f662070656e64696e6720756e7374616b696e672c20616e642077696c6c206566666563746976656c792062652072656c65617365640901616674657220605374616b654475726174696f6e6020626c6f636b732066726f6d20746865206d6f6d656e74207468652064656c656761746f72206c65617665732e000d0154686973206f7065726174696f6e20726564756365732074686520746f74616c207374616b65206f66207468652070616c6c65742061732077656c6c2061732074686509017374616b6573206f6620616c6c20636f6c6c61746f7273207468617420776572652064656c6567617465642c20706f74656e7469616c6c7920616666656374696e6705017468656972206368616e63657320746f20626520696e636c7564656420696e2074686520736574206f662063616e6469646174657320696e20746865206e6578741c726f756e64732e0005014175746f6d61746963616c6c7920696e6372656d656e74732074686520616363756d756c617465642072657761726473206f6620746865206f726967696e206f665c7468652063757272656e742064656c65676174696f6e2e0058456d697473206044656c656761746f724c656674602e5064656c656761746f725f7374616b655f6d6f72650401106d6f726518013042616c616e63654f663c543e000e18dc496e63726561736520746865207374616b6520666f722064656c65676174696e67206120636f6c6c61746f722063616e6469646174652e0001014966206e6f7420696e2074686520736574206f662063616e646964617465732c207374616b696e6720656e6f7567682066756e647320616c6c6f77732074686594636f6c6c61746f722063616e64696461746520746f20626520616464656420746f2069742e0070456d697473206044656c656761746f725374616b65644d6f7265602e5064656c656761746f725f7374616b655f6c6573730401106c65737318013042616c616e63654f663c543e000f40d452656475636520746865207374616b6520666f722064656c65676174696e67206120636f6c6c61746f722063616e6469646174652e000901496620746865206e657720616d6f756e74206f66207374616b65642066756e64206973206e6f74206c6172676520656e6f7567682c2074686520636f6c6c61746f72fc636f756c642062652072656d6f7665642066726f6d2074686520736574206f6620636f6c6c61746f722063616e6469646174657320616e64206e6f74206265a4636f6e7369646572656420666f7220617574686f72696e6720746865206e65787420626c6f636b732e00090154686520756e7374616b65642066756e647320617265206e6f742072656c6561736520696d6d6564696174656c7920746f20746865206163636f756e742c20627574d0746865792077696c6c20626520617661696c61626c6520616674657220605374616b654475726174696f6e6020626c6f636b732e0001015468652072656d61696e696e67207374616b65642066756e6473206d757374207374696c6c206265206c6172676572207468616e20746865206d696e696d756df0726571756972656420627920746869732070616c6c657420746f206d61696e7461696e2074686520737461747573206f662064656c656761746f722e00f454686520726573756c74696e6720746f74616c20616d6f756e74206f662066756e6473207374616b6564206d7573742062652077697468696e20746865cc616c6c6f7765642072616e67652061732073657420696e207468652070616c6c6574277320636f6e66696775726174696f6e2e0070456d697473206044656c656761746f725374616b65644c657373602e3c756e6c6f636b5f756e7374616b6564040118746172676574e902018c3c543a3a4c6f6f6b7570206173205374617469634c6f6f6b75703e3a3a536f75726365001028f4556e6c6f636b20616c6c2070726576696f75736c79207374616b65642066756e6473207468617420617265206e6f7720617661696c61626c6520666f720501756e6c6f636b696e6720627920746865206f726967696e206163636f756e7420616674657220605374616b654475726174696f6e6020626c6f636b73206861766520656c61707365642e00fc5765696768743a204f285529207768657265205520697320746865206e756d626572206f66206c6f636b656420756e7374616b696e6720726571756573747380626f756e64656420627920604d6178556e7374616b655265717565737473602eac2d2052656164733a205b4f726967696e204163636f756e745d2c20556e7374616b696e672c204c6f636b73682d205772697465733a20556e7374616b696e672c204c6f636b73e82d204b696c6c733a20556e7374616b696e672026204c6f636b73206966206e6f2062616c616e6365206973206c6f636b656420616e796d6f72652c23203c2f7765696768743e34636c61696d5f7265776172647300113cd4436c61696d20626c6f636b20617574686f72696e67207265776172647320666f72207468652074617267657420616464726573732e00090152657175697265732060526577617264736020746f20626520736574206265666f726568616e642c2077686963682063616e2062792074726967676572656420627970616e79206f662074686520666f6c6c6f77696e67206f7074696f6e73e82a2043616c6c696e6720696e6372656d656e745f7b636f6c6c61746f722c2064656c656761746f727d5f72657761726473202861637469766529782a20416c746572696e6720796f7572207374616b65202861637469766529b02a204c656176696e6720746865206e6574776f726b206173206120636f6c6c61746f72202861637469766529bc2a205265766f6b696e6720612064656c65676174696f6e20617320612064656c656761746f7220286163746976652909012a204265696e6720612064656c656761746f722077686f736520636f6c6c61746f72206c65667420746865206e6574776f726b2c20616c7465726564207468656972a020207374616b65206f7220696e6372656d656e746564207265776172647320287061737369766529000501546865206469737061746368206f726967696e2063616e20626520616e79207369676e6564206f6e652c20652e672e2c20616e796f6e652063616e20636c61696d2c666f7220616e796f6e652e0044456d69747320605265776172646564602e68696e6372656d656e745f636f6c6c61746f725f72657761726473001218b44163746976656c7920696e6372656d656e74207468652072657761726473206f66206120636f6c6c61746f722e0005015468652073616d652065666665637420697320747269676765726564206279206368616e67696e6720746865207374616b65206f72206c656176696e6720746865206e6574776f726b2e009c546865206469737061746368206f726967696e206d757374206265206120636f6c6c61746f722e6c696e6372656d656e745f64656c656761746f725f72657761726473001318b84163746976656c7920696e6372656d656e74207468652072657761726473206f6620612064656c656761746f722e00f85468652073616d652065666665637420697320747269676765726564206279206368616e67696e6720746865207374616b65206f72207265766f6b696e673064656c65676174696f6e732e00a0546865206469737061746368206f726967696e206d75737420626520612064656c656761746f722e7c657865637574655f7363686564756c65645f7265776172645f6368616e67650014280d0145786563757465732074686520616e6e75616c20726564756374696f6e206f66207468652072657761726420726174657320666f7220636f6c6c61746f727320616e642c64656c656761746f72732e00dc4d6f72656f7665722c2073657473207265776172647320666f7220616c6c20636f6c6c61746f727320616e642064656c656761746f72737c6265666f72652061646a757374696e672074686520696e666c6174696f6e2e000d01546865206469737061746368206f726967696e2063616e20626520616e79207369676e6564206f6e652062656361757365207765206261696c2069662063616c6c656428746f6f206561726c792e0068456d6974732060526f756e64496e666c6174696f6e536574602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ea5030c4470617261636861696e5f7374616b696e671870616c6c6574144572726f7204045400017c4444656c656761746f724e6f74466f756e64000004b8546865206163636f756e74206973206e6f742070617274206f66207468652064656c656761746f7273207365742e4443616e6469646174654e6f74466f756e64000104dc546865206163636f756e74206973206e6f742070617274206f662074686520636f6c6c61746f722063616e64696461746573207365742e3c44656c656761746f72457869737473000204c8546865206163636f756e7420697320616c72656164792070617274206f66207468652064656c656761746f7273207365742e3c43616e646964617465457869737473000304ec546865206163636f756e7420697320616c72656164792070617274206f662074686520636f6c6c61746f722063616e64696461746573207365742e3056616c5374616b655a65726f000404e4546865206163636f756e7420747269656420746f207374616b65206d6f7265206f72206c657373207769746820616d6f756e74207a65726f2e4056616c5374616b6542656c6f774d696e0005080d01546865206163636f756e7420686173206e6f74207374616b656420656e6f7567682066756e647320746f20626520616464656420746f2074686520636f6c6c61746f723c63616e64696461746573207365742e4056616c5374616b6541626f76654d61780006041101546865206163636f756e742068617320616c7265616479207374616b656420746865206d6178696d756d20616d6f756e74206f662066756e647320706f737369626c652e4844656c65676174696f6e42656c6f774d696e000708f8546865206163636f756e7420686173206e6f74207374616b656420656e6f7567682066756e647320746f2064656c6567617465206120636f6c6c61746f722863616e6469646174652e38416c72656164794c656176696e670008080d0154686520636f6c6c61746f722063616e6469646174652068617320616c72656164792074726967676572207468652070726f6365737320746f206c65617665207468656c736574206f6620636f6c6c61746f722063616e646964617465732e284e6f744c656176696e67000908f454686520636f6c6c61746f722063616e6469646174652077616e74656420746f20657865637574652074686520657869742062757420686173206e6f74f472657175657374656420746f206c65617665206265666f72652062792063616c6c696e672060696e69745f6c656176655f63616e64696461746573602e3843616e6e6f744c65617665596574000a08dc54686520636f6c6c61746f7220747269656420746f206c65617665206265666f72652077616974696e67206174206c6561737420666f72746045786974517565756544656c617960206d616e7920726f756e64732e6443616e6e6f744a6f696e4265666f7265556e6c6f636b696e67000b10f8546865206163636f756e742068617320612066756c6c206c697374206f6620756e7374616b696e6720726571756573747320616e64206e6565647320746ffc756e6c6f636b206174206c65617374206f6e65206f66207468657365206265666f7265206265696e672061626c6520746f206a6f696e2028616761696e292edc4e4f54453a2043616e206f6e6c792068617070656e20696620746865206163636f756e742077617320612063616e646964617465206f72f464656c656761746f72206265666f726520616e642065697468657220676f74206b69636b6564206f722065786974656420766f6c756e746172696c792e44416c726561647944656c65676174696e67000c04e4546865206163636f756e7420697320616c72656164792064656c65676174696e672074686520636f6c6c61746f722063616e6469646174652e404e6f7459657444656c65676174696e67000d080901546865206163636f756e7420686173206e6f742064656c65676174656420616e7920636f6c6c61746f722063616e646964617465207965742c2068656e6365206974806973206e6f7420696e2074686520736574206f662064656c656761746f72732e6c44656c65676174696f6e73506572526f756e644578636565646564000e1811015468652064656c656761746f722068617320657863656564656420746865206e756d626572206f662064656c65676174696f6e732070657220726f756e6420776869636894697320657175616c20746f204d617844656c656761746f7273506572436f6c6c61746f722e000901546869732070726f746563747320616761696e73742061747461636b7320696e20776869636820612064656c656761746f722063616e2072652d64656c6567617465010166726f6d206120636f6c6c61746f722077686f2068617320616c726561647920617574686f726564206120626c6f636b2c20746f20616e6f74686572206f6e6570776869636820686173206e6f7420696e207468697320726f756e642e44546f6f4d616e7944656c656761746f7273000f14010154686520636f6c6c61746f722063616e6469646174652068617320616c7265616479207265616368656420746865206d6178696d756d206e756d626572206f662c64656c656761746f72732e00050154686973206572726f722069732067656e65726174656420696e20636173652061206e65772064656c65676174696f6e207265717565737420646f6573206e6f74f47374616b6520656e6f7567682066756e647320746f207265706c61636520736f6d65206f74686572206578697374696e672064656c65676174696f6e2e60546f6f466577436f6c6c61746f7243616e64696461746573001008110154686520736574206f6620636f6c6c61746f722063616e6469646174657320776f756c642066616c6c2062656c6f7720746865207265717569726564206d696e696d756d5469662074686520636f6c6c61746f72206c6566742e5043616e6e6f745374616b6549664c656176696e67001108f854686520636f6c6c61746f722063616e64696461746520697320696e207468652070726f63657373206f66206c656176696e672074686520736574206f66010163616e6469646174657320616e642063616e6e6f7420706572666f726d20616e79206f7468657220616374696f6e7320696e20746865206d65616e74696d652e5c43616e6e6f7444656c656761746549664c656176696e67001208f854686520636f6c6c61746f722063616e64696461746520697320696e207468652070726f63657373206f66206c656176696e672074686520736574206f66ac63616e6469646174657320616e6420746875732063616e6e6f742062652064656c65676174656420746f2e804d6178436f6c6c61746f727350657244656c656761746f72457863656564656400130811015468652064656c656761746f722068617320616c72656164792064656c65676174656420746865206d6178696d756d206e756d626572206f662063616e6469646174657320616c6c6f7765642e60416c726561647944656c656761746564436f6c6c61746f72001408ec5468652064656c656761746f722068617320616c72656164792070726576696f75736c792064656c6567617465642074686520636f6c6c61746f722863616e6469646174652e4844656c65676174696f6e4e6f74466f756e64001504f854686520676976656e2064656c65676174696f6e20646f6573206e6f7420657869737420696e2074686520736574206f662064656c65676174696f6e732e24556e646572666c6f77001608050154686520636f6c6c61746f722064656c6567617465206f72207468652064656c656761746f7220697320747279696e6720746f20756e2d7374616b65206d6f72658066756e64732074686174206172652063757272656e746c79207374616b65642e4443616e6e6f7453657441626f76654d6178001708d8546865206e756d626572206f662073656c65637465642063616e6469646174657320706572207374616b696e6720726f756e642069738061626f766520746865206d6178696d756d2076616c756520616c6c6f7765642e4443616e6e6f7453657442656c6f774d696e001808d8546865206e756d626572206f662073656c65637465642063616e6469646174657320706572207374616b696e6720726f756e642069738062656c6f7720746865206d696e696d756d2076616c756520616c6c6f7765642e3c496e76616c69645363686564756c65001904dc416e20696e76616c696420696e666c6174696f6e20636f6e66696775726174696f6e20697320747279696e6720746f206265207365742e3c4e6f4d6f7265556e7374616b696e67001a08c4546865207374616b696e6720726577617264206265696e6720756e6c6f636b656420646f6573206e6f742065786973742e7c4d617820756e6c6f636b696e6720726571756573747320726561636865642e20546f6f4561726c79001b0801015468652072657761726420726174652063616e6e6f742062652061646a75737465642079657420617320616e20656e74697265207965617220686173206e6f741c7061737365642e345374616b654e6f74466f756e64001c04d850726f7669646564207374616b65642076616c7565206973207a65726f2e2053686f756c64206e65766572206265207468726f776e2e40556e7374616b696e674973456d707479001d049443616e6e6f7420756e6c6f636b207768656e20556e7374616b656420697320656d7074792e3c526577617264734e6f74466f756e64001e047843616e6e6f7420636c61696d207265776172647320696620656d7074792e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909a9030c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401ad03045300000400790501185665633c543e0000ad030000040c1cb1030000b10310346672616d655f737570706f72741874726169747324707265696d616765731c426f756e64656404045401b503010c184c6567616379040110686173682c01104861736800000018496e6c696e65040091010134426f756e646564496e6c696e65000100184c6f6f6b7570080110686173682c01104861736800010c6c656e1c010c75333200020000b50308447370697269746e65745f72756e74696d652c52756e74696d6543616c6c0001781853797374656d04009d0201ad0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c53797374656d2c2052756e74696d653e0000002454696d657374616d700400dd0201b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c54696d657374616d702c2052756e74696d653e0002001c496e64696365730400e50201b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c496e64696365732c2052756e74696d653e0005002042616c616e6365730400110301b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c42616c616e6365732c2052756e74696d653e0006001c53657373696f6e0400510301b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c53657373696f6e2c2052756e74696d653e0016004050617261636861696e5374616b696e670400a10301d50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c50617261636861696e5374616b696e672c2052756e74696d653e0015002444656d6f63726163790400b90301b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c44656d6f63726163792c2052756e74696d653e001e001c436f756e63696c0400c90301b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c436f756e63696c2c2052756e74696d653e001f0048546563686e6963616c436f6d6d69747465650400d90301dd0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546563686e6963616c436f6d6d69747465652c2052756e74696d653e0020004c546563686e6963616c4d656d626572736869700400dd0301e10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546563686e6963616c4d656d626572736869702c2052756e74696d653e0022002054726561737572790400e10301b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c54726561737572792c2052756e74696d653e0023001c5574696c6974790400e50301b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5574696c6974792c2052756e74696d653e0028001c56657374696e6704000d0401b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c56657374696e672c2052756e74696d653e002900245363686564756c65720400150401b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5363686564756c65722c2052756e74696d653e002a001450726f787904001d0401a90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c50726f78792c2052756e74696d653e002b0020507265696d6167650400250401b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c507265696d6167652c2052756e74696d653e002c0038546970734d656d626572736869700400290401cd0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546970734d656d626572736869702c2052756e74696d653e002d00105469707304002d0401a50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c546970732c2052756e74696d653e002e00204d756c74697369670400310401b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4d756c74697369672c2052756e74696d653e002f001443747970650400390401a90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c43747970652c2052756e74696d653e003d002c4174746573746174696f6e04003d0401c10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4174746573746174696f6e2c2052756e74696d653e003e002844656c65676174696f6e0400510401bd0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c44656c65676174696f6e2c2052756e74696d653e003f000c44696404006d0401a10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4469642c2052756e74696d653e004000244469644c6f6f6b75700400c50401b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4469644c6f6f6b75702c2052756e74696d653e00430024576562334e616d65730400d50401b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c576562334e616d65732c2052756e74696d653e004400445075626c696343726564656e7469616c730400d90401d90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5075626c696343726564656e7469616c732c2052756e74696d653e0045003c50617261636861696e53797374656d0400e90401d10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c50617261636861696e53797374656d2c2052756e74696d653e0050002458636d70517565756504001d0501b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c58636d7051756575652c2052756e74696d653e0052002c506f6c6b61646f7458636d0400210501c10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c506f6c6b61646f7458636d2c2052756e74696d653e00530020446d7051756575650400750501b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c446d7051756575652c2052756e74696d653e00550000b9030c4070616c6c65745f64656d6f63726163791870616c6c65741043616c6c04045400014c1c70726f706f736508012070726f706f73616cb1030140426f756e64656443616c6c4f663c543e00011476616c7565cd01013042616c616e63654f663c543e0000249c50726f706f736520612073656e73697469766520616374696f6e20746f2062652074616b656e2e001501546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e646572206d75737480686176652066756e647320746f20636f76657220746865206465706f7369742e00d42d206070726f706f73616c5f68617368603a205468652068617368206f66207468652070726f706f73616c20707265696d6167652e15012d206076616c7565603a2054686520616d6f756e74206f66206465706f73697420286d757374206265206174206c6561737420604d696e696d756d4465706f73697460292e0044456d697473206050726f706f736564602e187365636f6e6404012070726f706f73616cc101012450726f70496e646578000118b45369676e616c732061677265656d656e742077697468206120706172746963756c61722070726f706f73616c2e000101546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e64657211016d75737420686176652066756e647320746f20636f76657220746865206465706f7369742c20657175616c20746f20746865206f726967696e616c206465706f7369742e00c82d206070726f706f73616c603a2054686520696e646578206f66207468652070726f706f73616c20746f207365636f6e642e10766f74650801247265665f696e646578c101013c5265666572656e64756d496e646578000110766f74659801644163636f756e74566f74653c42616c616e63654f663c543e3e00021c3101566f746520696e2061207265666572656e64756d2e2049662060766f74652e69735f6179652829602c2074686520766f746520697320746f20656e616374207468652070726f706f73616c3bb86f7468657277697365206974206973206120766f746520746f206b65657020746865207374617475732071756f2e00c8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2e00dc2d20607265665f696e646578603a2054686520696e646578206f6620746865207265666572656e64756d20746f20766f746520666f722e842d2060766f7465603a2054686520766f746520636f6e66696775726174696f6e2e40656d657267656e63795f63616e63656c0401247265665f696e6465781c013c5265666572656e64756d496e6465780003204d015363686564756c6520616e20656d657267656e63792063616e63656c6c6174696f6e206f662061207265666572656e64756d2e2043616e6e6f742068617070656e20747769636520746f207468652073616d652c7265666572656e64756d2e00f8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265206043616e63656c6c6174696f6e4f726967696e602e00d02d607265665f696e646578603a2054686520696e646578206f6620746865207265666572656e64756d20746f2063616e63656c2e003c5765696768743a20604f283129602e4065787465726e616c5f70726f706f736504012070726f706f73616cb1030140426f756e64656443616c6c4f663c543e0004182d015363686564756c652061207265666572656e64756d20746f206265207461626c6564206f6e6365206974206973206c6567616c20746f207363686564756c6520616e2065787465726e616c2c7265666572656e64756d2e00e8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265206045787465726e616c4f726967696e602e00d42d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c2e6465787465726e616c5f70726f706f73655f6d616a6f7269747904012070726f706f73616cb1030140426f756e64656443616c6c4f663c543e00052c55015363686564756c652061206d616a6f726974792d63617272696573207265666572656e64756d20746f206265207461626c6564206e657874206f6e6365206974206973206c6567616c20746f207363686564756c655c616e2065787465726e616c207265666572656e64756d2e00ec546865206469737061746368206f6620746869732063616c6c206d757374206265206045787465726e616c4d616a6f726974794f726967696e602e00d42d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c2e004901556e6c696b65206065787465726e616c5f70726f706f7365602c20626c61636b6c697374696e6720686173206e6f20656666656374206f6e207468697320616e64206974206d6179207265706c6163652061987072652d7363686564756c6564206065787465726e616c5f70726f706f7365602063616c6c2e00385765696768743a20604f283129606065787465726e616c5f70726f706f73655f64656661756c7404012070726f706f73616cb1030140426f756e64656443616c6c4f663c543e00062c45015363686564756c652061206e656761746976652d7475726e6f75742d62696173207265666572656e64756d20746f206265207461626c6564206e657874206f6e6365206974206973206c6567616c20746f807363686564756c6520616e2065787465726e616c207265666572656e64756d2e00e8546865206469737061746368206f6620746869732063616c6c206d757374206265206045787465726e616c44656661756c744f726967696e602e00d42d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c2e004901556e6c696b65206065787465726e616c5f70726f706f7365602c20626c61636b6c697374696e6720686173206e6f20656666656374206f6e207468697320616e64206974206d6179207265706c6163652061987072652d7363686564756c6564206065787465726e616c5f70726f706f7365602063616c6c2e00385765696768743a20604f2831296028666173745f747261636b0c013470726f706f73616c5f686173682c011048323536000134766f74696e675f706572696f64100138543a3a426c6f636b4e756d62657200011464656c6179100138543a3a426c6f636b4e756d6265720007404d015363686564756c65207468652063757272656e746c792065787465726e616c6c792d70726f706f736564206d616a6f726974792d63617272696573207265666572656e64756d20746f206265207461626c65646101696d6d6564696174656c792e204966207468657265206973206e6f2065787465726e616c6c792d70726f706f736564207265666572656e64756d2063757272656e746c792c206f72206966207468657265206973206f6e65e8627574206974206973206e6f742061206d616a6f726974792d63617272696573207265666572656e64756d207468656e206974206661696c732e00d0546865206469737061746368206f6620746869732063616c6c206d757374206265206046617374547261636b4f726967696e602e00f42d206070726f706f73616c5f68617368603a205468652068617368206f66207468652063757272656e742065787465726e616c2070726f706f73616c2e5d012d2060766f74696e675f706572696f64603a2054686520706572696f64207468617420697320616c6c6f77656420666f7220766f74696e67206f6e20746869732070726f706f73616c2e20496e6372656173656420746f88094d75737420626520616c776179732067726561746572207468616e207a65726f2e350109466f72206046617374547261636b4f726967696e60206d75737420626520657175616c206f722067726561746572207468616e206046617374547261636b566f74696e67506572696f64602e51012d206064656c6179603a20546865206e756d626572206f6620626c6f636b20616674657220766f74696e672068617320656e64656420696e20617070726f76616c20616e6420746869732073686f756c64206265b82020656e61637465642e205468697320646f65736e277420686176652061206d696e696d756d20616d6f756e742e0040456d697473206053746172746564602e00385765696768743a20604f28312960347665746f5f65787465726e616c04013470726f706f73616c5f686173682c011048323536000824b85665746f20616e6420626c61636b6c697374207468652065787465726e616c2070726f706f73616c20686173682e00d8546865206469737061746368206f726967696e206f6620746869732063616c6c206d75737420626520605665746f4f726967696e602e002d012d206070726f706f73616c5f68617368603a2054686520707265696d6167652068617368206f66207468652070726f706f73616c20746f207665746f20616e6420626c61636b6c6973742e003c456d69747320605665746f6564602e00fc5765696768743a20604f2856202b206c6f6728562929602077686572652056206973206e756d626572206f6620606578697374696e67207665746f657273604463616e63656c5f7265666572656e64756d0401247265665f696e646578c101013c5265666572656e64756d496e64657800091c5052656d6f76652061207265666572656e64756d2e00c0546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f526f6f745f2e00d42d20607265665f696e646578603a2054686520696e646578206f6620746865207265666572656e64756d20746f2063616e63656c2e004423205765696768743a20604f283129602e2064656c65676174650c0108746fe90201504163636f756e7449644c6f6f6b75704f663c543e000128636f6e76696374696f6ebd030128436f6e76696374696f6e00011c62616c616e636518013042616c616e63654f663c543e000a50390144656c65676174652074686520766f74696e6720706f77657220287769746820736f6d6520676976656e20636f6e76696374696f6e29206f66207468652073656e64696e67206163636f756e742e0055015468652062616c616e63652064656c656761746564206973206c6f636b656420666f72206173206c6f6e6720617320697427732064656c6567617465642c20616e64207468657265616674657220666f7220746865c874696d6520617070726f70726961746520666f722074686520636f6e76696374696f6e2773206c6f636b20706572696f642e005d01546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2c20616e6420746865207369676e696e67206163636f756e74206d757374206569746865723a7420202d2062652064656c65676174696e6720616c72656164793b206f72590120202d2068617665206e6f20766f74696e67206163746976697479202869662074686572652069732c207468656e2069742077696c6c206e65656420746f2062652072656d6f7665642f636f6e736f6c69646174656494202020207468726f7567682060726561705f766f746560206f722060756e766f746560292e0045012d2060746f603a20546865206163636f756e742077686f736520766f74696e6720746865206074617267657460206163636f756e74277320766f74696e6720706f7765722077696c6c20666f6c6c6f772e55012d2060636f6e76696374696f6e603a2054686520636f6e76696374696f6e20746861742077696c6c20626520617474616368656420746f207468652064656c65676174656420766f7465732e205768656e20746865410120206163636f756e7420697320756e64656c6567617465642c207468652066756e64732077696c6c206265206c6f636b656420666f722074686520636f72726573706f6e64696e6720706572696f642e61012d206062616c616e6365603a2054686520616d6f756e74206f6620746865206163636f756e7427732062616c616e636520746f206265207573656420696e2064656c65676174696e672e2054686973206d757374206e6f74b420206265206d6f7265207468616e20746865206163636f756e7427732063757272656e742062616c616e63652e0048456d697473206044656c656761746564602e003d015765696768743a20604f28522960207768657265205220697320746865206e756d626572206f66207265666572656e64756d732074686520766f7465722064656c65676174696e6720746f20686173c82020766f746564206f6e2e205765696768742069732063686172676564206173206966206d6178696d756d20766f7465732e28756e64656c6567617465000b30cc556e64656c65676174652074686520766f74696e6720706f776572206f66207468652073656e64696e67206163636f756e742e005d01546f6b656e73206d617920626520756e6c6f636b656420666f6c6c6f77696e67206f6e636520616e20616d6f756e74206f662074696d6520636f6e73697374656e74207769746820746865206c6f636b20706572696f64dc6f662074686520636f6e76696374696f6e2077697468207768696368207468652064656c65676174696f6e20776173206973737565642e004501546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d7573742062655463757272656e746c792064656c65676174696e672e0050456d6974732060556e64656c656761746564602e003d015765696768743a20604f28522960207768657265205220697320746865206e756d626572206f66207265666572656e64756d732074686520766f7465722064656c65676174696e6720746f20686173c82020766f746564206f6e2e205765696768742069732063686172676564206173206966206d6178696d756d20766f7465732e58636c6561725f7075626c69635f70726f706f73616c73000c1470436c6561727320616c6c207075626c69632070726f706f73616c732e00c0546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f526f6f745f2e003c5765696768743a20604f283129602e18756e6c6f636b040118746172676574e90201504163636f756e7449644c6f6f6b75704f663c543e000d1ca0556e6c6f636b20746f6b656e732074686174206861766520616e2065787069726564206c6f636b2e00c8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2e00b82d2060746172676574603a20546865206163636f756e7420746f2072656d6f766520746865206c6f636b206f6e2e00bc5765696768743a20604f2852296020776974682052206e756d626572206f6620766f7465206f66207461726765742e2c72656d6f76655f766f7465040114696e6465781c013c5265666572656e64756d496e646578000e6c7c52656d6f7665206120766f746520666f722061207265666572656e64756d2e000c49663a882d20746865207265666572656e64756d207761732063616e63656c6c65642c206f727c2d20746865207265666572656e64756d206973206f6e676f696e672c206f72902d20746865207265666572656e64756d2068617320656e64656420737563682074686174fc20202d2074686520766f7465206f6620746865206163636f756e742077617320696e206f70706f736974696f6e20746f2074686520726573756c743b206f72d420202d20746865726520776173206e6f20636f6e76696374696f6e20746f20746865206163636f756e74277320766f74653b206f728420202d20746865206163636f756e74206d61646520612073706c697420766f74655d012e2e2e7468656e2074686520766f74652069732072656d6f76656420636c65616e6c7920616e64206120666f6c6c6f77696e672063616c6c20746f2060756e6c6f636b60206d617920726573756c7420696e206d6f72655866756e6473206265696e6720617661696c61626c652e00a849662c20686f77657665722c20746865207265666572656e64756d2068617320656e64656420616e643aec2d2069742066696e697368656420636f72726573706f6e64696e6720746f2074686520766f7465206f6620746865206163636f756e742c20616e64dc2d20746865206163636f756e74206d6164652061207374616e6461726420766f7465207769746820636f6e76696374696f6e2c20616e64bc2d20746865206c6f636b20706572696f64206f662074686520636f6e76696374696f6e206973206e6f74206f76657259012e2e2e7468656e20746865206c6f636b2077696c6c206265206167677265676174656420696e746f20746865206f766572616c6c206163636f756e742773206c6f636b2c207768696368206d617920696e766f6c766559012a6f7665726c6f636b696e672a20287768657265207468652074776f206c6f636b732061726520636f6d62696e656420696e746f20612073696e676c65206c6f636b207468617420697320746865206d6178696d756de46f6620626f74682074686520616d6f756e74206c6f636b656420616e64207468652074696d65206973206974206c6f636b656420666f72292e004901546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2c20616e6420746865207369676e6572206d7573742068617665206120766f7465887265676973746572656420666f72207265666572656e64756d2060696e646578602e00f42d2060696e646578603a2054686520696e646578206f66207265666572656e64756d206f662074686520766f746520746f2062652072656d6f7665642e0055015765696768743a20604f2852202b206c6f6720522960207768657265205220697320746865206e756d626572206f66207265666572656e646120746861742060746172676574602068617320766f746564206f6e2ed820205765696768742069732063616c63756c6174656420666f7220746865206d6178696d756d206e756d626572206f6620766f74652e4472656d6f76655f6f746865725f766f7465080118746172676574e90201504163636f756e7449644c6f6f6b75704f663c543e000114696e6465781c013c5265666572656e64756d496e646578000f3c7c52656d6f7665206120766f746520666f722061207265666572656e64756d2e004d0149662074686520607461726765746020697320657175616c20746f20746865207369676e65722c207468656e20746869732066756e6374696f6e2069732065786163746c79206571756976616c656e7420746f2d016072656d6f76655f766f7465602e204966206e6f7420657175616c20746f20746865207369676e65722c207468656e2074686520766f7465206d757374206861766520657870697265642c5501656974686572206265636175736520746865207265666572656e64756d207761732063616e63656c6c65642c20626563617573652074686520766f746572206c6f737420746865207265666572656e64756d206f7298626563617573652074686520636f6e76696374696f6e20706572696f64206973206f7665722e00c8546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265205f5369676e65645f2e004d012d2060746172676574603a20546865206163636f756e74206f662074686520766f746520746f2062652072656d6f7665643b2074686973206163636f756e74206d757374206861766520766f74656420666f725420207265666572656e64756d2060696e646578602ef42d2060696e646578603a2054686520696e646578206f66207265666572656e64756d206f662074686520766f746520746f2062652072656d6f7665642e0055015765696768743a20604f2852202b206c6f6720522960207768657265205220697320746865206e756d626572206f66207265666572656e646120746861742060746172676574602068617320766f746564206f6e2ed820205765696768742069732063616c63756c6174656420666f7220746865206d6178696d756d206e756d626572206f6620766f74652e24626c61636b6c69737408013470726f706f73616c5f686173682c01104832353600013c6d617962655f7265665f696e646578c103015c4f7074696f6e3c5265666572656e64756d496e6465783e00103c45015065726d616e656e746c7920706c61636520612070726f706f73616c20696e746f2074686520626c61636b6c6973742e20546869732070726576656e74732069742066726f6d2065766572206265696e673c70726f706f73656420616761696e2e00510149662063616c6c6564206f6e206120717565756564207075626c6963206f722065787465726e616c2070726f706f73616c2c207468656e20746869732077696c6c20726573756c7420696e206974206265696e67510172656d6f7665642e2049662074686520607265665f696e6465786020737570706c69656420697320616e20616374697665207265666572656e64756d2077697468207468652070726f706f73616c20686173682c687468656e2069742077696c6c2062652063616e63656c6c65642e00ec546865206469737061746368206f726967696e206f6620746869732063616c6c206d7573742062652060426c61636b6c6973744f726967696e602e00f82d206070726f706f73616c5f68617368603a205468652070726f706f73616c206861736820746f20626c61636b6c697374207065726d616e656e746c792e45012d20607265665f696e646578603a20416e206f6e676f696e67207265666572656e64756d2077686f73652068617368206973206070726f706f73616c5f68617368602c2077686963682077696c6c2062652863616e63656c6c65642e0041015765696768743a20604f28702960202874686f756768206173207468697320697320616e20686967682d70726976696c6567652064697370617463682c20776520617373756d65206974206861732061502020726561736f6e61626c652076616c7565292e3c63616e63656c5f70726f706f73616c04012870726f705f696e646578c101012450726f70496e64657800111c4852656d6f766520612070726f706f73616c2e000101546865206469737061746368206f726967696e206f6620746869732063616c6c206d757374206265206043616e63656c50726f706f73616c4f726967696e602e00d02d206070726f705f696e646578603a2054686520696e646578206f66207468652070726f706f73616c20746f2063616e63656c2e00e45765696768743a20604f28702960207768657265206070203d205075626c696350726f70733a3a3c543e3a3a6465636f64655f6c656e282960307365745f6d657461646174610801146f776e6572a001344d657461646174614f776e65720001286d617962655f68617368c50301504f7074696f6e3c507265696d616765486173683e00123cd8536574206f7220636c6561722061206d65746164617461206f6620612070726f706f73616c206f722061207265666572656e64756d2e002c506172616d65746572733acc2d20606f726967696e603a204d75737420636f72726573706f6e6420746f2074686520604d657461646174614f776e6572602e3d01202020202d206045787465726e616c4f726967696e6020666f7220616e2065787465726e616c2070726f706f73616c207769746820746865206053757065724d616a6f72697479417070726f766560402020202020207468726573686f6c642e5901202020202d206045787465726e616c44656661756c744f726967696e6020666f7220616e2065787465726e616c2070726f706f73616c207769746820746865206053757065724d616a6f72697479416761696e737460402020202020207468726573686f6c642e4501202020202d206045787465726e616c4d616a6f726974794f726967696e6020666f7220616e2065787465726e616c2070726f706f73616c207769746820746865206053696d706c654d616a6f7269747960402020202020207468726573686f6c642ec8202020202d20605369676e65646020627920612063726561746f7220666f722061207075626c69632070726f706f73616c2ef4202020202d20605369676e65646020746f20636c6561722061206d6574616461746120666f7220612066696e6973686564207265666572656e64756d2ee4202020202d2060526f6f746020746f207365742061206d6574616461746120666f7220616e206f6e676f696e67207265666572656e64756d2eb42d20606f776e6572603a20616e206964656e746966696572206f662061206d65746164617461206f776e65722e51012d20606d617962655f68617368603a205468652068617368206f6620616e206f6e2d636861696e2073746f72656420707265696d6167652e20604e6f6e656020746f20636c6561722061206d657461646174612e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ebd030c4070616c6c65745f64656d6f637261637928636f6e76696374696f6e28436f6e76696374696f6e00011c104e6f6e65000000204c6f636b65643178000100204c6f636b65643278000200204c6f636b65643378000300204c6f636b65643478000400204c6f636b65643578000500204c6f636b6564367800060000c10304184f7074696f6e040454011c0108104e6f6e6500000010536f6d6504001c0000010000c50304184f7074696f6e040454012c0108104e6f6e6500000010536f6d6504002c0000010000c9030c4470616c6c65745f636f6c6c6563746976651870616c6c65741043616c6c08045400044900011c2c7365745f6d656d626572730c012c6e65775f6d656d62657273350301445665633c543a3a4163636f756e7449643e0001147072696d65cd0301504f7074696f6e3c543a3a4163636f756e7449643e0001246f6c645f636f756e741c012c4d656d626572436f756e74000060805365742074686520636f6c6c6563746976652773206d656d626572736869702e0045012d20606e65775f6d656d62657273603a20546865206e6577206d656d626572206c6973742e204265206e69636520746f2074686520636861696e20616e642070726f7669646520697420736f727465642ee02d20607072696d65603a20546865207072696d65206d656d6265722077686f736520766f74652073657473207468652064656661756c742e59012d20606f6c645f636f756e74603a2054686520757070657220626f756e6420666f72207468652070726576696f7573206e756d626572206f66206d656d6265727320696e2073746f726167652e205573656420666f7250202077656967687420657374696d6174696f6e2e00d4546865206469737061746368206f6620746869732063616c6c206d75737420626520605365744d656d626572734f726967696e602e0051014e4f54453a20446f6573206e6f7420656e666f7263652074686520657870656374656420604d61784d656d6265727360206c696d6974206f6e2074686520616d6f756e74206f66206d656d626572732c2062757421012020202020207468652077656967687420657374696d6174696f6e732072656c79206f6e20697420746f20657374696d61746520646973706174636861626c65207765696768742e002823205741524e494e473a005901546865206070616c6c65742d636f6c6c656374697665602063616e20616c736f206265206d616e61676564206279206c6f676963206f757473696465206f66207468652070616c6c6574207468726f75676820746865b8696d706c656d656e746174696f6e206f6620746865207472616974205b604368616e67654d656d62657273605d2e5501416e792063616c6c20746f20607365745f6d656d6265727360206d757374206265206361726566756c207468617420746865206d656d6265722073657420646f65736e277420676574206f7574206f662073796e63a477697468206f74686572206c6f676963206d616e6167696e6720746865206d656d626572207365742e0038232320436f6d706c65786974793a502d20604f284d50202b204e29602077686572653ae020202d20604d60206f6c642d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429e020202d20604e60206e65772d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e646564299820202d206050602070726f706f73616c732d636f756e742028636f64652d626f756e646564291c6578656375746508012070726f706f73616cb503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64c101010c753332000124f0446973706174636820612070726f706f73616c2066726f6d2061206d656d626572207573696e672074686520604d656d62657260206f726967696e2e00a84f726967696e206d7573742062652061206d656d626572206f662074686520636f6c6c6563746976652e0038232320436f6d706c65786974793a5c2d20604f2842202b204d202b205029602077686572653ad82d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429882d20604d60206d656d626572732d636f756e742028636f64652d626f756e64656429a82d2060506020636f6d706c6578697479206f66206469737061746368696e67206070726f706f73616c601c70726f706f73650c01247468726573686f6c64c101012c4d656d626572436f756e7400012070726f706f73616cb503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64c101010c753332000238f84164642061206e65772070726f706f73616c20746f2065697468657220626520766f746564206f6e206f72206578656375746564206469726563746c792e00845265717569726573207468652073656e64657220746f206265206d656d6265722e004101607468726573686f6c64602064657465726d696e65732077686574686572206070726f706f73616c60206973206578656375746564206469726563746c792028607468726573686f6c64203c20326029546f722070757420757020666f7220766f74696e672e0034232320436f6d706c6578697479ac2d20604f2842202b204d202b2050312960206f7220604f2842202b204d202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c420202d206272616e6368696e6720697320696e666c75656e63656420627920607468726573686f6c64602077686572653af4202020202d20605031602069732070726f706f73616c20657865637574696f6e20636f6d706c65786974792028607468726573686f6c64203c20326029fc202020202d20605032602069732070726f706f73616c732d636f756e742028636f64652d626f756e646564292028607468726573686f6c64203e3d2032602910766f74650c012070726f706f73616c2c011c543a3a48617368000114696e646578c101013450726f706f73616c496e64657800011c617070726f7665a80110626f6f6c000324f041646420616e20617965206f72206e617920766f746520666f72207468652073656e64657220746f2074686520676976656e2070726f706f73616c2e008c5265717569726573207468652073656e64657220746f2062652061206d656d6265722e0049015472616e73616374696f6e20666565732077696c6c2062652077616976656420696620746865206d656d62657220697320766f74696e67206f6e20616e7920706172746963756c61722070726f706f73616c5101666f72207468652066697273742074696d6520616e64207468652063616c6c206973207375636365737366756c2e2053756273657175656e7420766f7465206368616e6765732077696c6c206368617267652061106665652e34232320436f6d706c657869747909012d20604f284d296020776865726520604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e6465642940636c6f73655f6f6c645f77656967687410013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578c101013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e64d10301244f6c645765696768740001306c656e6774685f626f756e64c101010c7533320004604d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e0034232320436f6d706c6578697479742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e646564294c646973617070726f76655f70726f706f73616c04013470726f706f73616c5f686173682c011c543a3a486173680005285901446973617070726f766520612070726f706f73616c2c20636c6f73652c20616e642072656d6f76652069742066726f6d207468652073797374656d2c207265676172646c657373206f66206974732063757272656e741873746174652e00884d7573742062652063616c6c65642062792074686520526f6f74206f726967696e2e002c506172616d65746572733a1d012a206070726f706f73616c5f68617368603a205468652068617368206f66207468652070726f706f73616c20746861742073686f756c6420626520646973617070726f7665642e0034232320436f6d706c6578697479ac4f285029207768657265205020697320746865206e756d626572206f66206d61782070726f706f73616c7314636c6f736510013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578c101013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e642401185765696768740001306c656e6774685f626f756e64c101010c7533320006604d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e0034232320436f6d706c6578697479742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e64656429042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ecd0304184f7074696f6e04045401000108104e6f6e6500000010536f6d650400000000010000d103000006d50300d503082873705f77656967687473244f6c645765696768740000040010010c7536340000d9030c4470616c6c65745f636f6c6c6563746976651870616c6c65741043616c6c08045400044900011c2c7365745f6d656d626572730c012c6e65775f6d656d62657273350301445665633c543a3a4163636f756e7449643e0001147072696d65cd0301504f7074696f6e3c543a3a4163636f756e7449643e0001246f6c645f636f756e741c012c4d656d626572436f756e74000060805365742074686520636f6c6c6563746976652773206d656d626572736869702e0045012d20606e65775f6d656d62657273603a20546865206e6577206d656d626572206c6973742e204265206e69636520746f2074686520636861696e20616e642070726f7669646520697420736f727465642ee02d20607072696d65603a20546865207072696d65206d656d6265722077686f736520766f74652073657473207468652064656661756c742e59012d20606f6c645f636f756e74603a2054686520757070657220626f756e6420666f72207468652070726576696f7573206e756d626572206f66206d656d6265727320696e2073746f726167652e205573656420666f7250202077656967687420657374696d6174696f6e2e00d4546865206469737061746368206f6620746869732063616c6c206d75737420626520605365744d656d626572734f726967696e602e0051014e4f54453a20446f6573206e6f7420656e666f7263652074686520657870656374656420604d61784d656d6265727360206c696d6974206f6e2074686520616d6f756e74206f66206d656d626572732c2062757421012020202020207468652077656967687420657374696d6174696f6e732072656c79206f6e20697420746f20657374696d61746520646973706174636861626c65207765696768742e002823205741524e494e473a005901546865206070616c6c65742d636f6c6c656374697665602063616e20616c736f206265206d616e61676564206279206c6f676963206f757473696465206f66207468652070616c6c6574207468726f75676820746865b8696d706c656d656e746174696f6e206f6620746865207472616974205b604368616e67654d656d62657273605d2e5501416e792063616c6c20746f20607365745f6d656d6265727360206d757374206265206361726566756c207468617420746865206d656d6265722073657420646f65736e277420676574206f7574206f662073796e63a477697468206f74686572206c6f676963206d616e6167696e6720746865206d656d626572207365742e0038232320436f6d706c65786974793a502d20604f284d50202b204e29602077686572653ae020202d20604d60206f6c642d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429e020202d20604e60206e65772d6d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e646564299820202d206050602070726f706f73616c732d636f756e742028636f64652d626f756e646564291c6578656375746508012070726f706f73616cb503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64c101010c753332000124f0446973706174636820612070726f706f73616c2066726f6d2061206d656d626572207573696e672074686520604d656d62657260206f726967696e2e00a84f726967696e206d7573742062652061206d656d626572206f662074686520636f6c6c6563746976652e0038232320436f6d706c65786974793a5c2d20604f2842202b204d202b205029602077686572653ad82d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429882d20604d60206d656d626572732d636f756e742028636f64652d626f756e64656429a82d2060506020636f6d706c6578697479206f66206469737061746368696e67206070726f706f73616c601c70726f706f73650c01247468726573686f6c64c101012c4d656d626572436f756e7400012070726f706f73616cb503017c426f783c3c5420617320436f6e6669673c493e3e3a3a50726f706f73616c3e0001306c656e6774685f626f756e64c101010c753332000238f84164642061206e65772070726f706f73616c20746f2065697468657220626520766f746564206f6e206f72206578656375746564206469726563746c792e00845265717569726573207468652073656e64657220746f206265206d656d6265722e004101607468726573686f6c64602064657465726d696e65732077686574686572206070726f706f73616c60206973206578656375746564206469726563746c792028607468726573686f6c64203c20326029546f722070757420757020666f7220766f74696e672e0034232320436f6d706c6578697479ac2d20604f2842202b204d202b2050312960206f7220604f2842202b204d202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c420202d206272616e6368696e6720697320696e666c75656e63656420627920607468726573686f6c64602077686572653af4202020202d20605031602069732070726f706f73616c20657865637574696f6e20636f6d706c65786974792028607468726573686f6c64203c20326029fc202020202d20605032602069732070726f706f73616c732d636f756e742028636f64652d626f756e646564292028607468726573686f6c64203e3d2032602910766f74650c012070726f706f73616c2c011c543a3a48617368000114696e646578c101013450726f706f73616c496e64657800011c617070726f7665a80110626f6f6c000324f041646420616e20617965206f72206e617920766f746520666f72207468652073656e64657220746f2074686520676976656e2070726f706f73616c2e008c5265717569726573207468652073656e64657220746f2062652061206d656d6265722e0049015472616e73616374696f6e20666565732077696c6c2062652077616976656420696620746865206d656d62657220697320766f74696e67206f6e20616e7920706172746963756c61722070726f706f73616c5101666f72207468652066697273742074696d6520616e64207468652063616c6c206973207375636365737366756c2e2053756273657175656e7420766f7465206368616e6765732077696c6c206368617267652061106665652e34232320436f6d706c657869747909012d20604f284d296020776865726520604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e6465642940636c6f73655f6f6c645f77656967687410013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578c101013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e64d10301244f6c645765696768740001306c656e6774685f626f756e64c101010c7533320004604d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e0034232320436f6d706c6578697479742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e646564294c646973617070726f76655f70726f706f73616c04013470726f706f73616c5f686173682c011c543a3a486173680005285901446973617070726f766520612070726f706f73616c2c20636c6f73652c20616e642072656d6f76652069742066726f6d207468652073797374656d2c207265676172646c657373206f66206974732063757272656e741873746174652e00884d7573742062652063616c6c65642062792074686520526f6f74206f726967696e2e002c506172616d65746572733a1d012a206070726f706f73616c5f68617368603a205468652068617368206f66207468652070726f706f73616c20746861742073686f756c6420626520646973617070726f7665642e0034232320436f6d706c6578697479ac4f285029207768657265205020697320746865206e756d626572206f66206d61782070726f706f73616c7314636c6f736510013470726f706f73616c5f686173682c011c543a3a48617368000114696e646578c101013450726f706f73616c496e64657800015470726f706f73616c5f7765696768745f626f756e642401185765696768740001306c656e6774685f626f756e64c101010c7533320006604d01436c6f7365206120766f746520746861742069732065697468657220617070726f7665642c20646973617070726f766564206f722077686f736520766f74696e6720706572696f642068617320656e6465642e0055014d61792062652063616c6c656420627920616e79207369676e6564206163636f756e7420696e206f7264657220746f2066696e69736820766f74696e6720616e6420636c6f7365207468652070726f706f73616c2e00490149662063616c6c6564206265666f72652074686520656e64206f662074686520766f74696e6720706572696f642069742077696c6c206f6e6c7920636c6f73652074686520766f7465206966206974206973bc68617320656e6f75676820766f74657320746f20626520617070726f766564206f7220646973617070726f7665642e00490149662063616c6c65642061667465722074686520656e64206f662074686520766f74696e6720706572696f642061627374656e74696f6e732061726520636f756e7465642061732072656a656374696f6e732501756e6c6573732074686572652069732061207072696d65206d656d6265722073657420616e6420746865207072696d65206d656d626572206361737420616e20617070726f76616c2e00610149662074686520636c6f7365206f7065726174696f6e20636f6d706c65746573207375636365737366756c6c79207769746820646973617070726f76616c2c20746865207472616e73616374696f6e206665652077696c6c5d016265207761697665642e204f746865727769736520657865637574696f6e206f662074686520617070726f766564206f7065726174696f6e2077696c6c206265206368617267656420746f207468652063616c6c65722e0061012b206070726f706f73616c5f7765696768745f626f756e64603a20546865206d6178696d756d20616d6f756e74206f662077656967687420636f6e73756d656420627920657865637574696e672074686520636c6f7365642470726f706f73616c2e61012b20606c656e6774685f626f756e64603a2054686520757070657220626f756e6420666f7220746865206c656e677468206f66207468652070726f706f73616c20696e2073746f726167652e20436865636b65642076696135016073746f726167653a3a726561646020736f206974206973206073697a655f6f663a3a3c7533323e2829203d3d203460206c6172676572207468616e207468652070757265206c656e6774682e0034232320436f6d706c6578697479742d20604f2842202b204d202b205031202b20503229602077686572653ae020202d20604260206973206070726f706f73616c602073697a6520696e20627974657320286c656e6774682d6665652d626f756e64656429dc20202d20604d60206973206d656d626572732d636f756e742028636f64652d20616e6420676f7665726e616e63652d626f756e64656429c820202d20605031602069732074686520636f6d706c6578697479206f66206070726f706f73616c6020707265696d6167652ea420202d20605032602069732070726f706f73616c2d636f756e742028636f64652d626f756e64656429042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632edd030c4470616c6c65745f6d656d626572736869701870616c6c65741043616c6c08045400044900011c286164645f6d656d62657204010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e00000c784164642061206d656d626572206077686f6020746f20746865207365742e009c4d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a4164644f726967696e602e3472656d6f76655f6d656d62657204010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e00010c8c52656d6f76652061206d656d626572206077686f602066726f6d20746865207365742e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656d6f76654f726967696e602e2c737761705f6d656d62657208011872656d6f7665e90201504163636f756e7449644c6f6f6b75704f663c543e00010c616464e90201504163636f756e7449644c6f6f6b75704f663c543e000214bc53776170206f7574206f6e65206d656d626572206072656d6f76656020666f7220616e6f746865722060616464602e00a04d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a537761704f726967696e602e000d015072696d65206d656d62657273686970206973202a6e6f742a207061737365642066726f6d206072656d6f76656020746f2060616464602c20696620657874616e742e3472657365745f6d656d6265727304011c6d656d62657273350301445665633c543a3a4163636f756e7449643e00031055014368616e676520746865206d656d6265727368697020746f2061206e6577207365742c20646973726567617264696e6720746865206578697374696e67206d656d626572736869702e204265206e69636520616e64687061737320606d656d6265727360207072652d736f727465642e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52657365744f726967696e602e286368616e67655f6b657904010c6e6577e90201504163636f756e7449644c6f6f6b75704f663c543e000414d453776170206f7574207468652073656e64696e67206d656d62657220666f7220736f6d65206f74686572206b657920606e6577602e00f04d6179206f6e6c792062652063616c6c65642066726f6d20605369676e656460206f726967696e206f6620612063757272656e74206d656d6265722e001d015072696d65206d656d62657273686970206973207061737365642066726f6d20746865206f726967696e206163636f756e7420746f20606e6577602c20696620657874616e742e247365745f7072696d6504010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e00050cbc53657420746865207072696d65206d656d6265722e204d75737420626520612063757272656e74206d656d6265722e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e2c636c6561725f7072696d6500060c9452656d6f766520746865207072696d65206d656d626572206966206974206578697374732e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ee1030c3c70616c6c65745f74726561737572791870616c6c65741043616c6c0804540004490001143470726f706f73655f7370656e6408011476616c7565cd01013c42616c616e63654f663c542c20493e00012c62656e6566696369617279e90201504163636f756e7449644c6f6f6b75704f663c543e000018290150757420666f727761726420612073756767657374696f6e20666f72207370656e64696e672e2041206465706f7369742070726f706f7274696f6e616c20746f207468652076616c75653101697320726573657276656420616e6420736c6173686564206966207468652070726f706f73616c2069732072656a65637465642e2049742069732072657475726e6564206f6e6365207468655070726f706f73616c20697320617761726465642e0034232320436f6d706c6578697479182d204f2831293c72656a6563745f70726f706f73616c04012c70726f706f73616c5f6964c101013450726f706f73616c496e646578000118f852656a65637420612070726f706f736564207370656e642e20546865206f726967696e616c206465706f7369742077696c6c20626520736c61736865642e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656a6563744f726967696e602e0034232320436f6d706c6578697479182d204f28312940617070726f76655f70726f706f73616c04012c70726f706f73616c5f6964c101013450726f706f73616c496e64657800021c5901417070726f766520612070726f706f73616c2e2041742061206c617465722074696d652c207468652070726f706f73616c2077696c6c20626520616c6c6f636174656420746f207468652062656e6566696369617279a8616e6420746865206f726967696e616c206465706f7369742077696c6c2062652072657475726e65642e00ac4d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a417070726f76654f726967696e602e0034232320436f6d706c657869747920202d204f2831292e147370656e64080118616d6f756e74cd01013c42616c616e63654f663c542c20493e00012c62656e6566696369617279e90201504163636f756e7449644c6f6f6b75704f663c543e000320b850726f706f736520616e6420617070726f76652061207370656e64206f662074726561737572792066756e64732e004d012d20606f726967696e603a204d75737420626520605370656e644f726967696e60207769746820746865206053756363657373602076616c7565206265696e67206174206c656173742060616d6f756e74602e41012d2060616d6f756e74603a2054686520616d6f756e7420746f206265207472616e736665727265642066726f6d2074686520747265617375727920746f20746865206062656e6566696369617279602ee82d206062656e6566696369617279603a205468652064657374696e6174696f6e206163636f756e7420666f7220746865207472616e736665722e0045014e4f54453a20466f72207265636f72642d6b656570696e6720707572706f7365732c207468652070726f706f736572206973206465656d656420746f206265206571756976616c656e7420746f207468653062656e65666963696172792e3c72656d6f76655f617070726f76616c04012c70726f706f73616c5f6964c101013450726f706f73616c496e6465780004342d01466f72636520612070726576696f75736c7920617070726f7665642070726f706f73616c20746f2062652072656d6f7665642066726f6d2074686520617070726f76616c2071756575652ec0546865206f726967696e616c206465706f7369742077696c6c206e6f206c6f6e6765722062652072657475726e65642e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656a6563744f726967696e602ea02d206070726f706f73616c5f6964603a2054686520696e646578206f6620612070726f706f73616c0034232320436f6d706c6578697479ac2d204f2841292077686572652060416020697320746865206e756d626572206f6620617070726f76616c73001c4572726f72733a61012d206050726f706f73616c4e6f74417070726f766564603a20546865206070726f706f73616c5f69646020737570706c69656420776173206e6f7420666f756e6420696e2074686520617070726f76616c2071756575652c5101692e652e2c207468652070726f706f73616c20686173206e6f74206265656e20617070726f7665642e205468697320636f756c6420616c736f206d65616e207468652070726f706f73616c20646f6573206e6f745901657869737420616c746f6765746865722c2074687573207468657265206973206e6f2077617920697420776f756c642068617665206265656e20617070726f76656420696e2074686520666972737420706c6163652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ee5030c3870616c6c65745f7574696c6974791870616c6c65741043616c6c04045400011814626174636804011463616c6c73e903017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e0000487c53656e642061206261746368206f662064697370617463682063616c6c732e00b04d61792062652063616c6c65642066726f6d20616e79206f726967696e2065786365707420604e6f6e65602e005d012d206063616c6c73603a205468652063616c6c7320746f20626520646973706174636865642066726f6d207468652073616d65206f726967696e2e20546865206e756d626572206f662063616c6c206d757374206e6f74390120206578636565642074686520636f6e7374616e743a2060626174636865645f63616c6c735f6c696d6974602028617661696c61626c6520696e20636f6e7374616e74206d65746164617461292e0055014966206f726967696e20697320726f6f74207468656e207468652063616c6c7320617265206469737061746368656420776974686f757420636865636b696e67206f726967696e2066696c7465722e202854686973ec696e636c7564657320627970617373696e6720606672616d655f73797374656d3a3a436f6e6669673a3a4261736543616c6c46696c74657260292e0034232320436f6d706c6578697479d02d204f284329207768657265204320697320746865206e756d626572206f662063616c6c7320746f20626520626174636865642e005501546869732077696c6c2072657475726e20604f6b6020696e20616c6c2063697263756d7374616e6365732e20546f2064657465726d696e65207468652073756363657373206f66207468652062617463682c20616e31016576656e74206973206465706f73697465642e20496620612063616c6c206661696c656420616e64207468652062617463682077617320696e7465727275707465642c207468656e207468655501604261746368496e74657272757074656460206576656e74206973206465706f73697465642c20616c6f6e67207769746820746865206e756d626572206f66207375636365737366756c2063616c6c73206d6164654d01616e6420746865206572726f72206f6620746865206661696c65642063616c6c2e20496620616c6c2077657265207375636365737366756c2c207468656e2074686520604261746368436f6d706c65746564604c6576656e74206973206465706f73697465642e3461735f64657269766174697665080114696e646578dc010c75313600011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000134dc53656e6420612063616c6c207468726f75676820616e20696e64657865642070736575646f6e796d206f66207468652073656e6465722e00550146696c7465722066726f6d206f726967696e206172652070617373656420616c6f6e672e205468652063616c6c2077696c6c2062652064697370617463686564207769746820616e206f726967696e207768696368bc757365207468652073616d652066696c74657220617320746865206f726967696e206f6620746869732063616c6c2e0045014e4f54453a20496620796f75206e65656420746f20656e73757265207468617420616e79206163636f756e742d62617365642066696c746572696e67206973206e6f7420686f6e6f7265642028692e652e61016265636175736520796f7520657870656374206070726f78796020746f2068617665206265656e2075736564207072696f7220696e207468652063616c6c20737461636b20616e6420796f7520646f206e6f742077616e7451017468652063616c6c207265737472696374696f6e7320746f206170706c7920746f20616e79207375622d6163636f756e7473292c207468656e20757365206061735f6d756c74695f7468726573686f6c645f31607c696e20746865204d756c74697369672070616c6c657420696e73746561642e00f44e4f54453a205072696f7220746f2076657273696f6e202a31322c2074686973207761732063616c6c6564206061735f6c696d697465645f737562602e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e2462617463685f616c6c04011463616c6c73e903017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000234ec53656e642061206261746368206f662064697370617463682063616c6c7320616e642061746f6d6963616c6c792065786563757465207468656d2e21015468652077686f6c65207472616e73616374696f6e2077696c6c20726f6c6c6261636b20616e64206661696c20696620616e79206f66207468652063616c6c73206661696c65642e00b04d61792062652063616c6c65642066726f6d20616e79206f726967696e2065786365707420604e6f6e65602e005d012d206063616c6c73603a205468652063616c6c7320746f20626520646973706174636865642066726f6d207468652073616d65206f726967696e2e20546865206e756d626572206f662063616c6c206d757374206e6f74390120206578636565642074686520636f6e7374616e743a2060626174636865645f63616c6c735f6c696d6974602028617661696c61626c6520696e20636f6e7374616e74206d65746164617461292e0055014966206f726967696e20697320726f6f74207468656e207468652063616c6c7320617265206469737061746368656420776974686f757420636865636b696e67206f726967696e2066696c7465722e202854686973ec696e636c7564657320627970617373696e6720606672616d655f73797374656d3a3a436f6e6669673a3a4261736543616c6c46696c74657260292e0034232320436f6d706c6578697479d02d204f284329207768657265204320697320746865206e756d626572206f662063616c6c7320746f20626520626174636865642e2c64697370617463685f617308012461735f6f726967696eed030154426f783c543a3a50616c6c6574734f726967696e3e00011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000318c84469737061746368657320612066756e6374696f6e2063616c6c207769746820612070726f7669646564206f726967696e2e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e0034232320436f6d706c65786974791c2d204f2831292e2c666f7263655f626174636804011463616c6c73e903017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e0004347c53656e642061206261746368206f662064697370617463682063616c6c732ed4556e6c696b6520606261746368602c20697420616c6c6f7773206572726f727320616e6420776f6e277420696e746572727570742e00b04d61792062652063616c6c65642066726f6d20616e79206f726967696e2065786365707420604e6f6e65602e005d012d206063616c6c73603a205468652063616c6c7320746f20626520646973706174636865642066726f6d207468652073616d65206f726967696e2e20546865206e756d626572206f662063616c6c206d757374206e6f74390120206578636565642074686520636f6e7374616e743a2060626174636865645f63616c6c735f6c696d6974602028617661696c61626c6520696e20636f6e7374616e74206d65746164617461292e004d014966206f726967696e20697320726f6f74207468656e207468652063616c6c732061726520646973706174636820776974686f757420636865636b696e67206f726967696e2066696c7465722e202854686973ec696e636c7564657320627970617373696e6720606672616d655f73797374656d3a3a436f6e6669673a3a4261736543616c6c46696c74657260292e0034232320436f6d706c6578697479d02d204f284329207768657265204320697320746865206e756d626572206f662063616c6c7320746f20626520626174636865642e2c776974685f77656967687408011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000118776569676874240118576569676874000518c4446973706174636820612066756e6374696f6e2063616c6c2077697468206120737065636966696564207765696768742e002d01546869732066756e6374696f6e20646f6573206e6f7420636865636b2074686520776569676874206f66207468652063616c6c2c20616e6420696e737465616420616c6c6f777320746865b8526f6f74206f726967696e20746f20737065636966792074686520776569676874206f66207468652063616c6c2e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ee903000002b50300ed0308447370697269746e65745f72756e74696d65304f726967696e43616c6c657200011c1873797374656d0400f10301746672616d655f73797374656d3a3a4f726967696e3c52756e74696d653e0000001c436f756e63696c0400f50301010170616c6c65745f636f6c6c6563746976653a3a4f726967696e3c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365313e001f0048546563686e6963616c436f6d6d69747465650400f90301010170616c6c65745f636f6c6c6563746976653a3a4f726967696e3c52756e74696d652c2070616c6c65745f636f6c6c6563746976653a3a496e7374616e6365323e0020000c4469640400fd0301506469643a3a4f726967696e3c52756e74696d653e0040002c506f6c6b61646f7458636d04000104014870616c6c65745f78636d3a3a4f726967696e0053002843756d756c757358636d04000504016863756d756c75735f70616c6c65745f78636d3a3a4f726967696e00540010566f69640400090401110173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a566f696400060000f1030c346672616d655f737570706f7274206469737061746368245261774f726967696e04244163636f756e7449640100010c10526f6f74000000185369676e656404000001244163636f756e744964000100104e6f6e6500020000f503084470616c6c65745f636f6c6c656374697665245261774f726967696e08244163636f756e7449640100044900010c1c4d656d6265727308001c012c4d656d626572436f756e7400001c012c4d656d626572436f756e74000000184d656d62657204000001244163636f756e744964000100205f5068616e746f6d00020000f903084470616c6c65745f636f6c6c656374697665245261774f726967696e08244163636f756e7449640100044900010c1c4d656d6265727308001c012c4d656d626572436f756e7400001c012c4d656d626572436f756e74000000184d656d62657204000001244163636f756e744964000100205f5068616e746f6d00020000fd030c0c646964186f726967696e304469645261774f726967696e08344469644964656e7469666965720100244163636f756e74496401000008010869640001344469644964656e7469666965720001247375626d69747465720001244163636f756e744964000001040c2870616c6c65745f78636d1870616c6c6574184f726967696e0001080c58636d0400b50101344d756c74694c6f636174696f6e00000020526573706f6e73650400b50101344d756c74694c6f636174696f6e0001000005040c4863756d756c75735f70616c6c65745f78636d1870616c6c6574184f726967696e0001081452656c6179000000405369626c696e6750617261636861696e0400a9010118506172614964000100000904081c73705f636f726510566f6964000100000d040c3870616c6c65745f76657374696e671870616c6c65741043616c6c0404540001141076657374000024b8556e6c6f636b20616e79207665737465642066756e6473206f66207468652073656e646572206163636f756e742e005d01546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e64207468652073656e646572206d75737420686176652066756e6473207374696c6c646c6f636b656420756e64657220746869732070616c6c65742e00d0456d69747320656974686572206056657374696e67436f6d706c6574656460206f72206056657374696e6755706461746564602e0034232320436f6d706c6578697479242d20604f283129602e28766573745f6f74686572040118746172676574e90201504163636f756e7449644c6f6f6b75704f663c543e00012cb8556e6c6f636b20616e79207665737465642066756e6473206f662061206074617267657460206163636f756e742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0051012d2060746172676574603a20546865206163636f756e742077686f7365207665737465642066756e64732073686f756c6420626520756e6c6f636b65642e204d75737420686176652066756e6473207374696c6c646c6f636b656420756e64657220746869732070616c6c65742e00d0456d69747320656974686572206056657374696e67436f6d706c6574656460206f72206056657374696e6755706461746564602e0034232320436f6d706c6578697479242d20604f283129602e3c7665737465645f7472616e73666572080118746172676574e90201504163636f756e7449644c6f6f6b75704f663c543e0001207363686564756c65110401a456657374696e67496e666f3c42616c616e63654f663c543e2c20543a3a426c6f636b4e756d6265723e00023464437265617465206120766573746564207472616e736665722e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00cc2d2060746172676574603a20546865206163636f756e7420726563656976696e6720746865207665737465642066756e64732ef02d20607363686564756c65603a205468652076657374696e67207363686564756c6520617474616368656420746f20746865207472616e736665722e005c456d697473206056657374696e6743726561746564602e00fc4e4f54453a20546869732077696c6c20756e6c6f636b20616c6c207363686564756c6573207468726f756768207468652063757272656e7420626c6f636b2e0034232320436f6d706c6578697479242d20604f283129602e54666f7263655f7665737465645f7472616e736665720c0118736f75726365e90201504163636f756e7449644c6f6f6b75704f663c543e000118746172676574e90201504163636f756e7449644c6f6f6b75704f663c543e0001207363686564756c65110401a456657374696e67496e666f3c42616c616e63654f663c543e2c20543a3a426c6f636b4e756d6265723e00033860466f726365206120766573746564207472616e736665722e00c4546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f526f6f745f2e00e82d2060736f75726365603a20546865206163636f756e742077686f73652066756e64732073686f756c64206265207472616e736665727265642e11012d2060746172676574603a20546865206163636f756e7420746861742073686f756c64206265207472616e7366657272656420746865207665737465642066756e64732ef02d20607363686564756c65603a205468652076657374696e67207363686564756c6520617474616368656420746f20746865207472616e736665722e005c456d697473206056657374696e6743726561746564602e00fc4e4f54453a20546869732077696c6c20756e6c6f636b20616c6c207363686564756c6573207468726f756768207468652063757272656e7420626c6f636b2e0034232320436f6d706c6578697479242d20604f283129602e3c6d657267655f7363686564756c657308013c7363686564756c65315f696e6465781c010c75333200013c7363686564756c65325f696e6465781c010c7533320004545d014d657267652074776f2076657374696e67207363686564756c657320746f6765746865722c206372656174696e672061206e65772076657374696e67207363686564756c65207468617420756e6c6f636b73206f7665725501746865206869676865737420706f737369626c6520737461727420616e6420656e6420626c6f636b732e20496620626f7468207363686564756c6573206861766520616c7265616479207374617274656420746865590163757272656e7420626c6f636b2077696c6c206265207573656420617320746865207363686564756c652073746172743b207769746820746865206361766561742074686174206966206f6e65207363686564756c655d0169732066696e6973686564206279207468652063757272656e7420626c6f636b2c20746865206f746865722077696c6c206265207472656174656420617320746865206e6577206d6572676564207363686564756c652c2c756e6d6f6469666965642e00f84e4f54453a20496620607363686564756c65315f696e646578203d3d207363686564756c65325f696e6465786020746869732069732061206e6f2d6f702e41014e4f54453a20546869732077696c6c20756e6c6f636b20616c6c207363686564756c6573207468726f756768207468652063757272656e7420626c6f636b207072696f7220746f206d657267696e672e61014e4f54453a20496620626f7468207363686564756c6573206861766520656e646564206279207468652063757272656e7420626c6f636b2c206e6f206e6577207363686564756c652077696c6c206265206372656174656464616e6420626f74682077696c6c2062652072656d6f7665642e006c4d6572676564207363686564756c6520617474726962757465733a35012d20607374617274696e675f626c6f636b603a20604d4158287363686564756c65312e7374617274696e675f626c6f636b2c207363686564756c6564322e7374617274696e675f626c6f636b2c48202063757272656e745f626c6f636b29602e21012d2060656e64696e675f626c6f636b603a20604d4158287363686564756c65312e656e64696e675f626c6f636b2c207363686564756c65322e656e64696e675f626c6f636b29602e59012d20606c6f636b6564603a20607363686564756c65312e6c6f636b65645f61742863757272656e745f626c6f636b29202b207363686564756c65322e6c6f636b65645f61742863757272656e745f626c6f636b29602e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00e82d20607363686564756c65315f696e646578603a20696e646578206f6620746865206669727374207363686564756c6520746f206d657267652eec2d20607363686564756c65325f696e646578603a20696e646578206f6620746865207365636f6e64207363686564756c6520746f206d657267652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e11040c3870616c6c65745f76657374696e673076657374696e675f696e666f2c56657374696e67496e666f081c42616c616e636501182c426c6f636b4e756d6265720110000c01186c6f636b656418011c42616c616e63650001247065725f626c6f636b18011c42616c616e63650001387374617274696e675f626c6f636b10012c426c6f636b4e756d626572000015040c4070616c6c65745f7363686564756c65721870616c6c65741043616c6c040454000118207363686564756c651001107768656e100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963190401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00000470416e6f6e796d6f75736c79207363686564756c652061207461736b2e1863616e63656c0801107768656e100138543a3a426c6f636b4e756d626572000114696e6465781c010c7533320001049443616e63656c20616e20616e6f6e796d6f75736c79207363686564756c6564207461736b2e387363686564756c655f6e616d656414010869640401205461736b4e616d650001107768656e100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963190401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000204585363686564756c652061206e616d6564207461736b2e3063616e63656c5f6e616d656404010869640401205461736b4e616d650003047843616e63656c2061206e616d6564207363686564756c6564207461736b2e387363686564756c655f61667465721001146166746572100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963190401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000404a8416e6f6e796d6f75736c79207363686564756c652061207461736b20616674657220612064656c61792e507363686564756c655f6e616d65645f616674657214010869640401205461736b4e616d650001146166746572100138543a3a426c6f636b4e756d6265720001386d617962655f706572696f646963190401a04f7074696f6e3c7363686564756c653a3a506572696f643c543a3a426c6f636b4e756d6265723e3e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e000504905363686564756c652061206e616d6564207461736b20616674657220612064656c61792e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e190404184f7074696f6e04045401cc0108104e6f6e6500000010536f6d650400cc00000100001d040c3070616c6c65745f70726f78791870616c6c65741043616c6c0404540001281470726f78790c01107265616ce90201504163636f756e7449644c6f6f6b75704f663c543e000140666f7263655f70726f78795f74797065210401504f7074696f6e3c543a3a50726f7879547970653e00011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e0000244d0144697370617463682074686520676976656e206063616c6c602066726f6d20616e206163636f756e742074686174207468652073656e64657220697320617574686f726973656420666f72207468726f75676830606164645f70726f7879602e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e61012d2060666f7263655f70726f78795f74797065603a2053706563696679207468652065786163742070726f7879207479706520746f206265207573656420616e6420636865636b656420666f7220746869732063616c6c2ed02d206063616c6c603a205468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e246164645f70726f78790c012064656c6567617465e90201504163636f756e7449644c6f6f6b75704f663c543e00012870726f78795f74797065d80130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d6265720001244501526567697374657220612070726f7879206163636f756e7420666f72207468652073656e64657220746861742069732061626c6520746f206d616b652063616c6c73206f6e2069747320626568616c662e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a11012d206070726f7879603a20546865206163636f756e74207468617420746865206063616c6c65726020776f756c64206c696b6520746f206d616b6520612070726f78792efc2d206070726f78795f74797065603a20546865207065726d697373696f6e7320616c6c6f77656420666f7220746869732070726f7879206163636f756e742e4d012d206064656c6179603a2054686520616e6e6f756e63656d656e7420706572696f64207265717569726564206f662074686520696e697469616c2070726f78792e2057696c6c2067656e6572616c6c79206265147a65726f2e3072656d6f76655f70726f78790c012064656c6567617465e90201504163636f756e7449644c6f6f6b75704f663c543e00012870726f78795f74797065d80130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d62657200021ca8556e726567697374657220612070726f7879206163636f756e7420666f72207468652073656e6465722e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a25012d206070726f7879603a20546865206163636f756e74207468617420746865206063616c6c65726020776f756c64206c696b6520746f2072656d6f766520617320612070726f78792e41012d206070726f78795f74797065603a20546865207065726d697373696f6e732063757272656e746c7920656e61626c656420666f72207468652072656d6f7665642070726f7879206163636f756e742e3872656d6f76655f70726f78696573000318b4556e726567697374657220616c6c2070726f7879206163636f756e747320666f72207468652073656e6465722e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0041015741524e494e473a2054686973206d61792062652063616c6c6564206f6e206163636f756e74732063726561746564206279206070757265602c20686f776576657220696620646f6e652c207468656e590174686520756e726573657276656420666565732077696c6c20626520696e61636365737369626c652e202a2a416c6c2061636365737320746f2074686973206163636f756e742077696c6c206265206c6f73742e2a2a2c6372656174655f707572650c012870726f78795f74797065d80130543a3a50726f78795479706500011464656c6179100138543a3a426c6f636b4e756d626572000114696e646578dc010c7531360004483901537061776e2061206672657368206e6577206163636f756e7420746861742069732067756172616e7465656420746f206265206f746865727769736520696e61636365737369626c652c20616e64fc696e697469616c697a65206974207769746820612070726f7879206f66206070726f78795f747970656020666f7220606f726967696e602073656e6465722e006c5265717569726573206120605369676e656460206f726967696e2e0051012d206070726f78795f74797065603a205468652074797065206f66207468652070726f78792074686174207468652073656e6465722077696c6c2062652072656769737465726564206173206f766572207468654d016e6577206163636f756e742e20546869732077696c6c20616c6d6f737420616c7761797320626520746865206d6f7374207065726d697373697665206050726f7879547970656020706f737369626c6520746f78616c6c6f7720666f72206d6178696d756d20666c65786962696c6974792e51012d2060696e646578603a204120646973616d626967756174696f6e20696e6465782c20696e206361736520746869732069732063616c6c6564206d756c7469706c652074696d657320696e207468652073616d655d017472616e73616374696f6e2028652e672e207769746820607574696c6974793a3a626174636860292e20556e6c65737320796f75277265207573696e67206062617463686020796f752070726f6261626c79206a7573744077616e7420746f20757365206030602e4d012d206064656c6179603a2054686520616e6e6f756e63656d656e7420706572696f64207265717569726564206f662074686520696e697469616c2070726f78792e2057696c6c2067656e6572616c6c79206265147a65726f2e0051014661696c73207769746820604475706c69636174656020696620746869732068617320616c7265616479206265656e2063616c6c656420696e2074686973207472616e73616374696f6e2c2066726f6d207468659873616d652073656e6465722c2077697468207468652073616d6520706172616d65746572732e00e44661696c732069662074686572652061726520696e73756666696369656e742066756e647320746f2070617920666f72206465706f7369742e246b696c6c5f7075726514011c737061776e6572e90201504163636f756e7449644c6f6f6b75704f663c543e00012870726f78795f74797065d80130543a3a50726f787954797065000114696e646578dc010c753136000118686569676874280138543a3a426c6f636b4e756d6265720001246578745f696e646578c101010c753332000540a052656d6f76657320612070726576696f75736c7920737061776e656420707572652070726f78792e0049015741524e494e473a202a2a416c6c2061636365737320746f2074686973206163636f756e742077696c6c206265206c6f73742e2a2a20416e792066756e64732068656c6420696e2069742077696c6c20626534696e61636365737369626c652e0059015265717569726573206120605369676e656460206f726967696e2c20616e64207468652073656e646572206163636f756e74206d7573742068617665206265656e206372656174656420627920612063616c6c20746f94607075726560207769746820636f72726573706f6e64696e6720706172616d65746572732e0039012d2060737061776e6572603a20546865206163636f756e742074686174206f726967696e616c6c792063616c6c65642060707572656020746f206372656174652074686973206163636f756e742e39012d2060696e646578603a2054686520646973616d626967756174696f6e20696e646578206f726967696e616c6c792070617373656420746f206070757265602e2050726f6261626c79206030602eec2d206070726f78795f74797065603a205468652070726f78792074797065206f726967696e616c6c792070617373656420746f206070757265602e29012d2060686569676874603a2054686520686569676874206f662074686520636861696e207768656e207468652063616c6c20746f20607075726560207761732070726f6365737365642e35012d20606578745f696e646578603a205468652065787472696e73696320696e64657820696e207768696368207468652063616c6c20746f20607075726560207761732070726f6365737365642e0035014661696c73207769746820604e6f5065726d697373696f6e6020696e2063617365207468652063616c6c6572206973206e6f7420612070726576696f75736c7920637265617465642070757265dc6163636f756e742077686f7365206070757265602063616c6c2068617320636f72726573706f6e64696e6720706172616d65746572732e20616e6e6f756e63650801107265616ce90201504163636f756e7449644c6f6f6b75704f663c543e00012463616c6c5f686173682c013443616c6c486173684f663c543e00063c05015075626c697368207468652068617368206f6620612070726f78792d63616c6c20746861742077696c6c206265206d61646520696e20746865206675747572652e005d0154686973206d7573742062652063616c6c656420736f6d65206e756d626572206f6620626c6f636b73206265666f72652074686520636f72726573706f6e64696e67206070726f78796020697320617474656d7074656425016966207468652064656c6179206173736f6369617465642077697468207468652070726f78792072656c6174696f6e736869702069732067726561746572207468616e207a65726f2e0011014e6f206d6f7265207468616e20604d617850656e64696e676020616e6e6f756e63656d656e7473206d6179206265206d61646520617420616e79206f6e652074696d652e000901546869732077696c6c2074616b652061206465706f736974206f662060416e6e6f756e63656d656e744465706f736974466163746f72602061732077656c6c206173190160416e6e6f756e63656d656e744465706f736974426173656020696620746865726520617265206e6f206f746865722070656e64696e6720616e6e6f756e63656d656e74732e002501546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420612070726f7879206f6620607265616c602e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e15012d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e4c72656d6f76655f616e6e6f756e63656d656e740801107265616ce90201504163636f756e7449644c6f6f6b75704f663c543e00012463616c6c5f686173682c013443616c6c486173684f663c543e0007287052656d6f7665206120676976656e20616e6e6f756e63656d656e742e0059014d61792062652063616c6c656420627920612070726f7879206163636f756e7420746f2072656d6f766520612063616c6c20746865792070726576696f75736c7920616e6e6f756e63656420616e642072657475726e30746865206465706f7369742e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e15012d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e4c72656a6563745f616e6e6f756e63656d656e7408012064656c6567617465e90201504163636f756e7449644c6f6f6b75704f663c543e00012463616c6c5f686173682c013443616c6c486173684f663c543e000828b052656d6f76652074686520676976656e20616e6e6f756e63656d656e74206f6620612064656c65676174652e0061014d61792062652063616c6c6564206279206120746172676574202870726f7869656429206163636f756e7420746f2072656d6f766520612063616c6c2074686174206f6e65206f662074686569722064656c6567617465732501286064656c656761746560292068617320616e6e6f756e63656420746865792077616e7420746f20657865637574652e20546865206465706f7369742069732072657475726e65642e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733af42d206064656c6567617465603a20546865206163636f756e7420746861742070726576696f75736c7920616e6e6f756e636564207468652063616c6c2ebc2d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f206265206d6164652e3c70726f78795f616e6e6f756e63656410012064656c6567617465e90201504163636f756e7449644c6f6f6b75704f663c543e0001107265616ce90201504163636f756e7449644c6f6f6b75704f663c543e000140666f7263655f70726f78795f74797065210401504f7074696f6e3c543a3a50726f7879547970653e00011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00092c4d0144697370617463682074686520676976656e206063616c6c602066726f6d20616e206163636f756e742074686174207468652073656e64657220697320617574686f72697a656420666f72207468726f75676830606164645f70726f7879602e00a852656d6f76657320616e7920636f72726573706f6e64696e6720616e6e6f756e63656d656e742873292e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e002c506172616d65746572733a0d012d20607265616c603a20546865206163636f756e742074686174207468652070726f78792077696c6c206d616b6520612063616c6c206f6e20626568616c66206f662e61012d2060666f7263655f70726f78795f74797065603a2053706563696679207468652065786163742070726f7879207479706520746f206265207573656420616e6420636865636b656420666f7220746869732063616c6c2ed02d206063616c6c603a205468652063616c6c20746f206265206d6164652062792074686520607265616c60206163636f756e742e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e210404184f7074696f6e04045401d80108104e6f6e6500000010536f6d650400d8000001000025040c3c70616c6c65745f707265696d6167651870616c6c65741043616c6c040454000110346e6f74655f707265696d616765040114627974657330011c5665633c75383e000010745265676973746572206120707265696d616765206f6e2d636861696e2e00550149662074686520707265696d616765207761732070726576696f75736c79207265717565737465642c206e6f2066656573206f72206465706f73697473206172652074616b656e20666f722070726f766964696e67550174686520707265696d6167652e204f74686572776973652c2061206465706f7369742069732074616b656e2070726f706f7274696f6e616c20746f207468652073697a65206f662074686520707265696d6167652e3c756e6e6f74655f707265696d616765040110686173682c011c543a3a48617368000118dc436c65617220616e20756e72657175657374656420707265696d6167652066726f6d207468652072756e74696d652073746f726167652e00fc496620606c656e602069732070726f76696465642c207468656e2069742077696c6c2062652061206d7563682063686561706572206f7065726174696f6e2e0001012d206068617368603a205468652068617368206f662074686520707265696d61676520746f2062652072656d6f7665642066726f6d207468652073746f72652eb82d20606c656e603a20546865206c656e677468206f662074686520707265696d616765206f66206068617368602e40726571756573745f707265696d616765040110686173682c011c543a3a48617368000210410152657175657374206120707265696d6167652062652075706c6f6164656420746f2074686520636861696e20776974686f757420706179696e6720616e792066656573206f72206465706f736974732e00550149662074686520707265696d6167652072657175657374732068617320616c7265616479206265656e2070726f7669646564206f6e2d636861696e2c20776520756e7265736572766520616e79206465706f7369743901612075736572206d6179206861766520706169642c20616e642074616b652074686520636f6e74726f6c206f662074686520707265696d616765206f7574206f662074686569722068616e64732e48756e726571756573745f707265696d616765040110686173682c011c543a3a4861736800030cbc436c65617220612070726576696f75736c79206d616465207265717565737420666f72206120707265696d6167652e002d014e4f54453a2054484953204d555354204e4f542042452043414c4c4544204f4e20606861736860204d4f52452054494d4553205448414e2060726571756573745f707265696d616765602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e29040c4470616c6c65745f6d656d626572736869701870616c6c65741043616c6c08045400044900011c286164645f6d656d62657204010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e00000c784164642061206d656d626572206077686f6020746f20746865207365742e009c4d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a4164644f726967696e602e3472656d6f76655f6d656d62657204010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e00010c8c52656d6f76652061206d656d626572206077686f602066726f6d20746865207365742e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656d6f76654f726967696e602e2c737761705f6d656d62657208011872656d6f7665e90201504163636f756e7449644c6f6f6b75704f663c543e00010c616464e90201504163636f756e7449644c6f6f6b75704f663c543e000214bc53776170206f7574206f6e65206d656d626572206072656d6f76656020666f7220616e6f746865722060616464602e00a04d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a537761704f726967696e602e000d015072696d65206d656d62657273686970206973202a6e6f742a207061737365642066726f6d206072656d6f76656020746f2060616464602c20696620657874616e742e3472657365745f6d656d6265727304011c6d656d62657273350301445665633c543a3a4163636f756e7449643e00031055014368616e676520746865206d656d6265727368697020746f2061206e6577207365742c20646973726567617264696e6720746865206578697374696e67206d656d626572736869702e204265206e69636520616e64687061737320606d656d6265727360207072652d736f727465642e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52657365744f726967696e602e286368616e67655f6b657904010c6e6577e90201504163636f756e7449644c6f6f6b75704f663c543e000414d453776170206f7574207468652073656e64696e67206d656d62657220666f7220736f6d65206f74686572206b657920606e6577602e00f04d6179206f6e6c792062652063616c6c65642066726f6d20605369676e656460206f726967696e206f6620612063757272656e74206d656d6265722e001d015072696d65206d656d62657273686970206973207061737365642066726f6d20746865206f726967696e206163636f756e7420746f20606e6577602c20696620657874616e742e247365745f7072696d6504010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e00050cbc53657420746865207072696d65206d656d6265722e204d75737420626520612063757272656e74206d656d6265722e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e2c636c6561725f7072696d6500060c9452656d6f766520746865207072696d65206d656d626572206966206974206578697374732e00a44d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a5072696d654f726967696e602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e2d040c2c70616c6c65745f746970731870616c6c65741043616c6c080454000449000118387265706f72745f617765736f6d65080118726561736f6e30011c5665633c75383e00010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e00004059015265706f727420736f6d657468696e672060726561736f6e60207468617420646573657276657320612074697020616e6420636c61696d20616e79206576656e7475616c207468652066696e6465722773206665652e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0051015061796d656e743a20605469705265706f72744465706f73697442617365602077696c6c2062652072657365727665642066726f6d20746865206f726967696e206163636f756e742c2061732077656c6c206173bc60446174614465706f736974506572427974656020666f722065616368206279746520696e2060726561736f6e602e005d012d2060726561736f6e603a2054686520726561736f6e20666f722c206f7220746865207468696e6720746861742064657365727665732c20746865207469703b2067656e6572616c6c7920746869732077696c6c20626558202061205554462d382d656e636f6465642055524c2ee82d206077686f603a20546865206163636f756e742077686963682073686f756c6420626520637265646974656420666f7220746865207469702e0074456d69747320604e657754697060206966207375636365737366756c2e0034232320436f6d706c6578697479982d20604f2852296020776865726520605260206c656e677468206f662060726561736f6e602e9020202d20656e636f64696e6720616e642068617368696e67206f662027726561736f6e272c726574726163745f746970040110686173682c011c543a3a486173680001405101526574726163742061207072696f72207469702d7265706f72742066726f6d20607265706f72745f617765736f6d65602c20616e642063616e63656c207468652070726f63657373206f662074697070696e672e00dc4966207375636365737366756c2c20746865206f726967696e616c206465706f7369742077696c6c20626520756e72657365727665642e004d01546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e642074686520746970206964656e7469666965642062792060686173686041016d7573742068617665206265656e207265706f7274656420627920746865207369676e696e67206163636f756e74207468726f75676820607265706f72745f617765736f6d65602028616e64206e6f744c7468726f75676820607469705f6e657760292e0061012d206068617368603a20546865206964656e74697479206f6620746865206f70656e2074697020666f722077686963682061207469702076616c7565206973206465636c617265642e205468697320697320666f726d65645d0120206173207468652068617368206f6620746865207475706c65206f6620746865206f726967696e616c207469702060726561736f6e6020616e64207468652062656e6566696369617279206163636f756e742049442e008c456d697473206054697052657472616374656460206966207375636365737366756c2e0034232320436f6d706c6578697479202d20604f28312960d820202d20446570656e6473206f6e20746865206c656e677468206f662060543a3a48617368602077686963682069732066697865642e1c7469705f6e65770c0118726561736f6e30011c5665633c75383e00010c77686fe90201504163636f756e7449644c6f6f6b75704f663c543e0001247469705f76616c7565cd01013c42616c616e63654f663c542c20493e00024cf04769766520612074697020666f7220736f6d657468696e67206e65773b206e6f2066696e6465722773206665652077696c6c2062652074616b656e2e005101546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d7573742062652061706d656d626572206f662074686520605469707065727360207365742e005d012d2060726561736f6e603a2054686520726561736f6e20666f722c206f7220746865207468696e6720746861742064657365727665732c20746865207469703b2067656e6572616c6c7920746869732077696c6c20626558202061205554462d382d656e636f6465642055524c2ee82d206077686f603a20546865206163636f756e742077686963682073686f756c6420626520637265646974656420666f7220746865207469702e4d012d20607469705f76616c7565603a2054686520616d6f756e74206f66207469702074686174207468652073656e64657220776f756c64206c696b6520746f20676976652e20546865206d656469616e20746970d4202076616c7565206f662061637469766520746970706572732077696c6c20626520676976656e20746f20746865206077686f602e0074456d69747320604e657754697060206966207375636365737366756c2e0034232320436f6d706c657869747921012d20604f2852202b2054296020776865726520605260206c656e677468206f662060726561736f6e602c2060546020697320746865206e756d626572206f6620746970706572732e5d0120202d20604f285429603a206465636f64696e6720605469707065726020766563206f66206c656e677468206054602e20605460206973206368617267656420617320757070657220626f756e6420676976656e2062792d012020202060436f6e7461696e734c656e677468426f756e64602e205468652061637475616c20636f737420646570656e6473206f6e2074686520696d706c656d656e746174696f6e206f66442020202060543a3a54697070657273602ee020202d20604f285229603a2068617368696e6720616e6420656e636f64696e67206f6620726561736f6e206f66206c656e677468206052600c746970080110686173682c011c543a3a486173680001247469705f76616c7565cd01013c42616c616e63654f663c542c20493e000354b04465636c6172652061207469702076616c756520666f7220616e20616c72656164792d6f70656e207469702e005101546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f20616e6420746865207369676e696e67206163636f756e74206d7573742062652061706d656d626572206f662074686520605469707065727360207365742e0061012d206068617368603a20546865206964656e74697479206f6620746865206f70656e2074697020666f722077686963682061207469702076616c7565206973206465636c617265642e205468697320697320666f726d65645d0120206173207468652068617368206f6620746865207475706c65206f66207468652068617368206f6620746865206f726967696e616c207469702060726561736f6e6020616e64207468652062656e65666963696172793420206163636f756e742049442e4d012d20607469705f76616c7565603a2054686520616d6f756e74206f66207469702074686174207468652073656e64657220776f756c64206c696b6520746f20676976652e20546865206d656469616e20746970d4202076616c7565206f662061637469766520746970706572732077696c6c20626520676976656e20746f20746865206077686f602e006101456d6974732060546970436c6f73696e676020696620746865207468726573686f6c64206f66207469707065727320686173206265656e207265616368656420616e642074686520636f756e74646f776e20706572696f643068617320737461727465642e0034232320436f6d706c657869747961012d20604f285429602077686572652060546020697320746865206e756d626572206f6620746970706572732e206465636f64696e6720605469707065726020766563206f66206c656e677468206054602c20696e736572745901202074697020616e6420636865636b20636c6f73696e672c20605460206973206368617267656420617320757070657220626f756e6420676976656e2062792060436f6e7461696e734c656e677468426f756e64602e010120205468652061637475616c20636f737420646570656e6473206f6e2074686520696d706c656d656e746174696f6e206f662060543a3a54697070657273602e005d01202041637475616c6c792077656967687420636f756c64206265206c6f77657220617320697420646570656e6473206f6e20686f77206d616e7920746970732061726520696e20604f70656e5469706020627574206974d02020697320776569676874656420617320696620616c6d6f73742066756c6c20692e65206f66206c656e6774682060542d31602e24636c6f73655f746970040110686173682c011c543a3a486173680004345c436c6f736520616e64207061796f75742061207469702e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e00150154686520746970206964656e74696669656420627920606861736860206d75737420686176652066696e69736865642069747320636f756e74646f776e20706572696f642e0061012d206068617368603a20546865206964656e74697479206f6620746865206f70656e2074697020666f722077686963682061207469702076616c7565206973206465636c617265642e205468697320697320666f726d65645d0120206173207468652068617368206f6620746865207475706c65206f6620746865206f726967696e616c207469702060726561736f6e6020616e64207468652062656e6566696369617279206163636f756e742049442e0034232320436f6d706c65786974795d012d203a20604f285429602077686572652060546020697320746865206e756d626572206f6620746970706572732e206465636f64696e6720605469707065726020766563206f66206c656e677468206054602e20605460590120206973206368617267656420617320757070657220626f756e6420676976656e2062792060436f6e7461696e734c656e677468426f756e64602e205468652061637475616c20636f737420646570656e6473206f6e94202074686520696d706c656d656e746174696f6e206f662060543a3a54697070657273602e24736c6173685f746970040110686173682c011c543a3a486173680005289452656d6f766520616e6420736c61736820616e20616c72656164792d6f70656e207469702e00a84d6179206f6e6c792062652063616c6c65642066726f6d2060543a3a52656a6563744f726967696e602e00f44173206120726573756c742c207468652066696e64657220697320736c617368656420616e6420746865206465706f7369747320617265206c6f73742e0084456d6974732060546970536c617368656460206966207375636365737366756c2e0034232320436f6d706c65786974791c2d204f2831292e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e31040c3c70616c6c65745f6d756c74697369671870616c6c65741043616c6c0404540001105061735f6d756c74695f7468726573686f6c645f310801446f746865725f7369676e61746f72696573350301445665633c543a3a4163636f756e7449643e00011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e0000305101496d6d6564696174656c792064697370617463682061206d756c74692d7369676e61747572652063616c6c207573696e6720612073696e676c6520617070726f76616c2066726f6d207468652063616c6c65722e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e003d012d20606f746865725f7369676e61746f72696573603a20546865206163636f756e747320286f74686572207468616e207468652073656e646572292077686f206172652070617274206f662074686501016d756c74692d7369676e61747572652c2062757420646f206e6f7420706172746963697061746520696e2074686520617070726f76616c2070726f636573732e882d206063616c6c603a205468652063616c6c20746f2062652065786563757465642e00b8526573756c74206973206571756976616c656e7420746f20746865206469737061746368656420726573756c742e0034232320436f6d706c657869747919014f285a202b204329207768657265205a20697320746865206c656e677468206f66207468652063616c6c20616e6420432069747320657865637574696f6e207765696768742e2061735f6d756c74691401247468726573686f6c64dc010c7531360001446f746865725f7369676e61746f72696573350301445665633c543a3a4163636f756e7449643e00013c6d617962655f74696d65706f696e74350401844f7074696f6e3c54696d65706f696e743c543a3a426c6f636b4e756d6265723e3e00011063616c6cb503017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e0001286d61785f77656967687424011857656967687400019c5501526567697374657220617070726f76616c20666f72206120646973706174636820746f206265206d6164652066726f6d20612064657465726d696e697374696320636f6d706f73697465206163636f756e74206966f8617070726f766564206279206120746f74616c206f6620607468726573686f6c64202d203160206f6620606f746865725f7369676e61746f72696573602e00b049662074686572652061726520656e6f7567682c207468656e206469737061746368207468652063616c6c2e002d015061796d656e743a20604465706f73697442617365602077696c6c20626520726573657276656420696620746869732069732074686520666972737420617070726f76616c2c20706c75733d01607468726573686f6c64602074696d657320604465706f736974466163746f72602e2049742069732072657475726e6564206f6e636520746869732064697370617463682068617070656e73206f723469732063616e63656c6c65642e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0055012d20607468726573686f6c64603a2054686520746f74616c206e756d626572206f6620617070726f76616c7320666f722074686973206469737061746368206265666f72652069742069732065786563757465642e41012d20606f746865725f7369676e61746f72696573603a20546865206163636f756e747320286f74686572207468616e207468652073656e646572292077686f2063616e20617070726f766520746869736c64697370617463682e204d6179206e6f7420626520656d7074792e59012d20606d617962655f74696d65706f696e74603a20496620746869732069732074686520666972737420617070726f76616c2c207468656e2074686973206d75737420626520604e6f6e65602e20496620697420697351016e6f742074686520666972737420617070726f76616c2c207468656e206974206d7573742062652060536f6d65602c2077697468207468652074696d65706f696e742028626c6f636b206e756d62657220616e64d47472616e73616374696f6e20696e64657829206f662074686520666972737420617070726f76616c207472616e73616374696f6e2e882d206063616c6c603a205468652063616c6c20746f2062652065786563757465642e001d014e4f54453a20556e6c6573732074686973206973207468652066696e616c20617070726f76616c2c20796f752077696c6c2067656e6572616c6c792077616e7420746f20757365190160617070726f76655f61735f6d756c74696020696e73746561642c2073696e6365206974206f6e6c7920726571756972657320612068617368206f66207468652063616c6c2e005901526573756c74206973206571756976616c656e7420746f20746865206469737061746368656420726573756c7420696620607468726573686f6c64602069732065786163746c79206031602e204f746865727769736555016f6e20737563636573732c20726573756c7420697320604f6b6020616e642074686520726573756c742066726f6d2074686520696e746572696f722063616c6c2c206966206974207761732065786563757465642cdc6d617920626520666f756e6420696e20746865206465706f736974656420604d756c7469736967457865637574656460206576656e742e0034232320436f6d706c6578697479502d20604f2853202b205a202b2043616c6c29602ecc2d20557020746f206f6e652062616c616e63652d72657365727665206f7220756e72657365727665206f7065726174696f6e2e3d012d204f6e6520706173737468726f756768206f7065726174696f6e2c206f6e6520696e736572742c20626f746820604f285329602077686572652060536020697320746865206e756d626572206f66450120207369676e61746f726965732e206053602069732063617070656420627920604d61785369676e61746f72696573602c207769746820776569676874206265696e672070726f706f7274696f6e616c2e21012d204f6e652063616c6c20656e636f6465202620686173682c20626f7468206f6620636f6d706c657869747920604f285a296020776865726520605a602069732074782d6c656e2ebc2d204f6e6520656e636f6465202620686173682c20626f7468206f6620636f6d706c657869747920604f285329602ed42d20557020746f206f6e652062696e6172792073656172636820616e6420696e736572742028604f286c6f6753202b20532960292ef82d20492f4f3a2031207265616420604f285329602c20757020746f2031206d757461746520604f285329602e20557020746f206f6e652072656d6f76652e302d204f6e65206576656e742e6c2d2054686520776569676874206f6620746865206063616c6c602e4d012d2053746f726167653a20696e7365727473206f6e65206974656d2c2076616c75652073697a6520626f756e64656420627920604d61785369676e61746f72696573602c20776974682061206465706f7369741901202074616b656e20666f7220697473206c69666574696d65206f6620604465706f73697442617365202b207468726573686f6c64202a204465706f736974466163746f72602e40617070726f76655f61735f6d756c74691401247468726573686f6c64dc010c7531360001446f746865725f7369676e61746f72696573350301445665633c543a3a4163636f756e7449643e00013c6d617962655f74696d65706f696e74350401844f7074696f6e3c54696d65706f696e743c543a3a426c6f636b4e756d6265723e3e00012463616c6c5f686173680401205b75383b2033325d0001286d61785f7765696768742401185765696768740002785501526567697374657220617070726f76616c20666f72206120646973706174636820746f206265206d6164652066726f6d20612064657465726d696e697374696320636f6d706f73697465206163636f756e74206966f8617070726f766564206279206120746f74616c206f6620607468726573686f6c64202d203160206f6620606f746865725f7369676e61746f72696573602e002d015061796d656e743a20604465706f73697442617365602077696c6c20626520726573657276656420696620746869732069732074686520666972737420617070726f76616c2c20706c75733d01607468726573686f6c64602074696d657320604465706f736974466163746f72602e2049742069732072657475726e6564206f6e636520746869732064697370617463682068617070656e73206f723469732063616e63656c6c65642e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0055012d20607468726573686f6c64603a2054686520746f74616c206e756d626572206f6620617070726f76616c7320666f722074686973206469737061746368206265666f72652069742069732065786563757465642e41012d20606f746865725f7369676e61746f72696573603a20546865206163636f756e747320286f74686572207468616e207468652073656e646572292077686f2063616e20617070726f766520746869736c64697370617463682e204d6179206e6f7420626520656d7074792e59012d20606d617962655f74696d65706f696e74603a20496620746869732069732074686520666972737420617070726f76616c2c207468656e2074686973206d75737420626520604e6f6e65602e20496620697420697351016e6f742074686520666972737420617070726f76616c2c207468656e206974206d7573742062652060536f6d65602c2077697468207468652074696d65706f696e742028626c6f636b206e756d62657220616e64d47472616e73616374696f6e20696e64657829206f662074686520666972737420617070726f76616c207472616e73616374696f6e2ecc2d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f2062652065786563757465642e0035014e4f54453a2049662074686973206973207468652066696e616c20617070726f76616c2c20796f752077696c6c2077616e7420746f20757365206061735f6d756c74696020696e73746561642e0034232320436f6d706c6578697479242d20604f285329602ecc2d20557020746f206f6e652062616c616e63652d72657365727665206f7220756e72657365727665206f7065726174696f6e2e3d012d204f6e6520706173737468726f756768206f7065726174696f6e2c206f6e6520696e736572742c20626f746820604f285329602077686572652060536020697320746865206e756d626572206f66450120207369676e61746f726965732e206053602069732063617070656420627920604d61785369676e61746f72696573602c207769746820776569676874206265696e672070726f706f7274696f6e616c2ebc2d204f6e6520656e636f6465202620686173682c20626f7468206f6620636f6d706c657869747920604f285329602ed42d20557020746f206f6e652062696e6172792073656172636820616e6420696e736572742028604f286c6f6753202b20532960292ef82d20492f4f3a2031207265616420604f285329602c20757020746f2031206d757461746520604f285329602e20557020746f206f6e652072656d6f76652e302d204f6e65206576656e742e4d012d2053746f726167653a20696e7365727473206f6e65206974656d2c2076616c75652073697a6520626f756e64656420627920604d61785369676e61746f72696573602c20776974682061206465706f7369741901202074616b656e20666f7220697473206c69666574696d65206f6620604465706f73697442617365202b207468726573686f6c64202a204465706f736974466163746f72602e3c63616e63656c5f61735f6d756c74691001247468726573686f6c64dc010c7531360001446f746865725f7369676e61746f72696573350301445665633c543a3a4163636f756e7449643e00012474696d65706f696e74f0016454696d65706f696e743c543a3a426c6f636b4e756d6265723e00012463616c6c5f686173680401205b75383b2033325d000354550143616e63656c2061207072652d6578697374696e672c206f6e2d676f696e67206d756c7469736967207472616e73616374696f6e2e20416e79206465706f7369742072657365727665642070726576696f75736c79c4666f722074686973206f7065726174696f6e2077696c6c20626520756e7265736572766564206f6e20737563636573732e00cc546865206469737061746368206f726967696e20666f7220746869732063616c6c206d757374206265205f5369676e65645f2e0055012d20607468726573686f6c64603a2054686520746f74616c206e756d626572206f6620617070726f76616c7320666f722074686973206469737061746368206265666f72652069742069732065786563757465642e41012d20606f746865725f7369676e61746f72696573603a20546865206163636f756e747320286f74686572207468616e207468652073656e646572292077686f2063616e20617070726f766520746869736c64697370617463682e204d6179206e6f7420626520656d7074792e5d012d206074696d65706f696e74603a205468652074696d65706f696e742028626c6f636b206e756d62657220616e64207472616e73616374696f6e20696e64657829206f662074686520666972737420617070726f76616c787472616e73616374696f6e20666f7220746869732064697370617463682ecc2d206063616c6c5f68617368603a205468652068617368206f66207468652063616c6c20746f2062652065786563757465642e0034232320436f6d706c6578697479242d20604f285329602ecc2d20557020746f206f6e652062616c616e63652d72657365727665206f7220756e72657365727665206f7065726174696f6e2e3d012d204f6e6520706173737468726f756768206f7065726174696f6e2c206f6e6520696e736572742c20626f746820604f285329602077686572652060536020697320746865206e756d626572206f66450120207369676e61746f726965732e206053602069732063617070656420627920604d61785369676e61746f72696573602c207769746820776569676874206265696e672070726f706f7274696f6e616c2ebc2d204f6e6520656e636f6465202620686173682c20626f7468206f6620636f6d706c657869747920604f285329602e302d204f6e65206576656e742e842d20492f4f3a2031207265616420604f285329602c206f6e652072656d6f76652e702d2053746f726167653a2072656d6f766573206f6e65206974656d2e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e350404184f7074696f6e04045401f00108104e6f6e6500000010536f6d650400f0000001000039040c1463747970651870616c6c65741043616c6c0404540001080c616464040114637479706530011c5665633c75383e00003009014372656174652061206e65772043547970652066726f6d2074686520676976656e20756e69717565204354797065206861736820616e64206173736f6369617465735069742077697468206974732063726561746f722e00dc412043547970652077697468207468652073616d652068617368206d757374206e6f742062652073746f726564206f6e20636861696e2e0054456d6974732060435479706543726561746564602e002823203c7765696768743e305765696768743a204f283129602d2052656164733a204374797065732c2042616c616e6365642d205772697465733a204374797065732c2042616c616e63652c23203c2f7765696768743e407365745f626c6f636b5f6e756d62657208012863747970655f686173682c01384374797065486173684f663c543e000130626c6f636b5f6e756d626572100144426c6f636b4e756d626572466f723c543e00010ce853657420746865206372656174696f6e20626c6f636b206e756d62657220666f72206120676976656e2043547970652c20696620666f756e642e0054456d6974732060435479706555706461746564602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e3d040c2c6174746573746174696f6e1870616c6c65741043616c6c0404540001180c6164640c0128636c61696d5f686173682c0138436c61696d486173684f663c543e00012863747970655f686173682c01384374797065486173684f663c543e000134617574686f72697a6174696f6e410401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e000054644372656174652061206e6577206174746573746174696f6e2e00f85468652061747465737465722063616e206f7074696f6e616c6c792070726f766964652061207265666572656e636520746f20616e206578697374696e67090164656c65676174696f6e20746861742077696c6c20626520736176656420616c6f6e67207769746820746865206174746573746174696f6e20697473656c6620696e8c74686520666f726d206f6620616e2061747465737465642064656c65676174696f6e2e00ec546865207265666572656e6365642043547970652068617368206d75737420616c72656164792062652070726573656e74206f6e20636861696e2e000901496620616e206f7074696f6e616c2064656c65676174696f6e2069642069732070726f76696465642c20746865206469737061746368206f726967696e206d757374e8626520746865206f776e6572206f66207468652064656c65676174696f6e2e204f74686572776973652c20697420636f756c6420626520616e79546044656c65676174696f6e456e746974794964602e006c456d69747320604174746573746174696f6e43726561746564602e002823203c7765696768743e305765696768743a204f283129b82d2052656164733a205b4f726967696e204163636f756e745d2c2043747970652c204174746573746174696f6e73e42d2052656164732069662064656c65676174696f6e2069642069732070726f76696465643a2044656c65676174696f6e732c20526f6f74732c5c202044656c6567617465644174746573746174696f6e73bc2d205772697465733a204174746573746174696f6e732c202844656c6567617465644174746573746174696f6e73292c23203c2f7765696768743e187265766f6b65080128636c61696d5f686173682c0138436c61696d486173684f663c543e000134617574686f72697a6174696f6e410401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e0001447c5265766f6b6520616e206578697374696e67206174746573746174696f6e2e00fc546865207265766f6b6572206d75737420626520656974686572207468652063726561746f72206f6620746865206174746573746174696f6e206265696e6709017265766f6b6564206f7220616e20656e74697479207468617420696e207468652064656c65676174696f6e207472656520697320616e20616e636573746f72206f6609017468652061747465737465722c20692e652e2c2069742077617320656974686572207468652064656c656761746f72206f6620746865206174746573746572206f7250616e20616e636573746f722074686572656f662e006c456d69747320604174746573746174696f6e5265766f6b6564602e002823203c7765696768743e0d015765696768743a204f285029207768657265205020697320746865206e756d626572206f6620737465707320726571756972656420746f2076657269667920746861740901746865206469737061746368204f726967696e20636f6e74726f6c73207468652064656c65676174696f6e20656e7469746c656420746f207265766f6b6520746865c86174746573746174696f6e2e20497420697320626f756e64656420627920606d61785f706172656e745f636865636b73602ee82d2052656164733a205b4f726967696e204163636f756e745d2c204174746573746174696f6e732c2064656c65676174696f6e3a3a526f6f7473d82d205265616473207065722064656c65676174696f6e207374657020503a2064656c65676174696f6e3a3a44656c65676174696f6e73b42d205772697465733a204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e732c23203c2f7765696768743e1872656d6f7665080128636c61696d5f686173682c0138436c61696d486173684f663c543e000134617574686f72697a6174696f6e410401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e0002445852656d6f766520616e206174746573746174696f6e2e00f8546865206f726967696e206d75737420626520656974686572207468652063726561746f72206f6620746865206174746573746174696f6e206f7220616e0d01656e7469747920776869636820697320616e20616e636573746f72206f662074686520617474657374657220696e207468652064656c65676174696f6e20747265652c0101692e652e2c2069742077617320656974686572207468652064656c656761746f72206f6620746865206174746573746572206f7220616e20616e636573746f722074686572656f662e006c456d69747320604174746573746174696f6e52656d6f766564602e002823203c7765696768743e0d015765696768743a204f285029207768657265205020697320746865206e756d626572206f6620737465707320726571756972656420746f2076657269667920746861740901746865206469737061746368204f726967696e20636f6e74726f6c73207468652064656c65676174696f6e20656e7469746c656420746f207265766f6b6520746865c86174746573746174696f6e2e20497420697320626f756e64656420627920606d61785f706172656e745f636865636b73602ee82d2052656164733a205b4f726967696e204163636f756e745d2c204174746573746174696f6e732c2064656c65676174696f6e3a3a526f6f7473d82d205265616473207065722064656c65676174696f6e207374657020503a2064656c65676174696f6e3a3a44656c65676174696f6e73b42d205772697465733a204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e732c23203c2f7765696768743e3c7265636c61696d5f6465706f736974040128636c61696d5f686173682c0138436c61696d486173684f663c543e000324d05265636c61696d20612073746f72616765206465706f7369742062792072656d6f76696e6720616e206174746573746174696f6e0064456d69747320604465706f7369745265636c61696d6564602e002823203c7765696768743e305765696768743a204f283129f82d2052656164733a205b4f726967696e204163636f756e745d2c204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e73b42d205772697465733a204174746573746174696f6e732c2044656c6567617465644174746573746174696f6e732c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e6572040128636c61696d5f686173682c0138436c61696d486173684f663c543e00041c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00ec546865207375626a656374206f66207468652063616c6c206d757374206265207468652061747465737465722077686f206973737565732074686509016174746573746174696f6e2e205468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f736974040128636c61696d5f686173682c0138436c61696d486173684f663c543e00050cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e410404184f7074696f6e0404540145040108104e6f6e6500000010536f6d6504004504000001000045040c3872756e74696d655f636f6d6d6f6e34617574686f72697a6174696f6e3c50616c6c6574417574686f72697a65043044656c65676174696f6e416301490401042844656c65676174696f6e04004904013044656c65676174696f6e41630000000049040c2864656c65676174696f6e386163636573735f636f6e74726f6c3044656c65676174696f6e4163040454014d040008013c7375626a6563745f6e6f64655f69642c015444656c65676174696f6e4e6f646549644f663c543e0001286d61785f636865636b731c010c75333200004d0408447370697269746e65745f72756e74696d651c52756e74696d650000000051040c2864656c65676174696f6e1870616c6c65741043616c6c04045400011c406372656174655f686965726172636879080130726f6f745f6e6f64655f69642c015444656c65676174696f6e4e6f646549644f663c543e00012863747970655f686173682c01384374797065486173684f663c543e00006401014372656174652061206e65772064656c65676174696f6e20726f6f74206173736f6369617465642077697468206120676976656e20435479706520686173682e00f8546865206e657720726f6f742077696c6c20616c6c6f772061206e65772074727573742068696572617263687920746f2062652063726561746564206279a0616464696e67206368696c6472656e2064656c65676174696f6e7320746f2074686520726f6f742e000d015468657265206d757374206265206e6f2064656c65676174696f6e2077697468207468652073616d652049442073746f726564206f6e20636861696e2c207768696c65fc7468657265206d75737420626520616c7265616479206120435479706520776974682074686520676976656e20686173682073746f72656420696e207468653443547970652070616c6c65742e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e000d015265717569726573207468652073656e646572206f6620746865207472616e73616374696f6e20746f206861766520612072657365727661626c652062616c616e6365886f66206174206c6561737420604465706f73697460206d616e7920746f6b656e732e0050456d6974732060526f6f7443726561746564602e002823203c7765696768743e305765696768743a204f283129a02d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c204354797065733c2d205772697465733a20526f6f74732c23203c2f7765696768743e386164645f64656c65676174696f6e14013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e000124706172656e745f69642c015444656c65676174696f6e4e6f646549644f663c543e00012064656c656761746500014044656c656761746f7249644f663c543e00012c7065726d697373696f6e730901012c5065726d697373696f6e7300014864656c65676174655f7369676e61747572655504016844656c65676174655369676e6174757265547970654f663c543e000180744372656174652061206e65772064656c65676174696f6e206e6f64652e00f4546865206e65772064656c65676174696f6e206e6f646520726570726573656e74732061206e65772074727573742068696572617263687920746861740d01636f6e73696465727320746865206e6577206e6f64652061732069747320726f6f742e20546865206f776e6572206f662074686973206e6f6465206861732066756c6ce0636f6e74726f6c206f76657220616e79206f66206974732064697265637420616e6420696e6469726563742064657363656e64616e74732e00fc466f7220746865206372656174696f6e20746f20737563636565642c207468652064656c656761746565206d7573742070726f7669646520612076616c696411017369676e6174757265206f766572207468652028626c616b65323536292068617368206f6620746865206372656174696f6e206f7065726174696f6e2064657461696c731101776869636820696e636c7564652028696e206f72646572292064656c65676174696f6e2069642c20726f6f74206e6f64652069642c20706172656e742069642c20616e64707065726d697373696f6e73206f6620746865206e6577206e6f64652e00f45468657265206d757374206265206e6f2064656c65676174696f6e2077697468207468652073616d652069642073746f726564206f6e20636861696e2e0501467572746865726d6f72652c20746865207265666572656e63656420726f6f7420616e6420706172656e74206e6f646573206d75737420616c7265616479206265050170726573656e74206f6e20636861696e20616e6420636f6e7461696e207468652076616c6964207065726d697373696f6e7320616e64207265766f636174696f6e6c7374617475732028692e652e2c206e6f74207265766f6b6564292e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e000d015265717569726573207468652073656e646572206f6620746865207472616e73616374696f6e20746f206861766520612072657365727661626c652062616c616e6365886f66206174206c6561737420604465706f73697460206d616e7920746f6b656e732e0068456d697473206044656c65676174696f6e43726561746564602e002823203c7765696768743e305765696768743a204f283129b42d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2044656c65676174696f6e73542d205772697465733a2044656c65676174696f6e732c23203c2f7765696768743e447265766f6b655f64656c65676174696f6e0c013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e0001446d61785f706172656e745f636865636b731c010c75333200013c6d61785f7265766f636174696f6e731c010c753332000274f85265766f6b6520612064656c65676174696f6e206e6f64652028706f74656e7469616c6c79206120726f6f74206e6f64652920616e6420616c6c20697473246368696c6472656e2e00fc446f6573206e6f7420726566756e64207468652064656c65676174696f6e206261636b20746f20746865206465706f736974206f776e657220617320746865f06e6f6465206973207374696c6c2073746f726564206f6e20636861696e2e20526571756972657320746f206164646974696f6e616c6c792063616c6cb46072656d6f76655f64656c65676174696f6e6020746f20756e7265736572766520746865206465706f7369742e0009015265766f6b696e6720612064656c65676174696f6e206e6f646520726573756c747320696e2074686520747275737420686965726172636879207374617274696e67090166726f6d2074686520676976656e206e6f6465206265696e67207265766f6b65642e204e657665727468656c6573732c207265766f636174696f6e20737461727473090166726f6d20746865206c65617665206e6f64657320757077617264732c20736f20696620746865206f7065726174696f6e20656e6473207072656d61747572656c791101626563617573652069742072756e73206f7574206f66206761732c207468652064656c65676174696f6e20737461746520776f756c6420626520636f6e73697374656e7401016173206e6f206368696c6420776f756c64202273757276697665222069747320706172656e742e204173206120636f6e73657175656e63652c206966207468650d01676976656e206e6f6465206973207265766f6b65642c2074686520747275737420686965726172636879207769746820746865206e6f646520617320726f6f7420697364746f20626520636f6e73696465726564207265766f6b65642e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e0078456d6974732043202a206044656c65676174696f6e5265766f6b6564602e002823203c7765696768743e01015765696768743a204f284329207768657265204320697320746865206e756d626572206f66206368696c6472656e206f66207468652064656c65676174696f6ea06e6f646520776869636820697320626f756e64656420627920606d61785f6368696c6472656e602e01012d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2043202a2044656c65676174696f6e732c2043202a204368696c6472656e2e802d205772697465733a20526f6f74732c2043202a2044656c65676174696f6e732c23203c2f7765696768743e4472656d6f76655f64656c65676174696f6e08013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e0001306d61785f72656d6f76616c731c010c753332000370f852656d6f766520612064656c65676174696f6e206e6f64652028706f74656e7469616c6c79206120726f6f74206e6f64652920616e6420616c6c20697473246368696c6472656e2e00f052657475726e73207468652064656c65676174696f6e206465706f73697420746f20746865206465706f736974206f776e657220666f722065616368a472656d6f7665642044656c65676174696f6e4e6f646520627920756e726573657276696e672069742e00090152656d6f76696e6720612064656c65676174696f6e206e6f646520726573756c747320696e2074686520747275737420686965726172636879207374617274696e67fc66726f6d2074686520676976656e206e6f6465206265696e672072656d6f7665642e204e657665727468656c6573732c2072656d6f76616c20737461727473090166726f6d20746865206c65617665206e6f64657320757077617264732c20736f20696620746865206f7065726174696f6e20656e6473207072656d61747572656c791101626563617573652069742072756e73206f7574206f66206761732c207468652064656c65676174696f6e20737461746520776f756c6420626520636f6e73697374656e7401016173206e6f206368696c6420776f756c64202273757276697665222069747320706172656e742e204173206120636f6e73657175656e63652c206966207468650d01676976656e206e6f64652069732072656d6f7665642c2074686520747275737420686965726172636879207769746820746865206e6f646520617320726f6f7420697364746f20626520636f6e736964657265642072656d6f7665642e0098546865206469737061746368206f726967696e206d7573742062652073706c697420696e746f0d012a2061207375626d6974746572206f66207479706520604163636f756e744964602077686f20697320726573706f6e7369626c6520666f7220706179696e67207468655420207472616e73616374696f6e2066656520616e6409012a206120444944207375626a656374206f662074797065206044656c65676174696f6e456e746974794964602077686f20637265617465732c206f776e7320616e6470202063616e207265766f6b65207468652064656c65676174696f6e2e0078456d6974732043202a206044656c65676174696f6e52656d6f766564602e002823203c7765696768743e01015765696768743a204f284329207768657265204320697320746865206e756d626572206f66206368696c6472656e206f66207468652064656c65676174696f6ea06e6f646520776869636820697320626f756e64656420627920606d61785f6368696c6472656e602e01012d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2043202a2044656c65676174696f6e732c2043202a204368696c6472656e2e902d205772697465733a20526f6f74732c2032202a2043202a2044656c65676174696f6e732c23203c2f7765696768743e3c7265636c61696d5f6465706f73697408013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e0001306d61785f72656d6f76616c731c010c753332000460f45265636c61696d20746865206465706f73697420666f7220612064656c65676174696f6e206e6f64652028706f74656e7469616c6c79206120726f6f74b86e6f6465292c2072656d6f76696e6720746865206e6f646520616e6420616c6c20697473206368696c6472656e2e00f052657475726e73207468652064656c65676174696f6e206465706f73697420746f20746865206465706f736974206f776e657220666f722065616368a472656d6f7665642044656c65676174696f6e4e6f646520627920756e726573657276696e672069742e00090152656d6f76696e6720612064656c65676174696f6e206e6f646520726573756c747320696e2074686520747275737420686965726172636879207374617274696e67fc66726f6d2074686520676976656e206e6f6465206265696e672072656d6f7665642e204e657665727468656c6573732c2072656d6f76616c20737461727473090166726f6d20746865206c65617665206e6f64657320757077617264732c20736f20696620746865206f7065726174696f6e20656e6473207072656d61747572656c791101626563617573652069742072756e73206f7574206f66206761732c207468652064656c65676174696f6e20737461746520776f756c6420626520636f6e73697374656e7401016173206e6f206368696c6420776f756c64202273757276697665222069747320706172656e742e204173206120636f6e73657175656e63652c206966207468650d01676976656e206e6f64652069732072656d6f7665642c2074686520747275737420686965726172636879207769746820746865206e6f646520617320726f6f7420697364746f20626520636f6e736964657265642072656d6f7665642e000d01546865206469737061746368206f726967696e206d757374206265207369676e6564206279207468652064656c65676174696f6e206465706f736974206f776e65722e004c604465706f7369745265636c61696d6564602e002823203c7765696768743e01015765696768743a204f284329207768657265204320697320746865206e756d626572206f66206368696c6472656e206f66207468652064656c65676174696f6ea06e6f646520776869636820697320626f756e64656420627920606d61785f72656d6f76616c73602e01012d2052656164733a205b4f726967696e204163636f756e745d2c20526f6f74732c2043202a2044656c65676174696f6e732c2043202a204368696c6472656e2e902d205772697465733a20526f6f74732c2032202a2043202a2044656c65676174696f6e732c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e657204013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e00051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e000501546865207375626a656374206f66207468652063616c6c206d75737420626520746865206f776e6572206f66207468652064656c65676174696f6e206e6f64652ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404013464656c65676174696f6e5f69642c015444656c65676174696f6e4e6f646549644f663c543e00060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e55040c0c6469642c6469645f64657461696c73304469645369676e617475726500010c1c45643235353139040059040148656432353531393a3a5369676e61747572650000001c53723235353139040061040148737232353531393a3a5369676e617475726500010014456364736104006504014065636473613a3a5369676e61747572650002000059040c1c73705f636f72651c65643235353139245369676e6174757265000004005d0401205b75383b2036345d00005d0400000340000000080061040c1c73705f636f72651c73723235353139245369676e6174757265000004005d0401205b75383b2036345d000065040c1c73705f636f7265146563647361245369676e617475726500000400690401205b75383b2036355d000069040000034100000008006d040c0c6469641870616c6c65741043616c6c04045400013c1863726561746508011c64657461696c7371040170426f783c4469644372656174696f6e44657461696c734f663c543e3e0001247369676e6174757265550401304469645369676e617475726500007cec53746f72652061206e657720444944206f6e20636861696e2c20616674657220766572696679696e67207468617420746865206372656174696f6e05016f7065726174696f6e20686173206265656e207369676e656420627920746865204b494c54206163636f756e74206173736f63696174656420776974682074686501016964656e746966696572206f662074686520444944206265696e67206372656174656420616e6420746861742061204449442077697468207468652073616d6511016964656e74696669657220686173206e6f742070726576696f75736c792065786973746564206f6e2028616e64207468656e2064656c657465642066726f6d292074686518636861696e2e000d015468657265206d757374206265206e6f2044494420696e666f726d6174696f6e2073746f726564206f6e20636861696e20756e646572207468652073616d65204449442c6964656e7469666965722e00fc546865206e6577206b65797320616464656420776974682074686973206f7065726174696f6e206172652073746f72656420756e646572207468652044494405016964656e74696669657220616c6f6e6720776974682074686520626c6f636b206e756d62657220696e20776869636820746865206f7065726174696f6e207761732465786563757465642e000101546865206469737061746368206f726967696e2063616e20626520616e79204b494c54206163636f756e74207769746820656e6f7567682066756e647320746f0d0165786563757465207468652065787472696e73696320616e6420697420646f6573206e6f74206861766520746f206265207469656420696e20616e792077617920746fb4746865204b494c54206163636f756e74206964656e74696679696e672074686520444944207375626a6563742e004c456d697473206044696443726561746564602e002823203c7765696768743e0d012d20546865207472616e73616374696f6e277320636f6d706c6578697479206973206d61696e6c7920646570656e64656e74206f6e20746865206e756d626572206f66010120206e6577206b65792061677265656d656e74206b65797320616e6420746865206e756d626572206f66206e6577207365727669636520656e64706f696e7473702020696e636c7564656420696e20746865206f7065726174696f6e2e242d2d2d2d2d2d2d2d2df85765696768743a204f284b29202b204f284e29207768657265204b20697320746865206e756d626572206f66206e6577206b65792061677265656d656e7409016b65797320626f756e64656420627920604d61784e65774b657941677265656d656e744b657973602c207768696c65204e20697320746865206e756d626572206f66f46e6577207365727669636520656e64706f696e747320626f756e64656420627920604d61784e756d6265724f665365727669636573506572446964602eb02d2052656164733a205b4f726967696e204163636f756e745d2c204469642c20446964426c61636b6c697374fc2d205772697465733a20446964202877697468204b206e6577206b65792061677265656d656e74206b657973292c2053657276696365456e64706f696e7473cc20202877697468204e206e6577207365727669636520656e64706f696e7473292c20446964456e64706f696e7473436f756e742c23203c2f7765696768743e587365745f61757468656e7469636174696f6e5f6b657904011c6e65775f6b6579ad040148446964566572696669636174696f6e4b65790001408855706461746520746865204449442061757468656e7469636174696f6e206b65792e00ec546865206f6c64206b65792069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b65797320696620697420697309016e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e20546865206e6577206b657920697320616464656420746f207468654c736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e487365745f64656c65676174696f6e5f6b657904011c6e65775f6b6579ad040148446964566572696669636174696f6e4b657900024094536574206f722075706461746520746865204449442064656c65676174696f6e206b65792e000d01496620616e206f6c64206b657920657869737465642c2069742069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b65797320696611016974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e20546865206e6577206b657920697320616464656420746f5c74686520736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e5472656d6f76655f64656c65676174696f6e5f6b657900033c7852656d6f766520746865204449442064656c65676174696f6e206b65792e00d4546865206f6c64206b65792069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b657973206966b06974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e4c7365745f6174746573746174696f6e5f6b657904011c6e65775f6b6579ad040148446964566572696669636174696f6e4b657900044098536574206f72207570646174652074686520444944206174746573746174696f6e206b65792e000d01496620616e206f6c64206b657920657869737465642c2069742069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b65797320696611016974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e20546865206e6577206b657920697320616464656420746f5c74686520736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e5872656d6f76655f6174746573746174696f6e5f6b657900053c7c52656d6f76652074686520444944206174746573746174696f6e206b65792e00d4546865206f6c64206b65792069732064656c657465642066726f6d2074686520736574206f66207075626c6963206b657973206966b06974206973206e6f74207573656420696e20616e79206f746865722070617274206f6620746865204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e546164645f6b65795f61677265656d656e745f6b657904011c6e65775f6b65799d040140446964456e6372797074696f6e4b6579000638b841646420612073696e676c65206e6577206b65792061677265656d656e74206b657920746f20746865204449442e00bc546865206e6577206b657920697320616464656420746f2074686520736574206f66207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e6072656d6f76655f6b65795f61677265656d656e745f6b65790401186b65795f69642c01284b657949644f663c543e000734050152656d6f7665206120444944206b65792061677265656d656e74206b65792066726f6d20626f74682069747320736574206f66206b65792061677265656d656e74906b65797320616e642061732077656c6c20617320697473207075626c6963206b6579732e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e506164645f736572766963655f656e64706f696e74040140736572766963655f656e64706f696e7479040138446964456e64706f696e743c543e000830bc4164642061206e6577207365727669636520656e64706f696e7420756e6465722074686520676976656e204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f2831290d012d2052656164733a205b4f726967696e204163636f756e745d2c204469642c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e74c82d205772697465733a204469642c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e742c23203c2f7765696768743e5c72656d6f76655f736572766963655f656e64706f696e74040128736572766963655f69647d04015053657276696365456e64706f696e7449643c543e000930d452656d6f76652074686520736572766963652077697468207468652070726f76696465642049442066726f6d20746865204449442e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696455706461746564602e002823203c7765696768743e305765696768743a204f283129f82d2052656164733a205b4f726967696e204163636f756e745d2c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e74c82d205772697465733a204469642c2053657276696365456e64706f696e74732c20446964456e64706f696e7473436f756e742c23203c2f7765696768743e1864656c65746504014c656e64706f696e74735f746f5f72656d6f76651c010c753332000a600d0144656c6574652061204449442066726f6d2074686520636861696e20616e6420616c6c20696e666f726d6174696f6e206173736f63696174656420776974682069742c1101616674657220766572696679696e672074686174207468652064656c657465206f7065726174696f6e20686173206265656e207369676e65642062792074686520444944fc7375626a656374207573696e67207468652061757468656e7469636174696f6e206b65792063757272656e746c792073746f726564206f6e20636861696e2e000501546865207265666572656e63656420444944206964656e746966696572206d7573742062652070726573656e74206f6e20636861696e206265666f7265207468657864656c657465206f7065726174696f6e206973206576616c75617465642e00f441667465722069742069732064656c657465642c2061204449442077697468207468652073616d65206964656e7469666965722063616e6e6f742062655872652d63726561746564206576657220616761696e2e00010141732074686520726573756c74206f66207468652064656c6574696f6e2c20616c6c20747261636573206f662074686520444944206172652072656d6f766564e866726f6d207468652073746f726167652c20776869636820726573756c747320696e2074686520696e76616c69646174696f6e206f6620616c6c9c6174746573746174696f6e73206973737565642062792074686520444944207375626a6563742e00e0546865206469737061746368206f726967696e206d757374206265206120444944206f726967696e2070726f78696564207669612074686570607375626d69745f6469645f63616c6c602065787472696e7369632e004c456d697473206044696444656c65746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964cc2d204b696c6c733a2044696420656e747279206173736f63696174656420746f2074686520444944206964656e7469666965722c23203c2f7765696768743e3c7265636c61696d5f6465706f73697408012c6469645f7375626a6563740001484469644964656e7469666965724f663c543e00014c656e64706f696e74735f746f5f72656d6f76651c010c753332000b54f45265636c61696d2061206465706f73697420666f722061204449442e20546869732077696c6c2064656c657465207468652044494420616e6420616c6c0901696e666f726d6174696f6e206173736f63696174656420776974682069742c20616674657220766572696679696e672074686174207468652063616c6c657220697364746865206f776e6572206f6620746865206465706f7369742e000501546865207265666572656e63656420444944206964656e746966696572206d7573742062652070726573656e74206f6e20636861696e206265666f7265207468657864656c657465206f7065726174696f6e206973206576616c75617465642e00f441667465722069742069732064656c657465642c2061204449442077697468207468652073616d65206964656e7469666965722063616e6e6f742062655872652d63726561746564206576657220616761696e2e00010141732074686520726573756c74206f66207468652064656c6574696f6e2c20616c6c20747261636573206f662074686520444944206172652072656d6f766564e866726f6d207468652073746f726167652c20776869636820726573756c747320696e2074686520696e76616c69646174696f6e206f6620616c6c9c6174746573746174696f6e73206973737565642062792074686520444944207375626a6563742e004c456d697473206044696444656c65746564602e002823203c7765696768743e305765696768743a204f283129782d2052656164733a205b4f726967696e204163636f756e745d2c20446964cc2d204b696c6c733a2044696420656e747279206173736f63696174656420746f2074686520444944206964656e7469666965722c23203c2f7765696768743e3c7375626d69745f6469645f63616c6c0801206469645f63616c6cc1040190426f783c446964417574686f72697a656443616c6c4f7065726174696f6e4f663c543e3e0001247369676e6174757265550401304469645369676e6174757265000c8cec50726f7879206120646973706174636861626c652063616c6c206f6620616e6f746865722072756e74696d652065787472696e736963207468617458737570706f727473206120444944206f726967696e2e000501546865207265666572656e63656420444944206964656e746966696572206d7573742062652070726573656e74206f6e20636861696e206265666f726520746865606f7065726174696f6e20697320646973706174636865642e00fc412063616c6c207375626d6974746564207468726f75676820746869732065787472696e736963206d757374206265207369676e65642077697468207468650901726967687420444944206b65792c20646570656e64696e67206f6e207468652063616c6c2e205468697320696e666f726d6174696f6e2069732070726f766964656409016279207468652060446964417574686f72697a656443616c6c4f7065726174696f6e6020706172616d657465722c20776869636820737065636966696573207468650901444944207375626a65637420616374696e6720617320746865206f726967696e206f66207468652063616c6c2c2074686520444944277320747820636f756e7465720101286e6f6e6365292c2074686520646973706174636861626c6520746f2063616c6c20696e2063617365207369676e617475726520766572696669636174696f6ef073756363656564732c207468652074797065206f6620444944206b657920746f2075736520746f2076657269667920746865206f7065726174696f6efc7369676e61747572652c20616e642074686520626c6f636b206e756d62657220746865206f7065726174696f6e2077617320746172676574696e6720666f72a8696e636c7573696f6e2c207768656e20697420776173206372656174656420616e64207369676e65642e00fc496e206361736520746865207369676e617475726520697320696e636f72726563742c20746865206e6f6e6365206973206e6f742076616c69642c20746865fc7265717569726564206b6579206973206e6f742070726573656e7420666f722074686520737065636966696564204449442c206f722074686520626c6f636bfc73706563696669656420697320746f6f206f6c642074686520766572696669636174696f6e206661696c7320616e64207468652063616c6c206973206e6f74f4646973706174636865642e204f74686572776973652c207468652063616c6c2069732070726f7065726c79206469737061746368656420776974682061b8604469644f726967696e60206f726967696e20696e6469636174696e672074686520444944207375626a6563742e00110141207375636365737366756c206469737061746368206f7065726174696f6e20726573756c747320696e2074686520747820636f756e746572206173736f6369617465640501776974682074686520676976656e2044494420746f20626520696e6372656d656e7465642c20746f206d69746967617465207265706c61792061747461636b732e000101546865206469737061746368206f726967696e2063616e20626520616e79204b494c54206163636f756e74207769746820656e6f7567682066756e647320746f0d0165786563757465207468652065787472696e73696320616e6420697420646f6573206e6f74206861766520746f206265207469656420696e20616e792077617920746fb4746865204b494c54206163636f756e74206964656e74696679696e672074686520444944207375626a6563742e0068456d697473206044696443616c6c44697370617463686564602e002823203c7765696768743eb05765696768743a204f283129202b20776569676874206f662074686520646973706174636865642063616c6c782d2052656164733a205b4f726967696e204163636f756e745d2c20446964342d205772697465733a204469642c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e6572000d1c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00b8546865207375626a656374206f66207468652063616c6c206d7573742062652074686520646964206f776e65722ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404010c6469640001484469644964656e7469666965724f663c543e000e0cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e71040c0c6469642c6469645f64657461696c73484469644372656174696f6e44657461696c7310344469644964656e7469666965720100244163636f756e7449640100584d61784e65774b657941677265656d656e744b6579730175042c446964456e64706f696e740179040018010c6469640001344469644964656e7469666965720001247375626d69747465720001244163636f756e7449640001586e65775f6b65795f61677265656d656e745f6b657973990401c04469644e65774b657941677265656d656e744b65795365743c4d61784e65774b657941677265656d656e744b6579733e00014c6e65775f6174746573746174696f6e5f6b6579a90401684f7074696f6e3c446964566572696669636174696f6e4b65793e0001486e65775f64656c65676174696f6e5f6b6579a90401684f7074696f6e3c446964566572696669636174696f6e4b65793e00014c6e65775f736572766963655f64657461696c73bd0401405665633c446964456e64706f696e743e00007504103872756e74696d655f636f6d6d6f6e24636f6e7374616e74730c646964584d61784e65774b657941677265656d656e744b6579730000000079040c0c64696444736572766963655f656e64706f696e74732c446964456e64706f696e7404045400000c010869647d04015053657276696365456e64706f696e7449643c543e000134736572766963655f74797065738104017453657276696365456e64706f696e7454797065456e74726965733c543e00011075726c738d04017053657276696365456e64706f696e7455726c456e74726965733c543e00007d040c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e000081040c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454018504045300000400890401185665633c543e000085040c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e000089040000028504008d040c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454019104045300000400950401185665633c543e000091040c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000950400000291040099040c4c626f756e6465645f636f6c6c656374696f6e7344626f756e6465645f62747265655f7365743c426f756e6465644254726565536574080454019d04045300000400a104012c42547265655365743c543e00009d040c0c6469642c6469645f64657461696c7340446964456e6372797074696f6e4b65790001041858323535313904000401205b75383b2033325d00000000a10404204254726565536574040454019d04000400a504000000a5040000029d0400a90404184f7074696f6e04045401ad040108104e6f6e6500000010536f6d650400ad040000010000ad040c0c6469642c6469645f64657461696c7348446964566572696669636174696f6e4b657900010c1c456432353531390400b104013c656432353531393a3a5075626c69630000001c5372323535313904002903013c737232353531393a3a5075626c69630001001445636473610400b504013465636473613a3a5075626c696300020000b1040c1c73705f636f72651c65643235353139185075626c6963000004000401205b75383b2033325d0000b5040c1c73705f636f7265146563647361185075626c696300000400b90401205b75383b2033335d0000b904000003210000000800bd04000002790400c1040c0c6469642c6469645f64657461696c7368446964417574686f72697a656443616c6c4f7065726174696f6e14344469644964656e74696669657201002c44696443616c6c61626c6501b5032c426c6f636b4e756d6265720110244163636f756e7449640100245478436f756e74657201100014010c6469640001344469644964656e74696669657200012874785f636f756e7465721001245478436f756e74657200011063616c6cb503012c44696443616c6c61626c65000130626c6f636b5f6e756d62657210012c426c6f636b4e756d6265720001247375626d69747465720001244163636f756e7449640000c5040c4470616c6c65745f6469645f6c6f6f6b75701870616c6c65741043616c6c04045400011c446173736f63696174655f6163636f756e7408010c726571c904015c4173736f63696174654163636f756e745265717565737400012865787069726174696f6e1001a03c54206173206672616d655f73797374656d3a3a436f6e6669673e3a3a426c6f636b4e756d62657200004405014173736f63696174652074686520676976656e206163636f756e7420746f2074686520444944207468617420617574686f72697a656420746869732063616c6c2e000501546865206163636f756e742068617320746f207369676e207468652044494420616e64206120626c6f636b6e756d62657220616674657220776869636820746865e07369676e6174757265206578706972657320696e206f7264657220746f20617574686f72697a6520746865206173736f63696174696f6e2e001101546865207369676e61747572652077696c6c20626520636865636b656420616761696e737420746865207363616c6520656e636f646564207475706c65206f66207468650d016d6574686f64207370656369666963206964206f662074686520646964206964656e74696669657220616e642074686520626c6f636b206e756d626572206166746572bc776869636820746865207369676e61747572652073686f756c6420626520726567617264656420696e76616c69642e001101456d69747320604173736f63696174696f6e45737461626c69736865646020616e642c206f7074696f6e616c6c792c20604173736f63696174696f6e52656d6f76656460d069662074686572652077617320612070726576696f7573206173736f63696174696f6e20666f7220746865206163636f756e742e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e406173736f63696174655f73656e64657200012c01014173736f6369617465207468652073656e646572206f66207468652063616c6c20746f2074686520444944207468617420617574686f72697a656420746869731463616c6c2e001101456d69747320604173736f63696174696f6e45737461626c69736865646020616e642c206f7074696f6e616c6c792c20604173736f63696174696f6e52656d6f76656460d069662074686572652077617320612070726576696f7573206173736f63696174696f6e20666f7220746865206163636f756e742e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e6472656d6f76655f73656e6465725f6173736f63696174696f6e000228fc52656d6f766520746865206173736f63696174696f6e206f66207468652073656e646572206163636f756e742e20546869732063616c6c20646f65736e27740d01726571756972652074686520617574686f72697a6174696f6e206f6620746865204449442c206275742072657175697265732061207369676e6564206f726967696e2e006c456d69747320604173736f63696174696f6e52656d6f766564602e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e6872656d6f76655f6163636f756e745f6173736f63696174696f6e04011c6163636f756e74150101444c696e6b61626c654163636f756e74496400032c110152656d6f766520746865206173736f63696174696f6e206f66207468652070726f7669646564206163636f756e742049442e20546869732063616c6c20646f65736e27740d01726571756972652074686520617574686f72697a6174696f6e206f6620746865206163636f756e742049442c2062757420746865206173736f63696174656420444944c46e6565647320746f206d617463682074686520444944207468617420617574686f72697a656420746869732063616c6c2e006c456d69747320604173736f63696174696f6e52656d6f766564602e002823203c7765696768743e305765696768743a204f283129f42d2052656164733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e7473202b20444944204f726967696e20436865636bac2d205772697465733a20436f6e6e656374656444696473202b20436f6e6e65637465644163636f756e74732c23203c2f7765696768743e3c7265636c61696d5f6465706f73697404011c6163636f756e74150101444c696e6b61626c654163636f756e74496400042c090152656d6f766520746865206173736f63696174696f6e206f66207468652070726f7669646564206163636f756e742e20546869732063616c6c2063616e206f6e6c79f862652063616c6c65642066726f6d20746865206465706f736974206f776e65722e20546865207265736572766564206465706f7369742077696c6c2062651866726565642e006c456d69747320604173736f63696174696f6e52656d6f766564602e002823203c7765696768743e305765696768743a204f283129582d2052656164733a20436f6e6e6563746564446964735c2d205772697465733a20436f6e6e6563746564446964732c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e657204011c6163636f756e74150101444c696e6b61626c654163636f756e74496400051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00d8546865207375626a656374206f66207468652063616c6c206d757374206265206c696e6b656420746f20746865206163636f756e742ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404011c6163636f756e74150101444c696e6b61626c654163636f756e74496400060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ec9040c4470616c6c65745f6469645f6c6f6f6b7570646173736f63696174655f6163636f756e745f726571756573745c4173736f63696174654163636f756e745265717565737400010820506f6c6b61646f74080000012c4163636f756e74496433320000cd0401384d756c74695369676e617475726500000020457468657265756d08001901012c4163636f756e74496432300000d1040144457468657265756d5369676e617475726500010000cd04082873705f72756e74696d65384d756c74695369676e617475726500010c1c45643235353139040059040148656432353531393a3a5369676e61747572650000001c53723235353139040061040148737232353531393a3a5369676e617475726500010014456364736104006504014065636473613a3a5369676e617475726500020000d1040c4470616c6c65745f6469645f6c6f6f6b75701c6163636f756e7444457468657265756d5369676e6174757265000004006504014065636473613a3a5369676e61747572650000d5040c4470616c6c65745f776562335f6e616d65731870616c6c65741043616c6c04045400011c14636c61696d0401106e616d6529010140576562334e616d65496e7075743c543e00003ce841737369676e2074686520737065636966696564206e616d6520746f20746865206f776e65722061732073706563696669656420696e207468651c6f726967696e2e000d01546865206e616d65206d757374206e6f74206861766520616c7265616479206265656e20636c61696d656420627920736f6d656f6e6520656c736520616e6420746865a06f776e6572206d757374206e6f7420616c7265616479206f776e20616e6f74686572206e616d652e00dc456d6974732060576562334e616d65436c61696d65646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f28312909012d2052656164733a204e616d65732c204f776e65722c2042616e6e65642073746f7261676520656e7472696573202b20617661696c61626c652063757272656e6379582020636865636b202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722073746f7261676520656e7472696573202b2063757272656e6379206465706f73697420726573657276652c23203c2f7765696768743e4072656c656173655f62795f6f776e6572000130a452656c65617365207468652070726f7669646564206e616d652066726f6d20697473206f776e65722e00cc546865206f726967696e206d75737420626520746865206f776e6572206f662074686520737065636966696564206e616d652e00e0456d6974732060576562334e616d6552656c65617365646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129ac2d2052656164733a204e616d65732073746f7261676520656e747279202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722073746f7261676520656e7472696573202b2063757272656e6379206465706f7369742072656c656173652c23203c2f7765696768743e3c7265636c61696d5f6465706f7369740401106e616d6529010140576562334e616d65496e7075743c543e000230a452656c65617365207468652070726f7669646564206e616d652066726f6d20697473206f776e65722e000101546865206f726967696e206d75737420626520746865206163636f756e742074686174207061696420666f7220746865206e616d652773206465706f7369742e00e0456d6974732060576562334e616d6552656c65617365646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129ac2d2052656164733a204f776e65722073746f7261676520656e747279202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722073746f7261676520656e7472696573202b2063757272656e6379206465706f7369742072656c656173652c23203c2f7765696768743e0c62616e0401106e616d6529010140576562334e616d65496e7075743c543e0003402c42616e2061206e616d652e00f4412062616e6e6564206e616d652063616e6e6f7420626520636c61696d656420627920616e796f6e652e20546865206e616d652773206465706f7369748869732072657475726e656420746f20746865206f726967696e616c2070617965722e0088546865206f726967696e206d757374206265207468652062616e206f726967696e2e00d8456d6974732060576562334e616d6542616e6e65646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129f02d2052656164733a2042616e6e65642c204f776e65722c204e616d65732073746f7261676520656e7472696573202b206f726967696e20636865636b05012d205772697465733a204e616d65732c204f776e65722c2042616e6e65642073746f7261676520656e7472696573202b2063757272656e6379206465706f73697424202072656c656173652c23203c2f7765696768743e14756e62616e0401106e616d6529010140576562334e616d65496e7075743c543e00043834556e62616e2061206e616d652e00704d616b652061206e616d6520636c61696d61626c6520616761696e2e0088546865206f726967696e206d757374206265207468652062616e206f726967696e2e00e0456d6974732060576562334e616d65556e62616e6e65646020696620746865206f7065726174696f6e2069732063617272696564206f7574347375636365737366756c6c792e002823203c7765696768743e305765696768743a204f283129b02d2052656164733a2042616e6e65642073746f7261676520656e747279202b206f726967696e20636865636bb82d205772697465733a2042616e6e65642073746f7261676520656e747279206465706f7369742072656c656173652c23203c2f7765696768743e506368616e67655f6465706f7369745f6f776e657200051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00e8546865207375626a656374206f66207468652063616c6c206d75737420626520746865206f776e6572206f662074686520776562336e616d652ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f7369740401286e616d655f696e70757429010140576562334e616d65496e7075743c543e00060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632ed9040c487075626c69635f63726564656e7469616c731870616c6c65741043616c6c04045400011c0c61646404012863726564656e7469616cdd040164426f783c496e70757443726564656e7469616c4f663c543e3e000018a852656769737465722061206e6577207075626c69632063726564656e7469616c206f6e20636861696e2e001101546869732066756e6374696f6e206661696c7320696620612063726564656e7469616c2077697468207468652073616d65206964656e74696669657220616c72656164798465786973747320666f722074686520737065636966696564207375626a6563742e0064456d697473206043726564656e7469616c53746f726564602e187265766f6b6508013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000134617574686f72697a6174696f6e410401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e000120705265766f6b65732061207075626c69632063726564656e7469616c2e001101496620612063726564656e7469616c2077617320616c7265616479207265766f6b65642c20746869732066756e6374696f6e20646f6573206e6f74206661696c206275746473696d706c7920726573756c747320696e2061206e6f6f702e000101546865206469737061746368206f726967696e206d75737420626520617574686f72697a656420746f207265766f6b65207468652063726564656e7469616c2e0068456d697473206043726564656e7469616c5265766f6b6564602e20756e7265766f6b6508013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000134617574686f72697a6174696f6e410401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e00022478556e7265766f6b65732061207075626c69632063726564656e7469616c2e000101496620612063726564656e7469616c20776173206e6f74207265766f6b65642c20746869732066756e6374696f6e20646f6573206e6f74206661696c206275746473696d706c7920726573756c747320696e2061206e6f6f702e00d8546865206469737061746368206f726967696e206d75737420626520617574686f72697a656420746f20756e7265766f6b65207468652c63726564656e7469616c2e0070456d697473206043726564656e7469616c556e7265766f6b6564602e1872656d6f766508013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000134617574686f72697a6174696f6e410401604f7074696f6e3c543a3a416363657373436f6e74726f6c3e000344fc52656d6f7665732074686520696e666f726d6174696f6e207065727461696e696e672061207075626c69632063726564656e7469616c2066726f6d2074686518636861696e2e0009015468652072656d6f76616c206f66207468652063726564656e7469616c20646f6573206e6f742064656c65746520697420656e746972656c792066726f6d207468650501626c6f636b636861696e20686973746f72792c20627574206f6e6c7920697473206c696e6b202a66726f6d2a2074686520626c6f636b636861696e2073746174659c2a746f2a2074686520626c6f636b636861696e20686973746f72792069732072656d6f7665642e00cc436c69656e74732070617273696e67207075626c69632063726564656e7469616c732073686f756c6420696e746572707265740101746865206c61636b206f6620737563682061206c696e6b2061732074686520666163742074686174207468652063726564656e7469616c20686173206265656eb872656d6f7665642062792069747320617474657374657220736f6d652074696d6520696e2074686520706173742e001101546869732066756e6374696f6e206661696c7320696620612063726564656e7469616c20616c72656164792065786973747320666f722074686520737065636966696564207375626a6563742e000101546865206469737061746368206f726967696e206d75737420626520617574686f72697a656420746f2072656d6f7665207468652063726564656e7469616c2e0068456d697473206043726564656e7469616c52656d6f766564602e3c7265636c61696d5f6465706f73697404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e000448fc52656d6f7665732074686520696e666f726d6174696f6e207065727461696e696e672061207075626c69632063726564656e7469616c2066726f6d20746865ac636861696e20616e642072657475726e7320746865206465706f73697420746f206974732070617965722e0009015468652072656d6f76616c206f66207468652063726564656e7469616c20646f6573206e6f742064656c65746520697420656e746972656c792066726f6d207468650501626c6f636b636861696e20686973746f72792c20627574206f6e6c7920697473206c696e6b202a66726f6d2a2074686520626c6f636b636861696e2073746174659c2a746f2a2074686520626c6f636b636861696e20686973746f72792069732072656d6f7665642e00cc436c69656e74732070617273696e67207075626c69632063726564656e7469616c732073686f756c6420696e746572707265740101746865206c61636b206f6620737563682061206c696e6b2061732074686520666163742074686174207468652063726564656e7469616c20686173206265656eb872656d6f7665642062792069747320617474657374657220736f6d652074696d6520696e2074686520706173742e001101546869732066756e6374696f6e206661696c7320696620612063726564656e7469616c20616c72656164792065786973747320666f722074686520737065636966696564207375626a6563742e000d01546865206469737061746368206f726967696e206d75737420626520746865206f776e6572206f6620746865206465706f7369742c2068656e6365206e6f74207468655863726564656e7469616c27732061747465737465722e0068456d697473206043726564656e7469616c52656d6f766564602e506368616e67655f6465706f7369745f6f776e657204013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e00051c684368616e67657320746865206465706f736974206f776e65722e0005015468652062616c616e63652074686174206973207265736572766564206279207468652063757272656e74206465706f736974206f776e65722077696c6c206265f4667265656420616e642062616c616e6365206f6620746865206e6577206465706f736974206f776e65722077696c6c206765742072657365727665642e00f0546865207375626a656374206f66207468652063616c6c206d75737420626520746865206f776e6572206f66207468652063726564656e7469616c2ed45468652073656e646572206f66207468652063616c6c2077696c6c20626520746865206e6577206465706f736974206f776e65722e387570646174655f6465706f73697404013463726564656e7469616c5f69642c014443726564656e7469616c49644f663c543e00060cdc5570646174657320746865206465706f73697420616d6f756e7420746f207468652063757272656e74206465706f73697420726174652e00945468652073656e646572206d75737420626520746865206465706f736974206f776e65722e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632edd040c487075626c69635f63726564656e7469616c732c63726564656e7469616c732843726564656e7469616c1024437479706548617368012c445375626a6563744964656e74696669657201e10418436c61696d7301e50434416363657373436f6e74726f6c0145040010012863747970655f686173682c012443747970654861736800011c7375626a656374e10401445375626a6563744964656e746966696572000118636c61696d73e5040118436c61696d73000134617574686f72697a6174696f6e410401544f7074696f6e3c416363657373436f6e74726f6c3e0000e1040c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000e5040c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e0000e9040c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d1870616c6c65741043616c6c0404540001104c7365745f76616c69646174696f6e5f6461746104011064617461ed04015450617261636861696e496e686572656e744461746100002480536574207468652063757272656e742076616c69646174696f6e20646174612e004101546869732073686f756c6420626520696e766f6b65642065786163746c79206f6e63652070657220626c6f636b2e2049742077696c6c2070616e6963206174207468652066696e616c697a6174696f6e887068617365206966207468652063616c6c20776173206e6f7420696e766f6b65642e00d0546865206469737061746368206f726967696e20666f7220746869732063616c6c206d7573742062652060496e686572656e7460002101417320612073696465206566666563742c20746869732066756e6374696f6e207570677261646573207468652063757272656e742076616c69646174696f6e2066756e6374696f6e8469662074686520617070726f7072696174652074696d652068617320636f6d652e607375646f5f73656e645f7570776172645f6d65737361676504011c6d6573736167653001345570776172644d65737361676500010044617574686f72697a655f75706772616465080124636f64655f686173682c011c543a3a48617368000134636865636b5f76657273696f6ea80110626f6f6c0002206101417574686f72697a6520616e207570677261646520746f206120676976656e2060636f64655f686173686020666f72207468652072756e74696d652e205468652072756e74696d652063616e20626520737570706c696564186c617465722e005d015468652060636865636b5f76657273696f6e6020706172616d657465722073657473206120626f6f6c65616e20666c616720666f722077686574686572206f72206e6f74207468652072756e74696d6527732073706563610176657273696f6e20616e64206e616d652073686f756c64206265207665726966696564206f6e20757067726164652e2053696e63652074686520617574686f72697a6174696f6e206f6e6c7920686173206120686173682cb069742063616e6e6f742061637475616c6c7920706572666f726d2074686520766572696669636174696f6e2e007c546869732063616c6c20726571756972657320526f6f74206f726967696e2e60656e6163745f617574686f72697a65645f75706772616465040110636f646530011c5665633c75383e000324550150726f766964652074686520707265696d616765202872756e74696d652062696e617279292060636f64656020666f7220616e2075706772616465207468617420686173206265656e20617574686f72697a65642e00490149662074686520617574686f72697a6174696f6e20726571756972656420612076657273696f6e20636865636b2c20746869732063616c6c2077696c6c20656e73757265207468652073706563206e616d65e872656d61696e7320756e6368616e67656420616e6420746861742074686520737065632076657273696f6e2068617320696e637265617365642e005d014e6f7465207468617420746869732066756e6374696f6e2077696c6c206e6f74206170706c7920746865206e65772060636f6465602c20627574206f6e6c7920617474656d707420746f207363686564756c652074686574757067726164652077697468207468652052656c617920436861696e2e0060416c6c206f726967696e732061726520616c6c6f7765642e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632eed04089463756d756c75735f7072696d6974697665735f70617261636861696e5f696e686572656e745450617261636861696e496e686572656e7444617461000010013c76616c69646174696f6e5f64617461f104015c50657273697374656456616c69646174696f6e4461746100014472656c61795f636861696e5f7374617465f904015473705f747269653a3a53746f7261676550726f6f66000144646f776e776172645f6d657373616765730105016c5665633c496e626f756e64446f776e776172644d6573736167653e00014c686f72697a6f6e74616c5f6d65737361676573090501a442547265654d61703c5061726149642c205665633c496e626f756e6448726d704d6573736167653e3e0000f1040c4c706f6c6b61646f745f7072696d6974697665730876325c50657273697374656456616c69646174696f6e44617461080448012c044e011c0010012c706172656e745f68656164f5040120486561644461746100014c72656c61795f706172656e745f6e756d6265721c01044e00016472656c61795f706172656e745f73746f726167655f726f6f742c0104480001306d61785f706f765f73697a651c010c7533320000f5040c48706f6c6b61646f745f70617261636861696e287072696d6974697665732048656164446174610000040030011c5665633c75383e0000f9040c1c73705f747269653473746f726167655f70726f6f663053746f7261676550726f6f660000040128747269655f6e6f646573fd04014442547265655365743c5665633c75383e3e0000fd04042042547265655365740404540130000400a902000000010500000205050005050860706f6c6b61646f745f636f72655f7072696d69746976657358496e626f756e64446f776e776172644d657373616765042c426c6f636b4e756d626572011c0008011c73656e745f61741c012c426c6f636b4e756d62657200010c6d736730013c446f776e776172644d65737361676500000905042042547265654d617008044b01a9010456010d0500040015050000000d0500000211050011050860706f6c6b61646f745f636f72655f7072696d69746976657348496e626f756e6448726d704d657373616765042c426c6f636b4e756d626572011c0008011c73656e745f61741c012c426c6f636b4e756d6265720001106461746130015073705f7374643a3a7665633a3a5665633c75383e00001505000002190500190500000408a9010d05001d050c6463756d756c75735f70616c6c65745f78636d705f71756575651870616c6c65741043616c6c04045400012448736572766963655f6f766572776569676874080114696e64657810013c4f766572776569676874496e6465780001307765696768745f6c696d697424011857656967687400003484536572766963657320612073696e676c65206f7665727765696768742058434d2e00c02d20606f726967696e603a204d75737420706173732060457865637574654f7665727765696768744f726967696e602ed42d2060696e646578603a2054686520696e646578206f6620746865206f7665727765696768742058434d20746f20736572766963650d012d20607765696768745f6c696d6974603a2054686520616d6f756e74206f662077656967687420746861742058434d20657865637574696f6e206d61792074616b652e001c4572726f72733a5d012d20604261644f766572776569676874496e646578603a2058434d20756e6465722060696e64657860206973206e6f7420666f756e6420696e2074686520604f766572776569676874602073746f72616765206d61702e45012d206042616458636d603a2058434d20756e6465722060696e646578602063616e6e6f742062652070726f7065726c79206465636f64656420696e746f20612076616c69642058434d20666f726d61742e09012d20605765696768744f7665724c696d6974603a2058434d20657865637574696f6e206d617920757365206772656174657220607765696768745f6c696d6974602e001c4576656e74733a8c2d20604f7665727765696768745365727669636564603a204f6e20737563636573732e5473757370656e645f78636d5f657865637574696f6e00010c490153757370656e647320616c6c2058434d20657865637574696f6e7320666f72207468652058434d502071756575652c207265676172646c657373206f66207468652073656e6465722773206f726967696e2e00a42d20606f726967696e603a204d75737420706173732060436f6e74726f6c6c65724f726967696e602e50726573756d655f78636d5f657865637574696f6e000214b8526573756d657320616c6c2058434d20657865637574696f6e7320666f72207468652058434d502071756575652e003d014e6f7465207468617420746869732066756e6374696f6e20646f65736e2774206368616e67652074686520737461747573206f662074686520696e2f6f757420626f756e64206368616e6e656c732e00a42d20606f726967696e603a204d75737420706173732060436f6e74726f6c6c65724f726967696e602e607570646174655f73757370656e645f7468726573686f6c6404010c6e65771c010c75333200031499014f76657277726974657320746865206e756d626572206f66207061676573206f66206d65737361676573207768696368206d75737420626520696e2074686520717565756520666f7220746865206f74686572207369646520746f20626520746f6c6420746f5873757370656e642074686569722073656e64696e672e00742d20606f726967696e603a204d75737420706173732060526f6f74602ee82d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e73757370656e645f76616c756560547570646174655f64726f705f7468726573686f6c6404010c6e65771c010c75333200041495014f76657277726974657320746865206e756d626572206f66207061676573206f66206d65737361676573207768696368206d75737420626520696e207468652071756575652061667465722077686963682077652064726f7020616e792066757274686572686d657373616765732066726f6d20746865206368616e6e656c2e00742d20606f726967696e603a204d75737420706173732060526f6f74602eec2d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e64726f705f7468726573686f6c64605c7570646174655f726573756d655f7468726573686f6c6404010c6e65771c010c75333200051491014f76657277726974657320746865206e756d626572206f66207061676573206f66206d6573736167657320776869636820746865207175657565206d757374206265207265647563656420746f206265666f7265206974207369676e616c732074686174ec6d6573736167652073656e64696e67206d6179207265636f6d6d656e636520616674657220697420686173206265656e2073757370656e6465642e00742d20606f726967696e603a204d75737420706173732060526f6f74602ef42d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e726573756d655f7468726573686f6c64605c7570646174655f7468726573686f6c645f77656967687404010c6e657724011857656967687400061049014f7665727772697465732074686520616d6f756e74206f662072656d61696e696e672077656967687420756e6465722077686963682077652073746f702070726f63657373696e67206d657373616765732e00742d20606f726967696e603a204d75737420706173732060526f6f74602ef42d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e7468726573686f6c645f77656967687460707570646174655f7765696768745f72657374726963745f646563617904010c6e657724011857656967687400071445014f7665727772697465732074686520737065656420746f2077686963682074686520617661696c61626c652077656967687420617070726f616368657320746865206d6178696d756d207765696768742ea50141206c6f776572206e756d62657220726573756c747320696e2061206661737465722070726f6772657373696f6e2e20412076616c7565206f662031206d616b65732074686520656e746972652077656967687420617661696c61626c6520696e697469616c6c792e00742d20606f726967696e603a204d75737420706173732060526f6f74602e0d012d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e7765696768745f72657374726963745f6465636179602e847570646174655f78636d705f6d61785f696e646976696475616c5f77656967687404010c6e657724011857656967687400081429014f766572777269746520746865206d6178696d756d20616d6f756e74206f662077656967687420616e7920696e646976696475616c206d657373616765206d617920636f6e73756d652e71014d657373616765732061626f766520746869732077656967687420676f20696e746f20746865206f76657277656967687420717565756520616e64206d6179206f6e6c79206265207365727669636564206578706c696369746c792e00742d20606f726967696e603a204d75737420706173732060526f6f74602e21012d20606e6577603a20446573697265642076616c756520666f7220605175657565436f6e666967446174612e78636d705f6d61785f696e646976696475616c5f776569676874602e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e21050c2870616c6c65745f78636d1870616c6c65741043616c6c0404540001281073656e64080110646573747d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011c6d65737361676525050154426f783c56657273696f6e656458636d3c28293e3e0000003c74656c65706f72745f617373657473100110646573747d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172797d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747345020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c75333200013c110154656c65706f727420736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f20736f6d652064657374696e6174696f6e20636861696e2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602e2054686520776569676874206c696d697420666f722066656573206973206e6f742070726f766964656420616e64207468757320697320756e6c696d697465642cb47769746820616c6c20666565732074616b656e206173206e65656465642066726f6d207468652061737365742e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652ead012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546865206669727374206974656d2073686f756c64206265207468652063757272656e6379207573656420746f20746f207061792074686520666565206f6e2074686580202060646573746020736964652e204d6179206e6f7420626520656d7074792e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e5c726573657276655f7472616e736665725f617373657473100110646573747d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172797d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747345020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c7533320002404d015472616e7366657220736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f2074686520736f7665726569676e206163636f756e74206f6620612064657374696e6174696f6e94636861696e20616e6420666f72776172642061206e6f74696669636174696f6e2058434d2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602e2054686520776569676874206c696d697420666f722066656573206973206e6f742070726f766964656420616e64207468757320697320756e6c696d697465642cb47769746820616c6c20666565732074616b656e206173206e65656465642066726f6d207468652061737365742e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652e85012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546869732073686f756c6420696e636c7564652074686520617373657473207573656420746f207061792074686520666565206f6e2074686538202060646573746020736964652e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e1c6578656375746508011c6d657373616765550501c0426f783c56657273696f6e656458636d3c3c5420617320537973436f6e6669673e3a3a52756e74696d6543616c6c3e3e0001286d61785f77656967687424011857656967687400032cd04578656375746520616e2058434d206d6573736167652066726f6d2061206c6f63616c2c207369676e65642c206f726967696e2e004d01416e206576656e74206973206465706f736974656420696e6469636174696e67207768657468657220606d73676020636f756c6420626520657865637574656420636f6d706c6574656c79206f72206f6e6c79287061727469616c6c792e006d014e6f206d6f7265207468616e20606d61785f776569676874602077696c6c206265207573656420696e2069747320617474656d7074656420657865637574696f6e2e2049662074686973206973206c657373207468616e2074686559016d6178696d756d20616d6f756e74206f6620776569676874207468617420746865206d65737361676520636f756c642074616b6520746f2062652065786563757465642c207468656e206e6f20657865637574696f6e54617474656d70742077696c6c206265206d6164652e006d014e4f54453a2041207375636365737366756c2072657475726e20746f207468697320646f6573202a6e6f742a20696d706c7920746861742074686520606d73676020776173206578656375746564207375636365737366756c6c79cc746f20636f6d706c6574696f6e3b206f6e6c792074686174202a736f6d652a206f66206974207761732065786563757465642e44666f7263655f78636d5f76657273696f6e0801206c6f636174696f6eb5010148426f783c4d756c74694c6f636174696f6e3e00012c78636d5f76657273696f6e1c012858636d56657273696f6e00041849014578746f6c6c2074686174206120706172746963756c61722064657374696e6174696f6e2063616e20626520636f6d6d756e6963617465642077697468207468726f756768206120706172746963756c61723c76657273696f6e206f662058434d2e00642d20606f726967696e603a204d75737420626520526f6f742ed82d20606c6f636174696f6e603a205468652064657374696e6174696f6e2074686174206973206265696e67206465736372696265642e11012d206078636d5f76657273696f6e603a20546865206c61746573742076657273696f6e206f662058434d207468617420606c6f636174696f6e6020737570706f7274732e64666f7263655f64656661756c745f78636d5f76657273696f6e0401446d617962655f78636d5f76657273696f6ec10301484f7074696f6e3c58636d56657273696f6e3e0005145901536574206120736166652058434d2076657273696f6e20287468652076657273696f6e20746861742058434d2073686f756c6420626520656e636f646564207769746820696620746865206d6f737420726563656e74b476657273696f6e20612064657374696e6174696f6e2063616e2061636365707420697320756e6b6e6f776e292e00642d20606f726967696e603a204d75737420626520526f6f742e39012d20606d617962655f78636d5f76657273696f6e603a205468652064656661756c742058434d20656e636f64696e672076657273696f6e2c206f7220604e6f6e656020746f2064697361626c652e78666f7263655f7375627363726962655f76657273696f6e5f6e6f746966790401206c6f636174696f6e7d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e000610390141736b2061206c6f636174696f6e20746f206e6f7469667920757320726567617264696e672074686569722058434d2076657273696f6e20616e6420616e79206368616e67657320746f2069742e00642d20606f726967696e603a204d75737420626520526f6f742e59012d20606c6f636174696f6e603a20546865206c6f636174696f6e20746f2077686963682077652073686f756c642073756273637269626520666f722058434d2076657273696f6e206e6f74696669636174696f6e732e80666f7263655f756e7375627363726962655f76657273696f6e5f6e6f746966790401206c6f636174696f6e7d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e0007184901526571756972652074686174206120706172746963756c61722064657374696e6174696f6e2073686f756c64206e6f206c6f6e676572206e6f7469667920757320726567617264696e6720616e792058434d4076657273696f6e206368616e6765732e00642d20606f726967696e603a204d75737420626520526f6f742e3d012d20606c6f636174696f6e603a20546865206c6f636174696f6e20746f207768696368207765206172652063757272656e746c79207375627363726962656420666f722058434d2076657273696f6ea820206e6f74696669636174696f6e73207768696368207765206e6f206c6f6e676572206465736972652e7c6c696d697465645f726573657276655f7472616e736665725f617373657473140110646573747d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172797d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747345020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c7533320001307765696768745f6c696d69744102012c5765696768744c696d69740008484d015472616e7366657220736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f2074686520736f7665726569676e206163636f756e74206f6620612064657374696e6174696f6e94636861696e20616e6420666f72776172642061206e6f74696669636174696f6e2058434d2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602c20757020746f20656e6f75676820746f2070617920666f7220607765696768745f6c696d697460206f66207765696768742e204966206d6f72652077656967687459016973206e6565646564207468616e20607765696768745f6c696d6974602c207468656e20746865206f7065726174696f6e2077696c6c206661696c20616e6420746865206173736574732073656e64206d6179206265206174207269736b2e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652e85012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546869732073686f756c6420696e636c7564652074686520617373657473207573656420746f207061792074686520666565206f6e2074686538202060646573746020736964652e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e45012d20607765696768745f6c696d6974603a205468652072656d6f74652d7369646520776569676874206c696d69742c20696620616e792c20666f72207468652058434d206665652070757263686173652e5c6c696d697465645f74656c65706f72745f617373657473140110646573747d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00012c62656e65666963696172797d02016c426f783c56657273696f6e65644d756c74694c6f636174696f6e3e00011861737365747345020164426f783c56657273696f6e65644d756c74694173736574733e0001386665655f61737365745f6974656d1c010c7533320001307765696768745f6c696d69744102012c5765696768744c696d6974000944110154656c65706f727420736f6d65206173736574732066726f6d20746865206c6f63616c20636861696e20746f20736f6d652064657374696e6174696f6e20636861696e2e005101466565207061796d656e74206f6e207468652064657374696e6174696f6e2073696465206973206d6164652066726f6d2074686520617373657420696e2074686520606173736574736020766563746f72206f666101696e64657820606665655f61737365745f6974656d602c20757020746f20656e6f75676820746f2070617920666f7220607765696768745f6c696d697460206f66207765696768742e204966206d6f72652077656967687459016973206e6565646564207468616e20607765696768745f6c696d6974602c207468656e20746865206f7065726174696f6e2077696c6c206661696c20616e6420746865206173736574732073656e64206d6179206265206174207269736b2e0029012d20606f726967696e603a204d7573742062652063617061626c65206f66207769746864726177696e672074686520606173736574736020616e6420657865637574696e672058434d2e8d012d206064657374603a2044657374696e6174696f6e20636f6e7465787420666f7220746865206173736574732e2057696c6c207479706963616c6c792062652060583228506172656e742c2050617261636861696e282e2e29296020746f2073656e645901202066726f6d2070617261636861696e20746f2070617261636861696e2c206f72206058312850617261636861696e282e2e29296020746f2073656e642066726f6d2072656c617920746f2070617261636861696e2e89012d206062656e6566696369617279603a20412062656e6566696369617279206c6f636174696f6e20666f72207468652061737365747320696e2074686520636f6e74657874206f66206064657374602e2057696c6c2067656e6572616c6c79206265642020616e20604163636f756e7449643332602076616c75652ead012d2060617373657473603a205468652061737365747320746f2062652077697468647261776e2e20546865206669727374206974656d2073686f756c64206265207468652063757272656e6379207573656420746f20746f207061792074686520666565206f6e2074686580202060646573746020736964652e204d6179206e6f7420626520656d7074792e4d012d20606665655f61737365745f6974656d603a2054686520696e64657820696e746f206061737365747360206f6620746865206974656d2077686963682073686f756c64206265207573656420746f207061791c2020666565732e45012d20607765696768745f6c696d6974603a205468652072656d6f74652d7369646520776569676874206c696d69742c20696620616e792c20666f72207468652058434d206665652070757263686173652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e2505080c78636d3056657273696f6e656458636d042c52756e74696d6543616c6c00010808563204002905015076323a3a58636d3c52756e74696d6543616c6c3e0002000856330400d901015076333a3a58636d3c52756e74696d6543616c6c3e0003000029050c0c78636d0876320c58636d042c52756e74696d6543616c6c000004002d0501745665633c496e737472756374696f6e3c52756e74696d6543616c6c3e3e00002d0500000231050031050c0c78636d0876322c496e737472756374696f6e042c52756e74696d6543616c6c000170345769746864726177417373657404004902012c4d756c7469417373657473000000545265736572766541737365744465706f736974656404004902012c4d756c7469417373657473000100585265636569766554656c65706f72746564417373657404004902012c4d756c7469417373657473000200345175657279526573706f6e73650c012071756572795f696428011c51756572794964000120726573706f6e736535050120526573706f6e73650001286d61785f77656967687428010c753634000300345472616e7366657241737365740801186173736574734902012c4d756c746941737365747300012c62656e6566696369617279590201344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c01186173736574734902012c4d756c746941737365747300011064657374590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f74797065290201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737428010c75363400011063616c6c2d020168446f75626c65456e636f6465643c52756e74696d6543616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572c101010c7533320001406d61785f6d6573736167655f73697a65c101010c7533320001306d61785f6361706163697479c101010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74c101010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72c101010c75333200011873656e646572c101010c753332000124726563697069656e74c101010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e04005d020154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f720c012071756572795f696428011c5175657279496400011064657374590201344d756c74694c6f636174696f6e00014c6d61785f726573706f6e73655f77656967687428010c753634000c00304465706f73697441737365740c0118617373657473450501404d756c7469417373657446696c7465720001286d61785f617373657473c101010c75333200012c62656e6566696369617279590201344d756c74694c6f636174696f6e000d004c4465706f736974526573657276654173736574100118617373657473450501404d756c7469417373657446696c7465720001286d61785f617373657473c101010c75333200011064657374590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e000e003445786368616e6765417373657408011067697665450501404d756c7469417373657446696c74657200011c726563656976654902012c4d756c7469417373657473000f005c496e6974696174655265736572766557697468647261770c0118617373657473450501404d756c7469417373657446696c74657200011c72657365727665590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473450501404d756c7469417373657446696c74657200011064657374590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e001100305175657279486f6c64696e6710012071756572795f696428011c5175657279496400011064657374590201344d756c74694c6f636174696f6e000118617373657473450501404d756c7469417373657446696c74657200014c6d61785f726573706f6e73655f77656967687428010c75363400120030427579457865637574696f6e08011066656573510201284d756c746941737365740001307765696768745f6c696d69745105012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c657204002905014058636d3c52756e74696d6543616c6c3e0015002c536574417070656e64697804002905014058636d3c52756e74696d6543616c6c3e00160028436c6561724572726f7200170028436c61696d41737365740801186173736574734902012c4d756c74694173736574730001187469636b6574590201344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f77656967687428010c753634001a0048556e73756273637269626556657273696f6e001b000035050c0c78636d08763220526573706f6e7365000110104e756c6c0000001841737365747304004902012c4d756c74694173736574730001003c457865637574696f6e526573756c740400390501504f7074696f6e3c287533322c204572726f72293e0002001c56657273696f6e04001c013873757065723a3a56657273696f6e00030000390504184f7074696f6e040454013d050108104e6f6e6500000010536f6d6504003d0500000100003d05000004081c4105004105100c78636d08763218747261697473144572726f72000168204f766572666c6f7700000034556e696d706c656d656e74656400010060556e74727573746564526573657276654c6f636174696f6e00020064556e7472757374656454656c65706f72744c6f636174696f6e000300444d756c74694c6f636174696f6e46756c6c000400684d756c74694c6f636174696f6e4e6f74496e7665727469626c65000500244261644f726967696e0006003c496e76616c69644c6f636174696f6e0007003441737365744e6f74466f756e64000800544661696c6564546f5472616e7361637441737365740009003c4e6f74576974686472617761626c65000a00484c6f636174696f6e43616e6e6f74486f6c64000b0054457863656564734d61784d65737361676553697a65000c005844657374696e6174696f6e556e737570706f72746564000d00245472616e73706f7274000e0028556e726f757461626c65000f0030556e6b6e6f776e436c61696d001000384661696c6564546f4465636f6465001100404d6178576569676874496e76616c6964001200384e6f74486f6c64696e674665657300130030546f6f457870656e736976650014001054726170040010010c7536340015004c556e68616e646c656458636d56657273696f6e001600485765696768744c696d69745265616368656404001001185765696768740017001c426172726965720018004c5765696768744e6f74436f6d70757461626c65001900004505100c78636d087632286d756c74696173736574404d756c7469417373657446696c74657200010820446566696e69746504004902012c4d756c74694173736574730000001057696c6404004905013857696c644d756c74694173736574000100004905100c78636d087632286d756c746961737365743857696c644d756c746941737365740001080c416c6c00000014416c6c4f6608010869645502011c4173736574496400010c66756e4d05013c57696c6446756e676962696c697479000100004d05100c78636d087632286d756c746961737365743c57696c6446756e676962696c6974790001082046756e6769626c650000002c4e6f6e46756e6769626c650001000051050c0c78636d0876322c5765696768744c696d697400010824556e6c696d697465640000001c4c696d69746564040028010c753634000100005505080c78636d3056657273696f6e656458636d042c52756e74696d6543616c6c00010808563204005905015076323a3a58636d3c52756e74696d6543616c6c3e00020008563304006905015076333a3a58636d3c52756e74696d6543616c6c3e0003000059050c0c78636d0876320c58636d042c52756e74696d6543616c6c000004005d0501745665633c496e737472756374696f6e3c52756e74696d6543616c6c3e3e00005d0500000261050061050c0c78636d0876322c496e737472756374696f6e042c52756e74696d6543616c6c000170345769746864726177417373657404004902012c4d756c7469417373657473000000545265736572766541737365744465706f736974656404004902012c4d756c7469417373657473000100585265636569766554656c65706f72746564417373657404004902012c4d756c7469417373657473000200345175657279526573706f6e73650c012071756572795f696428011c51756572794964000120726573706f6e736535050120526573706f6e73650001286d61785f77656967687428010c753634000300345472616e7366657241737365740801186173736574734902012c4d756c746941737365747300012c62656e6566696369617279590201344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c01186173736574734902012c4d756c746941737365747300011064657374590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f74797065290201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737428010c75363400011063616c6c65050168446f75626c65456e636f6465643c52756e74696d6543616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572c101010c7533320001406d61785f6d6573736167655f73697a65c101010c7533320001306d61785f6361706163697479c101010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74c101010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72c101010c75333200011873656e646572c101010c753332000124726563697069656e74c101010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e04005d020154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f720c012071756572795f696428011c5175657279496400011064657374590201344d756c74694c6f636174696f6e00014c6d61785f726573706f6e73655f77656967687428010c753634000c00304465706f73697441737365740c0118617373657473450501404d756c7469417373657446696c7465720001286d61785f617373657473c101010c75333200012c62656e6566696369617279590201344d756c74694c6f636174696f6e000d004c4465706f736974526573657276654173736574100118617373657473450501404d756c7469417373657446696c7465720001286d61785f617373657473c101010c75333200011064657374590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e000e003445786368616e6765417373657408011067697665450501404d756c7469417373657446696c74657200011c726563656976654902012c4d756c7469417373657473000f005c496e6974696174655265736572766557697468647261770c0118617373657473450501404d756c7469417373657446696c74657200011c72657365727665590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473450501404d756c7469417373657446696c74657200011064657374590201344d756c74694c6f636174696f6e00010c78636d2905011c58636d3c28293e001100305175657279486f6c64696e6710012071756572795f696428011c5175657279496400011064657374590201344d756c74694c6f636174696f6e000118617373657473450501404d756c7469417373657446696c74657200014c6d61785f726573706f6e73655f77656967687428010c75363400120030427579457865637574696f6e08011066656573510201284d756c746941737365740001307765696768745f6c696d69745105012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c657204005905014058636d3c52756e74696d6543616c6c3e0015002c536574417070656e64697804005905014058636d3c52756e74696d6543616c6c3e00160028436c6561724572726f7200170028436c61696d41737365740801186173736574734902012c4d756c74694173736574730001187469636b6574590201344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f77656967687428010c753634001a0048556e73756273637269626556657273696f6e001b000065050c0c78636d38646f75626c655f656e636f64656434446f75626c65456e636f646564040454000004011c656e636f64656430011c5665633c75383e000069050c0c78636d0876330c58636d041043616c6c000004006d0501585665633c496e737472756374696f6e3c43616c6c3e3e00006d0500000271050071050c0c78636d0876332c496e737472756374696f6e041043616c6c0001c034576974686472617741737365740400e501012c4d756c7469417373657473000000545265736572766541737365744465706f73697465640400e501012c4d756c7469417373657473000100585265636569766554656c65706f7274656441737365740400e501012c4d756c7469417373657473000200345175657279526573706f6e736510012071756572795f696428011c51756572794964000120726573706f6e736501020120526573706f6e73650001286d61785f77656967687424011857656967687400011c71756572696572250201544f7074696f6e3c4d756c74694c6f636174696f6e3e000300345472616e736665724173736574080118617373657473e501012c4d756c746941737365747300012c62656e6566696369617279b50101344d756c74694c6f636174696f6e000400505472616e736665725265736572766541737365740c0118617373657473e501012c4d756c746941737365747300011064657374b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e000500205472616e736163740c012c6f726967696e5f6b696e64290201284f726967696e4b696e64000158726571756972655f7765696768745f61745f6d6f737424011857656967687400011063616c6c6505014c446f75626c65456e636f6465643c43616c6c3e0006006448726d704e65774368616e6e656c4f70656e526571756573740c011873656e646572c101010c7533320001406d61785f6d6573736167655f73697a65c101010c7533320001306d61785f6361706163697479c101010c7533320007004c48726d704368616e6e656c4163636570746564040124726563697069656e74c101010c7533320008004848726d704368616e6e656c436c6f73696e670c0124696e69746961746f72c101010c75333200011873656e646572c101010c753332000124726563697069656e74c101010c7533320009002c436c6561724f726967696e000a003444657363656e644f726967696e0400b9010154496e746572696f724d756c74694c6f636174696f6e000b002c5265706f72744572726f720400310201445175657279526573706f6e7365496e666f000c00304465706f7369744173736574080118617373657473350201404d756c7469417373657446696c74657200012c62656e6566696369617279b50101344d756c74694c6f636174696f6e000d004c4465706f7369745265736572766541737365740c0118617373657473350201404d756c7469417373657446696c74657200011064657374b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e000e003445786368616e676541737365740c011067697665350201404d756c7469417373657446696c74657200011077616e74e501012c4d756c746941737365747300011c6d6178696d616ca80110626f6f6c000f005c496e6974696174655265736572766557697468647261770c0118617373657473350201404d756c7469417373657446696c74657200011c72657365727665b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e00100040496e69746961746554656c65706f72740c0118617373657473350201404d756c7469417373657446696c74657200011064657374b50101344d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e001100345265706f7274486f6c64696e67080134726573706f6e73655f696e666f310201445175657279526573706f6e7365496e666f000118617373657473350201404d756c7469417373657446696c74657200120030427579457865637574696f6e08011066656573ed0101284d756c746941737365740001307765696768745f6c696d69744102012c5765696768744c696d697400130034526566756e64537572706c75730014003c5365744572726f7248616e646c657204006905012458636d3c43616c6c3e0015002c536574417070656e64697804006905012458636d3c43616c6c3e00160028436c6561724572726f7200170028436c61696d4173736574080118617373657473e501012c4d756c74694173736574730001187469636b6574b50101344d756c74694c6f636174696f6e0018001054726170040028010c7536340019004053756273637269626556657273696f6e08012071756572795f696428011c5175657279496400014c6d61785f726573706f6e73655f776569676874240118576569676874001a0048556e73756273637269626556657273696f6e001b00244275726e41737365740400e501012c4d756c7469417373657473001c002c45787065637441737365740400e501012c4d756c7469417373657473001d00304578706563744f726967696e0400250201544f7074696f6e3c4d756c74694c6f636174696f6e3e001e002c4578706563744572726f720400050201504f7074696f6e3c287533322c204572726f72293e001f00504578706563745472616e7361637453746174757304001d0201384d617962654572726f72436f64650020002c517565727950616c6c657408012c6d6f64756c655f6e616d6530011c5665633c75383e000134726573706f6e73655f696e666f310201445175657279526573706f6e7365496e666f0021003045787065637450616c6c6574140114696e646578c101010c7533320001106e616d6530011c5665633c75383e00012c6d6f64756c655f6e616d6530011c5665633c75383e00012c63726174655f6d616a6f72c101010c75333200013c6d696e5f63726174655f6d696e6f72c101010c753332002200505265706f72745472616e736163745374617475730400310201445175657279526573706f6e7365496e666f0023004c436c6561725472616e736163745374617475730024003c556e6976657273616c4f726967696e0400bd0101204a756e6374696f6e002500344578706f72744d6573736167650c011c6e6574776f726bc90101244e6574776f726b496400012c64657374696e6174696f6eb9010154496e746572696f724d756c74694c6f636174696f6e00010c78636dd901011c58636d3c28293e002600244c6f636b41737365740801146173736574ed0101284d756c74694173736574000120756e6c6f636b6572b50101344d756c74694c6f636174696f6e0027002c556e6c6f636b41737365740801146173736574ed0101284d756c74694173736574000118746172676574b50101344d756c74694c6f636174696f6e002800384e6f7465556e6c6f636b61626c650801146173736574ed0101284d756c746941737365740001146f776e6572b50101344d756c74694c6f636174696f6e0029003452657175657374556e6c6f636b0801146173736574ed0101284d756c746941737365740001186c6f636b6572b50101344d756c74694c6f636174696f6e002a002c536574466565734d6f64650401306a69745f7769746864726177a80110626f6f6c002b0020536574546f70696304000401205b75383b2033325d002c0028436c656172546f706963002d002c416c6961734f726967696e0400b50101344d756c74694c6f636174696f6e002e003c556e70616964457865637574696f6e0801307765696768745f6c696d69744102012c5765696768744c696d6974000130636865636b5f6f726967696e250201544f7074696f6e3c4d756c74694c6f636174696f6e3e002f000075050c6063756d756c75735f70616c6c65745f646d705f71756575651870616c6c65741043616c6c04045400010448736572766963655f6f766572776569676874080114696e64657810013c4f766572776569676874496e6465780001307765696768745f6c696d6974240118576569676874000004905365727669636520612073696e676c65206f766572776569676874206d6573736167652e042501436f6e7461696e73206f6e652076617269616e742070657220646973706174636861626c6520746861742063616e2062652063616c6c656420627920616e2065787472696e7369632e7905000002ad03007d05000004088105180081050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540100045300000400350301185665633c543e000085050c4070616c6c65745f64656d6f6372616379147479706573385265666572656e64756d496e666f0c2c426c6f636b4e756d62657201102050726f706f73616c01b1031c42616c616e6365011801081c4f6e676f696e670400890501c05265666572656e64756d5374617475733c426c6f636b4e756d6265722c2050726f706f73616c2c2042616c616e63653e0000002046696e6973686564080120617070726f766564a80110626f6f6c00010c656e6410012c426c6f636b4e756d6265720001000089050c4070616c6c65745f64656d6f6372616379147479706573405265666572656e64756d5374617475730c2c426c6f636b4e756d62657201102050726f706f73616c01b1031c42616c616e636501180014010c656e6410012c426c6f636b4e756d62657200012070726f706f73616cb103012050726f706f73616c0001247468726573686f6c64940134566f74655468726573686f6c6400011464656c617910012c426c6f636b4e756d62657200011474616c6c798d05013854616c6c793c42616c616e63653e00008d050c4070616c6c65745f64656d6f63726163791474797065731454616c6c79041c42616c616e63650118000c01106179657318011c42616c616e63650001106e61797318011c42616c616e636500011c7475726e6f757418011c42616c616e6365000091050c4070616c6c65745f64656d6f637261637910766f746518566f74696e67101c42616c616e63650118244163636f756e74496401002c426c6f636b4e756d6265720110204d6178566f746573000108184469726563740c0114766f746573950501f4426f756e6465645665633c285265666572656e64756d496e6465782c204163636f756e74566f74653c42616c616e63653e292c204d6178566f7465733e00012c64656c65676174696f6e73a105015044656c65676174696f6e733c42616c616e63653e0001147072696f72a505017c5072696f724c6f636b3c426c6f636b4e756d6265722c2042616c616e63653e0000002844656c65676174696e6714011c62616c616e636518011c42616c616e63650001187461726765740001244163636f756e744964000128636f6e76696374696f6ebd030128436f6e76696374696f6e00012c64656c65676174696f6e73a105015044656c65676174696f6e733c42616c616e63653e0001147072696f72a505017c5072696f724c6f636b3c426c6f636b4e756d6265722c2042616c616e63653e0001000095050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540199050453000004009d0501185665633c543e00009905000004081c98009d05000002990500a1050c4070616c6c65745f64656d6f63726163791474797065732c44656c65676174696f6e73041c42616c616e6365011800080114766f74657318011c42616c616e636500011c6361706974616c18011c42616c616e63650000a5050c4070616c6c65745f64656d6f637261637910766f7465245072696f724c6f636b082c426c6f636b4e756d62657201101c42616c616e6365011800080010012c426c6f636b4e756d626572000018011c42616c616e63650000a90500000408b1039400ad050000040810810500b1050c4070616c6c65745f64656d6f63726163791870616c6c6574144572726f720404540001602056616c75654c6f770000043456616c756520746f6f206c6f773c50726f706f73616c4d697373696e670001045c50726f706f73616c20646f6573206e6f742065786973743c416c726561647943616e63656c65640002049443616e6e6f742063616e63656c207468652073616d652070726f706f73616c207477696365444475706c696361746550726f706f73616c0003045450726f706f73616c20616c7265616479206d6164654c50726f706f73616c426c61636b6c69737465640004046850726f706f73616c207374696c6c20626c61636b6c6973746564444e6f7453696d706c654d616a6f72697479000504a84e6578742065787465726e616c2070726f706f73616c206e6f742073696d706c65206d616a6f726974792c496e76616c69644861736800060430496e76616c69642068617368284e6f50726f706f73616c000704504e6f2065787465726e616c2070726f706f73616c34416c72656164795665746f6564000804984964656e74697479206d6179206e6f74207665746f20612070726f706f73616c207477696365445265666572656e64756d496e76616c696400090484566f746520676976656e20666f7220696e76616c6964207265666572656e64756d2c4e6f6e6557616974696e67000a04504e6f2070726f706f73616c732077616974696e67204e6f74566f746572000b04c454686520676976656e206163636f756e7420646964206e6f7420766f7465206f6e20746865207265666572656e64756d2e304e6f5065726d697373696f6e000c04c8546865206163746f7220686173206e6f207065726d697373696f6e20746f20636f6e647563742074686520616374696f6e2e44416c726561647944656c65676174696e67000d0488546865206163636f756e7420697320616c72656164792064656c65676174696e672e44496e73756666696369656e7446756e6473000e04fc546f6f206869676820612062616c616e6365207761732070726f7669646564207468617420746865206163636f756e742063616e6e6f74206166666f72642e344e6f7444656c65676174696e67000f04a0546865206163636f756e74206973206e6f742063757272656e746c792064656c65676174696e672e28566f74657345786973740010085501546865206163636f756e742063757272656e746c792068617320766f74657320617474616368656420746f20697420616e6420746865206f7065726174696f6e2063616e6e6f74207375636365656420756e74696ce87468657365206172652072656d6f7665642c20656974686572207468726f7567682060756e766f746560206f722060726561705f766f7465602e44496e7374616e744e6f74416c6c6f776564001104d854686520696e7374616e74207265666572656e64756d206f726967696e2069732063757272656e746c7920646973616c6c6f7765642e204e6f6e73656e73650012049444656c65676174696f6e20746f206f6e6573656c66206d616b6573206e6f2073656e73652e3c57726f6e675570706572426f756e6400130450496e76616c696420757070657220626f756e642e3c4d6178566f74657352656163686564001404804d6178696d756d206e756d626572206f6620766f74657320726561636865642e1c546f6f4d616e79001504804d6178696d756d206e756d626572206f66206974656d7320726561636865642e3c566f74696e67506572696f644c6f7700160454566f74696e6720706572696f6420746f6f206c6f7740507265696d6167654e6f7445786973740017047054686520707265696d61676520646f6573206e6f742065786973742e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909b5050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454012c0453000004008d0201185665633c543e0000b905084470616c6c65745f636f6c6c65637469766514566f74657308244163636f756e74496401002c426c6f636b4e756d626572011000140114696e6465781c013450726f706f73616c496e6465780001247468726573686f6c641c012c4d656d626572436f756e7400011061796573350301385665633c4163636f756e7449643e0001106e617973350301385665633c4163636f756e7449643e00010c656e6410012c426c6f636b4e756d6265720000bd050c4470616c6c65745f636f6c6c6563746976651870616c6c6574144572726f72080454000449000128244e6f744d656d6265720000045c4163636f756e74206973206e6f742061206d656d626572444475706c696361746550726f706f73616c0001047c4475706c69636174652070726f706f73616c73206e6f7420616c6c6f7765643c50726f706f73616c4d697373696e670002044c50726f706f73616c206d7573742065786973742857726f6e67496e646578000304404d69736d61746368656420696e646578344475706c6963617465566f7465000404584475706c696361746520766f74652069676e6f72656448416c7265616479496e697469616c697a6564000504804d656d626572732061726520616c726561647920696e697469616c697a65642120546f6f4561726c79000604010154686520636c6f73652063616c6c20776173206d61646520746f6f206561726c792c206265666f72652074686520656e64206f662074686520766f74696e672e40546f6f4d616e7950726f706f73616c73000704fc54686572652063616e206f6e6c792062652061206d6178696d756d206f6620604d617850726f706f73616c7360206163746976652070726f706f73616c732e4c57726f6e6750726f706f73616c576569676874000804d054686520676976656e2077656967687420626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e4c57726f6e6750726f706f73616c4c656e677468000904d054686520676976656e206c656e67746820626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909c1050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454012c0453000004008d0201185665633c543e0000c5050c4470616c6c65745f636f6c6c6563746976651870616c6c6574144572726f72080454000449000128244e6f744d656d6265720000045c4163636f756e74206973206e6f742061206d656d626572444475706c696361746550726f706f73616c0001047c4475706c69636174652070726f706f73616c73206e6f7420616c6c6f7765643c50726f706f73616c4d697373696e670002044c50726f706f73616c206d7573742065786973742857726f6e67496e646578000304404d69736d61746368656420696e646578344475706c6963617465566f7465000404584475706c696361746520766f74652069676e6f72656448416c7265616479496e697469616c697a6564000504804d656d626572732061726520616c726561647920696e697469616c697a65642120546f6f4561726c79000604010154686520636c6f73652063616c6c20776173206d61646520746f6f206561726c792c206265666f72652074686520656e64206f662074686520766f74696e672e40546f6f4d616e7950726f706f73616c73000704fc54686572652063616e206f6e6c792062652061206d6178696d756d206f6620604d617850726f706f73616c7360206163746976652070726f706f73616c732e4c57726f6e6750726f706f73616c576569676874000804d054686520676976656e2077656967687420626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e4c57726f6e6750726f706f73616c4c656e677468000904d054686520676976656e206c656e67746820626f756e6420666f72207468652070726f706f73616c2077617320746f6f206c6f772e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909c9050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540100045300000400350301185665633c543e0000cd050c4470616c6c65745f6d656d626572736869701870616c6c6574144572726f7208045400044900010c34416c72656164794d656d62657200000444416c72656164792061206d656d6265722e244e6f744d656d626572000104344e6f742061206d656d6265722e38546f6f4d616e794d656d6265727300020444546f6f206d616e79206d656d626572732e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909d105083c70616c6c65745f74726561737572792050726f706f73616c08244163636f756e74496401001c42616c616e636501180010012070726f706f7365720001244163636f756e74496400011476616c756518011c42616c616e636500012c62656e65666963696172790001244163636f756e744964000110626f6e6418011c42616c616e63650000d5050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454011c045300000400450301185665633c543e0000d9050c3473705f61726974686d65746963287065725f7468696e67731c5065726d696c6c000004001c010c7533320000dd0504184f7074696f6e04045401180108104e6f6e6500000010536f6d650400180000010000e10508346672616d655f737570706f72742050616c6c6574496400000400fd01011c5b75383b20385d0000e5050c3c70616c6c65745f74726561737572791870616c6c6574144572726f7208045400044900011470496e73756666696369656e7450726f706f7365727342616c616e63650000047850726f706f73657227732062616c616e636520697320746f6f206c6f772e30496e76616c6964496e646578000104904e6f2070726f706f73616c206f7220626f756e7479206174207468617420696e6465782e40546f6f4d616e79417070726f76616c7300020480546f6f206d616e7920617070726f76616c7320696e207468652071756575652e58496e73756666696369656e745065726d697373696f6e0003084501546865207370656e64206f726967696e2069732076616c6964206275742074686520616d6f756e7420697420697320616c6c6f77656420746f207370656e64206973206c6f776572207468616e207468654c616d6f756e7420746f206265207370656e742e4c50726f706f73616c4e6f74417070726f7665640004047c50726f706f73616c20686173206e6f74206265656e20617070726f7665642e04784572726f7220666f72207468652074726561737572792070616c6c65742ee9050c3870616c6c65745f7574696c6974791870616c6c6574144572726f7204045400010430546f6f4d616e7943616c6c730000045c546f6f206d616e792063616c6c7320626174636865642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909ed050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454011104045300000400f10501185665633c543e0000f105000002110400f505083870616c6c65745f76657374696e672052656c656173657300010808563000000008563100010000f9050c3870616c6c65745f76657374696e671870616c6c6574144572726f72040454000114284e6f7456657374696e6700000484546865206163636f756e7420676976656e206973206e6f742076657374696e672e5441744d617856657374696e675363686564756c65730001082501546865206163636f756e7420616c72656164792068617320604d617856657374696e675363686564756c65736020636f756e74206f66207363686564756c657320616e642074687573510163616e6e6f742061646420616e6f74686572206f6e652e20436f6e7369646572206d657267696e67206578697374696e67207363686564756c657320696e206f7264657220746f2061646420616e6f746865722e24416d6f756e744c6f770002040501416d6f756e74206265696e67207472616e7366657272656420697320746f6f206c6f7720746f2063726561746520612076657374696e67207363686564756c652e605363686564756c65496e6465784f75744f66426f756e6473000304d0416e20696e64657820776173206f7574206f6620626f756e6473206f66207468652076657374696e67207363686564756c65732e54496e76616c69645363686564756c65506172616d730004040d014661696c656420746f206372656174652061206e6577207363686564756c65206265636175736520736f6d6520706172616d657465722077617320696e76616c69642e04744572726f7220666f72207468652076657374696e672070616c6c65742efd050c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454010106045300000400090601185665633c543e0000010604184f7074696f6e0404540105060108104e6f6e6500000010536f6d650400050600000100000506084070616c6c65745f7363686564756c6572245363686564756c656414104e616d6501041043616c6c01b1032c426c6f636b4e756d62657201103450616c6c6574734f726967696e01ed03244163636f756e7449640100001401206d617962655f6964d001304f7074696f6e3c4e616d653e0001207072696f726974790801487363686564756c653a3a5072696f7269747900011063616c6cb103011043616c6c0001386d617962655f706572696f646963190401944f7074696f6e3c7363686564756c653a3a506572696f643c426c6f636b4e756d6265723e3e0001186f726967696eed03013450616c6c6574734f726967696e000009060000020106000d060c4070616c6c65745f7363686564756c65721870616c6c6574144572726f72040454000114404661696c6564546f5363686564756c65000004644661696c656420746f207363686564756c6520612063616c6c204e6f74466f756e640001047c43616e6e6f742066696e6420746865207363686564756c65642063616c6c2e5c546172676574426c6f636b4e756d626572496e50617374000204a4476976656e2074617267657420626c6f636b206e756d62657220697320696e2074686520706173742e4852657363686564756c654e6f4368616e6765000304f052657363686564756c65206661696c6564206265636175736520697420646f6573206e6f74206368616e6765207363686564756c65642074696d652e144e616d6564000404d0417474656d707420746f207573652061206e6f6e2d6e616d65642066756e6374696f6e206f6e2061206e616d6564207461736b2e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909091106000004081506180015060c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540119060453000004001d0601185665633c543e00001906083070616c6c65745f70726f78793c50726f7879446566696e6974696f6e0c244163636f756e74496401002450726f78795479706501d82c426c6f636b4e756d6265720110000c012064656c65676174650001244163636f756e74496400012870726f78795f74797065d8012450726f78795479706500011464656c617910012c426c6f636b4e756d62657200001d060000021906002106000004082506180025060c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540129060453000004002d0601185665633c543e00002906083070616c6c65745f70726f787930416e6e6f756e63656d656e740c244163636f756e74496401001048617368012c2c426c6f636b4e756d6265720110000c01107265616c0001244163636f756e74496400012463616c6c5f686173682c01104861736800011868656967687410012c426c6f636b4e756d62657200002d0600000229060031060c3070616c6c65745f70726f78791870616c6c6574144572726f720404540001201c546f6f4d616e79000004210154686572652061726520746f6f206d616e792070726f786965732072656769737465726564206f7220746f6f206d616e7920616e6e6f756e63656d656e74732070656e64696e672e204e6f74466f756e640001047450726f787920726567697374726174696f6e206e6f7420666f756e642e204e6f7450726f7879000204cc53656e646572206973206e6f7420612070726f7879206f6620746865206163636f756e7420746f2062652070726f786965642e2c556e70726f787961626c650003042101412063616c6c20776869636820697320696e636f6d70617469626c652077697468207468652070726f7879207479706527732066696c7465722077617320617474656d707465642e244475706c69636174650004046c4163636f756e7420697320616c726561647920612070726f78792e304e6f5065726d697373696f6e000504150143616c6c206d6179206e6f74206265206d6164652062792070726f78792062656361757365206974206d617920657363616c617465206974732070726976696c656765732e2c556e616e6e6f756e636564000604d0416e6e6f756e63656d656e742c206966206d61646520617420616c6c2c20776173206d61646520746f6f20726563656e746c792e2c4e6f53656c6650726f78790007046443616e6e6f74206164642073656c662061732070726f78792e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909093506083c70616c6c65745f707265696d616765345265717565737453746174757308244163636f756e74496401001c42616c616e6365011801082c556e72657175657374656408011c6465706f73697439060150284163636f756e7449642c2042616c616e63652900010c6c656e1c010c753332000000245265717565737465640c011c6465706f7369743d0601704f7074696f6e3c284163636f756e7449642c2042616c616e6365293e000114636f756e741c010c75333200010c6c656ec103012c4f7074696f6e3c7533323e000100003906000004080018003d0604184f7074696f6e0404540139060108104e6f6e6500000010536f6d650400390600000100004106000004082c1c0045060c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003001185665633c543e000049060c3c70616c6c65745f707265696d6167651870616c6c6574144572726f7204045400011818546f6f426967000004a0507265696d61676520697320746f6f206c6172676520746f2073746f7265206f6e2d636861696e2e30416c72656164794e6f746564000104a4507265696d6167652068617320616c7265616479206265656e206e6f746564206f6e2d636861696e2e344e6f74417574686f72697a6564000204c85468652075736572206973206e6f7420617574686f72697a656420746f20706572666f726d207468697320616374696f6e2e204e6f744e6f746564000304fc54686520707265696d6167652063616e6e6f742062652072656d6f7665642073696e636520697420686173206e6f7420796574206265656e206e6f7465642e2452657175657374656400040409014120707265696d616765206d6179206e6f742062652072656d6f766564207768656e20746865726520617265206f75747374616e64696e672072657175657374732e304e6f745265717565737465640005042d0154686520707265696d61676520726571756573742063616e6e6f742062652072656d6f7665642073696e6365206e6f206f75747374616e64696e672072657175657374732065786973742e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909094d060c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540100045300000400350301185665633c543e000051060c4470616c6c65745f6d656d626572736869701870616c6c6574144572726f7208045400044900010c34416c72656164794d656d62657200000444416c72656164792061206d656d6265722e244e6f744d656d626572000104344e6f742061206d656d6265722e38546f6f4d616e794d656d6265727300020444546f6f206d616e79206d656d626572732e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909095506082c70616c6c65745f746970731c4f70656e54697010244163636f756e74496401001c42616c616e636501182c426c6f636b4e756d62657201101048617368012c001c0118726561736f6e2c01104861736800010c77686f0001244163636f756e74496400011866696e6465720001244163636f756e74496400011c6465706f73697418011c42616c616e6365000118636c6f7365735906014c4f7074696f6e3c426c6f636b4e756d6265723e000110746970735d0601645665633c284163636f756e7449642c2042616c616e6365293e00012c66696e646572735f666565a80110626f6f6c0000590604184f7074696f6e04045401100108104e6f6e6500000010536f6d6504001000000100005d0600000239060061060c3473705f61726974686d65746963287065725f7468696e67731c50657263656e74000004000801087538000065060c2c70616c6c65745f746970731870616c6c6574144572726f7208045400044900011830526561736f6e546f6f4269670000048454686520726561736f6e20676976656e206973206a75737420746f6f206269672e30416c72656164794b6e6f776e00010488546865207469702077617320616c726561647920666f756e642f737461727465642e28556e6b6e6f776e5469700002046054686520746970206861736820697320756e6b6e6f776e2e244e6f7446696e6465720003041d01546865206163636f756e7420617474656d7074696e6720746f20726574726163742074686520746970206973206e6f74207468652066696e646572206f6620746865207469702e245374696c6c4f70656e0004042901546865207469702063616e6e6f7420626520636c61696d65642f636c6f736564206265636175736520746865726520617265206e6f7420656e6f7567682074697070657273207965742e245072656d61747572650005043101546865207469702063616e6e6f7420626520636c61696d65642f636c6f73656420626563617573652069742773207374696c6c20696e2074686520636f756e74646f776e20706572696f642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909096906000004080004006d06083c70616c6c65745f6d756c7469736967204d756c7469736967102c426c6f636b4e756d62657201101c42616c616e63650118244163636f756e7449640100304d6178417070726f76616c7300001001107768656ef0015854696d65706f696e743c426c6f636b4e756d6265723e00011c6465706f73697418011c42616c616e63650001246465706f7369746f720001244163636f756e744964000124617070726f76616c737106018c426f756e6465645665633c4163636f756e7449642c204d6178417070726f76616c733e000071060c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540100045300000400350301185665633c543e000075060c3c70616c6c65745f6d756c74697369671870616c6c6574144572726f72040454000138404d696e696d756d5468726573686f6c640000047c5468726573686f6c64206d7573742062652032206f7220677265617465722e3c416c7265616479417070726f766564000104ac43616c6c20697320616c726561647920617070726f7665642062792074686973207369676e61746f72792e444e6f417070726f76616c734e65656465640002049c43616c6c20646f65736e2774206e65656420616e7920286d6f72652920617070726f76616c732e44546f6f4665775369676e61746f72696573000304a854686572652061726520746f6f20666577207369676e61746f7269657320696e20746865206c6973742e48546f6f4d616e795369676e61746f72696573000404ac54686572652061726520746f6f206d616e79207369676e61746f7269657320696e20746865206c6973742e545369676e61746f726965734f75744f664f726465720005040d01546865207369676e61746f7269657320776572652070726f7669646564206f7574206f66206f726465723b20746865792073686f756c64206265206f7264657265642e4c53656e646572496e5369676e61746f726965730006040d015468652073656e6465722077617320636f6e7461696e656420696e20746865206f74686572207369676e61746f726965733b2069742073686f756c646e27742062652e204e6f74466f756e64000704dc4d756c7469736967206f7065726174696f6e206e6f7420666f756e64207768656e20617474656d7074696e6720746f2063616e63656c2e204e6f744f776e65720008042d014f6e6c7920746865206163636f756e742074686174206f726967696e616c6c79206372656174656420746865206d756c74697369672069732061626c6520746f2063616e63656c2069742e2c4e6f54696d65706f696e740009041d014e6f2074696d65706f696e742077617320676976656e2c2079657420746865206d756c7469736967206f7065726174696f6e20697320616c726561647920756e6465727761792e3857726f6e6754696d65706f696e74000a042d014120646966666572656e742074696d65706f696e742077617320676976656e20746f20746865206d756c7469736967206f7065726174696f6e207468617420697320756e6465727761792e4c556e657870656374656454696d65706f696e74000b04f4412074696d65706f696e742077617320676976656e2c20796574206e6f206d756c7469736967206f7065726174696f6e20697320756e6465727761792e3c4d6178576569676874546f6f4c6f77000c04d0546865206d6178696d756d2077656967687420696e666f726d6174696f6e2070726f76696465642077617320746f6f206c6f772e34416c726561647953746f726564000d04a0546865206461746120746f2062652073746f72656420697320616c72656164792073746f7265642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090979060c1463747970652c63747970655f656e747279284374797065456e747279081c43726561746f7201002c426c6f636b4e756d62657201100008011c63726561746f7200011c43726561746f72000128637265617465645f617410012c426c6f636b4e756d62657200007d060c1463747970651870616c6c6574144572726f7204045400010c204e6f74466f756e64000004985468657265206973206e6f20435479706520776974682074686520676976656e20686173682e34416c72656164794578697374730001046454686520435479706520616c7265616479206578697374732e3c556e61626c65546f506179466565730002040d0154686520706179696e67206163636f756e742077617320756e61626c6520746f2070617920746865206665657320666f72206372656174696e6720612063747970652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090981060c2c6174746573746174696f6e306174746573746174696f6e73484174746573746174696f6e44657461696c731424437479706548617368012c284174746573746572496401003c417574686f72697a6174696f6e4964010101244163636f756e74496401001c42616c616e636501180014012863747970655f686173682c0124437479706548617368000120617474657374657200012841747465737465724964000140617574686f72697a6174696f6e5f6964fc015c4f7074696f6e3c417574686f72697a6174696f6e49643e00011c7265766f6b6564a80110626f6f6c00011c6465706f7369748506016c4465706f7369743c4163636f756e7449642c2042616c616e63653e000085060c306b696c745f737570706f72741c6465706f7369741c4465706f736974081c4163636f756e7401001c42616c616e63650118000801146f776e657200011c4163636f756e74000118616d6f756e7418011c42616c616e6365000089060000040801012c008d060c2c6174746573746174696f6e1870616c6c6574144572726f720404540001183c416c726561647941747465737465640000080901546865726520697320616c726561647920616e206174746573746174696f6e2077697468207468652073616d6520636c61696d20686173682073746f726564206f6e18636861696e2e38416c72656164795265766f6b6564000104a4546865206174746573746174696f6e2068617320616c7265616479206265656e207265766f6b65642e204e6f74466f756e64000204c04e6f206174746573746174696f6e206f6e20636861696e206d61746368696e672074686520636c61696d20686173682e3443547970654d69736d61746368000308fc546865206174746573746174696f6e20435479706520646f6573206e6f74206d61746368207468652043547970652073706563696669656420696e207468656864656c65676174696f6e2068696572617263687920726f6f742e344e6f74417574686f72697a6564000404f05468652063616c6c206f726967696e206973206e6f7420617574686f72697a656420746f206368616e676520746865206174746573746174696f6e2e804d617844656c6567617465644174746573746174696f6e73457863656564656400050cf4546865206d6178696d756d206e756d626572206f662064656c656761746564206174746573746174696f6e732068617320616c7265616479206265656e05017265616368656420666f722074686520636f72726573706f6e64696e672064656c65676174696f6e2069642073756368207468617420616e6f74686572206f6e654063616e6e6f742062652061646465642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090991060c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368793844656c65676174696f6e4e6f6465144044656c65676174696f6e4e6f64654964012c2c4d61784368696c6472656e0195064444656c65676174696f6e44657461696c73019906244163636f756e74496401001c42616c616e63650118001401446869657261726368795f726f6f745f69642c014044656c65676174696f6e4e6f64654964000118706172656e74c50301604f7074696f6e3c44656c65676174696f6e4e6f646549643e0001206368696c6472656e9d0601b8426f756e64656442547265655365743c44656c65676174696f6e4e6f646549642c204d61784368696c6472656e3e00011c64657461696c739906014444656c65676174696f6e44657461696c7300011c6465706f7369748506016c4465706f7369743c4163636f756e7449642c2042616c616e63653e00009506103872756e74696d655f636f6d6d6f6e24636f6e7374616e74732864656c65676174696f6e2c4d61784368696c6472656e0000000099060c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368794444656c65676174696f6e44657461696c73042c44656c656761746f7249640100000c01146f776e657200012c44656c656761746f72496400011c7265766f6b6564a80110626f6f6c00012c7065726d697373696f6e730901012c5065726d697373696f6e7300009d060c4c626f756e6465645f636f6c6c656374696f6e7344626f756e6465645f62747265655f7365743c426f756e6465644254726565536574080454012c045300000400a106012c42547265655365743c543e0000a10604204254726565536574040454012c0004008d02000000a5060c2864656c65676174696f6e5064656c65676174696f6e5f6869657261726368796844656c65676174696f6e48696572617263687944657461696c730424437479706548617368012c0004012863747970655f686173682c01244374797065486173680000a9060c2864656c65676174696f6e1870616c6c6574144572726f720404540001585c44656c65676174696f6e416c72656164794578697374730000041101546865726520697320616c726561647920612064656c65676174696f6e206e6f64652077697468207468652073616d652049442073746f726564206f6e20636861696e2e60496e76616c696444656c65676174655369676e617475726500010805015468652064656c65676174652773207369676e617475726520666f72207468652064656c65676174696f6e206372656174696f6e206f7065726174696f6e20697320696e76616c69642e4844656c65676174696f6e4e6f74466f756e64000204c04e6f2064656c65676174696f6e20776974682074686520676976656e2049442073746f726564206f6e20636861696e2e4044656c65676174654e6f74466f756e64000304b84e6f2064656c656761746520776974682074686520676976656e2049442073746f726564206f6e20636861696e2e58486965726172636879416c7265616479457869737473000404f8546865726520697320616c72656164792061206869657261726368792077697468207468652073616d652049442073746f726564206f6e20636861696e2e444869657261726368794e6f74466f756e64000504bc4e6f2068696572617263687920776974682074686520676976656e2049442073746f726564206f6e20636861696e2e544d617853656172636844657074685265616368656400060409014d6178206e756d626572206f66206e6f64657320636865636b656420776974686f757420766572696679696e672074686520676976656e20636f6e646974696f6e2e684e6f744f776e65724f66506172656e7444656c65676174696f6e000708f45468652064656c65676174696f6e2063726561746f72206973206e6f7420616c6c6f77656420746f207772697465207468652064656c65676174696f6ef462656361757365207468657920617265206e6f7420746865206f776e6572206f66207468652064656c65676174696f6e20706172656e74206e6f64652e744e6f744f776e65724f6644656c65676174696f6e486965726172636879000808f45468652064656c65676174696f6e2063726561746f72206973206e6f7420616c6c6f77656420746f207772697465207468652064656c65676174696f6eec62656361757365207468657920617265206e6f7420746865206f776e6572206f66207468652064656c65676174696f6e20726f6f74206e6f64652e60506172656e7444656c65676174696f6e4e6f74466f756e64000904dc4e6f20706172656e742064656c65676174696f6e20776974682074686520676976656e2049442073746f726564206f6e20636861696e2e5c506172656e7444656c65676174696f6e5265766f6b6564000a04c854686520706172656e742064656c65676174696f6e206861732070726576696f75736c79206265656e207265766f6b65642e58556e617574686f72697a65645265766f636174696f6e000b04fc5468652064656c65676174696f6e207265766f6b6572206973206e6f7420616c6c6f77656420746f207265766f6b65207468652064656c65676174696f6e2e4c556e617574686f72697a656452656d6f76616c000c04ec5468652063616c6c206f726967696e206973206e6f7420617574686f72697a656420746f2072656d6f7665207468652064656c65676174696f6e2e58556e617574686f72697a656444656c65676174696f6e000d04fc5468652064656c65676174696f6e2063726561746f72206973206e6f7420616c6c6f77656420746f20637265617465207468652064656c65676174696f6e2e3041636365737344656e696564000e04f0546865206f7065726174696f6e207761736e277420616c6c6f7765642062656361757365206f6620696e73756666696369656e74207269676874732e6045786365656465645265766f636174696f6e426f756e6473000f080d014d6178206e756d626572206f66207265766f636174696f6e7320666f722064656c65676174696f6e206e6f64657320686173206265656e207265616368656420666f7238746865206f7065726174696f6e2e54457863656564656452656d6f76616c426f756e647300100811014d6178206e756d626572206f662072656d6f76616c7320666f722064656c65676174696f6e206e6f64657320686173206265656e207265616368656420666f7220746865286f7065726174696f6e2e584d61785265766f636174696f6e73546f6f4c61726765001104f8546865206d6178206e756d626572206f66207265766f636174696f6e206578636565647320746865206c696d697420666f72207468652070616c6c65742e4c4d617852656d6f76616c73546f6f4c61726765001204f0546865206d6178206e756d626572206f662072656d6f76616c73206578636565647320746865206c696d697420666f72207468652070616c6c65742e5c4d6178506172656e74436865636b73546f6f4c617267650013040501546865206d6178206e756d626572206f6620706172656e7420636865636b73206578636565647320746865206c696d697420666f72207468652070616c6c65742e20496e7465726e616c001404f4416e206572726f722074686174206973206e6f7420737570706f73656420746f2074616b6520706c6163652c207965742069742068617070656e65642e4c4d61784368696c6472656e4578636565646564001508dc546865206d6178206e756d626572206f6620616c6c206368696c6472656e20686173206265656e207265616368656420666f722074686578636f72726573706f6e64696e672064656c65676174696f6e206e6f64652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909ad060c0c6469642c6469645f64657461696c732844696444657461696c7304045400001c014861757468656e7469636174696f6e5f6b65792c01284b657949644f663c543e0001486b65795f61677265656d656e745f6b657973b10601684469644b657941677265656d656e744b65795365744f663c543e00013864656c65676174696f6e5f6b6579c50301484f7074696f6e3c4b657949644f663c543e3e00013c6174746573746174696f6e5f6b6579c50301484f7074696f6e3c4b657949644f663c543e3e00012c7075626c69635f6b657973b50601504469645075626c69634b65794d61704f663c543e00013c6c6173745f74785f636f756e74657210010c75363400011c6465706f736974850601944465706f7369743c4163636f756e7449644f663c543e2c2042616c616e63654f663c543e3e0000b1060c4c626f756e6465645f636f6c6c656374696f6e7344626f756e6465645f62747265655f7365743c426f756e6465644254726565536574080454012c045300000400a106012c42547265655365743c543e0000b5060c4c626f756e6465645f636f6c6c656374696f6e7344626f756e6465645f62747265655f6d61703c426f756e64656442547265654d61700c044b012c045601b906045300000400c106013842547265654d61703c4b2c20563e0000b9060c0c6469642c6469645f64657461696c734c4469645075626c69634b657944657461696c73042c426c6f636b4e756d62657201100008010c6b6579bd0601304469645075626c69634b6579000130626c6f636b5f6e756d62657210012c426c6f636b4e756d6265720000bd060c0c6469642c6469645f64657461696c73304469645075626c69634b6579000108545075626c6963566572696669636174696f6e4b65790400ad040148446964566572696669636174696f6e4b65790000004c5075626c6963456e6372797074696f6e4b657904009d040140446964456e6372797074696f6e4b657900010000c106042042547265654d617008044b012c045601b906000400c506000000c506000002c90600c906000004082cb90600cd0600000408007d0400d1060c0c6469641870616c6c6574144572726f7204045400016c58496e76616c69645369676e6174757265466f726d6174000008050154686520444944206f7065726174696f6e207369676e6174757265206973206e6f7420696e2074686520666f726d61742074686520766572696669636174696f6e306b657920657870656374732e40496e76616c69645369676e6174757265000108f854686520444944206f7065726174696f6e207369676e617475726520697320696e76616c696420666f7220746865207061796c6f616420616e642074686568766572696669636174696f6e206b65792070726f76696465642e34416c7265616479457869737473000204f85468652044494420776974682074686520676976656e206964656e74696669657220697320616c72656164792070726573656e74206f6e20636861696e2e204e6f74466f756e64000304d44e6f2044494420776974682074686520676976656e206964656e7469666965722069732070726573656e74206f6e20636861696e2e5c566572696669636174696f6e4b65794e6f74466f756e6400040809014f6e65206f72206d6f726520766572696669636174696f6e206b657973207265666572656e63656420617265206e6f742073746f72656420696e2074686520736574546f6620766572696669636174696f6e206b6579732e30496e76616c69644e6f6e6365000504090154686520444944206f7065726174696f6e206e6f6e6365206973206e6f7420657175616c20746f207468652063757272656e7420444944206e6f6e6365202b20312e7c556e737570706f72746564446964417574686f72697a6174696f6e43616c6c000604e05468652063616c6c65642065787472696e73696320646f6573206e6f7420737570706f72742044494420617574686f7269736174696f6e2e6c496e76616c6964446964417574686f72697a6174696f6e43616c6c000708dc5468652063616c6c2068616420706172616d6574657273207468617420636f6e666c696374656420776974682065616368206f74686572406f72207765726520696e76616c69642e8c4d61784e65774b657941677265656d656e744b6579734c696d697445786365656465640008080d0141206e756d626572206f66206e6577206b65792061677265656d656e74206b6579732067726561746572207468616e20746865206d6178696d756d20616c6c6f77656448686173206265656e2070726f76696465642e544d61785075626c69634b65797345786365656465640009080501546865206d6178696d756d206e756d626572206f66207075626c6963206b65797320666f72207468697320444944206b6579206964656e74696669657220686173346265656e20726561636865642e6c4d61784b657941677265656d656e744b6579734578636565646564000a080501546865206d6178696d756d206e756d626572206f66206b65792061677265656d656e747320686173206265656e207265616368656420666f722074686520444944207375626a6563742e304261644469644f726967696e000b04bc546865204449442063616c6c20776173207375626d6974746564206279207468652077726f6e67206163636f756e74485472616e73616374696f6e45787069726564000c040d0154686520626c6f636b206e756d6265722070726f766964656420696e2061204449442d617574686f72697a6564206f7065726174696f6e20697320696e76616c69642e38416c726561647944656c65746564000d04b0546865204449442068617320616c7265616479206265656e2070726576696f75736c792064656c657465642e444e6f744f776e65724f664465706f736974000e04fc4f6e6c7920746865206f776e6572206f6620746865206465706f7369742063616e207265636c61696d206974732072657365727665642062616c616e63652e3c556e61626c65546f50617946656573000f04f0546865206f726967696e20697320756e61626c6520746f207265736572766520746865206465706f73697420616e642070617920746865206665652e6c4d61784e756d6265724f66536572766963657345786365656465640010041101546865206d6178696d756d206e756d626572206f66207365727669636520656e64706f696e747320666f7220612044494420686173206265656e2065786365656465642e684d61785365727669636549644c656e6774684578636565646564001104f0546865207365727669636520656e64706f696e7420494420657863656564656420746865206d6178696d756d20616c6c6f776564206c656e6774682e704d617853657276696365547970654c656e6774684578636565646564001208f84f6e65206f6620746865207365727669636520656e64706f696e7420747970657320657863656564656420746865206d6178696d756d20616c6c6f7765641c6c656e6774682e884d61784e756d6265724f665479706573506572536572766963654578636565646564001308ec546865206d6178696d756d206e756d626572206f6620747970657320666f722061207365727669636520656e64706f696e7420686173206265656e2465786365656465642e6c4d61785365727669636555726c4c656e6774684578636565646564001408f44f6e65206f6620746865207365727669636520656e64706f696e742055524c7320657863656564656420746865206d6178696d756d20616c6c6f7765641c6c656e6774682e844d61784e756d6265724f6655726c735065725365727669636545786365656465640015041101546865206d6178696d756d206e756d626572206f662055524c7320666f722061207365727669636520656e64706f696e7420686173206265656e2065786365656465642e5053657276696365416c726561647945786973747300160411014120736572766963652077697468207468652070726f766964656420494420697320616c72656164792070726573656e7420666f722074686520676976656e204449442e3c536572766963654e6f74466f756e6400170409014120736572766963652077697468207468652070726f7669646564204944206973206e6f742070726573656e7420756e6465722074686520676976656e204449442e58496e76616c696453657276696365456e636f64696e6700180409014f6e65206f6620746865207365727669636520656e64706f696e742064657461696c7320636f6e7461696e73206e6f6e2d415343494920636861726163746572732e7c4d617853746f726564456e64706f696e7473436f756e7445786365656465640019080d01546865206e756d626572206f66207365727669636520656e64706f696e74732073746f72656420756e6465722074686520444944206973206c6172676572207468616e88746865206e756d626572206f6620656e64706f696e747320746f2064656c6574652e20496e7465726e616c001a04f4416e206572726f722074686174206973206e6f7420737570706f73656420746f2074616b6520706c6163652c207965742069742068617070656e65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909d5060c4470616c6c65745f6469645f6c6f6f6b757044636f6e6e656374696f6e5f7265636f726440436f6e6e656374696f6e5265636f72640c344469644964656e74696669657201001c4163636f756e7401001c42616c616e636501180008010c6469640001344469644964656e74696669657200011c6465706f736974850601644465706f7369743c4163636f756e742c2042616c616e63653e0000d9060000040800150100dd060c4470616c6c65745f6469645f6c6f6f6b75701870616c6c6574144572726f72040454000114204e6f74466f756e640000047c546865206173736f63696174696f6e20646f6573206e6f742065786973742e344e6f74417574686f72697a65640001081101546865206f726967696e20776173206e6f7420616c6c6f77656420746f206d616e61676520746865206173736f63696174696f6e206265747765656e20746865204449444c616e6420746865206163636f756e742049442e344f7574646174656450726f6f66000204b454686520737570706c6965642070726f6f66206f66206f776e65727368697020776173206f757464617465642e44496e73756666696369656e7446756e64730003081101546865206163636f756e742068617320696e73756666696369656e742066756e647320616e642063616e277420706179207468652066656573206f72207265736572766530746865206465706f7369742e244d6967726174696f6e00040c010154686520436f6e6e65637465644163636f756e747320616e6420436f6e6e6563746564446964732073746f7261676520617265206f7574206f662073796e632e0011014e4f54453a20746869732077696c6c206f6e6c792062652072657475726e6564206966207468652073746f726167652068617320696e636f6e73697374656e636965732e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909e1060c4470616c6c65745f776562335f6e616d657324776562335f6e616d6544576562334e616d654f776e6572736869700c144f776e657201001c4465706f7369740185062c426c6f636b4e756d6265720110000c01146f776e65720001144f776e6572000128636c61696d65645f617410012c426c6f636b4e756d62657200011c6465706f7369748506011c4465706f7369740000e5060c4470616c6c65745f776562335f6e616d65731870616c6c6574144572726f7204045400013044496e73756666696369656e7446756e64730000040d01546865207478207375626d697474657220646f6573206e6f74206861766520656e6f7567682066756e647320746f2070617920666f7220746865206465706f7369742e34416c7265616479457869737473000104dc54686520737065636966696564206e616d652068617320616c7265616479206265656e2070726576696f75736c7920636c61696d65642e204e6f74466f756e640002048854686520737065636966696564206e616d6520646f6573206e6f742065786973742e484f776e6572416c7265616479457869737473000304a054686520737065636966696564206f776e657220616c7265616479206f776e732061206e616d652e344f776e65724e6f74466f756e64000404ac54686520737065636966696564206f776e657220646f6573206e6f74206f776e20616e79206e616d65732e1842616e6e6564000508ec54686520737065636966696564206e616d6520686173206265656e2062616e6e656420616e642063616e6e6f7420626520696e746572616374656414776974682e244e6f7442616e6e6564000604ac54686520737065636966696564206e616d65206973206e6f742063757272656e746c792062616e6e65642e34416c726561647942616e6e6564000704d854686520737065636966696564206e616d652068617320616c7265616479206265656e2070726576696f75736c792062616e6e65642e344e6f74417574686f72697a6564000804cc546865206163746f722063616e6e6f7420706572666f726d65642074686520737065636966696564206f7065726174696f6e2e20546f6f53686f7274000904a841206e616d65207468617420697320746f6f2073686f7274206973206265696e6720636c61696d65642e1c546f6f4c6f6e67000a04a441206e616d65207468617420697320746f6f206c6f6e67206973206265696e6720636c61696d65642e40496e76616c6964436861726163746572000b04f441206e616d65207468617420636f6e7461696e73206e6f7420616c6c6f7765642063686172616374657273206973206265696e6720636c61696d65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909e9060000040831012c00ed060c487075626c69635f63726564656e7469616c732c63726564656e7469616c733c43726564656e7469616c456e7472791824435479706548617368012c20417474657374657201002c426c6f636b4e756d6265720110244163636f756e74496401001c42616c616e636501183c417574686f72697a6174696f6e49640101010018012863747970655f686173682c01244354797065486173680001206174746573746572000120417474657374657200011c7265766f6b6564a80110626f6f6c000130626c6f636b5f6e756d62657210012c426c6f636b4e756d62657200011c6465706f7369748506016c4465706f7369743c4163636f756e7449642c2042616c616e63653e000140617574686f72697a6174696f6e5f6964fc015c4f7074696f6e3c417574686f72697a6174696f6e49643e0000f1060c487075626c69635f63726564656e7469616c731870616c6c6574144572726f720404540001183c416c72656164794174746573746564000008f8412063726564656e7469616c2077697468207468652073616d6520726f6f7420686173682068617320616c72656164792069737375656420746f2074686548737065636966696564207375626a6563742e204e6f74466f756e6400010805014e6f2063726564656e7469616c2077697468207468652073706563696669656420726f6f74206861736820686173206265656e2069737375656420746f2074686548737065636966696564207375626a6563742e3c556e61626c65546f50617946656573000204d44e6f7420656e6f75676820746f6b656e7320746f2070617920666f72207468652066656573206f7220746865206465706f7369742e30496e76616c6964496e707574000304805468652063726564656e7469616c20696e70757420697320696e76616c69642e344e6f74417574686f72697a6564000404e05468652063616c6c6572206973206e6f7420617574686f72697a656420746f20706572666f726d656420746865206f7065726174696f6e2e20496e7465726e616c000508f443617463682d616c6c20666f7220616e79206f74686572206572726f727320746861742073686f756c64206e6f742068617070656e2c207965742069742468617070656e65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a090909f50604184f7074696f6e04045401f9060108104e6f6e6500000010536f6d650400f9060000010000f9060c4c706f6c6b61646f745f7072696d69746976657308763248557067726164655265737472696374696f6e0001041c50726573656e7400000000fd060c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d5072656c61795f73746174655f736e617073686f74584d6573736167696e675374617465536e617073686f740000100130646d715f6d71635f686561642c014472656c61795f636861696e3a3a4861736800016472656c61795f64697370617463685f71756575655f73697a6501070128287533322c2075333229000140696e67726573735f6368616e6e656c73050701885665633c285061726149642c20416272696467656448726d704368616e6e656c293e00013c6567726573735f6368616e6e656c73050701885665633c285061726149642c20416272696467656448726d704368616e6e656c293e00000107000004081c1c000507000002090700090700000408a9010d07000d070c4c706f6c6b61646f745f7072696d6974697665730876324c416272696467656448726d704368616e6e656c00001801306d61785f63617061636974791c010c7533320001386d61785f746f74616c5f73697a651c010c7533320001406d61785f6d6573736167655f73697a651c010c7533320001246d73675f636f756e741c010c753332000128746f74616c5f73697a651c010c7533320001206d71635f68656164c50301304f7074696f6e3c486173683e000011070c4c706f6c6b61646f745f7072696d697469766573087632644162726964676564486f7374436f6e66696775726174696f6e00002401346d61785f636f64655f73697a651c010c7533320001486d61785f686561645f646174615f73697a651c010c7533320001586d61785f7570776172645f71756575655f636f756e741c010c7533320001546d61785f7570776172645f71756575655f73697a651c010c75333200015c6d61785f7570776172645f6d6573736167655f73697a651c010c7533320001906d61785f7570776172645f6d6573736167655f6e756d5f7065725f63616e6469646174651c010c75333200018868726d705f6d61785f6d6573736167655f6e756d5f7065725f63616e6469646174651c010c75333200016c76616c69646174696f6e5f757067726164655f636f6f6c646f776e1c012c426c6f636b4e756d62657200016076616c69646174696f6e5f757067726164655f64656c61791c012c426c6f636b4e756d62657200001507089463756d756c75735f7072696d6974697665735f70617261636861696e5f696e686572656e74444d6573736167655175657565436861696e000004002c012452656c61794861736800001907042042547265654d617008044b01a90104560115070004001d070000001d07000002210700210700000408a901150700250700000229070029070860706f6c6b61646f745f636f72655f7072696d6974697665734c4f7574626f756e6448726d704d6573736167650408496401a90100080124726563697069656e74a901010849640001106461746130015073705f7374643a3a7665633a3a5665633c75383e00002d07087c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d60436f646555706772616465417574686f72697a6174696f6e0404540000080124636f64655f686173682c011c543a3a48617368000134636865636b5f76657273696f6ea80110626f6f6c000031070c7c63756d756c75735f70616c6c65745f70617261636861696e5f73797374656d1870616c6c6574144572726f720404540001204c4f7665726c617070696e6755706772616465730000041901417474656d707420746f20757067726164652076616c69646174696f6e2066756e6374696f6e207768696c65206578697374696e6720757067726164652070656e64696e672e5050726f686962697465644279506f6c6b61646f740001044d01506f6c6b61646f742063757272656e746c792070726f68696269747320746869732070617261636861696e2066726f6d20757067726164696e67206974732076616c69646174696f6e2066756e6374696f6e2e18546f6f426967000208450154686520737570706c6965642076616c69646174696f6e2066756e6374696f6e2068617320636f6d70696c656420696e746f206120626c6f62206c6172676572207468616e20506f6c6b61646f742069733c77696c6c696e6720746f2072756e2e6856616c69646174696f6e446174614e6f74417661696c61626c650003041d0154686520696e686572656e7420776869636820737570706c696573207468652076616c69646174696f6e206461746120646964206e6f742072756e207468697320626c6f636b2e74486f7374436f6e66696775726174696f6e4e6f74417661696c61626c65000404290154686520696e686572656e7420776869636820737570706c6965732074686520686f737420636f6e66696775726174696f6e20646964206e6f742072756e207468697320626c6f636b2e304e6f745363686564756c6564000504d84e6f2076616c69646174696f6e2066756e6374696f6e20757067726164652069732063757272656e746c79207363686564756c65642e444e6f7468696e67417574686f72697a6564000604904e6f20636f6465207570677261646520686173206265656e20617574686f72697a65642e30556e617574686f72697a6564000704bc54686520676976656e20636f6465207570677261646520686173206e6f74206265656e20617574686f72697a65642e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090935070000023907003907086463756d756c75735f70616c6c65745f78636d705f717565756554496e626f756e644368616e6e656c44657461696c7300000c011873656e646572a901011850617261496400011473746174653d070130496e626f756e6453746174650001406d6573736167655f6d65746164617461410701a85665633c2852656c6179426c6f636b4e756d6265722c2058636d704d657373616765466f726d6174293e00003d07086463756d756c75735f70616c6c65745f78636d705f717565756530496e626f756e645374617465000108084f6b0000002453757370656e6465640001000041070000024507004507000004081c49070049070c48706f6c6b61646f745f70617261636861696e287072696d6974697665734458636d704d657373616765466f726d617400010c60436f6e636174656e6174656456657273696f6e656458636d0000005c436f6e636174656e61746564456e636f646564426c6f620001001c5369676e616c73000200004d0700000408a9011c0051070000025507005507086463756d756c75735f70616c6c65745f78636d705f7175657565584f7574626f756e644368616e6e656c44657461696c730000140124726563697069656e74a90101185061726149640001147374617465590701344f7574626f756e6453746174650001347369676e616c735f6578697374a80110626f6f6c00012c66697273745f696e646578dc010c7531360001286c6173745f696e646578dc010c75313600005907086463756d756c75735f70616c6c65745f78636d705f7175657565344f7574626f756e645374617465000108084f6b0000002453757370656e646564000100005d0700000408a901dc006107086463756d756c75735f70616c6c65745f78636d705f71756575653c5175657565436f6e66696744617461000018014473757370656e645f7468726573686f6c641c010c75333200013864726f705f7468726573686f6c641c010c753332000140726573756d655f7468726573686f6c641c010c7533320001407468726573686f6c645f7765696768742401185765696768740001547765696768745f72657374726963745f646563617924011857656967687400016878636d705f6d61785f696e646976696475616c5f776569676874240118576569676874000065070000040ca9011c300069070c6463756d756c75735f70616c6c65745f78636d705f71756575651870616c6c6574144572726f72040454000114304661696c6564546f53656e640000046c4661696c656420746f2073656e642058434d206d6573736167652e3042616458636d4f726967696e0001043c4261642058434d206f726967696e2e1842616458636d000204344261642058434d20646174612e484261644f766572776569676874496e64657800030454426164206f76657277656967687420696e6465782e3c5765696768744f7665724c696d6974000404f850726f76696465642077656967687420697320706f737369626c79206e6f7420656e6f75676820746f206578656375746520746865206d6573736167652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909096d070c2870616c6c65745f78636d1870616c6c6574144572726f720404540001502c556e726561636861626c650000085d0154686520646573697265642064657374696e6174696f6e2077617320756e726561636861626c652c2067656e6572616c6c7920626563617573652074686572652069732061206e6f20776179206f6620726f7574696e6718746f2069742e2c53656e644661696c757265000108610154686572652077617320736f6d65206f746865722069737375652028692e652e206e6f7420746f20646f207769746820726f7574696e672920696e2073656e64696e6720746865206d6573736167652e2050657268617073a861206c61636b206f6620737061636520666f7220627566666572696e6720746865206d6573736167652e2046696c74657265640002049c546865206d65737361676520657865637574696f6e206661696c73207468652066696c7465722e48556e776569676861626c654d657373616765000304b4546865206d65737361676527732077656967687420636f756c64206e6f742062652064657465726d696e65642e6044657374696e6174696f6e4e6f74496e7665727469626c65000404f05468652064657374696e6174696f6e20604d756c74694c6f636174696f6e602070726f76696465642063616e6e6f7420626520696e7665727465642e14456d707479000504805468652061737365747320746f2062652073656e742061726520656d7074792e3843616e6e6f745265616e63686f720006043501436f756c64206e6f742072652d616e63686f72207468652061737365747320746f206465636c61726520746865206665657320666f72207468652064657374696e6174696f6e20636861696e2e34546f6f4d616e79417373657473000704c4546f6f206d616e79206173736574732068617665206265656e20617474656d7074656420666f72207472616e736665722e34496e76616c69644f726967696e000804784f726967696e20697320696e76616c696420666f722073656e64696e672e2842616456657273696f6e00090421015468652076657273696f6e206f6620746865206056657273696f6e6564602076616c75652075736564206973206e6f742061626c6520746f20626520696e7465727072657465642e2c4261644c6f636174696f6e000a08410154686520676976656e206c6f636174696f6e20636f756c64206e6f7420626520757365642028652e672e20626563617573652069742063616e6e6f742062652065787072657373656420696e2074686560646573697265642076657273696f6e206f662058434d292e384e6f537562736372697074696f6e000b04bc546865207265666572656e63656420737562736372697074696f6e20636f756c64206e6f7420626520666f756e642e44416c726561647953756273637269626564000c041101546865206c6f636174696f6e20697320696e76616c69642073696e636520697420616c726561647920686173206120737562736372697074696f6e2066726f6d2075732e30496e76616c69644173736574000d0480496e76616c696420617373657420666f7220746865206f7065726174696f6e2e284c6f7742616c616e6365000e044101546865206f776e657220646f6573206e6f74206f776e2028616c6c29206f662074686520617373657420746861742074686579207769736820746f20646f20746865206f7065726174696f6e206f6e2e30546f6f4d616e794c6f636b73000f04c0546865206173736574206f776e65722068617320746f6f206d616e79206c6f636b73206f6e207468652061737365742e4c4163636f756e744e6f74536f7665726569676e001004310154686520676976656e206163636f756e74206973206e6f7420616e206964656e7469666961626c6520736f7665726569676e206163636f756e7420666f7220616e79206c6f636174696f6e2e28466565734e6f744d65740011042901546865206f7065726174696f6e207265717569726564206665657320746f20626520706169642077686963682074686520696e69746961746f7220636f756c64206e6f74206d6565742e304c6f636b4e6f74466f756e64001204f4412072656d6f7465206c6f636b20776974682074686520636f72726573706f6e64696e67206461746120636f756c64206e6f7420626520666f756e642e14496e557365001304390154686520756e6c6f636b206f7065726174696f6e2063616e6e6f742073756363656564206265636175736520746865726520617265207374696c6c207573657273206f6620746865206c6f636b2e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a09090971070c4863756d756c75735f70616c6c65745f78636d1870616c6c6574144572726f7204045400010004b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909097507086063756d756c75735f70616c6c65745f646d705f717565756528436f6e6669674461746100000401386d61785f696e646976696475616c24011857656967687400007907086063756d756c75735f70616c6c65745f646d705f71756575653450616765496e6465784461746100000c0128626567696e5f757365641c012c50616765436f756e746572000120656e645f757365641c012c50616765436f756e7465720001406f7665727765696768745f636f756e7410013c4f766572776569676874496e64657800007d070000028107008107000004081c300085070c6063756d756c75735f70616c6c65745f646d705f71756575651870616c6c6574144572726f720404540001081c556e6b6e6f776e0000048c546865206d65737361676520696e64657820676976656e20697320756e6b6e6f776e2e244f7665724c696d6974000104310154686520616d6f756e74206f662077656967687420676976656e20697320706f737369626c79206e6f7420656e6f75676820666f7220657865637574696e6720746865206d6573736167652e04b5010a090909437573746f6d205b6469737061746368206572726f72735d2868747470733a2f2f646f63732e7375627374726174652e696f2f6d61696e2d646f63732f6275696c642f6576656e74732d6572726f72732f290a0909096f6620746869732070616c6c65742e0a0909098907102873705f72756e74696d651c67656e657269634c756e636865636b65645f65787472696e73696348556e636865636b656445787472696e736963101c4164647265737301e9021043616c6c01b503245369676e617475726501cd04144578747261018d07000400300000008d07000004209107950799079d07a107a907ad07b10700910710306672616d655f73797374656d28657874656e73696f6e7354636865636b5f6e6f6e5f7a65726f5f73656e64657248436865636b4e6f6e5a65726f53656e64657204045400000000950710306672616d655f73797374656d28657874656e73696f6e7348636865636b5f737065635f76657273696f6e40436865636b5370656356657273696f6e04045400000000990710306672616d655f73797374656d28657874656e73696f6e7340636865636b5f74785f76657273696f6e38436865636b547856657273696f6e040454000000009d0710306672616d655f73797374656d28657874656e73696f6e7334636865636b5f67656e6573697330436865636b47656e6573697304045400000000a10710306672616d655f73797374656d28657874656e73696f6e733c636865636b5f6d6f7274616c69747938436865636b4d6f7274616c69747904045400000400a507010c4572610000a507102873705f72756e74696d651c67656e657269630c6572610c4572610001010420496d6d6f7274616c0000001c4d6f7274616c31040008000001001c4d6f7274616c32040008000002001c4d6f7274616c33040008000003001c4d6f7274616c34040008000004001c4d6f7274616c35040008000005001c4d6f7274616c36040008000006001c4d6f7274616c37040008000007001c4d6f7274616c38040008000008001c4d6f7274616c3904000800000900204d6f7274616c313004000800000a00204d6f7274616c313104000800000b00204d6f7274616c313204000800000c00204d6f7274616c313304000800000d00204d6f7274616c313404000800000e00204d6f7274616c313504000800000f00204d6f7274616c313604000800001000204d6f7274616c313704000800001100204d6f7274616c313804000800001200204d6f7274616c313904000800001300204d6f7274616c323004000800001400204d6f7274616c323104000800001500204d6f7274616c323204000800001600204d6f7274616c323304000800001700204d6f7274616c323404000800001800204d6f7274616c323504000800001900204d6f7274616c323604000800001a00204d6f7274616c323704000800001b00204d6f7274616c323804000800001c00204d6f7274616c323904000800001d00204d6f7274616c333004000800001e00204d6f7274616c333104000800001f00204d6f7274616c333204000800002000204d6f7274616c333304000800002100204d6f7274616c333404000800002200204d6f7274616c333504000800002300204d6f7274616c333604000800002400204d6f7274616c333704000800002500204d6f7274616c333804000800002600204d6f7274616c333904000800002700204d6f7274616c343004000800002800204d6f7274616c343104000800002900204d6f7274616c343204000800002a00204d6f7274616c343304000800002b00204d6f7274616c343404000800002c00204d6f7274616c343504000800002d00204d6f7274616c343604000800002e00204d6f7274616c343704000800002f00204d6f7274616c343804000800003000204d6f7274616c343904000800003100204d6f7274616c353004000800003200204d6f7274616c353104000800003300204d6f7274616c353204000800003400204d6f7274616c353304000800003500204d6f7274616c353404000800003600204d6f7274616c353504000800003700204d6f7274616c353604000800003800204d6f7274616c353704000800003900204d6f7274616c353804000800003a00204d6f7274616c353904000800003b00204d6f7274616c363004000800003c00204d6f7274616c363104000800003d00204d6f7274616c363204000800003e00204d6f7274616c363304000800003f00204d6f7274616c363404000800004000204d6f7274616c363504000800004100204d6f7274616c363604000800004200204d6f7274616c363704000800004300204d6f7274616c363804000800004400204d6f7274616c363904000800004500204d6f7274616c373004000800004600204d6f7274616c373104000800004700204d6f7274616c373204000800004800204d6f7274616c373304000800004900204d6f7274616c373404000800004a00204d6f7274616c373504000800004b00204d6f7274616c373604000800004c00204d6f7274616c373704000800004d00204d6f7274616c373804000800004e00204d6f7274616c373904000800004f00204d6f7274616c383004000800005000204d6f7274616c383104000800005100204d6f7274616c383204000800005200204d6f7274616c383304000800005300204d6f7274616c383404000800005400204d6f7274616c383504000800005500204d6f7274616c383604000800005600204d6f7274616c383704000800005700204d6f7274616c383804000800005800204d6f7274616c383904000800005900204d6f7274616c393004000800005a00204d6f7274616c393104000800005b00204d6f7274616c393204000800005c00204d6f7274616c393304000800005d00204d6f7274616c393404000800005e00204d6f7274616c393504000800005f00204d6f7274616c393604000800006000204d6f7274616c393704000800006100204d6f7274616c393804000800006200204d6f7274616c393904000800006300244d6f7274616c31303004000800006400244d6f7274616c31303104000800006500244d6f7274616c31303204000800006600244d6f7274616c31303304000800006700244d6f7274616c31303404000800006800244d6f7274616c31303504000800006900244d6f7274616c31303604000800006a00244d6f7274616c31303704000800006b00244d6f7274616c31303804000800006c00244d6f7274616c31303904000800006d00244d6f7274616c31313004000800006e00244d6f7274616c31313104000800006f00244d6f7274616c31313204000800007000244d6f7274616c31313304000800007100244d6f7274616c31313404000800007200244d6f7274616c31313504000800007300244d6f7274616c31313604000800007400244d6f7274616c31313704000800007500244d6f7274616c31313804000800007600244d6f7274616c31313904000800007700244d6f7274616c31323004000800007800244d6f7274616c31323104000800007900244d6f7274616c31323204000800007a00244d6f7274616c31323304000800007b00244d6f7274616c31323404000800007c00244d6f7274616c31323504000800007d00244d6f7274616c31323604000800007e00244d6f7274616c31323704000800007f00244d6f7274616c31323804000800008000244d6f7274616c31323904000800008100244d6f7274616c31333004000800008200244d6f7274616c31333104000800008300244d6f7274616c31333204000800008400244d6f7274616c31333304000800008500244d6f7274616c31333404000800008600244d6f7274616c31333504000800008700244d6f7274616c31333604000800008800244d6f7274616c31333704000800008900244d6f7274616c31333804000800008a00244d6f7274616c31333904000800008b00244d6f7274616c31343004000800008c00244d6f7274616c31343104000800008d00244d6f7274616c31343204000800008e00244d6f7274616c31343304000800008f00244d6f7274616c31343404000800009000244d6f7274616c31343504000800009100244d6f7274616c31343604000800009200244d6f7274616c31343704000800009300244d6f7274616c31343804000800009400244d6f7274616c31343904000800009500244d6f7274616c31353004000800009600244d6f7274616c31353104000800009700244d6f7274616c31353204000800009800244d6f7274616c31353304000800009900244d6f7274616c31353404000800009a00244d6f7274616c31353504000800009b00244d6f7274616c31353604000800009c00244d6f7274616c31353704000800009d00244d6f7274616c31353804000800009e00244d6f7274616c31353904000800009f00244d6f7274616c3136300400080000a000244d6f7274616c3136310400080000a100244d6f7274616c3136320400080000a200244d6f7274616c3136330400080000a300244d6f7274616c3136340400080000a400244d6f7274616c3136350400080000a500244d6f7274616c3136360400080000a600244d6f7274616c3136370400080000a700244d6f7274616c3136380400080000a800244d6f7274616c3136390400080000a900244d6f7274616c3137300400080000aa00244d6f7274616c3137310400080000ab00244d6f7274616c3137320400080000ac00244d6f7274616c3137330400080000ad00244d6f7274616c3137340400080000ae00244d6f7274616c3137350400080000af00244d6f7274616c3137360400080000b000244d6f7274616c3137370400080000b100244d6f7274616c3137380400080000b200244d6f7274616c3137390400080000b300244d6f7274616c3138300400080000b400244d6f7274616c3138310400080000b500244d6f7274616c3138320400080000b600244d6f7274616c3138330400080000b700244d6f7274616c3138340400080000b800244d6f7274616c3138350400080000b900244d6f7274616c3138360400080000ba00244d6f7274616c3138370400080000bb00244d6f7274616c3138380400080000bc00244d6f7274616c3138390400080000bd00244d6f7274616c3139300400080000be00244d6f7274616c3139310400080000bf00244d6f7274616c3139320400080000c000244d6f7274616c3139330400080000c100244d6f7274616c3139340400080000c200244d6f7274616c3139350400080000c300244d6f7274616c3139360400080000c400244d6f7274616c3139370400080000c500244d6f7274616c3139380400080000c600244d6f7274616c3139390400080000c700244d6f7274616c3230300400080000c800244d6f7274616c3230310400080000c900244d6f7274616c3230320400080000ca00244d6f7274616c3230330400080000cb00244d6f7274616c3230340400080000cc00244d6f7274616c3230350400080000cd00244d6f7274616c3230360400080000ce00244d6f7274616c3230370400080000cf00244d6f7274616c3230380400080000d000244d6f7274616c3230390400080000d100244d6f7274616c3231300400080000d200244d6f7274616c3231310400080000d300244d6f7274616c3231320400080000d400244d6f7274616c3231330400080000d500244d6f7274616c3231340400080000d600244d6f7274616c3231350400080000d700244d6f7274616c3231360400080000d800244d6f7274616c3231370400080000d900244d6f7274616c3231380400080000da00244d6f7274616c3231390400080000db00244d6f7274616c3232300400080000dc00244d6f7274616c3232310400080000dd00244d6f7274616c3232320400080000de00244d6f7274616c3232330400080000df00244d6f7274616c3232340400080000e000244d6f7274616c3232350400080000e100244d6f7274616c3232360400080000e200244d6f7274616c3232370400080000e300244d6f7274616c3232380400080000e400244d6f7274616c3232390400080000e500244d6f7274616c3233300400080000e600244d6f7274616c3233310400080000e700244d6f7274616c3233320400080000e800244d6f7274616c3233330400080000e900244d6f7274616c3233340400080000ea00244d6f7274616c3233350400080000eb00244d6f7274616c3233360400080000ec00244d6f7274616c3233370400080000ed00244d6f7274616c3233380400080000ee00244d6f7274616c3233390400080000ef00244d6f7274616c3234300400080000f000244d6f7274616c3234310400080000f100244d6f7274616c3234320400080000f200244d6f7274616c3234330400080000f300244d6f7274616c3234340400080000f400244d6f7274616c3234350400080000f500244d6f7274616c3234360400080000f600244d6f7274616c3234370400080000f700244d6f7274616c3234380400080000f800244d6f7274616c3234390400080000f900244d6f7274616c3235300400080000fa00244d6f7274616c3235310400080000fb00244d6f7274616c3235320400080000fc00244d6f7274616c3235330400080000fd00244d6f7274616c3235340400080000fe00244d6f7274616c3235350400080000ff0000a90710306672616d655f73797374656d28657874656e73696f6e732c636865636b5f6e6f6e636528436865636b4e6f6e636504045400000400280120543a3a496e6465780000ad0710306672616d655f73797374656d28657874656e73696f6e7330636865636b5f7765696768742c436865636b57656967687404045400000000b107086870616c6c65745f7472616e73616374696f6e5f7061796d656e74604368617267655472616e73616374696f6e5061796d656e7404045400000400cd01013042616c616e63654f663c543e0000941853797374656d011853797374656d401c4163636f756e7401010402000c510100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004e8205468652066756c6c206163636f756e7420696e666f726d6174696f6e20666f72206120706172746963756c6172206163636f756e742049442e3845787472696e736963436f756e7400001c040004b820546f74616c2065787472696e7369637320636f756e7420666f72207468652063757272656e7420626c6f636b2e2c426c6f636b576569676874010020180000000000000488205468652063757272656e742077656967687420666f722074686520626c6f636b2e40416c6c45787472696e736963734c656e00001c040004410120546f74616c206c656e6774682028696e2062797465732920666f7220616c6c2065787472696e736963732070757420746f6765746865722c20666f72207468652063757272656e7420626c6f636b2e24426c6f636b4861736801010405102c8000000000000000000000000000000000000000000000000000000000000000000498204d6170206f6620626c6f636b206e756d6265727320746f20626c6f636b206861736865732e3445787472696e73696344617461010104051c300400043d012045787472696e73696373206461746120666f72207468652063757272656e7420626c6f636b20286d61707320616e2065787472696e736963277320696e64657820746f206974732064617461292e184e756d626572010010200000000000000000040901205468652063757272656e7420626c6f636b206e756d626572206265696e672070726f6365737365642e205365742062792060657865637574655f626c6f636b602e28506172656e744861736801002c80000000000000000000000000000000000000000000000000000000000000000004702048617368206f66207468652070726576696f757320626c6f636b2e18446967657374010034040004f020446967657374206f66207468652063757272656e7420626c6f636b2c20616c736f2070617274206f662074686520626c6f636b206865616465722e184576656e747301004404001ca0204576656e7473206465706f736974656420666f72207468652063757272656e7420626c6f636b2e001d01204e4f54453a20546865206974656d20697320756e626f756e6420616e642073686f756c64207468657265666f7265206e657665722062652072656164206f6e20636861696e2ed020497420636f756c64206f746865727769736520696e666c6174652074686520506f562073697a65206f66206120626c6f636b2e002d01204576656e747320686176652061206c6172676520696e2d6d656d6f72792073697a652e20426f7820746865206576656e747320746f206e6f7420676f206f75742d6f662d6d656d6f7279fc206a75737420696e206361736520736f6d656f6e65207374696c6c207265616473207468656d2066726f6d2077697468696e207468652072756e74696d652e284576656e74436f756e7401001c100000000004b820546865206e756d626572206f66206576656e747320696e2074686520604576656e74733c543e60206c6973742e2c4576656e74546f70696373010104022c91020400282501204d617070696e67206265747765656e206120746f7069632028726570726573656e74656420627920543a3a486173682920616e64206120766563746f72206f6620696e646578657394206f66206576656e747320696e2074686520603c4576656e74733c543e3e60206c6973742e00510120416c6c20746f70696320766563746f727320686176652064657465726d696e69737469632073746f72616765206c6f636174696f6e7320646570656e64696e67206f6e2074686520746f7069632e2054686973450120616c6c6f7773206c696768742d636c69656e747320746f206c6576657261676520746865206368616e67657320747269652073746f7261676520747261636b696e67206d656368616e69736d20616e64e420696e2063617365206f66206368616e67657320666574636820746865206c697374206f66206576656e7473206f6620696e7465726573742e004d01205468652076616c756520686173207468652074797065206028543a3a426c6f636b4e756d6265722c204576656e74496e646578296020626563617573652069662077652075736564206f6e6c79206a7573744d012074686520604576656e74496e64657860207468656e20696e20636173652069662074686520746f70696320686173207468652073616d6520636f6e74656e7473206f6e20746865206e65787420626c6f636b0101206e6f206e6f74696669636174696f6e2077696c6c20626520747269676765726564207468757320746865206576656e74206d69676874206265206c6f73742e484c61737452756e74696d65557067726164650000950204000455012053746f726573207468652060737065635f76657273696f6e6020616e642060737065635f6e616d6560206f66207768656e20746865206c6173742072756e74696d6520757067726164652068617070656e65642e545570677261646564546f553332526566436f756e740100a80400044d012054727565206966207765206861766520757067726164656420736f207468617420607479706520526566436f756e74602069732060753332602e2046616c7365202864656661756c7429206966206e6f742e605570677261646564546f547269706c65526566436f756e740100a80400085d012054727565206966207765206861766520757067726164656420736f2074686174204163636f756e74496e666f20636f6e7461696e73207468726565207479706573206f662060526566436f756e74602e2046616c736548202864656661756c7429206966206e6f742e38457865637574696f6e506861736500008902040004882054686520657865637574696f6e207068617365206f662074686520626c6f636b2e019d0201501830426c6f636b57656967687473ad026d01624fd75a00070088526a740200400102c0cd1700010700028fa54b0200d000010700e6bd4f570200f00001000002c0cd1700010700a423c0680200200101070088526a7402004001010700a2941a1d0200500002c0cd170000000004d020426c6f636b20262065787472696e7369637320776569676874733a20626173652076616c75657320616e64206c696d6974732e2c426c6f636b4c656e677468bd023000003c00000050000000500004a820546865206d6178696d756d206c656e677468206f66206120626c6f636b2028696e206279746573292e38426c6f636b48617368436f756e7410206009000000000000045501204d6178696d756d206e756d626572206f6620626c6f636b206e756d62657220746f20626c6f636b2068617368206d617070696e677320746f206b65657020286f6c64657374207072756e6564206669727374292e204462576569676874c50240089d26020000000000dce704000000000409012054686520776569676874206f662072756e74696d65206461746162617365206f7065726174696f6e73207468652072756e74696d652063616e20696e766f6b652e1c56657273696f6ec9026103386b696c742d7370697269746e6574386b696c742d7370697269746e6574010000005c2b00000000000038df6acb689907609b0400000037e397fc7c91f5e401000000bc9d89904f5b923f0100000037c8bb1350a9a2a803000000f3ff14d5ab5270590300000040fe3ad401f8959a06000000d2bc9897eed08f1503000000f78b278be53f454c02000000ab3c0572291feb8b01000000dd718d5cc53262d401000000ea93e3f16f3d69620200000026609555c065660302000000a47b7d544994c99b0100000045bfba51a310b2230100000007000000000484204765742074686520636861696e27732063757272656e742076657273696f6e2e2853533538507265666978dc08260014a8205468652064657369676e61746564205353353820707265666978206f66207468697320636861696e2e0039012054686973207265706c6163657320746865202273733538466f726d6174222070726f7065727479206465636c6172656420696e2074686520636861696e20737065632e20526561736f6e20697331012074686174207468652072756e74696d652073686f756c64206b6e6f772061626f7574207468652070726566697820696e206f7264657220746f206d616b6520757365206f662069742061737020616e206964656e746966696572206f662074686520636861696e2e01d902002454696d657374616d70012454696d657374616d70080c4e6f7701001020000000000000000004902043757272656e742074696d6520666f72207468652063757272656e7420626c6f636b2e244469645570646174650100a8040004b420446964207468652074696d657374616d7020676574207570646174656420696e207468697320626c6f636b3f01dd020004344d696e696d756d506572696f6410207017000000000000104d0120546865206d696e696d756d20706572696f64206265747765656e20626c6f636b732e204265776172652074686174207468697320697320646966666572656e7420746f20746865202a65787065637465642a5d0120706572696f6420746861742074686520626c6f636b2070726f64756374696f6e206170706172617475732070726f76696465732e20596f75722063686f73656e20636f6e73656e7375732073797374656d2077696c6c5d012067656e6572616c6c7920776f726b2077697468207468697320746f2064657465726d696e6520612073656e7369626c6520626c6f636b2074696d652e20652e672e20466f7220417572612c2069742077696c6c206265a020646f75626c65207468697320706572696f64206f6e2064656661756c742073657474696e67732e00021c496e6469636573011c496e646963657304204163636f756e74730001040210e1020400048820546865206c6f6f6b75702066726f6d20696e64657820746f206163636f756e742e01e5020174041c4465706f736974184000b47cf328350000000000000000000004ac20546865206465706f736974206e656564656420666f7220726573657276696e6720616e20696e6465782e01f102052042616c616e636573012042616c616e6365731434546f74616c49737375616e6365010018400000000000000000000000000000000004982054686520746f74616c20756e6974732069737375656420696e207468652073797374656d2e40496e61637469766549737375616e636501001840000000000000000000000000000000000409012054686520746f74616c20756e697473206f66206f75747374616e64696e672064656163746976617465642062616c616e636520696e207468652073797374656d2e1c4163636f756e74010104020014010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600901205468652042616c616e6365732070616c6c6574206578616d706c65206f662073746f72696e67207468652062616c616e6365206f6620616e206163636f756e742e00282023204578616d706c650034206060606e6f636f6d70696c65b02020696d706c2070616c6c65745f62616c616e6365733a3a436f6e66696720666f722052756e74696d65207b19022020202074797065204163636f756e7453746f7265203d2053746f726167654d61705368696d3c53656c663a3a4163636f756e743c52756e74696d653e2c206672616d655f73797374656d3a3a50726f76696465723c52756e74696d653e2c204163636f756e7449642c2053656c663a3a4163636f756e74446174613c42616c616e63653e3e0c20207d102060606000150120596f752063616e20616c736f2073746f7265207468652062616c616e6365206f6620616e206163636f756e7420696e20746865206053797374656d602070616c6c65742e00282023204578616d706c650034206060606e6f636f6d70696c65b02020696d706c2070616c6c65745f62616c616e6365733a3a436f6e66696720666f722052756e74696d65207b7420202074797065204163636f756e7453746f7265203d2053797374656d0c20207d102060606000510120427574207468697320636f6d657320776974682074726164656f6666732c2073746f72696e67206163636f756e742062616c616e63657320696e207468652073797374656d2070616c6c65742073746f7265736d0120606672616d655f73797374656d60206461746120616c6f6e677369646520746865206163636f756e74206461746120636f6e747261727920746f2073746f72696e67206163636f756e742062616c616e63657320696e207468652901206042616c616e636573602070616c6c65742c20776869636820757365732061206053746f726167654d61706020746f2073746f72652062616c616e6365732064617461206f6e6c792e4101204e4f54453a2054686973206973206f6e6c79207573656420696e207468652063617365207468617420746869732070616c6c6574206973207573656420746f2073746f72652062616c616e6365732e144c6f636b730101040200f502040008b820416e79206c6971756964697479206c6f636b73206f6e20736f6d65206163636f756e742062616c616e6365732e2501204e4f54453a2053686f756c64206f6e6c79206265206163636573736564207768656e2073657474696e672c206368616e67696e6720616e642066726565696e672061206c6f636b2e20526573657276657301010402000503040004a4204e616d6564207265736572766573206f6e20736f6d65206163636f756e742062616c616e6365732e01110301780c484578697374656e7469616c4465706f736974184000a0724e18090000000000000000000004d420546865206d696e696d756d20616d6f756e7420726571756972656420746f206b65657020616e206163636f756e74206f70656e2e204d61784c6f636b731c103200000008f420546865206d6178696d756d206e756d626572206f66206c6f636b7320746861742073686f756c64206578697374206f6e20616e206163636f756e742edc204e6f74207374726963746c7920656e666f726365642c20627574207573656420666f722077656967687420657374696d6174696f6e2e2c4d617852657365727665731c1032000000040d0120546865206d6178696d756d206e756d626572206f66206e616d656420726573657276657320746861742063616e206578697374206f6e20616e206163636f756e742e01150306485472616e73616374696f6e5061796d656e7401485472616e73616374696f6e5061796d656e7408444e6578744665654d756c7469706c6965720100190340000064a7b3b6e00d0000000000000000003853746f7261676556657273696f6e01001d0304000000018004604f7065726174696f6e616c4665654d756c7469706c696572080405545901204120666565206d756c6974706c69657220666f7220604f7065726174696f6e616c602065787472696e7369637320746f20636f6d7075746520227669727475616c207469702220746f20626f6f73742074686569722c20607072696f7269747960004d0120546869732076616c7565206973206d756c7469706c656420627920746865206066696e616c5f6665656020746f206f627461696e206120227669727475616c20746970222074686174206973206c61746572f420616464656420746f20612074697020636f6d706f6e656e7420696e20726567756c617220607072696f72697479602063616c63756c6174696f6e732e4d01204974206d65616e732074686174206120604e6f726d616c60207472616e73616374696f6e2063616e2066726f6e742d72756e20612073696d696c61726c792d73697a656420604f7065726174696f6e616c6041012065787472696e736963202877697468206e6f20746970292c20627920696e636c7564696e672061207469702076616c75652067726561746572207468616e20746865207669727475616c207469702e003c20606060727573742c69676e6f726540202f2f20466f7220604e6f726d616c608c206c6574207072696f72697479203d207072696f726974795f63616c6328746970293b0054202f2f20466f7220604f7065726174696f6e616c601101206c6574207669727475616c5f746970203d2028696e636c7573696f6e5f666565202b2074697029202a204f7065726174696f6e616c4665654d756c7469706c6965723bc4206c6574207072696f72697479203d207072696f726974795f63616c6328746970202b207669727475616c5f746970293b1020606060005101204e6f746520746861742073696e636520776520757365206066696e616c5f6665656020746865206d756c7469706c696572206170706c69657320616c736f20746f2074686520726567756c61722060746970605d012073656e74207769746820746865207472616e73616374696f6e2e20536f2c206e6f74206f6e6c7920646f657320746865207472616e73616374696f6e206765742061207072696f726974792062756d702062617365646101206f6e207468652060696e636c7573696f6e5f666565602c2062757420776520616c736f20616d706c6966792074686520696d70616374206f662074697073206170706c69656420746f20604f7065726174696f6e616c6038207472616e73616374696f6e732e00071041757261011041757261082c417574686f726974696573010021030400046c205468652063757272656e7420617574686f72697479207365742e2c43757272656e74536c6f74010031032000000000000000000c80205468652063757272656e7420736c6f74206f66207468697320626c6f636b2e009420546869732077696c6c2062652073657420696e20606f6e5f696e697469616c697a65602e00000000171c53657373696f6e011c53657373696f6e1c2856616c696461746f7273010035030400047c205468652063757272656e7420736574206f662076616c696461746f72732e3043757272656e74496e64657801001c100000000004782043757272656e7420696e646578206f66207468652073657373696f6e2e345175657565644368616e6765640100a8040008390120547275652069662074686520756e6465726c79696e672065636f6e6f6d6963206964656e746974696573206f7220776569676874696e6720626568696e64207468652076616c696461746f7273a420686173206368616e67656420696e20746865207175657565642076616c696461746f72207365742e285175657565644b657973010039030400083d012054686520717565756564206b65797320666f7220746865206e6578742073657373696f6e2e205768656e20746865206e6578742073657373696f6e20626567696e732c207468657365206b657973e02077696c6c206265207573656420746f2064657465726d696e65207468652076616c696461746f7227732073657373696f6e206b6579732e4844697361626c656456616c696461746f7273010045030400148020496e6469636573206f662064697361626c65642076616c696461746f72732e003d01205468652076656320697320616c77617973206b65707420736f7274656420736f20746861742077652063616e2066696e642077686574686572206120676976656e2076616c696461746f722069733d012064697361626c6564207573696e672062696e617279207365617263682e204974206765747320636c6561726564207768656e20606f6e5f73657373696f6e5f656e64696e67602072657475726e73642061206e657720736574206f66206964656e7469746965732e204e6578744b657973000104050041030400049c20546865206e6578742073657373696f6e206b65797320666f7220612076616c696461746f722e204b65794f776e657200010405490300040004090120546865206f776e6572206f662061206b65792e20546865206b65792069732074686520604b657954797065496460202b2074686520656e636f646564206b65792e015103018400015503164050617261636861696e5374616b696e67014050617261636861696e5374616b696e6740544d617853656c656374656443616e6469646174657301001c100000000004090120546865206d6178696d756d206e756d626572206f6620636f6c6c61746f722063616e646964617465732073656c6563746564206174206561636820726f756e642e14526f756e640100590350000000000000000000000000140000000000000004e82043757272656e7420726f756e64206e756d62657220616e64206e65787420726f756e64207363686564756c6564207472616e736974696f6e2e384c61737444656c65676174696f6e01010405005d03200000000000000000140d012044656c65676174696f6e20696e666f726d6174696f6e20666f7220746865206c61746573742073657373696f6e20696e20776869636820612064656c656761746f722c2064656c6567617465642e000501204974206d6170732066726f6d20616e206163636f756e7420746f20746865206e756d626572206f662064656c65676174696f6e7320696e20746865206c617374982073657373696f6e20696e2077686963682074686579202872652d2964656c6567617465642e3844656c656761746f7253746174650001040500610304000c802044656c65676174696f6e207374616b696e6720696e666f726d6174696f6e2e00cc204974206d6170732066726f6d20616e206163636f756e7420746f206974732064656c65676174696f6e2064657461696c732e3443616e646964617465506f6f6c00010405006503040010a420546865207374616b696e6720696e666f726d6174696f6e20666f7220612063616e6469646174652e00b0204974206d6170732066726f6d20616e206163636f756e7420746f2069747320696e666f726d6174696f6e2eb8204d6f72656f7665722c20697420636f756e747320746865206e756d626572206f662063616e646964617465732e5c436f756e746572466f7243616e646964617465506f6f6c01001c100000000004ac436f756e74657220666f72207468652072656c6174656420636f756e7465642073746f72616765206d617048546f74616c436f6c6c61746f725374616b650100790380000000000000000000000000000000000000000000000000000000000000000014f420546f74616c2066756e6473206c6f636b656420746f206261636b207468652063757272656e746c792073656c656374656420636f6c6c61746f72732ed0205468652073756d206f6620616c6c20636f6c6c61746f7220616e642074686569722064656c656761746f72207374616b65732e002101204e6f74653a20546865726520617265206d6f72652066756e6473206c6f636b656420627920746869732070616c6c65742c2073696e636520746865206261636b696e6720666f720901206e6f6e20636f6c6c6174696e672063616e64696461746573206973206e6f7420696e636c7564656420696e205b546f74616c436f6c6c61746f725374616b655d2e34546f7043616e6469646174657301007d03040028e82054686520636f6c6c61746f722063616e64696461746573207769746820746865206869676865737420616d6f756e74206f66207374616b652e00190120456163682074696d6520746865207374616b65206f66206120636f6c6c61746f7220697320696e637265617365642c20697420697320636865636b65642077686574686572050120746869732070757368657320616e6f746865722063616e646964617465206f7574206f6620746865206c6973742e205768656e20746865207374616b652069732101207265647563656420686f77657665722c206974206973206e6f7420636865636b656420696620616e6f746865722063616e64696461746520686173206d6f7265207374616b652c11012073696e6365207468697320776f756c64207265717569726520697465726174696e67206f7665722074686520656e74697265205b43616e646964617465506f6f6c5d2e001501205468657265206d75737420616c77617973206265206d6f72652063616e64696461746573207468616e205b4d617853656c656374656443616e646964617465735d20736f0d012074686174206120636f6c6c61746f722063616e2064726f70206f7574206f662074686520636f6c6c61746f7220736574206279207265647563696e672074686569721c207374616b652e3c496e666c6174696f6e436f6e66696701008503c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000046420496e666c6174696f6e20636f6e66696775726174696f6e2e24556e7374616b696e670101040500910304001088205468652066756e64732077616974696e6720746f20626520756e7374616b65642e001d01204974206d6170732066726f6d206163636f756e747320746f20616c6c207468652066756e64732061646472657373656420746f207468656d20696e20746865206675747572652020626c6f636b732e644d6178436f6c6c61746f7243616e6469646174655374616b65010018400000000000000000000000000000000004cc20546865206d6178696d756d20616d6f756e74206120636f6c6c61746f722063616e6469646174652063616e207374616b652e4c4c617374526577617264526564756374696f6e010010200000000000000000140d0120546865207965617220696e20776869636820746865206c617374206175746f6d6174696320726564756374696f6e206f66207468652072657761726420726174657328206f636375727265642e00250120497420737461727473206174207a65726f2061742067656e6573697320616e6420696e6372656d656e7473206279206f6e6520657665727920424c4f434b535f5045525f5945415234206d616e7920626c6f636b732e38426c6f636b73417574686f726564010104050010200000000000000000080d0120546865206e756d626572206f6620617574686f72656420626c6f636b7320666f7220636f6c6c61746f72732e20497420697320757064617465642076696120746865b020606e6f74655f617574686f726020686f6f6b207768656e20617574686f72696e67206120626c6f636b202e38426c6f636b73526577617264656401010405001020000000000000000024210120546865206e756d626572206f6620626c6f636b7320666f7220776869636820726577617264732068617665206265656e20636c61696d656420627920616e20616464726573732e00190120466f7220636f6c6c61746f72732c20746869732063616e206265206174206d6f737420426c6f636b73417574686f7265642e2049742069732075706461746564207768656ecc20696e6372656d656e74696e6720636f6c6c61746f7220726577617264732c20656974686572207768656e2063616c6c696e67e02060696e635f636f6c6c61746f725f7265776172647360206f72207570646174696e67207468652060496e666c6174696f6e496e666f602e00250120466f722064656c656761746f72732c20746869732063616e206265206174206d6f737420426c6f636b73417574686f726564206f662074686520636f6c6c61746f722e497420697305012075706461746564207768656e20696e6372656d656e74696e672064656c656761746f7220726577617264732c20656974686572207768656e2063616c6c696e67e42060696e635f64656c656761746f725f7265776172647360206f72207570646174696e67207468652060496e666c6174696f6e496e666f602e1c5265776172647301010405001840000000000000000000000000000000000c01012054686520616363756d756c61746564207265776172647320666f7220636f6c6c61746f722063616e6469646174657320616e642064656c656761746f72732e001101204974206d6170732066726f6d206163636f756e747320746f20746865697220746f74616c20726577617264732073696e636520746865206c617374207061796f75742e34466f7263654e6577526f756e640100a804000001a10301883c444d696e426c6f636b73506572526f756e6410202c0100000000000004d4204d696e696d756d206e756d626572206f6620626c6f636b732076616c69646174696f6e20726f756e64732063616e206c6173742e5444656661756c74426c6f636b73506572526f756e641020580200000000000008fc2044656661756c74206e756d626572206f6620626c6f636b732076616c69646174696f6e20726f756e6473206c6173742c2061732073657420696e207468655c2067656e6573697320636f6e66696775726174696f6e2e345374616b654475726174696f6e1020e0c40000000000000c0501204e756d626572206f6620626c6f636b7320666f7220776869636820756e7374616b65642062616c616e63652077696c6c207374696c6c206265206c6f636b6564f0206265666f72652069742063616e20626520756e6c6f636b6564206279206163746976656c792063616c6c696e67207468652065787472696e7369634c2060756e6c6f636b5f756e7374616b6564602e3845786974517565756544656c61791c1002000000080901204e756d626572206f6620726f756e6473206120636f6c6c61746f722068617320746f207374617920616374697665206166746572207375626d697474696e672061c4207265717565737420746f206c656176652074686520736574206f6620636f6c6c61746f722063616e646964617465732e304d696e436f6c6c61746f72731c1010000000080d01204d696e696d756d206e756d626572206f6620636f6c6c61746f72732073656c65637465642066726f6d2074686520736574206f662063616e64696461746573206174602065766572792076616c69646174696f6e20726f756e642e504d696e5265717569726564436f6c6c61746f72731c1004000000081101204d696e696d756d206e756d626572206f6620636f6c6c61746f72732077686963682063616e6e6f74206c6561766520746865206e6574776f726b2069662074686572653c20617265206e6f206f74686572732e584d617844656c65676174696f6e73506572526f756e641c1001000000140101204d6178696d756d206e756d626572206f662064656c65676174696f6e732077686963682063616e206265206d6164652077697468696e207468652073616d651c20726f756e642e000d01204e4f54453a20546f2070726576656e742072652d64656c65676174696f6e2d7265776172642061747461636b732c2077652073686f756c64206b65657020746869732c20746f206265206f6e652e604d617844656c656761746f7273506572436f6c6c61746f721c102300000004e4204d6178696d756d206e756d626572206f662064656c656761746f727320612073696e676c6520636f6c6c61746f722063616e20686176652e404d6178546f7043616e646964617465731c104b00000004a0204d6178696d756d2073697a65206f662074686520746f702063616e64696461746573207365742e404d696e436f6c6c61746f725374616b6518400000e8890423c78a0000000000000000080901204d696e696d756d207374616b6520726571756972656420666f7220616e79206163636f756e7420746f20626520656c65637465642061732076616c696461746f723420666f72206120726f756e642e644d696e436f6c6c61746f7243616e6469646174655374616b6518400000e8890423c78a0000000000000000080501204d696e696d756d207374616b6520726571756972656420666f7220616e79206163636f756e7420746f20626520616464656420746f2074686520736574206f66302063616e646964617465732e444d696e44656c656761746f725374616b651840000082dfe40d4700000000000000000004f8204d696e696d756d207374616b6520726571756972656420666f7220616e79206163636f756e7420746f206265636f6d6520612064656c656761746f722e484d6178556e7374616b6552657175657374731c100a00000028e8204d6178206e756d626572206f6620636f6e63757272656e742061637469766520756e7374616b696e67207265717565737473206265666f72652c20756e6c6f636b696e672e001501204e4f54453a20546f2070726f7465637420616761696e737420697272656d6f766162696c697479206f6620612063616e646964617465206f722064656c656761746f722cf4207765206f6e6c7920616c6c6f7720666f72204d6178556e7374616b655265717565737473202d2031206d616e79206d616e75616c20756e7374616b6501012072657175657374732e20546865206c617374206f6e6520736572766573206173206120706c616365686f6c64657220666f7220746865206361736573206f66f02063616c6c696e672065697468657220606b69636b5f64656c656761746f72602c20666f7263655f72656d6f76655f63616e64696461746560206f7209012060657865637574655f6c656176655f63616e64696461746573602e204f74686572776973652c2061207573657220636f756c64206d6178206f75742074686569720d0120756e7374616b6520726571756573747320616e642070726576656e74207468656d73656c7665732066726f6d206265696e67206b69636b65642066726f6d20746865f020736574206f662063616e646964617465732f64656c656761746f727320756e74696c207468657920756e6c6f636b2074686569722066756e64732e484e6574776f726b5265776172645374617274102048a3c800000000000c110120546865207374617274696e6720626c6f636b206e756d62657220666f7220746865206e6574776f726b20726577617264732e204f6e6365207468652063757272656e74090120626c6f636b206e756d626572206578636565647320746869732073746172742c207468652062656e65666963696172792077696c6c2072656365697665207468658420636f6e666967757265642072657761726420696e206561636820626c6f636b2e444e6574776f726b526577617264526174658c2000008a5d784563010c0d0120546865207261746520696e2070657263656e7420666f7220746865206e6574776f726b207265776172647320776869636820617265206261736564206f6e207468650901206d6178696d756d206e756d626572206f6620636f6c6c61746f727320616e6420746865206d6178696d756d20616d6f756e74206120636f6c6c61746f722063616e1c207374616b652e01a5031528417574686f72736869700128417574686f72736869700418417574686f720000000400046420417574686f72206f662063757272656e7420626c6f636b2e00000000141c41757261457874011c41757261457874042c417574686f72697469657301002103040014942053657276657320617320636163686520666f722074686520617574686f7269746965732e0071012054686520617574686f72697469657320696e204175526120617265206f7665727772697474656e20696e20606f6e5f696e697469616c697a6560207768656e2077652073776974636820746f2061206e65772073657373696f6e2c790120627574207765207265717569726520746865206f6c6420617574686f72697469657320746f2076657269667920746865207365616c207768656e2076616c69646174696e67206120506f562e20546869732077696c6c20616c77617973f0206265207570646174656420746f20746865206c6174657374204175526120617574686f72697469657320696e20606f6e5f66696e616c697a65602e00000000182444656d6f6372616379012444656d6f6372616379303c5075626c696350726f70436f756e7401001c100000000004f420546865206e756d626572206f6620287075626c6963292070726f706f73616c7320746861742068617665206265656e206d61646520736f206661722e2c5075626c696350726f70730100a903040004050120546865207075626c69632070726f706f73616c732e20556e736f727465642e20546865207365636f6e64206974656d206973207468652070726f706f73616c2e244465706f7369744f66000104051c7d0504000c842054686f73652077686f2068617665206c6f636b65642061206465706f7369742e00d82054574f582d4e4f54453a20536166652c20617320696e6372656173696e6720696e7465676572206b6579732061726520736166652e3c5265666572656e64756d436f756e7401001c100000000004310120546865206e6578742066726565207265666572656e64756d20696e6465782c20616b6120746865206e756d626572206f66207265666572656e6461207374617274656420736f206661722e344c6f77657374556e62616b656401001c100000000008250120546865206c6f77657374207265666572656e64756d20696e64657820726570726573656e74696e6720616e20756e62616b6564207265666572656e64756d2e20457175616c20746fdc20605265666572656e64756d436f756e74602069662074686572652069736e2774206120756e62616b6564207265666572656e64756d2e405265666572656e64756d496e666f4f66000104051c850504000cb420496e666f726d6174696f6e20636f6e6365726e696e6720616e7920676976656e207265666572656e64756d2e0009012054574f582d4e4f54453a205341464520617320696e646578657320617265206e6f7420756e64657220616e2061747461636b6572e280997320636f6e74726f6c2e20566f74696e674f6601010405009105e800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105d0120416c6c20766f74657320666f72206120706172746963756c617220766f7465722e2057652073746f7265207468652062616c616e636520666f7220746865206e756d626572206f6620766f74657320746861742077655d012068617665207265636f726465642e20546865207365636f6e64206974656d2069732074686520746f74616c20616d6f756e74206f662064656c65676174696f6e732c20746861742077696c6c2062652061646465642e00e82054574f582d4e4f54453a205341464520617320604163636f756e7449646073206172652063727970746f2068617368657320616e797761792e544c6173745461626c656457617345787465726e616c0100a80400085901205472756520696620746865206c617374207265666572656e64756d207461626c656420776173207375626d69747465642065787465726e616c6c792e2046616c7365206966206974207761732061207075626c6963282070726f706f73616c2e304e65787445787465726e616c0000a905040010590120546865207265666572656e64756d20746f206265207461626c6564207768656e6576657220697420776f756c642062652076616c696420746f207461626c6520616e2065787465726e616c2070726f706f73616c2e550120546869732068617070656e73207768656e2061207265666572656e64756d206e6565647320746f206265207461626c656420616e64206f6e65206f662074776f20636f6e646974696f6e7320617265206d65743aa4202d20604c6173745461626c656457617345787465726e616c60206973206066616c7365603b206f7268202d20605075626c696350726f70736020697320656d7074792e24426c61636b6c697374000104062cad0504000851012041207265636f7264206f662077686f207665746f656420776861742e204d6170732070726f706f73616c206861736820746f206120706f737369626c65206578697374656e7420626c6f636b206e756d626572e82028756e74696c207768656e206974206d6179206e6f742062652072657375626d69747465642920616e642077686f207665746f65642069742e3443616e63656c6c6174696f6e73010104062ca80400042901205265636f7264206f6620616c6c2070726f706f73616c7320746861742068617665206265656e207375626a65637420746f20656d657267656e63792063616e63656c6c6174696f6e2e284d657461646174614f6600010402a02c040018ec2047656e6572616c20696e666f726d6174696f6e20636f6e6365726e696e6720616e792070726f706f73616c206f72207265666572656e64756d2e6901205468652060507265696d61676548617368602072656665727320746f2074686520707265696d616765206f66207468652060507265696d61676573602070726f76696465722077686963682063616e2062652061204a534f4e882064756d70206f7220495046532068617368206f662061204a534f4e2066696c652e00750120436f6e73696465722061206761726261676520636f6c6c656374696f6e20666f722061206d65746164617461206f662066696e6973686564207265666572656e64756d7320746f2060756e7265717565737460202872656d6f76652944206c6172676520707265696d616765732e01b9030190303c456e6163746d656e74506572696f641020201c00000000000014e82054686520706572696f64206265747765656e20612070726f706f73616c206265696e6720617070726f76656420616e6420656e61637465642e0031012049742073686f756c642067656e6572616c6c792062652061206c6974746c65206d6f7265207468616e2074686520756e7374616b6520706572696f6420746f20656e737572652074686174510120766f74696e67207374616b657273206861766520616e206f70706f7274756e69747920746f2072656d6f7665207468656d73656c7665732066726f6d207468652073797374656d20696e207468652063617365b4207768657265207468657920617265206f6e20746865206c6f73696e672073696465206f66206120766f74652e304c61756e6368506572696f641020e0c400000000000004e420486f77206f6674656e2028696e20626c6f636b7329206e6577207075626c6963207265666572656e646120617265206c61756e636865642e30566f74696e67506572696f641020e0c400000000000004b820486f77206f6674656e2028696e20626c6f636b732920746f20636865636b20666f72206e657720766f7465732e44566f74654c6f636b696e67506572696f641020e0c4000000000000109020546865206d696e696d756d20706572696f64206f6620766f7465206c6f636b696e672e0065012049742073686f756c64206265206e6f2073686f72746572207468616e20656e6163746d656e7420706572696f6420746f20656e73757265207468617420696e207468652063617365206f6620616e20617070726f76616c2c49012074686f7365207375636365737366756c20766f7465727320617265206c6f636b656420696e746f2074686520636f6e73657175656e636573207468617420746865697220766f74657320656e7461696c2e384d696e696d756d4465706f73697418400080c6a47e8d0300000000000000000004350120546865206d696e696d756d20616d6f756e7420746f20626520757365642061732061206465706f73697420666f722061207075626c6963207265666572656e64756d2070726f706f73616c2e38496e7374616e74416c6c6f776564a804010c550120496e64696361746f7220666f72207768657468657220616e20656d657267656e6379206f726967696e206973206576656e20616c6c6f77656420746f2068617070656e2e20536f6d6520636861696e73206d617961012077616e7420746f207365742074686973207065726d616e656e746c7920746f206066616c7365602c206f7468657273206d61792077616e7420746f20636f6e646974696f6e206974206f6e207468696e67732073756368a020617320616e207570677261646520686176696e672068617070656e656420726563656e746c792e5446617374547261636b566f74696e67506572696f641020840300000000000004ec204d696e696d756d20766f74696e6720706572696f6420616c6c6f77656420666f72206120666173742d747261636b207265666572656e64756d2e34436f6f6c6f6666506572696f641020e0c400000000000004610120506572696f6420696e20626c6f636b7320776865726520616e2065787465726e616c2070726f706f73616c206d6179206e6f742062652072652d7375626d6974746564206166746572206265696e67207665746f65642e204d6178566f7465731c106400000010b020546865206d6178696d756d206e756d626572206f6620766f74657320666f7220616e206163636f756e742e00d420416c736f207573656420746f20636f6d70757465207765696768742c20616e206f7665726c79206269672076616c75652063616e1501206c65616420746f2065787472696e7369632077697468207665727920626967207765696768743a20736565206064656c65676174656020666f7220696e7374616e63652e304d617850726f706f73616c731c1064000000040d0120546865206d6178696d756d206e756d626572206f66207075626c69632070726f706f73616c7320746861742063616e20657869737420617420616e792074696d652e2c4d61784465706f736974731c1064000000041d0120546865206d6178696d756d206e756d626572206f66206465706f736974732061207075626c69632070726f706f73616c206d6179206861766520617420616e792074696d652e384d6178426c61636b6c69737465641c106400000004d820546865206d6178696d756d206e756d626572206f66206974656d732077686963682063616e20626520626c61636b6c69737465642e01b1051e1c436f756e63696c011c436f756e63696c182450726f706f73616c730100b505040004902054686520686173686573206f6620746865206163746976652070726f706f73616c732e2850726f706f73616c4f66000104062cb503040004cc2041637475616c2070726f706f73616c20666f72206120676976656e20686173682c20696620697427732063757272656e742e18566f74696e67000104062cb905040004b420566f746573206f6e206120676976656e2070726f706f73616c2c206966206974206973206f6e676f696e672e3450726f706f73616c436f756e7401001c100000000004482050726f706f73616c7320736f206661722e1c4d656d62657273010035030400043901205468652063757272656e74206d656d62657273206f662074686520636f6c6c6563746976652e20546869732069732073746f72656420736f7274656420286a7573742062792076616c7565292e145072696d65000000040004650120546865207072696d65206d656d62657220746861742068656c70732064657465726d696e65207468652064656661756c7420766f7465206265686176696f7220696e2063617365206f6620616273656e746174696f6e732e01c90301a40001bd051f48546563686e6963616c436f6d6d69747465650148546563686e6963616c436f6d6d6974746565182450726f706f73616c730100c105040004902054686520686173686573206f6620746865206163746976652070726f706f73616c732e2850726f706f73616c4f66000104062cb503040004cc2041637475616c2070726f706f73616c20666f72206120676976656e20686173682c20696620697427732063757272656e742e18566f74696e67000104062cb905040004b420566f746573206f6e206120676976656e2070726f706f73616c2c206966206974206973206f6e676f696e672e3450726f706f73616c436f756e7401001c100000000004482050726f706f73616c7320736f206661722e1c4d656d62657273010035030400043901205468652063757272656e74206d656d62657273206f662074686520636f6c6c6563746976652e20546869732069732073746f72656420736f7274656420286a7573742062792076616c7565292e145072696d65000000040004650120546865207072696d65206d656d62657220746861742068656c70732064657465726d696e65207468652064656661756c7420766f7465206265686176696f7220696e2063617365206f6620616273656e746174696f6e732e01d90301b40001c505204c546563686e6963616c4d656d62657273686970014c546563686e6963616c4d656d62657273686970081c4d656d626572730100c905040004c8205468652063757272656e74206d656d626572736869702c2073746f72656420617320616e206f726465726564205665632e145072696d65000000040004a4205468652063757272656e74207072696d65206d656d6265722c206966206f6e65206578697374732e01dd0301b80001cd052220547265617375727901205472656173757279103450726f706f73616c436f756e7401001c100000000004a4204e756d626572206f662070726f706f73616c7320746861742068617665206265656e206d6164652e2450726f706f73616c73000104051cd1050400047c2050726f706f73616c7320746861742068617665206265656e206d6164652e2c4465616374697661746564010018400000000000000000000000000000000004f02054686520616d6f756e7420776869636820686173206265656e207265706f7274656420617320696e61637469766520746f2043757272656e63792e24417070726f76616c730100d505040004f82050726f706f73616c20696e646963657320746861742068617665206265656e20617070726f76656420627574206e6f742079657420617761726465642e01e10301bc1c3050726f706f73616c426f6e64d9051050c30000085501204672616374696f6e206f6620612070726f706f73616c27732076616c756520746861742073686f756c6420626520626f6e64656420696e206f7264657220746f20706c616365207468652070726f706f73616c2e110120416e2061636365707465642070726f706f73616c2067657473207468657365206261636b2e20412072656a65637465642070726f706f73616c20646f6573206e6f742e4c50726f706f73616c426f6e644d696e696d756d1840000082dfe40d47000000000000000000044901204d696e696d756d20616d6f756e74206f662066756e647320746861742073686f756c6420626520706c6163656420696e2061206465706f73697420666f72206d616b696e6720612070726f706f73616c2e4c50726f706f73616c426f6e644d6178696d756ddd050400044901204d6178696d756d20616d6f756e74206f662066756e647320746861742073686f756c6420626520706c6163656420696e2061206465706f73697420666f72206d616b696e6720612070726f706f73616c2e2c5370656e64506572696f641020c0a8000000000000048820506572696f64206265747765656e2073756363657373697665207370656e64732e104275726ed90510000000000411012050657263656e74616765206f662073706172652066756e64732028696620616e7929207468617420617265206275726e7420706572207370656e6420706572696f642e2050616c6c65744964e105206b696c742f7473790419012054686520747265617375727927732070616c6c65742069642c207573656420666f72206465726976696e672069747320736f7665726569676e206163636f756e742049442e304d6178417070726f76616c731c10640000000c150120546865206d6178696d756d206e756d626572206f6620617070726f76616c7320746861742063616e207761697420696e20746865207370656e64696e672071756575652e004d01204e4f54453a205468697320706172616d6574657220697320616c736f20757365642077697468696e2074686520426f756e746965732050616c6c657420657874656e73696f6e20696620656e61626c65642e01e505231c5574696c6974790001e50301c0044c626174636865645f63616c6c735f6c696d69741c10aa2a000004a820546865206c696d6974206f6e20746865206e756d626572206f6620626174636865642063616c6c732e01e905281c56657374696e67011c56657374696e67081c56657374696e670001040200ed05040004d820496e666f726d6174696f6e20726567617264696e67207468652076657374696e67206f66206120676976656e206163636f756e742e3853746f7261676556657273696f6e0100f50504000c7c2053746f726167652076657273696f6e206f66207468652070616c6c65742e003101204e6577206e6574776f726b732073746172742077697468206c61746573742076657273696f6e2c2061732064657465726d696e6564206279207468652067656e65736973206275696c642e010d0401c408444d696e5665737465645472616e73666572184000407a10f35a0000000000000000000004e820546865206d696e696d756d20616d6f756e74207472616e7366657272656420746f2063616c6c20607665737465645f7472616e73666572602e4c4d617856657374696e675363686564756c65731c101c0000000001f90529245363686564756c657201245363686564756c65720c3c496e636f6d706c65746553696e6365000010040000184167656e64610101040510fd050400044d01204974656d7320746f2062652065786563757465642c20696e64657865642062792074686520626c6f636b206e756d626572207468617420746865792073686f756c64206265206578656375746564206f6e2e184c6f6f6b75700001040504cc040010f8204c6f6f6b75702066726f6d2061206e616d6520746f2074686520626c6f636b206e756d62657220616e6420696e646578206f6620746865207461736b2e00590120466f72207633202d3e207634207468652070726576696f75736c7920756e626f756e646564206964656e7469746965732061726520426c616b65322d3235362068617368656420746f20666f726d2074686520763430206964656e7469746965732e01150401c808344d6178696d756d57656967687424280700a0db215d0200000104290120546865206d6178696d756d207765696768742074686174206d6179206265207363686564756c65642070657220626c6f636b20666f7220616e7920646973706174636861626c65732e504d61785363686564756c6564506572426c6f636b1c1032000000041d0120546865206d6178696d756d206e756d626572206f66207363686564756c65642063616c6c7320696e2074686520717565756520666f7220612073696e676c6520626c6f636b2e010d062a1450726f7879011450726f7879081c50726f78696573010104050011064400000000000000000000000000000000000845012054686520736574206f66206163636f756e742070726f786965732e204d61707320746865206163636f756e74207768696368206861732064656c65676174656420746f20746865206163636f756e7473210120776869636820617265206265696e672064656c65676174656420746f2c20746f67657468657220776974682074686520616d6f756e742068656c64206f6e206465706f7369742e34416e6e6f756e63656d656e74730101040500210644000000000000000000000000000000000004ac2054686520616e6e6f756e63656d656e7473206d616465206279207468652070726f787920286b6579292e011d0401d4184050726f78794465706f7369744261736518400020f7a54b330000000000000000000010110120546865206261736520616d6f756e74206f662063757272656e6379206e656564656420746f207265736572766520666f72206372656174696e6720612070726f78792e00010120546869732069732068656c6420666f7220616e206164646974696f6e616c2073746f72616765206974656d2077686f73652076616c75652073697a652069732501206073697a656f662842616c616e6365296020627974657320616e642077686f7365206b65792073697a65206973206073697a656f66284163636f756e74496429602062797465732e4850726f78794465706f736974466163746f72184000f4a92b80010000000000000000000014bc2054686520616d6f756e74206f662063757272656e6379206e6565646564207065722070726f78792061646465642e00350120546869732069732068656c6420666f7220616464696e6720333220627974657320706c757320616e20696e7374616e6365206f66206050726f78795479706560206d6f726520696e746f20616101207072652d6578697374696e672073746f726167652076616c75652e20546875732c207768656e20636f6e6669677572696e67206050726f78794465706f736974466163746f7260206f6e652073686f756c642074616b65f420696e746f206163636f756e7420603332202b2070726f78795f747970652e656e636f646528292e6c656e282960206279746573206f6620646174612e284d617850726f786965731c100a00000004f020546865206d6178696d756d20616d6f756e74206f662070726f7869657320616c6c6f77656420666f7220612073696e676c65206163636f756e742e284d617850656e64696e671c100a00000004450120546865206d6178696d756d20616d6f756e74206f662074696d652d64656c6179656420616e6e6f756e63656d656e747320746861742061726520616c6c6f77656420746f2062652070656e64696e672e5c416e6e6f756e63656d656e744465706f7369744261736518400020f7a54b330000000000000000000010310120546865206261736520616d6f756e74206f662063757272656e6379206e656564656420746f207265736572766520666f72206372656174696e6720616e20616e6e6f756e63656d656e742e00490120546869732069732068656c64207768656e2061206e65772073746f72616765206974656d20686f6c64696e672061206042616c616e636560206973206372656174656420287479706963616c6c7920313620206279746573292e64416e6e6f756e63656d656e744465706f736974466163746f72184000e8535700030000000000000000000010d42054686520616d6f756e74206f662063757272656e6379206e65656465642070657220616e6e6f756e63656d656e74206d6164652e00590120546869732069732068656c6420666f7220616464696e6720616e20604163636f756e744964602c2060486173686020616e642060426c6f636b4e756d6265726020287479706963616c6c79203638206279746573298c20696e746f2061207072652d6578697374696e672073746f726167652076616c75652e0131062b20507265696d6167650120507265696d6167650824537461747573466f72000104062c35060400049020546865207265717565737420737461747573206f66206120676976656e20686173682e2c507265696d616765466f72000104064106450604000001250401e0000149062c38546970734d656d626572736869700138546970734d656d62657273686970081c4d656d6265727301004d06040004c8205468652063757272656e74206d656d626572736869702c2073746f72656420617320616e206f726465726564205665632e145072696d65000000040004a4205468652063757272656e74207072696d65206d656d6265722c206966206f6e65206578697374732e01290401e4000151062d1054697073011054697073081054697073000104052c550604000c650120546970734d6170207468617420617265206e6f742079657420636f6d706c657465642e204b65796564206279207468652068617368206f66206028726561736f6e2c2077686f29602066726f6d207468652076616c75652e3d012054686973206861732074686520696e73656375726520656e756d657261626c6520686173682066756e6374696f6e2073696e636520746865206b657920697473656c6620697320616c7265616479802067756172616e7465656420746f20626520612073656375726520686173682e1c526561736f6e73000104062c3004000849012053696d706c6520707265696d616765206c6f6f6b75702066726f6d2074686520726561736f6e2773206861736820746f20746865206f726967696e616c20646174612e20416761696e2c2068617320616e610120696e73656375726520656e756d657261626c6520686173682073696e636520746865206b65792069732067756172616e7465656420746f2062652074686520726573756c74206f6620612073656375726520686173682e012d0401e8144c4d6178696d756d526561736f6e4c656e6774681c10004000000c88204d6178696d756d2061636365707461626c6520726561736f6e206c656e6774682e0065012042656e63686d61726b7320646570656e64206f6e20746869732076616c75652c206265207375726520746f2075706461746520776569676874732066696c65207768656e206368616e67696e6720746869732076616c756548446174614465706f73697450657242797465184000743ba40b00000000000000000000000461012054686520616d6f756e742068656c64206f6e206465706f7369742070657220627974652077697468696e2074686520746970207265706f727420726561736f6e206f7220626f756e7479206465736372697074696f6e2e30546970436f756e74646f776e1020201c0000000000000445012054686520706572696f6420666f722077686963682061207469702072656d61696e73206f70656e20616674657220697320686173206163686965766564207468726573686f6c6420746970706572732e3454697046696e6465727346656561060400043501205468652070657263656e74206f66207468652066696e616c2074697020776869636820676f657320746f20746865206f726967696e616c207265706f72746572206f6620746865207469702e505469705265706f72744465706f73697442617365184000f45628fa320000000000000000000004d42054686520616d6f756e742068656c64206f6e206465706f73697420666f7220706c6163696e67206120746970207265706f72742e0165062e204d756c746973696701204d756c746973696704244d756c746973696773000108050269066d06040004942054686520736574206f66206f70656e206d756c7469736967206f7065726174696f6e732e01310401ec0c2c4465706f73697442617365184000801b84ee320000000000000000000018590120546865206261736520616d6f756e74206f662063757272656e6379206e656564656420746f207265736572766520666f72206372656174696e672061206d756c746973696720657865637574696f6e206f7220746f842073746f726520612064697370617463682063616c6c20666f72206c617465722e00010120546869732069732068656c6420666f7220616e206164646974696f6e616c2073746f72616765206974656d2077686f73652076616c75652073697a652069733101206034202b2073697a656f662828426c6f636b4e756d6265722c2042616c616e63652c204163636f756e74496429296020627974657320616e642077686f7365206b65792073697a652069738020603332202b2073697a656f66284163636f756e74496429602062797465732e344465706f736974466163746f72184000743ba40b00000000000000000000000c55012054686520616d6f756e74206f662063757272656e6379206e65656465642070657220756e6974207468726573686f6c64207768656e206372656174696e672061206d756c746973696720657865637574696f6e2e00250120546869732069732068656c6420666f7220616464696e67203332206279746573206d6f726520696e746f2061207072652d6578697374696e672073746f726167652076616c75652e384d61785369676e61746f726965731c104000000004ec20546865206d6178696d756d20616d6f756e74206f66207369676e61746f7269657320616c6c6f77656420696e20746865206d756c74697369672e0175062f144374797065011443747970650418437479706573000104022c790604001060204354797065732073746f726564206f6e20636861696e2e001901204974206d6170732066726f6d2061204354797065206861736820746f206974732063726561746f7220616e6420626c6f636b206e756d62657220696e207768696368206974342077617320637265617465642e01390401f400017d063d2c4174746573746174696f6e012c4174746573746174696f6e08304174746573746174696f6e73000104022c810604000c78204174746573746174696f6e732073746f726564206f6e20636861696e2e00cc204974206d6170732066726f6d206120636c61696d206861736820746f207468652066756c6c206174746573746174696f6e2e5045787465726e616c4174746573746174696f6e7301010805028906a804000ca02044656c656761746564206174746573746174696f6e732073746f726564206f6e20636861696e2e00e8204974206d6170732066726f6d20612064656c65676174696f6e20494420746f206120766563746f72206f6620636c61696d206861736865732e013d0401f8081c4465706f7369741840001cc9dd006e0000000000000000000004e420546865206465706f736974207468617420697320726571756972656420666f722073746f72696e6720616e206174746573746174696f6e2e604d617844656c6567617465644174746573746174696f6e731c10e803000008090120546865206d6178696d756d206e756d626572206f662064656c656761746564206174746573746174696f6e732077686963682063616e206265206d61646520627954207468652073616d652064656c65676174696f6e2e018d063e2844656c65676174696f6e012844656c65676174696f6e083c44656c65676174696f6e4e6f646573000104022c910604000c882044656c65676174696f6e206e6f6465732073746f726564206f6e20636861696e2e00b0204974206d6170732066726f6d2061206e6f646520494420746f20746865206e6f64652064657461696c732e5444656c65676174696f6e4869657261726368696573000104022ca50604000ca02044656c65676174696f6e2068696572617263686965732073746f726564206f6e20636861696e2e00dc204974206d61707320666f7220612028726f6f7429206e6f646520494420746f20746865206869657261726368792064657461696c732e015104010501181c4465706f73697418400080c6a47e8d0300000000000000000004dc20546865206465706f736974207468617420697320726571756972656420666f722073746f72696e6720612064656c65676174696f6e2e584d61785369676e6174757265427974654c656e677468dc08400000384d61785265766f636174696f6e731c1005000000047c204d6178696d756d206e756d626572206f66207265766f636174696f6e732e2c4d617852656d6f76616c731c100500000004f4204d6178696d756d206e756d626572206f662072656d6f76616c732e2053686f756c642062652073616d65206173204d61785265766f636174696f6e733c4d6178506172656e74436865636b731c1005000000080d01204d6178696d756d206e756d626572206f6620757077617264732074726176657273616c73206f66207468652064656c65676174696f6e20747265652066726f6d2061f0206e6f646520746f2074686520726f6f7420616e64207468757320746865206465707468206f66207468652064656c65676174696f6e20747265652e2c4d61784368696c6472656e1c10e80300000c0d01204d6178696d756d206e756d626572206f6620616c6c206368696c6472656e20666f7220612064656c65676174696f6e206e6f64652e20466f7220612062696e617279fc20747265652c20746869732073686f756c6420626520747769636520746865206d6178696d756d206465707468206f662074686520747265652c20692e652e5c206032205e204d6178506172656e74436865636b73602e01a9063f0c446964010c446964100c4469640001040200ad0604000c5820444944732073746f726564206f6e20636861696e2e00c8204974206d6170732066726f6d206120444944206964656e74696669657220746f20746865204449442064657461696c732e4053657276696365456e64706f696e74730001080502cd06790404000ca0205365727669636520656e64706f696e7473206173736f636961746564207769746820444944732e000901204974206d6170732066726f6d2028444944206964656e7469666965722c20736572766963652049442920746f2074686520736572766963652064657461696c732e44446964456e64706f696e7473436f756e7401010402001c10000000000cac20436f756e746572206f66207365727669636520656e64706f696e747320666f722065616368204449442e00cc204974206d6170732066726f6d2028444944206964656e7469666965722920746f20612033322d62697420636f756e7465722e30446964426c61636b6c6973740001040200b00400141d012054686520736574206f66204449447320746861742068617665206265656e2064656c6574656420616e642063616e6e6f74207468657265666f726520626520637265617465647020616761696e20666f7220736563757269747920726561736f6e732e002101204974206d6170732066726f6d206120444944206964656e74696669657220746f206120756e6974207475706c652c20666f72207468652073616b65206f6620747261636b696e674420444944206964656e746966696572732e016d04010d01382c426173654465706f736974184000008d49fd1a07000000000000000000100d012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f722065616368204449442061732061206465706f736974f820746f20696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e20546865206465706f73697473fc20696e6372656173652062792074686520616d6f756e74206f662075736564206b65797320616e64207365727669636520656e64706f696e74732e20546865c8206465706f7369742063616e206265207265636c61696d6564207768656e20746865204449442069732064656c657465642e5853657276696365456e64706f696e744465706f736974184000b0156a084a00000000000000000000100d012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f722065616368207365727669636520656e64706f696e7409012061732061206465706f73697420746f20696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e205468651501206465706f7369742063616e206265207265636c61696d6564207768656e20746865207365727669636520656e64706f696e742069732072656d6f766564206f722074686534204449442064656c657465642e284b65794465706f736974184000dc20749701000000000000000000000805012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f722065616368206164646564206b65792061732061e4206465706f73697420746f20696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e0c466565184000203d88792d000000000000000000000c09012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f7220656163682044494420617320612066656520746f0d0120696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e20546865206665652077696c6c206e6f74206765748820726566756e646564207768656e20746865204449442069732064656c657465642e4c4d61785075626c69634b6579735065724469641c10140000000c1101204d6178696d756d206e756d626572206f6620746f74616c207075626c6963206b6579732077686963682063616e2062652073746f7265642070657220444944206b6579d8206964656e7469666965722e205468697320696e636c7564657320746865206f6e65732063757272656e746c79207573656420666f72f02061757468656e7469636174696f6e2c206b65792061677265656d656e742c206174746573746174696f6e2c20616e642064656c65676174696f6e2e584d61784e65774b657941677265656d656e744b6579731c100a000000081501204d6178696d756d206e756d626572206f66206b65792061677265656d656e74206b65797320746861742063616e20626520616464656420696e2061206372656174696f6e2c206f7065726174696f6e2e604d6178546f74616c4b657941677265656d656e744b6579731c1013000000101101204d6178696d756d206e756d626572206f6620746f74616c206b65792061677265656d656e74206b65797320746861742063616e2062652073746f72656420666f7220613420444944207375626a6563742e00c42053686f756c642062652067726561746572207468616e20604d61784e65774b657941677265656d656e744b657973602e4c4d6178426c6f636b73547856616c696469747910202c0100000000000008ec20546865206d6178696d756d206e756d626572206f6620626c6f636b732061204449442d617574686f72697a6564206f7065726174696f6e2069739420636f6e736964657265642076616c696420616674657220697473206372656174696f6e2e644d61784e756d6265724f6653657276696365735065724469641c101900000004fc20546865206d6178696d756d206e756d626572206f6620736572766963657320746861742063616e2062652073746f72656420756e6465722061204449442e484d61785365727669636549644c656e6774681c1032000000049020546865206d6178696d756d206c656e677468206f66206120736572766963652049442e504d617853657276696365547970654c656e6774681c103200000004c820546865206d6178696d756d206c656e677468206f66206120736572766963652074797065206465736372697074696f6e2e684d61784e756d6265724f665479706573506572536572766963651c100100000004090120546865206d6178696d756d206e756d626572206f662061207479706573206465736372697074696f6e20666f722061207365727669636520656e64706f696e742e4c4d61785365727669636555726c4c656e6774681c10c8000000049420546865206d6178696d756d206c656e677468206f66206120736572766963652055524c2e644d61784e756d6265724f6655726c73506572536572766963651c100200000004d420546865206d6178696d756d206e756d626572206f6620612055524c7320666f722061207365727669636520656e64706f696e742e01d1064024496e666c6174696f6e000000084c496e697469616c506572696f644c656e677468102048a3c800000000000c050120546865206c656e677468206f662074686520696e697469616c20706572696f6420696e2077686963682074686520636f6e7374616e74207265776172642069731101206d696e7465642e204f6e6365207468652063757272656e7420626c6f636b206578636565647320746869732c207265776172647320617265206e6f206675727468657220206973737565642e4c496e697469616c506572696f64526577617264184036f539fdaeb30200000000000000000008fc2054686520616d6f756e74206f66206e65776c792069737375656420746f6b656e732070657220626c6f636b20647572696e672074686520696e697469616c2020706572696f642e0042244469644c6f6f6b757001244469644c6f6f6b75700834436f6e6e656374656444696473000104021501d506040004a8204d617070696e672066726f6d206163636f756e74206964656e7469666965727320746f20444944732e44436f6e6e65637465644163636f756e74730001080202d906b004000cbc204d617070696e672066726f6d2028444944202b206163636f756e74206964656e74696669657229202d3e2028292e0d012054686520656d707479207475706c65206973207573656420617320612073656e74696e656c2076616c756520746f2073696d706c7920696e64696361746520746865982070726573656e6365206f66206120676976656e207475706c6520696e20746865206d61702e01c504011101041c4465706f736974184000c0afd69136000000000000000000000c0d012054686520616d6f756e74206f662062616c616e636520746861742077696c6c2062652074616b656e20666f722065616368204449442061732061206465706f736974110120746f20696e63656e746976697365206661697220757365206f6620746865206f6e20636861696e2073746f726167652e20546865206465706f7369742063616e2062658c207265636c61696d6564207768656e20746865204449442069732064656c657465642e01dd064324576562334e616d65730124576562334e616d65730c144f776e6572000104022501e10604000488204d6170206f66206e616d65202d3e206f776e6572736869702064657461696c732e144e616d65730001040200250104000458204d6170206f66206f776e6572202d3e206e616d652e1842616e6e6564000104022501b004000c4c204d6170206f66206e616d65202d3e2028292e00e02049662061206e616d65206b65792069732070726573656e742c20746865206e616d652069732063757272656e746c792062616e6e65642e01d5040121010c1c4465706f736974184000d450a85d6b0000000000000000000004bc2054686520616d6f756e74206f66204b494c5420746f206465706f73697420746f20636c61696d2061206e616d652e344d696e4e616d654c656e6774681c1003000000048820546865206d696e20656e636f646564206c656e677468206f662061206e616d652e344d61784e616d654c656e6774681c1020000000048820546865206d617820656e636f646564206c656e677468206f662061206e616d652e01e50644445075626c696343726564656e7469616c7301445075626c696343726564656e7469616c73082c43726564656e7469616c730001080502e906ed0604000cc020546865206d6170206f66207075626c69632063726564656e7469616c7320616c72656164792061747465737465642ef0204974206d6170732066726f6d206120287375626a656374206964202b2063726564656e7469616c20696429202d3e20746865206372656174696f6e6c2064657461696c73206f66207468652063726564656e7469616c2e4843726564656e7469616c5375626a65637473000104022c310104001025012041207265766572736520696e646578206d617070696e672066726f6d2063726564656e7469616c20494420746f20746865207375626a656374207468652063726564656e7469616c3c207761732069737375656420746f2e001901204974206974207573656420746f20706572666f726d20656666696369656e74206c6f6f6b7570206f662063726564656e7469616c7320676976656e2074686569722049442e01d904012d010c1c4465706f7369741840005c6a51fc45000000000000000000000411012054686520616d6f756e74206f6620746f6b656e7320746f2072657365727665207768656e20617474657374696e672061207075626c69632063726564656e7469616c2e584d6178456e636f646564436c61696d734c656e6774681c10a0860100040d0120546865206d6178696d756d206c656e67746820696e206279746573206f662074686520656e636f64656420636c61696d73206f6620612063726564656e7469616c2e484d61785375626a65637449644c656e6774681c100c01000008e820546865206d6178696d756d206c656e67746820696e206279746573206f6620746865207261772063726564656e7469616c207375626a65637430206964656e7469666965722e01f106453c50617261636861696e53797374656d013c50617261636861696e53797374656d545450656e64696e6756616c69646174696f6e436f64650100300400187d0120496e2063617365206f662061207363686564756c656420757067726164652c20746869732073746f72616765206669656c6420636f6e7461696e73207468652076616c69646174696f6e20636f646520746f206265206170706c6965642e00c10120417320736f6f6e206173207468652072656c617920636861696e2067697665732075732074686520676f2d6168656164207369676e616c2c2077652077696c6c206f766572777269746520746865205b603a636f6465605d5b77656c6c5f6b6e6f776e5f6b6579733a3a434f44455dad012077686963682077696c6c20726573756c7420746865206e65787420626c6f636b2070726f63657373207769746820746865206e65772076616c69646174696f6e20636f64652e205468697320636f6e636c756465732074686520757067726164652070726f636573732e000501205b77656c6c5f6b6e6f776e5f6b6579733a3a434f44455d3a2073705f636f72653a3a73746f726167653a3a77656c6c5f6b6e6f776e5f6b6579733a3a434f4445444e657756616c69646174696f6e436f64650000300400145d012056616c69646174696f6e20636f6465207468617420697320736574206279207468652070617261636861696e20616e6420697320746f20626520636f6d6d756e69636174656420746f20636f6c6c61746f7220616e647820636f6e73657175656e746c79207468652072656c61792d636861696e2e00650120546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b206966206e6f206f746865722070616c6c657420616c7265616479207365742c207468652076616c75652e3856616c69646174696f6e446174610000f10404000cd020546865205b6050657273697374656456616c69646174696f6e44617461605d2073657420666f72207468697320626c6f636b2e2d0120546869732076616c756520697320657870656374656420746f20626520736574206f6e6c79206f6e63652070657220626c6f636b20616e642069742773206e657665722073746f7265643420696e2074686520747269652e5044696453657456616c69646174696f6e436f64650100a8040004e02057657265207468652076616c69646174696f6e20646174612073657420746f206e6f74696679207468652072656c617920636861696e3f644c61737452656c6179436861696e426c6f636b4e756d62657201001c1000000000041d01205468652072656c617920636861696e20626c6f636b206e756d626572206173736f636961746564207769746820746865206c6173742070617261636861696e20626c6f636b2e60557067726164655265737472696374696f6e5369676e616c0100f50604001c750120416e206f7074696f6e20776869636820696e64696361746573206966207468652072656c61792d636861696e20726573747269637473207369676e616c6c696e6720612076616c69646174696f6e20636f646520757067726164652e610120496e206f7468657220776f7264732c20696620746869732069732060536f6d656020616e64205b604e657756616c69646174696f6e436f6465605d2069732060536f6d6560207468656e207468652070726f64756365646c2063616e6469646174652077696c6c20626520696e76616c69642e00710120546869732073746f72616765206974656d2069732061206d6972726f72206f662074686520636f72726573706f6e64696e672076616c756520666f72207468652063757272656e742070617261636861696e2066726f6d207468656d012072656c61792d636861696e2e20546869732076616c756520697320657068656d6572616c207768696368206d65616e7320697420646f65736e277420686974207468652073746f726167652e20546869732076616c756520697360207365742061667465722074686520696e686572656e742e3c52656c6179537461746550726f6f660000f904040018c4205468652073746174652070726f6f6620666f7220746865206c6173742072656c617920706172656e7420626c6f636b2e006d012054686973206669656c64206973206d65616e7420746f2062652075706461746564206561636820626c6f636b2077697468207468652076616c69646174696f6e206461746120696e686572656e742e205468657265666f72652c4d01206265666f72652070726f63657373696e67206f662074686520696e686572656e742c20652e672e20696e20606f6e5f696e697469616c697a656020746869732064617461206d6179206265207374616c652e00ac2054686973206461746120697320616c736f20616273656e742066726f6d207468652067656e657369732e5852656c6576616e744d6573736167696e6753746174650000fd0604001c65012054686520736e617073686f74206f6620736f6d652073746174652072656c6174656420746f206d6573736167696e672072656c6576616e7420746f207468652063757272656e742070617261636861696e2061732070657248207468652072656c617920706172656e742e006d012054686973206669656c64206973206d65616e7420746f2062652075706461746564206561636820626c6f636b2077697468207468652076616c69646174696f6e206461746120696e686572656e742e205468657265666f72652c4d01206265666f72652070726f63657373696e67206f662074686520696e686572656e742c20652e672e20696e20606f6e5f696e697469616c697a656020746869732064617461206d6179206265207374616c652e00ac2054686973206461746120697320616c736f20616273656e742066726f6d207468652067656e657369732e44486f7374436f6e66696775726174696f6e000011070400182901205468652070617261636861696e20686f737420636f6e66696775726174696f6e207468617420776173206f627461696e65642066726f6d207468652072656c617920706172656e742e006d012054686973206669656c64206973206d65616e7420746f2062652075706461746564206561636820626c6f636b2077697468207468652076616c69646174696f6e206461746120696e686572656e742e205468657265666f72652c4d01206265666f72652070726f63657373696e67206f662074686520696e686572656e742c20652e672e20696e20606f6e5f696e697469616c697a656020746869732064617461206d6179206265207374616c652e00ac2054686973206461746120697320616c736f20616273656e742066726f6d207468652067656e657369732e384c617374446d714d7163486561640100150780000000000000000000000000000000000000000000000000000000000000000010f420546865206c61737420646f776e77617264206d65737361676520717565756520636861696e20686561642077652068617665206f627365727665642e00650120546869732076616c7565206973206c6f61646564206265666f726520616e642073617665642061667465722070726f63657373696e6720696e626f756e6420646f776e77617264206d65737361676573206361727269656460206279207468652073797374656d20696e686572656e742e404c61737448726d704d7163486561647301001907040010490120546865206d65737361676520717565756520636861696e2068656164732077652068617665206f62736572766564207065722065616368206368616e6e656c20696e636f6d696e67206368616e6e656c2e00650120546869732076616c7565206973206c6f61646564206265666f726520616e642073617665642061667465722070726f63657373696e6720696e626f756e6420646f776e77617264206d65737361676573206361727269656460206279207468652073797374656d20696e686572656e742e6450726f636573736564446f776e776172644d6573736167657301001c10000000000cc8204e756d626572206f6620646f776e77617264206d657373616765732070726f63657373656420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e3448726d7057617465726d61726b01001c10000000000ca02048524d502077617465726d61726b2074686174207761732073657420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e5048726d704f7574626f756e644d657373616765730100250704000ca42048524d50206d65737361676573207468617420776572652073656e7420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e385570776172644d657373616765730100a90204000cac20557077617264206d65737361676573207468617420776572652073656e7420696e206120626c6f636b2e00ec20546869732077696c6c20626520636c656172656420696e20606f6e5f696e697469616c697a6560206f662065616368206e657720626c6f636b2e5450656e64696e675570776172644d657373616765730100a902040004310120557077617264206d65737361676573207468617420617265207374696c6c2070656e64696e6720616e64206e6f74207965742073656e6420746f207468652072656c617920636861696e2e84416e6e6f756e63656448726d704d6573736167657350657243616e64696461746501001c100000000008650120546865206e756d626572206f662048524d50206d65737361676573207765206f6273657276656420696e20606f6e5f696e697469616c697a656020616e64207468757320757365642074686174206e756d62657220666f72f020616e6e6f756e63696e672074686520776569676874206f6620606f6e5f696e697469616c697a656020616e6420606f6e5f66696e616c697a65602e68526573657276656458636d705765696768744f766572726964650000240400085d01205468652077656967687420776520726573657276652061742074686520626567696e6e696e67206f662074686520626c6f636b20666f722070726f63657373696e672058434d50206d657373616765732e2054686973b8206f76657272696465732074686520616d6f756e742073657420696e2074686520436f6e6669672074726169742e645265736572766564446d705765696768744f766572726964650000240400085901205468652077656967687420776520726573657276652061742074686520626567696e6e696e67206f662074686520626c6f636b20666f722070726f63657373696e6720444d50206d657373616765732e2054686973b8206f76657272696465732074686520616d6f756e742073657420696e2074686520436f6e6669672074726169742e44417574686f72697a65645570677261646500002d07040004b820546865206e65787420617574686f72697a656420757067726164652c206966207468657265206973206f6e652e60437573746f6d56616c69646174696f6e486561644461746100003004000c2901204120637573746f6d2068656164206461746120746861742073686f756c642062652072657475726e656420617320726573756c74206f66206076616c69646174655f626c6f636b602e00190120536565205b6050616c6c65743a3a7365745f637573746f6d5f76616c69646174696f6e5f686561645f64617461605d20666f72206d6f726520696e666f726d6174696f6e2e01e904019d0100013107503450617261636861696e496e666f013450617261636861696e496e666f042c50617261636861696e49640100a90110640000000000000000512458636d705175657565012458636d7051756575652844496e626f756e6458636d70537461747573010035070400049420537461747573206f662074686520696e626f756e642058434d50206368616e6e656c732e4c496e626f756e6458636d704d6573736167657301010802054d0730040004190120496e626f756e64206167677265676174652058434d50206d657373616765732e2049742063616e206f6e6c79206265206f6e6520706572205061726149642f626c6f636b2e484f7574626f756e6458636d70537461747573010051070400185d0120546865206e6f6e2d656d7074792058434d50206368616e6e656c7320696e206f72646572206f66206265636f6d696e67206e6f6e2d656d7074792c20616e642074686520696e646578206f6620746865206669727374510120616e64206c617374206f7574626f756e64206d6573736167652e204966207468652074776f20696e64696365732061726520657175616c2c207468656e20697420696e6469636174657320616e20656d707479590120717565756520616e64207468657265206d7573742062652061206e6f6e2d604f6b6020604f7574626f756e64537461747573602e20576520617373756d65207175657565732067726f77206e6f20677265617465725901207468616e203635353335206974656d732e20517565756520696e646963657320666f72206e6f726d616c206d6573736167657320626567696e206174206f6e653b207a65726f20697320726573657276656420696e11012063617365206f6620746865206e65656420746f2073656e64206120686967682d7072696f72697479207369676e616c206d657373616765207468697320626c6f636b2e09012054686520626f6f6c20697320747275652069662074686572652069732061207369676e616c206d6573736167652077616974696e6720746f2062652073656e742e504f7574626f756e6458636d704d6573736167657301010802055d0730040004bc20546865206d65737361676573206f7574626f756e6420696e206120676976656e2058434d50206368616e6e656c2e385369676e616c4d6573736167657301010402a90130040004a020416e79207369676e616c206d657373616765732077616974696e6720746f2062652073656e742e2c5175657565436f6e6669670100610774020000000500000001000000821a06000008000700c817a804020004000415012054686520636f6e66696775726174696f6e20776869636820636f6e74726f6c73207468652064796e616d696373206f6620746865206f7574626f756e642071756575652e284f76657277656967687400010405106507040010050120546865206d657373616765732074686174206578636565646564206d617820696e646976696475616c206d65737361676520776569676874206275646765742e003901205468657365206d657373616765207374617920696e20746869732073746f72616765206d617020756e74696c207468657920617265206d616e75616c6c79206469737061746368656420766961582060736572766963655f6f766572776569676874602e50436f756e746572466f724f76657277656967687401001c100000000004ac436f756e74657220666f72207468652072656c6174656420636f756e7465642073746f72616765206d61703c4f766572776569676874436f756e7401001020000000000000000008690120546865206e756d626572206f66206f766572776569676874206d657373616765732065766572207265636f7264656420696e20604f766572776569676874602e20416c736f20646f75626c657320617320746865206e6578748420617661696c61626c652066726565206f76657277656967687420696e6465782e38517565756553757370656e6465640100a804000441012057686574686572206f72206e6f74207468652058434d502071756575652069732073757370656e6465642066726f6d20657865637574696e6720696e636f6d696e672058434d73206f72206e6f742e011d0501a10100016907522c506f6c6b61646f7458636d0001210501ad0100016d07532843756d756c757358636d0000018102000171075420446d7051756575650120446d7051756575651434436f6e66696775726174696f6e01007507280700e40b540202000400044c2054686520636f6e66696775726174696f6e2e2450616765496e646578010079074000000000000000000000000000000000044020546865207061676520696e6465782e145061676573010104021c7d0704000444205468652071756575652070616765732e284f766572776569676874000104021081070400046420546865206f766572776569676874206d657373616765732e50436f756e746572466f724f76657277656967687401001c100000000004ac436f756e74657220666f72207468652072656c6174656420636f756e7465642073746f72616765206d617001750501850200018507558907042048436865636b4e6f6e5a65726f53656e6465729107b040436865636b5370656356657273696f6e95071c38436865636b547856657273696f6e99071c30436865636b47656e657369739d072c38436865636b4d6f7274616c697479a1072c28436865636b4e6f6e6365a907b02c436865636b576569676874ad07b0604368617267655472616e73616374696f6e5061796d656e74b107b04d04"} \ No newline at end of file diff --git a/packages/augment-api/package.json b/packages/augment-api/package.json index 7a43d75cf..d1c8e28e5 100644 --- a/packages/augment-api/package.json +++ b/packages/augment-api/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/augment-api", - "version": "0.33.1", + "version": "0.34.0", "description": "", "types": "./lib/index.d.ts", "type": "module", diff --git a/packages/augment-api/src/interfaces/augment-api-consts.ts b/packages/augment-api/src/interfaces/augment-api-consts.ts index b3fba9062..499d4e269 100644 --- a/packages/augment-api/src/interfaces/augment-api-consts.ts +++ b/packages/augment-api/src/interfaces/augment-api-consts.ts @@ -131,16 +131,22 @@ declare module '@polkadot/api-base/types/consts' { did: { /** * The amount of balance that will be taken for each DID as a deposit - * to incentivise fair use of the on chain storage. The deposit can be - * reclaimed when the DID is deleted. + * to incentivise fair use of the on chain storage. The deposits + * increase by the amount of used keys and service endpoints. The + * deposit can be reclaimed when the DID is deleted. **/ - deposit: u128 & AugmentedConst; + baseDeposit: u128 & AugmentedConst; /** * The amount of balance that will be taken for each DID as a fee to * incentivise fair use of the on chain storage. The fee will not get * refunded when the DID is deleted. **/ fee: u128 & AugmentedConst; + /** + * The amount of balance that will be taken for each added key as a + * deposit to incentivise fair use of the on chain storage. + **/ + keyDeposit: u128 & AugmentedConst; /** * The maximum number of blocks a DID-authorized operation is * considered valid after its creation. @@ -188,6 +194,13 @@ declare module '@polkadot/api-base/types/consts' { * Should be greater than `MaxNewKeyAgreementKeys`. **/ maxTotalKeyAgreementKeys: u32 & AugmentedConst; + /** + * The amount of balance that will be taken for each service endpoint + * as a deposit to incentivise fair use of the on chain storage. The + * deposit can be reclaimed when the service endpoint is removed or the + * DID deleted. + **/ + serviceEndpointDeposit: u128 & AugmentedConst; }; didLookup: { /** @@ -216,6 +229,27 @@ declare module '@polkadot/api-base/types/consts' { **/ initialPeriodReward: u128 & AugmentedConst; }; + multisig: { + /** + * The base amount of currency needed to reserve for creating a multisig execution or to + * store a dispatch call for later. + * + * This is held for an additional storage item whose value size is + * `4 + sizeof((BlockNumber, Balance, AccountId))` bytes and whose key size is + * `32 + sizeof(AccountId)` bytes. + **/ + depositBase: u128 & AugmentedConst; + /** + * The amount of currency needed per unit threshold when creating a multisig execution. + * + * This is held for adding 32 bytes more into a pre-existing storage value. + **/ + depositFactor: u128 & AugmentedConst; + /** + * The maximum amount of signatories allowed in the multisig. + **/ + maxSignatories: u32 & AugmentedConst; + }; parachainStaking: { /** * Default number of blocks validation rounds last, as set in the diff --git a/packages/augment-api/src/interfaces/augment-api-errors.ts b/packages/augment-api/src/interfaces/augment-api-errors.ts index 93a87cc40..e61f6f75f 100644 --- a/packages/augment-api/src/interfaces/augment-api-errors.ts +++ b/packages/augment-api/src/interfaces/augment-api-errors.ts @@ -290,6 +290,10 @@ declare module '@polkadot/api-base/types/errors' { * The given account did not vote on the referendum. **/ NotVoter: AugmentedError; + /** + * The preimage does not exist. + **/ + PreimageNotExist: AugmentedError; /** * Proposal still blacklisted **/ @@ -503,6 +507,64 @@ declare module '@polkadot/api-base/types/errors' { **/ Permanent: AugmentedError; }; + multisig: { + /** + * Call is already approved by this signatory. + **/ + AlreadyApproved: AugmentedError; + /** + * The data to be stored is already stored. + **/ + AlreadyStored: AugmentedError; + /** + * The maximum weight information provided was too low. + **/ + MaxWeightTooLow: AugmentedError; + /** + * Threshold must be 2 or greater. + **/ + MinimumThreshold: AugmentedError; + /** + * Call doesn't need any (more) approvals. + **/ + NoApprovalsNeeded: AugmentedError; + /** + * Multisig operation not found when attempting to cancel. + **/ + NotFound: AugmentedError; + /** + * No timepoint was given, yet the multisig operation is already underway. + **/ + NoTimepoint: AugmentedError; + /** + * Only the account that originally created the multisig is able to cancel it. + **/ + NotOwner: AugmentedError; + /** + * The sender was contained in the other signatories; it shouldn't be. + **/ + SenderInSignatories: AugmentedError; + /** + * The signatories were provided out of order; they should be ordered. + **/ + SignatoriesOutOfOrder: AugmentedError; + /** + * There are too few signatories in the list. + **/ + TooFewSignatories: AugmentedError; + /** + * There are too many signatories in the list. + **/ + TooManySignatories: AugmentedError; + /** + * A timepoint was given, yet no multisig operation is underway. + **/ + UnexpectedTimepoint: AugmentedError; + /** + * A different timepoint was given to the multisig operation that is underway. + **/ + WrongTimepoint: AugmentedError; + }; parachainStaking: { /** * The delegator has already previously delegated the collator @@ -659,7 +721,7 @@ declare module '@polkadot/api-base/types/errors' { }; parachainSystem: { /** - * The inherent which supplies the host configuration did not run this block + * The inherent which supplies the host configuration did not run this block. **/ HostConfigurationNotAvailable: AugmentedError; /** @@ -671,16 +733,16 @@ declare module '@polkadot/api-base/types/errors' { **/ NotScheduled: AugmentedError; /** - * Attempt to upgrade validation function while existing upgrade pending + * Attempt to upgrade validation function while existing upgrade pending. **/ OverlappingUpgrades: AugmentedError; /** - * Polkadot currently prohibits this parachain from upgrading its validation function + * Polkadot currently prohibits this parachain from upgrading its validation function. **/ ProhibitedByPolkadot: AugmentedError; /** * The supplied validation function has compiled into a blob larger than Polkadot is - * willing to run + * willing to run. **/ TooBig: AugmentedError; /** @@ -688,7 +750,7 @@ declare module '@polkadot/api-base/types/errors' { **/ Unauthorized: AugmentedError; /** - * The inherent which supplies the validation data did not run this block + * The inherent which supplies the validation data did not run this block. **/ ValidationDataNotAvailable: AugmentedError; }; diff --git a/packages/augment-api/src/interfaces/augment-api-events.ts b/packages/augment-api/src/interfaces/augment-api-events.ts index e87878e06..99a192737 100644 --- a/packages/augment-api/src/interfaces/augment-api-events.ts +++ b/packages/augment-api/src/interfaces/augment-api-events.ts @@ -9,7 +9,7 @@ import type { ApiTypes, AugmentedEvent } from '@polkadot/api-base/types'; import type { Bytes, Null, Option, Result, U8aFixed, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec'; import type { ITuple } from '@polkadot/types-codec/types'; import type { AccountId32, H256, Perquintill } from '@polkadot/types/interfaces/runtime'; -import type { DelegationDelegationHierarchyPermissions, FrameSupportDispatchDispatchInfo, FrameSupportTokensMiscBalanceStatus, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletDidLookupLinkableAccountLinkableAccountId, RuntimeCommonAssetsAssetDid, RuntimeCommonAuthorizationAuthorizationId, SpRuntimeDispatchError, SpWeightsWeightV2Weight, SpiritnetRuntimeProxyType, XcmV3MultiLocation, XcmV3MultiassetMultiAssets, XcmV3Response, XcmV3TraitsError, XcmV3TraitsOutcome, XcmV3Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup'; +import type { DelegationDelegationHierarchyPermissions, FrameSupportDispatchDispatchInfo, FrameSupportTokensMiscBalanceStatus, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletDidLookupLinkableAccountLinkableAccountId, PalletMultisigTimepoint, RuntimeCommonAssetsAssetDid, RuntimeCommonAuthorizationAuthorizationId, SpRuntimeDispatchError, SpWeightsWeightV2Weight, SpiritnetRuntimeProxyType, XcmV3MultiLocation, XcmV3MultiassetMultiAssets, XcmV3Response, XcmV3TraitsError, XcmV3TraitsOutcome, XcmV3Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup'; export type __AugmentedEvent = AugmentedEvent; @@ -197,6 +197,18 @@ declare module '@polkadot/api-base/types/events' { * An external proposal has been tabled. **/ ExternalTabled: AugmentedEvent; + /** + * Metadata for a proposal or a referendum has been cleared. + **/ + MetadataCleared: AugmentedEvent; + /** + * Metadata for a proposal or a referendum has been set. + **/ + MetadataSet: AugmentedEvent; + /** + * Metadata has been transferred to new owner. + **/ + MetadataTransferred: AugmentedEvent; /** * A proposal has been rejected by referendum. **/ @@ -287,6 +299,10 @@ declare module '@polkadot/api-base/types/events' { * Downward message is invalid XCM. **/ InvalidFormat: AugmentedEvent; + /** + * The maximum number of downward messages was. + **/ + MaxMessagesExhausted: AugmentedEvent; /** * Downward message is overweight and was placed in the overweight queue. **/ @@ -318,6 +334,24 @@ declare module '@polkadot/api-base/types/events' { **/ IndexFrozen: AugmentedEvent; }; + multisig: { + /** + * A multisig operation has been approved by someone. + **/ + MultisigApproval: AugmentedEvent; + /** + * A multisig operation has been cancelled. + **/ + MultisigCancelled: AugmentedEvent; + /** + * A multisig operation has been executed. + **/ + MultisigExecuted: AugmentedEvent], { approving: AccountId32, timepoint: PalletMultisigTimepoint, multisig: AccountId32, callHash: U8aFixed, result: Result }>; + /** + * A new multisig operation has begun. + **/ + NewMultisig: AugmentedEvent; + }; parachainStaking: { /** * The length in blocks for future validation rounds has changed. diff --git a/packages/augment-api/src/interfaces/augment-api-query.ts b/packages/augment-api/src/interfaces/augment-api-query.ts index 0c6ed3456..2c3b2e9cc 100644 --- a/packages/augment-api/src/interfaces/augment-api-query.ts +++ b/packages/augment-api/src/interfaces/augment-api-query.ts @@ -9,7 +9,7 @@ import type { ApiTypes, AugmentedQuery, QueryableStorageEntry } from '@polkadot/ import type { BTreeMap, Bytes, Null, Option, U8aFixed, Vec, bool, u128, u16, u32, u64 } from '@polkadot/types-codec'; import type { AnyNumber, ITuple } from '@polkadot/types-codec/types'; import type { AccountId32, Call, H256 } from '@polkadot/types/interfaces/runtime'; -import type { AttestationAttestationsAttestationDetails, CtypeCtypeEntry, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, DelegationDelegationHierarchyDelegationHierarchyDetails, DelegationDelegationHierarchyDelegationNode, DidDidDetails, DidServiceEndpointsDidEndpoint, FrameSupportDispatchPerDispatchClassWeight, FrameSupportPreimagesBounded, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReserveData, PalletCollectiveVotes, PalletDemocracyReferendumInfo, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletDidLookupConnectionRecord, PalletDidLookupLinkableAccountLinkableAccountId, PalletDidLookupMigrationState, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletSchedulerScheduled, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletVestingReleases, PalletVestingVestingInfo, PalletWeb3NamesWeb3NameWeb3NameOwnership, ParachainStakingCandidate, ParachainStakingDelegationCounter, ParachainStakingInflationInflationInfo, ParachainStakingRoundInfo, ParachainStakingStake, ParachainStakingTotalStake, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, PublicCredentialsCredentialsCredentialEntry, RuntimeCommonAssetsAssetDid, RuntimeCommonAuthorizationAuthorizationId, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, SpiritnetRuntimeSessionKeys } from '@polkadot/types/lookup'; +import type { AttestationAttestationsAttestationDetails, CtypeCtypeEntry, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, DelegationDelegationHierarchyDelegationHierarchyDetails, DelegationDelegationHierarchyDelegationNode, DidDidDetails, DidServiceEndpointsDidEndpoint, FrameSupportDispatchPerDispatchClassWeight, FrameSupportPreimagesBounded, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReserveData, PalletCollectiveVotes, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletDidLookupConnectionRecord, PalletDidLookupLinkableAccountLinkableAccountId, PalletMultisigMultisig, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletSchedulerScheduled, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletVestingReleases, PalletVestingVestingInfo, PalletWeb3NamesWeb3NameWeb3NameOwnership, ParachainStakingCandidate, ParachainStakingDelegationCounter, ParachainStakingInflationInflationInfo, ParachainStakingRoundInfo, ParachainStakingStake, ParachainStakingTotalStake, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, PublicCredentialsCredentialsCredentialEntry, RuntimeCommonAssetsAssetDid, RuntimeCommonAuthorizationAuthorizationId, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpRuntimeDigest, SpTrieStorageProof, SpWeightsWeightV2Weight, SpiritnetRuntimeSessionKeys } from '@polkadot/types/lookup'; import type { Observable } from '@polkadot/types/types'; export type __AugmentedQuery = AugmentedQuery unknown>; @@ -180,6 +180,15 @@ declare module '@polkadot/api-base/types/storage' { * `ReferendumCount` if there isn't a unbaked referendum. **/ lowestUnbaked: AugmentedQuery Observable, []>; + /** + * General information concerning any proposal or referendum. + * The `PreimageHash` refers to the preimage of the `Preimages` provider which can be a JSON + * dump or IPFS hash of a JSON file. + * + * Consider a garbage collection for a metadata of finished referendums to `unrequest` (remove) + * large preimages. + **/ + metadataOf: AugmentedQuery Observable>, [PalletDemocracyMetadataOwner]>; /** * The referendum to be tabled whenever it would be valid to table an external proposal. * This happens when a referendum needs to be tabled and one of two conditions are met: @@ -252,7 +261,6 @@ declare module '@polkadot/api-base/types/storage' { * Mapping from account identifiers to DIDs. **/ connectedDids: AugmentedQuery Observable>, [PalletDidLookupLinkableAccountLinkableAccountId]>; - migrationStateStore: AugmentedQuery Observable, []>; }; dmpQueue: { /** @@ -282,6 +290,12 @@ declare module '@polkadot/api-base/types/storage' { **/ accounts: AugmentedQuery Observable>>, [u64]>; }; + multisig: { + /** + * The set of open multisig operations. + **/ + multisigs: AugmentedQuery Observable>, [AccountId32, U8aFixed]>; + }; parachainInfo: { parachainId: AugmentedQuery Observable, []>; }; @@ -397,7 +411,7 @@ declare module '@polkadot/api-base/types/storage' { /** * The next authorized upgrade, if there is one. **/ - authorizedUpgrade: AugmentedQuery Observable>, []>; + authorizedUpgrade: AugmentedQuery Observable>, []>; /** * A custom head data that should be returned as result of `validate_block`. * @@ -559,14 +573,6 @@ declare module '@polkadot/api-base/types/storage' { **/ credentialSubjects: AugmentedQuery Observable>, [H256]>; }; - randomnessCollectiveFlip: { - /** - * Series of block headers from the last 81 blocks that acts as random seed material. This - * is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of - * the oldest hash. - **/ - randomMaterial: AugmentedQuery Observable>, []>; - }; scheduler: { /** * Items to be executed, indexed by the block number that they should be executed on. diff --git a/packages/augment-api/src/interfaces/augment-api-tx.ts b/packages/augment-api/src/interfaces/augment-api-tx.ts index 27fc8ab12..ebf3f6961 100644 --- a/packages/augment-api/src/interfaces/augment-api-tx.ts +++ b/packages/augment-api/src/interfaces/augment-api-tx.ts @@ -9,7 +9,7 @@ import type { ApiTypes, AugmentedSubmittable, SubmittableExtrinsic, SubmittableE import type { Bytes, Compact, Option, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec'; import type { AnyNumber, IMethod, ITuple } from '@polkadot/types-codec/types'; import type { AccountId32, Call, H256, MultiAddress, Perquintill } from '@polkadot/types/interfaces/runtime'; -import type { CumulusPrimitivesParachainInherentParachainInherentData, DelegationDelegationHierarchyPermissions, DidDidDetailsDidAuthorizedCallOperation, DidDidDetailsDidCreationDetails, DidDidDetailsDidEncryptionKey, DidDidDetailsDidSignature, DidDidDetailsDidVerificationKey, DidServiceEndpointsDidEndpoint, FrameSupportPreimagesBounded, PalletDemocracyConviction, PalletDemocracyVoteAccountVote, PalletDidLookupAssociateAccountRequest, PalletDidLookupLinkableAccountLinkableAccountId, PalletVestingVestingInfo, PublicCredentialsCredentialsCredential, RuntimeCommonAuthorizationPalletAuthorize, SpWeightsWeightV2Weight, SpiritnetRuntimeOriginCaller, SpiritnetRuntimeProxyType, SpiritnetRuntimeSessionKeys, XcmV3MultiLocation, XcmV3WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; +import type { CumulusPrimitivesParachainInherentParachainInherentData, DelegationDelegationHierarchyPermissions, DidDidDetailsDidAuthorizedCallOperation, DidDidDetailsDidCreationDetails, DidDidDetailsDidEncryptionKey, DidDidDetailsDidSignature, DidDidDetailsDidVerificationKey, DidServiceEndpointsDidEndpoint, FrameSupportPreimagesBounded, PalletDemocracyConviction, PalletDemocracyMetadataOwner, PalletDemocracyVoteAccountVote, PalletDidLookupAssociateAccountRequest, PalletDidLookupLinkableAccountLinkableAccountId, PalletMultisigTimepoint, PalletVestingVestingInfo, PublicCredentialsCredentialsCredential, RuntimeCommonAuthorizationPalletAuthorize, SpWeightsWeightV2Weight, SpiritnetRuntimeOriginCaller, SpiritnetRuntimeProxyType, SpiritnetRuntimeSessionKeys, XcmV3MultiLocation, XcmV3WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; export type __AugmentedSubmittable = AugmentedSubmittable<() => unknown>; export type __SubmittableExtrinsic = SubmittableExtrinsic; @@ -115,10 +115,9 @@ declare module '@polkadot/api-base/types/submittable' { /** * Exactly as `transfer`, except the origin must be root and the source account may be * specified. - * # + * ## Complexity * - Same as transfer, but additional read and write because the source account is not * assumed to be in the overlay. - * # **/ forceTransfer: AugmentedSubmittable<(source: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [MultiAddress, MultiAddress, Compact]>; /** @@ -147,7 +146,7 @@ declare module '@polkadot/api-base/types/submittable' { * * The dispatch origin for this call must be `Signed` by the transactor. * - * # + * ## Complexity * - Dependent on arguments but not critical, given proper implementations for input config * types. See related functions below. * - It contains a limited number of reads and writes internally and no complex @@ -161,9 +160,6 @@ declare module '@polkadot/api-base/types/submittable' { * - Removing enough funds from an account will trigger `T::DustRemoval::on_unbalanced`. * - `transfer_keep_alive` works the same way as `transfer`, but has an additional check * that the transfer will not kill the origin account. - * --------------------------------- - * - Origin account is already in memory, so no DB operations for them. - * # **/ transfer: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [MultiAddress, Compact]>; /** @@ -181,9 +177,10 @@ declare module '@polkadot/api-base/types/submittable' { * - `keep_alive`: A boolean to determine if the `transfer_all` operation should send all * of the funds the account has, causing the sender account to be killed (false), or * transfer everything except at least the existential deposit, which will guarantee to - * keep the sender account alive (true). # + * keep the sender account alive (true). + * + * ## Complexity * - O(1). Just like transfer, but reading the user's transferable balance first. - * # **/ transferAll: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, keepAlive: bool | boolean | Uint8Array) => SubmittableExtrinsic, [MultiAddress, bool]>; /** @@ -216,20 +213,12 @@ declare module '@polkadot/api-base/types/submittable' { * + `length_bound`: The upper bound for the length of the proposal in storage. Checked via * `storage::read` so it is `size_of::() == 4` larger than the pure length. * - * # - * ## Weight + * ## Complexity * - `O(B + M + P1 + P2)` where: * - `B` is `proposal` size in bytes (length-fee-bounded) * - `M` is members-count (code- and governance-bounded) * - `P1` is the complexity of `proposal` preimage. * - `P2` is proposal-count (code-bounded) - * - DB: - * - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`) - * - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec - * `O(P2)`) - * - any mutations done while executing `proposal` (`P1`) - * - up to 3 events - * # **/ close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [H256, Compact, SpWeightsWeightV2Weight, Compact]>; /** @@ -251,20 +240,12 @@ declare module '@polkadot/api-base/types/submittable' { * + `length_bound`: The upper bound for the length of the proposal in storage. Checked via * `storage::read` so it is `size_of::() == 4` larger than the pure length. * - * # - * ## Weight + * ## Complexity * - `O(B + M + P1 + P2)` where: * - `B` is `proposal` size in bytes (length-fee-bounded) * - `M` is members-count (code- and governance-bounded) * - `P1` is the complexity of `proposal` preimage. * - `P2` is proposal-count (code-bounded) - * - DB: - * - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`) - * - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec - * `O(P2)`) - * - any mutations done while executing `proposal` (`P1`) - * - up to 3 events - * # **/ closeOldWeight: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact | AnyNumber | Uint8Array, proposalWeightBound: Compact | AnyNumber | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [H256, Compact, Compact, Compact]>; /** @@ -276,12 +257,8 @@ declare module '@polkadot/api-base/types/submittable' { * Parameters: * * `proposal_hash`: The hash of the proposal that should be disapproved. * - * # - * Complexity: O(P) where P is the number of max proposals - * DB Weight: - * * Reads: Proposals - * * Writes: Voting, Proposals, ProposalOf - * # + * ## Complexity + * O(P) where P is the number of max proposals **/ disapproveProposal: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** @@ -289,13 +266,11 @@ declare module '@polkadot/api-base/types/submittable' { * * Origin must be a member of the collective. * - * # - * ## Weight - * - `O(M + P)` where `M` members-count (code-bounded) and `P` complexity of dispatching - * `proposal` - * - DB: 1 read (codec `O(M)`) + DB access of `proposal` - * - 1 event - * # + * ## Complexity: + * - `O(B + M + P)` where: + * - `B` is `proposal` size in bytes (length-fee-bounded) + * - `M` members-count (code-bounded) + * - `P` complexity of dispatching `proposal` **/ execute: AugmentedSubmittable<(proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Call, Compact]>; /** @@ -306,26 +281,13 @@ declare module '@polkadot/api-base/types/submittable' { * `threshold` determines whether `proposal` is executed directly (`threshold < 2`) * or put up for voting. * - * # - * ## Weight + * ## Complexity * - `O(B + M + P1)` or `O(B + M + P2)` where: * - `B` is `proposal` size in bytes (length-fee-bounded) * - `M` is members-count (code- and governance-bounded) * - branching is influenced by `threshold` where: * - `P1` is proposal execution complexity (`threshold < 2`) * - `P2` is proposals-count (code-bounded) (`threshold >= 2`) - * - DB: - * - 1 storage read `is_member` (codec `O(M)`) - * - 1 storage read `ProposalOf::contains_key` (codec `O(1)`) - * - DB accesses influenced by `threshold`: - * - EITHER storage accesses done by `proposal` (`threshold < 2`) - * - OR proposal insertion (`threshold <= 2`) - * - 1 storage mutation `Proposals` (codec `O(P2)`) - * - 1 storage mutation `ProposalCount` (codec `O(1)`) - * - 1 storage write `ProposalOf` (codec `O(B)`) - * - 1 storage write `Voting` (codec `O(M)`) - * - 1 event - * # **/ propose: AugmentedSubmittable<(threshold: Compact | AnyNumber | Uint8Array, proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact, Call, Compact]>; /** @@ -336,7 +298,7 @@ declare module '@polkadot/api-base/types/submittable' { * - `old_count`: The upper bound for the previous number of members in storage. Used for * weight estimation. * - * Requires root origin. + * The dispatch of this call must be `SetMembersOrigin`. * * NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but * the weight estimations rely on it to estimate dispatchable weight. @@ -348,19 +310,11 @@ declare module '@polkadot/api-base/types/submittable' { * Any call to `set_members` must be careful that the member set doesn't get out of sync * with other logic managing the member set. * - * # - * ## Weight + * ## Complexity: * - `O(MP + N)` where: * - `M` old-members-count (code- and governance-bounded) * - `N` new-members-count (code- and governance-bounded) * - `P` proposals-count (code-bounded) - * - DB: - * - 1 storage mutation (codec `O(M)` read, `O(N)` write) for reading and writing the - * members - * - 1 storage read (codec `O(P)`) for reading the proposals - * - `P` storage mutations (codec `O(M)`) for updating the votes for each proposal - * - 1 storage write (codec `O(1)`) for deleting the old `prime` and setting the new one - * # **/ setMembers: AugmentedSubmittable<(newMembers: Vec | (AccountId32 | string | Uint8Array)[], prime: Option | null | Uint8Array | AccountId32 | string, oldCount: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Vec, Option, u32]>; /** @@ -371,14 +325,8 @@ declare module '@polkadot/api-base/types/submittable' { * Transaction fees will be waived if the member is voting on any particular proposal * for the first time and the call is successful. Subsequent vote changes will charge a * fee. - * # - * ## Weight + * ## Complexity * - `O(M)` where `M` is members-count (code- and governance-bounded) - * - DB: - * - 1 storage read `Members` (codec `O(M)`) - * - 1 storage mutation `Voting` (codec `O(M)`) - * - 1 event - * # **/ vote: AugmentedSubmittable<(proposal: H256 | string | Uint8Array, index: Compact | AnyNumber | Uint8Array, approve: bool | boolean | Uint8Array) => SubmittableExtrinsic, [H256, Compact, bool]>; }; @@ -782,6 +730,24 @@ declare module '@polkadot/api-base/types/submittable' { * - `proposal`: The index of the proposal to second. **/ second: AugmentedSubmittable<(proposal: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact]>; + /** + * Set or clear a metadata of a proposal or a referendum. + * + * Parameters: + * - `origin`: Must correspond to the `MetadataOwner`. + * - `ExternalOrigin` for an external proposal with the `SuperMajorityApprove` + * threshold. + * - `ExternalDefaultOrigin` for an external proposal with the `SuperMajorityAgainst` + * threshold. + * - `ExternalMajorityOrigin` for an external proposal with the `SimpleMajority` + * threshold. + * - `Signed` by a creator for a public proposal. + * - `Signed` to clear a metadata for a finished referendum. + * - `Root` to set a metadata for an ongoing referendum. + * - `owner`: an identifier of a metadata owner. + * - `maybe_hash`: The hash of an on-chain stored preimage. `None` to clear a metadata. + **/ + setMetadata: AugmentedSubmittable<(owner: PalletDemocracyMetadataOwner | { External: any } | { Proposal: any } | { Referendum: any } | string | Uint8Array, maybeHash: Option | null | Uint8Array | H256 | string) => SubmittableExtrinsic, [PalletDemocracyMetadataOwner, Option]>; /** * Undelegate the voting power of the sending account. * @@ -1172,15 +1138,6 @@ declare module '@polkadot/api-base/types/submittable' { * The sender of the call will be the new deposit owner. **/ changeDepositOwner: AugmentedSubmittable<(account: PalletDidLookupLinkableAccountLinkableAccountId | { AccountId20: any } | { AccountId32: any } | string | Uint8Array) => SubmittableExtrinsic, [PalletDidLookupLinkableAccountLinkableAccountId]>; - /** - * Executes the key type migration of the `ConnectedDids` and - * `ConnectedAccounts` storages by converting the given `AccountId` - * into `LinkableAccountId(AccountId)`. Once all keys have been - * migrated, the migration is done and this call will be filtered. - * - * Can be called by any origin. - **/ - migrate: AugmentedSubmittable<(limit: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u32]>; /** * Remove the association of the provided account. This call can only * be called from the deposit owner. The reserved deposit will be @@ -1247,14 +1204,8 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `IndexAssigned` if successful. * - * # + * ## Complexity * - `O(1)`. - * - One storage mutation (codec `O(1)`). - * - One reserve operation. - * - One event. - * ------------------- - * - DB Weight: 1 Read/Write (Accounts) - * # **/ claim: AugmentedSubmittable<(index: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u64]>; /** @@ -1269,16 +1220,8 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `IndexAssigned` if successful. * - * # + * ## Complexity * - `O(1)`. - * - One storage mutation (codec `O(1)`). - * - Up to one reserve operation. - * - One event. - * ------------------- - * - DB Weight: - * - Reads: Indices Accounts, System Account (original owner) - * - Writes: Indices Accounts, System Account (original owner) - * # **/ forceTransfer: AugmentedSubmittable<(updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, index: u64 | AnyNumber | Uint8Array, freeze: bool | boolean | Uint8Array) => SubmittableExtrinsic, [MultiAddress, u64, bool]>; /** @@ -1292,14 +1235,8 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `IndexFreed` if successful. * - * # + * ## Complexity * - `O(1)`. - * - One storage mutation (codec `O(1)`). - * - One reserve operation. - * - One event. - * ------------------- - * - DB Weight: 1 Read/Write (Accounts) - * # **/ free: AugmentedSubmittable<(index: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u64]>; /** @@ -1313,14 +1250,8 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `IndexFrozen` if successful. * - * # + * ## Complexity * - `O(1)`. - * - One storage mutation (codec `O(1)`). - * - Up to one slash operation. - * - One event. - * ------------------- - * - DB Weight: 1 Read/Write (Accounts) - * # **/ freeze: AugmentedSubmittable<(index: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [u64]>; /** @@ -1334,19 +1265,127 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `IndexAssigned` if successful. * - * # + * ## Complexity * - `O(1)`. - * - One storage mutation (codec `O(1)`). - * - One transfer operation. - * - One event. - * ------------------- - * - DB Weight: - * - Reads: Indices Accounts, System Account (recipient) - * - Writes: Indices Accounts, System Account (recipient) - * # **/ transfer: AugmentedSubmittable<(updated: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, index: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [MultiAddress, u64]>; }; + multisig: { + /** + * Register approval for a dispatch to be made from a deterministic composite account if + * approved by a total of `threshold - 1` of `other_signatories`. + * + * Payment: `DepositBase` will be reserved if this is the first approval, plus + * `threshold` times `DepositFactor`. It is returned once this dispatch happens or + * is cancelled. + * + * The dispatch origin for this call must be _Signed_. + * + * - `threshold`: The total number of approvals for this dispatch before it is executed. + * - `other_signatories`: The accounts (other than the sender) who can approve this + * dispatch. May not be empty. + * - `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is + * not the first approval, then it must be `Some`, with the timepoint (block number and + * transaction index) of the first approval transaction. + * - `call_hash`: The hash of the call to be executed. + * + * NOTE: If this is the final approval, you will want to use `as_multi` instead. + * + * ## Complexity + * - `O(S)`. + * - Up to one balance-reserve or unreserve operation. + * - One passthrough operation, one insert, both `O(S)` where `S` is the number of + * signatories. `S` is capped by `MaxSignatories`, with weight being proportional. + * - One encode & hash, both of complexity `O(S)`. + * - Up to one binary search and insert (`O(logS + S)`). + * - I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove. + * - One event. + * - Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit + * taken for its lifetime of `DepositBase + threshold * DepositFactor`. + **/ + approveAsMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec | (AccountId32 | string | Uint8Array)[], maybeTimepoint: Option | null | Uint8Array | PalletMultisigTimepoint | { height?: any; index?: any } | string, callHash: U8aFixed | string | Uint8Array, maxWeight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic, [u16, Vec, Option, U8aFixed, SpWeightsWeightV2Weight]>; + /** + * Register approval for a dispatch to be made from a deterministic composite account if + * approved by a total of `threshold - 1` of `other_signatories`. + * + * If there are enough, then dispatch the call. + * + * Payment: `DepositBase` will be reserved if this is the first approval, plus + * `threshold` times `DepositFactor`. It is returned once this dispatch happens or + * is cancelled. + * + * The dispatch origin for this call must be _Signed_. + * + * - `threshold`: The total number of approvals for this dispatch before it is executed. + * - `other_signatories`: The accounts (other than the sender) who can approve this + * dispatch. May not be empty. + * - `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is + * not the first approval, then it must be `Some`, with the timepoint (block number and + * transaction index) of the first approval transaction. + * - `call`: The call to be executed. + * + * NOTE: Unless this is the final approval, you will generally want to use + * `approve_as_multi` instead, since it only requires a hash of the call. + * + * Result is equivalent to the dispatched result if `threshold` is exactly `1`. Otherwise + * on success, result is `Ok` and the result from the interior call, if it was executed, + * may be found in the deposited `MultisigExecuted` event. + * + * ## Complexity + * - `O(S + Z + Call)`. + * - Up to one balance-reserve or unreserve operation. + * - One passthrough operation, one insert, both `O(S)` where `S` is the number of + * signatories. `S` is capped by `MaxSignatories`, with weight being proportional. + * - One call encode & hash, both of complexity `O(Z)` where `Z` is tx-len. + * - One encode & hash, both of complexity `O(S)`. + * - Up to one binary search and insert (`O(logS + S)`). + * - I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove. + * - One event. + * - The weight of the `call`. + * - Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit + * taken for its lifetime of `DepositBase + threshold * DepositFactor`. + **/ + asMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec | (AccountId32 | string | Uint8Array)[], maybeTimepoint: Option | null | Uint8Array | PalletMultisigTimepoint | { height?: any; index?: any } | string, call: Call | IMethod | string | Uint8Array, maxWeight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic, [u16, Vec, Option, Call, SpWeightsWeightV2Weight]>; + /** + * Immediately dispatch a multi-signature call using a single approval from the caller. + * + * The dispatch origin for this call must be _Signed_. + * + * - `other_signatories`: The accounts (other than the sender) who are part of the + * multi-signature, but do not participate in the approval process. + * - `call`: The call to be executed. + * + * Result is equivalent to the dispatched result. + * + * ## Complexity + * O(Z + C) where Z is the length of the call and C its execution weight. + **/ + asMultiThreshold1: AugmentedSubmittable<(otherSignatories: Vec | (AccountId32 | string | Uint8Array)[], call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic, [Vec, Call]>; + /** + * Cancel a pre-existing, on-going multisig transaction. Any deposit reserved previously + * for this operation will be unreserved on success. + * + * The dispatch origin for this call must be _Signed_. + * + * - `threshold`: The total number of approvals for this dispatch before it is executed. + * - `other_signatories`: The accounts (other than the sender) who can approve this + * dispatch. May not be empty. + * - `timepoint`: The timepoint (block number and transaction index) of the first approval + * transaction for this dispatch. + * - `call_hash`: The hash of the call to be executed. + * + * ## Complexity + * - `O(S)`. + * - Up to one balance-reserve or unreserve operation. + * - One passthrough operation, one insert, both `O(S)` where `S` is the number of + * signatories. `S` is capped by `MaxSignatories`, with weight being proportional. + * - One encode & hash, both of complexity `O(S)`. + * - One event. + * - I/O: 1 read `O(S)`, one remove. + * - Storage: removes one item. + **/ + cancelAsMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec | (AccountId32 | string | Uint8Array)[], timepoint: PalletMultisigTimepoint | { height?: any; index?: any } | string | Uint8Array, callHash: U8aFixed | string | Uint8Array) => SubmittableExtrinsic, [u16, Vec, PalletMultisigTimepoint, U8aFixed]>; + }; parachainStaking: { /** * Revert the previously requested exit of the network of a collator @@ -1677,7 +1716,28 @@ declare module '@polkadot/api-base/types/submittable' { unlockUnstaked: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress]>; }; parachainSystem: { - authorizeUpgrade: AugmentedSubmittable<(codeHash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; + /** + * Authorize an upgrade to a given `code_hash` for the runtime. The runtime can be supplied + * later. + * + * The `check_version` parameter sets a boolean flag for whether or not the runtime's spec + * version and name should be verified on upgrade. Since the authorization only has a hash, + * it cannot actually perform the verification. + * + * This call requires Root origin. + **/ + authorizeUpgrade: AugmentedSubmittable<(codeHash: H256 | string | Uint8Array, checkVersion: bool | boolean | Uint8Array) => SubmittableExtrinsic, [H256, bool]>; + /** + * Provide the preimage (runtime binary) `code` for an upgrade that has been authorized. + * + * If the authorization required a version check, this call will ensure the spec name + * remains unchanged and that the spec version has increased. + * + * Note that this function will not apply the new `code`, but only attempt to schedule the + * upgrade with the Relay Chain. + * + * All origins are allowed. + **/ enactAuthorizedUpgrade: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic, [Bytes]>; /** * Set the current validation data. @@ -2101,10 +2161,6 @@ declare module '@polkadot/api-base/types/submittable' { schedule: AugmentedSubmittable<(when: u64 | AnyNumber | Uint8Array, maybePeriodic: Option> | null | Uint8Array | ITuple<[u64, u32]> | [u64 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic, [u64, Option>, u8, Call]>; /** * Anonymously schedule a task after a delay. - * - * # - * Same as [`schedule`]. - * # **/ scheduleAfter: AugmentedSubmittable<(after: u64 | AnyNumber | Uint8Array, maybePeriodic: Option> | null | Uint8Array | ITuple<[u64, u32]> | [u64 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic, [u64, Option>, u8, Call]>; /** @@ -2113,10 +2169,6 @@ declare module '@polkadot/api-base/types/submittable' { scheduleNamed: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, when: u64 | AnyNumber | Uint8Array, maybePeriodic: Option> | null | Uint8Array | ITuple<[u64, u32]> | [u64 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic, [U8aFixed, u64, Option>, u8, Call]>; /** * Schedule a named task after a delay. - * - * # - * Same as [`schedule_named`](Self::schedule_named). - * # **/ scheduleNamedAfter: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, after: u64 | AnyNumber | Uint8Array, maybePeriodic: Option> | null | Uint8Array | ITuple<[u64, u32]> | [u64 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic, [U8aFixed, u64, Option>, u8, Call]>; }; @@ -2131,13 +2183,9 @@ declare module '@polkadot/api-base/types/submittable' { * means being a controller account) or directly convertible into a validator ID (which * usually means being a stash account). * - * # - * - Complexity: `O(1)` in number of key types. Actual cost depends on the number of length - * of `T::Keys::key_ids()` which is fixed. - * - DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account` - * - DbWrites: `NextKeys`, `origin account` - * - DbWrites per key id: `KeyOwner` - * # + * ## Complexity + * - `O(1)` in number of key types. Actual cost depends on the number of length of + * `T::Keys::key_ids()` which is fixed. **/ purgeKeys: AugmentedSubmittable<() => SubmittableExtrinsic, []>; /** @@ -2147,14 +2195,9 @@ declare module '@polkadot/api-base/types/submittable' { * * The dispatch origin of this function must be signed. * - * # - * - Complexity: `O(1)`. Actual cost depends on the number of length of - * `T::Keys::key_ids()` which is fixed. - * - DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys` - * - DbWrites: `origin account`, `NextKeys` - * - DbReads per key id: `KeyOwner` - * - DbWrites per key id: `KeyOwner` - * # + * ## Complexity + * - `O(1)`. Actual cost depends on the number of length of `T::Keys::key_ids()` which is + * fixed. **/ setKeys: AugmentedSubmittable<(keys: SpiritnetRuntimeSessionKeys | { aura?: any } | string | Uint8Array, proof: Bytes | string | Uint8Array) => SubmittableExtrinsic, [SpiritnetRuntimeSessionKeys, Bytes]>; }; @@ -2173,9 +2216,8 @@ declare module '@polkadot/api-base/types/submittable' { /** * Make some on-chain remark. * - * # + * ## Complexity * - `O(1)` - * # **/ remark: AugmentedSubmittable<(remark: Bytes | string | Uint8Array) => SubmittableExtrinsic, [Bytes]>; /** @@ -2185,28 +2227,15 @@ declare module '@polkadot/api-base/types/submittable' { /** * Set the new runtime code. * - * # + * ## Complexity * - `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code` - * - 1 call to `can_set_code`: `O(S)` (calls `sp_io::misc::runtime_version` which is - * expensive). - * - 1 storage write (codec `O(C)`). - * - 1 digest item. - * - 1 event. - * The weight of this function is dependent on the runtime, but generally this is very - * expensive. We will treat this as a full block. - * # **/ setCode: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic, [Bytes]>; /** * Set the new runtime code without doing any checks of the given `code`. * - * # + * ## Complexity * - `O(C)` where `C` length of `code` - * - 1 storage write (codec `O(C)`). - * - 1 digest item. - * - 1 event. - * The weight of this function is dependent on the runtime. We will treat this as a full - * block. # **/ setCodeWithoutChecks: AugmentedSubmittable<(code: Bytes | string | Uint8Array) => SubmittableExtrinsic, [Bytes]>; /** @@ -2238,20 +2267,12 @@ declare module '@polkadot/api-base/types/submittable' { * + `length_bound`: The upper bound for the length of the proposal in storage. Checked via * `storage::read` so it is `size_of::() == 4` larger than the pure length. * - * # - * ## Weight + * ## Complexity * - `O(B + M + P1 + P2)` where: * - `B` is `proposal` size in bytes (length-fee-bounded) * - `M` is members-count (code- and governance-bounded) * - `P1` is the complexity of `proposal` preimage. * - `P2` is proposal-count (code-bounded) - * - DB: - * - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`) - * - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec - * `O(P2)`) - * - any mutations done while executing `proposal` (`P1`) - * - up to 3 events - * # **/ close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [H256, Compact, SpWeightsWeightV2Weight, Compact]>; /** @@ -2273,20 +2294,12 @@ declare module '@polkadot/api-base/types/submittable' { * + `length_bound`: The upper bound for the length of the proposal in storage. Checked via * `storage::read` so it is `size_of::() == 4` larger than the pure length. * - * # - * ## Weight + * ## Complexity * - `O(B + M + P1 + P2)` where: * - `B` is `proposal` size in bytes (length-fee-bounded) * - `M` is members-count (code- and governance-bounded) * - `P1` is the complexity of `proposal` preimage. * - `P2` is proposal-count (code-bounded) - * - DB: - * - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`) - * - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec - * `O(P2)`) - * - any mutations done while executing `proposal` (`P1`) - * - up to 3 events - * # **/ closeOldWeight: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact | AnyNumber | Uint8Array, proposalWeightBound: Compact | AnyNumber | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [H256, Compact, Compact, Compact]>; /** @@ -2298,12 +2311,8 @@ declare module '@polkadot/api-base/types/submittable' { * Parameters: * * `proposal_hash`: The hash of the proposal that should be disapproved. * - * # - * Complexity: O(P) where P is the number of max proposals - * DB Weight: - * * Reads: Proposals - * * Writes: Voting, Proposals, ProposalOf - * # + * ## Complexity + * O(P) where P is the number of max proposals **/ disapproveProposal: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** @@ -2311,13 +2320,11 @@ declare module '@polkadot/api-base/types/submittable' { * * Origin must be a member of the collective. * - * # - * ## Weight - * - `O(M + P)` where `M` members-count (code-bounded) and `P` complexity of dispatching - * `proposal` - * - DB: 1 read (codec `O(M)`) + DB access of `proposal` - * - 1 event - * # + * ## Complexity: + * - `O(B + M + P)` where: + * - `B` is `proposal` size in bytes (length-fee-bounded) + * - `M` members-count (code-bounded) + * - `P` complexity of dispatching `proposal` **/ execute: AugmentedSubmittable<(proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Call, Compact]>; /** @@ -2328,26 +2335,13 @@ declare module '@polkadot/api-base/types/submittable' { * `threshold` determines whether `proposal` is executed directly (`threshold < 2`) * or put up for voting. * - * # - * ## Weight + * ## Complexity * - `O(B + M + P1)` or `O(B + M + P2)` where: * - `B` is `proposal` size in bytes (length-fee-bounded) * - `M` is members-count (code- and governance-bounded) * - branching is influenced by `threshold` where: * - `P1` is proposal execution complexity (`threshold < 2`) * - `P2` is proposals-count (code-bounded) (`threshold >= 2`) - * - DB: - * - 1 storage read `is_member` (codec `O(M)`) - * - 1 storage read `ProposalOf::contains_key` (codec `O(1)`) - * - DB accesses influenced by `threshold`: - * - EITHER storage accesses done by `proposal` (`threshold < 2`) - * - OR proposal insertion (`threshold <= 2`) - * - 1 storage mutation `Proposals` (codec `O(P2)`) - * - 1 storage mutation `ProposalCount` (codec `O(1)`) - * - 1 storage write `ProposalOf` (codec `O(B)`) - * - 1 storage write `Voting` (codec `O(M)`) - * - 1 event - * # **/ propose: AugmentedSubmittable<(threshold: Compact | AnyNumber | Uint8Array, proposal: Call | IMethod | string | Uint8Array, lengthBound: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact, Call, Compact]>; /** @@ -2358,7 +2352,7 @@ declare module '@polkadot/api-base/types/submittable' { * - `old_count`: The upper bound for the previous number of members in storage. Used for * weight estimation. * - * Requires root origin. + * The dispatch of this call must be `SetMembersOrigin`. * * NOTE: Does not enforce the expected `MaxMembers` limit on the amount of members, but * the weight estimations rely on it to estimate dispatchable weight. @@ -2370,19 +2364,11 @@ declare module '@polkadot/api-base/types/submittable' { * Any call to `set_members` must be careful that the member set doesn't get out of sync * with other logic managing the member set. * - * # - * ## Weight + * ## Complexity: * - `O(MP + N)` where: * - `M` old-members-count (code- and governance-bounded) * - `N` new-members-count (code- and governance-bounded) * - `P` proposals-count (code-bounded) - * - DB: - * - 1 storage mutation (codec `O(M)` read, `O(N)` write) for reading and writing the - * members - * - 1 storage read (codec `O(P)`) for reading the proposals - * - `P` storage mutations (codec `O(M)`) for updating the votes for each proposal - * - 1 storage write (codec `O(1)`) for deleting the old `prime` and setting the new one - * # **/ setMembers: AugmentedSubmittable<(newMembers: Vec | (AccountId32 | string | Uint8Array)[], prime: Option | null | Uint8Array | AccountId32 | string, oldCount: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Vec, Option, u32]>; /** @@ -2393,14 +2379,8 @@ declare module '@polkadot/api-base/types/submittable' { * Transaction fees will be waived if the member is voting on any particular proposal * for the first time and the call is successful. Subsequent vote changes will charge a * fee. - * # - * ## Weight + * ## Complexity * - `O(M)` where `M` is members-count (code- and governance-bounded) - * - DB: - * - 1 storage read `Members` (codec `O(M)`) - * - 1 storage mutation `Voting` (codec `O(M)`) - * - 1 event - * # **/ vote: AugmentedSubmittable<(proposal: H256 | string | Uint8Array, index: Compact | AnyNumber | Uint8Array, approve: bool | boolean | Uint8Array) => SubmittableExtrinsic, [H256, Compact, bool]>; }; @@ -2465,12 +2445,11 @@ declare module '@polkadot/api-base/types/submittable' { * * The dispatch origin for this call must be `Inherent`. * - * # + * ## Complexity * - `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`) * - 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in * `on_finalize`) * - 1 event handler `on_timestamp_set`. Must be `O(1)`. - * # **/ set: AugmentedSubmittable<(now: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact]>; }; @@ -2485,13 +2464,10 @@ declare module '@polkadot/api-base/types/submittable' { * - `hash`: The identity of the open tip for which a tip value is declared. This is formed * as the hash of the tuple of the original tip `reason` and the beneficiary account ID. * - * # - * - Complexity: `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length - * `T`. `T` is charged as upper bound given by `ContainsLengthBound`. The actual cost - * depends on the implementation of `T::Tippers`. - * - DbReads: `Tips`, `Tippers`, `tip finder` - * - DbWrites: `Reasons`, `Tips`, `Tippers`, `tip finder` - * # + * ## Complexity + * - : `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length `T`. `T` + * is charged as upper bound given by `ContainsLengthBound`. The actual cost depends on + * the implementation of `T::Tippers`. **/ closeTip: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** @@ -2508,12 +2484,9 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `NewTip` if successful. * - * # - * - Complexity: `O(R)` where `R` length of `reason`. + * ## Complexity + * - `O(R)` where `R` length of `reason`. * - encoding and hashing of 'reason' - * - DbReads: `Reasons`, `Tips` - * - DbWrites: `Reasons`, `Tips` - * # **/ reportAwesome: AugmentedSubmittable<(reason: Bytes | string | Uint8Array, who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [Bytes, MultiAddress]>; /** @@ -2530,12 +2503,9 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `TipRetracted` if successful. * - * # - * - Complexity: `O(1)` + * ## Complexity + * - `O(1)` * - Depends on the length of `T::Hash` which is fixed. - * - DbReads: `Tips`, `origin account` - * - DbWrites: `Reasons`, `Tips`, `origin account` - * # **/ retractTip: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** @@ -2547,10 +2517,8 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `TipSlashed` if successful. * - * # - * `T` is charged as upper bound given by `ContainsLengthBound`. - * The actual cost depends on the implementation of `T::Tippers`. - * # + * ## Complexity + * - O(1). **/ slashTip: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic, [H256]>; /** @@ -2568,16 +2536,13 @@ declare module '@polkadot/api-base/types/submittable' { * Emits `TipClosing` if the threshold of tippers has been reached and the countdown period * has started. * - * # - * - Complexity: `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length - * `T`, insert tip and check closing, `T` is charged as upper bound given by - * `ContainsLengthBound`. The actual cost depends on the implementation of `T::Tippers`. + * ## Complexity + * - `O(T)` where `T` is the number of tippers. decoding `Tipper` vec of length `T`, insert + * tip and check closing, `T` is charged as upper bound given by `ContainsLengthBound`. + * The actual cost depends on the implementation of `T::Tippers`. * * Actually weight could be lower as it depends on how many tips are in `OpenTip` but it * is weighted as if almost full i.e of length `T-1`. - * - DbReads: `Tippers`, `Tips` - * - DbWrites: `Tips` - * # **/ tip: AugmentedSubmittable<(hash: H256 | string | Uint8Array, tipValue: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [H256, Compact]>; /** @@ -2594,15 +2559,12 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits `NewTip` if successful. * - * # - * - Complexity: `O(R + T)` where `R` length of `reason`, `T` is the number of tippers. + * ## Complexity + * - `O(R + T)` where `R` length of `reason`, `T` is the number of tippers. * - `O(T)`: decoding `Tipper` vec of length `T`. `T` is charged as upper bound given by * `ContainsLengthBound`. The actual cost depends on the implementation of * `T::Tippers`. * - `O(R)`: hashing and encoding of reason of length `R` - * - DbReads: `Tippers`, `Reasons` - * - DbWrites: `Reasons`, `Tips` - * # **/ tipNew: AugmentedSubmittable<(reason: Bytes | string | Uint8Array, who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, tipValue: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Bytes, MultiAddress, Compact]>; }; @@ -2662,11 +2624,8 @@ declare module '@polkadot/api-base/types/submittable' { * * May only be called from `T::ApproveOrigin`. * - * # - * - Complexity: O(1). - * - DbReads: `Proposals`, `Approvals` - * - DbWrite: `Approvals` - * # + * ## Complexity + * - O(1). **/ approveProposal: AugmentedSubmittable<(proposalId: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact]>; /** @@ -2674,11 +2633,8 @@ declare module '@polkadot/api-base/types/submittable' { * is reserved and slashed if the proposal is rejected. It is returned once the * proposal is awarded. * - * # - * - Complexity: O(1) - * - DbReads: `ProposalCount`, `origin account` - * - DbWrites: `ProposalCount`, `Proposals`, `origin account` - * # + * ## Complexity + * - O(1) **/ proposeSpend: AugmentedSubmittable<(value: Compact | AnyNumber | Uint8Array, beneficiary: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [Compact, MultiAddress]>; /** @@ -2686,11 +2642,8 @@ declare module '@polkadot/api-base/types/submittable' { * * May only be called from `T::RejectOrigin`. * - * # - * - Complexity: O(1) - * - DbReads: `Proposals`, `rejected proposer account` - * - DbWrites: `Proposals`, `rejected proposer account` - * # + * ## Complexity + * - O(1) **/ rejectProposal: AugmentedSubmittable<(proposalId: Compact | AnyNumber | Uint8Array) => SubmittableExtrinsic, [Compact]>; /** @@ -2700,10 +2653,8 @@ declare module '@polkadot/api-base/types/submittable' { * May only be called from `T::RejectOrigin`. * - `proposal_id`: The index of a proposal * - * # - * - Complexity: O(A) where `A` is the number of approvals - * - Db reads and writes: `Approvals` - * # + * ## Complexity + * - O(A) where `A` is the number of approvals * * Errors: * - `ProposalNotApproved`: The `proposal_id` supplied was not found in the approval queue, @@ -2751,9 +2702,8 @@ declare module '@polkadot/api-base/types/submittable' { * If origin is root then the calls are dispatched without checking origin filter. (This * includes bypassing `frame_system::Config::BaseCallFilter`). * - * # - * - Complexity: O(C) where C is the number of calls to be batched. - * # + * ## Complexity + * - O(C) where C is the number of calls to be batched. * * This will return `Ok` in all circumstances. To determine the success of the batch, an * event is deposited. If a call failed and the batch was interrupted, then the @@ -2774,9 +2724,8 @@ declare module '@polkadot/api-base/types/submittable' { * If origin is root then the calls are dispatched without checking origin filter. (This * includes bypassing `frame_system::Config::BaseCallFilter`). * - * # - * - Complexity: O(C) where C is the number of calls to be batched. - * # + * ## Complexity + * - O(C) where C is the number of calls to be batched. **/ batchAll: AugmentedSubmittable<(calls: Vec | (Call | IMethod | string | Uint8Array)[]) => SubmittableExtrinsic, [Vec]>; /** @@ -2784,12 +2733,8 @@ declare module '@polkadot/api-base/types/submittable' { * * The dispatch origin for this call must be _Root_. * - * # + * ## Complexity * - O(1). - * - Limited storage reads. - * - One DB write (event). - * - Weight of derivative `call` execution + T::WeightInfo::dispatch_as(). - * # **/ dispatchAs: AugmentedSubmittable<(asOrigin: SpiritnetRuntimeOriginCaller | { system: any } | { Void: any } | { Council: any } | { TechnicalCommittee: any } | { Did: any } | { PolkadotXcm: any } | { CumulusXcm: any } | string | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic, [SpiritnetRuntimeOriginCaller, Call]>; /** @@ -2804,9 +2749,8 @@ declare module '@polkadot/api-base/types/submittable' { * If origin is root then the calls are dispatch without checking origin filter. (This * includes bypassing `frame_system::Config::BaseCallFilter`). * - * # - * - Complexity: O(C) where C is the number of calls to be batched. - * # + * ## Complexity + * - O(C) where C is the number of calls to be batched. **/ forceBatch: AugmentedSubmittable<(calls: Vec | (Call | IMethod | string | Uint8Array)[]) => SubmittableExtrinsic, [Vec]>; /** @@ -2833,12 +2777,8 @@ declare module '@polkadot/api-base/types/submittable' { * * NOTE: This will unlock all schedules through the current block. * - * # + * ## Complexity * - `O(1)`. - * - DbWeight: 4 Reads, 4 Writes - * - Reads: Vesting Storage, Balances Locks, Target Account, Source Account - * - Writes: Vesting Storage, Balances Locks, Target Account, Source Account - * # **/ forceVestedTransfer: AugmentedSubmittable<(source: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, schedule: PalletVestingVestingInfo | { locked?: any; perBlock?: any; startingBlock?: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress, MultiAddress, PalletVestingVestingInfo]>; /** @@ -2873,12 +2813,8 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits either `VestingCompleted` or `VestingUpdated`. * - * # + * ## Complexity * - `O(1)`. - * - DbWeight: 2 Reads, 2 Writes - * - Reads: Vesting Storage, Balances Locks, [Sender Account] - * - Writes: Vesting Storage, Balances Locks, [Sender Account] - * # **/ vest: AugmentedSubmittable<() => SubmittableExtrinsic, []>; /** @@ -2893,12 +2829,8 @@ declare module '@polkadot/api-base/types/submittable' { * * NOTE: This will unlock all schedules through the current block. * - * # + * ## Complexity * - `O(1)`. - * - DbWeight: 3 Reads, 3 Writes - * - Reads: Vesting Storage, Balances Locks, Target Account, [Sender Account] - * - Writes: Vesting Storage, Balances Locks, Target Account, [Sender Account] - * # **/ vestedTransfer: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, schedule: PalletVestingVestingInfo | { locked?: any; perBlock?: any; startingBlock?: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress, PalletVestingVestingInfo]>; /** @@ -2911,12 +2843,8 @@ declare module '@polkadot/api-base/types/submittable' { * * Emits either `VestingCompleted` or `VestingUpdated`. * - * # + * ## Complexity * - `O(1)`. - * - DbWeight: 3 Reads, 3 Writes - * - Reads: Vesting Storage, Balances Locks, Target Account - * - Writes: Vesting Storage, Balances Locks, Target Account - * # **/ vestOther: AugmentedSubmittable<(target: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic, [MultiAddress]>; }; diff --git a/packages/augment-api/src/interfaces/lookup.ts b/packages/augment-api/src/interfaces/lookup.ts index 835e39a28..f072e2941 100644 --- a/packages/augment-api/src/interfaces/lookup.ts +++ b/packages/augment-api/src/interfaces/lookup.ts @@ -338,7 +338,29 @@ export default { propIndex: 'u32', }, ProposalCanceled: { - propIndex: 'u32' + propIndex: 'u32', + }, + MetadataSet: { + _alias: { + hash_: 'hash', + }, + owner: 'PalletDemocracyMetadataOwner', + hash_: 'H256', + }, + MetadataCleared: { + _alias: { + hash_: 'hash', + }, + owner: 'PalletDemocracyMetadataOwner', + hash_: 'H256', + }, + MetadataTransferred: { + _alias: { + hash_: 'hash', + }, + prevOwner: 'PalletDemocracyMetadataOwner', + owner: 'PalletDemocracyMetadataOwner', + hash_: 'H256' } } }, @@ -364,7 +386,17 @@ export default { } }, /** - * Lookup40: pallet_collective::pallet::Event + * Lookup40: pallet_democracy::types::MetadataOwner + **/ + PalletDemocracyMetadataOwner: { + _enum: { + External: 'Null', + Proposal: 'u32', + Referendum: 'u32' + } + }, + /** + * Lookup41: pallet_collective::pallet::Event **/ PalletCollectiveEvent: { _enum: { @@ -403,13 +435,13 @@ export default { } }, /** - * Lookup45: pallet_membership::pallet::Event + * Lookup46: pallet_membership::pallet::Event **/ PalletMembershipEvent: { _enum: ['MemberAdded', 'MemberRemoved', 'MembersSwapped', 'MembersReset', 'KeyChanged', 'Dummy'] }, /** - * Lookup46: pallet_treasury::pallet::Event + * Lookup47: pallet_treasury::pallet::Event **/ PalletTreasuryEvent: { _enum: { @@ -449,7 +481,7 @@ export default { } }, /** - * Lookup47: pallet_utility::pallet::Event + * Lookup48: pallet_utility::pallet::Event **/ PalletUtilityEvent: { _enum: { @@ -469,7 +501,7 @@ export default { } }, /** - * Lookup48: pallet_vesting::pallet::Event + * Lookup49: pallet_vesting::pallet::Event **/ PalletVestingEvent: { _enum: { @@ -483,7 +515,7 @@ export default { } }, /** - * Lookup49: pallet_scheduler::pallet::Event + * Lookup50: pallet_scheduler::pallet::Event **/ PalletSchedulerEvent: { _enum: { @@ -515,7 +547,7 @@ export default { } }, /** - * Lookup52: pallet_proxy::pallet::Event + * Lookup53: pallet_proxy::pallet::Event **/ PalletProxyEvent: { _enum: { @@ -548,13 +580,13 @@ export default { } }, /** - * Lookup53: spiritnet_runtime::ProxyType + * Lookup54: spiritnet_runtime::ProxyType **/ SpiritnetRuntimeProxyType: { _enum: ['Any', 'NonTransfer', 'Governance', 'ParachainStaking', 'CancelProxy', 'NonDepositClaiming'] }, /** - * Lookup55: pallet_preimage::pallet::Event + * Lookup56: pallet_preimage::pallet::Event **/ PalletPreimageEvent: { _enum: { @@ -579,7 +611,7 @@ export default { } }, /** - * Lookup57: pallet_tips::pallet::Event + * Lookup58: pallet_tips::pallet::Event **/ PalletTipsEvent: { _enum: { @@ -605,7 +637,45 @@ export default { } }, /** - * Lookup58: ctype::pallet::Event + * Lookup59: pallet_multisig::pallet::Event + **/ + PalletMultisigEvent: { + _enum: { + NewMultisig: { + approving: 'AccountId32', + multisig: 'AccountId32', + callHash: '[u8;32]', + }, + MultisigApproval: { + approving: 'AccountId32', + timepoint: 'PalletMultisigTimepoint', + multisig: 'AccountId32', + callHash: '[u8;32]', + }, + MultisigExecuted: { + approving: 'AccountId32', + timepoint: 'PalletMultisigTimepoint', + multisig: 'AccountId32', + callHash: '[u8;32]', + result: 'Result', + }, + MultisigCancelled: { + cancelling: 'AccountId32', + timepoint: 'PalletMultisigTimepoint', + multisig: 'AccountId32', + callHash: '[u8;32]' + } + } + }, + /** + * Lookup60: pallet_multisig::Timepoint + **/ + PalletMultisigTimepoint: { + height: 'u64', + index: 'u32' + }, + /** + * Lookup61: ctype::pallet::Event **/ CtypeEvent: { _enum: { @@ -614,7 +684,7 @@ export default { } }, /** - * Lookup59: attestation::pallet::Event + * Lookup62: attestation::pallet::Event **/ AttestationEvent: { _enum: { @@ -625,7 +695,7 @@ export default { } }, /** - * Lookup61: runtime_common::authorization::AuthorizationId + * Lookup64: runtime_common::authorization::AuthorizationId **/ RuntimeCommonAuthorizationAuthorizationId: { _enum: { @@ -633,7 +703,7 @@ export default { } }, /** - * Lookup62: delegation::pallet::Event + * Lookup65: delegation::pallet::Event **/ DelegationEvent: { _enum: { @@ -647,13 +717,13 @@ export default { } }, /** - * Lookup63: delegation::delegation_hierarchy::Permissions + * Lookup66: delegation::delegation_hierarchy::Permissions **/ DelegationDelegationHierarchyPermissions: { bits: 'u32' }, /** - * Lookup64: did::pallet::Event + * Lookup67: did::pallet::Event **/ DidEvent: { _enum: { @@ -664,7 +734,7 @@ export default { } }, /** - * Lookup65: pallet_did_lookup::pallet::Event + * Lookup68: pallet_did_lookup::pallet::Event **/ PalletDidLookupEvent: { _enum: { @@ -675,7 +745,7 @@ export default { } }, /** - * Lookup66: pallet_did_lookup::linkable_account::LinkableAccountId + * Lookup69: pallet_did_lookup::linkable_account::LinkableAccountId **/ PalletDidLookupLinkableAccountLinkableAccountId: { _enum: { @@ -684,11 +754,11 @@ export default { } }, /** - * Lookup67: pallet_did_lookup::account::AccountId20 + * Lookup70: pallet_did_lookup::account::AccountId20 **/ PalletDidLookupAccountAccountId20: '[u8;20]', /** - * Lookup69: pallet_web3_names::pallet::Event + * Lookup72: pallet_web3_names::pallet::Event **/ PalletWeb3NamesEvent: { _enum: { @@ -709,7 +779,7 @@ export default { } }, /** - * Lookup72: public_credentials::pallet::Event + * Lookup75: public_credentials::pallet::Event **/ PublicCredentialsEvent: { _enum: { @@ -730,18 +800,18 @@ export default { } }, /** - * Lookup73: runtime_common::assets::AssetDid + * Lookup76: runtime_common::assets::AssetDid **/ RuntimeCommonAssetsAssetDid: 'KiltAssetDidsV1AssetDid', /** - * Lookup74: kilt_asset_dids::v1::AssetDid + * Lookup77: kilt_asset_dids::v1::AssetDid **/ KiltAssetDidsV1AssetDid: { chainId: 'KiltAssetDidsChainV1ChainId', assetId: 'KiltAssetDidsAssetV1AssetId' }, /** - * Lookup75: kilt_asset_dids::chain::v1::ChainId + * Lookup78: kilt_asset_dids::chain::v1::ChainId **/ KiltAssetDidsChainV1ChainId: { _enum: { @@ -753,18 +823,18 @@ export default { } }, /** - * Lookup77: kilt_asset_dids::chain::v1::GenesisHexHash32Reference + * Lookup80: kilt_asset_dids::chain::v1::GenesisHexHash32Reference **/ KiltAssetDidsChainV1GenesisHexHash32Reference: '[u8;16]', /** - * Lookup81: kilt_asset_dids::chain::v1::GenericChainId + * Lookup84: kilt_asset_dids::chain::v1::GenericChainId **/ KiltAssetDidsChainV1GenericChainId: { namespace: 'Bytes', reference: 'Bytes' }, /** - * Lookup85: kilt_asset_dids::asset::v1::AssetId + * Lookup88: kilt_asset_dids::asset::v1::AssetId **/ KiltAssetDidsAssetV1AssetId: { _enum: { @@ -776,15 +846,15 @@ export default { } }, /** - * Lookup89: kilt_asset_dids::asset::v1::EvmSmartContractFungibleReference + * Lookup92: kilt_asset_dids::asset::v1::EvmSmartContractFungibleReference **/ KiltAssetDidsAssetV1EvmSmartContractFungibleReference: '[u8;20]', /** - * Lookup90: kilt_asset_dids::asset::v1::EvmSmartContractNonFungibleReference + * Lookup93: kilt_asset_dids::asset::v1::EvmSmartContractNonFungibleReference **/ KiltAssetDidsAssetV1EvmSmartContractNonFungibleReference: '(KiltAssetDidsAssetV1EvmSmartContractFungibleReference,Option)', /** - * Lookup94: kilt_asset_dids::asset::v1::GenericAssetId + * Lookup97: kilt_asset_dids::asset::v1::GenericAssetId **/ KiltAssetDidsAssetV1GenericAssetId: { namespace: 'Bytes', @@ -792,7 +862,7 @@ export default { id: 'Option' }, /** - * Lookup100: cumulus_pallet_parachain_system::pallet::Event + * Lookup103: cumulus_pallet_parachain_system::pallet::Event **/ CumulusPalletParachainSystemEvent: { _enum: { @@ -817,7 +887,7 @@ export default { } }, /** - * Lookup101: cumulus_pallet_xcmp_queue::pallet::Event + * Lookup104: cumulus_pallet_xcmp_queue::pallet::Event **/ CumulusPalletXcmpQueueEvent: { _enum: { @@ -852,7 +922,7 @@ export default { } }, /** - * Lookup102: xcm::v3::traits::Error + * Lookup105: xcm::v3::traits::Error **/ XcmV3TraitsError: { _enum: { @@ -899,7 +969,7 @@ export default { } }, /** - * Lookup104: pallet_xcm::pallet::Event + * Lookup107: pallet_xcm::pallet::Event **/ PalletXcmEvent: { _enum: { @@ -929,7 +999,7 @@ export default { } }, /** - * Lookup105: xcm::v3::traits::Outcome + * Lookup108: xcm::v3::traits::Outcome **/ XcmV3TraitsOutcome: { _enum: { @@ -939,14 +1009,14 @@ export default { } }, /** - * Lookup106: xcm::v3::multilocation::MultiLocation + * Lookup109: xcm::v3::multilocation::MultiLocation **/ XcmV3MultiLocation: { parents: 'u8', interior: 'XcmV3Junctions' }, /** - * Lookup107: xcm::v3::junctions::Junctions + * Lookup110: xcm::v3::junctions::Junctions **/ XcmV3Junctions: { _enum: { @@ -962,7 +1032,7 @@ export default { } }, /** - * Lookup108: xcm::v3::junction::Junction + * Lookup111: xcm::v3::junction::Junction **/ XcmV3Junction: { _enum: { @@ -994,7 +1064,7 @@ export default { } }, /** - * Lookup111: xcm::v3::junction::NetworkId + * Lookup114: xcm::v3::junction::NetworkId **/ XcmV3JunctionNetworkId: { _enum: { @@ -1016,7 +1086,7 @@ export default { } }, /** - * Lookup113: xcm::v3::junction::BodyId + * Lookup116: xcm::v3::junction::BodyId **/ XcmV3JunctionBodyId: { _enum: { @@ -1033,7 +1103,7 @@ export default { } }, /** - * Lookup114: xcm::v3::junction::BodyPart + * Lookup117: xcm::v3::junction::BodyPart **/ XcmV3JunctionBodyPart: { _enum: { @@ -1056,11 +1126,11 @@ export default { } }, /** - * Lookup115: xcm::v3::Xcm + * Lookup118: xcm::v3::Xcm **/ XcmV3Xcm: 'Vec', /** - * Lookup117: xcm::v3::Instruction + * Lookup120: xcm::v3::Instruction **/ XcmV3Instruction: { _enum: { @@ -1202,18 +1272,18 @@ export default { } }, /** - * Lookup118: xcm::v3::multiasset::MultiAssets + * Lookup121: xcm::v3::multiasset::MultiAssets **/ XcmV3MultiassetMultiAssets: 'Vec', /** - * Lookup120: xcm::v3::multiasset::MultiAsset + * Lookup123: xcm::v3::multiasset::MultiAsset **/ XcmV3MultiAsset: { id: 'XcmV3MultiassetAssetId', fun: 'XcmV3MultiassetFungibility' }, /** - * Lookup121: xcm::v3::multiasset::AssetId + * Lookup124: xcm::v3::multiasset::AssetId **/ XcmV3MultiassetAssetId: { _enum: { @@ -1222,7 +1292,7 @@ export default { } }, /** - * Lookup122: xcm::v3::multiasset::Fungibility + * Lookup125: xcm::v3::multiasset::Fungibility **/ XcmV3MultiassetFungibility: { _enum: { @@ -1231,7 +1301,7 @@ export default { } }, /** - * Lookup123: xcm::v3::multiasset::AssetInstance + * Lookup126: xcm::v3::multiasset::AssetInstance **/ XcmV3MultiassetAssetInstance: { _enum: { @@ -1244,7 +1314,7 @@ export default { } }, /** - * Lookup125: xcm::v3::Response + * Lookup128: xcm::v3::Response **/ XcmV3Response: { _enum: { @@ -1252,16 +1322,12 @@ export default { Assets: 'XcmV3MultiassetMultiAssets', ExecutionResult: 'Option<(u32,XcmV3TraitsError)>', Version: 'u32', - PalletsInfo: 'XcmV3VecPalletInfo', + PalletsInfo: 'Vec', DispatchResult: 'XcmV3MaybeErrorCode' } }, /** - * Lookup128: xcm::v3::VecPalletInfo - **/ - XcmV3VecPalletInfo: 'Vec', - /** - * Lookup130: xcm::v3::PalletInfo + * Lookup132: xcm::v3::PalletInfo **/ XcmV3PalletInfo: { index: 'Compact', @@ -1272,7 +1338,7 @@ export default { patch: 'Compact' }, /** - * Lookup131: xcm::v3::MaybeErrorCode + * Lookup135: xcm::v3::MaybeErrorCode **/ XcmV3MaybeErrorCode: { _enum: { @@ -1282,19 +1348,19 @@ export default { } }, /** - * Lookup133: xcm::v2::OriginKind + * Lookup138: xcm::v2::OriginKind **/ XcmV2OriginKind: { _enum: ['Native', 'SovereignAccount', 'Superuser', 'Xcm'] }, /** - * Lookup134: xcm::double_encoded::DoubleEncoded + * Lookup139: xcm::double_encoded::DoubleEncoded **/ XcmDoubleEncoded: { encoded: 'Bytes' }, /** - * Lookup135: xcm::v3::QueryResponseInfo + * Lookup140: xcm::v3::QueryResponseInfo **/ XcmV3QueryResponseInfo: { destination: 'XcmV3MultiLocation', @@ -1302,7 +1368,7 @@ export default { maxWeight: 'SpWeightsWeightV2Weight' }, /** - * Lookup136: xcm::v3::multiasset::MultiAssetFilter + * Lookup141: xcm::v3::multiasset::MultiAssetFilter **/ XcmV3MultiassetMultiAssetFilter: { _enum: { @@ -1311,7 +1377,7 @@ export default { } }, /** - * Lookup137: xcm::v3::multiasset::WildMultiAsset + * Lookup142: xcm::v3::multiasset::WildMultiAsset **/ XcmV3MultiassetWildMultiAsset: { _enum: { @@ -1329,13 +1395,13 @@ export default { } }, /** - * Lookup138: xcm::v3::multiasset::WildFungibility + * Lookup143: xcm::v3::multiasset::WildFungibility **/ XcmV3MultiassetWildFungibility: { _enum: ['Fungible', 'NonFungible'] }, /** - * Lookup139: xcm::v3::WeightLimit + * Lookup144: xcm::v3::WeightLimit **/ XcmV3WeightLimit: { _enum: { @@ -1344,27 +1410,29 @@ export default { } }, /** - * Lookup140: xcm::VersionedMultiAssets + * Lookup145: xcm::VersionedMultiAssets **/ XcmVersionedMultiAssets: { _enum: { + __Unused0: 'Null', V2: 'XcmV2MultiassetMultiAssets', + __Unused2: 'Null', V3: 'XcmV3MultiassetMultiAssets' } }, /** - * Lookup141: xcm::v2::multiasset::MultiAssets + * Lookup146: xcm::v2::multiasset::MultiAssets **/ XcmV2MultiassetMultiAssets: 'Vec', /** - * Lookup143: xcm::v2::multiasset::MultiAsset + * Lookup148: xcm::v2::multiasset::MultiAsset **/ XcmV2MultiAsset: { id: 'XcmV2MultiassetAssetId', fun: 'XcmV2MultiassetFungibility' }, /** - * Lookup144: xcm::v2::multiasset::AssetId + * Lookup149: xcm::v2::multiasset::AssetId **/ XcmV2MultiassetAssetId: { _enum: { @@ -1373,14 +1441,14 @@ export default { } }, /** - * Lookup145: xcm::v2::multilocation::MultiLocation + * Lookup150: xcm::v2::multilocation::MultiLocation **/ XcmV2MultiLocation: { parents: 'u8', interior: 'XcmV2MultilocationJunctions' }, /** - * Lookup146: xcm::v2::multilocation::Junctions + * Lookup151: xcm::v2::multilocation::Junctions **/ XcmV2MultilocationJunctions: { _enum: { @@ -1396,7 +1464,7 @@ export default { } }, /** - * Lookup147: xcm::v2::junction::Junction + * Lookup152: xcm::v2::junction::Junction **/ XcmV2Junction: { _enum: { @@ -1424,7 +1492,7 @@ export default { } }, /** - * Lookup148: xcm::v2::NetworkId + * Lookup153: xcm::v2::NetworkId **/ XcmV2NetworkId: { _enum: { @@ -1435,7 +1503,7 @@ export default { } }, /** - * Lookup150: xcm::v2::BodyId + * Lookup155: xcm::v2::BodyId **/ XcmV2BodyId: { _enum: { @@ -1452,7 +1520,7 @@ export default { } }, /** - * Lookup151: xcm::v2::BodyPart + * Lookup156: xcm::v2::BodyPart **/ XcmV2BodyPart: { _enum: { @@ -1475,7 +1543,7 @@ export default { } }, /** - * Lookup152: xcm::v2::multiasset::Fungibility + * Lookup157: xcm::v2::multiasset::Fungibility **/ XcmV2MultiassetFungibility: { _enum: { @@ -1484,7 +1552,7 @@ export default { } }, /** - * Lookup153: xcm::v2::multiasset::AssetInstance + * Lookup158: xcm::v2::multiasset::AssetInstance **/ XcmV2MultiassetAssetInstance: { _enum: { @@ -1498,16 +1566,18 @@ export default { } }, /** - * Lookup154: xcm::VersionedMultiLocation + * Lookup159: xcm::VersionedMultiLocation **/ XcmVersionedMultiLocation: { _enum: { + __Unused0: 'Null', V2: 'XcmV2MultiLocation', + __Unused2: 'Null', V3: 'XcmV3MultiLocation' } }, /** - * Lookup155: cumulus_pallet_xcm::pallet::Event + * Lookup160: cumulus_pallet_xcm::pallet::Event **/ CumulusPalletXcmEvent: { _enum: { @@ -1517,7 +1587,7 @@ export default { } }, /** - * Lookup156: cumulus_pallet_dmp_queue::pallet::Event + * Lookup161: cumulus_pallet_dmp_queue::pallet::Event **/ CumulusPalletDmpQueueEvent: { _enum: { @@ -1543,12 +1613,15 @@ export default { }, OverweightServiced: { overweightIndex: 'u64', - weightUsed: 'SpWeightsWeightV2Weight' + weightUsed: 'SpWeightsWeightV2Weight', + }, + MaxMessagesExhausted: { + messageId: '[u8;32]' } } }, /** - * Lookup157: frame_system::Phase + * Lookup162: frame_system::Phase **/ FrameSystemPhase: { _enum: { @@ -1558,14 +1631,14 @@ export default { } }, /** - * Lookup160: frame_system::LastRuntimeUpgradeInfo + * Lookup165: frame_system::LastRuntimeUpgradeInfo **/ FrameSystemLastRuntimeUpgradeInfo: { specVersion: 'Compact', specName: 'Text' }, /** - * Lookup162: frame_system::pallet::Call + * Lookup167: frame_system::pallet::Call **/ FrameSystemCall: { _enum: { @@ -1600,7 +1673,7 @@ export default { } }, /** - * Lookup166: frame_system::limits::BlockWeights + * Lookup171: frame_system::limits::BlockWeights **/ FrameSystemLimitsBlockWeights: { baseBlock: 'SpWeightsWeightV2Weight', @@ -1608,7 +1681,7 @@ export default { perClass: 'FrameSupportDispatchPerDispatchClassWeightsPerClass' }, /** - * Lookup167: frame_support::dispatch::PerDispatchClass + * Lookup172: frame_support::dispatch::PerDispatchClass **/ FrameSupportDispatchPerDispatchClassWeightsPerClass: { normal: 'FrameSystemLimitsWeightsPerClass', @@ -1616,7 +1689,7 @@ export default { mandatory: 'FrameSystemLimitsWeightsPerClass' }, /** - * Lookup168: frame_system::limits::WeightsPerClass + * Lookup173: frame_system::limits::WeightsPerClass **/ FrameSystemLimitsWeightsPerClass: { baseExtrinsic: 'SpWeightsWeightV2Weight', @@ -1625,13 +1698,13 @@ export default { reserved: 'Option' }, /** - * Lookup170: frame_system::limits::BlockLength + * Lookup175: frame_system::limits::BlockLength **/ FrameSystemLimitsBlockLength: { max: 'FrameSupportDispatchPerDispatchClassU32' }, /** - * Lookup171: frame_support::dispatch::PerDispatchClass + * Lookup176: frame_support::dispatch::PerDispatchClass **/ FrameSupportDispatchPerDispatchClassU32: { normal: 'u32', @@ -1639,14 +1712,14 @@ export default { mandatory: 'u32' }, /** - * Lookup172: sp_weights::RuntimeDbWeight + * Lookup177: sp_weights::RuntimeDbWeight **/ SpWeightsRuntimeDbWeight: { read: 'u64', write: 'u64' }, /** - * Lookup173: sp_version::RuntimeVersion + * Lookup178: sp_version::RuntimeVersion **/ SpVersionRuntimeVersion: { specName: 'Text', @@ -1659,13 +1732,13 @@ export default { stateVersion: 'u8' }, /** - * Lookup177: frame_system::pallet::Error + * Lookup182: frame_system::pallet::Error **/ FrameSystemError: { _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered'] }, /** - * Lookup179: pallet_timestamp::pallet::Call + * Lookup183: pallet_timestamp::pallet::Call **/ PalletTimestampCall: { _enum: { @@ -1675,7 +1748,7 @@ export default { } }, /** - * Lookup181: pallet_indices::pallet::Call + * Lookup185: pallet_indices::pallet::Call **/ PalletIndicesCall: { _enum: { @@ -1706,13 +1779,13 @@ export default { } }, /** - * Lookup184: pallet_indices::pallet::Error + * Lookup188: pallet_indices::pallet::Error **/ PalletIndicesError: { _enum: ['NotAssigned', 'NotOwner', 'InUse', 'NotTransfer', 'Permanent'] }, /** - * Lookup186: pallet_balances::BalanceLock + * Lookup190: pallet_balances::BalanceLock **/ PalletBalancesBalanceLock: { id: '[u8;8]', @@ -1720,20 +1793,20 @@ export default { reasons: 'PalletBalancesReasons' }, /** - * Lookup187: pallet_balances::Reasons + * Lookup191: pallet_balances::Reasons **/ PalletBalancesReasons: { _enum: ['Fee', 'Misc', 'All'] }, /** - * Lookup190: pallet_balances::ReserveData + * Lookup194: pallet_balances::ReserveData **/ PalletBalancesReserveData: { id: '[u8;8]', amount: 'u128' }, /** - * Lookup192: pallet_balances::pallet::Call + * Lookup196: pallet_balances::pallet::Call **/ PalletBalancesCall: { _enum: { @@ -1766,37 +1839,37 @@ export default { } }, /** - * Lookup193: pallet_balances::pallet::Error + * Lookup197: pallet_balances::pallet::Error **/ PalletBalancesError: { _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'KeepAlive', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves'] }, /** - * Lookup195: pallet_transaction_payment::Releases + * Lookup199: pallet_transaction_payment::Releases **/ PalletTransactionPaymentReleases: { _enum: ['V1Ancient', 'V2'] }, /** - * Lookup197: sp_consensus_aura::sr25519::app_sr25519::Public + * Lookup201: sp_consensus_aura::sr25519::app_sr25519::Public **/ SpConsensusAuraSr25519AppSr25519Public: 'SpCoreSr25519Public', /** - * Lookup198: sp_core::sr25519::Public + * Lookup202: sp_core::sr25519::Public **/ SpCoreSr25519Public: '[u8;32]', /** - * Lookup204: spiritnet_runtime::SessionKeys + * Lookup208: spiritnet_runtime::SessionKeys **/ SpiritnetRuntimeSessionKeys: { aura: 'SpConsensusAuraSr25519AppSr25519Public' }, /** - * Lookup207: sp_core::crypto::KeyTypeId + * Lookup211: sp_core::crypto::KeyTypeId **/ SpCoreCryptoKeyTypeId: '[u8;4]', /** - * Lookup208: pallet_session::pallet::Call + * Lookup212: pallet_session::pallet::Call **/ PalletSessionCall: { _enum: { @@ -1811,13 +1884,13 @@ export default { } }, /** - * Lookup209: pallet_session::pallet::Error + * Lookup213: pallet_session::pallet::Error **/ PalletSessionError: { _enum: ['InvalidProof', 'NoAssociatedValidatorId', 'DuplicatedKey', 'NoKeys', 'NoAccount'] }, /** - * Lookup210: parachain_staking::types::RoundInfo + * Lookup214: parachain_staking::types::RoundInfo **/ ParachainStakingRoundInfo: { current: 'u32', @@ -1825,21 +1898,21 @@ export default { length: 'u64' }, /** - * Lookup211: parachain_staking::types::DelegationCounter + * Lookup215: parachain_staking::types::DelegationCounter **/ ParachainStakingDelegationCounter: { round: 'u32', counter: 'u32' }, /** - * Lookup212: parachain_staking::types::Stake + * Lookup216: parachain_staking::types::Stake **/ ParachainStakingStake: { owner: 'AccountId32', amount: 'u128' }, /** - * Lookup213: parachain_staking::types::Candidate + * Lookup217: parachain_staking::types::Candidate **/ ParachainStakingCandidate: { id: 'AccountId32', @@ -1849,11 +1922,11 @@ export default { status: 'ParachainStakingCandidateStatus' }, /** - * Lookup214: parachain_staking::set::OrderedSet, S> + * Lookup218: parachain_staking::set::OrderedSet, S> **/ ParachainStakingSetOrderedSet: 'Vec', /** - * Lookup217: parachain_staking::types::CandidateStatus + * Lookup221: parachain_staking::types::CandidateStatus **/ ParachainStakingCandidateStatus: { _enum: { @@ -1862,35 +1935,35 @@ export default { } }, /** - * Lookup218: parachain_staking::types::TotalStake + * Lookup222: parachain_staking::types::TotalStake **/ ParachainStakingTotalStake: { collators: 'u128', delegators: 'u128' }, /** - * Lookup221: parachain_staking::inflation::InflationInfo + * Lookup225: parachain_staking::inflation::InflationInfo **/ ParachainStakingInflationInflationInfo: { collator: 'ParachainStakingInflationStakingInfo', delegator: 'ParachainStakingInflationStakingInfo' }, /** - * Lookup222: parachain_staking::inflation::StakingInfo + * Lookup226: parachain_staking::inflation::StakingInfo **/ ParachainStakingInflationStakingInfo: { maxRate: 'Perquintill', rewardRate: 'ParachainStakingInflationRewardRate' }, /** - * Lookup223: parachain_staking::inflation::RewardRate + * Lookup227: parachain_staking::inflation::RewardRate **/ ParachainStakingInflationRewardRate: { annual: 'Perquintill', perBlock: 'Perquintill' }, /** - * Lookup228: parachain_staking::pallet::Call + * Lookup232: parachain_staking::pallet::Call **/ ParachainStakingCall: { _enum: { @@ -1957,13 +2030,13 @@ export default { } }, /** - * Lookup229: parachain_staking::pallet::Error + * Lookup233: parachain_staking::pallet::Error **/ ParachainStakingError: { _enum: ['DelegatorNotFound', 'CandidateNotFound', 'DelegatorExists', 'CandidateExists', 'ValStakeZero', 'ValStakeBelowMin', 'ValStakeAboveMax', 'DelegationBelowMin', 'AlreadyLeaving', 'NotLeaving', 'CannotLeaveYet', 'CannotJoinBeforeUnlocking', 'AlreadyDelegating', 'NotYetDelegating', 'DelegationsPerRoundExceeded', 'TooManyDelegators', 'TooFewCollatorCandidates', 'CannotStakeIfLeaving', 'CannotDelegateIfLeaving', 'MaxCollatorsPerDelegatorExceeded', 'AlreadyDelegatedCollator', 'DelegationNotFound', 'Underflow', 'CannotSetAboveMax', 'CannotSetBelowMin', 'InvalidSchedule', 'NoMoreUnstaking', 'TooEarly', 'StakeNotFound', 'UnstakingIsEmpty', 'RewardsNotFound'] }, /** - * Lookup232: frame_support::traits::preimages::Bounded + * Lookup236: frame_support::traits::preimages::Bounded **/ FrameSupportPreimagesBounded: { _enum: { @@ -1984,7 +2057,7 @@ export default { } }, /** - * Lookup234: pallet_democracy::pallet::Call + * Lookup238: pallet_democracy::pallet::Call **/ PalletDemocracyCall: { _enum: { @@ -2044,18 +2117,22 @@ export default { maybeRefIndex: 'Option', }, cancel_proposal: { - propIndex: 'Compact' + propIndex: 'Compact', + }, + set_metadata: { + owner: 'PalletDemocracyMetadataOwner', + maybeHash: 'Option' } } }, /** - * Lookup235: pallet_democracy::conviction::Conviction + * Lookup239: pallet_democracy::conviction::Conviction **/ PalletDemocracyConviction: { _enum: ['None', 'Locked1x', 'Locked2x', 'Locked3x', 'Locked4x', 'Locked5x', 'Locked6x'] }, /** - * Lookup237: pallet_collective::pallet::Call + * Lookup242: pallet_collective::pallet::Call **/ PalletCollectiveCall: { _enum: { @@ -2096,7 +2173,7 @@ export default { } }, /** - * Lookup242: pallet_membership::pallet::Call + * Lookup247: pallet_membership::pallet::Call **/ PalletMembershipCall: { _enum: { @@ -2126,7 +2203,7 @@ export default { } }, /** - * Lookup243: pallet_treasury::pallet::Call + * Lookup248: pallet_treasury::pallet::Call **/ PalletTreasuryCall: { _enum: { @@ -2150,7 +2227,7 @@ export default { } }, /** - * Lookup244: pallet_utility::pallet::Call + * Lookup249: pallet_utility::pallet::Call **/ PalletUtilityCall: { _enum: { @@ -2178,7 +2255,7 @@ export default { } }, /** - * Lookup246: spiritnet_runtime::OriginCaller + * Lookup251: spiritnet_runtime::OriginCaller **/ SpiritnetRuntimeOriginCaller: { _enum: { @@ -2270,7 +2347,7 @@ export default { } }, /** - * Lookup247: frame_support::dispatch::RawOrigin + * Lookup252: frame_support::dispatch::RawOrigin **/ FrameSupportDispatchRawOrigin: { _enum: { @@ -2280,7 +2357,7 @@ export default { } }, /** - * Lookup248: pallet_collective::RawOrigin + * Lookup253: pallet_collective::RawOrigin **/ PalletCollectiveRawOrigin: { _enum: { @@ -2290,14 +2367,14 @@ export default { } }, /** - * Lookup250: did::origin::DidRawOrigin + * Lookup255: did::origin::DidRawOrigin **/ DidOriginDidRawOrigin: { id: 'AccountId32', submitter: 'AccountId32' }, /** - * Lookup251: pallet_xcm::pallet::Origin + * Lookup256: pallet_xcm::pallet::Origin **/ PalletXcmOrigin: { _enum: { @@ -2306,7 +2383,7 @@ export default { } }, /** - * Lookup252: cumulus_pallet_xcm::pallet::Origin + * Lookup257: cumulus_pallet_xcm::pallet::Origin **/ CumulusPalletXcmOrigin: { _enum: { @@ -2315,11 +2392,11 @@ export default { } }, /** - * Lookup253: sp_core::Void + * Lookup258: sp_core::Void **/ SpCoreVoid: 'Null', /** - * Lookup254: pallet_vesting::pallet::Call + * Lookup259: pallet_vesting::pallet::Call **/ PalletVestingCall: { _enum: { @@ -2343,7 +2420,7 @@ export default { } }, /** - * Lookup255: pallet_vesting::vesting_info::VestingInfo + * Lookup260: pallet_vesting::vesting_info::VestingInfo **/ PalletVestingVestingInfo: { locked: 'u128', @@ -2351,7 +2428,7 @@ export default { startingBlock: 'u64' }, /** - * Lookup256: pallet_scheduler::pallet::Call + * Lookup261: pallet_scheduler::pallet::Call **/ PalletSchedulerCall: { _enum: { @@ -2391,7 +2468,7 @@ export default { } }, /** - * Lookup258: pallet_proxy::pallet::Call + * Lookup263: pallet_proxy::pallet::Call **/ PalletProxyCall: { _enum: { @@ -2444,7 +2521,7 @@ export default { } }, /** - * Lookup260: pallet_preimage::pallet::Call + * Lookup265: pallet_preimage::pallet::Call **/ PalletPreimageCall: { _enum: { @@ -2472,7 +2549,7 @@ export default { } }, /** - * Lookup262: pallet_tips::pallet::Call + * Lookup267: pallet_tips::pallet::Call **/ PalletTipsCall: { _enum: { @@ -2513,7 +2590,38 @@ export default { } }, /** - * Lookup263: ctype::pallet::Call + * Lookup268: pallet_multisig::pallet::Call + **/ + PalletMultisigCall: { + _enum: { + as_multi_threshold_1: { + otherSignatories: 'Vec', + call: 'Call', + }, + as_multi: { + threshold: 'u16', + otherSignatories: 'Vec', + maybeTimepoint: 'Option', + call: 'Call', + maxWeight: 'SpWeightsWeightV2Weight', + }, + approve_as_multi: { + threshold: 'u16', + otherSignatories: 'Vec', + maybeTimepoint: 'Option', + callHash: '[u8;32]', + maxWeight: 'SpWeightsWeightV2Weight', + }, + cancel_as_multi: { + threshold: 'u16', + otherSignatories: 'Vec', + timepoint: 'PalletMultisigTimepoint', + callHash: '[u8;32]' + } + } + }, + /** + * Lookup270: ctype::pallet::Call **/ CtypeCall: { _enum: { @@ -2527,7 +2635,7 @@ export default { } }, /** - * Lookup264: attestation::pallet::Call + * Lookup271: attestation::pallet::Call **/ AttestationCall: { _enum: { @@ -2556,7 +2664,7 @@ export default { } }, /** - * Lookup266: runtime_common::authorization::PalletAuthorize> + * Lookup273: runtime_common::authorization::PalletAuthorize> **/ RuntimeCommonAuthorizationPalletAuthorize: { _enum: { @@ -2564,18 +2672,18 @@ export default { } }, /** - * Lookup267: delegation::access_control::DelegationAc + * Lookup274: delegation::access_control::DelegationAc **/ DelegationAccessControlDelegationAc: { subjectNodeId: 'H256', maxChecks: 'u32' }, /** - * Lookup268: spiritnet_runtime::Runtime + * Lookup275: spiritnet_runtime::Runtime **/ SpiritnetRuntimeRuntime: 'Null', /** - * Lookup269: delegation::pallet::Call + * Lookup276: delegation::pallet::Call **/ DelegationCall: { _enum: { @@ -2612,7 +2720,7 @@ export default { } }, /** - * Lookup270: did::did_details::DidSignature + * Lookup277: did::did_details::DidSignature **/ DidDidDetailsDidSignature: { _enum: { @@ -2622,19 +2730,19 @@ export default { } }, /** - * Lookup271: sp_core::ed25519::Signature + * Lookup278: sp_core::ed25519::Signature **/ SpCoreEd25519Signature: '[u8;64]', /** - * Lookup273: sp_core::sr25519::Signature + * Lookup280: sp_core::sr25519::Signature **/ SpCoreSr25519Signature: '[u8;64]', /** - * Lookup274: sp_core::ecdsa::Signature + * Lookup281: sp_core::ecdsa::Signature **/ SpCoreEcdsaSignature: '[u8;65]', /** - * Lookup276: did::pallet::Call + * Lookup283: did::pallet::Call **/ DidCall: { _enum: { @@ -2683,7 +2791,7 @@ export default { } }, /** - * Lookup277: did::did_details::DidCreationDetails + * Lookup284: did::did_details::DidCreationDetails> **/ DidDidDetailsDidCreationDetails: { did: 'AccountId32', @@ -2694,7 +2802,19 @@ export default { newServiceDetails: 'Vec' }, /** - * Lookup279: did::did_details::DidEncryptionKey + * Lookup285: runtime_common::constants::did::MaxNewKeyAgreementKeys + **/ + RuntimeCommonConstantsDidMaxNewKeyAgreementKeys: 'Null', + /** + * Lookup286: did::service_endpoints::DidEndpoint + **/ + DidServiceEndpointsDidEndpoint: { + id: 'Bytes', + serviceTypes: 'Vec', + urls: 'Vec' + }, + /** + * Lookup295: did::did_details::DidEncryptionKey **/ DidDidDetailsDidEncryptionKey: { _enum: { @@ -2702,7 +2822,7 @@ export default { } }, /** - * Lookup283: did::did_details::DidVerificationKey + * Lookup299: did::did_details::DidVerificationKey **/ DidDidDetailsDidVerificationKey: { _enum: { @@ -2712,23 +2832,15 @@ export default { } }, /** - * Lookup284: sp_core::ed25519::Public + * Lookup300: sp_core::ed25519::Public **/ SpCoreEd25519Public: '[u8;32]', /** - * Lookup285: sp_core::ecdsa::Public + * Lookup301: sp_core::ecdsa::Public **/ SpCoreEcdsaPublic: '[u8;33]', /** - * Lookup288: did::service_endpoints::DidEndpoint - **/ - DidServiceEndpointsDidEndpoint: { - id: 'Bytes', - serviceTypes: 'Vec', - urls: 'Vec' - }, - /** - * Lookup296: did::did_details::DidAuthorizedCallOperation + * Lookup304: did::did_details::DidAuthorizedCallOperation **/ DidDidDetailsDidAuthorizedCallOperation: { did: 'AccountId32', @@ -2738,7 +2850,7 @@ export default { submitter: 'AccountId32' }, /** - * Lookup297: pallet_did_lookup::pallet::Call + * Lookup305: pallet_did_lookup::pallet::Call **/ PalletDidLookupCall: { _enum: { @@ -2758,262 +2870,12 @@ export default { account: 'PalletDidLookupLinkableAccountLinkableAccountId', }, update_deposit: { - account: 'PalletDidLookupLinkableAccountLinkableAccountId', - }, - __Unused7: 'Null', - __Unused8: 'Null', - __Unused9: 'Null', - __Unused10: 'Null', - __Unused11: 'Null', - __Unused12: 'Null', - __Unused13: 'Null', - __Unused14: 'Null', - __Unused15: 'Null', - __Unused16: 'Null', - __Unused17: 'Null', - __Unused18: 'Null', - __Unused19: 'Null', - __Unused20: 'Null', - __Unused21: 'Null', - __Unused22: 'Null', - __Unused23: 'Null', - __Unused24: 'Null', - __Unused25: 'Null', - __Unused26: 'Null', - __Unused27: 'Null', - __Unused28: 'Null', - __Unused29: 'Null', - __Unused30: 'Null', - __Unused31: 'Null', - __Unused32: 'Null', - __Unused33: 'Null', - __Unused34: 'Null', - __Unused35: 'Null', - __Unused36: 'Null', - __Unused37: 'Null', - __Unused38: 'Null', - __Unused39: 'Null', - __Unused40: 'Null', - __Unused41: 'Null', - __Unused42: 'Null', - __Unused43: 'Null', - __Unused44: 'Null', - __Unused45: 'Null', - __Unused46: 'Null', - __Unused47: 'Null', - __Unused48: 'Null', - __Unused49: 'Null', - __Unused50: 'Null', - __Unused51: 'Null', - __Unused52: 'Null', - __Unused53: 'Null', - __Unused54: 'Null', - __Unused55: 'Null', - __Unused56: 'Null', - __Unused57: 'Null', - __Unused58: 'Null', - __Unused59: 'Null', - __Unused60: 'Null', - __Unused61: 'Null', - __Unused62: 'Null', - __Unused63: 'Null', - __Unused64: 'Null', - __Unused65: 'Null', - __Unused66: 'Null', - __Unused67: 'Null', - __Unused68: 'Null', - __Unused69: 'Null', - __Unused70: 'Null', - __Unused71: 'Null', - __Unused72: 'Null', - __Unused73: 'Null', - __Unused74: 'Null', - __Unused75: 'Null', - __Unused76: 'Null', - __Unused77: 'Null', - __Unused78: 'Null', - __Unused79: 'Null', - __Unused80: 'Null', - __Unused81: 'Null', - __Unused82: 'Null', - __Unused83: 'Null', - __Unused84: 'Null', - __Unused85: 'Null', - __Unused86: 'Null', - __Unused87: 'Null', - __Unused88: 'Null', - __Unused89: 'Null', - __Unused90: 'Null', - __Unused91: 'Null', - __Unused92: 'Null', - __Unused93: 'Null', - __Unused94: 'Null', - __Unused95: 'Null', - __Unused96: 'Null', - __Unused97: 'Null', - __Unused98: 'Null', - __Unused99: 'Null', - __Unused100: 'Null', - __Unused101: 'Null', - __Unused102: 'Null', - __Unused103: 'Null', - __Unused104: 'Null', - __Unused105: 'Null', - __Unused106: 'Null', - __Unused107: 'Null', - __Unused108: 'Null', - __Unused109: 'Null', - __Unused110: 'Null', - __Unused111: 'Null', - __Unused112: 'Null', - __Unused113: 'Null', - __Unused114: 'Null', - __Unused115: 'Null', - __Unused116: 'Null', - __Unused117: 'Null', - __Unused118: 'Null', - __Unused119: 'Null', - __Unused120: 'Null', - __Unused121: 'Null', - __Unused122: 'Null', - __Unused123: 'Null', - __Unused124: 'Null', - __Unused125: 'Null', - __Unused126: 'Null', - __Unused127: 'Null', - __Unused128: 'Null', - __Unused129: 'Null', - __Unused130: 'Null', - __Unused131: 'Null', - __Unused132: 'Null', - __Unused133: 'Null', - __Unused134: 'Null', - __Unused135: 'Null', - __Unused136: 'Null', - __Unused137: 'Null', - __Unused138: 'Null', - __Unused139: 'Null', - __Unused140: 'Null', - __Unused141: 'Null', - __Unused142: 'Null', - __Unused143: 'Null', - __Unused144: 'Null', - __Unused145: 'Null', - __Unused146: 'Null', - __Unused147: 'Null', - __Unused148: 'Null', - __Unused149: 'Null', - __Unused150: 'Null', - __Unused151: 'Null', - __Unused152: 'Null', - __Unused153: 'Null', - __Unused154: 'Null', - __Unused155: 'Null', - __Unused156: 'Null', - __Unused157: 'Null', - __Unused158: 'Null', - __Unused159: 'Null', - __Unused160: 'Null', - __Unused161: 'Null', - __Unused162: 'Null', - __Unused163: 'Null', - __Unused164: 'Null', - __Unused165: 'Null', - __Unused166: 'Null', - __Unused167: 'Null', - __Unused168: 'Null', - __Unused169: 'Null', - __Unused170: 'Null', - __Unused171: 'Null', - __Unused172: 'Null', - __Unused173: 'Null', - __Unused174: 'Null', - __Unused175: 'Null', - __Unused176: 'Null', - __Unused177: 'Null', - __Unused178: 'Null', - __Unused179: 'Null', - __Unused180: 'Null', - __Unused181: 'Null', - __Unused182: 'Null', - __Unused183: 'Null', - __Unused184: 'Null', - __Unused185: 'Null', - __Unused186: 'Null', - __Unused187: 'Null', - __Unused188: 'Null', - __Unused189: 'Null', - __Unused190: 'Null', - __Unused191: 'Null', - __Unused192: 'Null', - __Unused193: 'Null', - __Unused194: 'Null', - __Unused195: 'Null', - __Unused196: 'Null', - __Unused197: 'Null', - __Unused198: 'Null', - __Unused199: 'Null', - __Unused200: 'Null', - __Unused201: 'Null', - __Unused202: 'Null', - __Unused203: 'Null', - __Unused204: 'Null', - __Unused205: 'Null', - __Unused206: 'Null', - __Unused207: 'Null', - __Unused208: 'Null', - __Unused209: 'Null', - __Unused210: 'Null', - __Unused211: 'Null', - __Unused212: 'Null', - __Unused213: 'Null', - __Unused214: 'Null', - __Unused215: 'Null', - __Unused216: 'Null', - __Unused217: 'Null', - __Unused218: 'Null', - __Unused219: 'Null', - __Unused220: 'Null', - __Unused221: 'Null', - __Unused222: 'Null', - __Unused223: 'Null', - __Unused224: 'Null', - __Unused225: 'Null', - __Unused226: 'Null', - __Unused227: 'Null', - __Unused228: 'Null', - __Unused229: 'Null', - __Unused230: 'Null', - __Unused231: 'Null', - __Unused232: 'Null', - __Unused233: 'Null', - __Unused234: 'Null', - __Unused235: 'Null', - __Unused236: 'Null', - __Unused237: 'Null', - __Unused238: 'Null', - __Unused239: 'Null', - __Unused240: 'Null', - __Unused241: 'Null', - __Unused242: 'Null', - __Unused243: 'Null', - __Unused244: 'Null', - __Unused245: 'Null', - __Unused246: 'Null', - __Unused247: 'Null', - __Unused248: 'Null', - __Unused249: 'Null', - __Unused250: 'Null', - __Unused251: 'Null', - __Unused252: 'Null', - __Unused253: 'Null', - migrate: { - limit: 'u32' + account: 'PalletDidLookupLinkableAccountLinkableAccountId' } } }, /** - * Lookup298: pallet_did_lookup::associate_account_request::AssociateAccountRequest + * Lookup306: pallet_did_lookup::associate_account_request::AssociateAccountRequest **/ PalletDidLookupAssociateAccountRequest: { _enum: { @@ -3022,7 +2884,7 @@ export default { } }, /** - * Lookup299: sp_runtime::MultiSignature + * Lookup307: sp_runtime::MultiSignature **/ SpRuntimeMultiSignature: { _enum: { @@ -3032,11 +2894,11 @@ export default { } }, /** - * Lookup300: pallet_did_lookup::account::EthereumSignature + * Lookup308: pallet_did_lookup::account::EthereumSignature **/ PalletDidLookupAccountEthereumSignature: 'SpCoreEcdsaSignature', /** - * Lookup301: pallet_web3_names::pallet::Call + * Lookup309: pallet_web3_names::pallet::Call **/ PalletWeb3NamesCall: { _enum: { @@ -3060,7 +2922,7 @@ export default { } }, /** - * Lookup302: public_credentials::pallet::Call + * Lookup310: public_credentials::pallet::Call **/ PublicCredentialsCall: { _enum: { @@ -3091,7 +2953,7 @@ export default { } }, /** - * Lookup303: public_credentials::credentials::Credential, sp_core::bounded::bounded_vec::BoundedVec, runtime_common::authorization::PalletAuthorize>> + * Lookup311: public_credentials::credentials::Credential, bounded_collections::bounded_vec::BoundedVec, runtime_common::authorization::PalletAuthorize>> **/ PublicCredentialsCredentialsCredential: { ctypeHash: 'H256', @@ -3100,7 +2962,7 @@ export default { authorization: 'Option' }, /** - * Lookup306: cumulus_pallet_parachain_system::pallet::Call + * Lookup314: cumulus_pallet_parachain_system::pallet::Call **/ CumulusPalletParachainSystemCall: { _enum: { @@ -3112,6 +2974,7 @@ export default { }, authorize_upgrade: { codeHash: 'H256', + checkVersion: 'bool', }, enact_authorized_upgrade: { code: 'Bytes' @@ -3119,7 +2982,7 @@ export default { } }, /** - * Lookup307: cumulus_primitives_parachain_inherent::ParachainInherentData + * Lookup315: cumulus_primitives_parachain_inherent::ParachainInherentData **/ CumulusPrimitivesParachainInherentParachainInherentData: { validationData: 'PolkadotPrimitivesV2PersistedValidationData', @@ -3128,7 +2991,7 @@ export default { horizontalMessages: 'BTreeMap>' }, /** - * Lookup308: polkadot_primitives::v2::PersistedValidationData + * Lookup316: polkadot_primitives::v2::PersistedValidationData **/ PolkadotPrimitivesV2PersistedValidationData: { parentHead: 'Bytes', @@ -3137,27 +3000,27 @@ export default { maxPovSize: 'u32' }, /** - * Lookup310: sp_trie::storage_proof::StorageProof + * Lookup318: sp_trie::storage_proof::StorageProof **/ SpTrieStorageProof: { trieNodes: 'BTreeSet' }, /** - * Lookup313: polkadot_core_primitives::InboundDownwardMessage + * Lookup321: polkadot_core_primitives::InboundDownwardMessage **/ PolkadotCorePrimitivesInboundDownwardMessage: { sentAt: 'u32', msg: 'Bytes' }, /** - * Lookup316: polkadot_core_primitives::InboundHrmpMessage + * Lookup324: polkadot_core_primitives::InboundHrmpMessage **/ PolkadotCorePrimitivesInboundHrmpMessage: { sentAt: 'u32', data: 'Bytes' }, /** - * Lookup319: cumulus_pallet_xcmp_queue::pallet::Call + * Lookup327: cumulus_pallet_xcmp_queue::pallet::Call **/ CumulusPalletXcmpQueueCall: { _enum: { @@ -3206,7 +3069,7 @@ export default { } }, /** - * Lookup320: pallet_xcm::pallet::Call + * Lookup328: pallet_xcm::pallet::Call **/ PalletXcmCall: { _enum: { @@ -3260,7 +3123,7 @@ export default { } }, /** - * Lookup321: xcm::VersionedXcm + * Lookup329: xcm::VersionedXcm **/ XcmVersionedXcm: { _enum: { @@ -3271,11 +3134,11 @@ export default { } }, /** - * Lookup322: xcm::v2::Xcm + * Lookup330: xcm::v2::Xcm **/ XcmV2Xcm: 'Vec', /** - * Lookup324: xcm::v2::Instruction + * Lookup332: xcm::v2::Instruction **/ XcmV2Instruction: { _enum: { @@ -3373,7 +3236,7 @@ export default { } }, /** - * Lookup325: xcm::v2::Response + * Lookup333: xcm::v2::Response **/ XcmV2Response: { _enum: { @@ -3384,7 +3247,7 @@ export default { } }, /** - * Lookup328: xcm::v2::traits::Error + * Lookup336: xcm::v2::traits::Error **/ XcmV2TraitsError: { _enum: { @@ -3417,7 +3280,7 @@ export default { } }, /** - * Lookup329: xcm::v2::multiasset::MultiAssetFilter + * Lookup337: xcm::v2::multiasset::MultiAssetFilter **/ XcmV2MultiassetMultiAssetFilter: { _enum: { @@ -3426,7 +3289,7 @@ export default { } }, /** - * Lookup330: xcm::v2::multiasset::WildMultiAsset + * Lookup338: xcm::v2::multiasset::WildMultiAsset **/ XcmV2MultiassetWildMultiAsset: { _enum: { @@ -3438,13 +3301,13 @@ export default { } }, /** - * Lookup331: xcm::v2::multiasset::WildFungibility + * Lookup339: xcm::v2::multiasset::WildFungibility **/ XcmV2MultiassetWildFungibility: { _enum: ['Fungible', 'NonFungible'] }, /** - * Lookup332: xcm::v2::WeightLimit + * Lookup340: xcm::v2::WeightLimit **/ XcmV2WeightLimit: { _enum: { @@ -3453,7 +3316,7 @@ export default { } }, /** - * Lookup341: cumulus_pallet_dmp_queue::pallet::Call + * Lookup349: cumulus_pallet_dmp_queue::pallet::Call **/ CumulusPalletDmpQueueCall: { _enum: { @@ -3464,7 +3327,7 @@ export default { } }, /** - * Lookup345: pallet_democracy::types::ReferendumInfo, Balance> + * Lookup353: pallet_democracy::types::ReferendumInfo, Balance> **/ PalletDemocracyReferendumInfo: { _enum: { @@ -3476,7 +3339,7 @@ export default { } }, /** - * Lookup346: pallet_democracy::types::ReferendumStatus, Balance> + * Lookup354: pallet_democracy::types::ReferendumStatus, Balance> **/ PalletDemocracyReferendumStatus: { end: 'u64', @@ -3486,7 +3349,7 @@ export default { tally: 'PalletDemocracyTally' }, /** - * Lookup347: pallet_democracy::types::Tally + * Lookup355: pallet_democracy::types::Tally **/ PalletDemocracyTally: { ayes: 'u128', @@ -3494,7 +3357,7 @@ export default { turnout: 'u128' }, /** - * Lookup348: pallet_democracy::vote::Voting + * Lookup356: pallet_democracy::vote::Voting **/ PalletDemocracyVoteVoting: { _enum: { @@ -3513,24 +3376,24 @@ export default { } }, /** - * Lookup352: pallet_democracy::types::Delegations + * Lookup360: pallet_democracy::types::Delegations **/ PalletDemocracyDelegations: { votes: 'u128', capital: 'u128' }, /** - * Lookup353: pallet_democracy::vote::PriorLock + * Lookup361: pallet_democracy::vote::PriorLock **/ PalletDemocracyVotePriorLock: '(u64,u128)', /** - * Lookup356: pallet_democracy::pallet::Error + * Lookup364: pallet_democracy::pallet::Error **/ PalletDemocracyError: { - _enum: ['ValueLow', 'ProposalMissing', 'AlreadyCanceled', 'DuplicateProposal', 'ProposalBlacklisted', 'NotSimpleMajority', 'InvalidHash', 'NoProposal', 'AlreadyVetoed', 'ReferendumInvalid', 'NoneWaiting', 'NotVoter', 'NoPermission', 'AlreadyDelegating', 'InsufficientFunds', 'NotDelegating', 'VotesExist', 'InstantNotAllowed', 'Nonsense', 'WrongUpperBound', 'MaxVotesReached', 'TooMany', 'VotingPeriodLow'] + _enum: ['ValueLow', 'ProposalMissing', 'AlreadyCanceled', 'DuplicateProposal', 'ProposalBlacklisted', 'NotSimpleMajority', 'InvalidHash', 'NoProposal', 'AlreadyVetoed', 'ReferendumInvalid', 'NoneWaiting', 'NotVoter', 'NoPermission', 'AlreadyDelegating', 'InsufficientFunds', 'NotDelegating', 'VotesExist', 'InstantNotAllowed', 'Nonsense', 'WrongUpperBound', 'MaxVotesReached', 'TooMany', 'VotingPeriodLow', 'PreimageNotExist'] }, /** - * Lookup358: pallet_collective::Votes + * Lookup366: pallet_collective::Votes **/ PalletCollectiveVotes: { index: 'u32', @@ -3540,19 +3403,19 @@ export default { end: 'u64' }, /** - * Lookup359: pallet_collective::pallet::Error + * Lookup367: pallet_collective::pallet::Error **/ PalletCollectiveError: { _enum: ['NotMember', 'DuplicateProposal', 'ProposalMissing', 'WrongIndex', 'DuplicateVote', 'AlreadyInitialized', 'TooEarly', 'TooManyProposals', 'WrongProposalWeight', 'WrongProposalLength'] }, /** - * Lookup363: pallet_membership::pallet::Error + * Lookup371: pallet_membership::pallet::Error **/ PalletMembershipError: { _enum: ['AlreadyMember', 'NotMember', 'TooManyMembers'] }, /** - * Lookup364: pallet_treasury::Proposal + * Lookup372: pallet_treasury::Proposal **/ PalletTreasuryProposal: { proposer: 'AccountId32', @@ -3561,35 +3424,35 @@ export default { bond: 'u128' }, /** - * Lookup368: frame_support::PalletId + * Lookup376: frame_support::PalletId **/ FrameSupportPalletId: '[u8;8]', /** - * Lookup369: pallet_treasury::pallet::Error + * Lookup377: pallet_treasury::pallet::Error **/ PalletTreasuryError: { _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals', 'InsufficientPermission', 'ProposalNotApproved'] }, /** - * Lookup370: pallet_utility::pallet::Error + * Lookup378: pallet_utility::pallet::Error **/ PalletUtilityError: { _enum: ['TooManyCalls'] }, /** - * Lookup373: pallet_vesting::Releases + * Lookup381: pallet_vesting::Releases **/ PalletVestingReleases: { _enum: ['V0', 'V1'] }, /** - * Lookup374: pallet_vesting::pallet::Error + * Lookup382: pallet_vesting::pallet::Error **/ PalletVestingError: { _enum: ['NotVesting', 'AtMaxVestingSchedules', 'AmountLow', 'ScheduleIndexOutOfBounds', 'InvalidScheduleParams'] }, /** - * Lookup377: pallet_scheduler::Scheduled, BlockNumber, spiritnet_runtime::OriginCaller, sp_core::crypto::AccountId32> + * Lookup385: pallet_scheduler::Scheduled, BlockNumber, spiritnet_runtime::OriginCaller, sp_core::crypto::AccountId32> **/ PalletSchedulerScheduled: { maybeId: 'Option<[u8;32]>', @@ -3599,13 +3462,13 @@ export default { origin: 'SpiritnetRuntimeOriginCaller' }, /** - * Lookup379: pallet_scheduler::pallet::Error + * Lookup387: pallet_scheduler::pallet::Error **/ PalletSchedulerError: { _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange', 'Named'] }, /** - * Lookup382: pallet_proxy::ProxyDefinition + * Lookup390: pallet_proxy::ProxyDefinition **/ PalletProxyProxyDefinition: { delegate: 'AccountId32', @@ -3613,7 +3476,7 @@ export default { delay: 'u64' }, /** - * Lookup386: pallet_proxy::Announcement + * Lookup394: pallet_proxy::Announcement **/ PalletProxyAnnouncement: { real: 'AccountId32', @@ -3621,13 +3484,13 @@ export default { height: 'u64' }, /** - * Lookup388: pallet_proxy::pallet::Error + * Lookup396: pallet_proxy::pallet::Error **/ PalletProxyError: { _enum: ['TooMany', 'NotFound', 'NotProxy', 'Unproxyable', 'Duplicate', 'NoPermission', 'Unannounced', 'NoSelfProxy'] }, /** - * Lookup389: pallet_preimage::RequestStatus + * Lookup397: pallet_preimage::RequestStatus **/ PalletPreimageRequestStatus: { _enum: { @@ -3643,13 +3506,13 @@ export default { } }, /** - * Lookup394: pallet_preimage::pallet::Error + * Lookup402: pallet_preimage::pallet::Error **/ PalletPreimageError: { _enum: ['TooBig', 'AlreadyNoted', 'NotAuthorized', 'NotNoted', 'Requested', 'NotRequested'] }, /** - * Lookup396: pallet_tips::OpenTip + * Lookup405: pallet_tips::OpenTip **/ PalletTipsOpenTip: { reason: 'H256', @@ -3661,26 +3524,41 @@ export default { findersFee: 'bool' }, /** - * Lookup400: pallet_tips::pallet::Error + * Lookup409: pallet_tips::pallet::Error **/ PalletTipsError: { _enum: ['ReasonTooBig', 'AlreadyKnown', 'UnknownTip', 'NotFinder', 'StillOpen', 'Premature'] }, /** - * Lookup401: ctype::ctype_entry::CtypeEntry + * Lookup411: pallet_multisig::Multisig + **/ + PalletMultisigMultisig: { + when: 'PalletMultisigTimepoint', + deposit: 'u128', + depositor: 'AccountId32', + approvals: 'Vec' + }, + /** + * Lookup413: pallet_multisig::pallet::Error + **/ + PalletMultisigError: { + _enum: ['MinimumThreshold', 'AlreadyApproved', 'NoApprovalsNeeded', 'TooFewSignatories', 'TooManySignatories', 'SignatoriesOutOfOrder', 'SenderInSignatories', 'NotFound', 'NotOwner', 'NoTimepoint', 'WrongTimepoint', 'UnexpectedTimepoint', 'MaxWeightTooLow', 'AlreadyStored'] + }, + /** + * Lookup414: ctype::ctype_entry::CtypeEntry **/ CtypeCtypeEntry: { creator: 'AccountId32', createdAt: 'u64' }, /** - * Lookup402: ctype::pallet::Error + * Lookup415: ctype::pallet::Error **/ CtypeError: { _enum: ['NotFound', 'AlreadyExists', 'UnableToPayFees'] }, /** - * Lookup403: attestation::attestations::AttestationDetails + * Lookup416: attestation::attestations::AttestationDetails, sp_core::crypto::AccountId32, Balance> **/ AttestationAttestationsAttestationDetails: { ctypeHash: 'H256', @@ -3690,20 +3568,20 @@ export default { deposit: 'KiltSupportDeposit' }, /** - * Lookup404: kilt_support::deposit::Deposit + * Lookup417: kilt_support::deposit::Deposit **/ KiltSupportDeposit: { owner: 'AccountId32', amount: 'u128' }, /** - * Lookup406: attestation::pallet::Error + * Lookup419: attestation::pallet::Error **/ AttestationError: { _enum: ['AlreadyAttested', 'AlreadyRevoked', 'NotFound', 'CTypeMismatch', 'NotAuthorized', 'MaxDelegatedAttestationsExceeded'] }, /** - * Lookup407: delegation::delegation_hierarchy::DelegationNode + * Lookup420: delegation::delegation_hierarchy::DelegationNode, sp_core::crypto::AccountId32, Balance> **/ DelegationDelegationHierarchyDelegationNode: { hierarchyRootId: 'H256', @@ -3713,7 +3591,11 @@ export default { deposit: 'KiltSupportDeposit' }, /** - * Lookup411: delegation::delegation_hierarchy::DelegationDetails + * Lookup421: runtime_common::constants::delegation::MaxChildren + **/ + RuntimeCommonConstantsDelegationMaxChildren: 'Null', + /** + * Lookup422: delegation::delegation_hierarchy::DelegationDetails **/ DelegationDelegationHierarchyDelegationDetails: { owner: 'AccountId32', @@ -3721,19 +3603,19 @@ export default { permissions: 'DelegationDelegationHierarchyPermissions' }, /** - * Lookup412: delegation::delegation_hierarchy::DelegationHierarchyDetails + * Lookup425: delegation::delegation_hierarchy::DelegationHierarchyDetails **/ DelegationDelegationHierarchyDelegationHierarchyDetails: { ctypeHash: 'H256' }, /** - * Lookup413: delegation::pallet::Error + * Lookup426: delegation::pallet::Error **/ DelegationError: { _enum: ['DelegationAlreadyExists', 'InvalidDelegateSignature', 'DelegationNotFound', 'DelegateNotFound', 'HierarchyAlreadyExists', 'HierarchyNotFound', 'MaxSearchDepthReached', 'NotOwnerOfParentDelegation', 'NotOwnerOfDelegationHierarchy', 'ParentDelegationNotFound', 'ParentDelegationRevoked', 'UnauthorizedRevocation', 'UnauthorizedRemoval', 'UnauthorizedDelegation', 'AccessDenied', 'ExceededRevocationBounds', 'ExceededRemovalBounds', 'MaxRevocationsTooLarge', 'MaxRemovalsTooLarge', 'MaxParentChecksTooLarge', 'Internal', 'MaxChildrenExceeded'] }, /** - * Lookup414: did::did_details::DidDetails + * Lookup427: did::did_details::DidDetails **/ DidDidDetails: { authenticationKey: 'H256', @@ -3745,14 +3627,14 @@ export default { deposit: 'KiltSupportDeposit' }, /** - * Lookup417: did::did_details::DidPublicKeyDetails + * Lookup430: did::did_details::DidPublicKeyDetails **/ DidDidDetailsDidPublicKeyDetails: { key: 'DidDidDetailsDidPublicKey', blockNumber: 'u64' }, /** - * Lookup418: did::did_details::DidPublicKey + * Lookup431: did::did_details::DidPublicKey **/ DidDidDetailsDidPublicKey: { _enum: { @@ -3761,45 +3643,26 @@ export default { } }, /** - * Lookup423: did::pallet::Error + * Lookup436: did::pallet::Error **/ DidError: { _enum: ['InvalidSignatureFormat', 'InvalidSignature', 'AlreadyExists', 'NotFound', 'VerificationKeyNotFound', 'InvalidNonce', 'UnsupportedDidAuthorizationCall', 'InvalidDidAuthorizationCall', 'MaxNewKeyAgreementKeysLimitExceeded', 'MaxPublicKeysExceeded', 'MaxKeyAgreementKeysExceeded', 'BadDidOrigin', 'TransactionExpired', 'AlreadyDeleted', 'NotOwnerOfDeposit', 'UnableToPayFees', 'MaxNumberOfServicesExceeded', 'MaxServiceIdLengthExceeded', 'MaxServiceTypeLengthExceeded', 'MaxNumberOfTypesPerServiceExceeded', 'MaxServiceUrlLengthExceeded', 'MaxNumberOfUrlsPerServiceExceeded', 'ServiceAlreadyExists', 'ServiceNotFound', 'InvalidServiceEncoding', 'MaxStoredEndpointsCountExceeded', 'Internal'] }, /** - * Lookup424: pallet_did_lookup::connection_record::ConnectionRecord + * Lookup437: pallet_did_lookup::connection_record::ConnectionRecord **/ PalletDidLookupConnectionRecord: { did: 'AccountId32', deposit: 'KiltSupportDeposit' }, /** - * Lookup426: pallet_did_lookup::migration_state::MigrationState - **/ - PalletDidLookupMigrationState: { - _enum: { - Done: 'Null', - PreUpgrade: 'Null', - Upgrading: 'PalletDidLookupMigrationsMixedStorageKey' - } - }, - /** - * Lookup427: pallet_did_lookup::migrations::MixedStorageKey - **/ - PalletDidLookupMigrationsMixedStorageKey: { - _enum: { - V1: 'AccountId32', - V2: 'PalletDidLookupLinkableAccountLinkableAccountId' - } - }, - /** - * Lookup428: pallet_did_lookup::pallet::Error + * Lookup439: pallet_did_lookup::pallet::Error **/ PalletDidLookupError: { _enum: ['NotFound', 'NotAuthorized', 'OutdatedProof', 'InsufficientFunds', 'Migration'] }, /** - * Lookup429: pallet_web3_names::web3_name::Web3NameOwnership, BlockNumber> + * Lookup440: pallet_web3_names::web3_name::Web3NameOwnership, BlockNumber> **/ PalletWeb3NamesWeb3NameWeb3NameOwnership: { owner: 'AccountId32', @@ -3807,13 +3670,13 @@ export default { deposit: 'KiltSupportDeposit' }, /** - * Lookup430: pallet_web3_names::pallet::Error + * Lookup441: pallet_web3_names::pallet::Error **/ PalletWeb3NamesError: { _enum: ['InsufficientFunds', 'AlreadyExists', 'NotFound', 'OwnerAlreadyExists', 'OwnerNotFound', 'Banned', 'NotBanned', 'AlreadyBanned', 'NotAuthorized', 'TooShort', 'TooLong', 'InvalidCharacter'] }, /** - * Lookup432: public_credentials::credentials::CredentialEntry> + * Lookup443: public_credentials::credentials::CredentialEntry> **/ PublicCredentialsCredentialsCredentialEntry: { ctypeHash: 'H256', @@ -3824,19 +3687,19 @@ export default { authorizationId: 'Option' }, /** - * Lookup433: public_credentials::pallet::Error + * Lookup444: public_credentials::pallet::Error **/ PublicCredentialsError: { _enum: ['AlreadyAttested', 'NotFound', 'UnableToPayFees', 'InvalidInput', 'NotAuthorized', 'Internal'] }, /** - * Lookup435: polkadot_primitives::v2::UpgradeRestriction + * Lookup446: polkadot_primitives::v2::UpgradeRestriction **/ PolkadotPrimitivesV2UpgradeRestriction: { _enum: ['Present'] }, /** - * Lookup436: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot + * Lookup447: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot **/ CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: { dmqMqcHead: 'H256', @@ -3845,7 +3708,7 @@ export default { egressChannels: 'Vec<(u32,PolkadotPrimitivesV2AbridgedHrmpChannel)>' }, /** - * Lookup440: polkadot_primitives::v2::AbridgedHrmpChannel + * Lookup451: polkadot_primitives::v2::AbridgedHrmpChannel **/ PolkadotPrimitivesV2AbridgedHrmpChannel: { maxCapacity: 'u32', @@ -3856,7 +3719,7 @@ export default { mqcHead: 'Option' }, /** - * Lookup441: polkadot_primitives::v2::AbridgedHostConfiguration + * Lookup452: polkadot_primitives::v2::AbridgedHostConfiguration **/ PolkadotPrimitivesV2AbridgedHostConfiguration: { maxCodeSize: 'u32', @@ -3870,20 +3733,27 @@ export default { validationUpgradeDelay: 'u32' }, /** - * Lookup447: polkadot_core_primitives::OutboundHrmpMessage + * Lookup458: polkadot_core_primitives::OutboundHrmpMessage **/ PolkadotCorePrimitivesOutboundHrmpMessage: { recipient: 'u32', data: 'Bytes' }, /** - * Lookup448: cumulus_pallet_parachain_system::pallet::Error + * Lookup459: cumulus_pallet_parachain_system::CodeUpgradeAuthorization + **/ + CumulusPalletParachainSystemCodeUpgradeAuthorization: { + codeHash: 'H256', + checkVersion: 'bool' + }, + /** + * Lookup460: cumulus_pallet_parachain_system::pallet::Error **/ CumulusPalletParachainSystemError: { _enum: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled', 'NothingAuthorized', 'Unauthorized'] }, /** - * Lookup450: cumulus_pallet_xcmp_queue::InboundChannelDetails + * Lookup462: cumulus_pallet_xcmp_queue::InboundChannelDetails **/ CumulusPalletXcmpQueueInboundChannelDetails: { sender: 'u32', @@ -3891,19 +3761,19 @@ export default { messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>' }, /** - * Lookup451: cumulus_pallet_xcmp_queue::InboundState + * Lookup463: cumulus_pallet_xcmp_queue::InboundState **/ CumulusPalletXcmpQueueInboundState: { _enum: ['Ok', 'Suspended'] }, /** - * Lookup454: polkadot_parachain::primitives::XcmpMessageFormat + * Lookup466: polkadot_parachain::primitives::XcmpMessageFormat **/ PolkadotParachainPrimitivesXcmpMessageFormat: { _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals'] }, /** - * Lookup457: cumulus_pallet_xcmp_queue::OutboundChannelDetails + * Lookup469: cumulus_pallet_xcmp_queue::OutboundChannelDetails **/ CumulusPalletXcmpQueueOutboundChannelDetails: { recipient: 'u32', @@ -3913,13 +3783,13 @@ export default { lastIndex: 'u16' }, /** - * Lookup458: cumulus_pallet_xcmp_queue::OutboundState + * Lookup470: cumulus_pallet_xcmp_queue::OutboundState **/ CumulusPalletXcmpQueueOutboundState: { _enum: ['Ok', 'Suspended'] }, /** - * Lookup460: cumulus_pallet_xcmp_queue::QueueConfigData + * Lookup472: cumulus_pallet_xcmp_queue::QueueConfigData **/ CumulusPalletXcmpQueueQueueConfigData: { suspendThreshold: 'u32', @@ -3930,29 +3800,29 @@ export default { xcmpMaxIndividualWeight: 'SpWeightsWeightV2Weight' }, /** - * Lookup462: cumulus_pallet_xcmp_queue::pallet::Error + * Lookup474: cumulus_pallet_xcmp_queue::pallet::Error **/ CumulusPalletXcmpQueueError: { _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit'] }, /** - * Lookup463: pallet_xcm::pallet::Error + * Lookup475: pallet_xcm::pallet::Error **/ PalletXcmError: { _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed', 'InvalidAsset', 'LowBalance', 'TooManyLocks', 'AccountNotSovereign', 'FeesNotMet', 'LockNotFound', 'InUse'] }, /** - * Lookup464: cumulus_pallet_xcm::pallet::Error + * Lookup476: cumulus_pallet_xcm::pallet::Error **/ CumulusPalletXcmError: 'Null', /** - * Lookup465: cumulus_pallet_dmp_queue::ConfigData + * Lookup477: cumulus_pallet_dmp_queue::ConfigData **/ CumulusPalletDmpQueueConfigData: { maxIndividual: 'SpWeightsWeightV2Weight' }, /** - * Lookup466: cumulus_pallet_dmp_queue::PageIndexData + * Lookup478: cumulus_pallet_dmp_queue::PageIndexData **/ CumulusPalletDmpQueuePageIndexData: { beginUsed: 'u32', @@ -3960,37 +3830,37 @@ export default { overweightCount: 'u64' }, /** - * Lookup469: cumulus_pallet_dmp_queue::pallet::Error + * Lookup481: cumulus_pallet_dmp_queue::pallet::Error **/ CumulusPalletDmpQueueError: { _enum: ['Unknown', 'OverLimit'] }, /** - * Lookup472: frame_system::extensions::check_non_zero_sender::CheckNonZeroSender + * Lookup484: frame_system::extensions::check_non_zero_sender::CheckNonZeroSender **/ FrameSystemExtensionsCheckNonZeroSender: 'Null', /** - * Lookup473: frame_system::extensions::check_spec_version::CheckSpecVersion + * Lookup485: frame_system::extensions::check_spec_version::CheckSpecVersion **/ FrameSystemExtensionsCheckSpecVersion: 'Null', /** - * Lookup474: frame_system::extensions::check_tx_version::CheckTxVersion + * Lookup486: frame_system::extensions::check_tx_version::CheckTxVersion **/ FrameSystemExtensionsCheckTxVersion: 'Null', /** - * Lookup475: frame_system::extensions::check_genesis::CheckGenesis + * Lookup487: frame_system::extensions::check_genesis::CheckGenesis **/ FrameSystemExtensionsCheckGenesis: 'Null', /** - * Lookup478: frame_system::extensions::check_nonce::CheckNonce + * Lookup490: frame_system::extensions::check_nonce::CheckNonce **/ FrameSystemExtensionsCheckNonce: 'Compact', /** - * Lookup479: frame_system::extensions::check_weight::CheckWeight + * Lookup491: frame_system::extensions::check_weight::CheckWeight **/ FrameSystemExtensionsCheckWeight: 'Null', /** - * Lookup480: pallet_transaction_payment::ChargeTransactionPayment + * Lookup492: pallet_transaction_payment::ChargeTransactionPayment **/ PalletTransactionPaymentChargeTransactionPayment: 'Compact' }; diff --git a/packages/augment-api/src/interfaces/registry.ts b/packages/augment-api/src/interfaces/registry.ts index 6bf52aa68..49c126966 100644 --- a/packages/augment-api/src/interfaces/registry.ts +++ b/packages/augment-api/src/interfaces/registry.ts @@ -5,7 +5,7 @@ // this is required to allow for ambient/previous definitions import '@polkadot/types/types/registry'; -import type { AttestationAttestationsAttestationDetails, AttestationCall, AttestationError, AttestationEvent, CtypeCall, CtypeCtypeEntry, CtypeError, CtypeEvent, CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, DelegationAccessControlDelegationAc, DelegationCall, DelegationDelegationHierarchyDelegationDetails, DelegationDelegationHierarchyDelegationHierarchyDetails, DelegationDelegationHierarchyDelegationNode, DelegationDelegationHierarchyPermissions, DelegationError, DelegationEvent, DidCall, DidDidDetails, DidDidDetailsDidAuthorizedCallOperation, DidDidDetailsDidCreationDetails, DidDidDetailsDidEncryptionKey, DidDidDetailsDidPublicKey, DidDidDetailsDidPublicKeyDetails, DidDidDetailsDidSignature, DidDidDetailsDidVerificationKey, DidError, DidEvent, DidOriginDidRawOrigin, DidServiceEndpointsDidEndpoint, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportPreimagesBounded, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonZeroSender, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, KiltAssetDidsAssetV1AssetId, KiltAssetDidsAssetV1EvmSmartContractFungibleReference, KiltAssetDidsAssetV1EvmSmartContractNonFungibleReference, KiltAssetDidsAssetV1GenericAssetId, KiltAssetDidsChainV1ChainId, KiltAssetDidsChainV1GenericChainId, KiltAssetDidsChainV1GenesisHexHash32Reference, KiltAssetDidsV1AssetDid, KiltSupportDeposit, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCollectiveCall, PalletCollectiveError, PalletCollectiveEvent, PalletCollectiveRawOrigin, PalletCollectiveVotes, PalletDemocracyCall, PalletDemocracyConviction, PalletDemocracyDelegations, PalletDemocracyError, PalletDemocracyEvent, PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyTally, PalletDemocracyVoteAccountVote, PalletDemocracyVotePriorLock, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletDidLookupAccountAccountId20, PalletDidLookupAccountEthereumSignature, PalletDidLookupAssociateAccountRequest, PalletDidLookupCall, PalletDidLookupConnectionRecord, PalletDidLookupError, PalletDidLookupEvent, PalletDidLookupLinkableAccountLinkableAccountId, PalletDidLookupMigrationState, PalletDidLookupMigrationsMixedStorageKey, PalletIndicesCall, PalletIndicesError, PalletIndicesEvent, PalletMembershipCall, PalletMembershipError, PalletMembershipEvent, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyCall, PalletProxyError, PalletProxyEvent, PalletProxyProxyDefinition, PalletSchedulerCall, PalletSchedulerError, PalletSchedulerEvent, PalletSchedulerScheduled, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletTimestampCall, PalletTipsCall, PalletTipsError, PalletTipsEvent, PalletTipsOpenTip, PalletTransactionPaymentChargeTransactionPayment, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUtilityCall, PalletUtilityError, PalletUtilityEvent, PalletVestingCall, PalletVestingError, PalletVestingEvent, PalletVestingReleases, PalletVestingVestingInfo, PalletWeb3NamesCall, PalletWeb3NamesError, PalletWeb3NamesEvent, PalletWeb3NamesWeb3NameWeb3NameOwnership, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, ParachainStakingCall, ParachainStakingCandidate, ParachainStakingCandidateStatus, ParachainStakingDelegationCounter, ParachainStakingError, ParachainStakingEvent, ParachainStakingInflationInflationInfo, ParachainStakingInflationRewardRate, ParachainStakingInflationStakingInfo, ParachainStakingRoundInfo, ParachainStakingSetOrderedSet, ParachainStakingStake, ParachainStakingTotalStake, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, PublicCredentialsCall, PublicCredentialsCredentialsCredential, PublicCredentialsCredentialsCredentialEntry, PublicCredentialsError, PublicCredentialsEvent, RuntimeCommonAssetsAssetDid, RuntimeCommonAuthorizationAuthorizationId, RuntimeCommonAuthorizationPalletAuthorize, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaPublic, SpCoreEcdsaSignature, SpCoreEd25519Public, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, SpiritnetRuntimeOriginCaller, SpiritnetRuntimeProxyType, SpiritnetRuntimeRuntime, SpiritnetRuntimeSessionKeys, XcmDoubleEncoded, XcmV2BodyId, XcmV2BodyPart, XcmV2Instruction, XcmV2Junction, XcmV2MultiAsset, XcmV2MultiLocation, XcmV2MultiassetAssetId, XcmV2MultiassetAssetInstance, XcmV2MultiassetFungibility, XcmV2MultiassetMultiAssetFilter, XcmV2MultiassetMultiAssets, XcmV2MultiassetWildFungibility, XcmV2MultiassetWildMultiAsset, XcmV2MultilocationJunctions, XcmV2NetworkId, XcmV2OriginKind, XcmV2Response, XcmV2TraitsError, XcmV2WeightLimit, XcmV2Xcm, XcmV3Instruction, XcmV3Junction, XcmV3JunctionBodyId, XcmV3JunctionBodyPart, XcmV3JunctionNetworkId, XcmV3Junctions, XcmV3MaybeErrorCode, XcmV3MultiAsset, XcmV3MultiLocation, XcmV3MultiassetAssetId, XcmV3MultiassetAssetInstance, XcmV3MultiassetFungibility, XcmV3MultiassetMultiAssetFilter, XcmV3MultiassetMultiAssets, XcmV3MultiassetWildFungibility, XcmV3MultiassetWildMultiAsset, XcmV3PalletInfo, XcmV3QueryResponseInfo, XcmV3Response, XcmV3TraitsError, XcmV3TraitsOutcome, XcmV3VecPalletInfo, XcmV3WeightLimit, XcmV3Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; +import type { AttestationAttestationsAttestationDetails, AttestationCall, AttestationError, AttestationEvent, CtypeCall, CtypeCtypeEntry, CtypeError, CtypeEvent, CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemCodeUpgradeAuthorization, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmOrigin, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, DelegationAccessControlDelegationAc, DelegationCall, DelegationDelegationHierarchyDelegationDetails, DelegationDelegationHierarchyDelegationHierarchyDetails, DelegationDelegationHierarchyDelegationNode, DelegationDelegationHierarchyPermissions, DelegationError, DelegationEvent, DidCall, DidDidDetails, DidDidDetailsDidAuthorizedCallOperation, DidDidDetailsDidCreationDetails, DidDidDetailsDidEncryptionKey, DidDidDetailsDidPublicKey, DidDidDetailsDidPublicKeyDetails, DidDidDetailsDidSignature, DidDidDetailsDidVerificationKey, DidError, DidEvent, DidOriginDidRawOrigin, DidServiceEndpointsDidEndpoint, FrameSupportDispatchDispatchClass, FrameSupportDispatchDispatchInfo, FrameSupportDispatchPays, FrameSupportDispatchPerDispatchClassU32, FrameSupportDispatchPerDispatchClassWeight, FrameSupportDispatchPerDispatchClassWeightsPerClass, FrameSupportDispatchRawOrigin, FrameSupportPalletId, FrameSupportPreimagesBounded, FrameSupportTokensMiscBalanceStatus, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonZeroSender, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckTxVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, KiltAssetDidsAssetV1AssetId, KiltAssetDidsAssetV1EvmSmartContractFungibleReference, KiltAssetDidsAssetV1EvmSmartContractNonFungibleReference, KiltAssetDidsAssetV1GenericAssetId, KiltAssetDidsChainV1ChainId, KiltAssetDidsChainV1GenericChainId, KiltAssetDidsChainV1GenesisHexHash32Reference, KiltAssetDidsV1AssetDid, KiltSupportDeposit, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReserveData, PalletCollectiveCall, PalletCollectiveError, PalletCollectiveEvent, PalletCollectiveRawOrigin, PalletCollectiveVotes, PalletDemocracyCall, PalletDemocracyConviction, PalletDemocracyDelegations, PalletDemocracyError, PalletDemocracyEvent, PalletDemocracyMetadataOwner, PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyTally, PalletDemocracyVoteAccountVote, PalletDemocracyVotePriorLock, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletDidLookupAccountAccountId20, PalletDidLookupAccountEthereumSignature, PalletDidLookupAssociateAccountRequest, PalletDidLookupCall, PalletDidLookupConnectionRecord, PalletDidLookupError, PalletDidLookupEvent, PalletDidLookupLinkableAccountLinkableAccountId, PalletIndicesCall, PalletIndicesError, PalletIndicesEvent, PalletMembershipCall, PalletMembershipError, PalletMembershipEvent, PalletMultisigCall, PalletMultisigError, PalletMultisigEvent, PalletMultisigMultisig, PalletMultisigTimepoint, PalletPreimageCall, PalletPreimageError, PalletPreimageEvent, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyCall, PalletProxyError, PalletProxyEvent, PalletProxyProxyDefinition, PalletSchedulerCall, PalletSchedulerError, PalletSchedulerEvent, PalletSchedulerScheduled, PalletSessionCall, PalletSessionError, PalletSessionEvent, PalletTimestampCall, PalletTipsCall, PalletTipsError, PalletTipsEvent, PalletTipsOpenTip, PalletTransactionPaymentChargeTransactionPayment, PalletTransactionPaymentEvent, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUtilityCall, PalletUtilityError, PalletUtilityEvent, PalletVestingCall, PalletVestingError, PalletVestingEvent, PalletVestingReleases, PalletVestingVestingInfo, PalletWeb3NamesCall, PalletWeb3NamesError, PalletWeb3NamesEvent, PalletWeb3NamesWeb3NameWeb3NameOwnership, PalletXcmCall, PalletXcmError, PalletXcmEvent, PalletXcmOrigin, ParachainStakingCall, ParachainStakingCandidate, ParachainStakingCandidateStatus, ParachainStakingDelegationCounter, ParachainStakingError, ParachainStakingEvent, ParachainStakingInflationInflationInfo, ParachainStakingInflationRewardRate, ParachainStakingInflationStakingInfo, ParachainStakingRoundInfo, ParachainStakingSetOrderedSet, ParachainStakingStake, ParachainStakingTotalStake, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV2AbridgedHostConfiguration, PolkadotPrimitivesV2AbridgedHrmpChannel, PolkadotPrimitivesV2PersistedValidationData, PolkadotPrimitivesV2UpgradeRestriction, PublicCredentialsCall, PublicCredentialsCredentialsCredential, PublicCredentialsCredentialsCredentialEntry, PublicCredentialsError, PublicCredentialsEvent, RuntimeCommonAssetsAssetDid, RuntimeCommonAuthorizationAuthorizationId, RuntimeCommonAuthorizationPalletAuthorize, RuntimeCommonConstantsDelegationMaxChildren, RuntimeCommonConstantsDidMaxNewKeyAgreementKeys, SpArithmeticArithmeticError, SpConsensusAuraSr25519AppSr25519Public, SpCoreCryptoKeyTypeId, SpCoreEcdsaPublic, SpCoreEcdsaSignature, SpCoreEd25519Public, SpCoreEd25519Signature, SpCoreSr25519Public, SpCoreSr25519Signature, SpCoreVoid, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpRuntimeTransactionalError, SpTrieStorageProof, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight, SpiritnetRuntimeOriginCaller, SpiritnetRuntimeProxyType, SpiritnetRuntimeRuntime, SpiritnetRuntimeSessionKeys, XcmDoubleEncoded, XcmV2BodyId, XcmV2BodyPart, XcmV2Instruction, XcmV2Junction, XcmV2MultiAsset, XcmV2MultiLocation, XcmV2MultiassetAssetId, XcmV2MultiassetAssetInstance, XcmV2MultiassetFungibility, XcmV2MultiassetMultiAssetFilter, XcmV2MultiassetMultiAssets, XcmV2MultiassetWildFungibility, XcmV2MultiassetWildMultiAsset, XcmV2MultilocationJunctions, XcmV2NetworkId, XcmV2OriginKind, XcmV2Response, XcmV2TraitsError, XcmV2WeightLimit, XcmV2Xcm, XcmV3Instruction, XcmV3Junction, XcmV3JunctionBodyId, XcmV3JunctionBodyPart, XcmV3JunctionNetworkId, XcmV3Junctions, XcmV3MaybeErrorCode, XcmV3MultiAsset, XcmV3MultiLocation, XcmV3MultiassetAssetId, XcmV3MultiassetAssetInstance, XcmV3MultiassetFungibility, XcmV3MultiassetMultiAssetFilter, XcmV3MultiassetMultiAssets, XcmV3MultiassetWildFungibility, XcmV3MultiassetWildMultiAsset, XcmV3PalletInfo, XcmV3QueryResponseInfo, XcmV3Response, XcmV3TraitsError, XcmV3TraitsOutcome, XcmV3WeightLimit, XcmV3Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup'; declare module '@polkadot/types/types/registry' { interface InterfaceTypes { @@ -23,6 +23,7 @@ declare module '@polkadot/types/types/registry' { CumulusPalletDmpQueueEvent: CumulusPalletDmpQueueEvent; CumulusPalletDmpQueuePageIndexData: CumulusPalletDmpQueuePageIndexData; CumulusPalletParachainSystemCall: CumulusPalletParachainSystemCall; + CumulusPalletParachainSystemCodeUpgradeAuthorization: CumulusPalletParachainSystemCodeUpgradeAuthorization; CumulusPalletParachainSystemError: CumulusPalletParachainSystemError; CumulusPalletParachainSystemEvent: CumulusPalletParachainSystemEvent; CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot; @@ -111,6 +112,7 @@ declare module '@polkadot/types/types/registry' { PalletDemocracyDelegations: PalletDemocracyDelegations; PalletDemocracyError: PalletDemocracyError; PalletDemocracyEvent: PalletDemocracyEvent; + PalletDemocracyMetadataOwner: PalletDemocracyMetadataOwner; PalletDemocracyReferendumInfo: PalletDemocracyReferendumInfo; PalletDemocracyReferendumStatus: PalletDemocracyReferendumStatus; PalletDemocracyTally: PalletDemocracyTally; @@ -126,14 +128,17 @@ declare module '@polkadot/types/types/registry' { PalletDidLookupError: PalletDidLookupError; PalletDidLookupEvent: PalletDidLookupEvent; PalletDidLookupLinkableAccountLinkableAccountId: PalletDidLookupLinkableAccountLinkableAccountId; - PalletDidLookupMigrationState: PalletDidLookupMigrationState; - PalletDidLookupMigrationsMixedStorageKey: PalletDidLookupMigrationsMixedStorageKey; PalletIndicesCall: PalletIndicesCall; PalletIndicesError: PalletIndicesError; PalletIndicesEvent: PalletIndicesEvent; PalletMembershipCall: PalletMembershipCall; PalletMembershipError: PalletMembershipError; PalletMembershipEvent: PalletMembershipEvent; + PalletMultisigCall: PalletMultisigCall; + PalletMultisigError: PalletMultisigError; + PalletMultisigEvent: PalletMultisigEvent; + PalletMultisigMultisig: PalletMultisigMultisig; + PalletMultisigTimepoint: PalletMultisigTimepoint; PalletPreimageCall: PalletPreimageCall; PalletPreimageError: PalletPreimageError; PalletPreimageEvent: PalletPreimageEvent; @@ -207,6 +212,8 @@ declare module '@polkadot/types/types/registry' { RuntimeCommonAssetsAssetDid: RuntimeCommonAssetsAssetDid; RuntimeCommonAuthorizationAuthorizationId: RuntimeCommonAuthorizationAuthorizationId; RuntimeCommonAuthorizationPalletAuthorize: RuntimeCommonAuthorizationPalletAuthorize; + RuntimeCommonConstantsDelegationMaxChildren: RuntimeCommonConstantsDelegationMaxChildren; + RuntimeCommonConstantsDidMaxNewKeyAgreementKeys: RuntimeCommonConstantsDidMaxNewKeyAgreementKeys; SpArithmeticArithmeticError: SpArithmeticArithmeticError; SpConsensusAuraSr25519AppSr25519Public: SpConsensusAuraSr25519AppSr25519Public; SpCoreCryptoKeyTypeId: SpCoreCryptoKeyTypeId; @@ -274,7 +281,6 @@ declare module '@polkadot/types/types/registry' { XcmV3Response: XcmV3Response; XcmV3TraitsError: XcmV3TraitsError; XcmV3TraitsOutcome: XcmV3TraitsOutcome; - XcmV3VecPalletInfo: XcmV3VecPalletInfo; XcmV3WeightLimit: XcmV3WeightLimit; XcmV3Xcm: XcmV3Xcm; XcmVersionedMultiAssets: XcmVersionedMultiAssets; diff --git a/packages/augment-api/src/interfaces/types-lookup.ts b/packages/augment-api/src/interfaces/types-lookup.ts index cf6f588f8..cfa2145b5 100644 --- a/packages/augment-api/src/interfaces/types-lookup.ts +++ b/packages/augment-api/src/interfaces/types-lookup.ts @@ -389,7 +389,23 @@ declare module '@polkadot/types/lookup' { readonly asProposalCanceled: { readonly propIndex: u32; } & Struct; - readonly type: 'Proposed' | 'Tabled' | 'ExternalTabled' | 'Started' | 'Passed' | 'NotPassed' | 'Cancelled' | 'Delegated' | 'Undelegated' | 'Vetoed' | 'Blacklisted' | 'Voted' | 'Seconded' | 'ProposalCanceled'; + readonly isMetadataSet: boolean; + readonly asMetadataSet: { + readonly owner: PalletDemocracyMetadataOwner; + readonly hash_: H256; + } & Struct; + readonly isMetadataCleared: boolean; + readonly asMetadataCleared: { + readonly owner: PalletDemocracyMetadataOwner; + readonly hash_: H256; + } & Struct; + readonly isMetadataTransferred: boolean; + readonly asMetadataTransferred: { + readonly prevOwner: PalletDemocracyMetadataOwner; + readonly owner: PalletDemocracyMetadataOwner; + readonly hash_: H256; + } & Struct; + readonly type: 'Proposed' | 'Tabled' | 'ExternalTabled' | 'Started' | 'Passed' | 'NotPassed' | 'Cancelled' | 'Delegated' | 'Undelegated' | 'Vetoed' | 'Blacklisted' | 'Voted' | 'Seconded' | 'ProposalCanceled' | 'MetadataSet' | 'MetadataCleared' | 'MetadataTransferred'; } /** @name PalletDemocracyVoteThreshold (37) */ @@ -415,7 +431,17 @@ declare module '@polkadot/types/lookup' { readonly type: 'Standard' | 'Split'; } - /** @name PalletCollectiveEvent (40) */ + /** @name PalletDemocracyMetadataOwner (40) */ + interface PalletDemocracyMetadataOwner extends Enum { + readonly isExternal: boolean; + readonly isProposal: boolean; + readonly asProposal: u32; + readonly isReferendum: boolean; + readonly asReferendum: u32; + readonly type: 'External' | 'Proposal' | 'Referendum'; + } + + /** @name PalletCollectiveEvent (41) */ interface PalletCollectiveEvent extends Enum { readonly isProposed: boolean; readonly asProposed: { @@ -459,7 +485,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Proposed' | 'Voted' | 'Approved' | 'Disapproved' | 'Executed' | 'MemberExecuted' | 'Closed'; } - /** @name PalletMembershipEvent (45) */ + /** @name PalletMembershipEvent (46) */ interface PalletMembershipEvent extends Enum { readonly isMemberAdded: boolean; readonly isMemberRemoved: boolean; @@ -470,7 +496,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'MemberAdded' | 'MemberRemoved' | 'MembersSwapped' | 'MembersReset' | 'KeyChanged' | 'Dummy'; } - /** @name PalletTreasuryEvent (46) */ + /** @name PalletTreasuryEvent (47) */ interface PalletTreasuryEvent extends Enum { readonly isProposed: boolean; readonly asProposed: { @@ -517,7 +543,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit' | 'SpendApproved' | 'UpdatedInactive'; } - /** @name PalletUtilityEvent (47) */ + /** @name PalletUtilityEvent (48) */ interface PalletUtilityEvent extends Enum { readonly isBatchInterrupted: boolean; readonly asBatchInterrupted: { @@ -538,7 +564,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'BatchInterrupted' | 'BatchCompleted' | 'BatchCompletedWithErrors' | 'ItemCompleted' | 'ItemFailed' | 'DispatchedAs'; } - /** @name PalletVestingEvent (48) */ + /** @name PalletVestingEvent (49) */ interface PalletVestingEvent extends Enum { readonly isVestingUpdated: boolean; readonly asVestingUpdated: { @@ -552,7 +578,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'VestingUpdated' | 'VestingCompleted'; } - /** @name PalletSchedulerEvent (49) */ + /** @name PalletSchedulerEvent (50) */ interface PalletSchedulerEvent extends Enum { readonly isScheduled: boolean; readonly asScheduled: { @@ -588,7 +614,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Scheduled' | 'Canceled' | 'Dispatched' | 'CallUnavailable' | 'PeriodicFailed' | 'PermanentlyOverweight'; } - /** @name PalletProxyEvent (52) */ + /** @name PalletProxyEvent (53) */ interface PalletProxyEvent extends Enum { readonly isProxyExecuted: boolean; readonly asProxyExecuted: { @@ -624,7 +650,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ProxyExecuted' | 'PureCreated' | 'Announced' | 'ProxyAdded' | 'ProxyRemoved'; } - /** @name SpiritnetRuntimeProxyType (53) */ + /** @name SpiritnetRuntimeProxyType (54) */ interface SpiritnetRuntimeProxyType extends Enum { readonly isAny: boolean; readonly isNonTransfer: boolean; @@ -635,7 +661,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Any' | 'NonTransfer' | 'Governance' | 'ParachainStaking' | 'CancelProxy' | 'NonDepositClaiming'; } - /** @name PalletPreimageEvent (55) */ + /** @name PalletPreimageEvent (56) */ interface PalletPreimageEvent extends Enum { readonly isNoted: boolean; readonly asNoted: { @@ -652,7 +678,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Noted' | 'Requested' | 'Cleared'; } - /** @name PalletTipsEvent (57) */ + /** @name PalletTipsEvent (58) */ interface PalletTipsEvent extends Enum { readonly isNewTip: boolean; readonly asNewTip: { @@ -681,7 +707,46 @@ declare module '@polkadot/types/lookup' { readonly type: 'NewTip' | 'TipClosing' | 'TipClosed' | 'TipRetracted' | 'TipSlashed'; } - /** @name CtypeEvent (58) */ + /** @name PalletMultisigEvent (59) */ + interface PalletMultisigEvent extends Enum { + readonly isNewMultisig: boolean; + readonly asNewMultisig: { + readonly approving: AccountId32; + readonly multisig: AccountId32; + readonly callHash: U8aFixed; + } & Struct; + readonly isMultisigApproval: boolean; + readonly asMultisigApproval: { + readonly approving: AccountId32; + readonly timepoint: PalletMultisigTimepoint; + readonly multisig: AccountId32; + readonly callHash: U8aFixed; + } & Struct; + readonly isMultisigExecuted: boolean; + readonly asMultisigExecuted: { + readonly approving: AccountId32; + readonly timepoint: PalletMultisigTimepoint; + readonly multisig: AccountId32; + readonly callHash: U8aFixed; + readonly result: Result; + } & Struct; + readonly isMultisigCancelled: boolean; + readonly asMultisigCancelled: { + readonly cancelling: AccountId32; + readonly timepoint: PalletMultisigTimepoint; + readonly multisig: AccountId32; + readonly callHash: U8aFixed; + } & Struct; + readonly type: 'NewMultisig' | 'MultisigApproval' | 'MultisigExecuted' | 'MultisigCancelled'; + } + + /** @name PalletMultisigTimepoint (60) */ + interface PalletMultisigTimepoint extends Struct { + readonly height: u64; + readonly index: u32; + } + + /** @name CtypeEvent (61) */ interface CtypeEvent extends Enum { readonly isCTypeCreated: boolean; readonly asCTypeCreated: ITuple<[AccountId32, H256]>; @@ -690,7 +755,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'CTypeCreated' | 'CTypeUpdated'; } - /** @name AttestationEvent (59) */ + /** @name AttestationEvent (62) */ interface AttestationEvent extends Enum { readonly isAttestationCreated: boolean; readonly asAttestationCreated: ITuple<[AccountId32, H256, H256, Option]>; @@ -703,14 +768,14 @@ declare module '@polkadot/types/lookup' { readonly type: 'AttestationCreated' | 'AttestationRevoked' | 'AttestationRemoved' | 'DepositReclaimed'; } - /** @name RuntimeCommonAuthorizationAuthorizationId (61) */ + /** @name RuntimeCommonAuthorizationAuthorizationId (64) */ interface RuntimeCommonAuthorizationAuthorizationId extends Enum { readonly isDelegation: boolean; readonly asDelegation: H256; readonly type: 'Delegation'; } - /** @name DelegationEvent (62) */ + /** @name DelegationEvent (65) */ interface DelegationEvent extends Enum { readonly isHierarchyCreated: boolean; readonly asHierarchyCreated: ITuple<[AccountId32, H256, H256]>; @@ -729,12 +794,12 @@ declare module '@polkadot/types/lookup' { readonly type: 'HierarchyCreated' | 'HierarchyRevoked' | 'HierarchyRemoved' | 'DelegationCreated' | 'DelegationRevoked' | 'DelegationRemoved' | 'DepositReclaimed'; } - /** @name DelegationDelegationHierarchyPermissions (63) */ + /** @name DelegationDelegationHierarchyPermissions (66) */ interface DelegationDelegationHierarchyPermissions extends Struct { readonly bits: u32; } - /** @name DidEvent (64) */ + /** @name DidEvent (67) */ interface DidEvent extends Enum { readonly isDidCreated: boolean; readonly asDidCreated: ITuple<[AccountId32, AccountId32]>; @@ -747,7 +812,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'DidCreated' | 'DidUpdated' | 'DidDeleted' | 'DidCallDispatched'; } - /** @name PalletDidLookupEvent (65) */ + /** @name PalletDidLookupEvent (68) */ interface PalletDidLookupEvent extends Enum { readonly isAssociationEstablished: boolean; readonly asAssociationEstablished: ITuple<[PalletDidLookupLinkableAccountLinkableAccountId, AccountId32]>; @@ -758,7 +823,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'AssociationEstablished' | 'AssociationRemoved' | 'MigrationProgress' | 'MigrationCompleted'; } - /** @name PalletDidLookupLinkableAccountLinkableAccountId (66) */ + /** @name PalletDidLookupLinkableAccountLinkableAccountId (69) */ interface PalletDidLookupLinkableAccountLinkableAccountId extends Enum { readonly isAccountId20: boolean; readonly asAccountId20: PalletDidLookupAccountAccountId20; @@ -767,10 +832,10 @@ declare module '@polkadot/types/lookup' { readonly type: 'AccountId20' | 'AccountId32'; } - /** @name PalletDidLookupAccountAccountId20 (67) */ + /** @name PalletDidLookupAccountAccountId20 (70) */ interface PalletDidLookupAccountAccountId20 extends U8aFixed {} - /** @name PalletWeb3NamesEvent (69) */ + /** @name PalletWeb3NamesEvent (72) */ interface PalletWeb3NamesEvent extends Enum { readonly isWeb3NameClaimed: boolean; readonly asWeb3NameClaimed: { @@ -793,7 +858,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Web3NameClaimed' | 'Web3NameReleased' | 'Web3NameBanned' | 'Web3NameUnbanned'; } - /** @name PublicCredentialsEvent (72) */ + /** @name PublicCredentialsEvent (75) */ interface PublicCredentialsEvent extends Enum { readonly isCredentialStored: boolean; readonly asCredentialStored: { @@ -816,16 +881,16 @@ declare module '@polkadot/types/lookup' { readonly type: 'CredentialStored' | 'CredentialRemoved' | 'CredentialRevoked' | 'CredentialUnrevoked'; } - /** @name RuntimeCommonAssetsAssetDid (73) */ + /** @name RuntimeCommonAssetsAssetDid (76) */ interface RuntimeCommonAssetsAssetDid extends KiltAssetDidsV1AssetDid {} - /** @name KiltAssetDidsV1AssetDid (74) */ + /** @name KiltAssetDidsV1AssetDid (77) */ interface KiltAssetDidsV1AssetDid extends Struct { readonly chainId: KiltAssetDidsChainV1ChainId; readonly assetId: KiltAssetDidsAssetV1AssetId; } - /** @name KiltAssetDidsChainV1ChainId (75) */ + /** @name KiltAssetDidsChainV1ChainId (78) */ interface KiltAssetDidsChainV1ChainId extends Enum { readonly isEip155: boolean; readonly asEip155: u128; @@ -840,16 +905,16 @@ declare module '@polkadot/types/lookup' { readonly type: 'Eip155' | 'Bip122' | 'Dotsama' | 'Solana' | 'Generic'; } - /** @name KiltAssetDidsChainV1GenesisHexHash32Reference (77) */ + /** @name KiltAssetDidsChainV1GenesisHexHash32Reference (80) */ interface KiltAssetDidsChainV1GenesisHexHash32Reference extends U8aFixed {} - /** @name KiltAssetDidsChainV1GenericChainId (81) */ + /** @name KiltAssetDidsChainV1GenericChainId (84) */ interface KiltAssetDidsChainV1GenericChainId extends Struct { readonly namespace: Bytes; readonly reference: Bytes; } - /** @name KiltAssetDidsAssetV1AssetId (85) */ + /** @name KiltAssetDidsAssetV1AssetId (88) */ interface KiltAssetDidsAssetV1AssetId extends Enum { readonly isSlip44: boolean; readonly asSlip44: U256; @@ -864,20 +929,20 @@ declare module '@polkadot/types/lookup' { readonly type: 'Slip44' | 'Erc20' | 'Erc721' | 'Erc1155' | 'Generic'; } - /** @name KiltAssetDidsAssetV1EvmSmartContractFungibleReference (89) */ + /** @name KiltAssetDidsAssetV1EvmSmartContractFungibleReference (92) */ interface KiltAssetDidsAssetV1EvmSmartContractFungibleReference extends U8aFixed {} - /** @name KiltAssetDidsAssetV1EvmSmartContractNonFungibleReference (90) */ + /** @name KiltAssetDidsAssetV1EvmSmartContractNonFungibleReference (93) */ interface KiltAssetDidsAssetV1EvmSmartContractNonFungibleReference extends ITuple<[KiltAssetDidsAssetV1EvmSmartContractFungibleReference, Option]> {} - /** @name KiltAssetDidsAssetV1GenericAssetId (94) */ + /** @name KiltAssetDidsAssetV1GenericAssetId (97) */ interface KiltAssetDidsAssetV1GenericAssetId extends Struct { readonly namespace: Bytes; readonly reference: Bytes; readonly id: Option; } - /** @name CumulusPalletParachainSystemEvent (100) */ + /** @name CumulusPalletParachainSystemEvent (103) */ interface CumulusPalletParachainSystemEvent extends Enum { readonly isValidationFunctionStored: boolean; readonly isValidationFunctionApplied: boolean; @@ -905,7 +970,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed' | 'UpwardMessageSent'; } - /** @name CumulusPalletXcmpQueueEvent (101) */ + /** @name CumulusPalletXcmpQueueEvent (104) */ interface CumulusPalletXcmpQueueEvent extends Enum { readonly isSuccess: boolean; readonly asSuccess: { @@ -945,7 +1010,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced'; } - /** @name XcmV3TraitsError (102) */ + /** @name XcmV3TraitsError (105) */ interface XcmV3TraitsError extends Enum { readonly isOverflow: boolean; readonly isUnimplemented: boolean; @@ -992,7 +1057,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'LocationFull' | 'LocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'ExpectationFalse' | 'PalletNotFound' | 'NameMismatch' | 'VersionIncompatible' | 'HoldingWouldOverflow' | 'ExportError' | 'ReanchorFailed' | 'NoDeal' | 'FeesNotMet' | 'LockError' | 'NoPermission' | 'Unanchored' | 'NotDepositable' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable' | 'ExceedsStackLimit'; } - /** @name PalletXcmEvent (104) */ + /** @name PalletXcmEvent (107) */ interface PalletXcmEvent extends Enum { readonly isAttempted: boolean; readonly asAttempted: XcmV3TraitsOutcome; @@ -1043,7 +1108,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail' | 'InvalidQuerierVersion' | 'InvalidQuerier' | 'VersionNotifyStarted' | 'VersionNotifyRequested' | 'VersionNotifyUnrequested' | 'FeesPaid' | 'AssetsClaimed'; } - /** @name XcmV3TraitsOutcome (105) */ + /** @name XcmV3TraitsOutcome (108) */ interface XcmV3TraitsOutcome extends Enum { readonly isComplete: boolean; readonly asComplete: SpWeightsWeightV2Weight; @@ -1054,13 +1119,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'Complete' | 'Incomplete' | 'Error'; } - /** @name XcmV3MultiLocation (106) */ + /** @name XcmV3MultiLocation (109) */ interface XcmV3MultiLocation extends Struct { readonly parents: u8; readonly interior: XcmV3Junctions; } - /** @name XcmV3Junctions (107) */ + /** @name XcmV3Junctions (110) */ interface XcmV3Junctions extends Enum { readonly isHere: boolean; readonly isX1: boolean; @@ -1082,7 +1147,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8'; } - /** @name XcmV3Junction (108) */ + /** @name XcmV3Junction (111) */ interface XcmV3Junction extends Enum { readonly isParachain: boolean; readonly asParachain: Compact; @@ -1121,7 +1186,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality' | 'GlobalConsensus'; } - /** @name XcmV3JunctionNetworkId (111) */ + /** @name XcmV3JunctionNetworkId (114) */ interface XcmV3JunctionNetworkId extends Enum { readonly isByGenesis: boolean; readonly asByGenesis: U8aFixed; @@ -1144,7 +1209,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ByGenesis' | 'ByFork' | 'Polkadot' | 'Kusama' | 'Westend' | 'Rococo' | 'Wococo' | 'Ethereum' | 'BitcoinCore' | 'BitcoinCash'; } - /** @name XcmV3JunctionBodyId (113) */ + /** @name XcmV3JunctionBodyId (116) */ interface XcmV3JunctionBodyId extends Enum { readonly isUnit: boolean; readonly isMoniker: boolean; @@ -1161,7 +1226,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Unit' | 'Moniker' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury'; } - /** @name XcmV3JunctionBodyPart (114) */ + /** @name XcmV3JunctionBodyPart (117) */ interface XcmV3JunctionBodyPart extends Enum { readonly isVoice: boolean; readonly isMembers: boolean; @@ -1186,10 +1251,10 @@ declare module '@polkadot/types/lookup' { readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion'; } - /** @name XcmV3Xcm (115) */ + /** @name XcmV3Xcm (118) */ interface XcmV3Xcm extends Vec {} - /** @name XcmV3Instruction (117) */ + /** @name XcmV3Instruction (120) */ interface XcmV3Instruction extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: XcmV3MultiassetMultiAssets; @@ -1371,16 +1436,16 @@ declare module '@polkadot/types/lookup' { readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'ReportHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion' | 'BurnAsset' | 'ExpectAsset' | 'ExpectOrigin' | 'ExpectError' | 'ExpectTransactStatus' | 'QueryPallet' | 'ExpectPallet' | 'ReportTransactStatus' | 'ClearTransactStatus' | 'UniversalOrigin' | 'ExportMessage' | 'LockAsset' | 'UnlockAsset' | 'NoteUnlockable' | 'RequestUnlock' | 'SetFeesMode' | 'SetTopic' | 'ClearTopic' | 'AliasOrigin' | 'UnpaidExecution'; } - /** @name XcmV3MultiassetMultiAssets (118) */ + /** @name XcmV3MultiassetMultiAssets (121) */ interface XcmV3MultiassetMultiAssets extends Vec {} - /** @name XcmV3MultiAsset (120) */ + /** @name XcmV3MultiAsset (123) */ interface XcmV3MultiAsset extends Struct { readonly id: XcmV3MultiassetAssetId; readonly fun: XcmV3MultiassetFungibility; } - /** @name XcmV3MultiassetAssetId (121) */ + /** @name XcmV3MultiassetAssetId (124) */ interface XcmV3MultiassetAssetId extends Enum { readonly isConcrete: boolean; readonly asConcrete: XcmV3MultiLocation; @@ -1389,7 +1454,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Concrete' | 'Abstract'; } - /** @name XcmV3MultiassetFungibility (122) */ + /** @name XcmV3MultiassetFungibility (125) */ interface XcmV3MultiassetFungibility extends Enum { readonly isFungible: boolean; readonly asFungible: Compact; @@ -1398,7 +1463,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV3MultiassetAssetInstance (123) */ + /** @name XcmV3MultiassetAssetInstance (126) */ interface XcmV3MultiassetAssetInstance extends Enum { readonly isUndefined: boolean; readonly isIndex: boolean; @@ -1414,7 +1479,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32'; } - /** @name XcmV3Response (125) */ + /** @name XcmV3Response (128) */ interface XcmV3Response extends Enum { readonly isNull: boolean; readonly isAssets: boolean; @@ -1424,16 +1489,13 @@ declare module '@polkadot/types/lookup' { readonly isVersion: boolean; readonly asVersion: u32; readonly isPalletsInfo: boolean; - readonly asPalletsInfo: XcmV3VecPalletInfo; + readonly asPalletsInfo: Vec; readonly isDispatchResult: boolean; readonly asDispatchResult: XcmV3MaybeErrorCode; readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version' | 'PalletsInfo' | 'DispatchResult'; } - /** @name XcmV3VecPalletInfo (128) */ - interface XcmV3VecPalletInfo extends Vec {} - - /** @name XcmV3PalletInfo (130) */ + /** @name XcmV3PalletInfo (132) */ interface XcmV3PalletInfo extends Struct { readonly index: Compact; readonly name: Bytes; @@ -1443,7 +1505,7 @@ declare module '@polkadot/types/lookup' { readonly patch: Compact; } - /** @name XcmV3MaybeErrorCode (131) */ + /** @name XcmV3MaybeErrorCode (135) */ interface XcmV3MaybeErrorCode extends Enum { readonly isSuccess: boolean; readonly isError: boolean; @@ -1453,7 +1515,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Success' | 'Error' | 'TruncatedError'; } - /** @name XcmV2OriginKind (133) */ + /** @name XcmV2OriginKind (138) */ interface XcmV2OriginKind extends Enum { readonly isNative: boolean; readonly isSovereignAccount: boolean; @@ -1462,19 +1524,19 @@ declare module '@polkadot/types/lookup' { readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm'; } - /** @name XcmDoubleEncoded (134) */ + /** @name XcmDoubleEncoded (139) */ interface XcmDoubleEncoded extends Struct { readonly encoded: Bytes; } - /** @name XcmV3QueryResponseInfo (135) */ + /** @name XcmV3QueryResponseInfo (140) */ interface XcmV3QueryResponseInfo extends Struct { readonly destination: XcmV3MultiLocation; readonly queryId: Compact; readonly maxWeight: SpWeightsWeightV2Weight; } - /** @name XcmV3MultiassetMultiAssetFilter (136) */ + /** @name XcmV3MultiassetMultiAssetFilter (141) */ interface XcmV3MultiassetMultiAssetFilter extends Enum { readonly isDefinite: boolean; readonly asDefinite: XcmV3MultiassetMultiAssets; @@ -1483,7 +1545,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Definite' | 'Wild'; } - /** @name XcmV3MultiassetWildMultiAsset (137) */ + /** @name XcmV3MultiassetWildMultiAsset (142) */ interface XcmV3MultiassetWildMultiAsset extends Enum { readonly isAll: boolean; readonly isAllOf: boolean; @@ -1502,14 +1564,14 @@ declare module '@polkadot/types/lookup' { readonly type: 'All' | 'AllOf' | 'AllCounted' | 'AllOfCounted'; } - /** @name XcmV3MultiassetWildFungibility (138) */ + /** @name XcmV3MultiassetWildFungibility (143) */ interface XcmV3MultiassetWildFungibility extends Enum { readonly isFungible: boolean; readonly isNonFungible: boolean; readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV3WeightLimit (139) */ + /** @name XcmV3WeightLimit (144) */ interface XcmV3WeightLimit extends Enum { readonly isUnlimited: boolean; readonly isLimited: boolean; @@ -1517,7 +1579,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Unlimited' | 'Limited'; } - /** @name XcmVersionedMultiAssets (140) */ + /** @name XcmVersionedMultiAssets (145) */ interface XcmVersionedMultiAssets extends Enum { readonly isV2: boolean; readonly asV2: XcmV2MultiassetMultiAssets; @@ -1526,16 +1588,16 @@ declare module '@polkadot/types/lookup' { readonly type: 'V2' | 'V3'; } - /** @name XcmV2MultiassetMultiAssets (141) */ + /** @name XcmV2MultiassetMultiAssets (146) */ interface XcmV2MultiassetMultiAssets extends Vec {} - /** @name XcmV2MultiAsset (143) */ + /** @name XcmV2MultiAsset (148) */ interface XcmV2MultiAsset extends Struct { readonly id: XcmV2MultiassetAssetId; readonly fun: XcmV2MultiassetFungibility; } - /** @name XcmV2MultiassetAssetId (144) */ + /** @name XcmV2MultiassetAssetId (149) */ interface XcmV2MultiassetAssetId extends Enum { readonly isConcrete: boolean; readonly asConcrete: XcmV2MultiLocation; @@ -1544,13 +1606,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'Concrete' | 'Abstract'; } - /** @name XcmV2MultiLocation (145) */ + /** @name XcmV2MultiLocation (150) */ interface XcmV2MultiLocation extends Struct { readonly parents: u8; readonly interior: XcmV2MultilocationJunctions; } - /** @name XcmV2MultilocationJunctions (146) */ + /** @name XcmV2MultilocationJunctions (151) */ interface XcmV2MultilocationJunctions extends Enum { readonly isHere: boolean; readonly isX1: boolean; @@ -1572,7 +1634,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8'; } - /** @name XcmV2Junction (147) */ + /** @name XcmV2Junction (152) */ interface XcmV2Junction extends Enum { readonly isParachain: boolean; readonly asParachain: Compact; @@ -1606,7 +1668,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality'; } - /** @name XcmV2NetworkId (148) */ + /** @name XcmV2NetworkId (153) */ interface XcmV2NetworkId extends Enum { readonly isAny: boolean; readonly isNamed: boolean; @@ -1616,7 +1678,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama'; } - /** @name XcmV2BodyId (150) */ + /** @name XcmV2BodyId (155) */ interface XcmV2BodyId extends Enum { readonly isUnit: boolean; readonly isNamed: boolean; @@ -1633,7 +1695,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial' | 'Defense' | 'Administration' | 'Treasury'; } - /** @name XcmV2BodyPart (151) */ + /** @name XcmV2BodyPart (156) */ interface XcmV2BodyPart extends Enum { readonly isVoice: boolean; readonly isMembers: boolean; @@ -1658,7 +1720,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion'; } - /** @name XcmV2MultiassetFungibility (152) */ + /** @name XcmV2MultiassetFungibility (157) */ interface XcmV2MultiassetFungibility extends Enum { readonly isFungible: boolean; readonly asFungible: Compact; @@ -1667,7 +1729,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV2MultiassetAssetInstance (153) */ + /** @name XcmV2MultiassetAssetInstance (158) */ interface XcmV2MultiassetAssetInstance extends Enum { readonly isUndefined: boolean; readonly isIndex: boolean; @@ -1685,7 +1747,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob'; } - /** @name XcmVersionedMultiLocation (154) */ + /** @name XcmVersionedMultiLocation (159) */ interface XcmVersionedMultiLocation extends Enum { readonly isV2: boolean; readonly asV2: XcmV2MultiLocation; @@ -1694,7 +1756,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'V2' | 'V3'; } - /** @name CumulusPalletXcmEvent (155) */ + /** @name CumulusPalletXcmEvent (160) */ interface CumulusPalletXcmEvent extends Enum { readonly isInvalidFormat: boolean; readonly asInvalidFormat: U8aFixed; @@ -1705,7 +1767,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward'; } - /** @name CumulusPalletDmpQueueEvent (156) */ + /** @name CumulusPalletDmpQueueEvent (161) */ interface CumulusPalletDmpQueueEvent extends Enum { readonly isInvalidFormat: boolean; readonly asInvalidFormat: { @@ -1737,10 +1799,14 @@ declare module '@polkadot/types/lookup' { readonly overweightIndex: u64; readonly weightUsed: SpWeightsWeightV2Weight; } & Struct; - readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced'; + readonly isMaxMessagesExhausted: boolean; + readonly asMaxMessagesExhausted: { + readonly messageId: U8aFixed; + } & Struct; + readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced' | 'MaxMessagesExhausted'; } - /** @name FrameSystemPhase (157) */ + /** @name FrameSystemPhase (162) */ interface FrameSystemPhase extends Enum { readonly isApplyExtrinsic: boolean; readonly asApplyExtrinsic: u32; @@ -1749,13 +1815,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization'; } - /** @name FrameSystemLastRuntimeUpgradeInfo (160) */ + /** @name FrameSystemLastRuntimeUpgradeInfo (165) */ interface FrameSystemLastRuntimeUpgradeInfo extends Struct { readonly specVersion: Compact; readonly specName: Text; } - /** @name FrameSystemCall (162) */ + /** @name FrameSystemCall (167) */ interface FrameSystemCall extends Enum { readonly isRemark: boolean; readonly asRemark: { @@ -1793,21 +1859,21 @@ declare module '@polkadot/types/lookup' { readonly type: 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent'; } - /** @name FrameSystemLimitsBlockWeights (166) */ + /** @name FrameSystemLimitsBlockWeights (171) */ interface FrameSystemLimitsBlockWeights extends Struct { readonly baseBlock: SpWeightsWeightV2Weight; readonly maxBlock: SpWeightsWeightV2Weight; readonly perClass: FrameSupportDispatchPerDispatchClassWeightsPerClass; } - /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (167) */ + /** @name FrameSupportDispatchPerDispatchClassWeightsPerClass (172) */ interface FrameSupportDispatchPerDispatchClassWeightsPerClass extends Struct { readonly normal: FrameSystemLimitsWeightsPerClass; readonly operational: FrameSystemLimitsWeightsPerClass; readonly mandatory: FrameSystemLimitsWeightsPerClass; } - /** @name FrameSystemLimitsWeightsPerClass (168) */ + /** @name FrameSystemLimitsWeightsPerClass (173) */ interface FrameSystemLimitsWeightsPerClass extends Struct { readonly baseExtrinsic: SpWeightsWeightV2Weight; readonly maxExtrinsic: Option; @@ -1815,25 +1881,25 @@ declare module '@polkadot/types/lookup' { readonly reserved: Option; } - /** @name FrameSystemLimitsBlockLength (170) */ + /** @name FrameSystemLimitsBlockLength (175) */ interface FrameSystemLimitsBlockLength extends Struct { readonly max: FrameSupportDispatchPerDispatchClassU32; } - /** @name FrameSupportDispatchPerDispatchClassU32 (171) */ + /** @name FrameSupportDispatchPerDispatchClassU32 (176) */ interface FrameSupportDispatchPerDispatchClassU32 extends Struct { readonly normal: u32; readonly operational: u32; readonly mandatory: u32; } - /** @name SpWeightsRuntimeDbWeight (172) */ + /** @name SpWeightsRuntimeDbWeight (177) */ interface SpWeightsRuntimeDbWeight extends Struct { readonly read: u64; readonly write: u64; } - /** @name SpVersionRuntimeVersion (173) */ + /** @name SpVersionRuntimeVersion (178) */ interface SpVersionRuntimeVersion extends Struct { readonly specName: Text; readonly implName: Text; @@ -1845,7 +1911,7 @@ declare module '@polkadot/types/lookup' { readonly stateVersion: u8; } - /** @name FrameSystemError (177) */ + /** @name FrameSystemError (182) */ interface FrameSystemError extends Enum { readonly isInvalidSpecName: boolean; readonly isSpecVersionNeedsToIncrease: boolean; @@ -1856,7 +1922,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered'; } - /** @name PalletTimestampCall (179) */ + /** @name PalletTimestampCall (183) */ interface PalletTimestampCall extends Enum { readonly isSet: boolean; readonly asSet: { @@ -1865,7 +1931,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Set'; } - /** @name PalletIndicesCall (181) */ + /** @name PalletIndicesCall (185) */ interface PalletIndicesCall extends Enum { readonly isClaim: boolean; readonly asClaim: { @@ -1893,7 +1959,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Claim' | 'Transfer' | 'Free' | 'ForceTransfer' | 'Freeze'; } - /** @name PalletIndicesError (184) */ + /** @name PalletIndicesError (188) */ interface PalletIndicesError extends Enum { readonly isNotAssigned: boolean; readonly isNotOwner: boolean; @@ -1903,14 +1969,14 @@ declare module '@polkadot/types/lookup' { readonly type: 'NotAssigned' | 'NotOwner' | 'InUse' | 'NotTransfer' | 'Permanent'; } - /** @name PalletBalancesBalanceLock (186) */ + /** @name PalletBalancesBalanceLock (190) */ interface PalletBalancesBalanceLock extends Struct { readonly id: U8aFixed; readonly amount: u128; readonly reasons: PalletBalancesReasons; } - /** @name PalletBalancesReasons (187) */ + /** @name PalletBalancesReasons (191) */ interface PalletBalancesReasons extends Enum { readonly isFee: boolean; readonly isMisc: boolean; @@ -1918,13 +1984,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'Fee' | 'Misc' | 'All'; } - /** @name PalletBalancesReserveData (190) */ + /** @name PalletBalancesReserveData (194) */ interface PalletBalancesReserveData extends Struct { readonly id: U8aFixed; readonly amount: u128; } - /** @name PalletBalancesCall (192) */ + /** @name PalletBalancesCall (196) */ interface PalletBalancesCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -1961,7 +2027,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve'; } - /** @name PalletBalancesError (193) */ + /** @name PalletBalancesError (197) */ interface PalletBalancesError extends Enum { readonly isVestingBalance: boolean; readonly isLiquidityRestrictions: boolean; @@ -1974,28 +2040,28 @@ declare module '@polkadot/types/lookup' { readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves'; } - /** @name PalletTransactionPaymentReleases (195) */ + /** @name PalletTransactionPaymentReleases (199) */ interface PalletTransactionPaymentReleases extends Enum { readonly isV1Ancient: boolean; readonly isV2: boolean; readonly type: 'V1Ancient' | 'V2'; } - /** @name SpConsensusAuraSr25519AppSr25519Public (197) */ + /** @name SpConsensusAuraSr25519AppSr25519Public (201) */ interface SpConsensusAuraSr25519AppSr25519Public extends SpCoreSr25519Public {} - /** @name SpCoreSr25519Public (198) */ + /** @name SpCoreSr25519Public (202) */ interface SpCoreSr25519Public extends U8aFixed {} - /** @name SpiritnetRuntimeSessionKeys (204) */ + /** @name SpiritnetRuntimeSessionKeys (208) */ interface SpiritnetRuntimeSessionKeys extends Struct { readonly aura: SpConsensusAuraSr25519AppSr25519Public; } - /** @name SpCoreCryptoKeyTypeId (207) */ + /** @name SpCoreCryptoKeyTypeId (211) */ interface SpCoreCryptoKeyTypeId extends U8aFixed {} - /** @name PalletSessionCall (208) */ + /** @name PalletSessionCall (212) */ interface PalletSessionCall extends Enum { readonly isSetKeys: boolean; readonly asSetKeys: { @@ -2006,7 +2072,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'SetKeys' | 'PurgeKeys'; } - /** @name PalletSessionError (209) */ + /** @name PalletSessionError (213) */ interface PalletSessionError extends Enum { readonly isInvalidProof: boolean; readonly isNoAssociatedValidatorId: boolean; @@ -2016,26 +2082,26 @@ declare module '@polkadot/types/lookup' { readonly type: 'InvalidProof' | 'NoAssociatedValidatorId' | 'DuplicatedKey' | 'NoKeys' | 'NoAccount'; } - /** @name ParachainStakingRoundInfo (210) */ + /** @name ParachainStakingRoundInfo (214) */ interface ParachainStakingRoundInfo extends Struct { readonly current: u32; readonly first: u64; readonly length: u64; } - /** @name ParachainStakingDelegationCounter (211) */ + /** @name ParachainStakingDelegationCounter (215) */ interface ParachainStakingDelegationCounter extends Struct { readonly round: u32; readonly counter: u32; } - /** @name ParachainStakingStake (212) */ + /** @name ParachainStakingStake (216) */ interface ParachainStakingStake extends Struct { readonly owner: AccountId32; readonly amount: u128; } - /** @name ParachainStakingCandidate (213) */ + /** @name ParachainStakingCandidate (217) */ interface ParachainStakingCandidate extends Struct { readonly id: AccountId32; readonly stake: u128; @@ -2044,10 +2110,10 @@ declare module '@polkadot/types/lookup' { readonly status: ParachainStakingCandidateStatus; } - /** @name ParachainStakingSetOrderedSet (214) */ + /** @name ParachainStakingSetOrderedSet (218) */ interface ParachainStakingSetOrderedSet extends Vec {} - /** @name ParachainStakingCandidateStatus (217) */ + /** @name ParachainStakingCandidateStatus (221) */ interface ParachainStakingCandidateStatus extends Enum { readonly isActive: boolean; readonly isLeaving: boolean; @@ -2055,31 +2121,31 @@ declare module '@polkadot/types/lookup' { readonly type: 'Active' | 'Leaving'; } - /** @name ParachainStakingTotalStake (218) */ + /** @name ParachainStakingTotalStake (222) */ interface ParachainStakingTotalStake extends Struct { readonly collators: u128; readonly delegators: u128; } - /** @name ParachainStakingInflationInflationInfo (221) */ + /** @name ParachainStakingInflationInflationInfo (225) */ interface ParachainStakingInflationInflationInfo extends Struct { readonly collator: ParachainStakingInflationStakingInfo; readonly delegator: ParachainStakingInflationStakingInfo; } - /** @name ParachainStakingInflationStakingInfo (222) */ + /** @name ParachainStakingInflationStakingInfo (226) */ interface ParachainStakingInflationStakingInfo extends Struct { readonly maxRate: Perquintill; readonly rewardRate: ParachainStakingInflationRewardRate; } - /** @name ParachainStakingInflationRewardRate (223) */ + /** @name ParachainStakingInflationRewardRate (227) */ interface ParachainStakingInflationRewardRate extends Struct { readonly annual: Perquintill; readonly perBlock: Perquintill; } - /** @name ParachainStakingCall (228) */ + /** @name ParachainStakingCall (232) */ interface ParachainStakingCall extends Enum { readonly isForceNewRound: boolean; readonly isSetInflation: boolean; @@ -2148,7 +2214,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ForceNewRound' | 'SetInflation' | 'SetMaxSelectedCandidates' | 'SetBlocksPerRound' | 'SetMaxCandidateStake' | 'ForceRemoveCandidate' | 'JoinCandidates' | 'InitLeaveCandidates' | 'ExecuteLeaveCandidates' | 'CancelLeaveCandidates' | 'CandidateStakeMore' | 'CandidateStakeLess' | 'JoinDelegators' | 'LeaveDelegators' | 'DelegatorStakeMore' | 'DelegatorStakeLess' | 'UnlockUnstaked' | 'ClaimRewards' | 'IncrementCollatorRewards' | 'IncrementDelegatorRewards' | 'ExecuteScheduledRewardChange'; } - /** @name ParachainStakingError (229) */ + /** @name ParachainStakingError (233) */ interface ParachainStakingError extends Enum { readonly isDelegatorNotFound: boolean; readonly isCandidateNotFound: boolean; @@ -2184,7 +2250,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'DelegatorNotFound' | 'CandidateNotFound' | 'DelegatorExists' | 'CandidateExists' | 'ValStakeZero' | 'ValStakeBelowMin' | 'ValStakeAboveMax' | 'DelegationBelowMin' | 'AlreadyLeaving' | 'NotLeaving' | 'CannotLeaveYet' | 'CannotJoinBeforeUnlocking' | 'AlreadyDelegating' | 'NotYetDelegating' | 'DelegationsPerRoundExceeded' | 'TooManyDelegators' | 'TooFewCollatorCandidates' | 'CannotStakeIfLeaving' | 'CannotDelegateIfLeaving' | 'MaxCollatorsPerDelegatorExceeded' | 'AlreadyDelegatedCollator' | 'DelegationNotFound' | 'Underflow' | 'CannotSetAboveMax' | 'CannotSetBelowMin' | 'InvalidSchedule' | 'NoMoreUnstaking' | 'TooEarly' | 'StakeNotFound' | 'UnstakingIsEmpty' | 'RewardsNotFound'; } - /** @name FrameSupportPreimagesBounded (232) */ + /** @name FrameSupportPreimagesBounded (236) */ interface FrameSupportPreimagesBounded extends Enum { readonly isLegacy: boolean; readonly asLegacy: { @@ -2200,7 +2266,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Legacy' | 'Inline' | 'Lookup'; } - /** @name PalletDemocracyCall (234) */ + /** @name PalletDemocracyCall (238) */ interface PalletDemocracyCall extends Enum { readonly isPropose: boolean; readonly asPropose: { @@ -2276,10 +2342,15 @@ declare module '@polkadot/types/lookup' { readonly asCancelProposal: { readonly propIndex: Compact; } & Struct; - readonly type: 'Propose' | 'Second' | 'Vote' | 'EmergencyCancel' | 'ExternalPropose' | 'ExternalProposeMajority' | 'ExternalProposeDefault' | 'FastTrack' | 'VetoExternal' | 'CancelReferendum' | 'Delegate' | 'Undelegate' | 'ClearPublicProposals' | 'Unlock' | 'RemoveVote' | 'RemoveOtherVote' | 'Blacklist' | 'CancelProposal'; + readonly isSetMetadata: boolean; + readonly asSetMetadata: { + readonly owner: PalletDemocracyMetadataOwner; + readonly maybeHash: Option; + } & Struct; + readonly type: 'Propose' | 'Second' | 'Vote' | 'EmergencyCancel' | 'ExternalPropose' | 'ExternalProposeMajority' | 'ExternalProposeDefault' | 'FastTrack' | 'VetoExternal' | 'CancelReferendum' | 'Delegate' | 'Undelegate' | 'ClearPublicProposals' | 'Unlock' | 'RemoveVote' | 'RemoveOtherVote' | 'Blacklist' | 'CancelProposal' | 'SetMetadata'; } - /** @name PalletDemocracyConviction (235) */ + /** @name PalletDemocracyConviction (239) */ interface PalletDemocracyConviction extends Enum { readonly isNone: boolean; readonly isLocked1x: boolean; @@ -2291,7 +2362,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'None' | 'Locked1x' | 'Locked2x' | 'Locked3x' | 'Locked4x' | 'Locked5x' | 'Locked6x'; } - /** @name PalletCollectiveCall (237) */ + /** @name PalletCollectiveCall (242) */ interface PalletCollectiveCall extends Enum { readonly isSetMembers: boolean; readonly asSetMembers: { @@ -2337,7 +2408,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'SetMembers' | 'Execute' | 'Propose' | 'Vote' | 'CloseOldWeight' | 'DisapproveProposal' | 'Close'; } - /** @name PalletMembershipCall (242) */ + /** @name PalletMembershipCall (247) */ interface PalletMembershipCall extends Enum { readonly isAddMember: boolean; readonly asAddMember: { @@ -2368,7 +2439,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'AddMember' | 'RemoveMember' | 'SwapMember' | 'ResetMembers' | 'ChangeKey' | 'SetPrime' | 'ClearPrime'; } - /** @name PalletTreasuryCall (243) */ + /** @name PalletTreasuryCall (248) */ interface PalletTreasuryCall extends Enum { readonly isProposeSpend: boolean; readonly asProposeSpend: { @@ -2395,7 +2466,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal' | 'Spend' | 'RemoveApproval'; } - /** @name PalletUtilityCall (244) */ + /** @name PalletUtilityCall (249) */ interface PalletUtilityCall extends Enum { readonly isBatch: boolean; readonly asBatch: { @@ -2427,7 +2498,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Batch' | 'AsDerivative' | 'BatchAll' | 'DispatchAs' | 'ForceBatch' | 'WithWeight'; } - /** @name SpiritnetRuntimeOriginCaller (246) */ + /** @name SpiritnetRuntimeOriginCaller (251) */ interface SpiritnetRuntimeOriginCaller extends Enum { readonly isSystem: boolean; readonly asSystem: FrameSupportDispatchRawOrigin; @@ -2445,7 +2516,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'System' | 'Void' | 'Council' | 'TechnicalCommittee' | 'Did' | 'PolkadotXcm' | 'CumulusXcm'; } - /** @name FrameSupportDispatchRawOrigin (247) */ + /** @name FrameSupportDispatchRawOrigin (252) */ interface FrameSupportDispatchRawOrigin extends Enum { readonly isRoot: boolean; readonly isSigned: boolean; @@ -2454,7 +2525,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Root' | 'Signed' | 'None'; } - /** @name PalletCollectiveRawOrigin (248) */ + /** @name PalletCollectiveRawOrigin (253) */ interface PalletCollectiveRawOrigin extends Enum { readonly isMembers: boolean; readonly asMembers: ITuple<[u32, u32]>; @@ -2464,13 +2535,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'Members' | 'Member' | 'Phantom'; } - /** @name DidOriginDidRawOrigin (250) */ + /** @name DidOriginDidRawOrigin (255) */ interface DidOriginDidRawOrigin extends Struct { readonly id: AccountId32; readonly submitter: AccountId32; } - /** @name PalletXcmOrigin (251) */ + /** @name PalletXcmOrigin (256) */ interface PalletXcmOrigin extends Enum { readonly isXcm: boolean; readonly asXcm: XcmV3MultiLocation; @@ -2479,7 +2550,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Xcm' | 'Response'; } - /** @name CumulusPalletXcmOrigin (252) */ + /** @name CumulusPalletXcmOrigin (257) */ interface CumulusPalletXcmOrigin extends Enum { readonly isRelay: boolean; readonly isSiblingParachain: boolean; @@ -2487,10 +2558,10 @@ declare module '@polkadot/types/lookup' { readonly type: 'Relay' | 'SiblingParachain'; } - /** @name SpCoreVoid (253) */ + /** @name SpCoreVoid (258) */ type SpCoreVoid = Null; - /** @name PalletVestingCall (254) */ + /** @name PalletVestingCall (259) */ interface PalletVestingCall extends Enum { readonly isVest: boolean; readonly isVestOther: boolean; @@ -2516,14 +2587,14 @@ declare module '@polkadot/types/lookup' { readonly type: 'Vest' | 'VestOther' | 'VestedTransfer' | 'ForceVestedTransfer' | 'MergeSchedules'; } - /** @name PalletVestingVestingInfo (255) */ + /** @name PalletVestingVestingInfo (260) */ interface PalletVestingVestingInfo extends Struct { readonly locked: u128; readonly perBlock: u128; readonly startingBlock: u64; } - /** @name PalletSchedulerCall (256) */ + /** @name PalletSchedulerCall (261) */ interface PalletSchedulerCall extends Enum { readonly isSchedule: boolean; readonly asSchedule: { @@ -2567,7 +2638,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Schedule' | 'Cancel' | 'ScheduleNamed' | 'CancelNamed' | 'ScheduleAfter' | 'ScheduleNamedAfter'; } - /** @name PalletProxyCall (258) */ + /** @name PalletProxyCall (263) */ interface PalletProxyCall extends Enum { readonly isProxy: boolean; readonly asProxy: { @@ -2627,7 +2698,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Proxy' | 'AddProxy' | 'RemoveProxy' | 'RemoveProxies' | 'CreatePure' | 'KillPure' | 'Announce' | 'RemoveAnnouncement' | 'RejectAnnouncement' | 'ProxyAnnounced'; } - /** @name PalletPreimageCall (260) */ + /** @name PalletPreimageCall (265) */ interface PalletPreimageCall extends Enum { readonly isNotePreimage: boolean; readonly asNotePreimage: { @@ -2648,7 +2719,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'NotePreimage' | 'UnnotePreimage' | 'RequestPreimage' | 'UnrequestPreimage'; } - /** @name PalletTipsCall (262) */ + /** @name PalletTipsCall (267) */ interface PalletTipsCall extends Enum { readonly isReportAwesome: boolean; readonly asReportAwesome: { @@ -2681,7 +2752,40 @@ declare module '@polkadot/types/lookup' { readonly type: 'ReportAwesome' | 'RetractTip' | 'TipNew' | 'Tip' | 'CloseTip' | 'SlashTip'; } - /** @name CtypeCall (263) */ + /** @name PalletMultisigCall (268) */ + interface PalletMultisigCall extends Enum { + readonly isAsMultiThreshold1: boolean; + readonly asAsMultiThreshold1: { + readonly otherSignatories: Vec; + readonly call: Call; + } & Struct; + readonly isAsMulti: boolean; + readonly asAsMulti: { + readonly threshold: u16; + readonly otherSignatories: Vec; + readonly maybeTimepoint: Option; + readonly call: Call; + readonly maxWeight: SpWeightsWeightV2Weight; + } & Struct; + readonly isApproveAsMulti: boolean; + readonly asApproveAsMulti: { + readonly threshold: u16; + readonly otherSignatories: Vec; + readonly maybeTimepoint: Option; + readonly callHash: U8aFixed; + readonly maxWeight: SpWeightsWeightV2Weight; + } & Struct; + readonly isCancelAsMulti: boolean; + readonly asCancelAsMulti: { + readonly threshold: u16; + readonly otherSignatories: Vec; + readonly timepoint: PalletMultisigTimepoint; + readonly callHash: U8aFixed; + } & Struct; + readonly type: 'AsMultiThreshold1' | 'AsMulti' | 'ApproveAsMulti' | 'CancelAsMulti'; + } + + /** @name CtypeCall (270) */ interface CtypeCall extends Enum { readonly isAdd: boolean; readonly asAdd: { @@ -2695,7 +2799,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Add' | 'SetBlockNumber'; } - /** @name AttestationCall (264) */ + /** @name AttestationCall (271) */ interface AttestationCall extends Enum { readonly isAdd: boolean; readonly asAdd: { @@ -2728,23 +2832,23 @@ declare module '@polkadot/types/lookup' { readonly type: 'Add' | 'Revoke' | 'Remove' | 'ReclaimDeposit' | 'ChangeDepositOwner' | 'UpdateDeposit'; } - /** @name RuntimeCommonAuthorizationPalletAuthorize (266) */ + /** @name RuntimeCommonAuthorizationPalletAuthorize (273) */ interface RuntimeCommonAuthorizationPalletAuthorize extends Enum { readonly isDelegation: boolean; readonly asDelegation: DelegationAccessControlDelegationAc; readonly type: 'Delegation'; } - /** @name DelegationAccessControlDelegationAc (267) */ + /** @name DelegationAccessControlDelegationAc (274) */ interface DelegationAccessControlDelegationAc extends Struct { readonly subjectNodeId: H256; readonly maxChecks: u32; } - /** @name SpiritnetRuntimeRuntime (268) */ + /** @name SpiritnetRuntimeRuntime (275) */ type SpiritnetRuntimeRuntime = Null; - /** @name DelegationCall (269) */ + /** @name DelegationCall (276) */ interface DelegationCall extends Enum { readonly isCreateHierarchy: boolean; readonly asCreateHierarchy: { @@ -2786,7 +2890,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'CreateHierarchy' | 'AddDelegation' | 'RevokeDelegation' | 'RemoveDelegation' | 'ReclaimDeposit' | 'ChangeDepositOwner' | 'UpdateDeposit'; } - /** @name DidDidDetailsDidSignature (270) */ + /** @name DidDidDetailsDidSignature (277) */ interface DidDidDetailsDidSignature extends Enum { readonly isEd25519: boolean; readonly asEd25519: SpCoreEd25519Signature; @@ -2797,16 +2901,16 @@ declare module '@polkadot/types/lookup' { readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa'; } - /** @name SpCoreEd25519Signature (271) */ + /** @name SpCoreEd25519Signature (278) */ interface SpCoreEd25519Signature extends U8aFixed {} - /** @name SpCoreSr25519Signature (273) */ + /** @name SpCoreSr25519Signature (280) */ interface SpCoreSr25519Signature extends U8aFixed {} - /** @name SpCoreEcdsaSignature (274) */ + /** @name SpCoreEcdsaSignature (281) */ interface SpCoreEcdsaSignature extends U8aFixed {} - /** @name DidCall (276) */ + /** @name DidCall (283) */ interface DidCall extends Enum { readonly isCreate: boolean; readonly asCreate: { @@ -2865,7 +2969,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Create' | 'SetAuthenticationKey' | 'SetDelegationKey' | 'RemoveDelegationKey' | 'SetAttestationKey' | 'RemoveAttestationKey' | 'AddKeyAgreementKey' | 'RemoveKeyAgreementKey' | 'AddServiceEndpoint' | 'RemoveServiceEndpoint' | 'Delete' | 'ReclaimDeposit' | 'SubmitDidCall' | 'ChangeDepositOwner' | 'UpdateDeposit'; } - /** @name DidDidDetailsDidCreationDetails (277) */ + /** @name DidDidDetailsDidCreationDetails (284) */ interface DidDidDetailsDidCreationDetails extends Struct { readonly did: AccountId32; readonly submitter: AccountId32; @@ -2875,14 +2979,24 @@ declare module '@polkadot/types/lookup' { readonly newServiceDetails: Vec; } - /** @name DidDidDetailsDidEncryptionKey (279) */ + /** @name RuntimeCommonConstantsDidMaxNewKeyAgreementKeys (285) */ + type RuntimeCommonConstantsDidMaxNewKeyAgreementKeys = Null; + + /** @name DidServiceEndpointsDidEndpoint (286) */ + interface DidServiceEndpointsDidEndpoint extends Struct { + readonly id: Bytes; + readonly serviceTypes: Vec; + readonly urls: Vec; + } + + /** @name DidDidDetailsDidEncryptionKey (295) */ interface DidDidDetailsDidEncryptionKey extends Enum { readonly isX25519: boolean; readonly asX25519: U8aFixed; readonly type: 'X25519'; } - /** @name DidDidDetailsDidVerificationKey (283) */ + /** @name DidDidDetailsDidVerificationKey (299) */ interface DidDidDetailsDidVerificationKey extends Enum { readonly isEd25519: boolean; readonly asEd25519: SpCoreEd25519Public; @@ -2893,20 +3007,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa'; } - /** @name SpCoreEd25519Public (284) */ + /** @name SpCoreEd25519Public (300) */ interface SpCoreEd25519Public extends U8aFixed {} - /** @name SpCoreEcdsaPublic (285) */ + /** @name SpCoreEcdsaPublic (301) */ interface SpCoreEcdsaPublic extends U8aFixed {} - /** @name DidServiceEndpointsDidEndpoint (288) */ - interface DidServiceEndpointsDidEndpoint extends Struct { - readonly id: Bytes; - readonly serviceTypes: Vec; - readonly urls: Vec; - } - - /** @name DidDidDetailsDidAuthorizedCallOperation (296) */ + /** @name DidDidDetailsDidAuthorizedCallOperation (304) */ interface DidDidDetailsDidAuthorizedCallOperation extends Struct { readonly did: AccountId32; readonly txCounter: u64; @@ -2915,7 +3022,7 @@ declare module '@polkadot/types/lookup' { readonly submitter: AccountId32; } - /** @name PalletDidLookupCall (297) */ + /** @name PalletDidLookupCall (305) */ interface PalletDidLookupCall extends Enum { readonly isAssociateAccount: boolean; readonly asAssociateAccount: { @@ -2940,14 +3047,10 @@ declare module '@polkadot/types/lookup' { readonly asUpdateDeposit: { readonly account: PalletDidLookupLinkableAccountLinkableAccountId; } & Struct; - readonly isMigrate: boolean; - readonly asMigrate: { - readonly limit: u32; - } & Struct; - readonly type: 'AssociateAccount' | 'AssociateSender' | 'RemoveSenderAssociation' | 'RemoveAccountAssociation' | 'ReclaimDeposit' | 'ChangeDepositOwner' | 'UpdateDeposit' | 'Migrate'; + readonly type: 'AssociateAccount' | 'AssociateSender' | 'RemoveSenderAssociation' | 'RemoveAccountAssociation' | 'ReclaimDeposit' | 'ChangeDepositOwner' | 'UpdateDeposit'; } - /** @name PalletDidLookupAssociateAccountRequest (298) */ + /** @name PalletDidLookupAssociateAccountRequest (306) */ interface PalletDidLookupAssociateAccountRequest extends Enum { readonly isPolkadot: boolean; readonly asPolkadot: ITuple<[AccountId32, SpRuntimeMultiSignature]>; @@ -2956,7 +3059,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Polkadot' | 'Ethereum'; } - /** @name SpRuntimeMultiSignature (299) */ + /** @name SpRuntimeMultiSignature (307) */ interface SpRuntimeMultiSignature extends Enum { readonly isEd25519: boolean; readonly asEd25519: SpCoreEd25519Signature; @@ -2967,10 +3070,10 @@ declare module '@polkadot/types/lookup' { readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa'; } - /** @name PalletDidLookupAccountEthereumSignature (300) */ + /** @name PalletDidLookupAccountEthereumSignature (308) */ interface PalletDidLookupAccountEthereumSignature extends SpCoreEcdsaSignature {} - /** @name PalletWeb3NamesCall (301) */ + /** @name PalletWeb3NamesCall (309) */ interface PalletWeb3NamesCall extends Enum { readonly isClaim: boolean; readonly asClaim: { @@ -2997,7 +3100,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Claim' | 'ReleaseByOwner' | 'ReclaimDeposit' | 'Ban' | 'Unban' | 'ChangeDepositOwner' | 'UpdateDeposit'; } - /** @name PublicCredentialsCall (302) */ + /** @name PublicCredentialsCall (310) */ interface PublicCredentialsCall extends Enum { readonly isAdd: boolean; readonly asAdd: { @@ -3033,7 +3136,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Add' | 'Revoke' | 'Unrevoke' | 'Remove' | 'ReclaimDeposit' | 'ChangeDepositOwner' | 'UpdateDeposit'; } - /** @name PublicCredentialsCredentialsCredential (303) */ + /** @name PublicCredentialsCredentialsCredential (311) */ interface PublicCredentialsCredentialsCredential extends Struct { readonly ctypeHash: H256; readonly subject: Bytes; @@ -3041,7 +3144,7 @@ declare module '@polkadot/types/lookup' { readonly authorization: Option; } - /** @name CumulusPalletParachainSystemCall (306) */ + /** @name CumulusPalletParachainSystemCall (314) */ interface CumulusPalletParachainSystemCall extends Enum { readonly isSetValidationData: boolean; readonly asSetValidationData: { @@ -3054,6 +3157,7 @@ declare module '@polkadot/types/lookup' { readonly isAuthorizeUpgrade: boolean; readonly asAuthorizeUpgrade: { readonly codeHash: H256; + readonly checkVersion: bool; } & Struct; readonly isEnactAuthorizedUpgrade: boolean; readonly asEnactAuthorizedUpgrade: { @@ -3062,7 +3166,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade'; } - /** @name CumulusPrimitivesParachainInherentParachainInherentData (307) */ + /** @name CumulusPrimitivesParachainInherentParachainInherentData (315) */ interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct { readonly validationData: PolkadotPrimitivesV2PersistedValidationData; readonly relayChainState: SpTrieStorageProof; @@ -3070,7 +3174,7 @@ declare module '@polkadot/types/lookup' { readonly horizontalMessages: BTreeMap>; } - /** @name PolkadotPrimitivesV2PersistedValidationData (308) */ + /** @name PolkadotPrimitivesV2PersistedValidationData (316) */ interface PolkadotPrimitivesV2PersistedValidationData extends Struct { readonly parentHead: Bytes; readonly relayParentNumber: u32; @@ -3078,24 +3182,24 @@ declare module '@polkadot/types/lookup' { readonly maxPovSize: u32; } - /** @name SpTrieStorageProof (310) */ + /** @name SpTrieStorageProof (318) */ interface SpTrieStorageProof extends Struct { readonly trieNodes: BTreeSet; } - /** @name PolkadotCorePrimitivesInboundDownwardMessage (313) */ + /** @name PolkadotCorePrimitivesInboundDownwardMessage (321) */ interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct { readonly sentAt: u32; readonly msg: Bytes; } - /** @name PolkadotCorePrimitivesInboundHrmpMessage (316) */ + /** @name PolkadotCorePrimitivesInboundHrmpMessage (324) */ interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct { readonly sentAt: u32; readonly data: Bytes; } - /** @name CumulusPalletXcmpQueueCall (319) */ + /** @name CumulusPalletXcmpQueueCall (327) */ interface CumulusPalletXcmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -3131,7 +3235,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight'; } - /** @name PalletXcmCall (320) */ + /** @name PalletXcmCall (328) */ interface PalletXcmCall extends Enum { readonly isSend: boolean; readonly asSend: { @@ -3193,7 +3297,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets'; } - /** @name XcmVersionedXcm (321) */ + /** @name XcmVersionedXcm (329) */ interface XcmVersionedXcm extends Enum { readonly isV2: boolean; readonly asV2: XcmV2Xcm; @@ -3202,10 +3306,10 @@ declare module '@polkadot/types/lookup' { readonly type: 'V2' | 'V3'; } - /** @name XcmV2Xcm (322) */ + /** @name XcmV2Xcm (330) */ interface XcmV2Xcm extends Vec {} - /** @name XcmV2Instruction (324) */ + /** @name XcmV2Instruction (332) */ interface XcmV2Instruction extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: XcmV2MultiassetMultiAssets; @@ -3325,7 +3429,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion'; } - /** @name XcmV2Response (325) */ + /** @name XcmV2Response (333) */ interface XcmV2Response extends Enum { readonly isNull: boolean; readonly isAssets: boolean; @@ -3337,7 +3441,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version'; } - /** @name XcmV2TraitsError (328) */ + /** @name XcmV2TraitsError (336) */ interface XcmV2TraitsError extends Enum { readonly isOverflow: boolean; readonly isUnimplemented: boolean; @@ -3370,7 +3474,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable'; } - /** @name XcmV2MultiassetMultiAssetFilter (329) */ + /** @name XcmV2MultiassetMultiAssetFilter (337) */ interface XcmV2MultiassetMultiAssetFilter extends Enum { readonly isDefinite: boolean; readonly asDefinite: XcmV2MultiassetMultiAssets; @@ -3379,7 +3483,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Definite' | 'Wild'; } - /** @name XcmV2MultiassetWildMultiAsset (330) */ + /** @name XcmV2MultiassetWildMultiAsset (338) */ interface XcmV2MultiassetWildMultiAsset extends Enum { readonly isAll: boolean; readonly isAllOf: boolean; @@ -3390,14 +3494,14 @@ declare module '@polkadot/types/lookup' { readonly type: 'All' | 'AllOf'; } - /** @name XcmV2MultiassetWildFungibility (331) */ + /** @name XcmV2MultiassetWildFungibility (339) */ interface XcmV2MultiassetWildFungibility extends Enum { readonly isFungible: boolean; readonly isNonFungible: boolean; readonly type: 'Fungible' | 'NonFungible'; } - /** @name XcmV2WeightLimit (332) */ + /** @name XcmV2WeightLimit (340) */ interface XcmV2WeightLimit extends Enum { readonly isUnlimited: boolean; readonly isLimited: boolean; @@ -3405,7 +3509,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Unlimited' | 'Limited'; } - /** @name CumulusPalletDmpQueueCall (341) */ + /** @name CumulusPalletDmpQueueCall (349) */ interface CumulusPalletDmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -3415,7 +3519,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ServiceOverweight'; } - /** @name PalletDemocracyReferendumInfo (345) */ + /** @name PalletDemocracyReferendumInfo (353) */ interface PalletDemocracyReferendumInfo extends Enum { readonly isOngoing: boolean; readonly asOngoing: PalletDemocracyReferendumStatus; @@ -3427,7 +3531,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Ongoing' | 'Finished'; } - /** @name PalletDemocracyReferendumStatus (346) */ + /** @name PalletDemocracyReferendumStatus (354) */ interface PalletDemocracyReferendumStatus extends Struct { readonly end: u64; readonly proposal: FrameSupportPreimagesBounded; @@ -3436,14 +3540,14 @@ declare module '@polkadot/types/lookup' { readonly tally: PalletDemocracyTally; } - /** @name PalletDemocracyTally (347) */ + /** @name PalletDemocracyTally (355) */ interface PalletDemocracyTally extends Struct { readonly ayes: u128; readonly nays: u128; readonly turnout: u128; } - /** @name PalletDemocracyVoteVoting (348) */ + /** @name PalletDemocracyVoteVoting (356) */ interface PalletDemocracyVoteVoting extends Enum { readonly isDirect: boolean; readonly asDirect: { @@ -3462,16 +3566,16 @@ declare module '@polkadot/types/lookup' { readonly type: 'Direct' | 'Delegating'; } - /** @name PalletDemocracyDelegations (352) */ + /** @name PalletDemocracyDelegations (360) */ interface PalletDemocracyDelegations extends Struct { readonly votes: u128; readonly capital: u128; } - /** @name PalletDemocracyVotePriorLock (353) */ + /** @name PalletDemocracyVotePriorLock (361) */ interface PalletDemocracyVotePriorLock extends ITuple<[u64, u128]> {} - /** @name PalletDemocracyError (356) */ + /** @name PalletDemocracyError (364) */ interface PalletDemocracyError extends Enum { readonly isValueLow: boolean; readonly isProposalMissing: boolean; @@ -3496,10 +3600,11 @@ declare module '@polkadot/types/lookup' { readonly isMaxVotesReached: boolean; readonly isTooMany: boolean; readonly isVotingPeriodLow: boolean; - readonly type: 'ValueLow' | 'ProposalMissing' | 'AlreadyCanceled' | 'DuplicateProposal' | 'ProposalBlacklisted' | 'NotSimpleMajority' | 'InvalidHash' | 'NoProposal' | 'AlreadyVetoed' | 'ReferendumInvalid' | 'NoneWaiting' | 'NotVoter' | 'NoPermission' | 'AlreadyDelegating' | 'InsufficientFunds' | 'NotDelegating' | 'VotesExist' | 'InstantNotAllowed' | 'Nonsense' | 'WrongUpperBound' | 'MaxVotesReached' | 'TooMany' | 'VotingPeriodLow'; + readonly isPreimageNotExist: boolean; + readonly type: 'ValueLow' | 'ProposalMissing' | 'AlreadyCanceled' | 'DuplicateProposal' | 'ProposalBlacklisted' | 'NotSimpleMajority' | 'InvalidHash' | 'NoProposal' | 'AlreadyVetoed' | 'ReferendumInvalid' | 'NoneWaiting' | 'NotVoter' | 'NoPermission' | 'AlreadyDelegating' | 'InsufficientFunds' | 'NotDelegating' | 'VotesExist' | 'InstantNotAllowed' | 'Nonsense' | 'WrongUpperBound' | 'MaxVotesReached' | 'TooMany' | 'VotingPeriodLow' | 'PreimageNotExist'; } - /** @name PalletCollectiveVotes (358) */ + /** @name PalletCollectiveVotes (366) */ interface PalletCollectiveVotes extends Struct { readonly index: u32; readonly threshold: u32; @@ -3508,7 +3613,7 @@ declare module '@polkadot/types/lookup' { readonly end: u64; } - /** @name PalletCollectiveError (359) */ + /** @name PalletCollectiveError (367) */ interface PalletCollectiveError extends Enum { readonly isNotMember: boolean; readonly isDuplicateProposal: boolean; @@ -3523,7 +3628,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'NotMember' | 'DuplicateProposal' | 'ProposalMissing' | 'WrongIndex' | 'DuplicateVote' | 'AlreadyInitialized' | 'TooEarly' | 'TooManyProposals' | 'WrongProposalWeight' | 'WrongProposalLength'; } - /** @name PalletMembershipError (363) */ + /** @name PalletMembershipError (371) */ interface PalletMembershipError extends Enum { readonly isAlreadyMember: boolean; readonly isNotMember: boolean; @@ -3531,7 +3636,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'AlreadyMember' | 'NotMember' | 'TooManyMembers'; } - /** @name PalletTreasuryProposal (364) */ + /** @name PalletTreasuryProposal (372) */ interface PalletTreasuryProposal extends Struct { readonly proposer: AccountId32; readonly value: u128; @@ -3539,10 +3644,10 @@ declare module '@polkadot/types/lookup' { readonly bond: u128; } - /** @name FrameSupportPalletId (368) */ + /** @name FrameSupportPalletId (376) */ interface FrameSupportPalletId extends U8aFixed {} - /** @name PalletTreasuryError (369) */ + /** @name PalletTreasuryError (377) */ interface PalletTreasuryError extends Enum { readonly isInsufficientProposersBalance: boolean; readonly isInvalidIndex: boolean; @@ -3552,20 +3657,20 @@ declare module '@polkadot/types/lookup' { readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals' | 'InsufficientPermission' | 'ProposalNotApproved'; } - /** @name PalletUtilityError (370) */ + /** @name PalletUtilityError (378) */ interface PalletUtilityError extends Enum { readonly isTooManyCalls: boolean; readonly type: 'TooManyCalls'; } - /** @name PalletVestingReleases (373) */ + /** @name PalletVestingReleases (381) */ interface PalletVestingReleases extends Enum { readonly isV0: boolean; readonly isV1: boolean; readonly type: 'V0' | 'V1'; } - /** @name PalletVestingError (374) */ + /** @name PalletVestingError (382) */ interface PalletVestingError extends Enum { readonly isNotVesting: boolean; readonly isAtMaxVestingSchedules: boolean; @@ -3575,7 +3680,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'NotVesting' | 'AtMaxVestingSchedules' | 'AmountLow' | 'ScheduleIndexOutOfBounds' | 'InvalidScheduleParams'; } - /** @name PalletSchedulerScheduled (377) */ + /** @name PalletSchedulerScheduled (385) */ interface PalletSchedulerScheduled extends Struct { readonly maybeId: Option; readonly priority: u8; @@ -3584,7 +3689,7 @@ declare module '@polkadot/types/lookup' { readonly origin: SpiritnetRuntimeOriginCaller; } - /** @name PalletSchedulerError (379) */ + /** @name PalletSchedulerError (387) */ interface PalletSchedulerError extends Enum { readonly isFailedToSchedule: boolean; readonly isNotFound: boolean; @@ -3594,21 +3699,21 @@ declare module '@polkadot/types/lookup' { readonly type: 'FailedToSchedule' | 'NotFound' | 'TargetBlockNumberInPast' | 'RescheduleNoChange' | 'Named'; } - /** @name PalletProxyProxyDefinition (382) */ + /** @name PalletProxyProxyDefinition (390) */ interface PalletProxyProxyDefinition extends Struct { readonly delegate: AccountId32; readonly proxyType: SpiritnetRuntimeProxyType; readonly delay: u64; } - /** @name PalletProxyAnnouncement (386) */ + /** @name PalletProxyAnnouncement (394) */ interface PalletProxyAnnouncement extends Struct { readonly real: AccountId32; readonly callHash: H256; readonly height: u64; } - /** @name PalletProxyError (388) */ + /** @name PalletProxyError (396) */ interface PalletProxyError extends Enum { readonly isTooMany: boolean; readonly isNotFound: boolean; @@ -3621,7 +3726,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'TooMany' | 'NotFound' | 'NotProxy' | 'Unproxyable' | 'Duplicate' | 'NoPermission' | 'Unannounced' | 'NoSelfProxy'; } - /** @name PalletPreimageRequestStatus (389) */ + /** @name PalletPreimageRequestStatus (397) */ interface PalletPreimageRequestStatus extends Enum { readonly isUnrequested: boolean; readonly asUnrequested: { @@ -3637,7 +3742,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'Unrequested' | 'Requested'; } - /** @name PalletPreimageError (394) */ + /** @name PalletPreimageError (402) */ interface PalletPreimageError extends Enum { readonly isTooBig: boolean; readonly isAlreadyNoted: boolean; @@ -3648,7 +3753,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'TooBig' | 'AlreadyNoted' | 'NotAuthorized' | 'NotNoted' | 'Requested' | 'NotRequested'; } - /** @name PalletTipsOpenTip (396) */ + /** @name PalletTipsOpenTip (405) */ interface PalletTipsOpenTip extends Struct { readonly reason: H256; readonly who: AccountId32; @@ -3659,7 +3764,7 @@ declare module '@polkadot/types/lookup' { readonly findersFee: bool; } - /** @name PalletTipsError (400) */ + /** @name PalletTipsError (409) */ interface PalletTipsError extends Enum { readonly isReasonTooBig: boolean; readonly isAlreadyKnown: boolean; @@ -3670,13 +3775,40 @@ declare module '@polkadot/types/lookup' { readonly type: 'ReasonTooBig' | 'AlreadyKnown' | 'UnknownTip' | 'NotFinder' | 'StillOpen' | 'Premature'; } - /** @name CtypeCtypeEntry (401) */ + /** @name PalletMultisigMultisig (411) */ + interface PalletMultisigMultisig extends Struct { + readonly when: PalletMultisigTimepoint; + readonly deposit: u128; + readonly depositor: AccountId32; + readonly approvals: Vec; + } + + /** @name PalletMultisigError (413) */ + interface PalletMultisigError extends Enum { + readonly isMinimumThreshold: boolean; + readonly isAlreadyApproved: boolean; + readonly isNoApprovalsNeeded: boolean; + readonly isTooFewSignatories: boolean; + readonly isTooManySignatories: boolean; + readonly isSignatoriesOutOfOrder: boolean; + readonly isSenderInSignatories: boolean; + readonly isNotFound: boolean; + readonly isNotOwner: boolean; + readonly isNoTimepoint: boolean; + readonly isWrongTimepoint: boolean; + readonly isUnexpectedTimepoint: boolean; + readonly isMaxWeightTooLow: boolean; + readonly isAlreadyStored: boolean; + readonly type: 'MinimumThreshold' | 'AlreadyApproved' | 'NoApprovalsNeeded' | 'TooFewSignatories' | 'TooManySignatories' | 'SignatoriesOutOfOrder' | 'SenderInSignatories' | 'NotFound' | 'NotOwner' | 'NoTimepoint' | 'WrongTimepoint' | 'UnexpectedTimepoint' | 'MaxWeightTooLow' | 'AlreadyStored'; + } + + /** @name CtypeCtypeEntry (414) */ interface CtypeCtypeEntry extends Struct { readonly creator: AccountId32; readonly createdAt: u64; } - /** @name CtypeError (402) */ + /** @name CtypeError (415) */ interface CtypeError extends Enum { readonly isNotFound: boolean; readonly isAlreadyExists: boolean; @@ -3684,7 +3816,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'NotFound' | 'AlreadyExists' | 'UnableToPayFees'; } - /** @name AttestationAttestationsAttestationDetails (403) */ + /** @name AttestationAttestationsAttestationDetails (416) */ interface AttestationAttestationsAttestationDetails extends Struct { readonly ctypeHash: H256; readonly attester: AccountId32; @@ -3693,13 +3825,13 @@ declare module '@polkadot/types/lookup' { readonly deposit: KiltSupportDeposit; } - /** @name KiltSupportDeposit (404) */ + /** @name KiltSupportDeposit (417) */ interface KiltSupportDeposit extends Struct { readonly owner: AccountId32; readonly amount: u128; } - /** @name AttestationError (406) */ + /** @name AttestationError (419) */ interface AttestationError extends Enum { readonly isAlreadyAttested: boolean; readonly isAlreadyRevoked: boolean; @@ -3710,7 +3842,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'AlreadyAttested' | 'AlreadyRevoked' | 'NotFound' | 'CTypeMismatch' | 'NotAuthorized' | 'MaxDelegatedAttestationsExceeded'; } - /** @name DelegationDelegationHierarchyDelegationNode (407) */ + /** @name DelegationDelegationHierarchyDelegationNode (420) */ interface DelegationDelegationHierarchyDelegationNode extends Struct { readonly hierarchyRootId: H256; readonly parent: Option; @@ -3719,19 +3851,22 @@ declare module '@polkadot/types/lookup' { readonly deposit: KiltSupportDeposit; } - /** @name DelegationDelegationHierarchyDelegationDetails (411) */ + /** @name RuntimeCommonConstantsDelegationMaxChildren (421) */ + type RuntimeCommonConstantsDelegationMaxChildren = Null; + + /** @name DelegationDelegationHierarchyDelegationDetails (422) */ interface DelegationDelegationHierarchyDelegationDetails extends Struct { readonly owner: AccountId32; readonly revoked: bool; readonly permissions: DelegationDelegationHierarchyPermissions; } - /** @name DelegationDelegationHierarchyDelegationHierarchyDetails (412) */ + /** @name DelegationDelegationHierarchyDelegationHierarchyDetails (425) */ interface DelegationDelegationHierarchyDelegationHierarchyDetails extends Struct { readonly ctypeHash: H256; } - /** @name DelegationError (413) */ + /** @name DelegationError (426) */ interface DelegationError extends Enum { readonly isDelegationAlreadyExists: boolean; readonly isInvalidDelegateSignature: boolean; @@ -3758,7 +3893,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'DelegationAlreadyExists' | 'InvalidDelegateSignature' | 'DelegationNotFound' | 'DelegateNotFound' | 'HierarchyAlreadyExists' | 'HierarchyNotFound' | 'MaxSearchDepthReached' | 'NotOwnerOfParentDelegation' | 'NotOwnerOfDelegationHierarchy' | 'ParentDelegationNotFound' | 'ParentDelegationRevoked' | 'UnauthorizedRevocation' | 'UnauthorizedRemoval' | 'UnauthorizedDelegation' | 'AccessDenied' | 'ExceededRevocationBounds' | 'ExceededRemovalBounds' | 'MaxRevocationsTooLarge' | 'MaxRemovalsTooLarge' | 'MaxParentChecksTooLarge' | 'Internal' | 'MaxChildrenExceeded'; } - /** @name DidDidDetails (414) */ + /** @name DidDidDetails (427) */ interface DidDidDetails extends Struct { readonly authenticationKey: H256; readonly keyAgreementKeys: BTreeSet; @@ -3769,13 +3904,13 @@ declare module '@polkadot/types/lookup' { readonly deposit: KiltSupportDeposit; } - /** @name DidDidDetailsDidPublicKeyDetails (417) */ + /** @name DidDidDetailsDidPublicKeyDetails (430) */ interface DidDidDetailsDidPublicKeyDetails extends Struct { readonly key: DidDidDetailsDidPublicKey; readonly blockNumber: u64; } - /** @name DidDidDetailsDidPublicKey (418) */ + /** @name DidDidDetailsDidPublicKey (431) */ interface DidDidDetailsDidPublicKey extends Enum { readonly isPublicVerificationKey: boolean; readonly asPublicVerificationKey: DidDidDetailsDidVerificationKey; @@ -3784,7 +3919,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'PublicVerificationKey' | 'PublicEncryptionKey'; } - /** @name DidError (423) */ + /** @name DidError (436) */ interface DidError extends Enum { readonly isInvalidSignatureFormat: boolean; readonly isInvalidSignature: boolean; @@ -3816,31 +3951,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'InvalidSignatureFormat' | 'InvalidSignature' | 'AlreadyExists' | 'NotFound' | 'VerificationKeyNotFound' | 'InvalidNonce' | 'UnsupportedDidAuthorizationCall' | 'InvalidDidAuthorizationCall' | 'MaxNewKeyAgreementKeysLimitExceeded' | 'MaxPublicKeysExceeded' | 'MaxKeyAgreementKeysExceeded' | 'BadDidOrigin' | 'TransactionExpired' | 'AlreadyDeleted' | 'NotOwnerOfDeposit' | 'UnableToPayFees' | 'MaxNumberOfServicesExceeded' | 'MaxServiceIdLengthExceeded' | 'MaxServiceTypeLengthExceeded' | 'MaxNumberOfTypesPerServiceExceeded' | 'MaxServiceUrlLengthExceeded' | 'MaxNumberOfUrlsPerServiceExceeded' | 'ServiceAlreadyExists' | 'ServiceNotFound' | 'InvalidServiceEncoding' | 'MaxStoredEndpointsCountExceeded' | 'Internal'; } - /** @name PalletDidLookupConnectionRecord (424) */ + /** @name PalletDidLookupConnectionRecord (437) */ interface PalletDidLookupConnectionRecord extends Struct { readonly did: AccountId32; readonly deposit: KiltSupportDeposit; } - /** @name PalletDidLookupMigrationState (426) */ - interface PalletDidLookupMigrationState extends Enum { - readonly isDone: boolean; - readonly isPreUpgrade: boolean; - readonly isUpgrading: boolean; - readonly asUpgrading: PalletDidLookupMigrationsMixedStorageKey; - readonly type: 'Done' | 'PreUpgrade' | 'Upgrading'; - } - - /** @name PalletDidLookupMigrationsMixedStorageKey (427) */ - interface PalletDidLookupMigrationsMixedStorageKey extends Enum { - readonly isV1: boolean; - readonly asV1: AccountId32; - readonly isV2: boolean; - readonly asV2: PalletDidLookupLinkableAccountLinkableAccountId; - readonly type: 'V1' | 'V2'; - } - - /** @name PalletDidLookupError (428) */ + /** @name PalletDidLookupError (439) */ interface PalletDidLookupError extends Enum { readonly isNotFound: boolean; readonly isNotAuthorized: boolean; @@ -3850,14 +3967,14 @@ declare module '@polkadot/types/lookup' { readonly type: 'NotFound' | 'NotAuthorized' | 'OutdatedProof' | 'InsufficientFunds' | 'Migration'; } - /** @name PalletWeb3NamesWeb3NameWeb3NameOwnership (429) */ + /** @name PalletWeb3NamesWeb3NameWeb3NameOwnership (440) */ interface PalletWeb3NamesWeb3NameWeb3NameOwnership extends Struct { readonly owner: AccountId32; readonly claimedAt: u64; readonly deposit: KiltSupportDeposit; } - /** @name PalletWeb3NamesError (430) */ + /** @name PalletWeb3NamesError (441) */ interface PalletWeb3NamesError extends Enum { readonly isInsufficientFunds: boolean; readonly isAlreadyExists: boolean; @@ -3874,7 +3991,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'InsufficientFunds' | 'AlreadyExists' | 'NotFound' | 'OwnerAlreadyExists' | 'OwnerNotFound' | 'Banned' | 'NotBanned' | 'AlreadyBanned' | 'NotAuthorized' | 'TooShort' | 'TooLong' | 'InvalidCharacter'; } - /** @name PublicCredentialsCredentialsCredentialEntry (432) */ + /** @name PublicCredentialsCredentialsCredentialEntry (443) */ interface PublicCredentialsCredentialsCredentialEntry extends Struct { readonly ctypeHash: H256; readonly attester: AccountId32; @@ -3884,7 +4001,7 @@ declare module '@polkadot/types/lookup' { readonly authorizationId: Option; } - /** @name PublicCredentialsError (433) */ + /** @name PublicCredentialsError (444) */ interface PublicCredentialsError extends Enum { readonly isAlreadyAttested: boolean; readonly isNotFound: boolean; @@ -3895,13 +4012,13 @@ declare module '@polkadot/types/lookup' { readonly type: 'AlreadyAttested' | 'NotFound' | 'UnableToPayFees' | 'InvalidInput' | 'NotAuthorized' | 'Internal'; } - /** @name PolkadotPrimitivesV2UpgradeRestriction (435) */ + /** @name PolkadotPrimitivesV2UpgradeRestriction (446) */ interface PolkadotPrimitivesV2UpgradeRestriction extends Enum { readonly isPresent: boolean; readonly type: 'Present'; } - /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (436) */ + /** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (447) */ interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct { readonly dmqMqcHead: H256; readonly relayDispatchQueueSize: ITuple<[u32, u32]>; @@ -3909,7 +4026,7 @@ declare module '@polkadot/types/lookup' { readonly egressChannels: Vec>; } - /** @name PolkadotPrimitivesV2AbridgedHrmpChannel (440) */ + /** @name PolkadotPrimitivesV2AbridgedHrmpChannel (451) */ interface PolkadotPrimitivesV2AbridgedHrmpChannel extends Struct { readonly maxCapacity: u32; readonly maxTotalSize: u32; @@ -3919,7 +4036,7 @@ declare module '@polkadot/types/lookup' { readonly mqcHead: Option; } - /** @name PolkadotPrimitivesV2AbridgedHostConfiguration (441) */ + /** @name PolkadotPrimitivesV2AbridgedHostConfiguration (452) */ interface PolkadotPrimitivesV2AbridgedHostConfiguration extends Struct { readonly maxCodeSize: u32; readonly maxHeadDataSize: u32; @@ -3932,13 +4049,19 @@ declare module '@polkadot/types/lookup' { readonly validationUpgradeDelay: u32; } - /** @name PolkadotCorePrimitivesOutboundHrmpMessage (447) */ + /** @name PolkadotCorePrimitivesOutboundHrmpMessage (458) */ interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct { readonly recipient: u32; readonly data: Bytes; } - /** @name CumulusPalletParachainSystemError (448) */ + /** @name CumulusPalletParachainSystemCodeUpgradeAuthorization (459) */ + interface CumulusPalletParachainSystemCodeUpgradeAuthorization extends Struct { + readonly codeHash: H256; + readonly checkVersion: bool; + } + + /** @name CumulusPalletParachainSystemError (460) */ interface CumulusPalletParachainSystemError extends Enum { readonly isOverlappingUpgrades: boolean; readonly isProhibitedByPolkadot: boolean; @@ -3951,21 +4074,21 @@ declare module '@polkadot/types/lookup' { readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized'; } - /** @name CumulusPalletXcmpQueueInboundChannelDetails (450) */ + /** @name CumulusPalletXcmpQueueInboundChannelDetails (462) */ interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct { readonly sender: u32; readonly state: CumulusPalletXcmpQueueInboundState; readonly messageMetadata: Vec>; } - /** @name CumulusPalletXcmpQueueInboundState (451) */ + /** @name CumulusPalletXcmpQueueInboundState (463) */ interface CumulusPalletXcmpQueueInboundState extends Enum { readonly isOk: boolean; readonly isSuspended: boolean; readonly type: 'Ok' | 'Suspended'; } - /** @name PolkadotParachainPrimitivesXcmpMessageFormat (454) */ + /** @name PolkadotParachainPrimitivesXcmpMessageFormat (466) */ interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum { readonly isConcatenatedVersionedXcm: boolean; readonly isConcatenatedEncodedBlob: boolean; @@ -3973,7 +4096,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals'; } - /** @name CumulusPalletXcmpQueueOutboundChannelDetails (457) */ + /** @name CumulusPalletXcmpQueueOutboundChannelDetails (469) */ interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct { readonly recipient: u32; readonly state: CumulusPalletXcmpQueueOutboundState; @@ -3982,14 +4105,14 @@ declare module '@polkadot/types/lookup' { readonly lastIndex: u16; } - /** @name CumulusPalletXcmpQueueOutboundState (458) */ + /** @name CumulusPalletXcmpQueueOutboundState (470) */ interface CumulusPalletXcmpQueueOutboundState extends Enum { readonly isOk: boolean; readonly isSuspended: boolean; readonly type: 'Ok' | 'Suspended'; } - /** @name CumulusPalletXcmpQueueQueueConfigData (460) */ + /** @name CumulusPalletXcmpQueueQueueConfigData (472) */ interface CumulusPalletXcmpQueueQueueConfigData extends Struct { readonly suspendThreshold: u32; readonly dropThreshold: u32; @@ -3999,7 +4122,7 @@ declare module '@polkadot/types/lookup' { readonly xcmpMaxIndividualWeight: SpWeightsWeightV2Weight; } - /** @name CumulusPalletXcmpQueueError (462) */ + /** @name CumulusPalletXcmpQueueError (474) */ interface CumulusPalletXcmpQueueError extends Enum { readonly isFailedToSend: boolean; readonly isBadXcmOrigin: boolean; @@ -4009,7 +4132,7 @@ declare module '@polkadot/types/lookup' { readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit'; } - /** @name PalletXcmError (463) */ + /** @name PalletXcmError (475) */ interface PalletXcmError extends Enum { readonly isUnreachable: boolean; readonly isSendFailure: boolean; @@ -4034,47 +4157,47 @@ declare module '@polkadot/types/lookup' { readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed' | 'InvalidAsset' | 'LowBalance' | 'TooManyLocks' | 'AccountNotSovereign' | 'FeesNotMet' | 'LockNotFound' | 'InUse'; } - /** @name CumulusPalletXcmError (464) */ + /** @name CumulusPalletXcmError (476) */ type CumulusPalletXcmError = Null; - /** @name CumulusPalletDmpQueueConfigData (465) */ + /** @name CumulusPalletDmpQueueConfigData (477) */ interface CumulusPalletDmpQueueConfigData extends Struct { readonly maxIndividual: SpWeightsWeightV2Weight; } - /** @name CumulusPalletDmpQueuePageIndexData (466) */ + /** @name CumulusPalletDmpQueuePageIndexData (478) */ interface CumulusPalletDmpQueuePageIndexData extends Struct { readonly beginUsed: u32; readonly endUsed: u32; readonly overweightCount: u64; } - /** @name CumulusPalletDmpQueueError (469) */ + /** @name CumulusPalletDmpQueueError (481) */ interface CumulusPalletDmpQueueError extends Enum { readonly isUnknown: boolean; readonly isOverLimit: boolean; readonly type: 'Unknown' | 'OverLimit'; } - /** @name FrameSystemExtensionsCheckNonZeroSender (472) */ + /** @name FrameSystemExtensionsCheckNonZeroSender (484) */ type FrameSystemExtensionsCheckNonZeroSender = Null; - /** @name FrameSystemExtensionsCheckSpecVersion (473) */ + /** @name FrameSystemExtensionsCheckSpecVersion (485) */ type FrameSystemExtensionsCheckSpecVersion = Null; - /** @name FrameSystemExtensionsCheckTxVersion (474) */ + /** @name FrameSystemExtensionsCheckTxVersion (486) */ type FrameSystemExtensionsCheckTxVersion = Null; - /** @name FrameSystemExtensionsCheckGenesis (475) */ + /** @name FrameSystemExtensionsCheckGenesis (487) */ type FrameSystemExtensionsCheckGenesis = Null; - /** @name FrameSystemExtensionsCheckNonce (478) */ + /** @name FrameSystemExtensionsCheckNonce (490) */ interface FrameSystemExtensionsCheckNonce extends Compact {} - /** @name FrameSystemExtensionsCheckWeight (479) */ + /** @name FrameSystemExtensionsCheckWeight (491) */ type FrameSystemExtensionsCheckWeight = Null; - /** @name PalletTransactionPaymentChargeTransactionPayment (480) */ + /** @name PalletTransactionPaymentChargeTransactionPayment (492) */ interface PalletTransactionPaymentChargeTransactionPayment extends Compact {} } // declare module diff --git a/packages/chain-helpers/package.json b/packages/chain-helpers/package.json index 551adcb1f..780ecdcb0 100644 --- a/packages/chain-helpers/package.json +++ b/packages/chain-helpers/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/chain-helpers", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", @@ -30,7 +30,6 @@ "bugs": "https://github.com/KILTprotocol/sdk-js/issues", "homepage": "https://github.com/KILTprotocol/sdk-js#readme", "devDependencies": { - "@kiltprotocol/testing": "workspace:*", "@polkadot/keyring": "^12.0.0", "rimraf": "^3.0.2", "typescript": "^4.8.3" diff --git a/packages/chain-helpers/src/blockchain/Blockchain.spec.ts b/packages/chain-helpers/src/blockchain/Blockchain.spec.ts index ebe9d5fc1..95a197f5e 100644 --- a/packages/chain-helpers/src/blockchain/Blockchain.spec.ts +++ b/packages/chain-helpers/src/blockchain/Blockchain.spec.ts @@ -5,15 +5,11 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/blockchain - */ - -import { ApiMocks } from '@kiltprotocol/testing' import { ConfigService } from '@kiltprotocol/config' import type { KeyringPair } from '@kiltprotocol/types' import { Crypto, SDKErrors } from '@kiltprotocol/utils' +import { ApiMocks } from '../../../../tests/testUtils' import { IS_FINALIZED, IS_IN_BLOCK, diff --git a/packages/chain-helpers/src/blockchain/SubscriptionPromise.spec.ts b/packages/chain-helpers/src/blockchain/SubscriptionPromise.spec.ts index 3938e17e8..b78ad6e9a 100644 --- a/packages/chain-helpers/src/blockchain/SubscriptionPromise.spec.ts +++ b/packages/chain-helpers/src/blockchain/SubscriptionPromise.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/util - */ - import { SDKErrors } from '@kiltprotocol/utils' import { makeSubscriptionPromise } from './SubscriptionPromise' diff --git a/packages/chain-helpers/src/errorhandling/ErrorHandler.spec.ts b/packages/chain-helpers/src/errorhandling/ErrorHandler.spec.ts index bca610171..e9b27395c 100644 --- a/packages/chain-helpers/src/errorhandling/ErrorHandler.spec.ts +++ b/packages/chain-helpers/src/errorhandling/ErrorHandler.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/errorhandling - */ - import type { ISubmittableResult } from '@kiltprotocol/types' import type { EventRecord } from '@polkadot/types/interfaces' import { ErrorHandler } from './index' diff --git a/packages/config/package.json b/packages/config/package.json index 36cf3619d..5ae6f8ff2 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/config", - "version": "0.33.1", + "version": "0.34.0", "description": "", "type": "commonjs", "main": "./lib/index.js", diff --git a/packages/config/src/ConfigService.spec.ts b/packages/config/src/ConfigService.spec.ts index f5069556b..bb97365b6 100644 --- a/packages/config/src/ConfigService.spec.ts +++ b/packages/config/src/ConfigService.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/ConfigService - */ - /* eslint-disable dot-notation */ import { ApiPromise, WsProvider } from '@polkadot/api' import { LogLevel, Logger } from 'typescript-logging' @@ -24,7 +20,7 @@ describe('Log Configuration', () => { it('Tests the default Log Level', () => { if (process.env.DEBUG === 'true') { expect(testLogger.getLogLevel()).toEqual(LogLevel.Debug) - } else expect(testLogger.getLogLevel()).toEqual(LogLevel.Error) + } else expect(testLogger.getLogLevel()).toEqual(LogLevel.Warn) }) it('modifies the Log Level of all Loggers to the desired Level', () => { @@ -44,7 +40,7 @@ describe('Log Configuration', () => { describe('Configuration Service', () => { it('has configuration Object with default values', () => { - expect(ConfigService.get('logLevel')).toEqual(LogLevel.Error) + expect(ConfigService.get('logLevel')).toEqual(LogLevel.Warn) expect(() => ConfigService.get('api')).toThrowErrorMatchingInlineSnapshot( `"The blockchain API is not set. Did you forget to call \`Kilt.connect(…)\` or \`Kilt.init(…)\`?"` ) diff --git a/packages/config/src/ConfigService.ts b/packages/config/src/ConfigService.ts index d9e68b4a8..38d22fc3c 100644 --- a/packages/config/src/ConfigService.ts +++ b/packages/config/src/ConfigService.ts @@ -24,12 +24,17 @@ import { } from 'typescript-logging' import type { SubscriptionPromise } from '@kiltprotocol/types' -const DEFAULT_DEBUG_LEVEL = - typeof process !== 'undefined' && - process.env?.DEBUG && - process.env.DEBUG === 'true' - ? LogLevel.Debug - : LogLevel.Error +const DEFAULT_DEBUG_LEVEL = (() => { + if (typeof process !== 'undefined') { + if (process.env.DEBUG === 'true') { + return LogLevel.Debug + } + if (process.env.NODE_ENV && process.env.NODE_ENV !== 'production') { + return LogLevel.Warn + } + } + return LogLevel.Error +})() export type configOpts = { api: ApiPromise diff --git a/packages/core/package.json b/packages/core/package.json index fdb8a976d..ef755ec9a 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/core", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", @@ -30,7 +30,6 @@ "bugs": "https://github.com/KILTprotocol/sdk-js/issues", "homepage": "https://github.com/KILTprotocol/sdk-js#readme", "devDependencies": { - "@kiltprotocol/testing": "workspace:*", "@types/uuid": "^8.0.0", "rimraf": "^3.0.2", "testcontainers": "^9.0.0", diff --git a/packages/core/src/attestation/Attestation.spec.ts b/packages/core/src/attestation/Attestation.spec.ts index 6b17c7fcd..63906f75c 100644 --- a/packages/core/src/attestation/Attestation.spec.ts +++ b/packages/core/src/attestation/Attestation.spec.ts @@ -5,27 +5,23 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/attestation - */ - /* eslint-disable @typescript-eslint/ban-ts-comment */ +import { ConfigService } from '@kiltprotocol/config' import type { - IAttestation, + CTypeHash, DidUri, + IAttestation, ICType, IClaim, ICredential, - CTypeHash, } from '@kiltprotocol/types' import { SDKErrors } from '@kiltprotocol/utils' -import { ApiMocks } from '@kiltprotocol/testing' -import { ConfigService } from '@kiltprotocol/config' +import { ApiMocks } from '../../../../tests/testUtils' import * as Claim from '../claim' -import * as CType from '../ctype' import * as Credential from '../credential' +import * as CType from '../ctype' import * as Attestation from './Attestation' let mockedApi: any diff --git a/packages/core/src/balance/Balance.utils.spec.ts b/packages/core/src/balance/Balance.utils.spec.ts index 1715f72d9..aad9d30e4 100644 --- a/packages/core/src/balance/Balance.utils.spec.ts +++ b/packages/core/src/balance/Balance.utils.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/balance - */ - import { BN } from '@polkadot/util' import type { BalanceNumber, @@ -261,7 +257,7 @@ describe('toFemtoKilt', () => { expect(() => toFemtoKilt('-0.0000001', 'nano').toString() ).toThrowErrorMatchingInlineSnapshot( - `"Too many decimal places: input with unit \\"nano\\" and value \\"-0.0000001\\" exceeds the 6 possible decimal places by 1"` + `"Too many decimal places: input with unit "nano" and value "-0.0000001" exceeds the 6 possible decimal places by 1"` ) expect(toFemtoKilt('-0').toString()).toEqual(new BN('0').toString()) expect(toFemtoKilt('-0.000001', 'nano').toString()).toEqual( diff --git a/packages/core/src/claim/Claim.spec.ts b/packages/core/src/claim/Claim.spec.ts index c13f14e6c..c82d13ef7 100644 --- a/packages/core/src/claim/Claim.spec.ts +++ b/packages/core/src/claim/Claim.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/claim - */ - import { SDKErrors } from '@kiltprotocol/utils' import type { IClaim, ICType, DidUri } from '@kiltprotocol/types' import * as CType from '../ctype' @@ -31,11 +27,11 @@ describe('jsonld', () => { // this is what a kilt claim looks like when expressed in expanded JSON-LD const jsonld = Claim.toJsonLD(claim, true) expect(jsonld).toMatchInlineSnapshot(` - Object { - "https://www.w3.org/2018/credentials#credentialSchema": Object { + { + "https://www.w3.org/2018/credentials#credentialSchema": { "@id": "kilt:ctype:0x90364302f3b6ccfa50f3d384ec0ab6369711e13298ba4a5316d7e2addd5647b2", }, - "https://www.w3.org/2018/credentials#credentialSubject": Object { + "https://www.w3.org/2018/credentials#credentialSubject": { "@id": "did:kilt:4r1WkS3t8rbCb11H8t3tJvGVCynwDXSUBiuGB6sLRHzCLCjs", "kilt:ctype:0x90364302f3b6ccfa50f3d384ec0ab6369711e13298ba4a5316d7e2addd5647b2#address": "homestreet, home", "kilt:ctype:0x90364302f3b6ccfa50f3d384ec0ab6369711e13298ba4a5316d7e2addd5647b2#name": "John", @@ -50,15 +46,15 @@ describe('jsonld', () => { // this is what a kilt claim looks like when expressed in compact JSON-LD const jsonld = Claim.toJsonLD(claim, false) expect(jsonld).toMatchInlineSnapshot(` - Object { - "@context": Object { + { + "@context": { "@vocab": "https://www.w3.org/2018/credentials#", }, - "credentialSchema": Object { + "credentialSchema": { "@id": "kilt:ctype:0x90364302f3b6ccfa50f3d384ec0ab6369711e13298ba4a5316d7e2addd5647b2", }, - "credentialSubject": Object { - "@context": Object { + "credentialSubject": { + "@context": { "@vocab": "kilt:ctype:0x90364302f3b6ccfa50f3d384ec0ab6369711e13298ba4a5316d7e2addd5647b2#", }, "@id": "did:kilt:4r1WkS3t8rbCb11H8t3tJvGVCynwDXSUBiuGB6sLRHzCLCjs", @@ -93,7 +89,7 @@ describe('jsonld', () => { }) expect(hashed.nonceMap).toEqual(nonceMap) expect(hashed.hashes).toMatchInlineSnapshot(` - Array [ + [ "0x3c2ae125a0baf4ed64a30b7ad012810b4622628a2eb5ad32e769e6a1d356d58d", "0x69aae66efd954c3712e91dd2761dab08ea941e6516e7cf6ddf6e3b90ddc5bdf3", "0x8d5736197583931c4e4d3dce0503596760f7a13e8187cc440b7de1edd4370d6a", diff --git a/packages/core/src/claim/Claim.ts b/packages/core/src/claim/Claim.ts index 58285a236..17aa1da54 100644 --- a/packages/core/src/claim/Claim.ts +++ b/packages/core/src/claim/Claim.ts @@ -18,8 +18,13 @@ */ import { hexToBn } from '@polkadot/util' -import type { HexString } from '@polkadot/util/types' -import type { DidUri, IClaim, ICType, PartialClaim } from '@kiltprotocol/types' +import type { + DidUri, + IClaim, + ICType, + PartialClaim, + HexString, +} from '@kiltprotocol/types' import { Crypto, DataUtils, SDKErrors } from '@kiltprotocol/utils' import * as Did from '@kiltprotocol/did' import * as CType from '../ctype/index.js' diff --git a/packages/core/src/credential/Credential.spec.ts b/packages/core/src/credential/Credential.spec.ts index 2d303ce80..ffa25284f 100644 --- a/packages/core/src/credential/Credential.spec.ts +++ b/packages/core/src/credential/Credential.spec.ts @@ -5,12 +5,12 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/credential - */ - /* eslint-disable dot-notation */ +import { randomAsHex } from '@polkadot/util-crypto' + +import { ConfigService } from '@kiltprotocol/config' +import * as Did from '@kiltprotocol/did' import type { DidDocument, DidResourceUri, @@ -26,20 +26,18 @@ import type { SignCallback, } from '@kiltprotocol/types' import { Crypto, SDKErrors, UUID } from '@kiltprotocol/utils' -import * as Did from '@kiltprotocol/did' + import { ApiMocks, createLocalDemoFullDidFromKeypair, KeyTool, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import { ConfigService } from '@kiltprotocol/config' -import { randomAsHex } from '@polkadot/util-crypto' +} from '../../../../tests/testUtils' import * as Attestation from '../attestation' import * as Claim from '../claim' import * as CType from '../ctype' -import * as Credential from './Credential' import { init } from '../kilt' +import * as Credential from './Credential' const testCType = CType.fromProperties('Credential', { a: { type: 'string' }, diff --git a/packages/core/src/ctype/CType.chain.ts b/packages/core/src/ctype/CType.chain.ts index e6712fc64..2a2b57ac7 100644 --- a/packages/core/src/ctype/CType.chain.ts +++ b/packages/core/src/ctype/CType.chain.ts @@ -29,11 +29,11 @@ import { flattenCalls, isBatch, retrieveExtrinsicFromBlock } from '../utils.js' /** * Encodes the provided CType for use in `api.tx.ctype.add()`. * - * @param ctype The CType to write on the blockchain. + * @param cType The CType to write on the blockchain. * @returns Encoded CType. */ -export function toChain(ctype: ICType): string { - return serializeForHash(ctype) +export function toChain(cType: ICType): string { + return serializeForHash(cType) } /** @@ -83,7 +83,7 @@ export interface CTypeChainDetails { createdAt: BN } -export type ICTypeDetails = ICType & CTypeChainDetails +export type ICTypeDetails = { cType: ICType } & CTypeChainDetails /** * Decodes the CType details returned by `api.query.ctype.ctypes()`. @@ -226,8 +226,10 @@ export async function fetchFromChain( const [ctypeInput, creator] = lastRightCTypeCreationCall return { - ...ctypeInput, - $id: cTypeId, + cType: { + ...ctypeInput, + $id: cTypeId, + }, creator, createdAt, } diff --git a/packages/core/src/ctype/CType.metadata.spec.ts b/packages/core/src/ctype/CType.metadata.spec.ts index ad1cbdef1..9fee50fc8 100644 --- a/packages/core/src/ctype/CType.metadata.spec.ts +++ b/packages/core/src/ctype/CType.metadata.spec.ts @@ -5,22 +5,18 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/ctype - */ - import { SDKErrors } from '@kiltprotocol/utils' import type { ICType, ICTypeMetadata } from '@kiltprotocol/types' import * as CType from './CType' import { MetadataModel } from './CType.schemas' describe('CType', () => { - let ctype: ICType + let cType: ICType let ctypeMetadata: ICTypeMetadata['metadata'] let metadata: ICTypeMetadata beforeAll(async () => { - ctype = CType.fromProperties('CtypeMetaData', { + cType = CType.fromProperties('CtypeMetaData', { 'first-property': { type: 'integer' }, 'second-property': { type: 'string' }, }) @@ -36,11 +32,11 @@ describe('CType', () => { metadata = { metadata: ctypeMetadata, - cTypeId: ctype.$id, + cTypeId: cType.$id, } }) - it('verifies the metadata of a ctype', async () => { + it('verifies the metadata of a cType', async () => { expect(() => CType.verifyCTypeMetadata(metadata)).not.toThrow() expect(metadata.cTypeId).not.toHaveLength(0) expect(() => @@ -50,13 +46,13 @@ describe('CType', () => { CType.verifyObjectAgainstSchema(ctypeMetadata, MetadataModel) ).toThrow() }) - it('checks if the metadata matches corresponding ctype hash', async () => { - expect(metadata.cTypeId).toEqual(ctype.$id) + it('checks if the metadata matches corresponding cType hash', async () => { + expect(metadata.cTypeId).toEqual(cType.$id) }) it('throws error when supplied malformed constructor input', () => { const faultyMetadata: ICTypeMetadata = { metadata: ctypeMetadata, - cTypeId: ctype.$id, + cTypeId: cType.$id, } // @ts-expect-error delete faultyMetadata.metadata.properties diff --git a/packages/core/src/ctype/CType.spec.ts b/packages/core/src/ctype/CType.spec.ts index 9c4eb4e6f..50fa5b9ce 100644 --- a/packages/core/src/ctype/CType.spec.ts +++ b/packages/core/src/ctype/CType.spec.ts @@ -5,14 +5,11 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/ctype - */ - -import { SDKErrors } from '@kiltprotocol/utils' import { ConfigService } from '@kiltprotocol/config' -import { ApiMocks } from '@kiltprotocol/testing' import type { ICType } from '@kiltprotocol/types' +import { SDKErrors } from '@kiltprotocol/utils' + +import { ApiMocks } from '../../../../tests/testUtils' import * as Claim from '../claim' import * as CType from './CType.js' import { CTypeModel, CTypeModelDraft01 } from './CType.schemas' @@ -441,13 +438,13 @@ describe.each([[cTypeDraft01], [cTypeV1]])( ) describe('CType registration verification', () => { - const ctype = CType.fromProperties('CtypeModel 2', { + const cType = CType.fromProperties('CtypeModel 2', { name: { type: 'string' }, }) describe('when CType is not registered', () => { it('does not verify registration when not registered', async () => { - await expect(CType.verifyStored(ctype)).rejects.toThrow() + await expect(CType.verifyStored(cType)).rejects.toThrow() }) }) @@ -457,15 +454,15 @@ describe('CType registration verification', () => { }) it('verifies registration when owner not set', async () => { - await expect(CType.verifyStored(ctype)).resolves.not.toThrow() + await expect(CType.verifyStored(cType)).resolves.not.toThrow() }) it('verifies registration when owner matches', async () => { - await expect(CType.verifyStored(ctype)).resolves.not.toThrow() + await expect(CType.verifyStored(cType)).resolves.not.toThrow() }) it('verifies registration when owner does not match', async () => { - await expect(CType.verifyStored(ctype)).resolves.not.toThrow() + await expect(CType.verifyStored(cType)).resolves.not.toThrow() }) }) }) diff --git a/packages/core/src/ctype/CType.ts b/packages/core/src/ctype/CType.ts index 6c061809d..c6e080b58 100644 --- a/packages/core/src/ctype/CType.ts +++ b/packages/core/src/ctype/CType.ts @@ -30,6 +30,27 @@ import { CTypeModelV1, } from './CType.schemas.js' +let notifyDeprecated: (cTypeId: ICType['$id']) => void = () => { + // do nothing +} +if ( + typeof process !== 'undefined' && + process.env?.NODE_ENV && + process.env.NODE_ENV !== 'production' +) { + const logger = ConfigService.LoggingFactory.getLogger('deprecated') + const alreadyNotified = new Set() + notifyDeprecated = (cTypeId) => { + if (alreadyNotified.has(cTypeId)) { + return + } + logger.warn( + `Your application has processed the CType '${cTypeId}' which follows the meta schema '${CTypeModelDraft01.$id}'. This class of schemas has known issues that can result in unexpected properties being present in a credential. Consider switching to a CType based on meta schema ${CTypeModelV1.$id} which fixes this issue.` + ) + alreadyNotified.add(cTypeId) + } +} + /** * Utility for (re)creating CType hashes. Sorts the schema and strips the $id property (which contains the CType hash) before stringifying. * @@ -136,17 +157,20 @@ export function verifyClaimAgainstSchema( messages?: string[] ): void { verifyObjectAgainstSchema(schema, CTypeModel, messages) + if (schema.$schema === CTypeModelDraft01.$id) { + notifyDeprecated(schema.$id) + } verifyObjectAgainstSchema(claimContents, schema, messages) } /** * Checks on the KILT blockchain whether a CType is registered. * - * @param ctype CType data. + * @param cType CType data. */ -export async function verifyStored(ctype: ICType): Promise { +export async function verifyStored(cType: ICType): Promise { const api = ConfigService.get('api') - const hash = idToHash(ctype.$id) + const hash = idToHash(cType.$id) const encoded = await api.query.ctype.ctypes(hash) if (encoded.isNone) throw new SDKErrors.CTypeHashMissingError( @@ -162,6 +186,9 @@ export async function verifyStored(ctype: ICType): Promise { */ export function verifyDataStructure(input: ICType): void { verifyObjectAgainstSchema(input, CTypeModel) + if (input.$schema === CTypeModelDraft01.$id) { + notifyDeprecated(input.$id) + } const idFromSchema = getIdForSchema(input) if (idFromSchema !== input.$id) { throw new SDKErrors.CTypeIdMismatchError(idFromSchema, input.$id) @@ -223,9 +250,9 @@ export function fromProperties( if (version === 'V1') { schema.additionalProperties = false } - const ctype = jsonabc.sortObj({ ...schema, $id: getIdForSchema(schema) }) - verifyDataStructure(ctype) - return ctype + const cType = jsonabc.sortObj({ ...schema, $id: getIdForSchema(schema) }) + verifyDataStructure(cType) + return cType } /** diff --git a/packages/core/src/ctype/Ctype.nested.spec.ts b/packages/core/src/ctype/Ctype.nested.spec.ts index 27639e9ef..95903447d 100644 --- a/packages/core/src/ctype/Ctype.nested.spec.ts +++ b/packages/core/src/ctype/Ctype.nested.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/ctype - */ - import type { ICType, IClaim, IClaimContents } from '@kiltprotocol/types' import { SDKErrors } from '@kiltprotocol/utils' import * as CType from './CType' diff --git a/packages/core/src/delegation/DelegationNode.spec.ts b/packages/core/src/delegation/DelegationNode.spec.ts index e20ef60f9..dbf3a84e8 100644 --- a/packages/core/src/delegation/DelegationNode.spec.ts +++ b/packages/core/src/delegation/DelegationNode.spec.ts @@ -5,23 +5,21 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/delegation - */ +import { encodeAddress } from '@polkadot/keyring' +import { ConfigService } from '@kiltprotocol/config' import { - IDelegationNode, + CTypeHash, + DidUri, IDelegationHierarchyDetails, + IDelegationNode, Permission, - DidUri, - CTypeHash, } from '@kiltprotocol/types' -import { encodeAddress } from '@polkadot/keyring' -import { ApiMocks } from '@kiltprotocol/testing' -import { ConfigService } from '@kiltprotocol/config' import { Crypto, SDKErrors, ss58Format } from '@kiltprotocol/utils' + +import { ApiMocks } from '../../../../tests/testUtils' import { DelegationNode } from './DelegationNode' -import { permissionsAsBitset, errorCheck } from './DelegationNode.utils' +import { errorCheck, permissionsAsBitset } from './DelegationNode.utils' let mockedApi: any @@ -315,7 +313,7 @@ describe('DelegationNode', () => { expect(await nodes[hashList[0]].subtreeNodeCount()).toStrictEqual(100) }) - it('counts all subnodes in deeply nested structure (1000)', async () => { + it.skip('counts all subnodes in deeply nested structure (1000)', async () => { const lastIndex = 1000 nodes = hashList.slice(0, lastIndex + 1).reduce( (previous, current, index) => ({ @@ -335,7 +333,7 @@ describe('DelegationNode', () => { expect(await nodes[hashList[0]].subtreeNodeCount()).toStrictEqual(1000) }) - it('counts all subnodes in deeply nested structure (10000)', async () => { + it.skip('counts all subnodes in deeply nested structure (10000)', async () => { const lastIndex = 10000 nodes = hashList.slice(0, lastIndex + 1).reduce( (previous, current, index) => ({ diff --git a/packages/core/src/publicCredential/PublicCredential.chain.ts b/packages/core/src/publicCredential/PublicCredential.chain.ts index 76653e0e4..3ffa1f196 100644 --- a/packages/core/src/publicCredential/PublicCredential.chain.ts +++ b/packages/core/src/publicCredential/PublicCredential.chain.ts @@ -12,6 +12,7 @@ import type { IPublicCredentialInput, IPublicCredential, DidUri, + HexString, } from '@kiltprotocol/types' import type { ApiPromise } from '@polkadot/api' import type { GenericCall, Option } from '@polkadot/types' @@ -22,7 +23,6 @@ import type { PublicCredentialsCredentialsCredentialEntry, } from '@kiltprotocol/augment-api' -import { HexString } from '@polkadot/util/types' import { ConfigService } from '@kiltprotocol/config' import { fromChain as didFromChain } from '@kiltprotocol/did' import { validateUri } from '@kiltprotocol/asset-did' diff --git a/packages/core/src/publicCredential/PublicCredential.spec.ts b/packages/core/src/publicCredential/PublicCredential.spec.ts index 1c3b7dde4..dca0722c6 100644 --- a/packages/core/src/publicCredential/PublicCredential.spec.ts +++ b/packages/core/src/publicCredential/PublicCredential.spec.ts @@ -5,10 +5,10 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/publicCredential - */ +import { BN } from '@polkadot/util' +import { ConfigService } from '@kiltprotocol/config' +import * as Did from '@kiltprotocol/did' import type { AssetDidUri, DidUri, @@ -16,12 +16,9 @@ import type { IClaimContents, IPublicCredential, } from '@kiltprotocol/types' - -import { BN } from '@polkadot/util' -import { ApiMocks } from '@kiltprotocol/testing' import { Crypto } from '@kiltprotocol/utils' -import { ConfigService } from '@kiltprotocol/config' -import * as Did from '@kiltprotocol/did' + +import { ApiMocks } from '../../../../tests/testUtils' import * as CType from '../ctype' import * as PublicCredential from '../publicCredential' import { verifyAgainstCType } from './PublicCredential' diff --git a/packages/core/src/publicCredential/PublicCredential.ts b/packages/core/src/publicCredential/PublicCredential.ts index f28a865db..51e39482c 100644 --- a/packages/core/src/publicCredential/PublicCredential.ts +++ b/packages/core/src/publicCredential/PublicCredential.ts @@ -5,10 +5,10 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { HexString } from '@polkadot/util/types' import type { AccountId } from '@polkadot/types/interfaces' import type { PublicCredentialsCredentialsCredential } from '@kiltprotocol/augment-api' import type { + HexString, DidUri, IAssetClaim, ICType, diff --git a/packages/core/src/quote/Quote.spec.ts b/packages/core/src/quote/Quote.spec.ts index ab1f4ec5c..8c5701a71 100644 --- a/packages/core/src/quote/Quote.spec.ts +++ b/packages/core/src/quote/Quote.spec.ts @@ -5,30 +5,27 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/quote - */ - +import * as Did from '@kiltprotocol/did' import type { DidDocument, + DidResourceUri, + ICType, IClaim, ICostBreakdown, - ICType, + ICredential, IQuote, IQuoteAgreement, IQuoteAttesterSigned, - ICredential, - DidResourceUri, ResolvedDidKey, } from '@kiltprotocol/types' import { Crypto, SDKErrors } from '@kiltprotocol/utils' -import * as Did from '@kiltprotocol/did' + import { createLocalDemoFullDidFromKeypair, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import * as CType from '../ctype' +} from '../../../../tests/testUtils' import * as Credential from '../credential' +import * as CType from '../ctype' import * as Quote from './Quote' import { QuoteSchema } from './QuoteSchema' diff --git a/packages/did/package.json b/packages/did/package.json index 13ddcae72..bcbf9d794 100644 --- a/packages/did/package.json +++ b/packages/did/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/did", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", @@ -30,7 +30,6 @@ "bugs": "https://github.com/KILTprotocol/sdk-js/issues", "homepage": "https://github.com/KILTprotocol/sdk-js#readme", "devDependencies": { - "@kiltprotocol/testing": "workspace:*", "rimraf": "^3.0.2", "typescript": "^4.8.3" }, diff --git a/packages/did/src/Did.chain.spec.ts b/packages/did/src/Did.chain.spec.ts index b66abac03..2efc9368d 100644 --- a/packages/did/src/Did.chain.spec.ts +++ b/packages/did/src/Did.chain.spec.ts @@ -5,13 +5,9 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/did - */ - import { ConfigService } from '@kiltprotocol/config' -import { ApiMocks } from '@kiltprotocol/testing' +import { ApiMocks } from '../../../tests/testUtils' import { serviceToChain } from './Did.chain' let api: any diff --git a/packages/did/src/Did.chain.ts b/packages/did/src/Did.chain.ts index 3880c141f..09daf45e4 100644 --- a/packages/did/src/Did.chain.ts +++ b/packages/did/src/Did.chain.ts @@ -8,7 +8,6 @@ import type { Option } from '@polkadot/types' import type { AccountId32, Extrinsic, Hash } from '@polkadot/types/interfaces' import type { AnyNumber } from '@polkadot/types/types' -import { BN } from '@polkadot/util' import type { Deposit, @@ -27,6 +26,7 @@ import type { SubmittableExtrinsic, UriFragment, VerificationKeyRelationship, + BN, } from '@kiltprotocol/types' import { verificationKeyTypes } from '@kiltprotocol/types' import { Crypto, SDKErrors, ss58Format } from '@kiltprotocol/utils' diff --git a/packages/did/src/Did.rpc.ts b/packages/did/src/Did.rpc.ts index 4812a0cac..da77219d6 100644 --- a/packages/did/src/Did.rpc.ts +++ b/packages/did/src/Did.rpc.ts @@ -26,11 +26,12 @@ import type { DidVerificationKey, KiltAddress, UriFragment, + BN, } from '@kiltprotocol/types' import { encodeAddress } from '@polkadot/keyring' import { ethereumEncode } from '@polkadot/util-crypto' -import { BN, u8aToString } from '@polkadot/util' +import { u8aToString } from '@polkadot/util' import { Crypto, ss58Format } from '@kiltprotocol/utils' import { Address, SubstrateAddress } from './DidLinks/AccountLinks.chain.js' diff --git a/packages/did/src/Did.signature.spec.ts b/packages/did/src/Did.signature.spec.ts index 9ff4c3aeb..449e69813 100644 --- a/packages/did/src/Did.signature.spec.ts +++ b/packages/did/src/Did.signature.spec.ts @@ -5,9 +5,7 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/did - */ +import { randomAsHex, randomAsU8a } from '@polkadot/util-crypto' import type { DidDocument, @@ -18,17 +16,17 @@ import type { NewLightDidVerificationKey, SignCallback, } from '@kiltprotocol/types' -import { randomAsHex, randomAsU8a } from '@polkadot/util-crypto' import { Crypto, SDKErrors } from '@kiltprotocol/utils' -import { makeSigningKeyTool } from '@kiltprotocol/testing' -import * as Did from './index.js' + +import { makeSigningKeyTool } from '../../../tests/testUtils' import { - verifyDidSignature, isDidSignature, signatureFromJson, signatureToJson, + verifyDidSignature, } from './Did.signature' -import { resolveKey, keyToResolvedKey } from './DidResolver' +import { keyToResolvedKey, resolveKey } from './DidResolver' +import * as Did from './index.js' jest.mock('./DidResolver') jest diff --git a/packages/did/src/DidDetails/DidDetails.spec.ts b/packages/did/src/DidDetails/DidDetails.spec.ts index 1ad1ba2fd..26302a1f6 100644 --- a/packages/did/src/DidDetails/DidDetails.spec.ts +++ b/packages/did/src/DidDetails/DidDetails.spec.ts @@ -9,10 +9,6 @@ import { DidDocument, DidKey, DidServiceEndpoint } from '@kiltprotocol/types' import { getService, getKey, getKeys } from './DidDetails' -/** - * @group unit/did - */ - const minimalDid: DidDocument = { uri: 'did:kilt:4r1WkS3t8rbCb11H8t3tJvGVCynwDXSUBiuGB6sLRHzCLCjs', authentication: [ diff --git a/packages/did/src/DidDetails/FullDidDetails.spec.ts b/packages/did/src/DidDetails/FullDidDetails.spec.ts index a8a2595d2..3f8004931 100644 --- a/packages/did/src/DidDetails/FullDidDetails.spec.ts +++ b/packages/did/src/DidDetails/FullDidDetails.spec.ts @@ -8,25 +8,21 @@ import { BN } from '@polkadot/util' import { randomAsHex } from '@polkadot/util-crypto' +import { ConfigService } from '@kiltprotocol/config' import type { DidDocument, KiltKeyringPair, SignCallback, SubmittableExtrinsic, } from '@kiltprotocol/types' + import { ApiMocks, createLocalDemoFullDidFromKeypair, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import { ConfigService } from '@kiltprotocol/config' - -import * as Did from './index.js' +} from '../../../../tests/testUtils' import { generateDidAuthenticatedTx } from '../Did.chain.js' - -/** - * @group unit/did - */ +import * as Did from './index.js' const augmentedApi = ApiMocks.createAugmentedApi() const mockedApi: any = ApiMocks.getMockedApi() diff --git a/packages/did/src/DidDetails/LightDidDetails.spec.ts b/packages/did/src/DidDetails/LightDidDetails.spec.ts index ed467d349..2a7a23a92 100644 --- a/packages/did/src/DidDetails/LightDidDetails.spec.ts +++ b/packages/did/src/DidDetails/LightDidDetails.spec.ts @@ -10,10 +10,6 @@ import { Crypto } from '@kiltprotocol/utils' import * as Did from '../index.js' -/** - * @group unit/did - */ - /* * Functions tested: * - createLightDidDocument diff --git a/packages/did/src/DidDocumentExporter/DidDocumentExporter.spec.ts b/packages/did/src/DidDocumentExporter/DidDocumentExporter.spec.ts index 943c28ac6..7aa6234c5 100644 --- a/packages/did/src/DidDocumentExporter/DidDocumentExporter.spec.ts +++ b/packages/did/src/DidDocumentExporter/DidDocumentExporter.spec.ts @@ -21,10 +21,6 @@ import { exportToDidDocument } from './DidDocumentExporter.js' import * as Did from '../index.js' import { KILT_DID_CONTEXT_URL, W3C_DID_CONTEXT_URL } from '../index.js' -/** - * @group unit/did - */ - const did: DidUri = 'did:kilt:4r1WkS3t8rbCb11H8t3tJvGVCynwDXSUBiuGB6sLRHzCLCjs' function generateAuthenticationKey(): DidVerificationKey { @@ -215,42 +211,42 @@ describe('When exporting a DID Document from a light DID', () => { const didDoc = exportToDidDocument(lightDid, 'application/json') expect(didDoc).toMatchInlineSnapshot(` - Object { - "authentication": Array [ + { + "authentication": [ "#authentication", ], "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf", - "keyAgreement": Array [ + "keyAgreement": [ "#encryption", ], - "service": Array [ - Object { + "service": [ + { "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#id-1", - "serviceEndpoint": Array [ + "serviceEndpoint": [ "x:url-id-1", ], - "type": Array [ + "type": [ "type-id-1", ], }, - Object { + { "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#id-2", - "serviceEndpoint": Array [ + "serviceEndpoint": [ "x:url-id-2", ], - "type": Array [ + "type": [ "type-id-2", ], }, ], - "verificationMethod": Array [ - Object { + "verificationMethod": [ + { "controller": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf", "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#authentication", "publicKeyBase58": "11111111111111111111111111111111", "type": "Ed25519VerificationKey2018", }, - Object { + { "controller": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf", "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#encryption", "publicKeyBase58": "11111111111111111111111111111111", @@ -265,46 +261,46 @@ describe('When exporting a DID Document from a light DID', () => { const didDoc = exportToDidDocument(lightDid, 'application/ld+json') expect(didDoc).toMatchInlineSnapshot(` - Object { - "@context": Array [ + { + "@context": [ "https://www.w3.org/ns/did/v1", "ipfs://QmU7QkuTCPz7NmD5bD7Z7mQVz2UsSPaEK58B5sYnjnPRNW", ], - "authentication": Array [ + "authentication": [ "#authentication", ], "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf", - "keyAgreement": Array [ + "keyAgreement": [ "#encryption", ], - "service": Array [ - Object { + "service": [ + { "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#id-1", - "serviceEndpoint": Array [ + "serviceEndpoint": [ "x:url-id-1", ], - "type": Array [ + "type": [ "type-id-1", ], }, - Object { + { "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#id-2", - "serviceEndpoint": Array [ + "serviceEndpoint": [ "x:url-id-2", ], - "type": Array [ + "type": [ "type-id-2", ], }, ], - "verificationMethod": Array [ - Object { + "verificationMethod": [ + { "controller": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf", "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#authentication", "publicKeyBase58": "11111111111111111111111111111111", "type": "Ed25519VerificationKey2018", }, - Object { + { "controller": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf", "id": "did:kilt:light:014nv4phaKc4EcwENdRERuMF79ZSSB5xvnAk3zNySSbVbXhSwS:z16QMTH1Pc4A99Und9RZvzyikFR73Aepx9exPZPgXJX18upeuSpgXeat2LsjEQpXUBUtaRtdpSXpv42KitoFqySLjiuXVcghuoWviPci3QrnQMeD161howeWdF5GTbBFRHSVXpEu9PWbtUEsnLfDf2NQgu4LmktN8Ti6CAmdQtQiVNbJkB7TnyzLiJJ27rYayWj15mjJ9EoNyyu3rDJGomi2vUgt2DiSUXaJbnSzuuFf#encryption", "publicKeyBase58": "11111111111111111111111111111111", diff --git a/packages/did/src/DidLinks/AccountLinks.chain.ts b/packages/did/src/DidLinks/AccountLinks.chain.ts index ae62cbc60..882568d3b 100644 --- a/packages/did/src/DidLinks/AccountLinks.chain.ts +++ b/packages/did/src/DidLinks/AccountLinks.chain.ts @@ -7,8 +7,6 @@ import { decodeAddress, signatureVerify } from '@polkadot/util-crypto' import type { TypeDef } from '@polkadot/types/types' -import type { HexString } from '@polkadot/util/types' -import type { KeyringPair } from '@polkadot/keyring/types' import type { KeypairType } from '@polkadot/util-crypto/types' import { stringToU8a, @@ -21,8 +19,13 @@ import { import { ApiPromise } from '@polkadot/api' import { SDKErrors } from '@kiltprotocol/utils' -import type { DidUri, KiltAddress } from '@kiltprotocol/types' import { ConfigService } from '@kiltprotocol/config' +import type { + DidUri, + HexString, + KeyringPair, + KiltAddress, +} from '@kiltprotocol/types' import { EncodedSignature } from '../Did.utils.js' import { toChain } from '../Did.chain.js' diff --git a/packages/did/src/DidResolver/DidResolver.spec.ts b/packages/did/src/DidResolver/DidResolver.spec.ts index 6951781f9..8482cb709 100644 --- a/packages/did/src/DidResolver/DidResolver.spec.ts +++ b/packages/did/src/DidResolver/DidResolver.spec.ts @@ -8,6 +8,7 @@ import { BN } from '@polkadot/util' import { base58Encode } from '@polkadot/util-crypto' +import { ConfigService } from '@kiltprotocol/config' import type { ConformingDidKey, ConformingDidServiceEndpoint, @@ -26,23 +27,18 @@ import type { UriFragment, } from '@kiltprotocol/types' import { Crypto } from '@kiltprotocol/utils' -import { ApiMocks, makeSigningKeyTool } from '@kiltprotocol/testing' -import { ConfigService } from '@kiltprotocol/config' -import { getFullDidUriFromKey } from '../Did.utils' +import { ApiMocks, makeSigningKeyTool } from '../../../../tests/testUtils' import { linkedInfoFromChain } from '../Did.rpc.js' +import { getFullDidUriFromKey } from '../Did.utils' +import * as Did from '../index.js' import { resolve, resolveCompliant, resolveKey, resolveService, } from './index.js' -import * as Did from '../index.js' - -/** - * @group unit/did - */ const addressWithAuthenticationKey = '4r1WkS3t8rbCb11H8t3tJvGVCynwDXSUBiuGB6sLRHzCLCjs' diff --git a/packages/messaging/package.json b/packages/messaging/package.json index 74a297aad..b586a3d65 100644 --- a/packages/messaging/package.json +++ b/packages/messaging/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/messaging", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", @@ -30,7 +30,6 @@ "bugs": "https://github.com/KILTprotocol/sdk-js/issues", "homepage": "https://github.com/KILTprotocol/sdk-js#readme", "devDependencies": { - "@kiltprotocol/testing": "workspace:*", "rimraf": "^3.0.2", "typescript": "^4.8.3" }, diff --git a/packages/messaging/src/Message.spec.ts b/packages/messaging/src/Message.spec.ts index e1ce56ae6..ea26bbaa1 100644 --- a/packages/messaging/src/Message.spec.ts +++ b/packages/messaging/src/Message.spec.ts @@ -5,28 +5,32 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/messaging - */ +import { u8aToHex } from '@polkadot/util' +import { + Attestation, + CType, + Claim, + Credential, + Quote, +} from '@kiltprotocol/core' +import * as Did from '@kiltprotocol/did' import type { DidDocument, DidResourceUri, DidUri, - IEncryptedMessage, - IQuote, - IRequestAttestation, - ISubmitAttestation, - ISubmitCredential, - ResolvedDidKey, IAcceptCredential, IAttestation, - IClaim, ICType, + IClaim, + ICredential, + ICredentialPresentation, IDelegationData, + IEncryptedMessage, IInformCreateDelegation, IInformDelegationCreation, IMessage, + IQuote, IQuoteAgreement, IQuoteAttesterSigned, IRejectAcceptDelegation, @@ -34,40 +38,33 @@ import type { IRejectCredential, IRejectTerms, IRequestAcceptDelegation, + IRequestAttestation, IRequestAttestationContent, IRequestCredential, IRequestCredentialContent, IRequestDelegationApproval, - ICredential, IRequestTerms, ISubmitAcceptDelegation, + ISubmitAttestation, ISubmitAttestationContent, + ISubmitCredential, ISubmitDelegationApproval, ISubmitTerms, ITerms, MessageBody, PartialClaim, - ICredentialPresentation, + ResolvedDidKey, } from '@kiltprotocol/types' +import { Crypto, SDKErrors } from '@kiltprotocol/utils' + import { - Quote, - Credential, - Attestation, - Claim, - CType, -} from '@kiltprotocol/core' -import * as Did from '@kiltprotocol/did' -import { + KeyTool, + KeyToolSignCallback, + createLocalDemoFullDidFromKeypair, createLocalDemoFullDidFromLightDid, makeEncryptionKeyTool, makeSigningKeyTool, - createLocalDemoFullDidFromKeypair, - KeyTool, - KeyToolSignCallback, -} from '@kiltprotocol/testing' -import { u8aToHex } from '@polkadot/util' -import { Crypto, SDKErrors } from '@kiltprotocol/utils' - +} from '../../../tests/testUtils' import * as Message from './Message' describe('Messaging', () => { diff --git a/packages/sdk-js/package.json b/packages/sdk-js/package.json index 00b833d58..f8ae4898c 100644 --- a/packages/sdk-js/package.json +++ b/packages/sdk-js/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/sdk-js", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", @@ -35,7 +35,7 @@ "rimraf": "^3.0.2", "terser-webpack-plugin": "^5.1.1", "typescript": "^4.8.3", - "webpack": "^5.70.0", + "webpack": "^5.76.0", "webpack-cli": "^4.9.2" }, "dependencies": { diff --git a/packages/testing/package.json b/packages/testing/package.json deleted file mode 100644 index e450b37ae..000000000 --- a/packages/testing/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@kiltprotocol/testing", - "private": true, - "version": "0.33.1", - "description": "", - "main": "./lib/cjs/index.js", - "module": "./lib/esm/index.js", - "types": "./lib/cjs/index.d.ts", - "exports": { - ".": { - "import": "./lib/esm/index.js", - "require": "./lib/cjs/index.js" - } - }, - "files": [ - "lib/**/*" - ], - "scripts": { - "clean": "rimraf ./lib", - "build": "yarn clean && yarn build:ts", - "build:ts": "yarn build:cjs && yarn build:esm", - "build:cjs": "tsc --declaration -p tsconfig.build.json && echo '{\"type\":\"commonjs\"}' > ./lib/cjs/package.json", - "build:esm": "tsc --declaration -p tsconfig.esm.json && echo '{\"type\":\"module\"}' > ./lib/esm/package.json" - }, - "repository": "github:kiltprotocol/sdk-js", - "engines": { - "node": ">=16.0" - }, - "author": "", - "license": "BSD-4-Clause", - "bugs": "https://github.com/KILTprotocol/sdk-js/issues", - "homepage": "https://github.com/KILTprotocol/sdk-js#readme", - "dependencies": { - "@kiltprotocol/chain-helpers": "workspace:*", - "@kiltprotocol/config": "workspace:*", - "@kiltprotocol/did": "workspace:*", - "@kiltprotocol/sdk-js": "workspace:*", - "@kiltprotocol/type-definitions": "workspace:*", - "@kiltprotocol/types": "workspace:*", - "@kiltprotocol/utils": "workspace:*", - "@polkadot/api": "^10.4.0", - "@polkadot/keyring": "^12.0.0", - "@polkadot/types": "^10.4.0", - "@polkadot/util": "^12.0.0", - "@polkadot/util-crypto": "^12.0.0", - "tweetnacl": "^1.0.3", - "uuid": "^9.0.0" - }, - "devDependencies": { - "rimraf": "^3.0.2", - "typescript": "^4.8.3" - } -} diff --git a/packages/testing/tsconfig.build.json b/packages/testing/tsconfig.build.json deleted file mode 100644 index d59aa31ce..000000000 --- a/packages/testing/tsconfig.build.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "extends": "../../tsconfig.build.json", - - "compilerOptions": { - "module": "CommonJS", - "outDir": "./lib/cjs" - }, - - "include": [ - "src/**/*.ts", "src/**/*.js" - ], - - "exclude": [ - "coverage", - "**/*.spec.ts", - ] -} diff --git a/packages/testing/tsconfig.esm.json b/packages/testing/tsconfig.esm.json deleted file mode 100644 index e1f3b73b6..000000000 --- a/packages/testing/tsconfig.esm.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "extends": "./tsconfig.build.json", - "compilerOptions": { - "module": "ES6", - "outDir": "./lib/esm" - } -} diff --git a/packages/type-definitions/package.json b/packages/type-definitions/package.json index 6ca78ae0b..41de4abad 100644 --- a/packages/type-definitions/package.json +++ b/packages/type-definitions/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/type-definitions", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", diff --git a/packages/types/package.json b/packages/types/package.json index d8ac81f4f..312f91d2a 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/types", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", diff --git a/packages/types/src/Address.ts b/packages/types/src/Address.ts index 57f1e320c..9ee9edfd5 100644 --- a/packages/types/src/Address.ts +++ b/packages/types/src/Address.ts @@ -5,10 +5,9 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { Prefix } from '@polkadot/util-crypto/address/types' -import type { HexString } from '@polkadot/util/types' import '@polkadot/keyring' // TS needs this for the augmentation below -import type { KeyringPair } from './index.js' + +import type { HexString, KeyringPair, Prefix } from './Imported' export interface KiltEncryptionKeypair { secretKey: Uint8Array diff --git a/packages/types/src/Balance.ts b/packages/types/src/Balance.ts index 6ea4ddcf8..a8381b130 100644 --- a/packages/types/src/Balance.ts +++ b/packages/types/src/Balance.ts @@ -5,8 +5,7 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { AnyNumber } from '@polkadot/types/types/codec' -import type { BN } from '@polkadot/util' +import type { AnyNumber, BN } from './Imported' export type Balances = { free: BN diff --git a/packages/types/src/CType.ts b/packages/types/src/CType.ts index c0737de15..7ab4452f1 100644 --- a/packages/types/src/CType.ts +++ b/packages/types/src/CType.ts @@ -5,7 +5,7 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { HexString } from '@polkadot/util/types' +import type { HexString } from './Imported' export type InstanceType = 'boolean' | 'integer' | 'number' | 'string' | 'array' diff --git a/packages/types/src/Credential.ts b/packages/types/src/Credential.ts index e0f7e657c..ec2c0d467 100644 --- a/packages/types/src/Credential.ts +++ b/packages/types/src/Credential.ts @@ -5,10 +5,10 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { HexString } from '@polkadot/util/types' import type { DidSignature } from './DidDocument' import type { IClaim } from './Claim' import type { IDelegationNode } from './Delegation' +import type { HexString } from './Imported' export type Hash = HexString diff --git a/packages/types/src/Deposit.ts b/packages/types/src/Deposit.ts index 01a5e6f74..6cc0a583c 100644 --- a/packages/types/src/Deposit.ts +++ b/packages/types/src/Deposit.ts @@ -5,7 +5,7 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { BN } from '@polkadot/util' +import type { BN } from './Imported' import type { KiltAddress } from './Address' /** diff --git a/packages/types/src/DidDocument.ts b/packages/types/src/DidDocument.ts index 61340a977..9bf9a7502 100644 --- a/packages/types/src/DidDocument.ts +++ b/packages/types/src/DidDocument.ts @@ -5,8 +5,7 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { BN } from '@polkadot/util' - +import type { BN } from './Imported' import type { KiltAddress } from './Address' type AuthenticationKeyType = '00' | '01' diff --git a/packages/types/src/Imported.ts b/packages/types/src/Imported.ts new file mode 100644 index 000000000..f83228443 --- /dev/null +++ b/packages/types/src/Imported.ts @@ -0,0 +1,17 @@ +/** + * Copyright (c) 2018-2023, BOTLabs GmbH. + * + * This source code is licensed under the BSD 4-Clause "Original" license + * found in the LICENSE file in the root directory of this source tree. + */ + +export type { + ISubmittableResult, + AnyNumber, + AnyJson, +} from '@polkadot/types/types' +export type { BN } from '@polkadot/util' +export type { HexString } from '@polkadot/util/types' +export type { Prefix } from '@polkadot/util-crypto/address/types' +export type { SubmittableExtrinsic } from '@polkadot/api/promise/types' +export type { KeyringPair } from '@polkadot/keyring/types' diff --git a/packages/types/src/Message.ts b/packages/types/src/Message.ts index ba2445d1f..b4264dc76 100644 --- a/packages/types/src/Message.ts +++ b/packages/types/src/Message.ts @@ -5,8 +5,7 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { AnyJson } from '@polkadot/types/types/codec' - +import type { AnyJson } from './Imported' import type { DidResourceUri, DidSignature, DidUri } from './DidDocument.js' import type { IAttestation } from './Attestation.js' import type { PartialClaim } from './Claim.js' diff --git a/packages/types/src/PublicCredential.ts b/packages/types/src/PublicCredential.ts index 25451038b..0b3ba75db 100644 --- a/packages/types/src/PublicCredential.ts +++ b/packages/types/src/PublicCredential.ts @@ -5,9 +5,7 @@ * found in the LICENSE file in the root directory of this source tree. */ -import type { HexString } from '@polkadot/util/types' -import type { BN } from '@polkadot/util' - +import type { HexString, BN } from './Imported' import type { CTypeHash } from './CType' import type { IDelegationNode } from './Delegation' import type { IClaimContents } from './Claim' diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 81efc6583..16c6bf418 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -9,10 +9,6 @@ * @module @kiltprotocol/types */ -export type { ISubmittableResult } from '@polkadot/types/types' -export type { SubmittableExtrinsic } from '@polkadot/api/promise/types' -export type { KeyringPair } from '@polkadot/keyring/types' - export * as SubscriptionPromise from './SubscriptionPromise.js' export * from './Attestation.js' @@ -33,3 +29,4 @@ export * from './CryptoCallbacks.js' export * from './DidResolver.js' export * from './DidDocumentExporter.js' export * from './PublicCredential.js' +export * from './Imported.js' diff --git a/packages/utils/package.json b/packages/utils/package.json index 4c7277ce2..3759f261b 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/utils", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", @@ -39,7 +39,7 @@ "@polkadot/keyring": "^12.0.0", "@polkadot/util": "^12.0.0", "@polkadot/util-crypto": "^12.0.0", - "cbor-web": "^8.0.0", + "cbor-web": "^9.0.0", "tweetnacl": "^1.0.3", "uuid": "^9.0.0" } diff --git a/packages/utils/src/Crypto.spec.ts b/packages/utils/src/Crypto.spec.ts index de8f3d621..fd08e586a 100644 --- a/packages/utils/src/Crypto.spec.ts +++ b/packages/utils/src/Crypto.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/utils - */ - import * as string from '@polkadot/util/string' import nacl from 'tweetnacl' import * as Crypto from './Crypto' @@ -97,7 +93,7 @@ describe('helper functions', () => { hashed = Crypto.hashStatements(statements, { nonceGenerator: () => '' }) expect(hashed.map((i) => i.digest)).toEqual(digests) expect(hashed.map((i) => i.saltedHash)).toMatchInlineSnapshot(` - Array [ + [ "0x3d4b9478848e85771d9d678f2d80966bf9ea36f0d05b44fe5b23433e14a3eace", "0x56c8f25bc8a9a8921c756c41f47efceb12c8129a9569456f7d80955bfcec2dcf", "0x46ee56523ea5289f05709c26f6be6b08f364a3f2d6a5a8b6cfb2839bfe6a506e", @@ -112,7 +108,7 @@ describe('helper functions', () => { }) expect(hashed.map((i) => i.digest)).toEqual(digests) expect(hashed.map((i) => i.saltedHash)).toMatchInlineSnapshot(` - Array [ + [ "0x7126bd9e273ae6a1b2cfdc5f987b0f862cf2db77fea9b017963fec83b328784d", "0xda617d15abd22984c2f1927f4e23a101696b7495c83ac178bbb91818ec102117", "0x4e31eef9054d0d8682707880a414b86fafaa963b19220d03273eae764ad0bc1d", diff --git a/packages/utils/src/Crypto.ts b/packages/utils/src/Crypto.ts index 7c5a7b65c..3dfc942eb 100644 --- a/packages/utils/src/Crypto.ts +++ b/packages/utils/src/Crypto.ts @@ -15,8 +15,9 @@ import { decodeAddress, encodeAddress } from '@polkadot/keyring' import type { - KiltEncryptionKeypair, + HexString, KeyringPair, + KiltEncryptionKeypair, KiltKeyringPair, } from '@kiltprotocol/types' import { @@ -36,7 +37,6 @@ import { import { Keyring } from '@polkadot/api' import nacl from 'tweetnacl' import { v4 as uuid } from 'uuid' -import type { HexString } from '@polkadot/util/types' import jsonabc from './jsonabc.js' import * as SDKErrors from './SDKErrors.js' import { ss58Format } from './ss58Format.js' diff --git a/packages/utils/src/DataUtils.spec.ts b/packages/utils/src/DataUtils.spec.ts index 19dfb5cae..c53cfc4c5 100644 --- a/packages/utils/src/DataUtils.spec.ts +++ b/packages/utils/src/DataUtils.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/utils - */ - import { encodeAddress } from '@polkadot/keyring' import type { KiltAddress } from '@kiltprotocol/types' import { SDKErrors, ss58Format } from './index' diff --git a/packages/utils/src/UUID.spec.ts b/packages/utils/src/UUID.spec.ts index 5ae83c706..fdc61a48a 100644 --- a/packages/utils/src/UUID.spec.ts +++ b/packages/utils/src/UUID.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/utils - */ - import * as UUID from './UUID' describe('UUID', () => { diff --git a/packages/utils/src/cbor-web.d.ts b/packages/utils/src/cbor-web.d.ts deleted file mode 100644 index 4def7650e..000000000 --- a/packages/utils/src/cbor-web.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'cbor-web' diff --git a/packages/utils/src/cbor.ts b/packages/utils/src/cbor.ts index e8d6f254e..b12205bcd 100644 --- a/packages/utils/src/cbor.ts +++ b/packages/utils/src/cbor.ts @@ -8,4 +8,4 @@ // special import syntax as this is a pure cjs import import * as cborImp from 'cbor-web' // this is horrible but the only way to make this import work in both cjs & esm builds -export const cbor = cborImp?.default ?? cborImp +export const cbor: typeof cborImp = (cborImp as any)?.default ?? cborImp diff --git a/packages/vc-export/package.json b/packages/vc-export/package.json index f05ffef45..60c8f6082 100644 --- a/packages/vc-export/package.json +++ b/packages/vc-export/package.json @@ -1,6 +1,6 @@ { "name": "@kiltprotocol/vc-export", - "version": "0.33.1", + "version": "0.34.0", "description": "", "main": "./lib/cjs/index.js", "module": "./lib/esm/index.js", @@ -30,7 +30,6 @@ "bugs": "https://github.com/KILTprotocol/sdk-js/issues", "homepage": "https://github.com/KILTprotocol/sdk-js#readme", "devDependencies": { - "@kiltprotocol/testing": "workspace:*", "@types/jsonld": "1.5.1", "rimraf": "^3.0.2", "typescript": "^4.8.3" diff --git a/packages/vc-export/src/exportToVerifiableCredential.spec.ts b/packages/vc-export/src/exportToVerifiableCredential.spec.ts index ba815b371..c77f0e02c 100644 --- a/packages/vc-export/src/exportToVerifiableCredential.spec.ts +++ b/packages/vc-export/src/exportToVerifiableCredential.spec.ts @@ -5,33 +5,31 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/vc-export - */ +import { base58Encode } from '@polkadot/util-crypto' +import type { DocumentLoader } from 'jsonld-signatures' -import { +import { Attestation } from '@kiltprotocol/core' +import * as Did from '@kiltprotocol/did' +import type { DidUri, IAttestation, ICType, ICredential, ICredentialPresentation, } from '@kiltprotocol/types' -import { Attestation } from '@kiltprotocol/core' -import * as Did from '@kiltprotocol/did' import { Crypto } from '@kiltprotocol/utils' -import { ApiMocks } from '@kiltprotocol/testing' -import type { DocumentLoader } from 'jsonld-signatures' -import { base58Encode } from '@polkadot/util-crypto' -import * as toVC from './exportToVerifiableCredential' -import * as verificationUtils from './verificationUtils' -import * as presentationUtils from './presentationUtils' -import type { IPublicKeyRecord, VerifiableCredential } from './types' + +import { ApiMocks } from '../../../tests/testUtils' import { DEFAULT_VERIFIABLECREDENTIAL_CONTEXT, DEFAULT_VERIFIABLECREDENTIAL_TYPE, KILT_CREDENTIAL_CONTEXT_URL, KILT_VERIFIABLECREDENTIAL_TYPE, } from './constants' +import * as toVC from './exportToVerifiableCredential' +import * as presentationUtils from './presentationUtils' +import type { IPublicKeyRecord, VerifiableCredential } from './types' +import * as verificationUtils from './verificationUtils' jest.mock('@kiltprotocol/core', () => ({ ...jest.requireActual('@kiltprotocol/core'), @@ -40,7 +38,7 @@ jest.mock('@kiltprotocol/core', () => ({ const mockedApi: any = ApiMocks.getMockedApi() -const ctype: ICType = { +const cType: ICType = { $schema: 'http://kilt-protocol.org/draft-01/ctype#', title: 'membership', properties: { @@ -144,20 +142,20 @@ it('exports credential to VC', () => { it('exports includes ctype as schema', () => { expect( - toVC.fromCredentialAndAttestation(credential, attestation, ctype) + toVC.fromCredentialAndAttestation(credential, attestation, cType) ).toMatchObject({ credentialSchema: { - '@id': ctype.$id, - name: ctype.title, + '@id': cType.$id, + name: cType.title, '@type': 'JsonSchemaValidator2018', - schema: ctype, + schema: cType, }, }) }) it('VC has correct format (full example)', () => { expect( - toVC.fromCredentialAndAttestation(credential, attestation, ctype) + toVC.fromCredentialAndAttestation(credential, attestation, cType) ).toMatchObject({ '@context': [ DEFAULT_VERIFIABLECREDENTIAL_CONTEXT, @@ -263,7 +261,7 @@ describe('proofs', () => { const VCWithSchema = toVC.fromCredentialAndAttestation( credential, attestation, - ctype + cType ) const result = verificationUtils.validateSchema(VCWithSchema) expect(result.errors).toEqual([]) @@ -348,7 +346,7 @@ describe('proofs', () => { describe('negative tests', () => { beforeEach(() => { - VC = toVC.fromCredentialAndAttestation(credential, attestation, ctype) + VC = toVC.fromCredentialAndAttestation(credential, attestation, cType) }) it('errors on proof mismatch', async () => { diff --git a/packages/vc-export/src/exportToVerifiableCredential.ts b/packages/vc-export/src/exportToVerifiableCredential.ts index c30950d42..fb02db1f6 100644 --- a/packages/vc-export/src/exportToVerifiableCredential.ts +++ b/packages/vc-export/src/exportToVerifiableCredential.ts @@ -72,13 +72,13 @@ export function toCredentialIRI(rootHash: string): string { * * @param input The credential to transform. * @param attestation The attestation corresponding to the credential. - * @param ctype (optional) The full specification of the credential's CType. If specified, the CType will be included with the VC on its `credentialSchema` property. + * @param cType (optional) The full specification of the credential's CType. If specified, the CType will be included with the VC on its `credentialSchema` property. * @returns The VC representation of the KILT credential and optionally its CType. */ export function fromCredentialAndAttestation( input: ICredential | ICredentialPresentation, attestation: IAttestation, - ctype?: ICType + cType?: ICType ): VerifiableCredential { const { claimHashes, legitimations, delegationId, rootHash, claim } = input @@ -99,12 +99,12 @@ export function fromCredentialAndAttestation( // if ctype is given, add as credential schema let credentialSchema: CredentialSchema | undefined - if (ctype) { + if (cType) { credentialSchema = { - '@id': ctype.$id, + '@id': cType.$id, '@type': JSON_SCHEMA_TYPE, - name: ctype.title, - schema: ctype, + name: cType.title, + schema: cType, } } diff --git a/packages/vc-export/src/vc-js/suites/KiltAttestedSuite.spec.ts b/packages/vc-export/src/vc-js/suites/KiltAttestedSuite.spec.ts index b5a76b6f8..219f52dce 100644 --- a/packages/vc-export/src/vc-js/suites/KiltAttestedSuite.spec.ts +++ b/packages/vc-export/src/vc-js/suites/KiltAttestedSuite.spec.ts @@ -5,16 +5,12 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/vc-js - */ - -import { ApiMocks } from '@kiltprotocol/testing' import jsigs from 'jsonld-signatures' import { Attestation } from '@kiltprotocol/core' import type { IAttestation } from '@kiltprotocol/types' import vcjs from 'vc-js' import jsonld from 'jsonld' +import { ApiMocks } from '../../../../../tests/testUtils' import { KiltAttestedSuite as AttestationSuite } from './KiltAttestedSuite' import credential from '../examples/example-vc.json' import { documentLoader } from '../documentLoader' diff --git a/packages/vc-export/src/vc-js/suites/KiltIntegritySuite.spec.ts b/packages/vc-export/src/vc-js/suites/KiltIntegritySuite.spec.ts index cac0a288c..bf02c06f2 100644 --- a/packages/vc-export/src/vc-js/suites/KiltIntegritySuite.spec.ts +++ b/packages/vc-export/src/vc-js/suites/KiltIntegritySuite.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/vc-js - */ - import jsigs from 'jsonld-signatures' import vcjs from 'vc-js' import jsonld from 'jsonld' diff --git a/packages/vc-export/src/vc-js/suites/KiltSignatureSuite.spec.ts b/packages/vc-export/src/vc-js/suites/KiltSignatureSuite.spec.ts index 6522b1f4b..44475192e 100644 --- a/packages/vc-export/src/vc-js/suites/KiltSignatureSuite.spec.ts +++ b/packages/vc-export/src/vc-js/suites/KiltSignatureSuite.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group unit/vc-js - */ - import jsigs from 'jsonld-signatures' import type { DocumentLoader, purposes } from 'jsonld-signatures' import vcjs from 'vc-js' diff --git a/packages/testing/src/BreakingChanges.spec.ts b/tests/breakingChanges/BreakingChanges.spec.ts similarity index 98% rename from packages/testing/src/BreakingChanges.spec.ts rename to tests/breakingChanges/BreakingChanges.spec.ts index 6890ec11a..2c73a6772 100644 --- a/packages/testing/src/BreakingChanges.spec.ts +++ b/tests/breakingChanges/BreakingChanges.spec.ts @@ -5,10 +5,6 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group breaking - */ - import { Attestation, Claim, @@ -26,7 +22,8 @@ import { } from '@kiltprotocol/sdk-js' import nacl from 'tweetnacl' import { v4 } from 'uuid' -import { makeEncryptionKeyTool } from './TestUtils' + +import { makeEncryptionKeyTool } from '../testUtils/index.js' jest.mock('uuid') jest.mocked(v4).mockReturnValue('1ee1307c-9e65-475d-9061-0b5bfd86d2f7') diff --git a/packages/testing/src/__snapshots__/BreakingChanges.spec.ts.snap b/tests/breakingChanges/__snapshots__/BreakingChanges.spec.ts.snap similarity index 92% rename from packages/testing/src/__snapshots__/BreakingChanges.spec.ts.snap rename to tests/breakingChanges/__snapshots__/BreakingChanges.spec.ts.snap index 4fbd05fa3..aed34b2a8 100644 --- a/packages/testing/src/__snapshots__/BreakingChanges.spec.ts.snap +++ b/tests/breakingChanges/__snapshots__/BreakingChanges.spec.ts.snap @@ -1,9 +1,9 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Breaking Changes Light DID does not break the light did uri generation 2`] = ` -Object { - "authentication": Array [ - Object { +{ + "authentication": [ + { "id": "#authentication", "publicKey": Uint8Array [ 132, @@ -42,8 +42,8 @@ Object { "type": "sr25519", }, ], - "keyAgreement": Array [ - Object { + "keyAgreement": [ + { "id": "#encryption", "publicKey": Uint8Array [ 179, @@ -82,13 +82,13 @@ Object { "type": "x25519", }, ], - "service": Array [ - Object { + "service": [ + { "id": "#1234", - "serviceEndpoint": Array [ + "serviceEndpoint": [ "https://ipfs.io/ipfs/QmNUAwg7JPK9nnuZiUri5nDaqLHqUFtNoZYtfD22Q6w3c8", ], - "type": Array [ + "type": [ "KiltPublishedCredentialCollectionV1", ], }, @@ -98,9 +98,9 @@ Object { `; exports[`Breaking Changes Messages does not break Message & EncryptedMessage structure 1`] = ` -Object { - "body": Object { - "content": Object { +{ + "body": { + "content": { "cTypeHash": "0x1234", }, "type": "request-terms", @@ -113,7 +113,7 @@ Object { `; exports[`Breaking Changes Messages does not break Message & EncryptedMessage structure 2`] = ` -Object { +{ "ciphertext": "0x8edac73d2230d66ba1a177db550773afa4f2d914786050424594c89f07ccbc2f643df95ba030281079a92215c66d76a74b39e6013cb8a5e1459a6853fdbfb522bff1295cbf9e5e2d6947de5974dafe6de32e6d42e2c349f07b5bb934a504d0a227d502e920cadfae44869ed041d86916cee71e0619650f15a1a04f27751f0839e8f3c629d626a54f489c4170b3ffefe118039925124acba91c097bf4d8c582f26c8a3b0f1dba93bf8da6b8f2a2a4303ac529c7028aec026f6baeb1ae95d90884f12890f4bc2d535247a170dd68a6828573e36502ef0d99fb4cdb0750b84902876009cca8662f952746cad88c9a8285b8be42ad349c67de540fb92e122d52c2ffa4c8e229076990ce60b13b64ddb6d769017262597bb33085cb8e09d5189f2077e48ece3c0100a1aa11935237a1ee3ef80200c4ccf92bb41d75c83238ac18360c6ce81df45ade968a59aff9fddf6a475fd976f581c267ddc377a1a239997ccdfd92f0e8d3a6b1b76f520e1c25ea7e3954ed555eb4ac02d68562cd1f031b724a063606c95d528c91b80ea49786303d0a6e7201e16f3e0d5571f205069da31874ed8e6c5d380cce070b2cb96961d2f594cc4a5dffc94e3782bf6a1da3bbc1af2f773e79250e09c3206b0e0c7a08a001393526220831f3735c07bf68c8ccca07260b8cb1acbb66163c73af0d783eb035a99add5d604f10916432846279524e8741b57961d52583ced5b79943c986a9f28d99be029b00e5688afcb3731152861a37ddf5e70c95dd64e2d765a4d0a662f93d16a3650c505dc2e4a048b0d585fadc8c4efa23360e81292c2ae88027068deed4ff3cd97d961b58afd95728aa4ce03340ebf13a4bc7d4b6f8b5e69a7a3ecb18c79a06946466d0b29ca0bd00c47d1256fe564b48eac37b389c246d9b556dc67921e27fb6a8aeb93953c1947834432e5ade8117bcad7173f9d8b43ebf4cce89789744d55215a8bbdfd9a7222cafccc02a3c62e5a26794ef21d1bba441f0aa9ca3e077f32e06daa22264345b66dbf34dbb9219434ad7c21b386de7587c3612fc36b63bdf650206a191fea82855a5181942c151c8a90741c8a930c570350f863ca448d908f7f1a098b0521a14c9c49bf99bd1715ebed5a93b3bc7e04fcd845efcc564448d0426e21496ca124ca8c96a1a598e90529d65fc33d64b937b16a077eaa052b10d34ef91a321a2c0476601318a7eaecc8308d618d82db10f8978c4310e1384bfb043d0a12c20325c4ceef36e144a9f2fb94d0dc546b5b4cbce162569e8e40454d219750eb85758555547c0900874bd2ca7c561aeab4e2b5e26130d91e22196fd138e8e73f6414c50c08a6f981e8a1ed244c2ee2f5c4d446d793e0039b5f75ea40215ebb2e2bcf8fae608173a00ccc24e016176417bbac0ce5682932341fc3a2a106a4f6d83dbf17a81fc7d0e5cbe52c92ece5789e8e8b3", "nonce": "0x2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a", "receivedAt": undefined, @@ -123,7 +123,7 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: attestation 1`] = ` -Object { +{ "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", "claimHash": "0x453559279a1816c20673194e21eb72f121e7b31f5b33ea3a8d3264d6f4d319ac", "delegationId": null, @@ -133,9 +133,9 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: claim 1`] = ` -Object { +{ "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", - "contents": Object { + "contents": { "name": "Bob", }, "owner": "did:kilt:light:004rn1Xps9QSMiAb2aMoKQbAred94wh1iLjGmNBYy1FVCS81ry:z1msTRicERqs59nwMvp3yzMRBhRatQoZZaiSZfyN7TzqeEs1bHHTCH3RURC6zWk5B8HXGZThZos9PJFJrkiYchNGbAGQRKSKucBVDVoXBLDyEm4P1dsco9wyoaWa5kkFw6DZgnKrTJg8Y8iCy7k2yo8GeMXAuR8qoBFFXj7Up7DxKJrMoQudvFHTy2uk2HPNfqkzJX17Wqsny1MKHD82eC3TcjrGCkhMZy3NmzkySmLsDmmHnG2csZ5vvefFRFZ1hSKfUtcV8EnLd3zozsiZByaLrED2XVbuHqPVzqcnrCJF8fSm49NcGDgsQkwnQwbuKfMkov9WwJoxhDSYG6e7WP", @@ -143,77 +143,77 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: credential 1`] = ` -Object { - "claim": Object { +{ + "claim": { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", - "contents": Object { + "contents": { "name": "Bob", }, "owner": "did:kilt:light:004rzcHqKvv6TbsA46VpG53JrvdzRr6ccyboUNeCGTvDw2AozU:z1msTRicERqs59nwMvp3yzMRBhQhYShb1vEhbpWo5ZbqVAgi2UFELJk7MbUSeEfBdAVsJhdqcEAhXxH4YrV5nwgTYjFYszWKLFnYvSUhgZ7teDiLt1FbAo484ihnagUKQkE46o3fqSv52WgM6VatrEqetD3ekokxFtz4yn2vFYPdDMPmKE3cVxdKqPMa3Ewh6k46SENeEDZFLg1L8Yi73ZVEA9AwDg2RDuBDnpjetxBC6U5qMKVfqbh1rjgxpubpSj6sppHDq8xZ4LDU2bs1a9g6qcWJjkrtS69t3PTFZv5Ey84epnvbXEm8hsVnzTKsY6LbQmCiVqwKWUPUwXpj83", }, - "claimHashes": Array [ + "claimHashes": [ "0x901805bb5659ecf21cc79d50a98021d49eb83ee136a2609d4377dd615a271a78", "0xdaff2311c04ea4d2c16e9bd3dc4debba9822e5c4cfb53e36b48f090036169575", ], - "claimNonceMap": Object { + "claimNonceMap": { "0x499856031d06ddecbda0c1e0f1c0de4f53f614732f205190d81d0c76e793bdf0": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", "0x721cf4dd222afba0b79565332ac711cb634762052c3c2d45434f53f465d030f7": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", }, "delegationId": null, - "legitimations": Array [], + "legitimations": [], "rootHash": "0x453559279a1816c20673194e21eb72f121e7b31f5b33ea3a8d3264d6f4d319ac", } `; exports[`Breaking Changes Messages does not break for attestation flow: presentation 1`] = ` -Object { - "claim": Object { +{ + "claim": { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", - "contents": Object { + "contents": { "name": "Bob", }, "owner": "did:kilt:light:004rzcHqKvv6TbsA46VpG53JrvdzRr6ccyboUNeCGTvDw2AozU:z1msTRicERqs59nwMvp3yzMRBhQhYShb1vEhbpWo5ZbqVAgi2UFELJk7MbUSeEfBdAVsJhdqcEAhXxH4YrV5nwgTYjFYszWKLFnYvSUhgZ7teDiLt1FbAo484ihnagUKQkE46o3fqSv52WgM6VatrEqetD3ekokxFtz4yn2vFYPdDMPmKE3cVxdKqPMa3Ewh6k46SENeEDZFLg1L8Yi73ZVEA9AwDg2RDuBDnpjetxBC6U5qMKVfqbh1rjgxpubpSj6sppHDq8xZ4LDU2bs1a9g6qcWJjkrtS69t3PTFZv5Ey84epnvbXEm8hsVnzTKsY6LbQmCiVqwKWUPUwXpj83", }, - "claimHashes": Array [ + "claimHashes": [ "0x901805bb5659ecf21cc79d50a98021d49eb83ee136a2609d4377dd615a271a78", "0xdaff2311c04ea4d2c16e9bd3dc4debba9822e5c4cfb53e36b48f090036169575", ], - "claimNonceMap": Object { + "claimNonceMap": { "0x499856031d06ddecbda0c1e0f1c0de4f53f614732f205190d81d0c76e793bdf0": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", "0x721cf4dd222afba0b79565332ac711cb634762052c3c2d45434f53f465d030f7": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", }, - "claimerSignature": Object { + "claimerSignature": { "challenge": "0xCAFE", "keyUri": "did:kilt:light:004rzcHqKvv6TbsA46VpG53JrvdzRr6ccyboUNeCGTvDw2AozU:z1msTRicERqs59nwMvp3yzMRBhQhYShb1vEhbpWo5ZbqVAgi2UFELJk7MbUSeEfBdAVsJhdqcEAhXxH4YrV5nwgTYjFYszWKLFnYvSUhgZ7teDiLt1FbAo484ihnagUKQkE46o3fqSv52WgM6VatrEqetD3ekokxFtz4yn2vFYPdDMPmKE3cVxdKqPMa3Ewh6k46SENeEDZFLg1L8Yi73ZVEA9AwDg2RDuBDnpjetxBC6U5qMKVfqbh1rjgxpubpSj6sppHDq8xZ4LDU2bs1a9g6qcWJjkrtS69t3PTFZv5Ey84epnvbXEm8hsVnzTKsY6LbQmCiVqwKWUPUwXpj83#authentication", "signature": "0x0000000000000000000000000000000000000000000000000000000000000000", }, "delegationId": null, - "legitimations": Array [], + "legitimations": [], "rootHash": "0x453559279a1816c20673194e21eb72f121e7b31f5b33ea3a8d3264d6f4d319ac", } `; exports[`Breaking Changes Messages does not break for attestation flow: request-attestation 1`] = ` -Object { - "content": Object { - "credential": Object { - "claim": Object { +{ + "content": { + "credential": { + "claim": { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", - "contents": Object { + "contents": { "name": "Bob", }, "owner": "did:kilt:light:004rzcHqKvv6TbsA46VpG53JrvdzRr6ccyboUNeCGTvDw2AozU:z1msTRicERqs59nwMvp3yzMRBhQhYShb1vEhbpWo5ZbqVAgi2UFELJk7MbUSeEfBdAVsJhdqcEAhXxH4YrV5nwgTYjFYszWKLFnYvSUhgZ7teDiLt1FbAo484ihnagUKQkE46o3fqSv52WgM6VatrEqetD3ekokxFtz4yn2vFYPdDMPmKE3cVxdKqPMa3Ewh6k46SENeEDZFLg1L8Yi73ZVEA9AwDg2RDuBDnpjetxBC6U5qMKVfqbh1rjgxpubpSj6sppHDq8xZ4LDU2bs1a9g6qcWJjkrtS69t3PTFZv5Ey84epnvbXEm8hsVnzTKsY6LbQmCiVqwKWUPUwXpj83", }, - "claimHashes": Array [ + "claimHashes": [ "0x901805bb5659ecf21cc79d50a98021d49eb83ee136a2609d4377dd615a271a78", "0xdaff2311c04ea4d2c16e9bd3dc4debba9822e5c4cfb53e36b48f090036169575", ], - "claimNonceMap": Object { + "claimNonceMap": { "0x499856031d06ddecbda0c1e0f1c0de4f53f614732f205190d81d0c76e793bdf0": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", "0x721cf4dd222afba0b79565332ac711cb634762052c3c2d45434f53f465d030f7": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", }, "delegationId": null, - "legitimations": Array [], + "legitimations": [], "rootHash": "0x453559279a1816c20673194e21eb72f121e7b31f5b33ea3a8d3264d6f4d319ac", }, }, @@ -222,15 +222,15 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: request-credential 1`] = ` -Object { - "content": Object { - "cTypes": Array [ - Object { +{ + "content": { + "cTypes": [ + { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", - "requiredProperties": Array [ + "requiredProperties": [ "name", ], - "trustedAttesters": Array [ + "trustedAttesters": [ "did:kilt:light:004rn1Xps9QSMiAb2aMoKQbAred94wh1iLjGmNBYy1FVCS81ry:z1msTRicERqs59nwMvp3yzMRBhRatQoZZaiSZfyN7TzqeEs1bHHTCH3RURC6zWk5B8HXGZThZos9PJFJrkiYchNGbAGQRKSKucBVDVoXBLDyEm4P1dsco9wyoaWa5kkFw6DZgnKrTJg8Y8iCy7k2yo8GeMXAuR8qoBFFXj7Up7DxKJrMoQudvFHTy2uk2HPNfqkzJX17Wqsny1MKHD82eC3TcjrGCkhMZy3NmzkySmLsDmmHnG2csZ5vvefFRFZ1hSKfUtcV8EnLd3zozsiZByaLrED2XVbuHqPVzqcnrCJF8fSm49NcGDgsQkwnQwbuKfMkov9WwJoxhDSYG6e7WP", ], }, @@ -242,8 +242,8 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: request-terms 1`] = ` -Object { - "content": Object { +{ + "content": { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", }, "type": "request-terms", @@ -251,9 +251,9 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: submit-attestation 1`] = ` -Object { - "content": Object { - "attestation": Object { +{ + "content": { + "attestation": { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", "claimHash": "0x453559279a1816c20673194e21eb72f121e7b31f5b33ea3a8d3264d6f4d319ac", "delegationId": null, @@ -266,31 +266,31 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: submit-credential 1`] = ` -Object { - "content": Array [ - Object { - "claim": Object { +{ + "content": [ + { + "claim": { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", - "contents": Object { + "contents": { "name": "Bob", }, "owner": "did:kilt:light:004rzcHqKvv6TbsA46VpG53JrvdzRr6ccyboUNeCGTvDw2AozU:z1msTRicERqs59nwMvp3yzMRBhQhYShb1vEhbpWo5ZbqVAgi2UFELJk7MbUSeEfBdAVsJhdqcEAhXxH4YrV5nwgTYjFYszWKLFnYvSUhgZ7teDiLt1FbAo484ihnagUKQkE46o3fqSv52WgM6VatrEqetD3ekokxFtz4yn2vFYPdDMPmKE3cVxdKqPMa3Ewh6k46SENeEDZFLg1L8Yi73ZVEA9AwDg2RDuBDnpjetxBC6U5qMKVfqbh1rjgxpubpSj6sppHDq8xZ4LDU2bs1a9g6qcWJjkrtS69t3PTFZv5Ey84epnvbXEm8hsVnzTKsY6LbQmCiVqwKWUPUwXpj83", }, - "claimHashes": Array [ + "claimHashes": [ "0x901805bb5659ecf21cc79d50a98021d49eb83ee136a2609d4377dd615a271a78", "0xdaff2311c04ea4d2c16e9bd3dc4debba9822e5c4cfb53e36b48f090036169575", ], - "claimNonceMap": Object { + "claimNonceMap": { "0x499856031d06ddecbda0c1e0f1c0de4f53f614732f205190d81d0c76e793bdf0": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", "0x721cf4dd222afba0b79565332ac711cb634762052c3c2d45434f53f465d030f7": "1ee1307c-9e65-475d-9061-0b5bfd86d2f7", }, - "claimerSignature": Object { + "claimerSignature": { "challenge": "0xCAFE", "keyUri": "did:kilt:light:004rzcHqKvv6TbsA46VpG53JrvdzRr6ccyboUNeCGTvDw2AozU:z1msTRicERqs59nwMvp3yzMRBhQhYShb1vEhbpWo5ZbqVAgi2UFELJk7MbUSeEfBdAVsJhdqcEAhXxH4YrV5nwgTYjFYszWKLFnYvSUhgZ7teDiLt1FbAo484ihnagUKQkE46o3fqSv52WgM6VatrEqetD3ekokxFtz4yn2vFYPdDMPmKE3cVxdKqPMa3Ewh6k46SENeEDZFLg1L8Yi73ZVEA9AwDg2RDuBDnpjetxBC6U5qMKVfqbh1rjgxpubpSj6sppHDq8xZ4LDU2bs1a9g6qcWJjkrtS69t3PTFZv5Ey84epnvbXEm8hsVnzTKsY6LbQmCiVqwKWUPUwXpj83#authentication", "signature": "0x0000000000000000000000000000000000000000000000000000000000000000", }, "delegationId": null, - "legitimations": Array [], + "legitimations": [], "rootHash": "0x453559279a1816c20673194e21eb72f121e7b31f5b33ea3a8d3264d6f4d319ac", }, ], @@ -299,16 +299,16 @@ Object { `; exports[`Breaking Changes Messages does not break for attestation flow: submit-terms 1`] = ` -Object { - "content": Object { - "claim": Object { +{ + "content": { + "claim": { "cTypeHash": "0xd5301762c62114f6455e0b373cccce20631c2a717004a98f8953e738e17c5d3c", - "contents": Object { + "contents": { "name": "Bob", }, "owner": "did:kilt:light:004rn1Xps9QSMiAb2aMoKQbAred94wh1iLjGmNBYy1FVCS81ry:z1msTRicERqs59nwMvp3yzMRBhRatQoZZaiSZfyN7TzqeEs1bHHTCH3RURC6zWk5B8HXGZThZos9PJFJrkiYchNGbAGQRKSKucBVDVoXBLDyEm4P1dsco9wyoaWa5kkFw6DZgnKrTJg8Y8iCy7k2yo8GeMXAuR8qoBFFXj7Up7DxKJrMoQudvFHTy2uk2HPNfqkzJX17Wqsny1MKHD82eC3TcjrGCkhMZy3NmzkySmLsDmmHnG2csZ5vvefFRFZ1hSKfUtcV8EnLd3zozsiZByaLrED2XVbuHqPVzqcnrCJF8fSm49NcGDgsQkwnQwbuKfMkov9WwJoxhDSYG6e7WP", }, - "legitimations": Array [], + "legitimations": [], }, "type": "submit-terms", } diff --git a/tests/bundle-test.html b/tests/bundle/bundle-test.html similarity index 60% rename from tests/bundle-test.html rename to tests/bundle/bundle-test.html index 2ed21cbcb..ab8c4378e 100644 --- a/tests/bundle-test.html +++ b/tests/bundle/bundle-test.html @@ -1,13 +1,13 @@ - + Bundle tests - + diff --git a/tests/bundle-test.ts b/tests/bundle/bundle-test.ts similarity index 97% rename from tests/bundle-test.ts rename to tests/bundle/bundle-test.ts index 091ea0e0b..df39e0397 100644 --- a/tests/bundle-test.ts +++ b/tests/bundle/bundle-test.ts @@ -149,7 +149,9 @@ async function createFullDidFromKeypair( await Blockchain.signAndSubmitTx(storeTx, payer) const queryFunction = api.call.did?.query ?? api.call.didApi.queryDid - const encodedDidDetails = await queryFunction(Did.toChain(Did.getFullDidUriFromKey(keypair))) + const encodedDidDetails = await queryFunction( + Did.toChain(Did.getFullDidUriFromKey(keypair)) + ) return Did.linkedInfoFromChain(encodedDidDetails).document } @@ -223,7 +225,9 @@ async function runAll() { await Blockchain.signAndSubmitTx(didStoreTx, payer) const queryFunction = api.call.did?.query ?? api.call.didApi.queryDid - const encodedDidDetails = await queryFunction(Did.toChain(Did.getFullDidUriFromKey(keypair))) + const encodedDidDetails = await queryFunction( + Did.toChain(Did.getFullDidUriFromKey(keypair)) + ) const fullDid = Did.linkedInfoFromChain(encodedDidDetails).document const resolved = await Did.resolve(fullDid.uri) diff --git a/tests/bundle.spec.ts b/tests/bundle/bundle.spec.ts similarity index 75% rename from tests/bundle.spec.ts rename to tests/bundle/bundle.spec.ts index 88da2475f..eb541f350 100644 --- a/tests/bundle.spec.ts +++ b/tests/bundle/bundle.spec.ts @@ -7,10 +7,11 @@ /// -import { GenericContainer, Wait, StartedTestContainer } from 'testcontainers' +import type { StartedTestContainer } from 'testcontainers' import { test, expect } from '@playwright/test' import url from 'url' import path from 'path' +import { getStartedTestContainer } from '../integration/utils.js' declare global { interface Window { @@ -24,13 +25,7 @@ const WS_PORT = 9944 test.beforeAll(async () => { // start dev node with testcontainers - testcontainer = await new GenericContainer( - process.env.TESTCONTAINERS_NODE_IMG || 'kiltprotocol/mashnet-node:latest' - ) - .withCommand(['--dev', `--ws-port=${WS_PORT}`, '--ws-external']) - .withExposedPorts({ container: WS_PORT, host: WS_PORT }) - .withWaitStrategy(Wait.forLogMessage(`:${WS_PORT}`)) - .start() + testcontainer = await getStartedTestContainer(WS_PORT) }) test('html bundle integration test', async ({ page }) => { diff --git a/tests/playwright.config.ts b/tests/bundle/playwright.config.ts similarity index 100% rename from tests/playwright.config.ts rename to tests/bundle/playwright.config.ts diff --git a/tests/tsconfig.json b/tests/bundle/tsconfig.json similarity index 55% rename from tests/tsconfig.json rename to tests/bundle/tsconfig.json index 073b69d65..6ea1fa0bc 100644 --- a/tests/tsconfig.json +++ b/tests/bundle/tsconfig.json @@ -1,7 +1,8 @@ { - "extends": "../tsconfig.json", - "include": ["bundle-test.ts", "types.d.ts", "cbor-web.d.ts"], + "extends": "../../tsconfig.json", + "include": ["bundle-test.ts", "types.d.ts"], "compilerOptions": { + "baseUrl": "./", "module": "None", "resolveJsonModule": false, "sourceMap": false, diff --git a/tests/types.d.ts b/tests/bundle/types.d.ts similarity index 100% rename from tests/types.d.ts rename to tests/bundle/types.d.ts diff --git a/tests/cbor-web.d.ts b/tests/cbor-web.d.ts deleted file mode 100644 index 4def7650e..000000000 --- a/tests/cbor-web.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'cbor-web' diff --git a/packages/core/src/__integrationtests__/AccountLinking.spec.ts b/tests/integration/AccountLinking.spec.ts similarity index 98% rename from packages/core/src/__integrationtests__/AccountLinking.spec.ts rename to tests/integration/AccountLinking.spec.ts index 3f31ec64c..51b9da0ae 100644 --- a/packages/core/src/__integrationtests__/AccountLinking.spec.ts +++ b/tests/integration/AccountLinking.spec.ts @@ -5,33 +5,30 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/accountLinking - */ +import type { ApiPromise } from '@polkadot/api' +import { Keyring } from '@polkadot/keyring' +import { BN } from '@polkadot/util' +import { mnemonicGenerate } from '@polkadot/util-crypto' +import { BalanceUtils, disconnect } from '@kiltprotocol/core' import * as Did from '@kiltprotocol/did' -import { - createFullDidFromSeed, - KeyTool, - makeSigningKeyTool, -} from '@kiltprotocol/testing' import type { DidDocument, KeyringPair, KiltKeyringPair, } from '@kiltprotocol/types' -import { Keyring } from '@polkadot/keyring' -import { BN } from '@polkadot/util' -import type { ApiPromise } from '@polkadot/api' -import { mnemonicGenerate } from '@polkadot/util-crypto' -import { convertToTxUnit } from '../balance/Balance.utils' + +import { + createFullDidFromSeed, + KeyTool, + makeSigningKeyTool, +} from '../testUtils/index.js' import { createEndowedTestAccount, fundAccount, initializeApi, submitTx, -} from './utils' -import { disconnect } from '../kilt' +} from './utils.js' let paymentAccount: KiltKeyringPair let linkDeposit: BN @@ -289,7 +286,10 @@ describe('When there is an on-chain DID', () => { genericAccount = new Keyring({ type: 'ecdsa' }).addFromMnemonic( mnemonicGenerate() ) - await fundAccount(genericAccount.address, convertToTxUnit(new BN(10), 1)) + await fundAccount( + genericAccount.address, + BalanceUtils.convertToTxUnit(new BN(10), 1) + ) didKey = makeSigningKeyTool() newDidKey = makeSigningKeyTool() did = await createFullDidFromSeed(paymentAccount, didKey.keypair) diff --git a/packages/core/src/__integrationtests__/Attestation.spec.ts b/tests/integration/Attestation.spec.ts similarity index 98% rename from packages/core/src/__integrationtests__/Attestation.spec.ts rename to tests/integration/Attestation.spec.ts index 46883e811..09f205af0 100644 --- a/packages/core/src/__integrationtests__/Attestation.spec.ts +++ b/tests/integration/Attestation.spec.ts @@ -5,36 +5,36 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/attestation - */ +import type { ApiPromise } from '@polkadot/api' +import { + Attestation, + Claim, + Credential, + CType, + disconnect, +} from '@kiltprotocol/core' +import * as Did from '@kiltprotocol/did' import type { DidDocument, IAttestation, ICredential, KiltKeyringPair, } from '@kiltprotocol/types' +import { Crypto } from '@kiltprotocol/utils' + import { createFullDidFromSeed, KeyTool, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import * as Did from '@kiltprotocol/did' -import { Crypto } from '@kiltprotocol/utils' -import { ApiPromise } from '@polkadot/api' -import * as Attestation from '../attestation' -import * as Credential from '../credential' -import { disconnect } from '../kilt' -import * as Claim from '../claim' -import * as CType from '../ctype' +} from '../testUtils/index.js' import { createEndowedTestAccount, driversLicenseCType, initializeApi, isCtypeOnChain, submitTx, -} from './utils' +} from './utils.js' let tokenHolder: KiltKeyringPair let attester: DidDocument diff --git a/packages/core/src/__integrationtests__/Balance.spec.ts b/tests/integration/Balance.spec.ts similarity index 95% rename from packages/core/src/__integrationtests__/Balance.spec.ts rename to tests/integration/Balance.spec.ts index 555d2fa19..c05d58cc0 100644 --- a/packages/core/src/__integrationtests__/Balance.spec.ts +++ b/tests/integration/Balance.spec.ts @@ -5,16 +5,15 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/balance - */ +import { jest } from '@jest/globals' import { ApiPromise } from '@polkadot/api' import { BN } from '@polkadot/util' +import { disconnect } from '@kiltprotocol/core' import type { KeyringPair } from '@kiltprotocol/types' -import { makeSigningKeyTool } from '@kiltprotocol/testing' -import { disconnect } from '../kilt' + +import { makeSigningKeyTool } from '../testUtils/index.js' import { addressFromRandom, devAlice, @@ -23,7 +22,7 @@ import { EXISTENTIAL_DEPOSIT, initializeApi, submitTx, -} from './utils' +} from './utils.js' let api: ApiPromise beforeAll(async () => { @@ -66,7 +65,7 @@ describe('when there is a dev chain with a faucet', () => { // in the other test cases. it('should be able to faucet coins to a new address', async () => { const address = addressFromRandom() - const spy = jest.fn() + const spy = jest.fn() api.query.system.account(address, spy) const balanceBefore = (await api.query.system.account(faucet.address)).data const transferTx = api.tx.balances.transfer(address, EXISTENTIAL_DEPOSIT) @@ -140,7 +139,7 @@ describe('When there are haves and have-nots', () => { }, 30_000) it('should be able to make a new transaction once the last is ready', async () => { - const spy = jest.fn() + const spy = jest.fn() api.query.system.account(faucet.address, spy) const transferTx1 = api.tx.balances.transfer( @@ -158,7 +157,7 @@ describe('When there are haves and have-nots', () => { }, 30_000) it('should be able to make multiple transactions at once', async () => { - const listener = jest.fn() + const listener = jest.fn() api.query.system.account(faucet.address, listener) const batch = api.tx.utility.batchAll([ diff --git a/packages/core/src/__integrationtests__/Blockchain.spec.ts b/tests/integration/Blockchain.spec.ts similarity index 93% rename from packages/core/src/__integrationtests__/Blockchain.spec.ts rename to tests/integration/Blockchain.spec.ts index 74bfdbeda..d54729eb0 100644 --- a/packages/core/src/__integrationtests__/Blockchain.spec.ts +++ b/tests/integration/Blockchain.spec.ts @@ -5,20 +5,15 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/blockchain - */ - -import { BN } from '@polkadot/util' import type { ApiPromise } from '@polkadot/api' +import { BN } from '@polkadot/util' -import type { KeyringPair } from '@kiltprotocol/types' import { Blockchain } from '@kiltprotocol/chain-helpers' -import { makeSigningKeyTool } from '@kiltprotocol/testing' +import { BalanceUtils, disconnect } from '@kiltprotocol/core' +import type { KeyringPair } from '@kiltprotocol/types' -import { toFemtoKilt } from '../balance/Balance.utils' -import { devCharlie, devFaucet, initializeApi, submitTx } from './utils' -import { disconnect } from '../kilt' +import { makeSigningKeyTool } from '../testUtils/index.js' +import { devCharlie, devFaucet, initializeApi, submitTx } from './utils.js' let api: ApiPromise beforeAll(async () => { @@ -36,7 +31,7 @@ describe('Chain returns specific errors, that we check for', () => { const transferTx = api.tx.balances.transfer( testIdentity.address, - toFemtoKilt(10000) + BalanceUtils.toFemtoKilt(10000) ) await submitTx(transferTx, faucet) }, 40000) @@ -143,7 +138,11 @@ describe('Chain returns specific errors, that we check for', () => { ) const promiseToFail = Blockchain.dispatchTx(tx) - const promiseToUsurp = Blockchain.dispatchTx(errorTx) + const promiseToUsurp = new Promise((resolve) => { + setTimeout(() => { + resolve(Blockchain.dispatchTx(errorTx)) + }, 50) + }) await Promise.all([ expect(promiseToFail).rejects.toHaveProperty('status.isUsurped', true), promiseToUsurp, diff --git a/packages/core/src/__integrationtests__/Ctypes.spec.ts b/tests/integration/Ctypes.spec.ts similarity index 77% rename from packages/core/src/__integrationtests__/Ctypes.spec.ts rename to tests/integration/Ctypes.spec.ts index 4fac16e74..253a76ef8 100644 --- a/packages/core/src/__integrationtests__/Ctypes.spec.ts +++ b/tests/integration/Ctypes.spec.ts @@ -5,22 +5,19 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/ctype - */ +import type { ApiPromise } from '@polkadot/api' -import type { DidDocument, ICType, KiltKeyringPair } from '@kiltprotocol/types' +import { CType, disconnect } from '@kiltprotocol/core' import * as Did from '@kiltprotocol/did' +import type { DidDocument, ICType, KiltKeyringPair } from '@kiltprotocol/types' +import { Crypto, UUID } from '@kiltprotocol/utils' + import { - createFullDidFromSeed, KeyTool, + createFullDidFromSeed, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import { Crypto, UUID } from '@kiltprotocol/utils' -import { ApiPromise } from '@polkadot/api' -import * as CType from '../ctype' -import { disconnect } from '../kilt' -import { createEndowedTestAccount, initializeApi, submitTx } from './utils' +} from '../testUtils/index.js' +import { createEndowedTestAccount, initializeApi, submitTx } from './utils.js' let api: ApiPromise // we skip fetching CTypes from chain for the old pallet version, where the necessary information was not yet on chain. @@ -54,9 +51,9 @@ describe('When there is an CtypeCreator and a verifier', () => { }, 60_000) it('should not be possible to create a claim type w/o tokens', async () => { - const ctype = makeCType() + const cType = makeCType() const { keypair, getSignCallback } = makeSigningKeyTool() - const storeTx = api.tx.ctype.add(CType.toChain(ctype)) + const storeTx = api.tx.ctype.add(CType.toChain(cType)) const authorizedStoreTx = await Did.authorizeTx( ctypeCreator.uri, storeTx, @@ -64,15 +61,15 @@ describe('When there is an CtypeCreator and a verifier', () => { keypair.address ) await expect(submitTx(authorizedStoreTx, keypair)).rejects.toThrowError() - await expect(CType.verifyStored(ctype)).rejects.toThrow() + await expect(CType.verifyStored(cType)).rejects.toThrow() if (hasBlockNumbers) { - await expect(CType.fetchFromChain(ctype.$id)).rejects.toThrow() + await expect(CType.fetchFromChain(cType.$id)).rejects.toThrow() } }, 20_000) it('should be possible to create a claim type', async () => { - const ctype = makeCType() - const storeTx = api.tx.ctype.add(CType.toChain(ctype)) + const cType = makeCType() + const storeTx = api.tx.ctype.add(CType.toChain(cType)) const authorizedStoreTx = await Did.authorizeTx( ctypeCreator.uri, storeTx, @@ -82,18 +79,18 @@ describe('When there is an CtypeCreator and a verifier', () => { await submitTx(authorizedStoreTx, paymentAccount) if (hasBlockNumbers) { - const retrievedCType = await CType.fetchFromChain(ctype.$id) - // eslint-disable-next-line @typescript-eslint/no-unused-vars - const { createdAt, creator, ...originalCtype } = retrievedCType - expect(originalCtype).toStrictEqual(ctype) + const { cType: originalCtype, creator } = await CType.fetchFromChain( + cType.$id + ) + expect(originalCtype).toStrictEqual(cType) expect(creator).toBe(ctypeCreator.uri) - await expect(CType.verifyStored(retrievedCType)).resolves.not.toThrow() + await expect(CType.verifyStored(originalCtype)).resolves.not.toThrow() } }, 40_000) it('should not be possible to create a claim type that exists', async () => { - const ctype = makeCType() - const storeTx = api.tx.ctype.add(CType.toChain(ctype)) + const cType = makeCType() + const storeTx = api.tx.ctype.add(CType.toChain(cType)) const authorizedStoreTx = await Did.authorizeTx( ctypeCreator.uri, storeTx, @@ -102,7 +99,7 @@ describe('When there is an CtypeCreator and a verifier', () => { ) await submitTx(authorizedStoreTx, paymentAccount) - const storeTx2 = api.tx.ctype.add(CType.toChain(ctype)) + const storeTx2 = api.tx.ctype.add(CType.toChain(cType)) const authorizedStoreTx2 = await Did.authorizeTx( ctypeCreator.uri, storeTx2, @@ -117,7 +114,7 @@ describe('When there is an CtypeCreator and a verifier', () => { }) if (hasBlockNumbers) { - const retrievedCType = await CType.fetchFromChain(ctype.$id) + const retrievedCType = await CType.fetchFromChain(cType.$id) expect(retrievedCType.creator).toBe(ctypeCreator.uri) } }, 45_000) diff --git a/packages/core/src/__integrationtests__/Delegation.spec.ts b/tests/integration/Delegation.spec.ts similarity index 96% rename from packages/core/src/__integrationtests__/Delegation.spec.ts rename to tests/integration/Delegation.spec.ts index b2d56a31a..325ab53e0 100644 --- a/packages/core/src/__integrationtests__/Delegation.spec.ts +++ b/tests/integration/Delegation.spec.ts @@ -5,10 +5,18 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/delegation - */ +import { ApiPromise } from '@polkadot/api' +import { randomAsHex } from '@polkadot/util-crypto' +import { + Attestation, + CType, + Claim, + Credential, + DelegationNode, + disconnect, +} from '@kiltprotocol/core' +import * as Did from '@kiltprotocol/did' import type { DidDocument, ICType, @@ -17,20 +25,12 @@ import type { SignCallback, } from '@kiltprotocol/types' import { Permission, PermissionType } from '@kiltprotocol/types' + import { - createFullDidFromSeed, KeyTool, + createFullDidFromSeed, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import * as Did from '@kiltprotocol/did' -import { ApiPromise } from '@polkadot/api' -import { randomAsHex } from '@polkadot/util-crypto' -import * as Attestation from '../attestation' -import * as Claim from '../claim' -import * as CType from '../ctype' -import * as Credential from '../credential' -import { disconnect } from '../kilt' -import { DelegationNode } from '../delegation/DelegationNode' +} from '../testUtils/index.js' import { createEndowedTestAccount, devBob, @@ -38,8 +38,7 @@ import { initializeApi, isCtypeOnChain, submitTx, -} from './utils' -import { getAttestationHashes } from '../delegation/DelegationNode.chain' +} from './utils.js' let api: ApiPromise @@ -435,7 +434,14 @@ describe('handling queries to data not on chain', () => { }) it('getAttestationHashes on empty', async () => { - expect(await getAttestationHashes(randomAsHex(32))).toEqual([]) + expect( + await DelegationNode.newNode({ + permissions: [0], + hierarchyId: randomAsHex(32), + parentId: randomAsHex(32), + account: attester.uri, + }).getAttestationHashes() + ).toEqual([]) }) }) diff --git a/packages/core/src/__integrationtests__/Deposit.spec.ts b/tests/integration/Deposit.spec.ts similarity index 97% rename from packages/core/src/__integrationtests__/Deposit.spec.ts rename to tests/integration/Deposit.spec.ts index 65612e4fe..92f4f2da1 100644 --- a/packages/core/src/__integrationtests__/Deposit.spec.ts +++ b/tests/integration/Deposit.spec.ts @@ -5,18 +5,17 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/deposit - */ +import type { ApiPromise } from '@polkadot/api' +import { BN } from '@polkadot/util' -import * as Did from '@kiltprotocol/did' import { - createFullDidFromLightDid, - createFullDidFromSeed, - createMinimalLightDidFromKeypair, - KeyTool, - makeSigningKeyTool, -} from '@kiltprotocol/testing' + Attestation, + Claim, + Credential, + CType, + disconnect, +} from '@kiltprotocol/core' +import * as Did from '@kiltprotocol/did' import type { DidDocument, IAttestation, @@ -26,8 +25,13 @@ import type { SignCallback, SubmittableExtrinsic, } from '@kiltprotocol/types' -import type { ApiPromise } from '@polkadot/api' -import { BN } from '@polkadot/util' +import { + createFullDidFromLightDid, + createFullDidFromSeed, + createMinimalLightDidFromKeypair, + KeyTool, + makeSigningKeyTool, +} from '../testUtils/index.js' import { devFaucet, driversLicenseCTypeForDeposit as driversLicenseCType, @@ -35,12 +39,7 @@ import { initializeApi, isCtypeOnChain, submitTx, -} from './utils' -import * as Attestation from '../attestation' -import * as Claim from '../claim' -import * as Credential from '../credential' -import { disconnect } from '../kilt' -import * as CType from '../ctype' +} from './utils.js' let api: ApiPromise let tx: SubmittableExtrinsic diff --git a/packages/core/src/__integrationtests__/Did.spec.ts b/tests/integration/Did.spec.ts similarity index 96% rename from packages/core/src/__integrationtests__/Did.spec.ts rename to tests/integration/Did.spec.ts index b86915244..c81635f47 100644 --- a/packages/core/src/__integrationtests__/Did.spec.ts +++ b/tests/integration/Did.spec.ts @@ -5,21 +5,11 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/did - */ - import type { ApiPromise } from '@polkadot/api' import { BN } from '@polkadot/util' +import { CType, DelegationNode, disconnect } from '@kiltprotocol/core' import * as Did from '@kiltprotocol/did' -import { - createFullDidFromSeed, - createMinimalLightDidFromKeypair, - KeyTool, - makeEncryptionKeyTool, - makeSigningKeyTool, -} from '@kiltprotocol/testing' import { DidDocument, DidResolutionResult, @@ -33,15 +23,19 @@ import { } from '@kiltprotocol/types' import { UUID } from '@kiltprotocol/utils' -import * as CType from '../ctype' -import { disconnect } from '../kilt' +import { + createFullDidFromSeed, + createMinimalLightDidFromKeypair, + KeyTool, + makeEncryptionKeyTool, + makeSigningKeyTool, +} from '../testUtils/index.js' import { createEndowedTestAccount, devBob, initializeApi, submitTx, -} from './utils' -import { DelegationNode } from '../delegation' +} from './utils.js' let paymentAccount: KiltKeyringPair let api: ApiPromise @@ -54,11 +48,6 @@ beforeAll(async () => { paymentAccount = await createEndowedTestAccount() }, 30_000) -it('fetches the correct deposit amount', async () => { - const depositAmount = api.consts.did.deposit.toBn() - expect(depositAmount.toString()).toMatchInlineSnapshot('"2007900000000000"') -}) - describe('write and didDeleteTx', () => { let did: DidDocument let key: KeyTool @@ -520,8 +509,8 @@ describe('DID authorization', () => { }, 60_000) it('authorizes ctype creation with DID signature', async () => { - const ctype = CType.fromProperties(UUID.generate(), {}) - const call = api.tx.ctype.add(CType.toChain(ctype)) + const cType = CType.fromProperties(UUID.generate(), {}) + const call = api.tx.ctype.add(CType.toChain(cType)) const tx = await Did.authorizeTx( did.uri, call, @@ -530,7 +519,7 @@ describe('DID authorization', () => { ) await submitTx(tx, paymentAccount) - await expect(CType.verifyStored(ctype)).resolves.not.toThrow() + await expect(CType.verifyStored(cType)).resolves.not.toThrow() }, 60_000) it('no longer authorizes ctype creation after DID deletion', async () => { @@ -547,8 +536,8 @@ describe('DID authorization', () => { ) await submitTx(tx, paymentAccount) - const ctype = CType.fromProperties(UUID.generate(), {}) - const call = api.tx.ctype.add(CType.toChain(ctype)) + const cType = CType.fromProperties(UUID.generate(), {}) + const call = api.tx.ctype.add(CType.toChain(cType)) const tx2 = await Did.authorizeTx( did.uri, call, @@ -560,7 +549,7 @@ describe('DID authorization', () => { name: expect.stringMatching(/^(DidNotPresent|NotFound)$/), }) - await expect(CType.verifyStored(ctype)).rejects.toThrow() + await expect(CType.verifyStored(cType)).rejects.toThrow() }, 60_000) }) @@ -1018,12 +1007,12 @@ describe('DID extrinsics batching', () => { }, 50_000) it('simple batch succeeds despite failures of some extrinsics', async () => { - const ctype = CType.fromProperties(UUID.generate(), {}) - const ctypeStoreTx = api.tx.ctype.add(CType.toChain(ctype)) + const cType = CType.fromProperties(UUID.generate(), {}) + const ctypeStoreTx = api.tx.ctype.add(CType.toChain(cType)) const rootNode = DelegationNode.newRoot({ account: fullDid.uri, permissions: [Permission.DELEGATE], - cTypeHash: CType.idToHash(ctype.$id), + cTypeHash: CType.idToHash(cType.$id), }) const delegationStoreTx = await rootNode.getStoreTx() const delegationRevocationTx = await rootNode.getRevokeTx(fullDid.uri) @@ -1044,16 +1033,16 @@ describe('DID extrinsics batching', () => { await submitTx(tx, paymentAccount) // The ctype has been created, even though the delegation operations failed. - await expect(CType.verifyStored(ctype)).resolves.not.toThrow() + await expect(CType.verifyStored(cType)).resolves.not.toThrow() }) it('batchAll fails if any extrinsics fail', async () => { - const ctype = CType.fromProperties(UUID.generate(), {}) - const ctypeStoreTx = api.tx.ctype.add(CType.toChain(ctype)) + const cType = CType.fromProperties(UUID.generate(), {}) + const ctypeStoreTx = api.tx.ctype.add(CType.toChain(cType)) const rootNode = DelegationNode.newRoot({ account: fullDid.uri, permissions: [Permission.DELEGATE], - cTypeHash: CType.idToHash(ctype.$id), + cTypeHash: CType.idToHash(cType.$id), }) const delegationStoreTx = await rootNode.getStoreTx() const delegationRevocationTx = await rootNode.getRevokeTx(fullDid.uri) @@ -1077,7 +1066,7 @@ describe('DID extrinsics batching', () => { }) // The ctype has not been created, since atomicity ensures the whole batch is reverted in case of failure. - await expect(CType.verifyStored(ctype)).rejects.toThrow() + await expect(CType.verifyStored(cType)).rejects.toThrow() }) it('can batch extrinsics for the same required key type', async () => { @@ -1267,7 +1256,7 @@ describe('Runtime constraints', () => { }) it('should not be possible to create a DID with a service endpoint that has too many URIs', async () => { - const uris = ['x:url-1', 'x:url-2'] + const uris = ['x:url-1', 'x:url-2', 'x:url-3'] const limit = api.consts.did.maxNumberOfUrlsPerService.toNumber() expect(uris.length).toBeGreaterThan(limit) }) diff --git a/packages/core/src/__integrationtests__/ErrorHandler.spec.ts b/tests/integration/ErrorHandler.spec.ts similarity index 72% rename from packages/core/src/__integrationtests__/ErrorHandler.spec.ts rename to tests/integration/ErrorHandler.spec.ts index 497cc4139..26f7a6e9e 100644 --- a/packages/core/src/__integrationtests__/ErrorHandler.spec.ts +++ b/tests/integration/ErrorHandler.spec.ts @@ -5,30 +5,28 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/errorhandler - */ - -import { BN } from '@polkadot/util' import { ApiPromise } from '@polkadot/api' + +import { disconnect } from '@kiltprotocol/core' +import * as Did from '@kiltprotocol/did' import type { DidDocument, IAttestation, KiltKeyringPair, } from '@kiltprotocol/types' + import { - createFullDidFromSeed, KeyTool, + createFullDidFromSeed, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import * as Did from '@kiltprotocol/did' -import { disconnect } from '../kilt' +} from '../testUtils/index.js' + import { addressFromRandom, createEndowedTestAccount, initializeApi, submitTx, -} from './utils' +} from './utils.js' let paymentAccount: KiltKeyringPair let someDid: DidDocument @@ -46,11 +44,29 @@ beforeAll(async () => { }, 60_000) it('records an extrinsic error when transferring less than the existential amount to new identity', async () => { - const transferTx = api.tx.balances.transfer(addressFromRandom(), new BN(1)) - await expect(submitTx(transferTx, paymentAccount)).rejects.toMatchObject({ - section: 'balances', - name: 'ExistentialDeposit', - }) + const transferTx = api.tx.balances.transfer(addressFromRandom(), 1) + const promise = submitTx(transferTx, paymentAccount) + if (api.runtimeVersion.specVersion.toBigInt() >= 11_200n) { + await expect(promise).rejects.toMatchInlineSnapshot(` + { + "token": "BelowMinimum", + } + `) + } else { + await expect(promise).rejects.toMatchInlineSnapshot(` + { + "args": [], + "docs": [ + "Value too low to create account due to existential deposit", + ], + "fields": [], + "index": 3, + "method": "ExistentialDeposit", + "name": "ExistentialDeposit", + "section": "balances", + } + `) + } }, 30_000) it('records an extrinsic error when ctype does not exist', async () => { diff --git a/packages/core/src/__integrationtests__/PublicCredentials.spec.ts b/tests/integration/PublicCredentials.spec.ts similarity index 98% rename from packages/core/src/__integrationtests__/PublicCredentials.spec.ts rename to tests/integration/PublicCredentials.spec.ts index 0b4f221a5..f28799855 100644 --- a/packages/core/src/__integrationtests__/PublicCredentials.spec.ts +++ b/tests/integration/PublicCredentials.spec.ts @@ -5,31 +5,27 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/publicCredentials - */ - -import type { ApiPromise } from '@polkadot/api' -import type { HexString } from '@polkadot/util/types' import type { AssetDidUri, DidDocument, + HexString, IPublicCredential, IPublicCredentialInput, KiltKeyringPair, } from '@kiltprotocol/types' - +import type { ApiPromise } from '@polkadot/api' import { BN } from '@polkadot/util' import { randomAsHex } from '@polkadot/util-crypto' + +import { CType, disconnect, PublicCredential } from '@kiltprotocol/core' import * as Did from '@kiltprotocol/did' +import { UUID } from '@kiltprotocol/utils' + import { createFullDidFromSeed, KeyTool, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import { UUID } from '@kiltprotocol/utils' -import * as CType from '../ctype' -import * as PublicCredential from '../publicCredential' +} from '../testUtils/index.js' import { createEndowedTestAccount, devAlice, @@ -37,8 +33,7 @@ import { isCtypeOnChain, nftNameCType, submitTx, -} from './utils' -import { disconnect } from '../kilt' +} from './utils.js' let tokenHolder: KiltKeyringPair let attester: DidDocument diff --git a/packages/core/src/__integrationtests__/Web3Names.spec.ts b/tests/integration/Web3Names.spec.ts similarity index 98% rename from packages/core/src/__integrationtests__/Web3Names.spec.ts rename to tests/integration/Web3Names.spec.ts index da6b9bba9..1c00908e5 100644 --- a/packages/core/src/__integrationtests__/Web3Names.spec.ts +++ b/tests/integration/Web3Names.spec.ts @@ -5,26 +5,23 @@ * found in the LICENSE file in the root directory of this source tree. */ -/** - * @group integration/web3name - */ - +import type { ApiPromise } from '@polkadot/api' import { randomAsHex } from '@polkadot/util-crypto' +import { disconnect } from '@kiltprotocol/core' +import * as Did from '@kiltprotocol/did' import type { DidDocument, KeyringPair, KiltKeyringPair, } from '@kiltprotocol/types' + import { - createFullDidFromSeed, KeyTool, + createFullDidFromSeed, makeSigningKeyTool, -} from '@kiltprotocol/testing' -import * as Did from '@kiltprotocol/did' -import type { ApiPromise } from '@polkadot/api' -import { disconnect } from '../kilt' -import { createEndowedTestAccount, initializeApi, submitTx } from './utils' +} from '../testUtils/index.js' +import { createEndowedTestAccount, initializeApi, submitTx } from './utils.js' let api: ApiPromise diff --git a/tests/integration/jest.config.integration.esm.js b/tests/integration/jest.config.integration.esm.js new file mode 100644 index 000000000..d1278ccff --- /dev/null +++ b/tests/integration/jest.config.integration.esm.js @@ -0,0 +1,12 @@ +module.exports = { + testEnvironment: "node", + clearMocks: true, + // Parachain block time is 12s + testTimeout: 120_000, + maxWorkers: 3, + roots: ["dist"], + transform: {}, + moduleDirectories: [ + "node_modules", + ], +} diff --git a/tests/integration/jest.config.integration.js b/tests/integration/jest.config.integration.js new file mode 100644 index 000000000..7776ab565 --- /dev/null +++ b/tests/integration/jest.config.integration.js @@ -0,0 +1,13 @@ +module.exports = { + preset: "ts-jest", + testEnvironment: "node", + clearMocks: true, + // Parachain block time is 12s + testTimeout: 120_000, + maxWorkers: 3, + testPathIgnorePatterns: ["dist"], + resolver: "ts-jest-resolver", + moduleDirectories: [ + "node_modules", + ], +} diff --git a/tests/integration/tsconfig.esm.json b/tests/integration/tsconfig.esm.json new file mode 100644 index 000000000..fac8f2c04 --- /dev/null +++ b/tests/integration/tsconfig.esm.json @@ -0,0 +1,9 @@ +{ + "extends": "../../tsconfig.json", + "include": ["*.ts"], + "compilerOptions": { + "module": "ES6", + "baseUrl": "./", + "outDir": "dist" + } +} diff --git a/packages/core/src/__integrationtests__/utils.ts b/tests/integration/utils.ts similarity index 71% rename from packages/core/src/__integrationtests__/utils.ts rename to tests/integration/utils.ts index ee15e867f..93d888092 100644 --- a/packages/core/src/__integrationtests__/utils.ts +++ b/tests/integration/utils.ts @@ -8,13 +8,14 @@ /* eslint-disable @typescript-eslint/no-non-null-assertion */ /* eslint-disable no-console */ +import type { ApiPromise } from '@polkadot/api' import { BN } from '@polkadot/util' -import { ApiPromise } from '@polkadot/api' + import { GenericContainer, StartedTestContainer, Wait } from 'testcontainers' -import { Crypto } from '@kiltprotocol/utils' -import { makeSigningKeyTool } from '@kiltprotocol/testing' import { Blockchain } from '@kiltprotocol/chain-helpers' +import { ConfigService } from '@kiltprotocol/config' +import { CType, connect, init } from '@kiltprotocol/core' import type { ICType, KeyringPair, @@ -23,33 +24,52 @@ import type { SubmittableExtrinsic, SubscriptionPromise, } from '@kiltprotocol/types' -import { ConfigService } from '@kiltprotocol/config' +import { Crypto } from '@kiltprotocol/utils' -import * as CType from '../ctype' -import { connect, init } from '../kilt' +import { makeSigningKeyTool } from '../testUtils/TestUtils.js' export const EXISTENTIAL_DEPOSIT = new BN(10 ** 13) const ENDOWMENT = EXISTENTIAL_DEPOSIT.muln(10000) const WS_PORT = 9944 -async function getStartedTestContainer(): Promise { - try { - const image = - process.env.TESTCONTAINERS_NODE_IMG || 'kiltprotocol/mashnet-node' - console.log(`using testcontainer with image ${image}`) - const testcontainer = new GenericContainer(image) - .withCommand(['--dev', `--ws-port=${WS_PORT}`, '--ws-external']) - .withExposedPorts(WS_PORT) - .withWaitStrategy(Wait.forLogMessage(`:${WS_PORT}`)) - const started = await testcontainer.start() - return started - } catch (error) { - console.error( - 'Could not start the docker container via testcontainers, run with DEBUG=testcontainers* to debug' - ) - throw error +export async function getStartedTestContainer( + hostPort?: number +): Promise { + const image = + process.env.TESTCONTAINERS_NODE_IMG || 'kiltprotocol/mashnet-node' + console.log(`using testcontainer with image ${image}`) + const strategies = [ + ['--dev', '--ws-external', `--ws-port=${WS_PORT}`], + ['--dev', '--rpc-external', `--rpc-port=${WS_PORT}`], + ] + // eslint-disable-next-line no-restricted-syntax + for (const args of strategies) { + console.log(`attempting to launch container with arguments ${args}`) + try { + const testcontainer = new GenericContainer(image) + .withCommand(args) + .withExposedPorts( + typeof hostPort === 'number' + ? { host: hostPort, container: WS_PORT } + : WS_PORT + ) + .withWaitStrategy(Wait.forLogMessage(`:${WS_PORT}`)) + // eslint-disable-next-line no-await-in-loop + const started = await testcontainer.start() + console.log('container started and ready') + return started + } catch (error) { + console.warn( + 'Failed to start container due to the following error:\n', + error + ) + } } + console.error( + 'Could not start the docker container via testcontainers, run with DEBUG=testcontainers* to debug' + ) + throw new Error('CONTAINER LAUNCH ERROR') } async function buildConnection(wsEndpoint: string): Promise { @@ -69,7 +89,7 @@ export async function initializeApi(): Promise { return buildConnection(TEST_WS_ADDRESS) } const started = await getStartedTestContainer() - const port = started.getMappedPort(9944) + const port = started.getMappedPort(WS_PORT) const host = started.getHost() const WS_ADDRESS = `ws://${host}:${port}` console.log(`connecting to test container at ${WS_ADDRESS}`) @@ -92,9 +112,9 @@ export function addressFromRandom(): KiltAddress { return makeSigningKeyTool('ed25519').keypair.address } -export async function isCtypeOnChain(ctype: ICType): Promise { +export async function isCtypeOnChain(cType: ICType): Promise { try { - await CType.verifyStored(ctype) + await CType.verifyStored(cType) return true } catch { return false diff --git a/tests/jest.setup.js b/tests/jest.setup.js new file mode 100644 index 000000000..0ce07364d --- /dev/null +++ b/tests/jest.setup.js @@ -0,0 +1,5 @@ +const { cryptoWaitReady } = require('@polkadot/util-crypto') + +beforeAll(async () => { + await cryptoWaitReady() +}) diff --git a/packages/testing/src/TestUtils.ts b/tests/testUtils/TestUtils.ts similarity index 100% rename from packages/testing/src/TestUtils.ts rename to tests/testUtils/TestUtils.ts diff --git a/packages/testing/src/index.ts b/tests/testUtils/index.ts similarity index 100% rename from packages/testing/src/index.ts rename to tests/testUtils/index.ts diff --git a/packages/testing/src/metadata/spiritnet.ts b/tests/testUtils/metadata/spiritnet.ts similarity index 66% rename from packages/testing/src/metadata/spiritnet.ts rename to tests/testUtils/metadata/spiritnet.ts index 341f1d6ea..26dba2867 100644 --- a/packages/testing/src/metadata/spiritnet.ts +++ b/tests/testUtils/metadata/spiritnet.ts @@ -7,11 +7,11 @@ import { readFileSync } from 'fs' import path from 'path' -import type { HexString } from '@polkadot/util/types' +import type { HexString } from '@kiltprotocol/types' -const META_PATH = '../../../../augment-api/metadata/spiritnet.json' +const META_PATH = 'packages/augment-api/metadata/spiritnet.json' const { result: metaHex } = JSON.parse( - readFileSync(path.join(__dirname, META_PATH), { encoding: 'utf-8' }) + readFileSync(path.resolve(META_PATH), { encoding: 'utf-8' }) ) /* eslint-disable import/no-default-export */ diff --git a/packages/testing/src/mocks/index.ts b/tests/testUtils/mocks/index.ts similarity index 100% rename from packages/testing/src/mocks/index.ts rename to tests/testUtils/mocks/index.ts diff --git a/packages/testing/src/mocks/mockedApi.ts b/tests/testUtils/mocks/mockedApi.ts similarity index 100% rename from packages/testing/src/mocks/mockedApi.ts rename to tests/testUtils/mocks/mockedApi.ts diff --git a/packages/testing/src/mocks/mockedApi.utils.ts b/tests/testUtils/mocks/mockedApi.utils.ts similarity index 100% rename from packages/testing/src/mocks/mockedApi.utils.ts rename to tests/testUtils/mocks/mockedApi.utils.ts diff --git a/packages/testing/src/mocks/typeRegistry.ts b/tests/testUtils/mocks/typeRegistry.ts similarity index 96% rename from packages/testing/src/mocks/typeRegistry.ts rename to tests/testUtils/mocks/typeRegistry.ts index 457bc8773..a2aa7f1ae 100644 --- a/packages/testing/src/mocks/typeRegistry.ts +++ b/tests/testUtils/mocks/typeRegistry.ts @@ -8,12 +8,12 @@ // This module is not part of the public-facing api. /* eslint-disable jsdoc/require-jsdoc */ -import type { HexString } from '@polkadot/util/types' - import { ApiPromise, WsProvider } from '@polkadot/api' import { Metadata, TypeRegistry } from '@polkadot/types' import { types } from '@kiltprotocol/type-definitions' +import type { HexString } from '@kiltprotocol/types' + import metaStatic from '../metadata/spiritnet.js' // adapted from https://github.com/polkadot-js/apps/blob/master/packages/test-support/src/api/createAugmentedApi.ts diff --git a/tsconfig.docs.json b/tsconfig.docs.json index 07250952d..1a9740e2f 100644 --- a/tsconfig.docs.json +++ b/tsconfig.docs.json @@ -1,6 +1,6 @@ { "extends": "./tsconfig.json", - "include": ["packages/**/*", "jest-setup/*"], + "include": ["packages/**/*"], "typedocOptions": { "entryPointStrategy": "resolve", "entryPoints": [ @@ -31,7 +31,6 @@ "excludePrivate": true, "hideGenerator": true, "name": "API Documentation", - "listInvalidSymbolLinks": true, "readme": "README.md" } } diff --git a/tsconfig.json b/tsconfig.json index cf928ba32..a447ff164 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,6 @@ { "extends": "./tsconfig.build.json", - "include": ["packages/**/*", "jest-setup/*", "docs/*"], + "include": ["packages/**/*", "docs/*", "tests/**/*"], "compilerOptions": { "baseUrl": "./packages", "sourceMap": true, @@ -16,7 +16,6 @@ "@kiltprotocol/did": ["did/src"], "@kiltprotocol/asset-did": ["asset-did/src"], "@kiltprotocol/docs": ["docs/src"], - "@kiltprotocol/testing": ["testing/src"], "@kiltprotocol/augment-api": ["augment-api/src"], "@kiltprotocol/augment-api/extraDefs": ["augment-api/src/interfaces/extraDefs"], "@kiltprotocol/type-definitions": ["type-definitions/src"], diff --git a/yarn.lock b/yarn.lock index ef459b63e..cb93862ab 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,12 +5,13 @@ __metadata: version: 6 cacheKey: 8 -"@ampproject/remapping@npm:^2.1.0": - version: 2.1.2 - resolution: "@ampproject/remapping@npm:2.1.2" +"@ampproject/remapping@npm:^2.2.0": + version: 2.2.1 + resolution: "@ampproject/remapping@npm:2.2.1" dependencies: - "@jridgewell/trace-mapping": ^0.3.0 - checksum: e023f92cdd9723f3042cde3b4d922adfeef0e198aa73486b0b6c034ad36af5f96e5c0cc72b335b30b2eb9852d907efc92af6bfcd3f4b4d286177ee32a189cf92 + "@jridgewell/gen-mapping": ^0.3.0 + "@jridgewell/trace-mapping": ^0.3.9 + checksum: 03c04fd526acc64a1f4df22651186f3e5ef0a9d6d6530ce4482ec9841269cf7a11dbb8af79237c282d721c5312024ff17529cd72cc4768c11e999b58e2302079 languageName: node linkType: hard @@ -23,53 +24,54 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/code-frame@npm:7.18.6" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/code-frame@npm:7.22.5" dependencies: - "@babel/highlight": ^7.18.6 - checksum: 195e2be3172d7684bf95cff69ae3b7a15a9841ea9d27d3c843662d50cdd7d6470fd9c8e64be84d031117e4a4083486effba39f9aef6bbb2c89f7f21bcfba33ba + "@babel/highlight": ^7.22.5 + checksum: cfe804f518f53faaf9a1d3e0f9f74127ab9a004912c3a16fda07fb6a633393ecb9918a053cb71804204c1b7ec3d49e1699604715e2cfb0c9f7bc4933d324ebb6 languageName: node linkType: hard -"@babel/compat-data@npm:^7.17.7, @babel/compat-data@npm:^7.20.0, @babel/compat-data@npm:^7.20.1": - version: 7.20.1 - resolution: "@babel/compat-data@npm:7.20.1" - checksum: 989b9b7a6fe43c547bb8329241bd0ba6983488b83d29cc59de35536272ee6bb4cc7487ba6c8a4bceebb3a57f8c5fea1434f80bbbe75202bc79bc1110f955ff25 +"@babel/compat-data@npm:^7.17.7, @babel/compat-data@npm:^7.20.1, @babel/compat-data@npm:^7.22.9": + version: 7.22.9 + resolution: "@babel/compat-data@npm:7.22.9" + checksum: bed77d9044ce948b4327b30dd0de0779fa9f3a7ed1f2d31638714ed00229fa71fc4d1617ae0eb1fad419338d3658d0e9a5a083297451e09e73e078d0347ff808 languageName: node linkType: hard -"@babel/core@npm:^7.1.0, @babel/core@npm:^7.12.3, @babel/core@npm:^7.7.2, @babel/core@npm:^7.8.0": - version: 7.20.5 - resolution: "@babel/core@npm:7.20.5" +"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3": + version: 7.22.9 + resolution: "@babel/core@npm:7.22.9" dependencies: - "@ampproject/remapping": ^2.1.0 - "@babel/code-frame": ^7.18.6 - "@babel/generator": ^7.20.5 - "@babel/helper-compilation-targets": ^7.20.0 - "@babel/helper-module-transforms": ^7.20.2 - "@babel/helpers": ^7.20.5 - "@babel/parser": ^7.20.5 - "@babel/template": ^7.18.10 - "@babel/traverse": ^7.20.5 - "@babel/types": ^7.20.5 + "@ampproject/remapping": ^2.2.0 + "@babel/code-frame": ^7.22.5 + "@babel/generator": ^7.22.9 + "@babel/helper-compilation-targets": ^7.22.9 + "@babel/helper-module-transforms": ^7.22.9 + "@babel/helpers": ^7.22.6 + "@babel/parser": ^7.22.7 + "@babel/template": ^7.22.5 + "@babel/traverse": ^7.22.8 + "@babel/types": ^7.22.5 convert-source-map: ^1.7.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 - json5: ^2.2.1 - semver: ^6.3.0 - checksum: 9547f1e6364bc58c3621e3b17ec17f0d034ff159e5a520091d9381608d40af3be4042dd27c20ad7d3e938422d75850ac56a3758d6801d65df701557af4bd244b + json5: ^2.2.2 + semver: ^6.3.1 + checksum: 7bf069aeceb417902c4efdaefab1f7b94adb7dea694a9aed1bda2edf4135348a080820529b1a300c6f8605740a00ca00c19b2d5e74b5dd489d99d8c11d5e56d1 languageName: node linkType: hard -"@babel/generator@npm:^7.20.5, @babel/generator@npm:^7.7.2": - version: 7.20.5 - resolution: "@babel/generator@npm:7.20.5" +"@babel/generator@npm:^7.22.7, @babel/generator@npm:^7.22.9, @babel/generator@npm:^7.7.2": + version: 7.22.9 + resolution: "@babel/generator@npm:7.22.9" dependencies: - "@babel/types": ^7.20.5 + "@babel/types": ^7.22.5 "@jridgewell/gen-mapping": ^0.3.2 + "@jridgewell/trace-mapping": ^0.3.17 jsesc: ^2.5.1 - checksum: 31c10d1e122f08cf755a24bd6f5d197f47eceba03f1133759687d00ab72d210e60ba4011da42f368b6e9fa85cbfda7dc4adb9889c2c20cc5c34bb2d57c1deab7 + checksum: 7c9d2c58b8d5ac5e047421a6ab03ec2ff5d9a5ff2c2212130a0055e063ac349e0b19d435537d6886c999771aef394832e4f54cd9fc810100a7f23d982f6af06b languageName: node linkType: hard @@ -92,17 +94,18 @@ __metadata: languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.17.7, @babel/helper-compilation-targets@npm:^7.18.9, @babel/helper-compilation-targets@npm:^7.20.0": - version: 7.20.0 - resolution: "@babel/helper-compilation-targets@npm:7.20.0" +"@babel/helper-compilation-targets@npm:^7.17.7, @babel/helper-compilation-targets@npm:^7.18.9, @babel/helper-compilation-targets@npm:^7.20.0, @babel/helper-compilation-targets@npm:^7.22.9": + version: 7.22.9 + resolution: "@babel/helper-compilation-targets@npm:7.22.9" dependencies: - "@babel/compat-data": ^7.20.0 - "@babel/helper-validator-option": ^7.18.6 - browserslist: ^4.21.3 - semver: ^6.3.0 + "@babel/compat-data": ^7.22.9 + "@babel/helper-validator-option": ^7.22.5 + browserslist: ^4.21.9 + lru-cache: ^5.1.1 + semver: ^6.3.1 peerDependencies: "@babel/core": ^7.0.0 - checksum: bc183f2109648849c8fde0b3c5cf08adf2f7ad6dc617b546fd20f34c8ef574ee5ee293c8d1bd0ed0221212e8f5907cdc2c42097870f1dcc769a654107d82c95b + checksum: ea0006c6a93759025f4a35a25228ae260538c9f15023e8aac2a6d45ca68aef4cf86cfc429b19af9a402cbdd54d5de74ad3fbcf6baa7e48184dc079f1a791e178 languageName: node linkType: hard @@ -151,10 +154,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-environment-visitor@npm:^7.18.9": - version: 7.18.9 - resolution: "@babel/helper-environment-visitor@npm:7.18.9" - checksum: b25101f6162ddca2d12da73942c08ad203d7668e06663df685634a8fde54a98bc015f6f62938e8554457a592a024108d45b8f3e651fd6dcdb877275b73cc4420 +"@babel/helper-environment-visitor@npm:^7.18.9, @babel/helper-environment-visitor@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-environment-visitor@npm:7.22.5" + checksum: 248532077d732a34cd0844eb7b078ff917c3a8ec81a7f133593f71a860a582f05b60f818dc5049c2212e5baa12289c27889a4b81d56ef409b4863db49646c4b1 languageName: node linkType: hard @@ -167,22 +170,22 @@ __metadata: languageName: node linkType: hard -"@babel/helper-function-name@npm:^7.18.9, @babel/helper-function-name@npm:^7.19.0": - version: 7.19.0 - resolution: "@babel/helper-function-name@npm:7.19.0" +"@babel/helper-function-name@npm:^7.18.9, @babel/helper-function-name@npm:^7.19.0, @babel/helper-function-name@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-function-name@npm:7.22.5" dependencies: - "@babel/template": ^7.18.10 - "@babel/types": ^7.19.0 - checksum: eac1f5db428ba546270c2b8d750c24eb528b8fcfe50c81de2e0bdebf0e20f24bec688d4331533b782e4a907fad435244621ca2193cfcf80a86731299840e0f6e + "@babel/template": ^7.22.5 + "@babel/types": ^7.22.5 + checksum: 6b1f6ce1b1f4e513bf2c8385a557ea0dd7fa37971b9002ad19268ca4384bbe90c09681fe4c076013f33deabc63a53b341ed91e792de741b4b35e01c00238177a languageName: node linkType: hard -"@babel/helper-hoist-variables@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-hoist-variables@npm:7.18.6" +"@babel/helper-hoist-variables@npm:^7.18.6, @babel/helper-hoist-variables@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-hoist-variables@npm:7.22.5" dependencies: - "@babel/types": ^7.18.6 - checksum: fd9c35bb435fda802bf9ff7b6f2df06308a21277c6dec2120a35b09f9de68f68a33972e2c15505c1a1a04b36ec64c9ace97d4a9e26d6097b76b4396b7c5fa20f + "@babel/types": ^7.22.5 + checksum: 394ca191b4ac908a76e7c50ab52102669efe3a1c277033e49467913c7ed6f7c64d7eacbeabf3bed39ea1f41731e22993f763b1edce0f74ff8563fd1f380d92cc languageName: node linkType: hard @@ -195,28 +198,27 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-module-imports@npm:7.18.6" +"@babel/helper-module-imports@npm:^7.18.6, @babel/helper-module-imports@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-module-imports@npm:7.22.5" dependencies: - "@babel/types": ^7.18.6 - checksum: f393f8a3b3304b1b7a288a38c10989de754f01d29caf62ce7c4e5835daf0a27b81f3ac687d9d2780d39685aae7b55267324b512150e7b2be967b0c493b6a1def + "@babel/types": ^7.22.5 + checksum: 9ac2b0404fa38b80bdf2653fbeaf8e8a43ccb41bd505f9741d820ed95d3c4e037c62a1bcdcb6c9527d7798d2e595924c4d025daed73283badc180ada2c9c49ad languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.18.6, @babel/helper-module-transforms@npm:^7.19.6, @babel/helper-module-transforms@npm:^7.20.2": - version: 7.20.2 - resolution: "@babel/helper-module-transforms@npm:7.20.2" +"@babel/helper-module-transforms@npm:^7.18.6, @babel/helper-module-transforms@npm:^7.19.6, @babel/helper-module-transforms@npm:^7.22.9": + version: 7.22.9 + resolution: "@babel/helper-module-transforms@npm:7.22.9" dependencies: - "@babel/helper-environment-visitor": ^7.18.9 - "@babel/helper-module-imports": ^7.18.6 - "@babel/helper-simple-access": ^7.20.2 - "@babel/helper-split-export-declaration": ^7.18.6 - "@babel/helper-validator-identifier": ^7.19.1 - "@babel/template": ^7.18.10 - "@babel/traverse": ^7.20.1 - "@babel/types": ^7.20.2 - checksum: 33a60ca115f6fce2c9d98e2a2e5649498aa7b23e2ae3c18745d7a021487708fc311458c33542f299387a0da168afccba94116e077f2cce49ae9e5ab83399e8a2 + "@babel/helper-environment-visitor": ^7.22.5 + "@babel/helper-module-imports": ^7.22.5 + "@babel/helper-simple-access": ^7.22.5 + "@babel/helper-split-export-declaration": ^7.22.6 + "@babel/helper-validator-identifier": ^7.22.5 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 2751f77660518cf4ff027514d6f4794f04598c6393be7b04b8e46c6e21606e11c19f3f57ab6129a9c21bacdf8b3ffe3af87bb401d972f34af2d0ffde02ac3001 languageName: node linkType: hard @@ -229,10 +231,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.16.7, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.18.9, @babel/helper-plugin-utils@npm:^7.19.0, @babel/helper-plugin-utils@npm:^7.20.2, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": - version: 7.20.2 - resolution: "@babel/helper-plugin-utils@npm:7.20.2" - checksum: f6cae53b7fdb1bf3abd50fa61b10b4470985b400cc794d92635da1e7077bb19729f626adc0741b69403d9b6e411cddddb9c0157a709cc7c4eeb41e663be5d74b +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.16.7, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.18.9, @babel/helper-plugin-utils@npm:^7.19.0, @babel/helper-plugin-utils@npm:^7.20.2, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": + version: 7.22.5 + resolution: "@babel/helper-plugin-utils@npm:7.22.5" + checksum: c0fc7227076b6041acd2f0e818145d2e8c41968cc52fb5ca70eed48e21b8fe6dd88a0a91cbddf4951e33647336eb5ae184747ca706817ca3bef5e9e905151ff5 languageName: node linkType: hard @@ -263,12 +265,12 @@ __metadata: languageName: node linkType: hard -"@babel/helper-simple-access@npm:^7.19.4, @babel/helper-simple-access@npm:^7.20.2": - version: 7.20.2 - resolution: "@babel/helper-simple-access@npm:7.20.2" +"@babel/helper-simple-access@npm:^7.19.4, @babel/helper-simple-access@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-simple-access@npm:7.22.5" dependencies: - "@babel/types": ^7.20.2 - checksum: ad1e96ee2e5f654ffee2369a586e5e8d2722bf2d8b028a121b4c33ebae47253f64d420157b9f0a8927aea3a9e0f18c0103e74fdd531815cf3650a0a4adca11a1 + "@babel/types": ^7.22.5 + checksum: fe9686714caf7d70aedb46c3cce090f8b915b206e09225f1e4dbc416786c2fdbbee40b38b23c268b7ccef749dd2db35f255338fb4f2444429874d900dede5ad2 languageName: node linkType: hard @@ -281,33 +283,33 @@ __metadata: languageName: node linkType: hard -"@babel/helper-split-export-declaration@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-split-export-declaration@npm:7.18.6" +"@babel/helper-split-export-declaration@npm:^7.18.6, @babel/helper-split-export-declaration@npm:^7.22.6": + version: 7.22.6 + resolution: "@babel/helper-split-export-declaration@npm:7.22.6" dependencies: - "@babel/types": ^7.18.6 - checksum: c6d3dede53878f6be1d869e03e9ffbbb36f4897c7cc1527dc96c56d127d834ffe4520a6f7e467f5b6f3c2843ea0e81a7819d66ae02f707f6ac057f3d57943a2b + "@babel/types": ^7.22.5 + checksum: e141cace583b19d9195f9c2b8e17a3ae913b7ee9b8120246d0f9ca349ca6f03cb2c001fd5ec57488c544347c0bb584afec66c936511e447fd20a360e591ac921 languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.19.4": - version: 7.19.4 - resolution: "@babel/helper-string-parser@npm:7.19.4" - checksum: b2f8a3920b30dfac81ec282ac4ad9598ea170648f8254b10f475abe6d944808fb006aab325d3eb5a8ad3bea8dfa888cfa6ef471050dae5748497c110ec060943 +"@babel/helper-string-parser@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-string-parser@npm:7.22.5" + checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467 languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.18.6, @babel/helper-validator-identifier@npm:^7.19.1": - version: 7.19.1 - resolution: "@babel/helper-validator-identifier@npm:7.19.1" - checksum: 0eca5e86a729162af569b46c6c41a63e18b43dbe09fda1d2a3c8924f7d617116af39cac5e4cd5d431bb760b4dca3c0970e0c444789b1db42bcf1fa41fbad0a3a +"@babel/helper-validator-identifier@npm:^7.19.1, @babel/helper-validator-identifier@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-validator-identifier@npm:7.22.5" + checksum: 7f0f30113474a28298c12161763b49de5018732290ca4de13cdaefd4fd0d635a6fe3f6686c37a02905fb1e64f21a5ee2b55140cf7b070e729f1bd66866506aea languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-validator-option@npm:7.18.6" - checksum: f9cc6eb7cc5d759c5abf006402180f8d5e4251e9198197428a97e05d65eb2f8ae5a0ce73b1dfd2d35af41d0eb780627a64edf98a4e71f064eeeacef8de58f2cf +"@babel/helper-validator-option@npm:^7.18.6, @babel/helper-validator-option@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-validator-option@npm:7.22.5" + checksum: bbeca8a85ee86990215c0424997438b388b8d642d69b9f86c375a174d3cdeb270efafd1ff128bc7a1d370923d13b6e45829ba8581c027620e83e3a80c5c414b3 languageName: node linkType: hard @@ -323,34 +325,34 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.20.5": - version: 7.20.6 - resolution: "@babel/helpers@npm:7.20.6" +"@babel/helpers@npm:^7.22.6": + version: 7.22.6 + resolution: "@babel/helpers@npm:7.22.6" dependencies: - "@babel/template": ^7.18.10 - "@babel/traverse": ^7.20.5 - "@babel/types": ^7.20.5 - checksum: f03ec6eb2bf8dc7cdfe2569ee421fd9ba6c7bac6c862d90b608ccdd80281ebe858bc56ca175fc92b3ac50f63126b66bbd5ec86f9f361729289a20054518f1ac5 + "@babel/template": ^7.22.5 + "@babel/traverse": ^7.22.6 + "@babel/types": ^7.22.5 + checksum: 5c1f33241fe7bf7709868c2105134a0a86dca26a0fbd508af10a89312b1f77ca38ebae43e50be3b208613c5eacca1559618af4ca236f0abc55d294800faeff30 languageName: node linkType: hard -"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/highlight@npm:7.18.6" +"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/highlight@npm:7.22.5" dependencies: - "@babel/helper-validator-identifier": ^7.18.6 + "@babel/helper-validator-identifier": ^7.22.5 chalk: ^2.0.0 js-tokens: ^4.0.0 - checksum: 92d8ee61549de5ff5120e945e774728e5ccd57fd3b2ed6eace020ec744823d4a98e242be1453d21764a30a14769ecd62170fba28539b211799bbaf232bbb2789 + checksum: f61ae6de6ee0ea8d9b5bcf2a532faec5ab0a1dc0f7c640e5047fc61630a0edb88b18d8c92eb06566d30da7a27db841aca11820ecd3ebe9ce514c9350fbed39c4 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.18.10, @babel/parser@npm:^7.20.5": - version: 7.20.5 - resolution: "@babel/parser@npm:7.20.5" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.22.5, @babel/parser@npm:^7.22.7": + version: 7.22.7 + resolution: "@babel/parser@npm:7.22.7" bin: parser: ./bin/babel-parser.js - checksum: e8d514ce0aa74d56725bd102919a49fa367afef9cd8208cf52f670f54b061c4672f51b4b7980058ab1f5fe73615fe4dc90720ab47bbcebae07ad08d667eda318 + checksum: 02209ddbd445831ee8bf966fdf7c29d189ed4b14343a68eb2479d940e7e3846340d7cc6bd654a5f3d87d19dc84f49f50a58cf9363bee249dc5409ff3ba3dab54 languageName: node linkType: hard @@ -666,6 +668,17 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-syntax-jsx@npm:^7.7.2": + version: 7.22.5 + resolution: "@babel/plugin-syntax-jsx@npm:7.22.5" + dependencies: + "@babel/helper-plugin-utils": ^7.22.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 8829d30c2617ab31393d99cec2978e41f014f4ac6f01a1cecf4c4dd8320c3ec12fdc3ce121126b2d8d32f6887e99ca1a0bad53dedb1e6ad165640b92b24980ce + languageName: node + linkType: hard + "@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4, @babel/plugin-syntax-logical-assignment-operators@npm:^7.8.3": version: 7.10.4 resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" @@ -1252,43 +1265,43 @@ __metadata: languageName: node linkType: hard -"@babel/template@npm:^7.18.10, @babel/template@npm:^7.3.3": - version: 7.18.10 - resolution: "@babel/template@npm:7.18.10" +"@babel/template@npm:^7.18.10, @babel/template@npm:^7.22.5, @babel/template@npm:^7.3.3": + version: 7.22.5 + resolution: "@babel/template@npm:7.22.5" dependencies: - "@babel/code-frame": ^7.18.6 - "@babel/parser": ^7.18.10 - "@babel/types": ^7.18.10 - checksum: 93a6aa094af5f355a72bd55f67fa1828a046c70e46f01b1606e6118fa1802b6df535ca06be83cc5a5e834022be95c7b714f0a268b5f20af984465a71e28f1473 + "@babel/code-frame": ^7.22.5 + "@babel/parser": ^7.22.5 + "@babel/types": ^7.22.5 + checksum: c5746410164039aca61829cdb42e9a55410f43cace6f51ca443313f3d0bdfa9a5a330d0b0df73dc17ef885c72104234ae05efede37c1cc8a72dc9f93425977a3 languageName: node linkType: hard -"@babel/traverse@npm:^7.19.0, @babel/traverse@npm:^7.19.1, @babel/traverse@npm:^7.20.1, @babel/traverse@npm:^7.20.5, @babel/traverse@npm:^7.7.2": - version: 7.20.5 - resolution: "@babel/traverse@npm:7.20.5" +"@babel/traverse@npm:^7.19.0, @babel/traverse@npm:^7.19.1, @babel/traverse@npm:^7.22.6, @babel/traverse@npm:^7.22.8": + version: 7.22.8 + resolution: "@babel/traverse@npm:7.22.8" dependencies: - "@babel/code-frame": ^7.18.6 - "@babel/generator": ^7.20.5 - "@babel/helper-environment-visitor": ^7.18.9 - "@babel/helper-function-name": ^7.19.0 - "@babel/helper-hoist-variables": ^7.18.6 - "@babel/helper-split-export-declaration": ^7.18.6 - "@babel/parser": ^7.20.5 - "@babel/types": ^7.20.5 + "@babel/code-frame": ^7.22.5 + "@babel/generator": ^7.22.7 + "@babel/helper-environment-visitor": ^7.22.5 + "@babel/helper-function-name": ^7.22.5 + "@babel/helper-hoist-variables": ^7.22.5 + "@babel/helper-split-export-declaration": ^7.22.6 + "@babel/parser": ^7.22.7 + "@babel/types": ^7.22.5 debug: ^4.1.0 globals: ^11.1.0 - checksum: c7fed468614aab1cf762dda5df26e2cfcd2b1b448c9d3321ac44786c4ee773fb0e10357e6593c3c6a648ae2e0be6d90462d855998dc10e3abae84de99291e008 + checksum: a381369bc3eedfd13ed5fef7b884657f1c29024ea7388198149f0edc34bd69ce3966e9f40188d15f56490a5e12ba250ccc485f2882b53d41b054fccefb233e33 languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.18.10, @babel/types@npm:^7.18.6, @babel/types@npm:^7.18.9, @babel/types@npm:^7.19.0, @babel/types@npm:^7.20.0, @babel/types@npm:^7.20.2, @babel/types@npm:^7.20.5, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": - version: 7.20.5 - resolution: "@babel/types@npm:7.20.5" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.18.6, @babel/types@npm:^7.18.9, @babel/types@npm:^7.19.0, @babel/types@npm:^7.20.0, @babel/types@npm:^7.20.2, @babel/types@npm:^7.22.5, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": + version: 7.22.5 + resolution: "@babel/types@npm:7.22.5" dependencies: - "@babel/helper-string-parser": ^7.19.4 - "@babel/helper-validator-identifier": ^7.19.1 + "@babel/helper-string-parser": ^7.22.5 + "@babel/helper-validator-identifier": ^7.22.5 to-fast-properties: ^2.0.0 - checksum: 773f0a1ad9f6ca5c5beaf751d1d8d81b9130de87689d1321fc911d73c3b1167326d66f0ae086a27fb5bfc8b4ee3ffebf1339be50d3b4d8015719692468c31f2d + checksum: c13a9c1dc7d2d1a241a2f8363540cb9af1d66e978e8984b400a20c4f38ba38ca29f06e26a0f2d49a70bad9e57615dac09c35accfddf1bb90d23cd3e0a0bab892 languageName: node linkType: hard @@ -1565,50 +1578,50 @@ __metadata: languageName: node linkType: hard -"@jest/console@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/console@npm:27.5.1" +"@jest/console@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/console@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 - jest-message-util: ^27.5.1 - jest-util: ^27.5.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 slash: ^3.0.0 - checksum: 7cb20f06a34b09734c0342685ec53aa4c401fe3757c13a9c58fce76b971a322eb884f6de1068ef96f746e5398e067371b89515a07c268d4440a867c87748a706 + checksum: d0ab23a00947bfb4bff8c0a7e5a7afd16519de16dde3fe7e77b9f13e794c6df7043ecf7fcdde66ac0d2b5fb3262e9cab3d92eaf61f89a12d3b8e3602e06a9902 languageName: node linkType: hard -"@jest/core@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/core@npm:27.5.1" +"@jest/core@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/core@npm:29.6.1" dependencies: - "@jest/console": ^27.5.1 - "@jest/reporters": ^27.5.1 - "@jest/test-result": ^27.5.1 - "@jest/transform": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/console": ^29.6.1 + "@jest/reporters": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" ansi-escapes: ^4.2.1 chalk: ^4.0.0 - emittery: ^0.8.1 + ci-info: ^3.2.0 exit: ^0.1.2 graceful-fs: ^4.2.9 - jest-changed-files: ^27.5.1 - jest-config: ^27.5.1 - jest-haste-map: ^27.5.1 - jest-message-util: ^27.5.1 - jest-regex-util: ^27.5.1 - jest-resolve: ^27.5.1 - jest-resolve-dependencies: ^27.5.1 - jest-runner: ^27.5.1 - jest-runtime: ^27.5.1 - jest-snapshot: ^27.5.1 - jest-util: ^27.5.1 - jest-validate: ^27.5.1 - jest-watcher: ^27.5.1 + jest-changed-files: ^29.5.0 + jest-config: ^29.6.1 + jest-haste-map: ^29.6.1 + jest-message-util: ^29.6.1 + jest-regex-util: ^29.4.3 + jest-resolve: ^29.6.1 + jest-resolve-dependencies: ^29.6.1 + jest-runner: ^29.6.1 + jest-runtime: ^29.6.1 + jest-snapshot: ^29.6.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 + jest-watcher: ^29.6.1 micromatch: ^4.0.4 - rimraf: ^3.0.0 + pretty-format: ^29.6.1 slash: ^3.0.0 strip-ansi: ^6.0.0 peerDependencies: @@ -1616,153 +1629,182 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: 904a94ad8f1b43cd6b48de3b0226659bff3696150ff8cf7680fc2faffdc8a115203bb9ab6e817c1f79f9d6a81f67953053cbc64d8a4604f2e0c42a04c28cf126 + checksum: 736dcc90c6c58dd9e1d2da122103b851187719ce3b3d4167689c63e68252632cd817712955b52ddaa648eba9c6f98f86cd58677325f0db4185f76899c64d7dac languageName: node linkType: hard -"@jest/environment@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/environment@npm:27.5.1" +"@jest/environment@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/environment@npm:29.6.1" dependencies: - "@jest/fake-timers": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/fake-timers": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" - jest-mock: ^27.5.1 - checksum: 2a9e18c35a015508dbec5b90b21c150230fa6c1c8cb8fabe029d46ee2ca4c40eb832fb636157da14c66590d0a4c8a2c053226b041f54a44507d6f6a89abefd66 + jest-mock: ^29.6.1 + checksum: fb671f91f27e7aa1ba04983ef87a83f0794a597aba0a57d08cbb1fcb484c2aedc2201e99f85fafe27aec9be78af6f2d1d7e6ea88267938992a1d0f9d4615f5b2 languageName: node linkType: hard -"@jest/fake-timers@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/fake-timers@npm:27.5.1" +"@jest/expect-utils@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/expect-utils@npm:29.6.1" + dependencies: + jest-get-type: ^29.4.3 + checksum: 037ee017eca62f7b45e1465fb5c6f9e92d5709a9ac716b8bff0bd294240a54de734e8f968fb69309cc4aef6c83b9552d5a821f3b18371af394bf04783859d706 + languageName: node + linkType: hard + +"@jest/expect@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/expect@npm:29.6.1" + dependencies: + expect: ^29.6.1 + jest-snapshot: ^29.6.1 + checksum: 5c56977b3cc8489744d97d9dc2dcb196c1dfecc83a058a7ef0fd4f63d68cf120a23d27669272d1e1b184fb4337b85e4ac1fc7f886e3988fdf243d42d73973eac + languageName: node + linkType: hard + +"@jest/fake-timers@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/fake-timers@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 - "@sinonjs/fake-timers": ^8.0.1 + "@jest/types": ^29.6.1 + "@sinonjs/fake-timers": ^10.0.2 "@types/node": "*" - jest-message-util: ^27.5.1 - jest-mock: ^27.5.1 - jest-util: ^27.5.1 - checksum: 02a0561ed2f4586093facd4ae500b74694f187ac24d4a00e949a39a1c5325bca8932b4fcb0388a2c5ed0656506fc1cf51fd3e32cdd48cea7497ad9c6e028aba8 + jest-message-util: ^29.6.1 + jest-mock: ^29.6.1 + jest-util: ^29.6.1 + checksum: 86991276944b7d6c2ada3703a272517f5f8f2f4e2af1fe26065f6db1dac4dc6299729a88c46bcb781dcc1b20504c1d4bbd8119fd8a0838ac81a9a4b5d2c8e429 languageName: node linkType: hard -"@jest/globals@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/globals@npm:27.5.1" +"@jest/globals@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/globals@npm:29.6.1" dependencies: - "@jest/environment": ^27.5.1 - "@jest/types": ^27.5.1 - expect: ^27.5.1 - checksum: 087f97047e9dcf555f76fe2ce54aee681e005eaa837a0c0c2d251df6b6412c892c9df54cb871b180342114389a5ff895a4e52e6e6d3d0015bf83c02a54f64c3c + "@jest/environment": ^29.6.1 + "@jest/expect": ^29.6.1 + "@jest/types": ^29.6.1 + jest-mock: ^29.6.1 + checksum: fcca0b970a8b4894a1cdff0f500a86b45609e72c0a4319875e9504237b839df1a46c44d2f1362c6d87fdc7a05928edcc4b5a3751c9e6648dd70a761cdab64c94 languageName: node linkType: hard -"@jest/reporters@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/reporters@npm:27.5.1" +"@jest/reporters@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/reporters@npm:29.6.1" dependencies: "@bcoe/v8-coverage": ^0.2.3 - "@jest/console": ^27.5.1 - "@jest/test-result": ^27.5.1 - "@jest/transform": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/console": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 + "@jridgewell/trace-mapping": ^0.3.18 "@types/node": "*" chalk: ^4.0.0 collect-v8-coverage: ^1.0.0 exit: ^0.1.2 - glob: ^7.1.2 + glob: ^7.1.3 graceful-fs: ^4.2.9 istanbul-lib-coverage: ^3.0.0 istanbul-lib-instrument: ^5.1.0 istanbul-lib-report: ^3.0.0 istanbul-lib-source-maps: ^4.0.0 istanbul-reports: ^3.1.3 - jest-haste-map: ^27.5.1 - jest-resolve: ^27.5.1 - jest-util: ^27.5.1 - jest-worker: ^27.5.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 + jest-worker: ^29.6.1 slash: ^3.0.0 - source-map: ^0.6.0 string-length: ^4.0.1 - terminal-link: ^2.0.0 - v8-to-istanbul: ^8.1.0 + strip-ansi: ^6.0.0 + v8-to-istanbul: ^9.0.1 peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: node-notifier: optional: true - checksum: faba5eafb86e62b62e152cafc8812d56308f9d1e8b77f3a7dcae4a8803a20a60a0909cc43ed73363ef649bf558e4fb181c7a336d144c89f7998279d1882bb69e + checksum: b7dae415f3f6342b4db2671261bbee29af20a829f42135316c3dd548b9ef85290c9bb64a0e3aec4a55486596be1257ac8216a0f8d9794acd43f8b8fb686fc7e3 languageName: node linkType: hard -"@jest/source-map@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/source-map@npm:27.5.1" +"@jest/schemas@npm:^29.6.0": + version: 29.6.0 + resolution: "@jest/schemas@npm:29.6.0" + dependencies: + "@sinclair/typebox": ^0.27.8 + checksum: c00511c69cf89138a7d974404d3a5060af375b5a52b9c87215d91873129b382ca11c1ff25bd6d605951404bb381ddce5f8091004a61e76457da35db1f5c51365 + languageName: node + linkType: hard + +"@jest/source-map@npm:^29.6.0": + version: 29.6.0 + resolution: "@jest/source-map@npm:29.6.0" dependencies: + "@jridgewell/trace-mapping": ^0.3.18 callsites: ^3.0.0 graceful-fs: ^4.2.9 - source-map: ^0.6.0 - checksum: 4fb1e743b602841babf7e22bd84eca34676cb05d4eb3b604cae57fc59e406099f5ac759ac1a0d04d901237d143f0f4f234417306e823bde732a1d19982230862 + checksum: 9c6c40387410bb70b2fae8124287fc28f6bdd1b2d7f24348e8611e1bb638b404518228a4ce64a582365b589c536ae8e7ebab0126cef59a87874b71061d19783b languageName: node linkType: hard -"@jest/test-result@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/test-result@npm:27.5.1" +"@jest/test-result@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/test-result@npm:29.6.1" dependencies: - "@jest/console": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/console": ^29.6.1 + "@jest/types": ^29.6.1 "@types/istanbul-lib-coverage": ^2.0.0 collect-v8-coverage: ^1.0.0 - checksum: 338f7c509d6a3bc6d7dd7388c8f6f548b87638e171dc1fddfedcacb4e8950583288832223ba688058cbcf874b937d22bdc0fa88f79f5fc666f77957e465c06a5 + checksum: 9397a3a3410c5df564e79297b1be4fe33807a6157a017a1f74b54a6ef14de1530f12b922299e822e66a82c53269da16661772bffde3d883a78c5eefd2cd6d1cc languageName: node linkType: hard -"@jest/test-sequencer@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/test-sequencer@npm:27.5.1" +"@jest/test-sequencer@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/test-sequencer@npm:29.6.1" dependencies: - "@jest/test-result": ^27.5.1 + "@jest/test-result": ^29.6.1 graceful-fs: ^4.2.9 - jest-haste-map: ^27.5.1 - jest-runtime: ^27.5.1 - checksum: f21f9c8bb746847f7f89accfd29d6046eec1446f0b54e4694444feaa4df379791f76ef0f5a4360aafcbc73b50bc979f68b8a7620de404019d3de166be6720cb0 + jest-haste-map: ^29.6.1 + slash: ^3.0.0 + checksum: f3437178b5dca0401ed2e990d8b69161442351856d56f5725e009a487f5232b51039f8829673884b9bea61c861120d08a53a36432f4a4b8aab38915a68f7000d languageName: node linkType: hard -"@jest/transform@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/transform@npm:27.5.1" +"@jest/transform@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/transform@npm:29.6.1" dependencies: - "@babel/core": ^7.1.0 - "@jest/types": ^27.5.1 + "@babel/core": ^7.11.6 + "@jest/types": ^29.6.1 + "@jridgewell/trace-mapping": ^0.3.18 babel-plugin-istanbul: ^6.1.1 chalk: ^4.0.0 - convert-source-map: ^1.4.0 - fast-json-stable-stringify: ^2.0.0 + convert-source-map: ^2.0.0 + fast-json-stable-stringify: ^2.1.0 graceful-fs: ^4.2.9 - jest-haste-map: ^27.5.1 - jest-regex-util: ^27.5.1 - jest-util: ^27.5.1 + jest-haste-map: ^29.6.1 + jest-regex-util: ^29.4.3 + jest-util: ^29.6.1 micromatch: ^4.0.4 pirates: ^4.0.4 slash: ^3.0.0 - source-map: ^0.6.1 - write-file-atomic: ^3.0.0 - checksum: a22079121aedea0f20a03a9c026be971f7b92adbfb4d5fd1fb67be315741deac4f056936d7c72a53b24aa5a1071bc942c003925fd453bf3f6a0ae5da6384e137 + write-file-atomic: ^4.0.2 + checksum: 1635cd66e4b3dbba0689ecefabc6137301756c9c12d1d23e25124dd0dd9b4a6a38653d51e825e90f74faa022152ac1eaf200591fb50417aa7e1f7d1d1c2bc11d languageName: node linkType: hard -"@jest/types@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/types@npm:27.5.1" +"@jest/types@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/types@npm:29.6.1" dependencies: + "@jest/schemas": ^29.6.0 "@types/istanbul-lib-coverage": ^2.0.0 "@types/istanbul-reports": ^3.0.0 "@types/node": "*" - "@types/yargs": ^16.0.0 + "@types/yargs": ^17.0.8 chalk: ^4.0.0 - checksum: d1f43cc946d87543ddd79d49547aab2399481d34025d5c5f2025d3d99c573e1d9832fa83cef25e9d9b07a8583500229d15bbb07b8e233d127d911d133e2f14b1 + checksum: 89fc1ccf71a84fe0da643e0675b1cfe6a6f19ea72e935b2ab1dbdb56ec547e94433fb59b3536d3832a6e156c077865b7176fe9dae707dab9c3d2f9405ba6233c languageName: node linkType: hard @@ -1777,10 +1819,10 @@ __metadata: languageName: node linkType: hard -"@jridgewell/resolve-uri@npm:^3.0.3": - version: 3.0.5 - resolution: "@jridgewell/resolve-uri@npm:3.0.5" - checksum: 1ee652b693da7979ac4007926cc3f0a32b657ffeb913e111f44e5b67153d94a2f28a1d560101cc0cf8087625468293a69a00f634a2914e1a6d0817ba2039a913 +"@jridgewell/resolve-uri@npm:3.1.0, @jridgewell/resolve-uri@npm:^3.0.3": + version: 3.1.0 + resolution: "@jridgewell/resolve-uri@npm:3.1.0" + checksum: b5ceaaf9a110fcb2780d1d8f8d4a0bfd216702f31c988d8042e5f8fbe353c55d9b0f55a1733afdc64806f8e79c485d2464680ac48a0d9fcadb9548ee6b81d267 languageName: node linkType: hard @@ -1791,20 +1833,20 @@ __metadata: languageName: node linkType: hard -"@jridgewell/source-map@npm:^0.3.2": - version: 0.3.2 - resolution: "@jridgewell/source-map@npm:0.3.2" +"@jridgewell/source-map@npm:^0.3.3": + version: 0.3.3 + resolution: "@jridgewell/source-map@npm:0.3.3" dependencies: "@jridgewell/gen-mapping": ^0.3.0 "@jridgewell/trace-mapping": ^0.3.9 - checksum: 1b83f0eb944e77b70559a394d5d3b3f98a81fcc186946aceb3ef42d036762b52ef71493c6c0a3b7c1d2f08785f53ba2df1277fe629a06e6109588ff4cdcf7482 + checksum: ae1302146339667da5cd6541260ecbef46ae06819a60f88da8f58b3e64682f787c09359933d050dea5d2173ea7fa40f40dd4d4e7a8d325c5892cccd99aaf8959 languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10": - version: 1.4.11 - resolution: "@jridgewell/sourcemap-codec@npm:1.4.11" - checksum: 3b2afaf8400fb07a36db60e901fcce6a746cdec587310ee9035939d89878e57b2dec8173b0b8f63176f647efa352294049a53c49739098eb907ff81fec2547c8 +"@jridgewell/sourcemap-codec@npm:1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.10": + version: 1.4.14 + resolution: "@jridgewell/sourcemap-codec@npm:1.4.14" + checksum: 61100637b6d173d3ba786a5dff019e1a74b1f394f323c1fee337ff390239f053b87266c7a948777f4b1ee68c01a8ad0ab61e5ff4abb5a012a0b091bec391ab97 languageName: node linkType: hard @@ -1818,13 +1860,13 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.0, @jridgewell/trace-mapping@npm:^0.3.9": - version: 0.3.14 - resolution: "@jridgewell/trace-mapping@npm:0.3.14" +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.9": + version: 0.3.18 + resolution: "@jridgewell/trace-mapping@npm:0.3.18" dependencies: - "@jridgewell/resolve-uri": ^3.0.3 - "@jridgewell/sourcemap-codec": ^1.4.10 - checksum: b9537b9630ffb631aef9651a085fe361881cde1772cd482c257fe3c78c8fd5388d681f504a9c9fe1081b1c05e8f75edf55ee10fdb58d92bbaa8dbf6a7bd6b18c + "@jridgewell/resolve-uri": 3.1.0 + "@jridgewell/sourcemap-codec": 1.4.14 + checksum: 0572669f855260808c16fe8f78f5f1b4356463b11d3f2c7c0b5580c8ba1cbf4ae53efe9f627595830856e57dbac2325ac17eb0c3dd0ec42102e6f227cc289c02 languageName: node linkType: hard @@ -1857,7 +1899,6 @@ __metadata: resolution: "@kiltprotocol/chain-helpers@workspace:packages/chain-helpers" dependencies: "@kiltprotocol/config": "workspace:*" - "@kiltprotocol/testing": "workspace:*" "@kiltprotocol/types": "workspace:*" "@kiltprotocol/utils": "workspace:*" "@polkadot/api": ^10.4.0 @@ -1889,7 +1930,6 @@ __metadata: "@kiltprotocol/chain-helpers": "workspace:*" "@kiltprotocol/config": "workspace:*" "@kiltprotocol/did": "workspace:*" - "@kiltprotocol/testing": "workspace:*" "@kiltprotocol/type-definitions": "workspace:*" "@kiltprotocol/types": "workspace:*" "@kiltprotocol/utils": "workspace:*" @@ -1911,7 +1951,6 @@ __metadata: dependencies: "@kiltprotocol/augment-api": "workspace:*" "@kiltprotocol/config": "workspace:*" - "@kiltprotocol/testing": "workspace:*" "@kiltprotocol/types": "workspace:*" "@kiltprotocol/utils": "workspace:*" "@polkadot/api": ^10.4.0 @@ -1931,7 +1970,6 @@ __metadata: dependencies: "@kiltprotocol/core": "workspace:*" "@kiltprotocol/did": "workspace:*" - "@kiltprotocol/testing": "workspace:*" "@kiltprotocol/types": "workspace:*" "@kiltprotocol/utils": "workspace:*" "@polkadot/util": ^12.0.0 @@ -1940,7 +1978,7 @@ __metadata: languageName: unknown linkType: soft -"@kiltprotocol/sdk-js@workspace:*, @kiltprotocol/sdk-js@workspace:packages/sdk-js": +"@kiltprotocol/sdk-js@workspace:packages/sdk-js": version: 0.0.0-use.local resolution: "@kiltprotocol/sdk-js@workspace:packages/sdk-js" dependencies: @@ -1954,34 +1992,11 @@ __metadata: rimraf: ^3.0.2 terser-webpack-plugin: ^5.1.1 typescript: ^4.8.3 - webpack: ^5.70.0 + webpack: ^5.76.0 webpack-cli: ^4.9.2 languageName: unknown linkType: soft -"@kiltprotocol/testing@workspace:*, @kiltprotocol/testing@workspace:packages/testing": - version: 0.0.0-use.local - resolution: "@kiltprotocol/testing@workspace:packages/testing" - dependencies: - "@kiltprotocol/chain-helpers": "workspace:*" - "@kiltprotocol/config": "workspace:*" - "@kiltprotocol/did": "workspace:*" - "@kiltprotocol/sdk-js": "workspace:*" - "@kiltprotocol/type-definitions": "workspace:*" - "@kiltprotocol/types": "workspace:*" - "@kiltprotocol/utils": "workspace:*" - "@polkadot/api": ^10.4.0 - "@polkadot/keyring": ^12.0.0 - "@polkadot/types": ^10.4.0 - "@polkadot/util": ^12.0.0 - "@polkadot/util-crypto": ^12.0.0 - rimraf: ^3.0.2 - tweetnacl: ^1.0.3 - typescript: ^4.8.3 - uuid: ^9.0.0 - languageName: unknown - linkType: soft - "@kiltprotocol/type-definitions@workspace:*, @kiltprotocol/type-definitions@workspace:packages/type-definitions": version: 0.0.0-use.local resolution: "@kiltprotocol/type-definitions@workspace:packages/type-definitions" @@ -2014,7 +2029,7 @@ __metadata: "@polkadot/keyring": ^12.0.0 "@polkadot/util": ^12.0.0 "@polkadot/util-crypto": ^12.0.0 - cbor-web: ^8.0.0 + cbor-web: ^9.0.0 rimraf: ^3.0.2 tweetnacl: ^1.0.3 typescript: ^4.8.3 @@ -2029,7 +2044,6 @@ __metadata: "@kiltprotocol/config": "workspace:*" "@kiltprotocol/core": "workspace:*" "@kiltprotocol/did": "workspace:*" - "@kiltprotocol/testing": "workspace:*" "@kiltprotocol/types": "workspace:*" "@kiltprotocol/utils": "workspace:*" "@polkadot/api": ^10.4.0 @@ -2566,21 +2580,28 @@ __metadata: languageName: node linkType: hard -"@sinonjs/commons@npm:^1.7.0": - version: 1.8.3 - resolution: "@sinonjs/commons@npm:1.8.3" +"@sinclair/typebox@npm:^0.27.8": + version: 0.27.8 + resolution: "@sinclair/typebox@npm:0.27.8" + checksum: 00bd7362a3439021aa1ea51b0e0d0a0e8ca1351a3d54c606b115fdcc49b51b16db6e5f43b4fe7a28c38688523e22a94d49dd31168868b655f0d4d50f032d07a1 + languageName: node + linkType: hard + +"@sinonjs/commons@npm:^3.0.0": + version: 3.0.0 + resolution: "@sinonjs/commons@npm:3.0.0" dependencies: type-detect: 4.0.8 - checksum: 6159726db5ce6bf9f2297f8427f7ca5b3dff45b31e5cee23496f1fa6ef0bb4eab878b23fb2c5e6446381f6a66aba4968ef2fc255c1180d753d4b8c271636a2e5 + checksum: b4b5b73d4df4560fb8c0c7b38c7ad4aeabedd362f3373859d804c988c725889cde33550e4bcc7cd316a30f5152a2d1d43db71b6d0c38f5feef71fd8d016763f8 languageName: node linkType: hard -"@sinonjs/fake-timers@npm:^8.0.1": - version: 8.1.0 - resolution: "@sinonjs/fake-timers@npm:8.1.0" +"@sinonjs/fake-timers@npm:^10.0.2": + version: 10.3.0 + resolution: "@sinonjs/fake-timers@npm:10.3.0" dependencies: - "@sinonjs/commons": ^1.7.0 - checksum: 09b5a158ce013a6c37613258bad79ca4efeb99b1f59c41c73cca36cac00b258aefcf46eeea970fccf06b989414d86fe9f54c1102272c0c3bdd51a313cea80949 + "@sinonjs/commons": ^3.0.0 + checksum: 614d30cb4d5201550c940945d44c9e0b6d64a888ff2cd5b357f95ad6721070d6b8839cd10e15b76bf5e14af0bcc1d8f9ec00d49a46318f1f669a4bec1d7f3148 languageName: node linkType: hard @@ -2609,13 +2630,6 @@ __metadata: languageName: node linkType: hard -"@tootallnate/once@npm:1": - version: 1.1.2 - resolution: "@tootallnate/once@npm:1.1.2" - checksum: e1fb1bbbc12089a0cb9433dc290f97bddd062deadb6178ce9bcb93bb7c1aecde5e60184bc7065aec42fe1663622a213493c48bbd4972d931aae48315f18e1be9 - languageName: node - linkType: hard - "@tootallnate/once@npm:2": version: 2.0.0 resolution: "@tootallnate/once@npm:2.0.0" @@ -2660,7 +2674,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14": +"@types/babel__core@npm:^7.1.14": version: 7.1.19 resolution: "@types/babel__core@npm:7.1.19" dependencies: @@ -2692,7 +2706,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.4, @types/babel__traverse@npm:^7.0.6": +"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": version: 7.14.2 resolution: "@types/babel__traverse@npm:7.14.2" dependencies: @@ -2750,10 +2764,10 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:*, @types/estree@npm:^0.0.51": - version: 0.0.51 - resolution: "@types/estree@npm:0.0.51" - checksum: e56a3bcf759fd9185e992e7fdb3c6a5f81e8ff120e871641607581fb3728d16c811702a7d40fa5f869b7f7b4437ab6a87eb8d98ffafeee51e85bbe955932a189 +"@types/estree@npm:*, @types/estree@npm:^1.0.0": + version: 1.0.1 + resolution: "@types/estree@npm:1.0.1" + checksum: e9aa175eacb797216fafce4d41e8202c7a75555bc55232dee0f9903d7171f8f19f0ae7d5191bb1a88cb90e65468be508c0df850a9fb81b4433b293a5a749899d languageName: node linkType: hard @@ -2767,12 +2781,12 @@ __metadata: languageName: node linkType: hard -"@types/graceful-fs@npm:^4.1.2": - version: 4.1.5 - resolution: "@types/graceful-fs@npm:4.1.5" +"@types/graceful-fs@npm:^4.1.3": + version: 4.1.6 + resolution: "@types/graceful-fs@npm:4.1.6" dependencies: "@types/node": "*" - checksum: d076bb61f45d0fc42dee496ef8b1c2f8742e15d5e47e90e20d0243386e426c04d4efd408a48875ab432f7960b4ce3414db20ed0fbbfc7bcc89d84e574f6e045a + checksum: c3070ccdc9ca0f40df747bced1c96c71a61992d6f7c767e8fd24bb6a3c2de26e8b84135ede000b7e79db530a23e7e88dcd9db60eee6395d0f4ce1dae91369dd4 languageName: node linkType: hard @@ -2801,13 +2815,13 @@ __metadata: languageName: node linkType: hard -"@types/jest@npm:^27.4.0": - version: 27.4.1 - resolution: "@types/jest@npm:27.4.1" +"@types/jest@npm:^29.5.3": + version: 29.5.3 + resolution: "@types/jest@npm:29.5.3" dependencies: - jest-matcher-utils: ^27.0.0 - pretty-format: ^27.0.0 - checksum: 5184f3eef4832d01ee8f59bed15eec45ccc8e29c724a5e6ce37bf74396b37bdf04f557000f45ba4fc38ae6075cf9cfcce3d7a75abc981023c61ceb27230a93e4 + expect: ^29.0.0 + pretty-format: ^29.0.0 + checksum: e36bb92e0b9e5ea7d6f8832baa42f087fc1697f6cd30ec309a07ea4c268e06ec460f1f0cfd2581daf5eff5763475190ec1ad8ac6520c49ccfe4f5c0a48bfa676 languageName: node linkType: hard @@ -2914,12 +2928,12 @@ __metadata: languageName: node linkType: hard -"@types/yargs@npm:^16.0.0": - version: 16.0.4 - resolution: "@types/yargs@npm:16.0.4" +"@types/yargs@npm:^17.0.8": + version: 17.0.24 + resolution: "@types/yargs@npm:17.0.24" dependencies: "@types/yargs-parser": "*" - checksum: caa21d2c957592fe2184a8368c8cbe5a82a6c2e2f2893722e489f842dc5963293d2f3120bc06fe3933d60a3a0d1e2eb269649fd6b1947fe1820f8841ba611dd9 + checksum: 5f3ac4dc4f6e211c1627340160fbe2fd247ceba002190da6cf9155af1798450501d628c9165a183f30a224fc68fa5e700490d740ff4c73e2cdef95bc4e8ba7bf languageName: node linkType: hard @@ -3040,154 +3054,154 @@ __metadata: languageName: node linkType: hard -"@webassemblyjs/ast@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/ast@npm:1.11.1" +"@webassemblyjs/ast@npm:1.11.6, @webassemblyjs/ast@npm:^1.11.5": + version: 1.11.6 + resolution: "@webassemblyjs/ast@npm:1.11.6" dependencies: - "@webassemblyjs/helper-numbers": 1.11.1 - "@webassemblyjs/helper-wasm-bytecode": 1.11.1 - checksum: 1eee1534adebeece635362f8e834ae03e389281972611408d64be7895fc49f48f98fddbbb5339bf8a72cb101bcb066e8bca3ca1bf1ef47dadf89def0395a8d87 + "@webassemblyjs/helper-numbers": 1.11.6 + "@webassemblyjs/helper-wasm-bytecode": 1.11.6 + checksum: 38ef1b526ca47c210f30975b06df2faf1a8170b1636ce239fc5738fc231ce28389dd61ecedd1bacfc03cbe95b16d1af848c805652080cb60982836eb4ed2c6cf languageName: node linkType: hard -"@webassemblyjs/floating-point-hex-parser@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.11.1" - checksum: b8efc6fa08e4787b7f8e682182d84dfdf8da9d9c77cae5d293818bc4a55c1f419a87fa265ab85252b3e6c1fd323d799efea68d825d341a7c365c64bc14750e97 +"@webassemblyjs/floating-point-hex-parser@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.11.6" + checksum: 29b08758841fd8b299c7152eda36b9eb4921e9c584eb4594437b5cd90ed6b920523606eae7316175f89c20628da14326801090167cc7fbffc77af448ac84b7e2 languageName: node linkType: hard -"@webassemblyjs/helper-api-error@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/helper-api-error@npm:1.11.1" - checksum: 0792813f0ed4a0e5ee0750e8b5d0c631f08e927f4bdfdd9fe9105dc410c786850b8c61bff7f9f515fdfb149903bec3c976a1310573a4c6866a94d49bc7271959 +"@webassemblyjs/helper-api-error@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-api-error@npm:1.11.6" + checksum: e8563df85161096343008f9161adb138a6e8f3c2cc338d6a36011aa55eabb32f2fd138ffe63bc278d009ada001cc41d263dadd1c0be01be6c2ed99076103689f languageName: node linkType: hard -"@webassemblyjs/helper-buffer@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/helper-buffer@npm:1.11.1" - checksum: a337ee44b45590c3a30db5a8b7b68a717526cf967ada9f10253995294dbd70a58b2da2165222e0b9830cd4fc6e4c833bf441a721128d1fe2e9a7ab26b36003ce +"@webassemblyjs/helper-buffer@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-buffer@npm:1.11.6" + checksum: b14d0573bf680d22b2522e8a341ec451fddd645d1f9c6bd9012ccb7e587a2973b86ab7b89fe91e1c79939ba96095f503af04369a3b356c8023c13a5893221644 languageName: node linkType: hard -"@webassemblyjs/helper-numbers@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/helper-numbers@npm:1.11.1" +"@webassemblyjs/helper-numbers@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-numbers@npm:1.11.6" dependencies: - "@webassemblyjs/floating-point-hex-parser": 1.11.1 - "@webassemblyjs/helper-api-error": 1.11.1 + "@webassemblyjs/floating-point-hex-parser": 1.11.6 + "@webassemblyjs/helper-api-error": 1.11.6 "@xtuc/long": 4.2.2 - checksum: 44d2905dac2f14d1e9b5765cf1063a0fa3d57295c6d8930f6c59a36462afecc6e763e8a110b97b342a0f13376166c5d41aa928e6ced92e2f06b071fd0db59d3a + checksum: f4b562fa219f84368528339e0f8d273ad44e047a07641ffcaaec6f93e5b76fd86490a009aa91a294584e1436d74b0a01fa9fde45e333a4c657b58168b04da424 languageName: node linkType: hard -"@webassemblyjs/helper-wasm-bytecode@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.11.1" - checksum: eac400113127832c88f5826bcc3ad1c0db9b3dbd4c51a723cfdb16af6bfcbceb608170fdaac0ab7731a7e18b291be7af68a47fcdb41cfe0260c10857e7413d97 +"@webassemblyjs/helper-wasm-bytecode@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.11.6" + checksum: 3535ef4f1fba38de3475e383b3980f4bbf3de72bbb631c2b6584c7df45be4eccd62c6ff48b5edd3f1bcff275cfd605a37679ec199fc91fd0a7705d7f1e3972dc languageName: node linkType: hard -"@webassemblyjs/helper-wasm-section@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/helper-wasm-section@npm:1.11.1" +"@webassemblyjs/helper-wasm-section@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/helper-wasm-section@npm:1.11.6" dependencies: - "@webassemblyjs/ast": 1.11.1 - "@webassemblyjs/helper-buffer": 1.11.1 - "@webassemblyjs/helper-wasm-bytecode": 1.11.1 - "@webassemblyjs/wasm-gen": 1.11.1 - checksum: 617696cfe8ecaf0532763162aaf748eb69096fb27950219bb87686c6b2e66e11cd0614d95d319d0ab1904bc14ebe4e29068b12c3e7c5e020281379741fe4bedf + "@webassemblyjs/ast": 1.11.6 + "@webassemblyjs/helper-buffer": 1.11.6 + "@webassemblyjs/helper-wasm-bytecode": 1.11.6 + "@webassemblyjs/wasm-gen": 1.11.6 + checksum: b2cf751bf4552b5b9999d27bbb7692d0aca75260140195cb58ea6374d7b9c2dc69b61e10b211a0e773f66209c3ddd612137ed66097e3684d7816f854997682e9 languageName: node linkType: hard -"@webassemblyjs/ieee754@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/ieee754@npm:1.11.1" +"@webassemblyjs/ieee754@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/ieee754@npm:1.11.6" dependencies: "@xtuc/ieee754": ^1.2.0 - checksum: 23a0ac02a50f244471631802798a816524df17e56b1ef929f0c73e3cde70eaf105a24130105c60aff9d64a24ce3b640dad443d6f86e5967f922943a7115022ec + checksum: 13574b8e41f6ca39b700e292d7edf102577db5650fe8add7066a320aa4b7a7c09a5056feccac7a74eb68c10dea9546d4461412af351f13f6b24b5f32379b49de languageName: node linkType: hard -"@webassemblyjs/leb128@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/leb128@npm:1.11.1" +"@webassemblyjs/leb128@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/leb128@npm:1.11.6" dependencies: "@xtuc/long": 4.2.2 - checksum: 33ccc4ade2f24de07bf31690844d0b1ad224304ee2062b0e464a610b0209c79e0b3009ac190efe0e6bd568b0d1578d7c3047fc1f9d0197c92fc061f56224ff4a + checksum: 7ea942dc9777d4b18a5ebfa3a937b30ae9e1d2ce1fee637583ed7f376334dd1d4274f813d2e250056cca803e0952def4b954913f1a3c9068bcd4ab4ee5143bf0 languageName: node linkType: hard -"@webassemblyjs/utf8@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/utf8@npm:1.11.1" - checksum: 972c5cfc769d7af79313a6bfb96517253a270a4bf0c33ba486aa43cac43917184fb35e51dfc9e6b5601548cd5931479a42e42c89a13bb591ffabebf30c8a6a0b +"@webassemblyjs/utf8@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/utf8@npm:1.11.6" + checksum: 807fe5b5ce10c390cfdd93e0fb92abda8aebabb5199980681e7c3743ee3306a75729bcd1e56a3903980e96c885ee53ef901fcbaac8efdfa480f9c0dae1d08713 languageName: node linkType: hard -"@webassemblyjs/wasm-edit@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/wasm-edit@npm:1.11.1" +"@webassemblyjs/wasm-edit@npm:^1.11.5": + version: 1.11.6 + resolution: "@webassemblyjs/wasm-edit@npm:1.11.6" dependencies: - "@webassemblyjs/ast": 1.11.1 - "@webassemblyjs/helper-buffer": 1.11.1 - "@webassemblyjs/helper-wasm-bytecode": 1.11.1 - "@webassemblyjs/helper-wasm-section": 1.11.1 - "@webassemblyjs/wasm-gen": 1.11.1 - "@webassemblyjs/wasm-opt": 1.11.1 - "@webassemblyjs/wasm-parser": 1.11.1 - "@webassemblyjs/wast-printer": 1.11.1 - checksum: 6d7d9efaec1227e7ef7585a5d7ff0be5f329f7c1c6b6c0e906b18ed2e9a28792a5635e450aca2d136770d0207225f204eff70a4b8fd879d3ac79e1dcc26dbeb9 + "@webassemblyjs/ast": 1.11.6 + "@webassemblyjs/helper-buffer": 1.11.6 + "@webassemblyjs/helper-wasm-bytecode": 1.11.6 + "@webassemblyjs/helper-wasm-section": 1.11.6 + "@webassemblyjs/wasm-gen": 1.11.6 + "@webassemblyjs/wasm-opt": 1.11.6 + "@webassemblyjs/wasm-parser": 1.11.6 + "@webassemblyjs/wast-printer": 1.11.6 + checksum: 29ce75870496d6fad864d815ebb072395a8a3a04dc9c3f4e1ffdc63fc5fa58b1f34304a1117296d8240054cfdbc38aca88e71fb51483cf29ffab0a61ef27b481 languageName: node linkType: hard -"@webassemblyjs/wasm-gen@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/wasm-gen@npm:1.11.1" +"@webassemblyjs/wasm-gen@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/wasm-gen@npm:1.11.6" dependencies: - "@webassemblyjs/ast": 1.11.1 - "@webassemblyjs/helper-wasm-bytecode": 1.11.1 - "@webassemblyjs/ieee754": 1.11.1 - "@webassemblyjs/leb128": 1.11.1 - "@webassemblyjs/utf8": 1.11.1 - checksum: 1f6921e640293bf99fb16b21e09acb59b340a79f986c8f979853a0ae9f0b58557534b81e02ea2b4ef11e929d946708533fd0693c7f3712924128fdafd6465f5b + "@webassemblyjs/ast": 1.11.6 + "@webassemblyjs/helper-wasm-bytecode": 1.11.6 + "@webassemblyjs/ieee754": 1.11.6 + "@webassemblyjs/leb128": 1.11.6 + "@webassemblyjs/utf8": 1.11.6 + checksum: a645a2eecbea24833c3260a249704a7f554ef4a94c6000984728e94bb2bc9140a68dfd6fd21d5e0bbb09f6dfc98e083a45760a83ae0417b41a0196ff6d45a23a languageName: node linkType: hard -"@webassemblyjs/wasm-opt@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/wasm-opt@npm:1.11.1" +"@webassemblyjs/wasm-opt@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/wasm-opt@npm:1.11.6" dependencies: - "@webassemblyjs/ast": 1.11.1 - "@webassemblyjs/helper-buffer": 1.11.1 - "@webassemblyjs/wasm-gen": 1.11.1 - "@webassemblyjs/wasm-parser": 1.11.1 - checksum: 21586883a20009e2b20feb67bdc451bbc6942252e038aae4c3a08e6f67b6bae0f5f88f20bfc7bd0452db5000bacaf5ab42b98cf9aa034a6c70e9fc616142e1db + "@webassemblyjs/ast": 1.11.6 + "@webassemblyjs/helper-buffer": 1.11.6 + "@webassemblyjs/wasm-gen": 1.11.6 + "@webassemblyjs/wasm-parser": 1.11.6 + checksum: b4557f195487f8e97336ddf79f7bef40d788239169aac707f6eaa2fa5fe243557c2d74e550a8e57f2788e70c7ae4e7d32f7be16101afe183d597b747a3bdd528 languageName: node linkType: hard -"@webassemblyjs/wasm-parser@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/wasm-parser@npm:1.11.1" +"@webassemblyjs/wasm-parser@npm:1.11.6, @webassemblyjs/wasm-parser@npm:^1.11.5": + version: 1.11.6 + resolution: "@webassemblyjs/wasm-parser@npm:1.11.6" dependencies: - "@webassemblyjs/ast": 1.11.1 - "@webassemblyjs/helper-api-error": 1.11.1 - "@webassemblyjs/helper-wasm-bytecode": 1.11.1 - "@webassemblyjs/ieee754": 1.11.1 - "@webassemblyjs/leb128": 1.11.1 - "@webassemblyjs/utf8": 1.11.1 - checksum: 1521644065c360e7b27fad9f4bb2df1802d134dd62937fa1f601a1975cde56bc31a57b6e26408b9ee0228626ff3ba1131ae6f74ffb7d718415b6528c5a6dbfc2 + "@webassemblyjs/ast": 1.11.6 + "@webassemblyjs/helper-api-error": 1.11.6 + "@webassemblyjs/helper-wasm-bytecode": 1.11.6 + "@webassemblyjs/ieee754": 1.11.6 + "@webassemblyjs/leb128": 1.11.6 + "@webassemblyjs/utf8": 1.11.6 + checksum: 8200a8d77c15621724a23fdabe58d5571415cda98a7058f542e670ea965dd75499f5e34a48675184947c66f3df23adf55df060312e6d72d57908e3f049620d8a languageName: node linkType: hard -"@webassemblyjs/wast-printer@npm:1.11.1": - version: 1.11.1 - resolution: "@webassemblyjs/wast-printer@npm:1.11.1" +"@webassemblyjs/wast-printer@npm:1.11.6": + version: 1.11.6 + resolution: "@webassemblyjs/wast-printer@npm:1.11.6" dependencies: - "@webassemblyjs/ast": 1.11.1 + "@webassemblyjs/ast": 1.11.6 "@xtuc/long": 4.2.2 - checksum: f15ae4c2441b979a3b4fce78f3d83472fb22350c6dc3fd34bfe7c3da108e0b2360718734d961bba20e7716cb8578e964b870da55b035e209e50ec9db0378a3f7 + checksum: d2fa6a4c427325ec81463e9c809aa6572af6d47f619f3091bf4c4a6fc34f1da3df7caddaac50b8e7a457f8784c62cd58c6311b6cb69b0162ccd8d4c072f79cf8 languageName: node linkType: hard @@ -3250,13 +3264,6 @@ __metadata: languageName: node linkType: hard -"abab@npm:^2.0.3, abab@npm:^2.0.5": - version: 2.0.5 - resolution: "abab@npm:2.0.5" - checksum: 0ec951b46d5418c2c2f923021ec193eaebdb4e802ffd5506286781b454be722a13a8430f98085cd3e204918401d9130ec6cc8f5ae19be315b3a0e857d83196e1 - languageName: node - linkType: hard - "abbrev@npm:1": version: 1.1.1 resolution: "abbrev@npm:1.1.1" @@ -3264,22 +3271,12 @@ __metadata: languageName: node linkType: hard -"acorn-globals@npm:^6.0.0": - version: 6.0.0 - resolution: "acorn-globals@npm:6.0.0" - dependencies: - acorn: ^7.1.1 - acorn-walk: ^7.1.1 - checksum: 72d95e5b5e585f9acd019b993ab8bbba68bb3cbc9d9b5c1ebb3c2f1fe5981f11deababfb4949f48e6262f9c57878837f5958c0cca396f81023814680ca878042 - languageName: node - linkType: hard - -"acorn-import-assertions@npm:^1.7.6": - version: 1.8.0 - resolution: "acorn-import-assertions@npm:1.8.0" +"acorn-import-assertions@npm:^1.9.0": + version: 1.9.0 + resolution: "acorn-import-assertions@npm:1.9.0" peerDependencies: acorn: ^8 - checksum: 5c4cf7c850102ba7ae0eeae0deb40fb3158c8ca5ff15c0bca43b5c47e307a1de3d8ef761788f881343680ea374631ae9e9615ba8876fee5268dbe068c98bcba6 + checksum: 944fb2659d0845c467066bdcda2e20c05abe3aaf11972116df457ce2627628a81764d800dd55031ba19de513ee0d43bb771bc679cc0eda66dc8b4fade143bc0c languageName: node linkType: hard @@ -3292,13 +3289,6 @@ __metadata: languageName: node linkType: hard -"acorn-walk@npm:^7.1.1": - version: 7.2.0 - resolution: "acorn-walk@npm:7.2.0" - checksum: 9252158a79b9d92f1bc0dd6acc0fcfb87a67339e84bcc301bb33d6078936d27e35d606b4d35626d2962cd43c256d6f27717e70cbe15c04fff999ab0b2260b21f - languageName: node - linkType: hard - "acorn-walk@npm:^8.1.1": version: 8.2.0 resolution: "acorn-walk@npm:8.2.0" @@ -3306,7 +3296,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^7.1.1, acorn@npm:^7.4.0": +"acorn@npm:^7.4.0": version: 7.4.1 resolution: "acorn@npm:7.4.1" bin: @@ -3315,12 +3305,12 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.2.4, acorn@npm:^8.4.1, acorn@npm:^8.5.0": - version: 8.7.0 - resolution: "acorn@npm:8.7.0" +"acorn@npm:^8.4.1, acorn@npm:^8.7.1, acorn@npm:^8.8.2": + version: 8.8.2 + resolution: "acorn@npm:8.8.2" bin: acorn: bin/acorn - checksum: e0f79409d68923fbf1aa6d4166f3eedc47955320d25c89a20cc822e6ba7c48c5963d5bc657bc242d68f7a4ac9faf96eef033e8f73656da6c640d4219935fdfd0 + checksum: f790b99a1bf63ef160c967e23c46feea7787e531292bb827126334612c234ed489a0dc2c7ba33156416f0ffa8d25bf2b0fdb7f35c2ba60eb3e960572bece4001 languageName: node linkType: hard @@ -3410,6 +3400,13 @@ __metadata: languageName: node linkType: hard +"ansi-sequence-parser@npm:^1.1.0": + version: 1.1.0 + resolution: "ansi-sequence-parser@npm:1.1.0" + checksum: 75f4d3a4c555655a698aec05b5763cbddcd16ccccdbfd178fb0aa471ab74fdf98e031b875ef26e64be6a95cf970c89238744b26de6e34af97f316d5186b1df53 + languageName: node + linkType: hard + "ansi-styles@npm:^3.2.1": version: 3.2.1 resolution: "ansi-styles@npm:3.2.1" @@ -3614,21 +3611,20 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:^27.5.1": - version: 27.5.1 - resolution: "babel-jest@npm:27.5.1" +"babel-jest@npm:^29.6.1": + version: 29.6.1 + resolution: "babel-jest@npm:29.6.1" dependencies: - "@jest/transform": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/transform": ^29.6.1 "@types/babel__core": ^7.1.14 babel-plugin-istanbul: ^6.1.1 - babel-preset-jest: ^27.5.1 + babel-preset-jest: ^29.5.0 chalk: ^4.0.0 graceful-fs: ^4.2.9 slash: ^3.0.0 peerDependencies: "@babel/core": ^7.8.0 - checksum: 4e93e6e9fb996cc5f1505e924eb8e8cc7b25c294ba9629762a2715390f48af6a4c14dbb84cd9730013ac0e03267a5a9aa2fb6318c544489cda7f50f4e506def4 + checksum: bc46cfba468edde91f34a8292501d4448a39fab72d80d7d95f4349feb114fa21becb01def007d6166de7933ab9633bf5b5e1b72ba6ffeaa991f7abf014a2f61d languageName: node linkType: hard @@ -3645,15 +3641,15 @@ __metadata: languageName: node linkType: hard -"babel-plugin-jest-hoist@npm:^27.5.1": - version: 27.5.1 - resolution: "babel-plugin-jest-hoist@npm:27.5.1" +"babel-plugin-jest-hoist@npm:^29.5.0": + version: 29.5.0 + resolution: "babel-plugin-jest-hoist@npm:29.5.0" dependencies: "@babel/template": ^7.3.3 "@babel/types": ^7.3.3 - "@types/babel__core": ^7.0.0 + "@types/babel__core": ^7.1.14 "@types/babel__traverse": ^7.0.6 - checksum: 709c17727aa8fd3be755d256fb514bf945a5c2ea6017f037d80280fc44ae5fe7dfeebf63d8412df53796455c2c216119d628d8cc90b099434fd819005943d058 + checksum: 099b5254073b6bc985b6d2d045ad26fb8ed30ff8ae6404c4fe8ee7cd0e98a820f69e3dfb871c7c65aae0f4b65af77046244c07bb92d49ef9005c90eedf681539 languageName: node linkType: hard @@ -3715,15 +3711,15 @@ __metadata: languageName: node linkType: hard -"babel-preset-jest@npm:^27.5.1": - version: 27.5.1 - resolution: "babel-preset-jest@npm:27.5.1" +"babel-preset-jest@npm:^29.5.0": + version: 29.5.0 + resolution: "babel-preset-jest@npm:29.5.0" dependencies: - babel-plugin-jest-hoist: ^27.5.1 + babel-plugin-jest-hoist: ^29.5.0 babel-preset-current-node-syntax: ^1.0.0 peerDependencies: "@babel/core": ^7.0.0 - checksum: 251bcea11c18fd9672fec104eadb45b43f117ceeb326fa7345ced778d4c1feab29343cd7a87a1dcfae4997d6c851a8b386d7f7213792da6e23b74f4443a8976d + checksum: 5566ca2762766c9319b4973d018d2fa08c0fcf6415c72cc54f4c8e7199e851ea8f5e6c6730f03ed7ed44fc8beefa959dd15911f2647dee47c615ff4faeddb1ad languageName: node linkType: hard @@ -3821,24 +3817,17 @@ __metadata: languageName: node linkType: hard -"browser-process-hrtime@npm:^1.0.0": - version: 1.0.0 - resolution: "browser-process-hrtime@npm:1.0.0" - checksum: e30f868cdb770b1201afb714ad1575dd86366b6e861900884665fb627109b3cc757c40067d3bfee1ff2a29c835257ea30725a8018a9afd02ac1c24b408b1e45f - languageName: node - linkType: hard - -"browserslist@npm:^4.14.5, browserslist@npm:^4.21.3, browserslist@npm:^4.21.4": - version: 4.21.4 - resolution: "browserslist@npm:4.21.4" +"browserslist@npm:^4.14.5, browserslist@npm:^4.21.4, browserslist@npm:^4.21.9": + version: 4.21.9 + resolution: "browserslist@npm:4.21.9" dependencies: - caniuse-lite: ^1.0.30001400 - electron-to-chromium: ^1.4.251 - node-releases: ^2.0.6 - update-browserslist-db: ^1.0.9 + caniuse-lite: ^1.0.30001503 + electron-to-chromium: ^1.4.431 + node-releases: ^2.0.12 + update-browserslist-db: ^1.0.11 bin: browserslist: cli.js - checksum: 4af3793704dbb4615bcd29059ab472344dc7961c8680aa6c4bb84f05340e14038d06a5aead58724eae69455b8fade8b8c69f1638016e87e5578969d74c078b79 + checksum: 80d3820584e211484ad1b1a5cfdeca1dd00442f47be87e117e1dda34b628c87e18b81ae7986fa5977b3e6a03154f6d13cd763baa6b8bf5dd9dd19f4926603698 languageName: node linkType: hard @@ -3975,10 +3964,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001400": - version: 1.0.30001407 - resolution: "caniuse-lite@npm:1.0.30001407" - checksum: e1c449d22f120a708accc956c1780f1da01af6c226cb6a324e531dc9f26f53075bff98e6c9cfce806157cdeede459aa8de03a3407b05f71d292a57b2910018b1 +"caniuse-lite@npm:^1.0.30001503": + version: 1.0.30001517 + resolution: "caniuse-lite@npm:1.0.30001517" + checksum: e4e87436ae1c4408cf4438aac22902b31eb03f3f5bad7f33bc518d12ffb35f3fd9395ccf7efc608ee046f90ce324ec6f7f26f8a8172b8c43c26a06ecee612a29 languageName: node linkType: hard @@ -3996,10 +3985,10 @@ __metadata: languageName: node linkType: hard -"cbor-web@npm:^8.0.0": - version: 8.1.0 - resolution: "cbor-web@npm:8.1.0" - checksum: 7898694ae4959a306f6e7dd2d042be8dab060a312d78dc8a2131d8ca641d5bcbcfe7e0691f1b6f0f95e5402b14ebf0ad797be14546712ab4682720b459c4836c +"cbor-web@npm:^9.0.0": + version: 9.0.1 + resolution: "cbor-web@npm:9.0.1" + checksum: fd5ffbb52490ec1d68607f9da8a207cf3b15ff7336556f9ffc34c34d7f26775dad6ff6e53b413bdaecaa75335d607d9d9170a17885e1d6640226fbcfa4c6453c languageName: node linkType: hard @@ -4196,7 +4185,7 @@ __metadata: languageName: node linkType: hard -"combined-stream@npm:^1.0.6, combined-stream@npm:^1.0.8, combined-stream@npm:~1.0.6": +"combined-stream@npm:^1.0.6, combined-stream@npm:~1.0.6": version: 1.0.8 resolution: "combined-stream@npm:1.0.8" dependencies: @@ -4323,7 +4312,7 @@ __metadata: languageName: node linkType: hard -"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0": +"convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0": version: 1.8.0 resolution: "convert-source-map@npm:1.8.0" dependencies: @@ -4332,6 +4321,13 @@ __metadata: languageName: node linkType: hard +"convert-source-map@npm:^2.0.0": + version: 2.0.0 + resolution: "convert-source-map@npm:2.0.0" + checksum: 63ae9933be5a2b8d4509daca5124e20c14d023c820258e484e32dc324d34c2754e71297c94a05784064ad27615037ef677e3f0c00469fb55f409d2bb21261035 + languageName: node + linkType: hard + "core-js-compat@npm:^3.25.1": version: 3.26.1 resolution: "core-js-compat@npm:3.26.1" @@ -4459,29 +4455,6 @@ __metadata: languageName: node linkType: hard -"cssom@npm:^0.4.4": - version: 0.4.4 - resolution: "cssom@npm:0.4.4" - checksum: e3bc1076e7ee4213d4fef05e7ae03bfa83dc05f32611d8edc341f4ecc3d9647b89c8245474c7dd2cdcdb797a27c462e99da7ad00a34399694559f763478ff53f - languageName: node - linkType: hard - -"cssom@npm:~0.3.6": - version: 0.3.8 - resolution: "cssom@npm:0.3.8" - checksum: 24beb3087c76c0d52dd458be9ee1fbc80ac771478a9baef35dd258cdeb527c68eb43204dd439692bb2b1ae5272fa5f2946d10946edab0d04f1078f85e06bc7f6 - languageName: node - linkType: hard - -"cssstyle@npm:^2.3.0": - version: 2.3.0 - resolution: "cssstyle@npm:2.3.0" - dependencies: - cssom: ~0.3.6 - checksum: 5f05e6fd2e3df0b44695c2f08b9ef38b011862b274e320665176467c0725e44a53e341bc4959a41176e83b66064ab786262e7380fd1cabeae6efee0d255bb4e3 - languageName: node - linkType: hard - "dargs@npm:^7.0.0": version: 7.0.0 resolution: "dargs@npm:7.0.0" @@ -4505,17 +4478,6 @@ __metadata: languageName: node linkType: hard -"data-urls@npm:^2.0.0": - version: 2.0.0 - resolution: "data-urls@npm:2.0.0" - dependencies: - abab: ^2.0.3 - whatwg-mimetype: ^2.3.0 - whatwg-url: ^8.0.0 - checksum: 97caf828aac25e25e04ba6869db0f99c75e6859bb5b424ada28d3e7841941ebf08ddff3c1b1bb4585986bd507a5d54c2a716853ea6cb98af877400e637393e71 - languageName: node - linkType: hard - "debug@npm:4, debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" @@ -4563,13 +4525,6 @@ __metadata: languageName: node linkType: hard -"decimal.js@npm:^10.2.1": - version: 10.3.1 - resolution: "decimal.js@npm:10.3.1" - checksum: 0351ac9f05fe050f23227aa6a4573bee2d58fa7378fcf28d969a8c789525032effb488a90320fd3fe86a66e17b4bc507d811b15eada5b7f0e7ec5d2af4c24a59 - languageName: node - linkType: hard - "dedent@npm:^0.7.0": version: 0.7.0 resolution: "dedent@npm:0.7.0" @@ -4577,7 +4532,7 @@ __metadata: languageName: node linkType: hard -"deep-is@npm:^0.1.3, deep-is@npm:~0.1.3": +"deep-is@npm:^0.1.3": version: 0.1.4 resolution: "deep-is@npm:0.1.4" checksum: edb65dd0d7d1b9c40b2f50219aef30e116cedd6fc79290e740972c132c09106d2e80aa0bc8826673dd5a00222d4179c84b36a790eef63a4c4bca75a37ef90804 @@ -4628,10 +4583,10 @@ __metadata: languageName: node linkType: hard -"diff-sequences@npm:^27.5.1": - version: 27.5.1 - resolution: "diff-sequences@npm:27.5.1" - checksum: a00db5554c9da7da225db2d2638d85f8e41124eccbd56cbaefb3b276dcbb1c1c2ad851c32defe2055a54a4806f030656cbf6638105fd6ce97bb87b90b32a33ca +"diff-sequences@npm:^29.4.3": + version: 29.4.3 + resolution: "diff-sequences@npm:29.4.3" + checksum: 28b265e04fdddcf7f9f814effe102cc95a9dec0564a579b5aed140edb24fc345c611ca52d76d725a3cab55d3888b915b5e8a4702e0f6058968a90fa5f41fcde7 languageName: node linkType: hard @@ -4701,15 +4656,6 @@ __metadata: languageName: node linkType: hard -"domexception@npm:^2.0.1": - version: 2.0.1 - resolution: "domexception@npm:2.0.1" - dependencies: - webidl-conversions: ^5.0.0 - checksum: d638e9cb05c52999f1b2eb87c374b03311ea5b1d69c2f875bc92da73e17db60c12142b45c950228642ff7f845c536b65305483350d080df59003a653da80b691 - languageName: node - linkType: hard - "dot-prop@npm:^3.0.0": version: 3.0.0 resolution: "dot-prop@npm:3.0.0" @@ -4738,17 +4684,17 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.251": - version: 1.4.255 - resolution: "electron-to-chromium@npm:1.4.255" - checksum: 9fd4e0b4a05b072e211b5a1ad2e20b099d7cd54a47b6cbf700dc9ef2020291b5b2d179af0dd0fc71be74b3c765a71ad14f7ff20afb637c0b58e7abc26ff3b68e +"electron-to-chromium@npm:^1.4.431": + version: 1.4.466 + resolution: "electron-to-chromium@npm:1.4.466" + checksum: 695af573f8642ed86db6e291b1c102083b1306fff7566b9d8e90bab04f7f330a9073a0487013fa21772625d60d9e2eb193a0518a6e80ef20ece20be8f3cd6e50 languageName: node linkType: hard -"emittery@npm:^0.8.1": - version: 0.8.1 - resolution: "emittery@npm:0.8.1" - checksum: 2457e8c7b0688bb006126f2c025b2655abe682f66b184954122a8a065b5277f9813d49d627896a10b076b81c513ec5f491fd9c14fbd42c04b95ca3c9f3c365ee +"emittery@npm:^0.13.1": + version: 0.13.1 + resolution: "emittery@npm:0.13.1" + checksum: 2b089ab6306f38feaabf4f6f02792f9ec85fc054fda79f44f6790e61bbf6bc4e1616afb9b232e0c5ec5289a8a452f79bfa6d905a6fd64e94b49981f0934001c6 languageName: node linkType: hard @@ -4777,13 +4723,13 @@ __metadata: languageName: node linkType: hard -"enhanced-resolve@npm:^5.9.2": - version: 5.9.2 - resolution: "enhanced-resolve@npm:5.9.2" +"enhanced-resolve@npm:^5.14.1": + version: 5.14.1 + resolution: "enhanced-resolve@npm:5.14.1" dependencies: graceful-fs: ^4.2.4 tapable: ^2.2.0 - checksum: 792b7a01abb4ee4433b658c71f92d5948675938e0c03cad1732abe843b87395f15cb880ace4f819f78ead94163278283afc79b8be63c0eddca8ab45f7d8c515d + checksum: ad2a31928b6649eed40d364838449587f731baa63863e83d2629bebaa8be1eabac18b90f89c1784bc805b0818363e99b22547159edd485d7e5ccf18cdc640642 languageName: node linkType: hard @@ -4865,10 +4811,10 @@ __metadata: languageName: node linkType: hard -"es-module-lexer@npm:^0.9.0": - version: 0.9.3 - resolution: "es-module-lexer@npm:0.9.3" - checksum: 84bbab23c396281db2c906c766af58b1ae2a1a2599844a504df10b9e8dc77ec800b3211fdaa133ff700f5703d791198807bba25d9667392d27a5e9feda344da8 +"es-module-lexer@npm:^1.2.1": + version: 1.3.0 + resolution: "es-module-lexer@npm:1.3.0" + checksum: 48fd9f504a9d2a894126f75c8b7ccc6273a289983e9b67255f165bfd9ae765d50100218251e94e702ca567826905ea2f7b3b4a0c4d74d3ce99cce3a2a606a238 languageName: node linkType: hard @@ -4911,25 +4857,6 @@ __metadata: languageName: node linkType: hard -"escodegen@npm:^2.0.0": - version: 2.0.0 - resolution: "escodegen@npm:2.0.0" - dependencies: - esprima: ^4.0.1 - estraverse: ^5.2.0 - esutils: ^2.0.2 - optionator: ^0.8.1 - source-map: ~0.6.1 - dependenciesMeta: - source-map: - optional: true - bin: - escodegen: bin/escodegen.js - esgenerate: bin/esgenerate.js - checksum: 5aa6b2966fafe0545e4e77936300cc94ad57cfe4dc4ebff9950492eaba83eef634503f12d7e3cbd644ecc1bab388ad0e92b06fd32222c9281a75d1cf02ec6cef - languageName: node - linkType: hard - "eslint-config-airbnb-base@npm:14.2.1": version: 14.2.1 resolution: "eslint-config-airbnb-base@npm:14.2.1" @@ -5154,7 +5081,7 @@ __metadata: languageName: node linkType: hard -"esprima@npm:^4.0.0, esprima@npm:^4.0.1": +"esprima@npm:^4.0.0": version: 4.0.1 resolution: "esprima@npm:4.0.1" bin: @@ -5248,15 +5175,17 @@ __metadata: languageName: node linkType: hard -"expect@npm:^27.5.1": - version: 27.5.1 - resolution: "expect@npm:27.5.1" +"expect@npm:^29.0.0, expect@npm:^29.6.1": + version: 29.6.1 + resolution: "expect@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 - jest-get-type: ^27.5.1 - jest-matcher-utils: ^27.5.1 - jest-message-util: ^27.5.1 - checksum: b2c66beb52de53ef1872165aace40224e722bca3c2274c54cfa74b6d617d55cf0ccdbf36783ccd64dbea501b280098ed33fd0b207d4f15bc03cd3c7a24364a6a + "@jest/expect-utils": ^29.6.1 + "@types/node": "*" + jest-get-type: ^29.4.3 + jest-matcher-utils: ^29.6.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 + checksum: 4e712e52c90f6c54e748fd2876be33c43ada6a59088ddf6a1acb08b18b3b97b3a672124684abe32599986d2f2a438d5afad148837ee06ea386d2a4bf0348de78 languageName: node linkType: hard @@ -5308,14 +5237,14 @@ __metadata: languageName: node linkType: hard -"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0": +"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" checksum: b191531e36c607977e5b1c47811158733c34ccb3bfde92c44798929e9b4154884378536d26ad90dfecd32e1ffc09c545d23535ad91b3161a27ddbb8ebe0cbecb languageName: node linkType: hard -"fast-levenshtein@npm:^2.0.6, fast-levenshtein@npm:~2.0.6": +"fast-levenshtein@npm:^2.0.6": version: 2.0.6 resolution: "fast-levenshtein@npm:2.0.6" checksum: 92cfec0a8dfafd9c7a15fba8f2cc29cd0b62b85f056d99ce448bbcd9f708e18ab2764bda4dd5158364f4145a7c72788538994f0d1787b956ef0d1062b0f7c24c @@ -5437,17 +5366,6 @@ __metadata: languageName: node linkType: hard -"form-data@npm:^3.0.0": - version: 3.0.1 - resolution: "form-data@npm:3.0.1" - dependencies: - asynckit: ^0.4.0 - combined-stream: ^1.0.8 - mime-types: ^2.1.12 - checksum: b019e8d35c8afc14a2bd8a7a92fa4f525a4726b6d5a9740e8d2623c30e308fbb58dc8469f90415a856698933c8479b01646a9dff33c87cc4e76d72aedbbf860d - languageName: node - linkType: hard - "form-data@npm:~2.3.2": version: 2.3.3 resolution: "form-data@npm:2.3.3" @@ -5661,7 +5579,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"glob@npm:^7.1.1, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.2.0": +"glob@npm:^7.1.1, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.2.0": version: 7.2.0 resolution: "glob@npm:7.2.0" dependencies: @@ -5832,15 +5750,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"html-encoding-sniffer@npm:^2.0.1": - version: 2.0.1 - resolution: "html-encoding-sniffer@npm:2.0.1" - dependencies: - whatwg-encoding: ^1.0.5 - checksum: bf30cce461015ed7e365736fcd6a3063c7bc016a91f74398ef6158886970a96333938f7c02417ab3c12aa82e3e53b40822145facccb9ddfbcdc15a879ae4d7ba - languageName: node - linkType: hard - "html-escaper@npm:^2.0.0": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" @@ -5855,17 +5764,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"http-proxy-agent@npm:^4.0.1": - version: 4.0.1 - resolution: "http-proxy-agent@npm:4.0.1" - dependencies: - "@tootallnate/once": 1 - agent-base: 6 - debug: 4 - checksum: c6a5da5a1929416b6bbdf77b1aca13888013fe7eb9d59fc292e25d18e041bb154a8dfada58e223fc7b76b9b2d155a87e92e608235201f77d34aa258707963a82 - languageName: node - linkType: hard - "http-proxy-agent@npm:^5.0.0": version: 5.0.0 resolution: "http-proxy-agent@npm:5.0.0" @@ -5935,15 +5833,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"iconv-lite@npm:0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: ">= 2.1.2 < 3" - checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6 - languageName: node - linkType: hard - "iconv-lite@npm:^0.6.2": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" @@ -6207,13 +6096,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"is-potential-custom-element-name@npm:^1.0.1": - version: 1.0.1 - resolution: "is-potential-custom-element-name@npm:1.0.1" - checksum: ced7bbbb6433a5b684af581872afe0e1767e2d1146b2207ca0068a648fb5cab9d898495d1ac0583524faaf24ca98176a7d9876363097c2d14fee6dd324f3a1ab - languageName: node - linkType: hard - "is-regex@npm:^1.1.4": version: 1.1.4 resolution: "is-regex@npm:1.1.4" @@ -6265,7 +6147,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"is-typedarray@npm:^1.0.0, is-typedarray@npm:~1.0.0": +"is-typedarray@npm:~1.0.0": version: 1.0.0 resolution: "is-typedarray@npm:1.0.0" checksum: 3508c6cd0a9ee2e0df2fa2e9baabcdc89e911c7bd5cf64604586697212feec525aa21050e48affb5ffc3df20f0f5d2e2cf79b08caa64e1ccc9578e251763aef7 @@ -6361,60 +6243,60 @@ fsevents@^2.3.2: languageName: node linkType: hard -"jest-changed-files@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-changed-files@npm:27.5.1" +"jest-changed-files@npm:^29.5.0": + version: 29.5.0 + resolution: "jest-changed-files@npm:29.5.0" dependencies: - "@jest/types": ^27.5.1 execa: ^5.0.0 - throat: ^6.0.1 - checksum: 95e9dc74c3ca688ef85cfeab270f43f8902721a6c8ade6ac2459459a77890c85977f537d6fb809056deaa6d9c3f075fa7d2699ff5f3bf7d3fda17c3760b79b15 + p-limit: ^3.1.0 + checksum: a67a7cb3c11f8f92bd1b7c79e84f724cbd11a9ad51f3cdadafe3ce7ee3c79ee50dbea128f920f5fddc807e9e4e83f5462143094391feedd959a77dd20ab96cf3 languageName: node linkType: hard -"jest-circus@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-circus@npm:27.5.1" +"jest-circus@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-circus@npm:29.6.1" dependencies: - "@jest/environment": ^27.5.1 - "@jest/test-result": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/environment": ^29.6.1 + "@jest/expect": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 co: ^4.6.0 dedent: ^0.7.0 - expect: ^27.5.1 is-generator-fn: ^2.0.0 - jest-each: ^27.5.1 - jest-matcher-utils: ^27.5.1 - jest-message-util: ^27.5.1 - jest-runtime: ^27.5.1 - jest-snapshot: ^27.5.1 - jest-util: ^27.5.1 - pretty-format: ^27.5.1 + jest-each: ^29.6.1 + jest-matcher-utils: ^29.6.1 + jest-message-util: ^29.6.1 + jest-runtime: ^29.6.1 + jest-snapshot: ^29.6.1 + jest-util: ^29.6.1 + p-limit: ^3.1.0 + pretty-format: ^29.6.1 + pure-rand: ^6.0.0 slash: ^3.0.0 stack-utils: ^2.0.3 - throat: ^6.0.1 - checksum: 6192dccbccb3a6acfa361cbb97bdbabe94864ccf3d885932cfd41f19534329d40698078cf9be1489415e8234255d6ea9f9aff5396b79ad842a6fca6e6fc08fd0 + checksum: f3e39a74b601929448df92037f0599978d4d7a4b8f636f64e8020533d2d2b2f669d6729c80c6efed69341ca26753e5061e9787a0acd6c70af2127a94375ebb76 languageName: node linkType: hard -"jest-cli@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-cli@npm:27.5.1" +"jest-cli@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-cli@npm:29.6.1" dependencies: - "@jest/core": ^27.5.1 - "@jest/test-result": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/core": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/types": ^29.6.1 chalk: ^4.0.0 exit: ^0.1.2 graceful-fs: ^4.2.9 import-local: ^3.0.2 - jest-config: ^27.5.1 - jest-util: ^27.5.1 - jest-validate: ^27.5.1 + jest-config: ^29.6.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 prompts: ^2.0.1 - yargs: ^16.2.0 + yargs: ^17.3.1 peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -6422,212 +6304,173 @@ fsevents@^2.3.2: optional: true bin: jest: bin/jest.js - checksum: 6c0a69fb48e500241409e09ff743ed72bc6578d7769e2c994724e7ef1e5587f6c1f85dc429e93b98ae38a365222993ee70f0acc2199358992120900984f349e5 + checksum: f5854ffea977b9a12520ea71f8d0cc8a626cbb93d7e1e6eea18a2a1f2b25f70f1b6b08a89f11b4dc7dd36a1776a9ac2cf8ec5c7998086f913ee690c06c07c949 languageName: node linkType: hard -"jest-config@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-config@npm:27.5.1" +"jest-config@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-config@npm:29.6.1" dependencies: - "@babel/core": ^7.8.0 - "@jest/test-sequencer": ^27.5.1 - "@jest/types": ^27.5.1 - babel-jest: ^27.5.1 + "@babel/core": ^7.11.6 + "@jest/test-sequencer": ^29.6.1 + "@jest/types": ^29.6.1 + babel-jest: ^29.6.1 chalk: ^4.0.0 ci-info: ^3.2.0 deepmerge: ^4.2.2 - glob: ^7.1.1 + glob: ^7.1.3 graceful-fs: ^4.2.9 - jest-circus: ^27.5.1 - jest-environment-jsdom: ^27.5.1 - jest-environment-node: ^27.5.1 - jest-get-type: ^27.5.1 - jest-jasmine2: ^27.5.1 - jest-regex-util: ^27.5.1 - jest-resolve: ^27.5.1 - jest-runner: ^27.5.1 - jest-util: ^27.5.1 - jest-validate: ^27.5.1 + jest-circus: ^29.6.1 + jest-environment-node: ^29.6.1 + jest-get-type: ^29.4.3 + jest-regex-util: ^29.4.3 + jest-resolve: ^29.6.1 + jest-runner: ^29.6.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 micromatch: ^4.0.4 parse-json: ^5.2.0 - pretty-format: ^27.5.1 + pretty-format: ^29.6.1 slash: ^3.0.0 strip-json-comments: ^3.1.1 peerDependencies: + "@types/node": "*" ts-node: ">=9.0.0" peerDependenciesMeta: + "@types/node": + optional: true ts-node: optional: true - checksum: 1188fd46c0ed78cbe3175eb9ad6712ccf74a74be33d9f0d748e147c107f0889f8b701fbff1567f31836ae18597dacdc43d6a8fc30dd34ade6c9229cc6c7cb82d + checksum: 3a30afeb28cc5658ef9cd95f2551ab8a29641bb6d377eb239cba8e7522eb4611c9a98cdcf173d87f5ad7b5e1ad242c3cd5434a260107bd3c7e8305d05023e05c languageName: node linkType: hard -"jest-diff@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-diff@npm:27.5.1" +"jest-diff@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-diff@npm:29.6.1" dependencies: chalk: ^4.0.0 - diff-sequences: ^27.5.1 - jest-get-type: ^27.5.1 - pretty-format: ^27.5.1 - checksum: 8be27c1e1ee57b2bb2bef9c0b233c19621b4c43d53a3c26e2c00a4e805eb4ea11fe1694a06a9fb0e80ffdcfdc0d2b1cb0b85920b3f5c892327ecd1e7bd96b865 + diff-sequences: ^29.4.3 + jest-get-type: ^29.4.3 + pretty-format: ^29.6.1 + checksum: c6350178ca27d92c7fd879790fb2525470c1ff1c5d29b1834a240fecd26c6904fb470ebddb98dc96dd85389c56c3b50e6965a1f5203e9236d213886ed9806219 languageName: node linkType: hard -"jest-docblock@npm:^27.4.0, jest-docblock@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-docblock@npm:27.5.1" +"jest-docblock@npm:^29.4.3": + version: 29.4.3 + resolution: "jest-docblock@npm:29.4.3" dependencies: detect-newline: ^3.0.0 - checksum: c0fed6d55b229d8bffdd8d03f121dd1a3be77c88f50552d374f9e1ea3bde57bf6bea017a0add04628d98abcb1bfb48b456438eeca8a74ef0053f4dae3b95d29c + checksum: e0e9df1485bb8926e5b33478cdf84b3387d9caf3658e7dc1eaa6dc34cb93dea0d2d74797f6e940f0233a88f3dadd60957f2288eb8f95506361f85b84bf8661df languageName: node linkType: hard -"jest-each@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-each@npm:27.5.1" +"jest-each@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-each@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 + "@jest/types": ^29.6.1 chalk: ^4.0.0 - jest-get-type: ^27.5.1 - jest-util: ^27.5.1 - pretty-format: ^27.5.1 - checksum: b5a6d8730fd938982569c9e0b42bdf3c242f97b957ed8155a6473b5f7b540970f8685524e7f53963dc1805319f4b6602abfc56605590ca19d55bd7a87e467e63 + jest-get-type: ^29.4.3 + jest-util: ^29.6.1 + pretty-format: ^29.6.1 + checksum: 9d2ea7ed5326ee8c22523b22c66c85fe73754ea39f9b389881956508ee441392c61072a5fbf673e39beddd31d011bb94acae3edc77053ba4f9aa5c060114a5c8 languageName: node linkType: hard -"jest-environment-jsdom@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-environment-jsdom@npm:27.5.1" +"jest-environment-node@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-environment-node@npm:29.6.1" dependencies: - "@jest/environment": ^27.5.1 - "@jest/fake-timers": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/environment": ^29.6.1 + "@jest/fake-timers": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" - jest-mock: ^27.5.1 - jest-util: ^27.5.1 - jsdom: ^16.6.0 - checksum: bc104aef7d7530d0740402aa84ac812138b6d1e51fe58adecce679f82b99340ddab73e5ec68fa079f33f50c9ddec9728fc9f0ddcca2ad6f0b351eed2762cc555 + jest-mock: ^29.6.1 + jest-util: ^29.6.1 + checksum: a50287e1ff29d131646bd09acc3222ac6ea0ad61e86bf73851d318ef2be0633a421b8558c4a15ddc67e0ffcfc32da7f6a0d8a2ddbfa85453837899dec88d256c languageName: node linkType: hard -"jest-environment-node@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-environment-node@npm:27.5.1" - dependencies: - "@jest/environment": ^27.5.1 - "@jest/fake-timers": ^27.5.1 - "@jest/types": ^27.5.1 - "@types/node": "*" - jest-mock: ^27.5.1 - jest-util: ^27.5.1 - checksum: 0f988330c4f3eec092e3fb37ea753b0c6f702e83cd8f4d770af9c2bf964a70bc45fbd34ec6fdb6d71ce98a778d9f54afd673e63f222e4667fff289e8069dba39 - languageName: node - linkType: hard - -"jest-get-type@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-get-type@npm:27.5.1" - checksum: 63064ab70195c21007d897c1157bf88ff94a790824a10f8c890392e7d17eda9c3900513cb291ca1c8d5722cad79169764e9a1279f7c8a9c4cd6e9109ff04bbc0 +"jest-get-type@npm:^29.4.3": + version: 29.4.3 + resolution: "jest-get-type@npm:29.4.3" + checksum: 6ac7f2dde1c65e292e4355b6c63b3a4897d7e92cb4c8afcf6d397f2682f8080e094c8b0b68205a74d269882ec06bf696a9de6cd3e1b7333531e5ed7b112605ce languageName: node linkType: hard -"jest-haste-map@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-haste-map@npm:27.5.1" +"jest-haste-map@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-haste-map@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 - "@types/graceful-fs": ^4.1.2 + "@jest/types": ^29.6.1 + "@types/graceful-fs": ^4.1.3 "@types/node": "*" anymatch: ^3.0.3 fb-watchman: ^2.0.0 fsevents: ^2.3.2 graceful-fs: ^4.2.9 - jest-regex-util: ^27.5.1 - jest-serializer: ^27.5.1 - jest-util: ^27.5.1 - jest-worker: ^27.5.1 + jest-regex-util: ^29.4.3 + jest-util: ^29.6.1 + jest-worker: ^29.6.1 micromatch: ^4.0.4 - walker: ^1.0.7 + walker: ^1.0.8 dependenciesMeta: fsevents: optional: true - checksum: e092a1412829a9254b4725531ee72926de530f77fda7b0d9ea18008fb7623c16f72e772d8e93be71cac9e591b2c6843a669610887dd2c89bd9eb528856e3ab47 + checksum: 7c74d5a0f6aafa9f4e60fae7949d4774770c0243fb529c24f2f4c81229db479fa318dc8b81e8d226865aef1d600af10bd8404dd208e802318434b46f75d5d869 languageName: node linkType: hard -"jest-jasmine2@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-jasmine2@npm:27.5.1" +"jest-leak-detector@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-leak-detector@npm:29.6.1" dependencies: - "@jest/environment": ^27.5.1 - "@jest/source-map": ^27.5.1 - "@jest/test-result": ^27.5.1 - "@jest/types": ^27.5.1 - "@types/node": "*" - chalk: ^4.0.0 - co: ^4.6.0 - expect: ^27.5.1 - is-generator-fn: ^2.0.0 - jest-each: ^27.5.1 - jest-matcher-utils: ^27.5.1 - jest-message-util: ^27.5.1 - jest-runtime: ^27.5.1 - jest-snapshot: ^27.5.1 - jest-util: ^27.5.1 - pretty-format: ^27.5.1 - throat: ^6.0.1 - checksum: b716adf253ceb73db661936153394ab90d7f3a8ba56d6189b7cd4df8e4e2a4153b4e63ebb5d36e29ceb0f4c211d5a6f36ab7048c6abbd881c8646567e2ab8e6d + jest-get-type: ^29.4.3 + pretty-format: ^29.6.1 + checksum: 5122d40c248effaede4c9ee3a99046a3f30088fef7bfc4af534678b432455161399357af46deb6423de7e05c6597920d6ee8cd570e26048886a90d541334f8c8 languageName: node linkType: hard -"jest-leak-detector@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-leak-detector@npm:27.5.1" - dependencies: - jest-get-type: ^27.5.1 - pretty-format: ^27.5.1 - checksum: 5c9689060960567ddaf16c570d87afa760a461885765d2c71ef4f4857bbc3af1482c34e3cce88e50beefde1bf35e33530b020480752057a7e3dbb1ca0bae359f - languageName: node - linkType: hard - -"jest-matcher-utils@npm:^27.0.0, jest-matcher-utils@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-matcher-utils@npm:27.5.1" +"jest-matcher-utils@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-matcher-utils@npm:29.6.1" dependencies: chalk: ^4.0.0 - jest-diff: ^27.5.1 - jest-get-type: ^27.5.1 - pretty-format: ^27.5.1 - checksum: bb2135fc48889ff3fe73888f6cc7168ddab9de28b51b3148f820c89fdfd2effdcad005f18be67d0b9be80eda208ad47290f62f03d0a33f848db2dd0273c8217a + jest-diff: ^29.6.1 + jest-get-type: ^29.4.3 + pretty-format: ^29.6.1 + checksum: d2efa6aed6e4820758b732b9fefd315c7fa4508ee690da656e1c5ac4c1a0f4cee5b04c9719ee1fda9aeb883b4209186c145089ced521e715b9fa70afdfa4a9c6 languageName: node linkType: hard -"jest-message-util@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-message-util@npm:27.5.1" +"jest-message-util@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-message-util@npm:29.6.1" dependencies: "@babel/code-frame": ^7.12.13 - "@jest/types": ^27.5.1 + "@jest/types": ^29.6.1 "@types/stack-utils": ^2.0.0 chalk: ^4.0.0 graceful-fs: ^4.2.9 micromatch: ^4.0.4 - pretty-format: ^27.5.1 + pretty-format: ^29.6.1 slash: ^3.0.0 stack-utils: ^2.0.3 - checksum: eb6d637d1411c71646de578c49826b6da8e33dd293e501967011de9d1916d53d845afbfb52a5b661ff1c495be7c13f751c48c7f30781fd94fbd64842e8195796 + checksum: 3e7cb2ff087fe72255292e151d24e4fbb4cd6134885c0a67a4b302f233fe4110bf7580b176f427f05ad7550eb878ed94237209785d09d659a7d171ffa59c068f languageName: node linkType: hard -"jest-mock@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-mock@npm:27.5.1" +"jest-mock@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-mock@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 + "@jest/types": ^29.6.1 "@types/node": "*" - checksum: f5b5904bb1741b4a1687a5f492535b7b1758dc26534c72a5423305f8711292e96a601dec966df81bb313269fb52d47227e29f9c2e08324d79529172f67311be0 + jest-util: ^29.6.1 + checksum: 5e902f1a7eba1eb1a64eb6c19947fe1316834359d9869d0e2644d8979b9cad0465885dc4c9909c471888cddeea835c938cec6263d386d3d1aad720fc74e52ea1 languageName: node linkType: hard @@ -6643,195 +6486,173 @@ fsevents@^2.3.2: languageName: node linkType: hard -"jest-regex-util@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-regex-util@npm:27.5.1" - checksum: d45ca7a9543616a34f7f3079337439cf07566e677a096472baa2810e274b9808b76767c97b0a4029b8a5b82b9d256dee28ef9ad4138b2b9e5933f6fac106c418 +"jest-regex-util@npm:^29.4.3": + version: 29.4.3 + resolution: "jest-regex-util@npm:29.4.3" + checksum: 96fc7fc28cd4dd73a63c13a526202c4bd8b351d4e5b68b1a2a2c88da3308c2a16e26feaa593083eb0bac38cca1aa9dd05025412e7de013ba963fb8e66af22b8a languageName: node linkType: hard -"jest-resolve-dependencies@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-resolve-dependencies@npm:27.5.1" +"jest-resolve-dependencies@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-resolve-dependencies@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 - jest-regex-util: ^27.5.1 - jest-snapshot: ^27.5.1 - checksum: c67af97afad1da88f5530317c732bbd1262d1225f6cd7f4e4740a5db48f90ab0bd8564738ac70d1a43934894f9aef62205c1b8f8ee89e5c7a737e6a121ee4c25 + jest-regex-util: ^29.4.3 + jest-snapshot: ^29.6.1 + checksum: cee0a0fe53fd4531492a526b6ccd32377baad1eff6e6c124f04e9dc920219fd23fd39be88bb9551ee68d5fe92a3af627b423c9bc65a2aa0ac8a223c0e74dbbbb languageName: node linkType: hard -"jest-resolve@npm:^27.2.5, jest-resolve@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-resolve@npm:27.5.1" +"jest-resolve@npm:^29.5.0, jest-resolve@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-resolve@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 chalk: ^4.0.0 graceful-fs: ^4.2.9 - jest-haste-map: ^27.5.1 + jest-haste-map: ^29.6.1 jest-pnp-resolver: ^1.2.2 - jest-util: ^27.5.1 - jest-validate: ^27.5.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 resolve: ^1.20.0 - resolve.exports: ^1.1.0 + resolve.exports: ^2.0.0 slash: ^3.0.0 - checksum: 735830e7265b20a348029738680bb2f6e37f80ecea86cda869a4c318ba3a45d39c7a3a873a22f7f746d86258c50ead6e7f501de043e201c095d7ba628a1c440f - languageName: node - linkType: hard - -"jest-runner-groups@npm:^2.1.0": - version: 2.1.0 - resolution: "jest-runner-groups@npm:2.1.0" - peerDependencies: - jest-docblock: ">= 24" - jest-runner: ">= 24" - checksum: 760ae1b47e0d257441843508652bc09d6b9e09c35be2325d81bb14b082bc9c49974df0123c75a4b45a655c04e61d52dc3d4bf32279243fd86b5656fdb582573a + checksum: 9ce979a0f4a751bea58caea76415112df2a3f4d58e294019872244728aadd001f0ec20c873a3c805dd8f7c762143b3c14d00f87d124ed87c9981fbf8723090ef languageName: node linkType: hard -"jest-runner@npm:^27.4.6, jest-runner@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-runner@npm:27.5.1" +"jest-runner@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-runner@npm:29.6.1" dependencies: - "@jest/console": ^27.5.1 - "@jest/environment": ^27.5.1 - "@jest/test-result": ^27.5.1 - "@jest/transform": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/console": ^29.6.1 + "@jest/environment": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 - emittery: ^0.8.1 + emittery: ^0.13.1 graceful-fs: ^4.2.9 - jest-docblock: ^27.5.1 - jest-environment-jsdom: ^27.5.1 - jest-environment-node: ^27.5.1 - jest-haste-map: ^27.5.1 - jest-leak-detector: ^27.5.1 - jest-message-util: ^27.5.1 - jest-resolve: ^27.5.1 - jest-runtime: ^27.5.1 - jest-util: ^27.5.1 - jest-worker: ^27.5.1 - source-map-support: ^0.5.6 - throat: ^6.0.1 - checksum: 5bbe6cf847dd322b3332ec9d6977b54f91bd5f72ff620bc1a0192f0f129deda8aa7ca74c98922187a7aa87d8e0ce4f6c50e99a7ccb2a310bf4d94be2e0c3ce8e - languageName: node - linkType: hard - -"jest-runtime@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-runtime@npm:27.5.1" - dependencies: - "@jest/environment": ^27.5.1 - "@jest/fake-timers": ^27.5.1 - "@jest/globals": ^27.5.1 - "@jest/source-map": ^27.5.1 - "@jest/test-result": ^27.5.1 - "@jest/transform": ^27.5.1 - "@jest/types": ^27.5.1 + jest-docblock: ^29.4.3 + jest-environment-node: ^29.6.1 + jest-haste-map: ^29.6.1 + jest-leak-detector: ^29.6.1 + jest-message-util: ^29.6.1 + jest-resolve: ^29.6.1 + jest-runtime: ^29.6.1 + jest-util: ^29.6.1 + jest-watcher: ^29.6.1 + jest-worker: ^29.6.1 + p-limit: ^3.1.0 + source-map-support: 0.5.13 + checksum: 0e4dbda26669ae31fee32f8a62b3119bba510f2d17a098d6157b48a73ed2fc9842405bf893f3045c12b3632c7c0e3399fb22684b18ab5566aff4905b26c79a9a + languageName: node + linkType: hard + +"jest-runtime@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-runtime@npm:29.6.1" + dependencies: + "@jest/environment": ^29.6.1 + "@jest/fake-timers": ^29.6.1 + "@jest/globals": ^29.6.1 + "@jest/source-map": ^29.6.0 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 + "@types/node": "*" chalk: ^4.0.0 cjs-module-lexer: ^1.0.0 collect-v8-coverage: ^1.0.0 - execa: ^5.0.0 glob: ^7.1.3 graceful-fs: ^4.2.9 - jest-haste-map: ^27.5.1 - jest-message-util: ^27.5.1 - jest-mock: ^27.5.1 - jest-regex-util: ^27.5.1 - jest-resolve: ^27.5.1 - jest-snapshot: ^27.5.1 - jest-util: ^27.5.1 + jest-haste-map: ^29.6.1 + jest-message-util: ^29.6.1 + jest-mock: ^29.6.1 + jest-regex-util: ^29.4.3 + jest-resolve: ^29.6.1 + jest-snapshot: ^29.6.1 + jest-util: ^29.6.1 slash: ^3.0.0 strip-bom: ^4.0.0 - checksum: 929e3df0c53dab43f831f2af4e2996b22aa8cb2d6d483919d6b0426cbc100098fd5b777b998c6568b77f8c4d860b2e83127514292ff61416064f5ef926492386 + checksum: 7c360c9694467d996f3d6d914fefa0e7bda554adda8c2b9fba31546dba663d71a64eda103ff68120a2422f3c16db8f0bc2c445923fe8fb934f37e53ef74fb429 languageName: node linkType: hard -"jest-serializer@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-serializer@npm:27.5.1" - dependencies: - "@types/node": "*" - graceful-fs: ^4.2.9 - checksum: 803e03a552278610edc6753c0dd9fa5bb5cd3ca47414a7b2918106efb62b79fd5e9ae785d0a21f12a299fa599fea8acc1fa6dd41283328cee43962cf7df9bb44 - languageName: node - linkType: hard - -"jest-snapshot@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-snapshot@npm:27.5.1" +"jest-snapshot@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-snapshot@npm:29.6.1" dependencies: - "@babel/core": ^7.7.2 + "@babel/core": ^7.11.6 "@babel/generator": ^7.7.2 + "@babel/plugin-syntax-jsx": ^7.7.2 "@babel/plugin-syntax-typescript": ^7.7.2 - "@babel/traverse": ^7.7.2 - "@babel/types": ^7.0.0 - "@jest/transform": ^27.5.1 - "@jest/types": ^27.5.1 - "@types/babel__traverse": ^7.0.4 + "@babel/types": ^7.3.3 + "@jest/expect-utils": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 "@types/prettier": ^2.1.5 babel-preset-current-node-syntax: ^1.0.0 chalk: ^4.0.0 - expect: ^27.5.1 + expect: ^29.6.1 graceful-fs: ^4.2.9 - jest-diff: ^27.5.1 - jest-get-type: ^27.5.1 - jest-haste-map: ^27.5.1 - jest-matcher-utils: ^27.5.1 - jest-message-util: ^27.5.1 - jest-util: ^27.5.1 + jest-diff: ^29.6.1 + jest-get-type: ^29.4.3 + jest-matcher-utils: ^29.6.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 natural-compare: ^1.4.0 - pretty-format: ^27.5.1 - semver: ^7.3.2 - checksum: a5cfadf0d21cd76063925d1434bc076443ed6d87847d0e248f0b245f11db3d98ff13e45cc03b15404027dabecd712d925f47b6eae4f64986f688640a7d362514 + pretty-format: ^29.6.1 + semver: ^7.5.3 + checksum: e8f69d1fd4a29d354d4dca9eb2a22674b300f8ef509e4f1e75337c880414a00d2bdc9d3849a6855dbb5a76bfbe74603f33435378a3877e69f0838e4cc2244350 languageName: node linkType: hard -"jest-util@npm:^27.0.0, jest-util@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-util@npm:27.5.1" +"jest-util@npm:^29.0.0, jest-util@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-util@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 ci-info: ^3.2.0 graceful-fs: ^4.2.9 picomatch: ^2.2.3 - checksum: ac8d122f6daf7a035dcea156641fd3701aeba245417c40836a77e35b3341b9c02ddc5d904cfcd4ddbaa00ab854da76d3b911870cafdcdbaff90ea471de26c7d7 + checksum: fc553556c1350c443449cadaba5fb9d604628e8b5ceb6ceaf4e7e08975b24277d0a14bf2e0f956024e03c23e556fcb074659423422a06fbedf2ab52978697ac7 languageName: node linkType: hard -"jest-validate@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-validate@npm:27.5.1" +"jest-validate@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-validate@npm:29.6.1" dependencies: - "@jest/types": ^27.5.1 + "@jest/types": ^29.6.1 camelcase: ^6.2.0 chalk: ^4.0.0 - jest-get-type: ^27.5.1 + jest-get-type: ^29.4.3 leven: ^3.1.0 - pretty-format: ^27.5.1 - checksum: 82e870f8ee7e4fb949652711b1567f05ae31c54be346b0899e8353e5c20fad7692b511905b37966945e90af8dc0383eb41a74f3ffefb16140ea4f9164d841412 + pretty-format: ^29.6.1 + checksum: d2491f3f33d9bbc2dcaaa6acbff26f257b59c5eeceb65a52a9c1cec2f679b836ec2a4658b7004c0ef9d90cd0d9bd664e41d5ed6900f932bea742dd8e6b85e7f1 languageName: node linkType: hard -"jest-watcher@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-watcher@npm:27.5.1" +"jest-watcher@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-watcher@npm:29.6.1" dependencies: - "@jest/test-result": ^27.5.1 - "@jest/types": ^27.5.1 + "@jest/test-result": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" ansi-escapes: ^4.2.1 chalk: ^4.0.0 - jest-util: ^27.5.1 + emittery: ^0.13.1 + jest-util: ^29.6.1 string-length: ^4.0.1 - checksum: 191c4e9c278c0902ade1a8a80883ac244963ba3e6e78607a3d5f729ccca9c6e71fb3b316f87883658132641c5d818aa84202585c76752e03c539e6cbecb820bd + checksum: 69bd5a602284fdce6eba5486c5c57aca6b511d91cb0907c34c104d6dd931e18ce67baa7f8e280fa473e5d81ea3e7b9e7d94f712c37ab0b3b8cc2aec30676955d languageName: node linkType: hard -"jest-worker@npm:^27.4.5, jest-worker@npm:^27.5.1": +"jest-worker@npm:^27.4.5": version: 27.5.1 resolution: "jest-worker@npm:27.5.1" dependencies: @@ -6842,13 +6663,26 @@ fsevents@^2.3.2: languageName: node linkType: hard -"jest@npm:^27.4.7": - version: 27.5.1 - resolution: "jest@npm:27.5.1" +"jest-worker@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-worker@npm:29.6.1" + dependencies: + "@types/node": "*" + jest-util: ^29.6.1 + merge-stream: ^2.0.0 + supports-color: ^8.0.0 + checksum: 0af309ea4db17c4c47e84a9246f907960a15577683c005fdeafc8f3c06bc455136f95a6f28fa2a3e924b767eb4dacd9b40915a7707305f88586f099af3ac27a8 + languageName: node + linkType: hard + +"jest@npm:^29.6.1": + version: 29.6.1 + resolution: "jest@npm:29.6.1" dependencies: - "@jest/core": ^27.5.1 + "@jest/core": ^29.6.1 + "@jest/types": ^29.6.1 import-local: ^3.0.2 - jest-cli: ^27.5.1 + jest-cli: ^29.6.1 peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -6856,7 +6690,7 @@ fsevents@^2.3.2: optional: true bin: jest: bin/jest.js - checksum: 96f1d69042b3c6dfc695f2a4e4b0db38af6fb78582ad1a02beaa57cfcd77cbd31567d7d865c1c85709b7c3e176eefa3b2035ffecd646005f15d8ef528eccf205 + checksum: 7b8c0ca72f483e00ec19dcf9549f9a9af8ae468ab62925b148d714b58eb52d5fea9a082625193bc833d2d9b64cf65a11f3d37857636c5551af05c10aec4ce71b languageName: node linkType: hard @@ -6893,46 +6727,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"jsdom@npm:^16.6.0": - version: 16.7.0 - resolution: "jsdom@npm:16.7.0" - dependencies: - abab: ^2.0.5 - acorn: ^8.2.4 - acorn-globals: ^6.0.0 - cssom: ^0.4.4 - cssstyle: ^2.3.0 - data-urls: ^2.0.0 - decimal.js: ^10.2.1 - domexception: ^2.0.1 - escodegen: ^2.0.0 - form-data: ^3.0.0 - html-encoding-sniffer: ^2.0.1 - http-proxy-agent: ^4.0.1 - https-proxy-agent: ^5.0.0 - is-potential-custom-element-name: ^1.0.1 - nwsapi: ^2.2.0 - parse5: 6.0.1 - saxes: ^5.0.1 - symbol-tree: ^3.2.4 - tough-cookie: ^4.0.0 - w3c-hr-time: ^1.0.2 - w3c-xmlserializer: ^2.0.0 - webidl-conversions: ^6.1.0 - whatwg-encoding: ^1.0.5 - whatwg-mimetype: ^2.3.0 - whatwg-url: ^8.5.0 - ws: ^7.4.6 - xml-name-validator: ^3.0.0 - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true - checksum: 454b83371857000763ed31130a049acd1b113e3b927e6dcd75c67ddc30cdd242d7ebcac5c2294b7a1a6428155cb1398709c573b3c6d809218692ea68edd93370 - languageName: node - linkType: hard - "jsesc@npm:^2.5.1": version: 2.5.2 resolution: "jsesc@npm:2.5.2" @@ -6951,14 +6745,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"json-parse-better-errors@npm:^1.0.2": - version: 1.0.2 - resolution: "json-parse-better-errors@npm:1.0.2" - checksum: ff2b5ba2a70e88fd97a3cb28c1840144c5ce8fae9cbeeddba15afa333a5c407cf0e42300cd0a2885dbb055227fe68d405070faad941beeffbfde9cf3b2c78c5d - languageName: node - linkType: hard - -"json-parse-even-better-errors@npm:^2.3.0": +"json-parse-even-better-errors@npm:^2.3.0, json-parse-even-better-errors@npm:^2.3.1": version: 2.3.1 resolution: "json-parse-even-better-errors@npm:2.3.1" checksum: 798ed4cf3354a2d9ccd78e86d2169515a0097a5c133337807cdf7f1fc32e1391d207ccfc276518cc1d7d8d4db93288b8a50ba4293d212ad1336e52a8ec0a941f @@ -7000,15 +6787,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"json5@npm:2.x, json5@npm:^2.2.1": - version: 2.2.3 - resolution: "json5@npm:2.2.3" - bin: - json5: lib/cli.js - checksum: 2a7436a93393830bce797d4626275152e37e877b265e94ca69c99e3d20c2b9dab021279146a39cdb700e71b2dd32a4cebd1514cd57cee102b1af906ce5040349 - languageName: node - linkType: hard - "json5@npm:^1.0.1": version: 1.0.2 resolution: "json5@npm:1.0.2" @@ -7020,10 +6798,19 @@ fsevents@^2.3.2: languageName: node linkType: hard -"jsonc-parser@npm:^3.0.0": - version: 3.0.0 - resolution: "jsonc-parser@npm:3.0.0" - checksum: 1df2326f1f9688de30c70ff19c5b2a83ba3b89a1036160da79821d1361090775e9db502dc57a67c11b56e1186fc1ed70b887f25c5febf9a3ec4f91435836c99d +"json5@npm:^2.2.2, json5@npm:^2.2.3": + version: 2.2.3 + resolution: "json5@npm:2.2.3" + bin: + json5: lib/cli.js + checksum: 2a7436a93393830bce797d4626275152e37e877b265e94ca69c99e3d20c2b9dab021279146a39cdb700e71b2dd32a4cebd1514cd57cee102b1af906ce5040349 + languageName: node + linkType: hard + +"jsonc-parser@npm:^3.2.0": + version: 3.2.0 + resolution: "jsonc-parser@npm:3.2.0" + checksum: 946dd9a5f326b745aa326d48a7257e3f4a4b62c5e98ec8e49fa2bdd8d96cef7e6febf1399f5c7016114fd1f68a1c62c6138826d5d90bc650448e3cf0951c53c7 languageName: node linkType: hard @@ -7126,16 +6913,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"levn@npm:~0.3.0": - version: 0.3.0 - resolution: "levn@npm:0.3.0" - dependencies: - prelude-ls: ~1.1.2 - type-check: ~0.3.2 - checksum: 0d084a524231a8246bb10fec48cdbb35282099f6954838604f3c7fc66f2e16fa66fd9cc2f3f20a541a113c4dafdf181e822c887c8a319c9195444e6c64ac395e - languageName: node - linkType: hard - "lines-and-columns@npm:^1.1.6": version: 1.2.4 resolution: "lines-and-columns@npm:1.2.4" @@ -7241,7 +7018,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.21, lodash@npm:^4.7.0": +"lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 @@ -7343,12 +7120,12 @@ fsevents@^2.3.2: languageName: node linkType: hard -"marked@npm:^4.0.12": - version: 4.0.12 - resolution: "marked@npm:4.0.12" +"marked@npm:^4.2.12": + version: 4.3.0 + resolution: "marked@npm:4.3.0" bin: marked: bin/marked.js - checksum: 7575117f85a8986652f3ac8b8a7b95056c4c5fce01a1fc76dc4c7960412cb4c9bd9da8133487159b6b3ff84f52b543dfe9a36f826a5f358892b5ec4b6824f192 + checksum: 0db6817893952c3ec710eb9ceafb8468bf5ae38cb0f92b7b083baa13d70b19774674be04db5b817681fa7c5c6a088f61300815e4dd75a59696f4716ad69f6260 languageName: node linkType: hard @@ -7434,12 +7211,12 @@ fsevents@^2.3.2: languageName: node linkType: hard -"minimatch@npm:^5.0.1": - version: 5.0.1 - resolution: "minimatch@npm:5.0.1" +"minimatch@npm:^7.1.3": + version: 7.4.6 + resolution: "minimatch@npm:7.4.6" dependencies: brace-expansion: ^2.0.1 - checksum: b34b98463da4754bc526b244d680c69d4d6089451ebe512edaf6dd9eeed0279399cfa3edb19233513b8f830bf4bfcad911dddcdf125e75074100d52f724774f0 + checksum: 1a6c8d22618df9d2a88aabeef1de5622eb7b558e9f8010be791cb6b0fa6e102d39b11c28d75b855a1e377b12edc7db8ff12a99c20353441caa6a05e78deb5da9 languageName: node linkType: hard @@ -7694,10 +7471,10 @@ fsevents@^2.3.2: languageName: node linkType: hard -"node-releases@npm:^2.0.6": - version: 2.0.6 - resolution: "node-releases@npm:2.0.6" - checksum: e86a926dc9fbb3b41b4c4a89d998afdf140e20a4e8dbe6c0a807f7b2948b42ea97d7fd3ad4868041487b6e9ee98409829c6e4d84a734a4215dff060a7fbeb4bf +"node-releases@npm:^2.0.12": + version: 2.0.13 + resolution: "node-releases@npm:2.0.13" + checksum: 17ec8f315dba62710cae71a8dad3cd0288ba943d2ece43504b3b1aa8625bf138637798ab470b1d9035b0545996f63000a8a926e0f6d35d0996424f8b6d36dda3 languageName: node linkType: hard @@ -7764,13 +7541,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"nwsapi@npm:^2.2.0": - version: 2.2.0 - resolution: "nwsapi@npm:2.2.0" - checksum: 5ef4a9bc0c1a5b7f2e014aa6a4b359a257503b796618ed1ef0eb852098f77e772305bb0e92856e4bbfa3e6c75da48c0113505c76f144555ff38867229c2400a7 - languageName: node - linkType: hard - "oauth-sign@npm:~0.9.0": version: 0.9.0 resolution: "oauth-sign@npm:0.9.0" @@ -7853,20 +7623,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"optionator@npm:^0.8.1": - version: 0.8.3 - resolution: "optionator@npm:0.8.3" - 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 - checksum: b8695ddf3d593203e25ab0900e265d860038486c943ff8b774f596a310f8ceebdb30c6832407a8198ba3ec9debe1abe1f51d4aad94843612db3b76d690c61d34 - languageName: node - linkType: hard - "optionator@npm:^0.9.1": version: 0.9.1 resolution: "optionator@npm:0.9.1" @@ -7899,7 +7655,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"p-limit@npm:^3.0.2": +"p-limit@npm:^3.0.2, p-limit@npm:^3.1.0": version: 3.1.0 resolution: "p-limit@npm:3.1.0" dependencies: @@ -7986,13 +7742,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"parse5@npm:6.0.1": - version: 6.0.1 - resolution: "parse5@npm:6.0.1" - checksum: 7d569a176c5460897f7c8f3377eff640d54132b9be51ae8a8fa4979af940830b2b0c296ce75e5bd8f4041520aadde13170dbdec44889975f906098ea0002f4bd - languageName: node - linkType: hard - "path-exists@npm:^3.0.0": version: 3.0.0 resolution: "path-exists@npm:3.0.0" @@ -8106,13 +7855,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"prelude-ls@npm:~1.1.2": - version: 1.1.2 - resolution: "prelude-ls@npm:1.1.2" - checksum: c4867c87488e4a0c233e158e4d0d5565b609b105d75e4c05dc760840475f06b731332eb93cc8c9cecb840aa8ec323ca3c9a56ad7820ad2e63f0261dadcb154e4 - languageName: node - linkType: hard - "prettier-linter-helpers@npm:^1.0.0": version: 1.0.0 resolution: "prettier-linter-helpers@npm:1.0.0" @@ -8131,14 +7873,14 @@ fsevents@^2.3.2: languageName: node linkType: hard -"pretty-format@npm:^27.0.0, pretty-format@npm:^27.5.1": - version: 27.5.1 - resolution: "pretty-format@npm:27.5.1" +"pretty-format@npm:^29.0.0, pretty-format@npm:^29.6.1": + version: 29.6.1 + resolution: "pretty-format@npm:29.6.1" dependencies: - ansi-regex: ^5.0.1 + "@jest/schemas": ^29.6.0 ansi-styles: ^5.0.0 - react-is: ^17.0.1 - checksum: cf610cffcb793885d16f184a62162f2dd0df31642d9a18edf4ca298e909a8fe80bdbf556d5c9573992c102ce8bf948691da91bf9739bee0ffb6e79c8a8a6e088 + react-is: ^18.0.0 + checksum: 6f923a2379a37a425241dc223d76f671c73c4f37dba158050575a54095867d565c068b441843afdf3d7c37bed9df4bbadf46297976e60d4149972b779474203a languageName: node linkType: hard @@ -8199,7 +7941,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"psl@npm:^1.1.28, psl@npm:^1.1.33": +"psl@npm:^1.1.28": version: 1.9.0 resolution: "psl@npm:1.9.0" checksum: 20c4277f640c93d393130673f392618e9a8044c6c7bf61c53917a0fddb4952790f5f362c6c730a9c32b124813e173733f9895add8d26f566ed0ea0654b2e711d @@ -8216,13 +7958,27 @@ fsevents@^2.3.2: languageName: node linkType: hard -"punycode@npm:^2.1.0, punycode@npm:^2.1.1": +"punycode@npm:^2.1.0": version: 2.1.1 resolution: "punycode@npm:2.1.1" checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 languageName: node linkType: hard +"punycode@npm:^2.1.1": + version: 2.3.0 + resolution: "punycode@npm:2.3.0" + checksum: 39f760e09a2a3bbfe8f5287cf733ecdad69d6af2fe6f97ca95f24b8921858b91e9ea3c9eeec6e08cede96181b3bb33f95c6ffd8c77e63986508aa2e8159fa200 + languageName: node + linkType: hard + +"pure-rand@npm:^6.0.0": + version: 6.0.2 + resolution: "pure-rand@npm:6.0.2" + checksum: 79de33876a4f515d759c48e98d00756bbd916b4ea260cc572d7adfa4b62cace9952e89f0241d0410214554503d25061140fe325c66f845213d2b1728ba8d413e + languageName: node + linkType: hard + "q@npm:^1.5.1": version: 1.5.1 resolution: "q@npm:1.5.1" @@ -8270,10 +8026,10 @@ fsevents@^2.3.2: languageName: node linkType: hard -"react-is@npm:^17.0.1": - version: 17.0.2 - resolution: "react-is@npm:17.0.2" - checksum: 9d6d111d8990dc98bc5402c1266a808b0459b5d54830bbea24c12d908b536df7883f268a7868cfaedde3dd9d4e0d574db456f84d2e6df9c4526f99bb4b5344d8 +"react-is@npm:^18.0.0": + version: 18.2.0 + resolution: "react-is@npm:18.2.0" + checksum: e72d0ba81b5922759e4aff17e0252bd29988f9642ed817f56b25a3e217e13eea8a7f2322af99a06edb779da12d5d636e9fda473d620df9a3da0df2a74141d53e languageName: node linkType: hard @@ -8520,10 +8276,10 @@ fsevents@^2.3.2: languageName: node linkType: hard -"resolve.exports@npm:^1.1.0": - version: 1.1.0 - resolution: "resolve.exports@npm:1.1.0" - checksum: 52865af8edb088f6c7759a328584a5de6b226754f004b742523adcfe398cfbc4559515104bc2ae87b8e78b1e4de46c9baec400b3fb1f7d517b86d2d48a098a2d +"resolve.exports@npm:^2.0.0": + version: 2.0.2 + resolution: "resolve.exports@npm:2.0.2" + checksum: 1c7778ca1b86a94f8ab4055d196c7d87d1874b96df4d7c3e67bbf793140f0717fd506dcafd62785b079cd6086b9264424ad634fb904409764c3509c3df1653f2 languageName: node linkType: hard @@ -8567,7 +8323,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"rimraf@npm:^3.0.0, rimraf@npm:^3.0.2": +"rimraf@npm:^3.0.2": version: 3.0.2 resolution: "rimraf@npm:3.0.2" dependencies: @@ -8586,7 +8342,7 @@ fsevents@^2.3.2: "@commitlint/cli": ^9.0.1 "@commitlint/config-conventional": ^9.0.1 "@playwright/test": ^1.21.1 - "@types/jest": ^27.4.0 + "@types/jest": ^29.5.3 "@typescript-eslint/eslint-plugin": ^5.7.0 "@typescript-eslint/parser": ^5.7.0 eslint: ^7.32.0 @@ -8597,16 +8353,13 @@ fsevents@^2.3.2: eslint-plugin-license-header: ^0.2.1 eslint-plugin-prettier: ^3.4.1 husky: ^4.2.5 - jest: ^27.4.7 - jest-docblock: ^27.4.0 - jest-runner: ^27.4.6 - jest-runner-groups: ^2.1.0 + jest: ^29.6.1 prettier: ^2.4.1 rimraf: ^3.0.2 testcontainers: ^9.0.0 - ts-jest: ^27.1.2 - ts-jest-resolver: ^2.0.0 - typedoc: ^0.22.15 + ts-jest: ^29.1.1 + ts-jest-resolver: ^2.0.1 + typedoc: ^0.23.0 typescript: ^4.8.3 languageName: unknown linkType: soft @@ -8643,30 +8396,21 @@ fsevents@^2.3.2: languageName: node linkType: hard -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": +"safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 languageName: node linkType: hard -"saxes@npm:^5.0.1": - version: 5.0.1 - resolution: "saxes@npm:5.0.1" - dependencies: - xmlchars: ^2.2.0 - checksum: 5636b55cf15f7cf0baa73f2797bf992bdcf75d1b39d82c0aa4608555c774368f6ac321cb641fd5f3d3ceb87805122cd47540da6a7b5960fe0dbdb8f8c263f000 - languageName: node - linkType: hard - -"schema-utils@npm:^3.1.0, schema-utils@npm:^3.1.1": - version: 3.1.1 - resolution: "schema-utils@npm:3.1.1" +"schema-utils@npm:^3.1.1, schema-utils@npm:^3.1.2": + version: 3.2.0 + resolution: "schema-utils@npm:3.2.0" dependencies: "@types/json-schema": ^7.0.8 ajv: ^6.12.5 ajv-keywords: ^3.5.2 - checksum: fb73f3d759d43ba033c877628fe9751620a26879f6301d3dbeeb48cf2a65baec5cdf99da65d1bf3b4ff5444b2e59cbe4f81c2456b5e0d2ba7d7fd4aed5da29ce + checksum: e8c590c525a58e135658dbe614c60e4821f98eb4c257c962ad61f72ad1e48b23148c7edd9295dbd5f9fc525ff8c6f448af0a932871fe9c9e1f523d1dbef917c8 languageName: node linkType: hard @@ -8685,9 +8429,9 @@ fsevents@^2.3.2: linkType: hard "semver-regex@npm:^3.1.2": - version: 3.1.3 - resolution: "semver-regex@npm:3.1.3" - checksum: a40c17716679f413994ba4723cf32cf94160a4a3db36e3f730f840cb36bbdbcfda2a34df051d1adb56ed2c67c2a00badfaa9e1e4b755ae6addc7d23ebf55c32b + version: 3.1.4 + resolution: "semver-regex@npm:3.1.4" + checksum: 3962105908e326aa2cd5c851a2f6d4cc7340d1b06560afc35cd5348d9fa5b1cc0ac0cad7e7cef2072bc12b992c5ae654d9e8d355c19d75d4216fced3b6c5d8a7 languageName: node linkType: hard @@ -8709,18 +8453,16 @@ fsevents@^2.3.2: languageName: node linkType: hard -"semver@npm:7.x, semver@npm:^7.2.1, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5": - version: 7.3.5 - resolution: "semver@npm:7.3.5" - dependencies: - lru-cache: ^6.0.0 +"semver@npm:^6.0.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.3.0, semver@npm:^6.3.1": + version: 6.3.1 + resolution: "semver@npm:6.3.1" bin: semver: bin/semver.js - checksum: 5eafe6102bea2a7439897c1856362e31cc348ccf96efd455c8b5bc2c61e6f7e7b8250dc26b8828c1d76a56f818a7ee907a36ae9fb37a599d3d24609207001d60 + checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2 languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.2.0, semver@npm:^6.3.0": +"semver@npm:^6.2.0": version: 6.3.0 resolution: "semver@npm:6.3.0" bin: @@ -8729,6 +8471,17 @@ fsevents@^2.3.2: languageName: node linkType: hard +"semver@npm:^7.2.1, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.5.3": + version: 7.5.4 + resolution: "semver@npm:7.5.4" + dependencies: + lru-cache: ^6.0.0 + bin: + semver: bin/semver.js + checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3 + languageName: node + linkType: hard + "serialize-error@npm:^5.0.0": version: 5.0.0 resolution: "serialize-error@npm:5.0.0" @@ -8738,12 +8491,12 @@ fsevents@^2.3.2: languageName: node linkType: hard -"serialize-javascript@npm:^6.0.0": - version: 6.0.0 - resolution: "serialize-javascript@npm:6.0.0" +"serialize-javascript@npm:^6.0.1": + version: 6.0.1 + resolution: "serialize-javascript@npm:6.0.1" dependencies: randombytes: ^2.1.0 - checksum: 56f90b562a1bdc92e55afb3e657c6397c01a902c588c0fe3d4c490efdcc97dcd2a3074ba12df9e94630f33a5ce5b76a74784a7041294628a6f4306e0ec84bf93 + checksum: 3c4f4cb61d0893b988415bdb67243637333f3f574e9e9cc9a006a2ced0b390b0b3b44aef8d51c951272a9002ec50885eefdc0298891bc27eb2fe7510ea87dc4f languageName: node linkType: hard @@ -8779,14 +8532,15 @@ fsevents@^2.3.2: languageName: node linkType: hard -"shiki@npm:^0.10.1": - version: 0.10.1 - resolution: "shiki@npm:0.10.1" +"shiki@npm:^0.14.1": + version: 0.14.2 + resolution: "shiki@npm:0.14.2" dependencies: - jsonc-parser: ^3.0.0 - vscode-oniguruma: ^1.6.1 - vscode-textmate: 5.2.0 - checksum: fb746f3cb3de7e545e3b10a6cb658d3938f840e4ccc9a3c90ceb7e69a8f89dbb432171faac1e9f02a03f103684dad88ee5e54b5c4964fa6b579fca6e8e26424d + ansi-sequence-parser: ^1.1.0 + jsonc-parser: ^3.2.0 + vscode-oniguruma: ^1.7.0 + vscode-textmate: ^8.0.0 + checksum: f2a14302b1803617e3ff1b751a5c87b4af4ad15214dc00e9215402e42940a84a0b956cf55d628f25dbf1296b18e277b8529571cd9359b971ac599a0ab11303e7 languageName: node linkType: hard @@ -8801,7 +8555,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": +"signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -8881,7 +8635,17 @@ fsevents@^2.3.2: languageName: node linkType: hard -"source-map-support@npm:^0.5.6, source-map-support@npm:~0.5.20": +"source-map-support@npm:0.5.13": + version: 0.5.13 + resolution: "source-map-support@npm:0.5.13" + dependencies: + buffer-from: ^1.0.0 + source-map: ^0.6.0 + checksum: 933550047b6c1a2328599a21d8b7666507427c0f5ef5eaadd56b5da0fd9505e239053c66fe181bf1df469a3b7af9d775778eee283cbb7ae16b902ddc09e93a97 + languageName: node + linkType: hard + +"source-map-support@npm:~0.5.20": version: 0.5.21 resolution: "source-map-support@npm:0.5.21" dependencies: @@ -8898,20 +8662,13 @@ fsevents@^2.3.2: languageName: node linkType: hard -"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.1": +"source-map@npm:^0.6.0, source-map@npm:^0.6.1": version: 0.6.1 resolution: "source-map@npm:0.6.1" checksum: 59ce8640cf3f3124f64ac289012c2b8bd377c238e316fb323ea22fbfe83da07d81e000071d7242cad7a23cd91c7de98e4df8830ec3f133cb6133a5f6e9f67bc2 languageName: node linkType: hard -"source-map@npm:^0.7.3": - version: 0.7.3 - resolution: "source-map@npm:0.7.3" - checksum: cd24efb3b8fa69b64bf28e3c1b1a500de77e84260c5b7f2b873f88284df17974157cc88d386ee9b6d081f08fdd8242f3fc05c953685a6ad81aad94c7393dedea - languageName: node - linkType: hard - "spdx-correct@npm:^3.0.0": version: 3.1.1 resolution: "spdx-correct@npm:3.1.1" @@ -9193,7 +8950,7 @@ fsevents@^2.3.2: languageName: node linkType: hard -"supports-color@npm:^7.0.0, supports-color@npm:^7.1.0": +"supports-color@npm:^7.1.0": version: 7.2.0 resolution: "supports-color@npm:7.2.0" dependencies: @@ -9211,16 +8968,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"supports-hyperlinks@npm:^2.0.0": - version: 2.2.0 - resolution: "supports-hyperlinks@npm:2.2.0" - dependencies: - has-flag: ^4.0.0 - supports-color: ^7.0.0 - checksum: aef04fb41f4a67f1bc128f7c3e88a81b6cf2794c800fccf137006efe5bafde281da3e42e72bf9206c2fcf42e6438f37e3a820a389214d0a88613ca1f2d36076a - languageName: node - linkType: hard - "supports-preserve-symlinks-flag@npm:^1.0.0": version: 1.0.0 resolution: "supports-preserve-symlinks-flag@npm:1.0.0" @@ -9228,13 +8975,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"symbol-tree@npm:^3.2.4": - version: 3.2.4 - resolution: "symbol-tree@npm:3.2.4" - checksum: 6e8fc7e1486b8b54bea91199d9535bb72f10842e40c79e882fc94fb7b14b89866adf2fd79efa5ebb5b658bc07fb459ccce5ac0e99ef3d72f474e74aaf284029d - languageName: node - linkType: hard - "table@npm:^6.0.9": version: 6.8.0 resolution: "table@npm:6.8.0" @@ -9306,25 +9046,15 @@ fsevents@^2.3.2: languageName: node linkType: hard -"terminal-link@npm:^2.0.0": - version: 2.1.1 - resolution: "terminal-link@npm:2.1.1" - dependencies: - ansi-escapes: ^4.2.1 - supports-hyperlinks: ^2.0.0 - checksum: ce3d2cd3a438c4a9453947aa664581519173ea40e77e2534d08c088ee6dda449eabdbe0a76d2a516b8b73c33262fedd10d5270ccf7576ae316e3db170ce6562f - languageName: node - linkType: hard - -"terser-webpack-plugin@npm:^5.1.1, terser-webpack-plugin@npm:^5.1.3": - version: 5.3.1 - resolution: "terser-webpack-plugin@npm:5.3.1" +"terser-webpack-plugin@npm:^5.1.1, terser-webpack-plugin@npm:^5.3.7": + version: 5.3.9 + resolution: "terser-webpack-plugin@npm:5.3.9" dependencies: + "@jridgewell/trace-mapping": ^0.3.17 jest-worker: ^27.4.5 schema-utils: ^3.1.1 - serialize-javascript: ^6.0.0 - source-map: ^0.6.1 - terser: ^5.7.2 + serialize-javascript: ^6.0.1 + terser: ^5.16.8 peerDependencies: webpack: ^5.1.0 peerDependenciesMeta: @@ -9334,21 +9064,21 @@ fsevents@^2.3.2: optional: true uglify-js: optional: true - checksum: 1b808fd4f58ce0b532baacc50b9a850fc69ce0077a0e9e5076d4156c52fab3d40b02d5d9148a3eba64630cf7f40057de54f6a5a87fac1849b1f11d6bfdb42072 + checksum: 41705713d6f9cb83287936b21e27c658891c78c4392159f5148b5623f0e8c48559869779619b058382a4c9758e7820ea034695e57dc7c474b4962b79f553bc5f languageName: node linkType: hard -"terser@npm:^5.7.2": - version: 5.16.3 - resolution: "terser@npm:5.16.3" +"terser@npm:^5.16.8": + version: 5.17.7 + resolution: "terser@npm:5.17.7" dependencies: - "@jridgewell/source-map": ^0.3.2 - acorn: ^8.5.0 + "@jridgewell/source-map": ^0.3.3 + acorn: ^8.8.2 commander: ^2.20.0 source-map-support: ~0.5.20 bin: terser: bin/terser - checksum: d3c2ac1c2723c37b698b25b68d76fd315a1277fddde113983d5783d1f2a01dd7b8ed83ba3f54e5e65f0b59dd971ed7be2fdf8d4be94ec694b2d27832d2e7561f + checksum: b7b17b281febadf3bea9b9412d699fa24edf9b3e20fc7ad4e1a9cec276bdb65ddaa291c9663d5ab66b58834e433377477f73328574ccab2da1637a15b095811d languageName: node linkType: hard @@ -9399,13 +9129,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"throat@npm:^6.0.1": - version: 6.0.1 - resolution: "throat@npm:6.0.1" - checksum: 782d4171ee4e3cf947483ed2ff1af3e17cc4354c693b9d339284f61f99fbc401d171e0b0d2db3295bb7d447630333e9319c174ebd7ef315c6fb791db9675369c - languageName: node - linkType: hard - "through2@npm:^4.0.0": version: 4.0.2 resolution: "through2@npm:4.0.2" @@ -9445,17 +9168,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"tough-cookie@npm:^4.0.0": - version: 4.0.0 - resolution: "tough-cookie@npm:4.0.0" - dependencies: - psl: ^1.1.33 - punycode: ^2.1.1 - universalify: ^0.1.2 - checksum: 0891b37eb7d17faa3479d47f0dce2e3007f2583094ad272f2670d120fbcc3df3b0b0a631ba96ecad49f9e2297d93ff8995ce0d3292d08dd7eabe162f5b224d69 - languageName: node - linkType: hard - "tough-cookie@npm:~2.5.0": version: 2.5.0 resolution: "tough-cookie@npm:2.5.0" @@ -9466,15 +9178,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"tr46@npm:^2.1.0": - version: 2.1.0 - resolution: "tr46@npm:2.1.0" - dependencies: - punycode: ^2.1.1 - checksum: ffe6049b9dca3ae329b059aada7f515b0f0064c611b39b51ff6b53897e954650f6f63d9319c6c008d36ead477c7b55e5f64c9dc60588ddc91ff720d64eb710b3 - languageName: node - linkType: hard - "tr46@npm:~0.0.3": version: 0.0.3 resolution: "tr46@npm:0.0.3" @@ -9489,38 +9192,37 @@ fsevents@^2.3.2: languageName: node linkType: hard -"ts-jest-resolver@npm:^2.0.0": - version: 2.0.0 - resolution: "ts-jest-resolver@npm:2.0.0" +"ts-jest-resolver@npm:^2.0.1": + version: 2.0.1 + resolution: "ts-jest-resolver@npm:2.0.1" dependencies: - jest-resolve: ^27.2.5 - checksum: 7208f45efd64b9e110e07fcb2ab1dcaf97c8a6f16daee8d188432857f7ffc128fdf0c4c8eee348803de603ca7805ea00554feec915b41b9320b2b4014625c607 + jest-resolve: ^29.5.0 + checksum: 0845b9ab6a7d5c7b872e7573550607e9da1a2281c4db7a9d900c52b518bf5237ca265d56356b2ebb6d5aad705613e55e406c0eb66cad60ab2a303d17e6b0844e languageName: node linkType: hard -"ts-jest@npm:^27.1.2": - version: 27.1.3 - resolution: "ts-jest@npm:27.1.3" +"ts-jest@npm:^29.1.1": + version: 29.1.1 + resolution: "ts-jest@npm:29.1.1" dependencies: bs-logger: 0.x fast-json-stable-stringify: 2.x - jest-util: ^27.0.0 - json5: 2.x + jest-util: ^29.0.0 + json5: ^2.2.3 lodash.memoize: 4.x make-error: 1.x - semver: 7.x - yargs-parser: 20.x + semver: ^7.5.3 + yargs-parser: ^21.0.1 peerDependencies: "@babel/core": ">=7.0.0-beta.0 <8" - "@types/jest": ^27.0.0 - babel-jest: ">=27.0.0 <28" - esbuild: ~0.14.0 - jest: ^27.0.0 - typescript: ">=3.8 <5.0" + "@jest/types": ^29.0.0 + babel-jest: ^29.0.0 + jest: ^29.0.0 + typescript: ">=4.3 <6" peerDependenciesMeta: "@babel/core": optional: true - "@types/jest": + "@jest/types": optional: true babel-jest: optional: true @@ -9528,7 +9230,7 @@ fsevents@^2.3.2: optional: true bin: ts-jest: cli.js - checksum: eb54e5b8fc5f06e4cc20ecec7891201ddc78a3537d5eb3775e29ffbc7e83fd2a68f91db801b6a8c820c872060b24dc41fb6decac800b76256d3cdda6520b5c4f + checksum: a8c9e284ed4f819526749f6e4dc6421ec666f20ab44d31b0f02b4ed979975f7580b18aea4813172d43e39b29464a71899f8893dd29b06b4a351a3af8ba47b402 languageName: node linkType: hard @@ -9639,15 +9341,6 @@ fsevents@^2.3.2: languageName: node linkType: hard -"type-check@npm:~0.3.2": - version: 0.3.2 - resolution: "type-check@npm:0.3.2" - dependencies: - prelude-ls: ~1.1.2 - checksum: dd3b1495642731bc0e1fc40abe5e977e0263005551ac83342ecb6f4f89551d106b368ec32ad3fb2da19b3bd7b2d1f64330da2ea9176d8ddbfe389fb286eb5124 - languageName: node - linkType: hard - "type-detect@npm:4.0.8": version: 4.0.8 resolution: "type-detect@npm:4.0.8" @@ -9690,29 +9383,19 @@ fsevents@^2.3.2: languageName: node linkType: hard -"typedarray-to-buffer@npm:^3.1.5": - version: 3.1.5 - resolution: "typedarray-to-buffer@npm:3.1.5" - dependencies: - is-typedarray: ^1.0.0 - checksum: 99c11aaa8f45189fcfba6b8a4825fd684a321caa9bd7a76a27cf0c7732c174d198b99f449c52c3818107430b5f41c0ccbbfb75cb2ee3ca4a9451710986d61a60 - languageName: node - linkType: hard - -"typedoc@npm:^0.22.15": - version: 0.22.15 - resolution: "typedoc@npm:0.22.15" +"typedoc@npm:^0.23.0": + version: 0.23.28 + resolution: "typedoc@npm:0.23.28" dependencies: - glob: ^7.2.0 lunr: ^2.3.9 - marked: ^4.0.12 - minimatch: ^5.0.1 - shiki: ^0.10.1 + marked: ^4.2.12 + minimatch: ^7.1.3 + shiki: ^0.14.1 peerDependencies: - typescript: 4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x || 4.5.x || 4.6.x + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x bin: typedoc: bin/typedoc - checksum: 3f5f1cb9288bf811f42df59750c7062a026a23257b38dfe227515a30007a28e3d8139187949fcd19300fd6b2ef76bcdc4cf54549100bff3e000e61bb19958fb2 + checksum: 40eb4e207aac1b734e09400cf03f543642cc7b11000895198dd5a0d3166315759ccf4ac30a2915153597c5c186101c72bac2f1fc12b428184a9274d3a0e44c5e languageName: node linkType: hard @@ -9815,24 +9498,24 @@ typescript@^4.8.3: languageName: node linkType: hard -"universalify@npm:^0.1.0, universalify@npm:^0.1.2": +"universalify@npm:^0.1.0": version: 0.1.2 resolution: "universalify@npm:0.1.2" checksum: 40cdc60f6e61070fe658ca36016a8f4ec216b29bf04a55dce14e3710cc84c7448538ef4dad3728d0bfe29975ccd7bfb5f414c45e7b78883567fb31b246f02dff languageName: node linkType: hard -"update-browserslist-db@npm:^1.0.9": - version: 1.0.9 - resolution: "update-browserslist-db@npm:1.0.9" +"update-browserslist-db@npm:^1.0.11": + version: 1.0.11 + resolution: "update-browserslist-db@npm:1.0.11" dependencies: escalade: ^3.1.1 picocolors: ^1.0.0 peerDependencies: browserslist: ">= 4.21.0" bin: - browserslist-lint: cli.js - checksum: f625899b236f6a4d7f62b56be1b8da230c5563d1fef84d3ef148f2e1a3f11a5a4b3be4fd7e3703e51274c116194017775b10afb4de09eb2c0d09d36b90f1f578 + update-browserslist-db: cli.js + checksum: b98327518f9a345c7cad5437afae4d2ae7d865f9779554baf2a200fdf4bac4969076b679b1115434bd6557376bdd37ca7583d0f9b8f8e302d7d4cc1e91b5f231 languageName: node linkType: hard @@ -9884,14 +9567,14 @@ typescript@^4.8.3: languageName: node linkType: hard -"v8-to-istanbul@npm:^8.1.0": - version: 8.1.1 - resolution: "v8-to-istanbul@npm:8.1.1" +"v8-to-istanbul@npm:^9.0.1": + version: 9.1.0 + resolution: "v8-to-istanbul@npm:9.1.0" dependencies: + "@jridgewell/trace-mapping": ^0.3.12 "@types/istanbul-lib-coverage": ^2.0.1 convert-source-map: ^1.6.0 - source-map: ^0.7.3 - checksum: 54ce92bec2727879626f623d02c8d193f0c7e919941fa373ec135189a8382265117f5316ea317a1e12a5f9c13d84d8449052a731fe3306fa4beaafbfa4cab229 + checksum: 2069d59ee46cf8d83b4adfd8a5c1a90834caffa9f675e4360f1157ffc8578ef0f763c8f32d128334424159bb6b01f3876acd39cd13297b2769405a9da241f8d1 languageName: node linkType: hard @@ -9934,39 +9617,21 @@ typescript@^4.8.3: languageName: node linkType: hard -"vscode-oniguruma@npm:^1.6.1": - version: 1.6.2 - resolution: "vscode-oniguruma@npm:1.6.2" - checksum: 6b754acdafd5b68242ea5938bb00a32effc16c77f471d4f0f337d879d0e8e592622998e2441f42d9a7ff799c1593f31c11f26ca8d9bf9917e3ca881d3c1f3e19 +"vscode-oniguruma@npm:^1.7.0": + version: 1.7.0 + resolution: "vscode-oniguruma@npm:1.7.0" + checksum: 53519d91d90593e6fb080260892e87d447e9b200c4964d766772b5053f5699066539d92100f77f1302c91e8fc5d9c772fbe40fe4c90f3d411a96d5a9b1e63f42 languageName: node linkType: hard -"vscode-textmate@npm:5.2.0": - version: 5.2.0 - resolution: "vscode-textmate@npm:5.2.0" - checksum: 5449b42d451080f6f3649b66948f4b5ee4643c4e88cfe3558a3b31c84c78060cfdd288c4958c1690eaa5cd65d09992fa6b7c3bef9d4aa72b3651054a04624d20 - languageName: node - linkType: hard - -"w3c-hr-time@npm:^1.0.2": - version: 1.0.2 - resolution: "w3c-hr-time@npm:1.0.2" - dependencies: - browser-process-hrtime: ^1.0.0 - checksum: ec3c2dacbf8050d917bbf89537a101a08c2e333b4c19155f7d3bedde43529d4339db6b3d049d9610789cb915f9515f8be037e0c54c079e9d4735c50b37ed52b9 - languageName: node - linkType: hard - -"w3c-xmlserializer@npm:^2.0.0": - version: 2.0.0 - resolution: "w3c-xmlserializer@npm:2.0.0" - dependencies: - xml-name-validator: ^3.0.0 - checksum: ae25c51cf71f1fb2516df1ab33a481f83461a117565b95e3d0927432522323f93b1b2846cbb60196d337970c421adb604fc2d0d180c6a47a839da01db5b9973b +"vscode-textmate@npm:^8.0.0": + version: 8.0.0 + resolution: "vscode-textmate@npm:8.0.0" + checksum: 127780dfea89559d70b8326df6ec344cfd701312dd7f3f591a718693812b7852c30b6715e3cfc8b3200a4e2515b4c96f0843c0eacc0a3020969b5de262c2a4bb languageName: node linkType: hard -"walker@npm:^1.0.7": +"walker@npm:^1.0.8": version: 1.0.8 resolution: "walker@npm:1.0.8" dependencies: @@ -9975,13 +9640,13 @@ typescript@^4.8.3: languageName: node linkType: hard -"watchpack@npm:^2.3.1": - version: 2.3.1 - resolution: "watchpack@npm:2.3.1" +"watchpack@npm:^2.4.0": + version: 2.4.0 + resolution: "watchpack@npm:2.4.0" dependencies: glob-to-regexp: ^0.4.1 graceful-fs: ^4.1.2 - checksum: 70a34f92842d94b5d842980f866d568d7a467de667c96ae5759c759f46587e49265863171f4650bdbafc5f3870a28f2b4453e9e847098ec4b718b38926d47d22 + checksum: 23d4bc58634dbe13b86093e01c6a68d8096028b664ab7139d58f0c37d962d549a940e98f2f201cecdabd6f9c340338dc73ef8bf094a2249ef582f35183d1a131 languageName: node linkType: hard @@ -9999,20 +9664,6 @@ typescript@^4.8.3: languageName: node linkType: hard -"webidl-conversions@npm:^5.0.0": - version: 5.0.0 - resolution: "webidl-conversions@npm:5.0.0" - checksum: ccf1ec2ca7c0b5671e5440ace4a66806ae09c49016ab821481bec0c05b1b82695082dc0a27d1fe9d804d475a408ba0c691e6803fd21be608e710955d4589cd69 - languageName: node - linkType: hard - -"webidl-conversions@npm:^6.1.0": - version: 6.1.0 - resolution: "webidl-conversions@npm:6.1.0" - checksum: 1f526507aa491f972a0c1409d07f8444e1d28778dfa269a9971f2e157182f3d496dc33296e4ed45b157fdb3bf535bb90c90bf10c50dcf1dd6caacb2a34cc84fb - languageName: node - linkType: hard - "webpack-cli@npm:^4.9.2": version: 4.9.2 resolution: "webpack-cli@npm:4.9.2" @@ -10063,56 +9714,40 @@ typescript@^4.8.3: languageName: node linkType: hard -"webpack@npm:^5.70.0": - version: 5.70.0 - resolution: "webpack@npm:5.70.0" +"webpack@npm:^5.76.0": + version: 5.86.0 + resolution: "webpack@npm:5.86.0" dependencies: "@types/eslint-scope": ^3.7.3 - "@types/estree": ^0.0.51 - "@webassemblyjs/ast": 1.11.1 - "@webassemblyjs/wasm-edit": 1.11.1 - "@webassemblyjs/wasm-parser": 1.11.1 - acorn: ^8.4.1 - acorn-import-assertions: ^1.7.6 + "@types/estree": ^1.0.0 + "@webassemblyjs/ast": ^1.11.5 + "@webassemblyjs/wasm-edit": ^1.11.5 + "@webassemblyjs/wasm-parser": ^1.11.5 + acorn: ^8.7.1 + acorn-import-assertions: ^1.9.0 browserslist: ^4.14.5 chrome-trace-event: ^1.0.2 - enhanced-resolve: ^5.9.2 - es-module-lexer: ^0.9.0 + enhanced-resolve: ^5.14.1 + es-module-lexer: ^1.2.1 eslint-scope: 5.1.1 events: ^3.2.0 glob-to-regexp: ^0.4.1 graceful-fs: ^4.2.9 - json-parse-better-errors: ^1.0.2 + json-parse-even-better-errors: ^2.3.1 loader-runner: ^4.2.0 mime-types: ^2.1.27 neo-async: ^2.6.2 - schema-utils: ^3.1.0 + schema-utils: ^3.1.2 tapable: ^2.1.1 - terser-webpack-plugin: ^5.1.3 - watchpack: ^2.3.1 + terser-webpack-plugin: ^5.3.7 + watchpack: ^2.4.0 webpack-sources: ^3.2.3 peerDependenciesMeta: webpack-cli: optional: true bin: webpack: bin/webpack.js - checksum: 00439884a9cdd5305aed3ce93735635785a15c5464a6d2cfce87e17727a07585de02420913e82aa85ddd2ae7322175d2cfda6ac0878a17f061cb605e6a7db57a - languageName: node - linkType: hard - -"whatwg-encoding@npm:^1.0.5": - version: 1.0.5 - resolution: "whatwg-encoding@npm:1.0.5" - dependencies: - iconv-lite: 0.4.24 - checksum: 5be4efe111dce29ddee3448d3915477fcc3b28f991d9cf1300b4e50d6d189010d47bca2f51140a844cf9b726e8f066f4aee72a04d687bfe4f2ee2767b2f5b1e6 - languageName: node - linkType: hard - -"whatwg-mimetype@npm:^2.3.0": - version: 2.3.0 - resolution: "whatwg-mimetype@npm:2.3.0" - checksum: 23eb885940bcbcca4ff841c40a78e9cbb893ec42743993a42bf7aed16085b048b44b06f3402018931687153550f9a32d259dfa524e4f03577ab898b6965e5383 + checksum: 682b1aa8328bb9d52ae66a1d0a1078af88f9e3b3b3a9c9e1ce203e669581a8e61d522420ef253130eacd510d24d7275b840c1311d50bd048d6fd7c1af186ce55 languageName: node linkType: hard @@ -10126,17 +9761,6 @@ typescript@^4.8.3: languageName: node linkType: hard -"whatwg-url@npm:^8.0.0, whatwg-url@npm:^8.5.0": - version: 8.7.0 - resolution: "whatwg-url@npm:8.7.0" - dependencies: - lodash: ^4.7.0 - tr46: ^2.1.0 - webidl-conversions: ^6.1.0 - checksum: a87abcc6cefcece5311eb642858c8fdb234e51ec74196bfacf8def2edae1bfbffdf6acb251646ed6301f8cee44262642d8769c707256125a91387e33f405dd1e - languageName: node - linkType: hard - "which-boxed-primitive@npm:^1.0.2": version: 1.0.2 resolution: "which-boxed-primitive@npm:1.0.2" @@ -10191,7 +9815,7 @@ typescript@^4.8.3: languageName: node linkType: hard -"word-wrap@npm:^1.2.3, word-wrap@npm:~1.2.3": +"word-wrap@npm:^1.2.3": version: 1.2.3 resolution: "word-wrap@npm:1.2.3" checksum: 30b48f91fcf12106ed3186ae4fa86a6a1842416df425be7b60485de14bec665a54a68e4b5156647dec3a70f25e84d270ca8bc8cd23182ed095f5c7206a938c1f @@ -10234,30 +9858,13 @@ typescript@^4.8.3: languageName: node linkType: hard -"write-file-atomic@npm:^3.0.0": - version: 3.0.3 - resolution: "write-file-atomic@npm:3.0.3" +"write-file-atomic@npm:^4.0.2": + version: 4.0.2 + resolution: "write-file-atomic@npm:4.0.2" dependencies: imurmurhash: ^0.1.4 - is-typedarray: ^1.0.0 - signal-exit: ^3.0.2 - typedarray-to-buffer: ^3.1.5 - checksum: c55b24617cc61c3a4379f425fc62a386cc51916a9b9d993f39734d005a09d5a4bb748bc251f1304e7abd71d0a26d339996c275955f527a131b1dcded67878280 - languageName: node - linkType: hard - -"ws@npm:^7.4.6": - version: 7.5.7 - resolution: "ws@npm:7.5.7" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 5c1f669a166fb57560b4e07f201375137fa31d9186afde78b1508926345ce546332f109081574ddc4e38cc474c5406b5fc71c18d71eb75f6e2d2245576976cba + signal-exit: ^3.0.7 + checksum: 5da60bd4eeeb935eec97ead3df6e28e5917a6bd317478e4a85a5285e8480b8ed96032bbcc6ecd07b236142a24f3ca871c924ec4a6575e623ec1b11bf8c1c253c languageName: node linkType: hard @@ -10276,20 +9883,6 @@ typescript@^4.8.3: languageName: node linkType: hard -"xml-name-validator@npm:^3.0.0": - version: 3.0.0 - resolution: "xml-name-validator@npm:3.0.0" - checksum: b3ac459afed783c285bb98e4960bd1f3ba12754fd4f2320efa0f9181ca28928c53cc75ca660d15d205e81f92304419afe94c531c7cfb3e0649aa6d140d53ecb0 - languageName: node - linkType: hard - -"xmlchars@npm:^2.2.0": - version: 2.2.0 - resolution: "xmlchars@npm:2.2.0" - checksum: 8c70ac94070ccca03f47a81fcce3b271bd1f37a591bf5424e787ae313fcb9c212f5f6786e1fa82076a2c632c0141552babcd85698c437506dfa6ae2d58723062 - languageName: node - linkType: hard - "xmldom@npm:0.1.19": version: 0.1.19 resolution: "xmldom@npm:0.1.19" @@ -10332,13 +9925,6 @@ typescript@^4.8.3: languageName: node linkType: hard -"yargs-parser@npm:20.x, yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": - version: 20.2.9 - resolution: "yargs-parser@npm:20.2.9" - checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 - languageName: node - linkType: hard - "yargs-parser@npm:^18.1.2": version: 18.1.3 resolution: "yargs-parser@npm:18.1.3" @@ -10349,7 +9935,14 @@ typescript@^4.8.3: languageName: node linkType: hard -"yargs-parser@npm:^21.1.1": +"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": + version: 20.2.9 + resolution: "yargs-parser@npm:20.2.9" + checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 + languageName: node + linkType: hard + +"yargs-parser@npm:^21.0.1, yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" checksum: ed2d96a616a9e3e1cc7d204c62ecc61f7aaab633dcbfab2c6df50f7f87b393993fe6640d017759fe112d0cb1e0119f2b4150a87305cc873fd90831c6a58ccf1c @@ -10390,7 +9983,7 @@ typescript@^4.8.3: languageName: node linkType: hard -"yargs@npm:^17.7.2": +"yargs@npm:^17.3.1, yargs@npm:^17.7.2": version: 17.7.2 resolution: "yargs@npm:17.7.2" dependencies: