diff --git a/packages/api/src/client/__tests__/MockProvider.ts b/packages/api/src/client/__tests__/MockProvider.ts index aac41a5d..8808e1d5 100644 --- a/packages/api/src/client/__tests__/MockProvider.ts +++ b/packages/api/src/client/__tests__/MockProvider.ts @@ -1,5 +1,5 @@ import staticSubstrateV15 from '@polkadot/types-support/metadata/v15/substrate-hex'; -import { RuntimeVersion } from '@dedot/codecs'; +import { OpaqueMetadata, RuntimeVersion } from '@dedot/codecs'; import { ConnectionStatus, JsonRpcProvider, @@ -30,7 +30,7 @@ export default class MockProvider extends EventEmitter implements rpcRequests: Record; - constructor(mockedRuntimeVersion: RuntimeVersion = MockedRuntimeVersion) { + constructor(mockedRuntimeVersion: RuntimeVersion = MockedRuntimeVersion, metadata: OpaqueMetadata = staticSubstrateV15) { super(); this.rpcRequests = { chain_getBlockHash: () => '0x0000000000000000000000000000000000000000000000000000000000000000', @@ -39,7 +39,7 @@ export default class MockProvider extends EventEmitter implements state_unsubscribeRuntimeVersion: () => null, system_chain: () => 'MockedChain', system_properties: () => ({ ss58Format: 42 }) as ChainProperties, - state_getMetadata: () => staticSubstrateV15, + state_getMetadata: () => metadata, state_call: () => '0x', state_getStorage: () => '0x', state_queryStorageAt: () => [{ block: '0x', changes: ['0x', '0x'] }], diff --git a/packages/contracts/src/__tests__/Contract.spec.ts b/packages/contracts/src/__tests__/Contract.spec.ts index c6379471..923530d1 100644 --- a/packages/contracts/src/__tests__/Contract.spec.ts +++ b/packages/contracts/src/__tests__/Contract.spec.ts @@ -3,13 +3,16 @@ import MockProvider from '@dedot/api/client/__tests__/MockProvider'; import { RuntimeVersion } from '@dedot/codecs'; import { beforeEach, describe, expect, it } from 'vitest'; import { Contract } from '../Contract.js'; -import { FLIPPER_CONTRACT_METADATA, PSP22_CONTRACT_METADATA, RANDOM_CONTRACT_ADDRESS } from './contracts-metadata.js'; +import { FLIPPER_CONTRACT_METADATA_V4, FLIPPER_CONTRACT_METADATA_V5, PSP22_CONTRACT_METADATA, RANDOM_CONTRACT_ADDRESS } from './contracts-metadata.js'; +import { FrameSystemEventRecord } from '@dedot/api/chaintypes/index.js'; +import substrateContractMetadata from './substrateContractMetadata.js'; +import { ContractMetadataV5 } from 'src/types/v5.js'; export const MockedRuntimeVersionWithContractsApi: RuntimeVersion = { specName: 'mock-spec', implName: 'mock-spec-impl', - authoringVersion: 0, - specVersion: 1, + authoringVersion: 1, + specVersion: 100, implVersion: 0, apis: [ // @ts-ignore @@ -17,8 +20,8 @@ export const MockedRuntimeVersionWithContractsApi: RuntimeVersion = { // @ts-ignore ['0x68b66ba122c93fa7', 2], // ContractsApi v2 ], - transactionVersion: 25, - stateVersion: 0, + transactionVersion: 1, + stateVersion: 1, }; describe('Contract', () => { @@ -28,7 +31,7 @@ describe('Contract', () => { beforeEach(async () => { provider = new MockProvider(MockedRuntimeVersionWithContractsApi); api = await Dedot.new({ provider }); - flipper = new Contract(api, RANDOM_CONTRACT_ADDRESS, FLIPPER_CONTRACT_METADATA); + flipper = new Contract(api, RANDOM_CONTRACT_ADDRESS, FLIPPER_CONTRACT_METADATA_V4); psp22 = new Contract(api, RANDOM_CONTRACT_ADDRESS, PSP22_CONTRACT_METADATA); }); @@ -73,9 +76,67 @@ describe('Contract', () => { it('should throw error', async () => { provider = new MockProvider(); api = await Dedot.new({ provider }); - expect(() => new Contract(api, RANDOM_CONTRACT_ADDRESS, FLIPPER_CONTRACT_METADATA)).toThrowError( + expect(() => new Contract(api, RANDOM_CONTRACT_ADDRESS, FLIPPER_CONTRACT_METADATA_V4)).toThrowError( 'Contracts pallet is not available', ); }); }); + + describe('decodeEvent', () => { + beforeEach(async () => { + provider = new MockProvider(MockedRuntimeVersionWithContractsApi, substrateContractMetadata); + api = await Dedot.new({ provider }); + flipper = new Contract(api, RANDOM_CONTRACT_ADDRESS, FLIPPER_CONTRACT_METADATA_V5); + }); + + it('should throw error if eventRecord is not ContractEmitted palletEvent', () => { + const notContractEmittedEventRecordHex = '0x00010000000408d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d7bd1726000000000000000000000000000'; + const eventRecord = api.registry.findCodec(19).tryDecode(notContractEmittedEventRecordHex) as FrameSystemEventRecord; + + expect(() => flipper.decodeEvent(eventRecord)).toThrowError(`Event Record is not valid!`) + }) + + describe('decodeEventV5', () => { + beforeEach(async () => { + flipper = new Contract(api, RANDOM_CONTRACT_ADDRESS, FLIPPER_CONTRACT_METADATA_V5); + }) + + it('should decode properly', () => { + const contractEmittedEventRecord = '0x00010000000803f2773dba008bbe3bb76fa8cb89fddb534b4e81dcaf52faaf94190a89ab3d3b04080001040a39b5ca0b8b3a5172476100ae7b9168b269cc91d5648efe180c75d935d3e886' + const eventRecord = api.registry.findCodec(19).tryDecode(contractEmittedEventRecord) as FrameSystemEventRecord; + + const decodedEvent = flipper.decodeEvent(eventRecord); + + expect(decodedEvent).toEqual({ name: 'Flipped', data: { old: false, new: true }}); + }); + + it('should throw error if cannot determine the event meta', () => { + const mockFlipper = structuredClone(FLIPPER_CONTRACT_METADATA_V5) as ContractMetadataV5; + mockFlipper.spec.events.at(0)!.signature_topic = null; + mockFlipper.spec.events.push(mockFlipper.spec.events.at(0)!); + + flipper = new Contract(api, RANDOM_CONTRACT_ADDRESS, mockFlipper); + + const contractEmittedEventRecord = '0x00010000000803f2773dba008bbe3bb76fa8cb89fddb534b4e81dcaf52faaf94190a89ab3d3b04080001040a39b5ca0b8b3a5172476100ae7b9168b269cc91d5648efe180c75d935d3e886' + const eventRecord = api.registry.findCodec(19).tryDecode(contractEmittedEventRecord) as FrameSystemEventRecord; + + expect(() => flipper.decodeEvent(eventRecord)).toThrowError('Unable to determine event!'); + }) + }) + + describe('decodeEventV4', () => { + beforeEach(async () => { + flipper = new Contract(api, RANDOM_CONTRACT_ADDRESS, FLIPPER_CONTRACT_METADATA_V4); + }) + + it('should decode properly', () => { + const contractEmittedEventRecord = '0x00010000000803f2773dba008bbe3bb76fa8cb89fddb534b4e81dcaf52faaf94190a89ab3d3b04080001040a39b5ca0b8b3a5172476100ae7b9168b269cc91d5648efe180c75d935d3e886' + const eventRecord = api.registry.findCodec(19).tryDecode(contractEmittedEventRecord) as FrameSystemEventRecord; + + const decodedEvent = flipper.decodeEvent(eventRecord); + + expect(decodedEvent).toEqual({ name: 'Flipped', data: { old: true, new: false }}); + }) + }) + }) }); diff --git a/packages/contracts/src/__tests__/ContractDeployer.spec.ts b/packages/contracts/src/__tests__/ContractDeployer.spec.ts index 7cbfa8ca..5f772d72 100644 --- a/packages/contracts/src/__tests__/ContractDeployer.spec.ts +++ b/packages/contracts/src/__tests__/ContractDeployer.spec.ts @@ -3,7 +3,7 @@ import MockProvider from '@dedot/api/client/__tests__/MockProvider'; import { beforeEach, describe, expect, it } from 'vitest'; import { ContractDeployer } from '../ContractDeployer.js'; import { MockedRuntimeVersionWithContractsApi } from './Contract.spec.js'; -import { FLIPPER_CONTRACT_METADATA, PSP22_CONTRACT_METADATA } from './contracts-metadata.js'; +import { FLIPPER_CONTRACT_METADATA_V4, PSP22_CONTRACT_METADATA } from './contracts-metadata.js'; describe('ContractDeployer', () => { let api: Dedot, provider: MockProvider, flipper: ContractDeployer, psp22: ContractDeployer; @@ -12,7 +12,7 @@ describe('ContractDeployer', () => { beforeEach(async () => { provider = new MockProvider(MockedRuntimeVersionWithContractsApi); api = await Dedot.new({ provider }); - flipper = new ContractDeployer(api, FLIPPER_CONTRACT_METADATA, FLIPPER_CONTRACT_METADATA.source.hash); + flipper = new ContractDeployer(api, FLIPPER_CONTRACT_METADATA_V4, FLIPPER_CONTRACT_METADATA_V4.source.hash); psp22 = new ContractDeployer(api, PSP22_CONTRACT_METADATA, PSP22_CONTRACT_METADATA.source.hash); }); @@ -34,7 +34,7 @@ describe('ContractDeployer', () => { provider = new MockProvider(); api = await Dedot.new({ provider }); expect( - () => new ContractDeployer(api, FLIPPER_CONTRACT_METADATA, FLIPPER_CONTRACT_METADATA.source.hash), + () => new ContractDeployer(api, FLIPPER_CONTRACT_METADATA_V4, FLIPPER_CONTRACT_METADATA_V4.source.hash), ).toThrowError('Contracts pallet is not available'); }); }); diff --git a/packages/contracts/src/__tests__/TypinkRegistry.spec.ts b/packages/contracts/src/__tests__/TypinkRegistry.spec.ts index 1e7856ac..6e6178b1 100644 --- a/packages/contracts/src/__tests__/TypinkRegistry.spec.ts +++ b/packages/contracts/src/__tests__/TypinkRegistry.spec.ts @@ -1,20 +1,21 @@ import * as util from 'node:util'; import { beforeEach, describe, expect, it } from 'vitest'; import { TypinkRegistry } from '../TypinkRegistry.js'; -import { FLIPPER_CONTRACT_METADATA } from './contracts-metadata.js'; +import { FLIPPER_CONTRACT_METADATA_V4 } from './contracts-metadata.js'; describe('TypinkRegistry', () => { describe('with metadata', () => { let registry: TypinkRegistry; beforeEach(() => { - registry = new TypinkRegistry(FLIPPER_CONTRACT_METADATA); + registry = new TypinkRegistry(FLIPPER_CONTRACT_METADATA_V4); }); it('should have metadata', () => { expect(registry.metadata).toBeDefined(); }); + describe('findCodec', () => { it('should find existing codec', () => { expect(util.inspect(registry.findCodec(1))).toEqual( diff --git a/packages/contracts/src/__tests__/contracts-metadata.ts b/packages/contracts/src/__tests__/contracts-metadata.ts index 4ab2a229..abdb2d73 100644 --- a/packages/contracts/src/__tests__/contracts-metadata.ts +++ b/packages/contracts/src/__tests__/contracts-metadata.ts @@ -1,11 +1,13 @@ import { parseRawMetadata } from "../utils.js"; // @ts-ignore -import flipperRaw from './flipper.json' assert { type: 'json' }; +import flipperV4Raw from './flipper_v4.json' assert { type: 'json' }; +// @ts-ignore +import flipperV5Raw from './flipper_v5.json' assert { type: 'json' }; // @ts-ignore import psp22Raw from './psp22.json' assert { type: 'json' }; - export const RANDOM_CONTRACT_ADDRESS = '5GpTe4rrVUcZbndCc6HGNCLNfs84R9xaQ9FhPYXQFUZqMVZn'; -export const FLIPPER_CONTRACT_METADATA = parseRawMetadata(JSON.stringify(flipperRaw)); +export const FLIPPER_CONTRACT_METADATA_V4 = parseRawMetadata(JSON.stringify(flipperV4Raw)); +export const FLIPPER_CONTRACT_METADATA_V5 = parseRawMetadata(JSON.stringify(flipperV5Raw)); export const PSP22_CONTRACT_METADATA = parseRawMetadata(JSON.stringify(psp22Raw)) diff --git a/packages/contracts/src/__tests__/flipper.json b/packages/contracts/src/__tests__/flipper.json deleted file mode 100644 index 3a8ed129..00000000 --- a/packages/contracts/src/__tests__/flipper.json +++ /dev/null @@ -1,150 +0,0 @@ -{ - "source": { - "hash": "0xb1a41fefacdfefb96c89984b2f321b1480feaed8899a396b840f45a99c1c102c", - "language": "ink! 4.3.0", - "compiler": "rustc 1.76.0-nightly", - "wasm": "0x0061736d0100000001400b60037f7f7f017f60027f7f017f60027f7f0060037f7f7f0060017f0060047f7f7f7f017f60000060017f017f60047f7f7f7f0060057f7f7f7f7f006000017f028a0107057365616c310b6765745f73746f726167650005057365616c301176616c75655f7472616e736665727265640002057365616c3005696e7075740002057365616c300d64656275675f6d6573736167650001057365616c320b7365745f73746f726167650005057365616c300b7365616c5f72657475726e000303656e76066d656d6f7279020102100332310302030a07030102070006020403020206040603080203040602070100040001010101040201010905080509020101030104050170010e0e0608017f01418080040b0711020463616c6c0016066465706c6f7900180913010041010b0d0c33263628342327232425212a0aed3c312c01017f037f2002200346047f200005200020036a200120036a2d00003a0000200341016a21030c010b0b1a0b2601017f230041106b22022400200220003a000f20012002410f6a41011008200241106a24000b5c01037f02402000280208220420026a220320044f04402003200028020422054b0d01200028020020046a200320046b2001200241a098041031200020033602080f0b41c09604411c41809804101c000b2003200541909804100b000b4d02017f027e230041206b2200240020004200370308200042003703002000411036021c20002000411c6a10012000290308210120002903002102200041206a2400410541042001200284501b0b1b002000418180014f044020004180800141ec8104100b000b20000b6b01017f230041306b220324002003200136020420032000360200200341146a42023702002003412c6a41033602002003410236020c200341b08f04360208200341033602242003200341206a3602102003200341046a36022820032003360220200341086a2002100d000b840101017f230041306b22022400200241146a42013702002002410136020c200241b4950436020820024102360224200220002d0000410274220041cc99046a28020036022c2002200041e099046a2802003602282002200241206a3602102002200241286a36022020012802142001280218200241086a10222100200241306a240020000b3c01017f230041206b22022400200241013b011c2002200136021820022000360214200241ac8a04360210200241b4960436020c2002410c6a1029000b4701027f230041106b22012400200141003a000f20002001410f6a4101100f220045044020012d000f21020b200141106a240041024101410220024101461b410020021b20001b0b3d01027f2000280204220320024922044504402001200220002802002201200241bc990410312000200320026b3602042000200120026a3602000b20040b3c01027f230041106b22002400200042808001370208200041fc9904360204200041046a2201410010152001410010154100200028020c100a1014000b4401027f230041106b22022400200242808001370208200241fc9904360204200241046a22032001047f20034101101541010541000b10152000200228020c100a1014000bb20102057f017e230041306b220124002001410036021c200142808001370228200141fc990436022420014100360220200141246a2202200141206a4104100820012001290224370214200141086a200141146a2203200128022c1013200128020c210420012802082105200129021421062001410036022c200120063702242000200210072001200129022437021420012003200128022c1013200520042001280200200128020410041a200141306a24000b4501017f2002200128020422034b044041dc9604412341c09804101c000b2001200320026b36020420012001280200220120026a36020020002002360204200020013602000b0d00200041fc990420011005000b970101027f20002802082202200028020422034904402000200241016a360208200028020020026a20013a00000f0b230041306b220024002000200336020420002002360200200041146a42023702002000412c6a41033602002000410236020c200041fc8a04360208200041033602242000200041206a360210200020003602282000200041046a360220200041086a41b09804100d000b870501077f230041306b22002400024002400240024002400240100941ff0171410546044020004180800136021441fc9904200041146a100220002802142201418180014f0d0120002001360218200041fc990436021420004100360208200041146a200041086a4104100f0d0520002d000b210120002d000a210220002d00092103024020002d00082204412f470440200441e300470d07410121042003413a47200241a5014772200141d1004772450d010c070b41002104200341860147200241db004772200141d90147720d060b20004100360210200042808001370218200041fc99043602142000410036022c200041146a22032000412c6a41041008200020002902143702082000200041086a200028021c10132000280204210520002802002106200028020821012000200028020c2202360214200620052001200310002105200220002802142203490d0202400240024020050e0402000001000b200041206a420037020020004101360218200041988204360214200041b4960436021c200041146a41a08204100d000b200041206a4200370200200041013602182000419483043602140c070b2000200336021820002001360214200041146a100e220141ff01714102460d0420040d03230041106b22002400200042808001370208200041fc9904360204200041046a220241001015200141ff0171410047200210074100200028020c100a1014000b200041043a0014200041146a1017000b20014180800141ec8004100b000b2003200241ec8004100b000b200141ff0171451012410041001011000b200041206a420037020020004101360218200041c483043602140c010b410141011011000b200041b4960436021c200041146a41ec8204100d000b4801017f230041206b220124002001410c6a420137020020014101360204200141b495043602002001410136021c200120003602182001200141186a360208200141ec8204100d000b860201057f230041106b22002400024002401009220141ff0171410546044020004180800136020441fc9904200041046a100220002802042201418180014f0d0120002001360208200041fc99043602042000410036020c0240200041046a2000410c6a4104100f0d0020002d000f210120002d000e210220002d000d210320002d000c220441e1004704402004419b0147200341ae0147722002419d0147200141de004772720d01200041046a100e220041ff01714102460d01200010121010000b200341ef0147200241fe0047720d002001413e460d030b410141011011000b200020013a0004200041046a1017000b20014180800141ec8004100b000b410010121010000b7601027f230041106b2204240020022000280204200028020822036b4b0440200441086a200020032002101a2004280208200428020c101b200028020821030b200028020020036a2001200210062003200220036a22014b044041c09604411c41e08904101c000b20002001360208200441106a24000bbf0301057f230041206b220424000240027f4100200220036a22032002490d001a200128020422024100480d01410820024101742206200320032006491b2203200341084d1b2203417f73411f76210702402002450440200441003602180c010b2004200236021c20044101360218200420012802003602140b200441146a2105230041106b22022400200441086a2206027f02402007044020034100480d01027f20052802040440200541086a2802002207450440200241086a2003101f20022802082105200228020c0c020b200528020021080240200310202205450440410021050c010b20052008200710060b20030c010b20022003101f2002280200210520022802040b21072005044020062005360204200641086a200736020041000c030b20064101360204200641086a200336020041010c020b20064100360204200641086a200336020041010c010b2006410036020441010b360200200241106a24002004280208450440200428020c210220012003360204200120023602004181808080780c010b200441106a2802002103200428020c0b21012000200336020420002001360200200441206a24000f0b41d08304412141a08504101c000b1f00024020004181808080784704402000450d012001101d000b0f0b101e000b4601017f230041206b220324002003410c6a420037020020034101360204200341b496043602082003200136021c200320003602182003200341186a36020020032002100d000b860101017f230041306b220124002001200036020c2001411c6a420137020020014102360214200141f886043602102001410336022c2001200141286a36021820012001410c6a360228230041206b22002400200041003b011c2000418887043602182000200141106a360214200041ac8a04360210200041b4960436020c2000410c6a1029000b3c01017f230041206b22002400200041146a42003702002000410136020c200041c48504360208200041b49604360210200041086a41cc8504100d000b2001017f41fe99052d00001a20011020210220002001360204200020023602000b800101027f0240027f410041f49904280200220120006a22022001490d001a41f899042802002002490440200041ffff036a22024110764000220141ffff034b0d022001411074220120024180807c716a22022001490d0241f8990420023602004100200020016a22022001490d011a0b41f49904200236020020010b0f0b41000b0c002000418c8404200110220bfc0301067f230041406a22032400200341346a2001360200200341033a003c2003412036022c2003410036023820032000360230200341003602242003410036021c027f02400240200228021022014504402002410c6a28020022004103742106200041ffffffff017121072002280200210820022802082101034020042006460d02200420086a220041046a28020022050440200328023020002802002005200328023428020c1100000d040b200441086a21042001280200210020012802042105200141086a210120002003411c6a2005110100450d000b0c020b200241146a28020022044105742100200441ffffff3f7121072002280208210620022802002208210403402000450d01200441046a28020022050440200328023020042802002005200328023428020c1100000d030b2003200128021036022c200320012d001c3a003c20032001280218360238200341106a2006200141086a10352003200329031037021c200341086a20062001103520032003290308370224200441086a2104200041206b210020012802142105200141206a2101200620054103746a22052802002003411c6a2005280204110100450d000b0c010b200228020420074b04402003280230200820074103746a22002802002000280204200328023428020c1100000d010b41000c010b41010b2101200341406b240020010b0300010b0c00200020012002101941000bd10201037f230041106b220224000240024020002002410c6a027f0240024020014180014f04402002410036020c2001418010490d012001418080044f0d0220022001413f71418001723a000e20022001410c7641e001723a000c20022001410676413f71418001723a000d41030c030b200028020822032000280204460440230041106b22042400200441086a200020034101101a2004280208200428020c101b200441106a2400200028020821030b200028020020036a20013a0000200341016a2201450d04200020013602080c030b20022001413f71418001723a000d2002200141067641c001723a000c41020c010b20022001413f71418001723a000f20022001410676413f71418001723a000e20022001410c76413f71418001723a000d2002200141127641077141f001723a000c41040b10190b200241106a240041000f0b41c09604411c41d08904101c000bd606020b7f027e230041406a2203240020002802002202ad210d0240024002400240024002400240024020024190ce004f044041272100200d210e034020004104490d09200341196a20006a220241046b200e4290ce0080220d42f0b1037e200e7ca7220441ffff037141e4006e2206410174419a8c046a2f00003b0000200241026b2006419c7f6c20046a41ffff0371410174419a8c046a2f00003b0000200041046b2100200e42ffc1d72f562102200d210e20020d000b200da7220241e3004d0d02200041024f0d010c080b41272100200241e3004d0d020b200041026b2200200341196a6a200da7220441ffff037141e4006e2202419c7f6c20046a41ffff0371410174419a8c046a2f00003b00000b2002410a4f044020004102490d060c040b20000d010c050b2002410a4f0d020b200041016b2200200341196a6a200241306a3a00000c020b000b200041026b2200200341196a6a2002410174419a8c046a2f00003b00000b02400240200041274d0440412820006b412720006b2206200128021c220541017122071b2102410021042005410471044041b496042104200241b4960441b49604102b20026a22024b0d020b412b418080c40020071b2107200341196a20006a2108200128020045044041012100200128021422022001280218220120072004102e0d03200220082006200128020c11000021000c030b2002200128020422094f044041012100200128021422022001280218220120072004102e0d03200220082006200128020c11000021000c030b200541087104402001280210210b2001413036021020012d0020210c41012100200141013a0020200128021422052001280218220a20072004102e0d03200341106a2001200920026b4101102f20032802102202418080c400460d0320032802142104200520082006200a28020c1100000d03200220042005200a10300d032001200c3a00202001200b360210410021000c030b41012100200341086a2001200920026b4101102f20032802082205418080c400460d02200328020c2109200128021422022001280218220120072004102e0d02200220082006200128020c1100000d022005200920022001103021000c020b0c020b41c09604411c41dc8e04101c000b200341406b240020000f0b41f08904412141a49504101c000b1b002001280214418484044105200141186a28020028020c1100000b0e0020002802001a03400c000b000bad0301047f230041406a220124002001200036020c2001411c6a4201370200200141023602142001418097043602102001410436022c2001200141286a36021820012001410c6a3602284100210002400240024002400340200020002002410374418497046a2802006a22004b0d014101210220032104410121032004450d000b20004101744100200041104e1b2200044020004100480d0220012000101f20012802002202450d030b200141003602382001200036023420012002360230200141306a200141106a10210d032001280230210020012802382103024041fc99052d000045044041fd99052d00004101710d010b200020031003410947044041fc990541013a00000b41fd990541013a00000b000b41c09604411c41949504101c000b101e000b2000101d000b230041406a220024002000413336020c200041988704360208200041f4830436021420002001413f6a360210200041246a42023702002000413c6a41063602002000410236021c200041908b04360218200041023602342000200041306a3602202000200041106a3602382000200041086a360230200041186a41c48804100d000b20002000429990cb88a185828a1e37030820004281dccbe4f8b8d7fc373703000b8e04010a7f230041106b220224000240200120006b220141104f04402000200041036a417c71220620006b2200102c22042006200120006b2200417c716a2000410371102c6a220320044f0440200041027621050240024003402005450d0520022006200541c0012005200541c0014f1b41c09004102d200228020c21052002280208210620022002280200200228020422002000417c7141b49204102d200228020c210820022802082107024020022802042200450440410021000c010b2002280200220420004102746a21094100210003402004220a41106a21044100210102400340200020002001200a6a280200220b417f73410776200b410676724181828408716a22004d0440200141046a22014110470d010c020b0b41c09604411c41f49204101c000b20042009470d000b0b20032003200041087641ff81fc0771200041ff81fc07716a418180046c4110766a22034b0d012008450d000b200841027421014100210003402000200020072802002204417f734107762004410676724181828408716a22004b0d02200741046a2107200141046b22010d000b20032003200041087641ff81fc0771200041ff81fc07716a418180046c4110766a22034d0d0441c09604411c41d49204101c000b41c09604411c41c49204101c000b41c09604411c41e49204101c000b41c09604411c41a49204101c000b20002001102c21030b200241106a240020030b4601017f200145044041000f0b024003402002200220002c000041bf7f4a6a22024b0d01200041016a2100200141016b22010d000b20020f0b41c09604411c41949504101c000b3d002002200349044041dc960441232004101c000b20002003360204200020013602002000410c6a200220036b3602002000200120034102746a3602080b39000240027f2002418080c40047044041012000200220012802101101000d011a0b20030d0141000b0f0b200020034100200128020c1100000bb20101027f024002400240024020012d0020220441016b0e03010200030b200341ff01710d00410021040c020b20022104410021020c010b200241016a2203044020024101762104200341017621020c010b41c09604411c41ec8e04101c000b200441016a2104200141186a2802002105200128021021032001280214210102400340200441016b2204450d01200120032005280210110100450d000b418080c40021030b20002002360204200020033602000b3201017f027f0340200120012004460d011a200441016a2104200220002003280210110100450d000b200441016b0b2001490b7a002001200346044020002002200110060f0b230041306b220024002000200336020420002001360200200041146a42023702002000412c6a41033602002000410336020c200041909104360208200041033602242000200041206a360210200020003602282000200041046a360220200041086a2004100d000b900201067f02402000027f418080c400200128020022022001280204460d001a2001200241016a2205360200024020022d0000220341187441187541004e0d002001200241026a220536020020022d0001413f7121042003411f712106200341df014d0440200641067420047221030c010b2001200241036a220536020020022d0002413f712004410674722107200341f00149044020072006410c747221030c010b2001200241046a2205360200418080c4002006411274418080f0007120022d0003413f71200741067472722203418080c400460d011a0b20012802082204200520026b6a22022004490d012001200236020820030b360204200020043602000f0b41c09604411c41809404101c000bb90301067f230041306b22022400200028020421042000280200210302400240200128020022062001280208220072044002402000450d002001410c6a28020021002002410036022c200220033602242002200320046a360228200041016a21000340200041016b22000440200241186a200241246a1032200228021c418080c400470d010c020b0b200241106a200241246a10322002280214418080c400460d000240024020022802102205450d00200420054d04404100210020042005460d010c020b41002100200320056a2c00004140480d010b200321000b2005200420001b21042000200320001b21030b2006450440200128021420032004200141186a28020028020c11000021000c030b200128020422002003200320046a102b22054d0d01200241086a2001200020056b4100102f4101210020022802082205418080c400460d02200228020c21062001280214220720032004200141186a280200220128020c1100000d022005200620072001103021000c020b200128021420032004200141186a28020028020c11000021000c010b200128021420032004200141186a28020028020c11000021000b200241306a240020000b140020002802002001200028020428020c1101000b5501027f0240027f02400240200228020041016b0e020103000b200241046a0c010b200120022802044103746a22012802044105470d0120012802000b2802002104410121030b20002004360204200020033602000beb0201057f230041406a22022400200028020021054101210002402001280214220441bc8a04410c200141186a280200220628020c22011100000d00200528020c21032002411c6a42033702002002413c6a4103360200200241346a410336020020024103360214200241948a0436021020022003410c6a3602382002200341086a3602302002410236022c200220033602282002200241286a36021820042006200241106a10220d00200528020822030440200441c88a04410220011100000d01200241386a200341106a290200370300200241306a200341086a2902003703002002200329020037032820042006200241286a102221000c010b200220052802002203200528020428020c11020041002100200229030042c1f7f9e8cc93b2d14185200241086a29030042e4dec78590d085de7d858450450d0041012100200441c88a04410220011100000d00200420032802002003280204200111000021000b200241406b240020000b0bf8190200418080040bb4162f55736572732f316365647275732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d342e332e302f7372632f656e67696e652f6f6e5f636861696e2f6578742e7273000001006c000000e4000000170000002f55736572732f316365647275732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d342e332e302f7372632f656e67696e652f6f6e5f636861696e2f696d706c732e727300007c0001006e0000002401000032000000656e636f756e746572656420756e6578706563746564206572726f72fc0001001c0000007c0001006e000000ed000000170000002f55736572732f316365647275732f576f726b5370616365732f776f726b732f696e6b2d6578616d706c65732f666c69707065722f6c69622e727300300101003b000000060000000500000073746f7261676520656e7472792077617320656d707479007c01010017000000636f756c64206e6f742070726f7065726c79206465636f64652073746f7261676520656e747279009c0101002700000000000000617474656d707420746f206d756c7469706c792077697468206f766572666c6f77000000070000000000000001000000080000004572726f72000000090000000c000000040000000a0000000b0000000c0000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f616c6c6f632f7372632f7261775f7665632e727300240201007b000000980100001c0000006361706163697479206f766572666c6f77000000b002010011000000240201007b00000021020000050000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f616c6c6f632f7372632f616c6c6f632e72736d656d6f727920616c6c6f636174696f6e206f6620206279746573206661696c65640055030100150000006a0301000d000000dc02010079000000a20100000d0000006120666f726d617474696e6720747261697420696d706c656d656e746174696f6e2072657475726e656420616e206572726f722f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f616c6c6f632f7372632f666d742e72730000cb0301007700000064020000200000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f616c6c6f632f7372632f7665632f6d6f642e727300540401007b000000610700000d000000540401007b000000d007000009000000617474656d707420746f2073756274726163742077697468206f766572666c6f77293a00340b010000000000120501000100000012050100010000000700000000000000010000000d00000070616e69636b6564206174203a0a696e646578206f7574206f6620626f756e64733a20746865206c656e20697320206275742074686520696e646578206973204a050100200000006a050100120000003a200000340b0100000000008c050100020000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f666d742f6e756d2e727330303031303230333034303530363037303830393130313131323133313431353136313731383139323032313232323332343235323632373238323933303331333233333334333533363337333833393430343134323433343434353436343734383439353035313532353335343535353635373538353936303631363236333634363536363637363836393730373137323733373437353736373737383739383038313832383338343835383638373838383939303931393239333934393539363937393839392f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f666d742f6d6f642e7273e20601007a000000050500000d000000e20601007a0000009705000030000000206f7574206f662072616e676520666f7220736c696365206f66206c656e6774682072616e676520656e6420696e6465782000009e070100100000007c070100220000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f736c6963652f697465722e7273000000c00701007d000000c405000025000000736f7572636520736c696365206c656e67746820282920646f6573206e6f74206d617463682064657374696e6174696f6e20736c696365206c656e67746820285008010015000000650801002b00000011050100010000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f7374722f636f756e742e7273a80801007c0000004700000015000000a80801007c0000004f00000032000000a80801007c0000005a00000009000000a80801007c000000660000000d000000a80801007c0000006400000011000000a80801007c00000054000000110000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f7374722f697465722e727300840901007b00000091000000110000002f55736572732f316365647275732f2e7275737475702f746f6f6c636861696e732f6e696768746c792d323032332d31312d32302d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f697465722f7472616974732f616363756d2e7273100a0100840000009500000001000000a00501007a000000d701000005000000340b010000000000756e61626c6520746f206465636f64652073656c6563746f72656e636f756e746572656420756e6b6e6f776e2073656c6563746f72756e61626c6520746f206465636f646520696e707574636f756c64206e6f74207265616420696e7075747061696420616e20756e70617961626c65206d6573736167650041c096040bb303617474656d707420746f206164642077697468206f766572666c6f77617373657274696f6e206661696c65643a206d6964203c3d2073656c662e6c656e28290a340b0100000000007f0b0100010000002f55736572732f316365647275732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f696e6b5f656e762d342e332e302f7372632f656e67696e652f6f6e5f636861696e2f6275666665722e727300900b01006f0000005a0000001c000000900b01006f0000005a00000014000000900b01006f0000005a00000031000000900b01006f0000006500000009000000900b01006f0000008d000000210000002f55736572732f316365647275732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d366631376432326262613135303031662f7061726974792d7363616c652d636f6465632d332e362e392f7372632f636f6465632e7273000000500c010069000000770000000e000000190000001c000000160000001400000019000000bc0a0100d50a0100f10a0100070b01001b0b01", - "build_info": { - "build_mode": "Debug", - "cargo_contract_version": "3.2.0", - "rust_toolchain": "nightly-aarch64-apple-darwin", - "wasm_opt_settings": { "keep_debug_symbols": false, "optimization_passes": "Z" } - } - }, - "contract": { "name": "flipper", "version": "4.0.0", "authors": ["Parity Technologies "] }, - "spec": { - "constructors": [ - { - "args": [{ "label": "init_value", "type": { "displayName": ["bool"], "type": 0 } }], - "default": false, - "docs": ["Creates a new flipper smart contract initialized with the given value."], - "label": "new", - "payable": false, - "returnType": { "displayName": ["ink_primitives", "ConstructorResult"], "type": 1 }, - "selector": "0x9bae9d5e" - }, - { - "args": [], - "default": false, - "docs": ["Creates a new flipper smart contract initialized to `false`."], - "label": "new_default", - "payable": false, - "returnType": { "displayName": ["ink_primitives", "ConstructorResult"], "type": 1 }, - "selector": "0x61ef7e3e" - } - ], - "docs": [], - "environment": { - "accountId": { "displayName": ["AccountId"], "type": 5 }, - "balance": { "displayName": ["Balance"], "type": 8 }, - "blockNumber": { "displayName": ["BlockNumber"], "type": 11 }, - "chainExtension": { "displayName": ["ChainExtension"], "type": 12 }, - "hash": { "displayName": ["Hash"], "type": 9 }, - "maxEventTopics": 4, - "timestamp": { "displayName": ["Timestamp"], "type": 10 } - }, - "events": [], - "lang_error": { "displayName": ["ink", "LangError"], "type": 3 }, - "messages": [ - { - "args": [], - "default": false, - "docs": [" Flips the current value of the Flipper's boolean."], - "label": "flip", - "mutates": true, - "payable": false, - "returnType": { "displayName": ["ink", "MessageResult"], "type": 1 }, - "selector": "0x633aa551" - }, - { - "args": [], - "default": false, - "docs": [" Returns the current value of the Flipper's boolean."], - "label": "get", - "mutates": false, - "payable": false, - "returnType": { "displayName": ["ink", "MessageResult"], "type": 4 }, - "selector": "0x2f865bd9" - } - ] - }, - "storage": { - "root": { - "layout": { - "struct": { - "fields": [{ "layout": { "leaf": { "key": "0x00000000", "ty": 0 } }, "name": "value" }], - "name": "Flipper" - } - }, - "root_key": "0x00000000" - } - }, - "types": [ - { "id": 0, "type": { "def": { "primitive": "bool" } } }, - { - "id": 1, - "type": { - "def": { - "variant": { - "variants": [ - { "fields": [{ "type": 2 }], "index": 0, "name": "Ok" }, - { "fields": [{ "type": 3 }], "index": 1, "name": "Err" } - ] - } - }, - "params": [ - { "name": "T", "type": 2 }, - { "name": "E", "type": 3 } - ], - "path": ["Result"] - } - }, - { "id": 2, "type": { "def": { "tuple": [] } } }, - { - "id": 3, - "type": { - "def": { "variant": { "variants": [{ "index": 1, "name": "CouldNotReadInput" }] } }, - "path": ["ink_primitives", "LangError"] - } - }, - { - "id": 4, - "type": { - "def": { - "variant": { - "variants": [ - { "fields": [{ "type": 0 }], "index": 0, "name": "Ok" }, - { "fields": [{ "type": 3 }], "index": 1, "name": "Err" } - ] - } - }, - "params": [ - { "name": "T", "type": 0 }, - { "name": "E", "type": 3 } - ], - "path": ["Result"] - } - }, - { - "id": 5, - "type": { - "def": { "composite": { "fields": [{ "type": 6, "typeName": "[u8; 32]" }] } }, - "path": ["ink_primitives", "types", "AccountId"] - } - }, - { "id": 6, "type": { "def": { "array": { "len": 32, "type": 7 } } } }, - { "id": 7, "type": { "def": { "primitive": "u8" } } }, - { "id": 8, "type": { "def": { "primitive": "u128" } } }, - { - "id": 9, - "type": { - "def": { "composite": { "fields": [{ "type": 6, "typeName": "[u8; 32]" }] } }, - "path": ["ink_primitives", "types", "Hash"] - } - }, - { "id": 10, "type": { "def": { "primitive": "u64" } } }, - { "id": 11, "type": { "def": { "primitive": "u32" } } }, - { "id": 12, "type": { "def": { "variant": {} }, "path": ["ink_env", "types", "NoChainExtension"] } } - ], - "version": "4" -} diff --git a/packages/contracts/src/__tests__/flipper_v4.json b/packages/contracts/src/__tests__/flipper_v4.json new file mode 100644 index 00000000..2d8a8920 --- /dev/null +++ b/packages/contracts/src/__tests__/flipper_v4.json @@ -0,0 +1,425 @@ +{ + "source": { + "hash": "0x7eeb785c6ffe06e7d8bab5c5bc190fc11ff488e8369df3f7f7641ace151182e8", + "language": "ink! 4.3.0", + "compiler": "rustc 1.76.0-nightly", + "build_info": { + "build_mode": "Debug", + "cargo_contract_version": "3.2.0", + "rust_toolchain": "nightly-aarch64-apple-darwin", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "flipper", + "version": "4.0.0", + "authors": [ + "Parity Technologies " + ] + }, + "spec": { + "constructors": [ + { + "args": [ + { + "label": "init_value", + "type": { + "displayName": [ + "bool" + ], + "type": 0 + } + } + ], + "default": false, + "docs": [ + "Creates a new flipper smart contract initialized with the given value." + ], + "label": "new", + "payable": false, + "returnType": { + "displayName": [ + "ink_primitives", + "ConstructorResult" + ], + "type": 1 + }, + "selector": "0x9bae9d5e" + }, + { + "args": [], + "default": false, + "docs": [ + "Creates a new flipper smart contract initialized to `false`." + ], + "label": "new_default", + "payable": false, + "returnType": { + "displayName": [ + "ink_primitives", + "ConstructorResult" + ], + "type": 1 + }, + "selector": "0x61ef7e3e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": [ + "AccountId" + ], + "type": 5 + }, + "balance": { + "displayName": [ + "Balance" + ], + "type": 8 + }, + "blockNumber": { + "displayName": [ + "BlockNumber" + ], + "type": 11 + }, + "chainExtension": { + "displayName": [ + "ChainExtension" + ], + "type": 12 + }, + "hash": { + "displayName": [ + "Hash" + ], + "type": 9 + }, + "maxEventTopics": 4, + "timestamp": { + "displayName": [ + "Timestamp" + ], + "type": 10 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "old", + "type": { + "displayName": [ + "bool" + ], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "new", + "type": { + "displayName": [ + "bool" + ], + "type": 0 + } + } + ], + "docs": [], + "label": "Flipped" + } + ], + "lang_error": { + "displayName": [ + "ink", + "LangError" + ], + "type": 3 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [ + " Flips the current value of the Flipper's boolean." + ], + "label": "flip", + "mutates": true, + "payable": false, + "returnType": { + "displayName": [ + "ink", + "MessageResult" + ], + "type": 1 + }, + "selector": "0x633aa551" + }, + { + "args": [], + "default": false, + "docs": [ + " Returns the current value of the Flipper's boolean." + ], + "label": "get", + "mutates": false, + "payable": false, + "returnType": { + "displayName": [ + "ink", + "MessageResult" + ], + "type": 4 + }, + "selector": "0x2f865bd9" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 0 + } + }, + "name": "value" + } + ], + "name": "Flipper" + } + }, + "root_key": "0x00000000" + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 1, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 2 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 3 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "E", + "type": 3 + } + ], + "path": [ + "Result" + ] + } + }, + { + "id": 2, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 3, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": [ + "ink_primitives", + "LangError" + ] + } + }, + { + "id": 4, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 3 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 3 + } + ], + "path": [ + "Result" + ] + } + }, + { + "id": 5, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 6, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": [ + "ink_primitives", + "types", + "AccountId" + ] + } + }, + { + "id": 6, + "type": { + "def": { + "array": { + "len": 32, + "type": 7 + } + } + } + }, + { + "id": 7, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 8, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 9, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 6, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": [ + "ink_primitives", + "types", + "Hash" + ] + } + }, + { + "id": 10, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 12, + "type": { + "def": { + "variant": {} + }, + "path": [ + "ink_env", + "types", + "NoChainExtension" + ] + } + } + ], + "version": "4" +} \ No newline at end of file diff --git a/packages/contracts/src/__tests__/flipper_v5.json b/packages/contracts/src/__tests__/flipper_v5.json new file mode 100644 index 00000000..1c3e7fb6 --- /dev/null +++ b/packages/contracts/src/__tests__/flipper_v5.json @@ -0,0 +1,451 @@ +{ + "source": { + "hash": "0x30e25953c7695f2508dfd1dc4f891a76d51e2989f7a3084275824d644f204ad6", + "language": "ink! 5.0.0", + "compiler": "rustc 1.76.0-nightly", + "build_info": { + "build_mode": "Debug", + "cargo_contract_version": "4.1.1", + "rust_toolchain": "nightly-aarch64-apple-darwin", + "wasm_opt_settings": { + "keep_debug_symbols": false, + "optimization_passes": "Z" + } + } + }, + "contract": { + "name": "flipper", + "version": "5.0.0", + "authors": [ + "Parity Technologies " + ] + }, + "image": null, + "spec": { + "constructors": [ + { + "args": [ + { + "label": "init_value", + "type": { + "displayName": [ + "bool" + ], + "type": 0 + } + } + ], + "default": false, + "docs": [ + "Creates a new flipper smart contract initialized with the given value." + ], + "label": "new", + "payable": false, + "returnType": { + "displayName": [ + "ink_primitives", + "ConstructorResult" + ], + "type": 2 + }, + "selector": "0x9bae9d5e" + }, + { + "args": [], + "default": false, + "docs": [ + "Creates a new flipper smart contract initialized to `false`." + ], + "label": "new_default", + "payable": false, + "returnType": { + "displayName": [ + "ink_primitives", + "ConstructorResult" + ], + "type": 2 + }, + "selector": "0x61ef7e3e" + } + ], + "docs": [], + "environment": { + "accountId": { + "displayName": [ + "AccountId" + ], + "type": 6 + }, + "balance": { + "displayName": [ + "Balance" + ], + "type": 9 + }, + "blockNumber": { + "displayName": [ + "BlockNumber" + ], + "type": 12 + }, + "chainExtension": { + "displayName": [ + "ChainExtension" + ], + "type": 13 + }, + "hash": { + "displayName": [ + "Hash" + ], + "type": 10 + }, + "maxEventTopics": 4, + "staticBufferSize": 16384, + "timestamp": { + "displayName": [ + "Timestamp" + ], + "type": 11 + } + }, + "events": [ + { + "args": [ + { + "docs": [], + "indexed": false, + "label": "old", + "type": { + "displayName": [ + "bool" + ], + "type": 0 + } + }, + { + "docs": [], + "indexed": false, + "label": "new", + "type": { + "displayName": [ + "bool" + ], + "type": 0 + } + } + ], + "docs": [], + "label": "Flipped", + "module_path": "flipper::flipper", + "signature_topic": "0x0a39b5ca0b8b3a5172476100ae7b9168b269cc91d5648efe180c75d935d3e886" + } + ], + "lang_error": { + "displayName": [ + "ink", + "LangError" + ], + "type": 4 + }, + "messages": [ + { + "args": [], + "default": false, + "docs": [ + " Flips the current value of the Flipper's boolean." + ], + "label": "flip", + "mutates": true, + "payable": false, + "returnType": { + "displayName": [ + "ink", + "MessageResult" + ], + "type": 2 + }, + "selector": "0x633aa551" + }, + { + "args": [], + "default": false, + "docs": [ + " Returns the current value of the Flipper's boolean." + ], + "label": "get", + "mutates": false, + "payable": false, + "returnType": { + "displayName": [ + "ink", + "MessageResult" + ], + "type": 5 + }, + "selector": "0x2f865bd9" + } + ] + }, + "storage": { + "root": { + "layout": { + "struct": { + "fields": [ + { + "layout": { + "leaf": { + "key": "0x00000000", + "ty": 0 + } + }, + "name": "value" + } + ], + "name": "Flipper" + } + }, + "root_key": "0x00000000", + "ty": 1 + } + }, + "types": [ + { + "id": 0, + "type": { + "def": { + "primitive": "bool" + } + } + }, + { + "id": 1, + "type": { + "def": { + "composite": { + "fields": [ + { + "name": "value", + "type": 0, + "typeName": ",>>::Type" + } + ] + } + }, + "path": [ + "flipper", + "flipper", + "Flipper" + ] + } + }, + { + "id": 2, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 3 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 4 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 3 + }, + { + "name": "E", + "type": 4 + } + ], + "path": [ + "Result" + ] + } + }, + { + "id": 3, + "type": { + "def": { + "tuple": [] + } + } + }, + { + "id": 4, + "type": { + "def": { + "variant": { + "variants": [ + { + "index": 1, + "name": "CouldNotReadInput" + } + ] + } + }, + "path": [ + "ink_primitives", + "LangError" + ] + } + }, + { + "id": 5, + "type": { + "def": { + "variant": { + "variants": [ + { + "fields": [ + { + "type": 0 + } + ], + "index": 0, + "name": "Ok" + }, + { + "fields": [ + { + "type": 4 + } + ], + "index": 1, + "name": "Err" + } + ] + } + }, + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "E", + "type": 4 + } + ], + "path": [ + "Result" + ] + } + }, + { + "id": 6, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 7, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": [ + "ink_primitives", + "types", + "AccountId" + ] + } + }, + { + "id": 7, + "type": { + "def": { + "array": { + "len": 32, + "type": 8 + } + } + } + }, + { + "id": 8, + "type": { + "def": { + "primitive": "u8" + } + } + }, + { + "id": 9, + "type": { + "def": { + "primitive": "u128" + } + } + }, + { + "id": 10, + "type": { + "def": { + "composite": { + "fields": [ + { + "type": 7, + "typeName": "[u8; 32]" + } + ] + } + }, + "path": [ + "ink_primitives", + "types", + "Hash" + ] + } + }, + { + "id": 11, + "type": { + "def": { + "primitive": "u64" + } + } + }, + { + "id": 12, + "type": { + "def": { + "primitive": "u32" + } + } + }, + { + "id": 13, + "type": { + "def": { + "variant": {} + }, + "path": [ + "ink_env", + "types", + "NoChainExtension" + ] + } + } + ], + "version": 5 +} \ No newline at end of file diff --git a/packages/contracts/src/__tests__/substrateContractMetadata.ts b/packages/contracts/src/__tests__/substrateContractMetadata.ts new file mode 100644 index 00000000..6afff2c7 --- /dev/null +++ b/packages/contracts/src/__tests__/substrateContractMetadata.ts @@ -0,0 +1,4 @@ +const substrateContractMetadata = + '0x6d6574610f3d03000c1c73705f636f72651863727970746f2c4163636f756e7449643332000004000401205b75383b2033325d0000040000032000000008000800000503000c08306672616d655f73797374656d2c4163636f756e74496e666f08144e6f6e636501102c4163636f756e74446174610114001401146e6f6e63651001144e6f6e6365000124636f6e73756d657273100120526566436f756e7400012470726f766964657273100120526566436f756e7400012c73756666696369656e7473100120526566436f756e740001106461746114012c4163636f756e74446174610000100000050500140c3c70616c6c65745f62616c616e6365731474797065732c4163636f756e7444617461041c42616c616e63650118001001106672656518011c42616c616e6365000120726573657276656418011c42616c616e636500011866726f7a656e18011c42616c616e6365000114666c6167731c01284578747261466c61677300001800000507001c0c3c70616c6c65745f62616c616e636573147479706573284578747261466c61677300000400180110753132380000200c346672616d655f737570706f7274206469737061746368405065724469737061746368436c6173730404540124000c01186e6f726d616c2401045400012c6f7065726174696f6e616c240104540001246d616e6461746f7279240104540000240c2873705f77656967687473247765696768745f76321857656967687400000801207265665f74696d6528010c75363400012870726f6f665f73697a6528010c7536340000280000062c002c000005060030083c7072696d69746976655f74797065731048323536000004000401205b75383b2033325d000034000002080038102873705f72756e74696d651c67656e65726963186469676573741844696765737400000401106c6f67733c013c5665633c4469676573744974656d3e00003c000002400040102873705f72756e74696d651c67656e6572696318646967657374284469676573744974656d0001142850726552756e74696d650800440144436f6e73656e737573456e67696e654964000034011c5665633c75383e00060024436f6e73656e7375730800440144436f6e73656e737573456e67696e654964000034011c5665633c75383e000400105365616c0800440144436f6e73656e737573456e67696e654964000034011c5665633c75383e000500144f74686572040034011c5665633c75383e0000006452756e74696d65456e7669726f6e6d656e74557064617465640008000044000003040000000800480000024c004c08306672616d655f73797374656d2c4576656e745265636f7264080445015004540130000c01147068617365ac011450686173650001146576656e7450010445000118746f70696373b001185665633c543e0000500858636f6e7472616374735f6e6f64655f72756e74696d653052756e74696d654576656e7400011c1853797374656d04005401706672616d655f73797374656d3a3a4576656e743c52756e74696d653e0000001c5574696c69747904007c015470616c6c65745f7574696c6974793a3a4576656e740002002042616c616e636573040088017c70616c6c65745f62616c616e6365733a3a4576656e743c52756e74696d653e000400485472616e73616374696f6e5061796d656e7404009001a870616c6c65745f7472616e73616374696f6e5f7061796d656e743a3a4576656e743c52756e74696d653e000600105375646f040094016c70616c6c65745f7375646f3a3a4576656e743c52756e74696d653e00070024436f6e74726163747304009c018070616c6c65745f636f6e7472616374733a3a4576656e743c52756e74696d653e000800184173736574730400a8017470616c6c65745f6173736574733a3a4576656e743c52756e74696d653e00090000540c306672616d655f73797374656d1870616c6c6574144576656e7404045400011c4045787472696e7369635375636365737304013464697370617463685f696e666f5801304469737061746368496e666f00000490416e2065787472696e73696320636f6d706c65746564207375636365737366756c6c792e3c45787472696e7369634661696c656408013864697370617463685f6572726f7264013444697370617463684572726f7200013464697370617463685f696e666f5801304469737061746368496e666f00010450416e2065787472696e736963206661696c65642e2c436f64655570646174656400020450603a636f6465602077617320757064617465642e284e65774163636f756e7404011c6163636f756e74000130543a3a4163636f756e7449640003046841206e6577206163636f756e742077617320637265617465642e344b696c6c65644163636f756e7404011c6163636f756e74000130543a3a4163636f756e74496400040458416e206163636f756e7420776173207265617065642e2052656d61726b656408011873656e646572000130543a3a4163636f756e7449640001106861736830011c543a3a48617368000504704f6e206f6e2d636861696e2072656d61726b2068617070656e65642e4455706772616465417574686f72697a6564080124636f64655f6861736830011c543a3a48617368000134636865636b5f76657273696f6e780110626f6f6c00060468416e20757067726164652077617320617574686f72697a65642e04704576656e7420666f72207468652053797374656d2070616c6c65742e580c346672616d655f737570706f7274206469737061746368304469737061746368496e666f00000c0118776569676874240118576569676874000114636c6173735c01344469737061746368436c617373000120706179735f6665656001105061797300005c0c346672616d655f737570706f7274206469737061746368344469737061746368436c61737300010c184e6f726d616c0000002c4f7065726174696f6e616c000100244d616e6461746f727900020000600c346672616d655f737570706f727420646973706174636810506179730001080c596573000000084e6f0001000064082873705f72756e74696d653444697370617463684572726f72000138144f746865720000003043616e6e6f744c6f6f6b7570000100244261644f726967696e000200184d6f64756c65040068012c4d6f64756c654572726f7200030044436f6e73756d657252656d61696e696e670004002c4e6f50726f76696465727300050040546f6f4d616e79436f6e73756d65727300060014546f6b656e04006c0128546f6b656e4572726f720007002841726974686d65746963040070013c41726974686d657469634572726f72000800345472616e73616374696f6e616c04007401485472616e73616374696f6e616c4572726f7200090024457868617573746564000a0028436f7272757074696f6e000b002c556e617661696c61626c65000c0038526f6f744e6f74416c6c6f776564000d000068082873705f72756e74696d652c4d6f64756c654572726f720000080114696e64657808010875380001146572726f7244018c5b75383b204d41585f4d4f44554c455f4552524f525f454e434f4445445f53495a455d00006c082873705f72756e74696d6528546f6b656e4572726f720001284046756e6473556e617661696c61626c65000000304f6e6c7950726f76696465720001003042656c6f774d696e696d756d0002003043616e6e6f7443726561746500030030556e6b6e6f776e41737365740004001846726f7a656e0005002c556e737570706f727465640006004043616e6e6f74437265617465486f6c64000700344e6f74457870656e6461626c650008001c426c6f636b65640009000070083473705f61726974686d657469633c41726974686d657469634572726f7200010c24556e646572666c6f77000000204f766572666c6f77000100384469766973696f6e42795a65726f0002000074082873705f72756e74696d65485472616e73616374696f6e616c4572726f72000108304c696d6974526561636865640000001c4e6f4c61796572000100007800000500007c0c3870616c6c65745f7574696c6974791870616c6c6574144576656e74000118404261746368496e746572727570746564080114696e64657810010c7533320001146572726f7264013444697370617463684572726f7200000855014261746368206f66206469737061746368657320646964206e6f7420636f6d706c6574652066756c6c792e20496e646578206f66206669727374206661696c696e6720646973706174636820676976656e2c2061734877656c6c20617320746865206572726f722e384261746368436f6d706c65746564000104c84261746368206f66206469737061746368657320636f6d706c657465642066756c6c792077697468206e6f206572726f722e604261746368436f6d706c65746564576974684572726f7273000204b44261746368206f66206469737061746368657320636f6d706c657465642062757420686173206572726f72732e344974656d436f6d706c657465640003041d01412073696e676c65206974656d2077697468696e2061204261746368206f6620646973706174636865732068617320636f6d706c657465642077697468206e6f206572726f722e284974656d4661696c65640401146572726f7264013444697370617463684572726f720004041101412073696e676c65206974656d2077697468696e2061204261746368206f6620646973706174636865732068617320636f6d706c657465642077697468206572726f722e30446973706174636865644173040118726573756c748001384469737061746368526573756c7400050458412063616c6c2077617320646973706174636865642e047c54686520604576656e746020656e756d206f6620746869732070616c6c6574800418526573756c740804540184044501640108084f6b040084000000000c4572720400640000010000840000040000880c3c70616c6c65745f62616c616e6365731870616c6c6574144576656e740804540004490001581c456e646f77656408011c6163636f756e74000130543a3a4163636f756e744964000130667265655f62616c616e6365180128543a3a42616c616e6365000004b8416e206163636f756e74207761732063726561746564207769746820736f6d6520667265652062616c616e63652e20447573744c6f737408011c6163636f756e74000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650001083d01416e206163636f756e74207761732072656d6f7665642077686f73652062616c616e636520776173206e6f6e2d7a65726f206275742062656c6f77204578697374656e7469616c4465706f7369742c78726573756c74696e6720696e20616e206f75747269676874206c6f73732e205472616e736665720c011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650002044c5472616e73666572207375636365656465642e2842616c616e636553657408010c77686f000130543a3a4163636f756e74496400011066726565180128543a3a42616c616e636500030468412062616c616e6365207761732073657420627920726f6f742e20526573657276656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000404e0536f6d652062616c616e63652077617320726573657276656420286d6f7665642066726f6d206672656520746f207265736572766564292e28556e726573657276656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000504e8536f6d652062616c616e63652077617320756e726573657276656420286d6f7665642066726f6d20726573657276656420746f2066726565292e4852657365727665526570617472696174656410011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500014864657374696e6174696f6e5f7374617475738c01185374617475730006084d01536f6d652062616c616e636520776173206d6f7665642066726f6d207468652072657365727665206f6620746865206669727374206163636f756e7420746f20746865207365636f6e64206163636f756e742ed846696e616c20617267756d656e7420696e64696361746573207468652064657374696e6174696f6e2062616c616e636520747970652e1c4465706f73697408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000704d8536f6d6520616d6f756e7420776173206465706f73697465642028652e672e20666f72207472616e73616374696f6e2066656573292e20576974686472617708010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650008041d01536f6d6520616d6f756e74207761732077697468647261776e2066726f6d20746865206163636f756e742028652e672e20666f72207472616e73616374696f6e2066656573292e1c536c617368656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650009040101536f6d6520616d6f756e74207761732072656d6f7665642066726f6d20746865206163636f756e742028652e672e20666f72206d69736265686176696f72292e184d696e74656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000a049c536f6d6520616d6f756e7420776173206d696e74656420696e746f20616e206163636f756e742e184275726e656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000b049c536f6d6520616d6f756e7420776173206275726e65642066726f6d20616e206163636f756e742e2453757370656e64656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000c041501536f6d6520616d6f756e74207761732073757370656e6465642066726f6d20616e206163636f756e74202869742063616e20626520726573746f726564206c61746572292e20526573746f72656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e6365000d04a4536f6d6520616d6f756e742077617320726573746f72656420696e746f20616e206163636f756e742e20557067726164656404010c77686f000130543a3a4163636f756e744964000e0460416e206163636f756e74207761732075706772616465642e18497373756564040118616d6f756e74180128543a3a42616c616e6365000f042d01546f74616c2069737375616e63652077617320696e637265617365642062792060616d6f756e74602c206372656174696e6720612063726564697420746f2062652062616c616e6365642e2452657363696e646564040118616d6f756e74180128543a3a42616c616e63650010042501546f74616c2069737375616e636520776173206465637265617365642062792060616d6f756e74602c206372656174696e672061206465627420746f2062652062616c616e6365642e184c6f636b656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500110460536f6d652062616c616e636520776173206c6f636b65642e20556e6c6f636b656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500120468536f6d652062616c616e63652077617320756e6c6f636b65642e1846726f7a656e08010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500130460536f6d652062616c616e6365207761732066726f7a656e2e1854686177656408010c77686f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500140460536f6d652062616c616e636520776173207468617765642e4c546f74616c49737375616e6365466f7263656408010c6f6c64180128543a3a42616c616e636500010c6e6577180128543a3a42616c616e6365001504ac5468652060546f74616c49737375616e6365602077617320666f72636566756c6c79206368616e6765642e047c54686520604576656e746020656e756d206f6620746869732070616c6c65748c14346672616d655f737570706f72741874726169747318746f6b656e73106d6973633442616c616e6365537461747573000108104672656500000020526573657276656400010000900c6870616c6c65745f7472616e73616374696f6e5f7061796d656e741870616c6c6574144576656e74040454000104485472616e73616374696f6e466565506169640c010c77686f000130543a3a4163636f756e74496400012861637475616c5f66656518013042616c616e63654f663c543e00010c74697018013042616c616e63654f663c543e000008590141207472616e73616374696f6e20666565206061637475616c5f666565602c206f662077686963682060746970602077617320616464656420746f20746865206d696e696d756d20696e636c7573696f6e206665652c5c686173206265656e2070616964206279206077686f602e047c54686520604576656e746020656e756d206f6620746869732070616c6c6574940c2c70616c6c65745f7375646f1870616c6c6574144576656e7404045400011014537564696404012c7375646f5f726573756c748001384469737061746368526573756c7404b454686520726573756c74206f66207468652063616c6c206d61646520627920746865207375646f20757365722e00047041207375646f2063616c6c206a75737420746f6f6b20706c6163652e284b65794368616e67656408010c6f6c649801504f7074696f6e3c543a3a4163636f756e7449643e04b4546865206f6c64207375646f206b657920286966206f6e65207761732070726576696f75736c7920736574292e010c6e6577000130543a3a4163636f756e7449640488546865206e6577207375646f206b657920286966206f6e652077617320736574292e010478546865207375646f206b657920686173206265656e20757064617465642e284b657952656d6f76656400020480546865206b657920776173207065726d616e656e746c792072656d6f7665642e285375646f4173446f6e6504012c7375646f5f726573756c748001384469737061746368526573756c7404b454686520726573756c74206f66207468652063616c6c206d61646520627920746865207375646f20757365722e0304c841205b7375646f5f61735d2850616c6c65743a3a7375646f5f6173292063616c6c206a75737420746f6f6b20706c6163652e047c54686520604576656e746020656e756d206f6620746869732070616c6c65749804184f7074696f6e04045401000108104e6f6e6500000010536f6d6504000000000100009c0c4070616c6c65745f636f6e7472616374731870616c6c6574144576656e7404045400012830496e7374616e7469617465640801206465706c6f796572000130543a3a4163636f756e744964000120636f6e7472616374000130543a3a4163636f756e744964000004d8436f6e7472616374206465706c6f7965642062792061646472657373206174207468652073706563696669656420616464726573732e285465726d696e61746564080120636f6e7472616374000130543a3a4163636f756e744964048454686520636f6e7472616374207468617420776173207465726d696e617465642e012c62656e6566696369617279000130543a3a4163636f756e74496404e4546865206163636f756e7420746861742072656365697665642074686520636f6e7472616374732072656d61696e696e672062616c616e6365011868436f6e747261637420686173206265656e2072656d6f7665642e001823204e6f7465003d01546865206f6e6c792077617920666f72206120636f6e747261637420746f2062652072656d6f76656420616e6420656d697474696e672074686973206576656e742069732062792063616c6c696e6744607365616c5f7465726d696e617465602e28436f646553746f7265640c0124636f64655f6861736830011c543a3a486173680001306465706f7369745f68656c6418013042616c616e63654f663c543e00012075706c6f61646572000130543a3a4163636f756e744964000204b4436f646520776974682074686520737065636966696564206861736820686173206265656e2073746f7265642e3c436f6e7472616374456d6974746564080120636f6e7472616374000130543a3a4163636f756e744964049054686520636f6e7472616374207468617420656d697474656420746865206576656e742e01106461746134011c5665633c75383e0835014461746120737570706c6965642062792074686520636f6e74726163742e204d657461646174612067656e65726174656420647572696e6720636f6e747261637420636f6d70696c6174696f6e5c6973206e656564656420746f206465636f64652069742e03049c4120637573746f6d206576656e7420656d69747465642062792074686520636f6e74726163742e2c436f646552656d6f7665640c0124636f64655f6861736830011c543a3a486173680001406465706f7369745f72656c656173656418013042616c616e63654f663c543e00011c72656d6f766572000130543a3a4163636f756e744964000404ac4120636f6465207769746820746865207370656369666965642068617368207761732072656d6f7665642e4c436f6e7472616374436f6465557064617465640c0120636f6e7472616374000130543a3a4163636f756e744964048c54686520636f6e7472616374207468617420686173206265656e20757064617465642e01346e65775f636f64655f6861736830011c543a3a4861736804b04e657720636f646520686173682074686174207761732073657420666f722074686520636f6e74726163742e01346f6c645f636f64655f6861736830011c543a3a48617368048c50726576696f757320636f64652068617368206f662074686520636f6e74726163742e0504784120636f6e7472616374277320636f64652077617320757064617465642e1843616c6c656408011863616c6c6572a001244f726967696e3c543e04745468652063616c6c6572206f66207468652060636f6e7472616374602e0120636f6e7472616374000130543a3a4163636f756e744964047454686520636f6e74726163742074686174207761732063616c6c65642e061c11014120636f6e7472616374207761732063616c6c656420656974686572206279206120706c61696e206163636f756e74206f7220616e6f7468657220636f6e74726163742e001823204e6f7465003101506c65617365206b65657020696e206d696e642074686174206c696b6520616c6c206576656e74732074686973206973206f6e6c7920656d697474656420666f72207375636365737366756c290163616c6c732e20546869732069732062656361757365206f6e206661696c75726520616c6c2073746f72616765206368616e67657320696e636c7564696e67206576656e74732061726530726f6c6c6564206261636b2e3844656c656761746543616c6c6564080120636f6e7472616374000130543a3a4163636f756e74496408210154686520636f6e7472616374207468617420706572666f726d6564207468652064656c65676174652063616c6c20616e642068656e636520696e2077686f736520636f6e74657874707468652060636f64655f68617368602069732065786563757465642e0124636f64655f6861736830012c436f6465486173683c543e049c54686520636f646520686173682074686174207761732064656c65676174652063616c6c65642e071c9c4120636f6e74726163742064656c65676174652063616c6c6564206120636f646520686173682e001823204e6f7465003101506c65617365206b65657020696e206d696e642074686174206c696b6520616c6c206576656e74732074686973206973206f6e6c7920656d697474656420666f72207375636365737366756c290163616c6c732e20546869732069732062656361757365206f6e206661696c75726520616c6c2073746f72616765206368616e67657320696e636c7564696e67206576656e74732061726530726f6c6c6564206261636b2e8053746f726167654465706f7369745472616e73666572726564416e6448656c640c011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e7418013042616c616e63654f663c543e000804f4536f6d652066756e64732068617665206265656e207472616e7366657272656420616e642068656c642061732073746f72616765206465706f7369742e9053746f726167654465706f7369745472616e73666572726564416e6452656c65617365640c011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e7418013042616c616e63654f663c543e000904f8536f6d652073746f72616765206465706f7369742066756e64732068617665206265656e207472616e7366657272656420616e642072656c65617365642e047c54686520604576656e746020656e756d206f6620746869732070616c6c6574a0084070616c6c65745f636f6e747261637473184f726967696e04045401a4010810526f6f74000000185369676e65640400000130543a3a4163636f756e74496400010000a40858636f6e7472616374735f6e6f64655f72756e74696d651c52756e74696d6500000000a80c3470616c6c65745f6173736574731870616c6c6574144576656e740804540004490001601c437265617465640c012061737365745f6964100128543a3a4173736574496400011c63726561746f72000130543a3a4163636f756e7449640001146f776e6572000130543a3a4163636f756e74496400000474536f6d6520617373657420636c6173732077617320637265617465642e184973737565640c012061737365745f6964100128543a3a417373657449640001146f776e6572000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500010460536f6d65206173736574732077657265206973737565642e2c5472616e7366657272656410012061737365745f6964100128543a3a4173736574496400011066726f6d000130543a3a4163636f756e744964000108746f000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e636500020474536f6d65206173736574732077657265207472616e736665727265642e184275726e65640c012061737365745f6964100128543a3a417373657449640001146f776e6572000130543a3a4163636f756e74496400011c62616c616e6365180128543a3a42616c616e63650003046c536f6d652061737365747320776572652064657374726f7965642e2c5465616d4368616e67656410012061737365745f6964100128543a3a41737365744964000118697373756572000130543a3a4163636f756e74496400011461646d696e000130543a3a4163636f756e74496400011c667265657a6572000130543a3a4163636f756e74496400040470546865206d616e6167656d656e74207465616d206368616e6765642e304f776e65724368616e67656408012061737365745f6964100128543a3a417373657449640001146f776e6572000130543a3a4163636f756e74496400050448546865206f776e6572206368616e6765642e1846726f7a656e08012061737365745f6964100128543a3a4173736574496400010c77686f000130543a3a4163636f756e74496400060478536f6d65206163636f756e74206077686f60207761732066726f7a656e2e1854686177656408012061737365745f6964100128543a3a4173736574496400010c77686f000130543a3a4163636f756e74496400070478536f6d65206163636f756e74206077686f6020776173207468617765642e2c417373657446726f7a656e04012061737365745f6964100128543a3a4173736574496400080484536f6d65206173736574206061737365745f696460207761732066726f7a656e2e2c417373657454686177656404012061737365745f6964100128543a3a4173736574496400090484536f6d65206173736574206061737365745f69646020776173207468617765642e444163636f756e747344657374726f7965640c012061737365745f6964100128543a3a417373657449640001486163636f756e74735f64657374726f79656410010c7533320001486163636f756e74735f72656d61696e696e6710010c753332000a04a04163636f756e747320776572652064657374726f79656420666f7220676976656e2061737365742e48417070726f76616c7344657374726f7965640c012061737365745f6964100128543a3a4173736574496400014c617070726f76616c735f64657374726f79656410010c75333200014c617070726f76616c735f72656d61696e696e6710010c753332000b04a4417070726f76616c7320776572652064657374726f79656420666f7220676976656e2061737365742e484465737472756374696f6e5374617274656404012061737365745f6964100128543a3a41737365744964000c04d0416e20617373657420636c61737320697320696e207468652070726f63657373206f66206265696e672064657374726f7965642e2444657374726f79656404012061737365745f6964100128543a3a41737365744964000d0474416e20617373657420636c617373207761732064657374726f7965642e30466f7263654372656174656408012061737365745f6964100128543a3a417373657449640001146f776e6572000130543a3a4163636f756e744964000e048c536f6d6520617373657420636c6173732077617320666f7263652d637265617465642e2c4d6574616461746153657414012061737365745f6964100128543a3a417373657449640001106e616d6534011c5665633c75383e00011873796d626f6c34011c5665633c75383e000120646563696d616c73080108753800012469735f66726f7a656e780110626f6f6c000f049c4e6577206d6574616461746120686173206265656e2073657420666f7220616e2061737365742e3c4d65746164617461436c656172656404012061737365745f6964100128543a3a417373657449640010049c4d6574616461746120686173206265656e20636c656172656420666f7220616e2061737365742e40417070726f7665645472616e7366657210012061737365745f6964100128543a3a41737365744964000118736f75726365000130543a3a4163636f756e74496400012064656c6567617465000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650011043101284164646974696f6e616c292066756e64732068617665206265656e20617070726f76656420666f72207472616e7366657220746f20612064657374696e6174696f6e206163636f756e742e44417070726f76616c43616e63656c6c65640c012061737365745f6964100128543a3a417373657449640001146f776e6572000130543a3a4163636f756e74496400012064656c6567617465000130543a3a4163636f756e744964001204f0416e20617070726f76616c20666f72206163636f756e74206064656c656761746560207761732063616e63656c6c656420627920606f776e6572602e4c5472616e73666572726564417070726f76656414012061737365745f6964100128543a3a417373657449640001146f776e6572000130543a3a4163636f756e74496400012064656c6567617465000130543a3a4163636f756e74496400012c64657374696e6174696f6e000130543a3a4163636f756e744964000118616d6f756e74180128543a3a42616c616e63650013083101416e2060616d6f756e746020776173207472616e7366657272656420696e2069747320656e7469726574792066726f6d20606f776e65726020746f206064657374696e6174696f6e602062796074686520617070726f766564206064656c6567617465602e4841737365745374617475734368616e67656404012061737365745f6964100128543a3a41737365744964001404f8416e2061737365742068617320686164206974732061747472696275746573206368616e676564206279207468652060466f72636560206f726967696e2e5841737365744d696e42616c616e63654368616e67656408012061737365745f6964100128543a3a4173736574496400013c6e65775f6d696e5f62616c616e6365180128543a3a42616c616e63650015040101546865206d696e5f62616c616e6365206f6620616e20617373657420686173206265656e207570646174656420627920746865206173736574206f776e65722e1c546f75636865640c012061737365745f6964100128543a3a4173736574496400010c77686f000130543a3a4163636f756e7449640001246465706f7369746f72000130543a3a4163636f756e744964001604fc536f6d65206163636f756e74206077686f6020776173206372656174656420776974682061206465706f7369742066726f6d20606465706f7369746f72602e1c426c6f636b656408012061737365745f6964100128543a3a4173736574496400010c77686f000130543a3a4163636f756e7449640017047c536f6d65206163636f756e74206077686f602077617320626c6f636b65642e047c54686520604576656e746020656e756d206f6620746869732070616c6c6574ac08306672616d655f73797374656d14506861736500010c384170706c7945787472696e736963040010010c7533320000003046696e616c697a6174696f6e00010038496e697469616c697a6174696f6e00020000b00000023000b4000002b800b800000408101000bc08306672616d655f73797374656d584c61737452756e74696d6555706772616465496e666f0000080130737065635f76657273696f6ec0014c636f6465633a3a436f6d706163743c7533323e000124737065635f6e616d65c4016473705f72756e74696d653a3a52756e74696d65537472696e670000c00000061000c40000050200c808306672616d655f73797374656d60436f646555706772616465417574686f72697a6174696f6e0404540000080124636f64655f6861736830011c543a3a48617368000134636865636b5f76657273696f6e780110626f6f6c0000cc0c306672616d655f73797374656d1870616c6c65741043616c6c04045400012c1872656d61726b04011872656d61726b34011c5665633c75383e0000045c536565205b6050616c6c65743a3a72656d61726b605d2e387365745f686561705f706167657304011470616765732c010c7536340001047c536565205b6050616c6c65743a3a7365745f686561705f7061676573605d2e207365745f636f6465040110636f646534011c5665633c75383e00020464536565205b6050616c6c65743a3a7365745f636f6465605d2e5c7365745f636f64655f776974686f75745f636865636b73040110636f646534011c5665633c75383e000304a0536565205b6050616c6c65743a3a7365745f636f64655f776974686f75745f636865636b73605d2e2c7365745f73746f726167650401146974656d73d001345665633c4b657956616c75653e00040470536565205b6050616c6c65743a3a7365745f73746f72616765605d2e306b696c6c5f73746f726167650401106b657973d801205665633c4b65793e00050474536565205b6050616c6c65743a3a6b696c6c5f73746f72616765605d2e2c6b696c6c5f70726566697808011870726566697834010c4b657900011c7375626b65797310010c75333200060470536565205b6050616c6c65743a3a6b696c6c5f707265666978605d2e4472656d61726b5f776974685f6576656e7404011872656d61726b34011c5665633c75383e00070488536565205b6050616c6c65743a3a72656d61726b5f776974685f6576656e74605d2e44617574686f72697a655f75706772616465040124636f64655f6861736830011c543a3a4861736800090488536565205b6050616c6c65743a3a617574686f72697a655f75706772616465605d2e80617574686f72697a655f757067726164655f776974686f75745f636865636b73040124636f64655f6861736830011c543a3a48617368000a04c4536565205b6050616c6c65743a3a617574686f72697a655f757067726164655f776974686f75745f636865636b73605d2e606170706c795f617574686f72697a65645f75706772616465040110636f646534011c5665633c75383e000b04a4536565205b6050616c6c65743a3a6170706c795f617574686f72697a65645f75706772616465605d2e040d01436f6e7461696e7320612076617269616e742070657220646973706174636861626c652065787472696e736963207468617420746869732070616c6c6574206861732ed0000002d400d400000408343400d80000023400dc0c306672616d655f73797374656d186c696d69747330426c6f636b5765696768747300000c0128626173655f626c6f636b2401185765696768740001246d61785f626c6f636b2401185765696768740001247065725f636c617373e001845065724469737061746368436c6173733c57656967687473506572436c6173733e0000e00c346672616d655f737570706f7274206469737061746368405065724469737061746368436c61737304045401e4000c01186e6f726d616ce401045400012c6f7065726174696f6e616ce40104540001246d616e6461746f7279e40104540000e40c306672616d655f73797374656d186c696d6974733c57656967687473506572436c6173730000100138626173655f65787472696e7369632401185765696768740001346d61785f65787472696e736963e801384f7074696f6e3c5765696768743e0001246d61785f746f74616ce801384f7074696f6e3c5765696768743e0001207265736572766564e801384f7074696f6e3c5765696768743e0000e804184f7074696f6e04045401240108104e6f6e6500000010536f6d650400240000010000ec0c306672616d655f73797374656d186c696d6974732c426c6f636b4c656e677468000004010c6d6178f001545065724469737061746368436c6173733c7533323e0000f00c346672616d655f737570706f7274206469737061746368405065724469737061746368436c6173730404540110000c01186e6f726d616c1001045400012c6f7065726174696f6e616c100104540001246d616e6461746f7279100104540000f4082873705f776569676874733c52756e74696d6544625765696768740000080110726561642c010c75363400011477726974652c010c7536340000f8082873705f76657273696f6e3852756e74696d6556657273696f6e0000200124737065635f6e616d65c4013452756e74696d65537472696e67000124696d706c5f6e616d65c4013452756e74696d65537472696e67000144617574686f72696e675f76657273696f6e10010c753332000130737065635f76657273696f6e10010c753332000130696d706c5f76657273696f6e10010c75333200011061706973fc011c4170697356656300014c7472616e73616374696f6e5f76657273696f6e10010c75333200013473746174655f76657273696f6e08010875380000fc040c436f77040454010101000400010100000001010000020501000501000004080901100009010000030800000008000d01000005040011010c306672616d655f73797374656d1870616c6c6574144572726f720404540001203c496e76616c6964537065634e616d650000081101546865206e616d65206f662073706563696669636174696f6e20646f6573206e6f74206d61746368206265747765656e207468652063757272656e742072756e74696d6550616e6420746865206e65772072756e74696d652e685370656356657273696f6e4e65656473546f496e63726561736500010841015468652073706563696669636174696f6e2076657273696f6e206973206e6f7420616c6c6f77656420746f206465637265617365206265747765656e207468652063757272656e742072756e74696d6550616e6420746865206e65772072756e74696d652e744661696c6564546f4578747261637452756e74696d6556657273696f6e00020cec4661696c656420746f2065787472616374207468652072756e74696d652076657273696f6e2066726f6d20746865206e65772072756e74696d652e0009014569746865722063616c6c696e672060436f72655f76657273696f6e60206f72206465636f64696e67206052756e74696d6556657273696f6e60206661696c65642e4c4e6f6e44656661756c74436f6d706f73697465000304fc537569636964652063616c6c6564207768656e20746865206163636f756e7420686173206e6f6e2d64656661756c7420636f6d706f7369746520646174612e3c4e6f6e5a65726f526566436f756e74000404350154686572652069732061206e6f6e2d7a65726f207265666572656e636520636f756e742070726576656e74696e6720746865206163636f756e742066726f6d206265696e67207075726765642e3043616c6c46696c7465726564000504d0546865206f726967696e2066696c7465722070726576656e74207468652063616c6c20746f20626520646973706174636865642e444e6f7468696e67417574686f72697a6564000604584e6f207570677261646520617574686f72697a65642e30556e617574686f72697a656400070494546865207375626d697474656420636f6465206973206e6f7420617574686f72697a65642e046c4572726f7220666f72207468652053797374656d2070616c6c657415010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e6465645665630804540130045300000400b001185665633c543e000019010c3870616c6c65745f7574696c6974791870616c6c65741043616c6c04045400011814626174636804011463616c6c731d01017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00000458536565205b6050616c6c65743a3a6261746368605d2e3461735f64657269766174697665080114696e6465780d01010c75313600011063616c6c2101017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00010478536565205b6050616c6c65743a3a61735f64657269766174697665605d2e2462617463685f616c6c04011463616c6c731d01017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00020468536565205b6050616c6c65743a3a62617463685f616c6c605d2e2c64697370617463685f617308012461735f6f726967696e59010154426f783c543a3a50616c6c6574734f726967696e3e00011063616c6c2101017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00030470536565205b6050616c6c65743a3a64697370617463685f6173605d2e2c666f7263655f626174636804011463616c6c731d01017c5665633c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00040470536565205b6050616c6c65743a3a666f7263655f6261746368605d2e2c776974685f77656967687408011063616c6c2101017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00011877656967687424011857656967687400050470536565205b6050616c6c65743a3a776974685f776569676874605d2e040d01436f6e7461696e7320612076617269616e742070657220646973706174636861626c652065787472696e736963207468617420746869732070616c6c6574206861732e1d0100000221010021010858636f6e7472616374735f6e6f64655f72756e74696d652c52756e74696d6543616c6c00011c1853797374656d0400cc01ad0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c53797374656d2c2052756e74696d653e0000001c5574696c6974790400190101b10173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5574696c6974792c2052756e74696d653e0002002454696d657374616d700400250101b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c54696d657374616d702c2052756e74696d653e0003002042616c616e6365730400290101b50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c42616c616e6365732c2052756e74696d653e000400105375646f0400450101a50173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c5375646f2c2052756e74696d653e00070024436f6e7472616374730400490101b90173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c436f6e7472616374732c2052756e74696d653e000800184173736574730400550101ad0173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a64697370617463680a3a3a43616c6c61626c6543616c6c466f723c4173736574732c2052756e74696d653e0009000025010c4070616c6c65745f74696d657374616d701870616c6c65741043616c6c0404540001040c73657404010c6e6f77280124543a3a4d6f6d656e7400000450536565205b6050616c6c65743a3a736574605d2e040d01436f6e7461696e7320612076617269616e742070657220646973706174636861626c652065787472696e736963207468617420746869732070616c6c6574206861732e29010c3c70616c6c65745f62616c616e6365731870616c6c65741043616c6c080454000449000120507472616e736665725f616c6c6f775f6465617468080110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e00011476616c756539010128543a3a42616c616e636500000494536565205b6050616c6c65743a3a7472616e736665725f616c6c6f775f6465617468605d2e38666f7263655f7472616e736665720c0118736f757263652d0101504163636f756e7449644c6f6f6b75704f663c543e000110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e00011476616c756539010128543a3a42616c616e63650002047c536565205b6050616c6c65743a3a666f7263655f7472616e73666572605d2e4c7472616e736665725f6b6565705f616c697665080110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e00011476616c756539010128543a3a42616c616e636500030490536565205b6050616c6c65743a3a7472616e736665725f6b6565705f616c697665605d2e307472616e736665725f616c6c080110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e0001286b6565705f616c697665780110626f6f6c00040474536565205b6050616c6c65743a3a7472616e736665725f616c6c605d2e3c666f7263655f756e7265736572766508010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e74180128543a3a42616c616e636500050480536565205b6050616c6c65743a3a666f7263655f756e72657365727665605d2e40757067726164655f6163636f756e747304010c77686f3d0101445665633c543a3a4163636f756e7449643e00060484536565205b6050616c6c65743a3a757067726164655f6163636f756e7473605d2e44666f7263655f7365745f62616c616e636508010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e0001206e65775f6672656539010128543a3a42616c616e636500080488536565205b6050616c6c65743a3a666f7263655f7365745f62616c616e6365605d2e6c666f7263655f61646a7573745f746f74616c5f69737375616e6365080124646972656374696f6e4101014c41646a7573746d656e74446972656374696f6e00011464656c746139010128543a3a42616c616e6365000904b0536565205b6050616c6c65743a3a666f7263655f61646a7573745f746f74616c5f69737375616e6365605d2e040d01436f6e7461696e7320612076617269616e742070657220646973706174636861626c652065787472696e736963207468617420746869732070616c6c6574206861732e2d010c2873705f72756e74696d65306d756c746961646472657373304d756c74694164647265737308244163636f756e7449640100304163636f756e74496e6465780184011408496404000001244163636f756e74496400000014496e6465780400310101304163636f756e74496e6465780001000c526177040034011c5665633c75383e0002002441646472657373333204000401205b75383b2033325d000300244164647265737332300400350101205b75383b2032305d00040000310100000684003501000003140000000800390100000618003d01000002000041010c3c70616c6c65745f62616c616e6365731474797065734c41646a7573746d656e74446972656374696f6e00010820496e6372656173650000002044656372656173650001000045010c2c70616c6c65745f7375646f1870616c6c65741043616c6c040454000114107375646f04011063616c6c2101017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00000454536565205b6050616c6c65743a3a7375646f605d2e547375646f5f756e636865636b65645f77656967687408011063616c6c2101017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00011877656967687424011857656967687400010498536565205b6050616c6c65743a3a7375646f5f756e636865636b65645f776569676874605d2e1c7365745f6b657904010c6e65772d0101504163636f756e7449644c6f6f6b75704f663c543e00020460536565205b6050616c6c65743a3a7365745f6b6579605d2e1c7375646f5f617308010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e00011063616c6c2101017c426f783c3c5420617320436f6e6669673e3a3a52756e74696d6543616c6c3e00030460536565205b6050616c6c65743a3a7375646f5f6173605d2e2872656d6f76655f6b65790004046c536565205b6050616c6c65743a3a72656d6f76655f6b6579605d2e040d01436f6e7461696e7320612076617269616e742070657220646973706174636861626c652065787472696e736963207468617420746869732070616c6c6574206861732e49010c4070616c6c65745f636f6e7472616374731870616c6c65741043616c6c0404540001283c63616c6c5f6f6c645f776569676874140110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e00011476616c75653901013042616c616e63654f663c543e0001246761735f6c696d69742801244f6c6457656967687400015473746f726167655f6465706f7369745f6c696d69744d0101c44f7074696f6e3c3c42616c616e63654f663c543e20617320636f6465633a3a486173436f6d706163743e3a3a547970653e0001106461746134011c5665633c75383e00000480536565205b6050616c6c65743a3a63616c6c5f6f6c645f776569676874605d2e80696e7374616e74696174655f776974685f636f64655f6f6c645f77656967687418011476616c75653901013042616c616e63654f663c543e0001246761735f6c696d69742801244f6c6457656967687400015473746f726167655f6465706f7369745f6c696d69744d0101c44f7074696f6e3c3c42616c616e63654f663c543e20617320636f6465633a3a486173436f6d706163743e3a3a547970653e000110636f646534011c5665633c75383e0001106461746134011c5665633c75383e00011073616c7434011c5665633c75383e000104c4536565205b6050616c6c65743a3a696e7374616e74696174655f776974685f636f64655f6f6c645f776569676874605d2e58696e7374616e74696174655f6f6c645f77656967687418011476616c75653901013042616c616e63654f663c543e0001246761735f6c696d69742801244f6c6457656967687400015473746f726167655f6465706f7369745f6c696d69744d0101c44f7074696f6e3c3c42616c616e63654f663c543e20617320636f6465633a3a486173436f6d706163743e3a3a547970653e000124636f64655f6861736830012c436f6465486173683c543e0001106461746134011c5665633c75383e00011073616c7434011c5665633c75383e0002049c536565205b6050616c6c65743a3a696e7374616e74696174655f6f6c645f776569676874605d2e2c75706c6f61645f636f64650c0110636f646534011c5665633c75383e00015473746f726167655f6465706f7369745f6c696d69744d0101c44f7074696f6e3c3c42616c616e63654f663c543e20617320636f6465633a3a486173436f6d706163743e3a3a547970653e00012c64657465726d696e69736d5101012c44657465726d696e69736d00030470536565205b6050616c6c65743a3a75706c6f61645f636f6465605d2e2c72656d6f76655f636f6465040124636f64655f6861736830012c436f6465486173683c543e00040470536565205b6050616c6c65743a3a72656d6f76655f636f6465605d2e207365745f636f6465080110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e000124636f64655f6861736830012c436f6465486173683c543e00050464536565205b6050616c6c65743a3a7365745f636f6465605d2e1063616c6c140110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e00011476616c75653901013042616c616e63654f663c543e0001246761735f6c696d697424011857656967687400015473746f726167655f6465706f7369745f6c696d69744d0101c44f7074696f6e3c3c42616c616e63654f663c543e20617320636f6465633a3a486173436f6d706163743e3a3a547970653e0001106461746134011c5665633c75383e00060454536565205b6050616c6c65743a3a63616c6c605d2e54696e7374616e74696174655f776974685f636f646518011476616c75653901013042616c616e63654f663c543e0001246761735f6c696d697424011857656967687400015473746f726167655f6465706f7369745f6c696d69744d0101c44f7074696f6e3c3c42616c616e63654f663c543e20617320636f6465633a3a486173436f6d706163743e3a3a547970653e000110636f646534011c5665633c75383e0001106461746134011c5665633c75383e00011073616c7434011c5665633c75383e00070498536565205b6050616c6c65743a3a696e7374616e74696174655f776974685f636f6465605d2e2c696e7374616e746961746518011476616c75653901013042616c616e63654f663c543e0001246761735f6c696d697424011857656967687400015473746f726167655f6465706f7369745f6c696d69744d0101c44f7074696f6e3c3c42616c616e63654f663c543e20617320636f6465633a3a486173436f6d706163743e3a3a547970653e000124636f64655f6861736830012c436f6465486173683c543e0001106461746134011c5665633c75383e00011073616c7434011c5665633c75383e00080470536565205b6050616c6c65743a3a696e7374616e7469617465605d2e1c6d6967726174650401307765696768745f6c696d697424011857656967687400090460536565205b6050616c6c65743a3a6d696772617465605d2e040d01436f6e7461696e7320612076617269616e742070657220646973706174636861626c652065787472696e736963207468617420746869732070616c6c6574206861732e4d0104184f7074696f6e0404540139010108104e6f6e6500000010536f6d6504003901000001000051010c4070616c6c65745f636f6e747261637473107761736d2c44657465726d696e69736d00010820456e666f726365640000001c52656c617865640001000055010c3470616c6c65745f6173736574731870616c6c65741043616c6c080454000449000180186372656174650c01086964c0014c543a3a41737365744964506172616d6574657200011461646d696e2d0101504163636f756e7449644c6f6f6b75704f663c543e00012c6d696e5f62616c616e6365180128543a3a42616c616e63650000045c536565205b6050616c6c65743a3a637265617465605d2e30666f7263655f6372656174651001086964c0014c543a3a41737365744964506172616d657465720001146f776e65722d0101504163636f756e7449644c6f6f6b75704f663c543e00013469735f73756666696369656e74780110626f6f6c00012c6d696e5f62616c616e636539010128543a3a42616c616e636500010474536565205b6050616c6c65743a3a666f7263655f637265617465605d2e3473746172745f64657374726f790401086964c0014c543a3a41737365744964506172616d6574657200020478536565205b6050616c6c65743a3a73746172745f64657374726f79605d2e4064657374726f795f6163636f756e74730401086964c0014c543a3a41737365744964506172616d6574657200030484536565205b6050616c6c65743a3a64657374726f795f6163636f756e7473605d2e4464657374726f795f617070726f76616c730401086964c0014c543a3a41737365744964506172616d6574657200040488536565205b6050616c6c65743a3a64657374726f795f617070726f76616c73605d2e3866696e6973685f64657374726f790401086964c0014c543a3a41737365744964506172616d657465720005047c536565205b6050616c6c65743a3a66696e6973685f64657374726f79605d2e106d696e740c01086964c0014c543a3a41737365744964506172616d6574657200012c62656e65666963696172792d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e7439010128543a3a42616c616e636500060454536565205b6050616c6c65743a3a6d696e74605d2e106275726e0c01086964c0014c543a3a41737365744964506172616d6574657200010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e7439010128543a3a42616c616e636500070454536565205b6050616c6c65743a3a6275726e605d2e207472616e736665720c01086964c0014c543a3a41737365744964506172616d657465720001187461726765742d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e7439010128543a3a42616c616e636500080464536565205b6050616c6c65743a3a7472616e73666572605d2e4c7472616e736665725f6b6565705f616c6976650c01086964c0014c543a3a41737365744964506172616d657465720001187461726765742d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e7439010128543a3a42616c616e636500090490536565205b6050616c6c65743a3a7472616e736665725f6b6565705f616c697665605d2e38666f7263655f7472616e736665721001086964c0014c543a3a41737365744964506172616d65746572000118736f757263652d0101504163636f756e7449644c6f6f6b75704f663c543e000110646573742d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e7439010128543a3a42616c616e6365000a047c536565205b6050616c6c65743a3a666f7263655f7472616e73666572605d2e18667265657a650801086964c0014c543a3a41737365744964506172616d6574657200010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e000b045c536565205b6050616c6c65743a3a667265657a65605d2e10746861770801086964c0014c543a3a41737365744964506172616d6574657200010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e000c0454536565205b6050616c6c65743a3a74686177605d2e30667265657a655f61737365740401086964c0014c543a3a41737365744964506172616d65746572000d0474536565205b6050616c6c65743a3a667265657a655f6173736574605d2e28746861775f61737365740401086964c0014c543a3a41737365744964506172616d65746572000e046c536565205b6050616c6c65743a3a746861775f6173736574605d2e487472616e736665725f6f776e6572736869700801086964c0014c543a3a41737365744964506172616d657465720001146f776e65722d0101504163636f756e7449644c6f6f6b75704f663c543e000f048c536565205b6050616c6c65743a3a7472616e736665725f6f776e657273686970605d2e207365745f7465616d1001086964c0014c543a3a41737365744964506172616d657465720001186973737565722d0101504163636f756e7449644c6f6f6b75704f663c543e00011461646d696e2d0101504163636f756e7449644c6f6f6b75704f663c543e00011c667265657a65722d0101504163636f756e7449644c6f6f6b75704f663c543e00100464536565205b6050616c6c65743a3a7365745f7465616d605d2e307365745f6d657461646174611001086964c0014c543a3a41737365744964506172616d657465720001106e616d6534011c5665633c75383e00011873796d626f6c34011c5665633c75383e000120646563696d616c73080108753800110474536565205b6050616c6c65743a3a7365745f6d65746164617461605d2e38636c6561725f6d657461646174610401086964c0014c543a3a41737365744964506172616d657465720012047c536565205b6050616c6c65743a3a636c6561725f6d65746164617461605d2e48666f7263655f7365745f6d657461646174611401086964c0014c543a3a41737365744964506172616d657465720001106e616d6534011c5665633c75383e00011873796d626f6c34011c5665633c75383e000120646563696d616c73080108753800012469735f66726f7a656e780110626f6f6c0013048c536565205b6050616c6c65743a3a666f7263655f7365745f6d65746164617461605d2e50666f7263655f636c6561725f6d657461646174610401086964c0014c543a3a41737365744964506172616d6574657200140494536565205b6050616c6c65743a3a666f7263655f636c6561725f6d65746164617461605d2e48666f7263655f61737365745f7374617475732001086964c0014c543a3a41737365744964506172616d657465720001146f776e65722d0101504163636f756e7449644c6f6f6b75704f663c543e0001186973737565722d0101504163636f756e7449644c6f6f6b75704f663c543e00011461646d696e2d0101504163636f756e7449644c6f6f6b75704f663c543e00011c667265657a65722d0101504163636f756e7449644c6f6f6b75704f663c543e00012c6d696e5f62616c616e636539010128543a3a42616c616e636500013469735f73756666696369656e74780110626f6f6c00012469735f66726f7a656e780110626f6f6c0015048c536565205b6050616c6c65743a3a666f7263655f61737365745f737461747573605d2e40617070726f76655f7472616e736665720c01086964c0014c543a3a41737365744964506172616d6574657200012064656c65676174652d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e7439010128543a3a42616c616e636500160484536565205b6050616c6c65743a3a617070726f76655f7472616e73666572605d2e3c63616e63656c5f617070726f76616c0801086964c0014c543a3a41737365744964506172616d6574657200012064656c65676174652d0101504163636f756e7449644c6f6f6b75704f663c543e00170480536565205b6050616c6c65743a3a63616e63656c5f617070726f76616c605d2e54666f7263655f63616e63656c5f617070726f76616c0c01086964c0014c543a3a41737365744964506172616d657465720001146f776e65722d0101504163636f756e7449644c6f6f6b75704f663c543e00012064656c65676174652d0101504163636f756e7449644c6f6f6b75704f663c543e00180498536565205b6050616c6c65743a3a666f7263655f63616e63656c5f617070726f76616c605d2e447472616e736665725f617070726f7665641001086964c0014c543a3a41737365744964506172616d657465720001146f776e65722d0101504163636f756e7449644c6f6f6b75704f663c543e00012c64657374696e6174696f6e2d0101504163636f756e7449644c6f6f6b75704f663c543e000118616d6f756e7439010128543a3a42616c616e636500190488536565205b6050616c6c65743a3a7472616e736665725f617070726f766564605d2e14746f7563680401086964c0014c543a3a41737365744964506172616d65746572001a0458536565205b6050616c6c65743a3a746f756368605d2e18726566756e640801086964c0014c543a3a41737365744964506172616d65746572000128616c6c6f775f6275726e780110626f6f6c001b045c536565205b6050616c6c65743a3a726566756e64605d2e3c7365745f6d696e5f62616c616e63650801086964c0014c543a3a41737365744964506172616d6574657200012c6d696e5f62616c616e6365180128543a3a42616c616e6365001c0480536565205b6050616c6c65743a3a7365745f6d696e5f62616c616e6365605d2e2c746f7563685f6f746865720801086964c0014c543a3a41737365744964506172616d6574657200010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e001d0470536565205b6050616c6c65743a3a746f7563685f6f74686572605d2e30726566756e645f6f746865720801086964c0014c543a3a41737365744964506172616d6574657200010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e001e0474536565205b6050616c6c65743a3a726566756e645f6f74686572605d2e14626c6f636b0801086964c0014c543a3a41737365744964506172616d6574657200010c77686f2d0101504163636f756e7449644c6f6f6b75704f663c543e001f0458536565205b6050616c6c65743a3a626c6f636b605d2e040d01436f6e7461696e7320612076617269616e742070657220646973706174636861626c652065787472696e736963207468617420746869732070616c6c6574206861732e59010858636f6e7472616374735f6e6f64655f72756e74696d65304f726967696e43616c6c65720001081873797374656d04005d0101746672616d655f73797374656d3a3a4f726967696e3c52756e74696d653e00000010566f69640400610101410173656c663a3a73705f6170695f68696464656e5f696e636c756465735f636f6e7374727563745f72756e74696d653a3a68696464656e5f696e636c7564653a3a0a5f5f707269766174653a3a566f6964000100005d010c346672616d655f737570706f7274206469737061746368245261774f726967696e04244163636f756e7449640100010c10526f6f74000000185369676e656404000001244163636f756e744964000100104e6f6e65000200006101081c73705f636f726510566f69640001000065010c3870616c6c65745f7574696c6974791870616c6c6574144572726f7204045400010430546f6f4d616e7943616c6c730000045c546f6f206d616e792063616c6c7320626174636865642e048054686520604572726f726020656e756d206f6620746869732070616c6c65742e69010c4c626f756e6465645f636f6c6c656374696f6e73407765616b5f626f756e6465645f766563385765616b426f756e646564566563080454016d01045300000400750101185665633c543e00006d010c3c70616c6c65745f62616c616e6365731474797065732c42616c616e63654c6f636b041c42616c616e63650118000c01086964090101384c6f636b4964656e746966696572000118616d6f756e7418011c42616c616e636500011c726561736f6e737101011c526561736f6e73000071010c3c70616c6c65745f62616c616e6365731474797065731c526561736f6e7300010c0c466565000000104d6973630001000c416c6c0002000075010000026d010079010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454017d01045300000400810101185665633c543e00007d010c3c70616c6c65745f62616c616e6365731474797065732c52657365727665446174610844526573657276654964656e7469666965720109011c42616c616e6365011800080108696409010144526573657276654964656e746966696572000118616d6f756e7418011c42616c616e6365000081010000027d010085010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454018901045300000400950101185665633c543e000089010c3c70616c6c65745f62616c616e636573147479706573204964416d6f756e7408084964018d011c42616c616e636501180008010869648d0101084964000118616d6f756e7418011c42616c616e636500008d010858636f6e7472616374735f6e6f64655f72756e74696d654452756e74696d65486f6c64526561736f6e00010424436f6e74726163747304009101017070616c6c65745f636f6e7472616374733a3a486f6c64526561736f6e0008000091010c4070616c6c65745f636f6e7472616374731870616c6c657428486f6c64526561736f6e00010860436f646555706c6f61644465706f736974526573657276650000005453746f726167654465706f7369745265736572766500010000950100000289010099010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e646564566563080454019d01045300000400a10101185665633c543e00009d010c3c70616c6c65745f62616c616e636573147479706573204964416d6f756e740808496401841c42616c616e636501180008010869648401084964000118616d6f756e7418011c42616c616e63650000a1010000029d0100a5010c3c70616c6c65745f62616c616e6365731870616c6c6574144572726f720804540004490001303856657374696e6742616c616e63650000049c56657374696e672062616c616e636520746f6f206869676820746f2073656e642076616c75652e544c69717569646974795265737472696374696f6e73000104c84163636f756e74206c6971756964697479207265737472696374696f6e732070726576656e74207769746864726177616c2e4c496e73756666696369656e7442616c616e63650002047842616c616e636520746f6f206c6f7720746f2073656e642076616c75652e484578697374656e7469616c4465706f736974000304ec56616c756520746f6f206c6f7720746f20637265617465206163636f756e742064756520746f206578697374656e7469616c206465706f7369742e34457870656e646162696c697479000404905472616e736665722f7061796d656e7420776f756c64206b696c6c206163636f756e742e5c4578697374696e6756657374696e675363686564756c65000504cc412076657374696e67207363686564756c6520616c72656164792065786973747320666f722074686973206163636f756e742e2c446561644163636f756e740006048c42656e6566696369617279206163636f756e74206d757374207072652d65786973742e3c546f6f4d616e795265736572766573000704b84e756d626572206f66206e616d65642072657365727665732065786365656420604d61785265736572766573602e30546f6f4d616e79486f6c6473000804f84e756d626572206f6620686f6c647320657863656564206056617269616e74436f756e744f663c543a3a52756e74696d65486f6c64526561736f6e3e602e38546f6f4d616e79467265657a6573000904984e756d626572206f6620667265657a65732065786365656420604d6178467265657a6573602e4c49737375616e63654465616374697661746564000a0401015468652069737375616e63652063616e6e6f74206265206d6f6469666965642073696e636520697420697320616c72656164792064656163746976617465642e2444656c74615a65726f000b04645468652064656c74612063616e6e6f74206265207a65726f2e048054686520604572726f726020656e756d206f6620746869732070616c6c65742ea9010c3473705f61726974686d657469632c66697865645f706f696e742446697865645531323800000400180110753132380000ad01086870616c6c65745f7472616e73616374696f6e5f7061796d656e742052656c6561736573000108245631416e6369656e7400000008563200010000b1010c2c70616c6c65745f7375646f1870616c6c6574144572726f720404540001042c526571756972655375646f0000048053656e646572206d75737420626520746865205375646f206163636f756e742e04684572726f7220666f7220746865205375646f2070616c6c65742eb5010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003401185665633c543e0000b9010c4070616c6c65745f636f6e747261637473107761736d20436f6465496e666f04045400001401146f776e65720001384163636f756e7449644f663c543e00011c6465706f7369743901013042616c616e63654f663c543e000120726566636f756e7428010c75363400012c64657465726d696e69736d5101012c44657465726d696e69736d000120636f64655f6c656e10010c7533320000bd010c4070616c6c65745f636f6e7472616374731c73746f7261676530436f6e7472616374496e666f040454000020011c747269655f6964c1010118547269654964000124636f64655f6861736830012c436f6465486173683c543e00013473746f726167655f627974657310010c75333200013473746f726167655f6974656d7310010c75333200015073746f726167655f627974655f6465706f73697418013042616c616e63654f663c543e00015073746f726167655f6974656d5f6465706f73697418013042616c616e63654f663c543e00015073746f726167655f626173655f6465706f73697418013042616c616e63654f663c543e00015464656c65676174655f646570656e64656e63696573c501011d01426f756e64656442547265654d61703c436f6465486173683c543e2c2042616c616e63654f663c543e2c20543a3a0a4d617844656c6567617465446570656e64656e636965733e0000c1010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003401185665633c543e0000c5010c4c626f756e6465645f636f6c6c656374696f6e7344626f756e6465645f62747265655f6d61703c426f756e64656442547265654d61700c044b013004560118045300000400c901013842547265654d61703c4b2c20563e0000c901042042547265654d617008044b013004560118000400cd01000000cd01000002d10100d10100000408301800d5010c4070616c6c65745f636f6e7472616374731c73746f726167655044656c6574696f6e51756575654d616e616765720404540000080138696e736572745f636f756e74657210010c75333200013864656c6574655f636f756e74657210010c7533320000d9010c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003401185665633c543e0000dd010c4070616c6c65745f636f6e747261637473207363686564756c65205363686564756c6504045400000c01186c696d697473e10101184c696d69747300014c696e737472756374696f6e5f77656967687473e5010154496e737472756374696f6e576569676874733c543e00013c686f73745f666e5f77656967687473e9010140486f7374466e576569676874733c543e0000e1010c4070616c6c65745f636f6e747261637473207363686564756c65184c696d69747300001401306576656e745f746f7069637310010c7533320001306d656d6f72795f706167657310010c75333200012c7375626a6563745f6c656e10010c75333200012c7061796c6f61645f6c656e10010c75333200013872756e74696d655f6d656d6f727910010c7533320000e5010c4070616c6c65745f636f6e747261637473207363686564756c6548496e737472756374696f6e5765696768747304045400000401106261736510010c7533320000e9010c4070616c6c65745f636f6e747261637473207363686564756c6534486f7374466e576569676874730404540000fc011863616c6c657224011857656967687400012c69735f636f6e7472616374240118576569676874000124636f64655f686173682401185765696768740001346f776e5f636f64655f6861736824011857656967687400014063616c6c65725f69735f6f726967696e24011857656967687400013863616c6c65725f69735f726f6f7424011857656967687400011c616464726573732401185765696768740001206761735f6c65667424011857656967687400011c62616c616e636524011857656967687400014476616c75655f7472616e7366657272656424011857656967687400013c6d696e696d756d5f62616c616e6365240118576569676874000130626c6f636b5f6e756d62657224011857656967687400010c6e6f772401185765696768740001347765696768745f746f5f666565240118576569676874000114696e707574240118576569676874000138696e7075745f7065725f62797465240118576569676874000120722372657475726e24011857656967687400013c72657475726e5f7065725f627974652401185765696768740001247465726d696e61746524011857656967687400011872616e646f6d2401185765696768740001346465706f7369745f6576656e7424011857656967687400015c6465706f7369745f6576656e745f7065725f746f7069632401185765696768740001586465706f7369745f6576656e745f7065725f6279746524011857656967687400013464656275675f6d65737361676524011857656967687400015864656275675f6d6573736167655f7065725f6279746524011857656967687400012c7365745f73746f726167652401185765696768740001607365745f73746f726167655f7065725f6e65775f627974652401185765696768740001607365745f73746f726167655f7065725f6f6c645f627974652401185765696768740001347365745f636f64655f68617368240118576569676874000134636c6561725f73746f72616765240118576569676874000158636c6561725f73746f726167655f7065725f62797465240118576569676874000140636f6e7461696e735f73746f72616765240118576569676874000164636f6e7461696e735f73746f726167655f7065725f6279746524011857656967687400012c6765745f73746f726167652401185765696768740001506765745f73746f726167655f7065725f6279746524011857656967687400013074616b655f73746f7261676524011857656967687400015474616b655f73746f726167655f7065725f627974652401185765696768740001207472616e7366657224011857656967687400011063616c6c24011857656967687400013464656c65676174655f63616c6c24011857656967687400015c63616c6c5f7472616e736665725f73757263686172676524011857656967687400015063616c6c5f7065725f636c6f6e65645f6279746524011857656967687400012c696e7374616e7469617465240118576569676874000178696e7374616e74696174655f7472616e736665725f737572636861726765240118576569676874000168696e7374616e74696174655f7065725f696e7075745f62797465240118576569676874000164696e7374616e74696174655f7065725f73616c745f62797465240118576569676874000134686173685f736861325f323536240118576569676874000158686173685f736861325f3235365f7065725f6279746524011857656967687400013c686173685f6b656363616b5f323536240118576569676874000160686173685f6b656363616b5f3235365f7065725f6279746524011857656967687400013c686173685f626c616b65325f323536240118576569676874000160686173685f626c616b65325f3235365f7065725f6279746524011857656967687400013c686173685f626c616b65325f313238240118576569676874000160686173685f626c616b65325f3132385f7065725f6279746524011857656967687400013465636473615f7265636f76657224011857656967687400015065636473615f746f5f6574685f61646472657373240118576569676874000138737232353531395f76657269667924011857656967687400015c737232353531395f7665726966795f7065725f627974652401185765696768740001407265656e7472616e63655f636f756e742401185765696768740001606163636f756e745f7265656e7472616e63655f636f756e7424011857656967687400014c696e7374616e74696174696f6e5f6e6f6e63652401185765696768740001606c6f636b5f64656c65676174655f646570656e64656e6379240118576569676874000168756e6c6f636b5f64656c65676174655f646570656e64656e63792401185765696768740000ed010c3473705f61726974686d65746963287065725f7468696e67731c50657262696c6c0000040010010c7533320000f101084070616c6c65745f636f6e7472616374732c456e7669726f6e6d656e7404045400001801286163636f756e745f6964f501017c456e7669726f6e6d656e74547970653c4163636f756e7449644f663c543e3e00011c62616c616e6365f9010174456e7669726f6e6d656e74547970653c42616c616e63654f663c543e3e00011068617368fd0101c8456e7669726f6e6d656e74547970653c3c54206173206672616d655f73797374656d3a3a436f6e6669673e3a3a486173683e000118686173686572010201d4456e7669726f6e6d656e74547970653c3c54206173206672616d655f73797374656d3a3a436f6e6669673e3a3a48617368696e673e00012474696d657374616d7009020170456e7669726f6e6d656e74547970653c4d6f6d656e744f663c543e3e000130626c6f636b5f6e756d6265720d020188456e7669726f6e6d656e74547970653c426c6f636b4e756d626572466f723c543e3e0000f501084070616c6c65745f636f6e7472616374733c456e7669726f6e6d656e74547970650404540100000000f901084070616c6c65745f636f6e7472616374733c456e7669726f6e6d656e74547970650404540118000000fd01084070616c6c65745f636f6e7472616374733c456e7669726f6e6d656e745479706504045401300000000102084070616c6c65745f636f6e7472616374733c456e7669726f6e6d656e745479706504045401050200000005020c2873705f72756e74696d65187472616974732c426c616b6554776f323536000000000902084070616c6c65745f636f6e7472616374733c456e7669726f6e6d656e7454797065040454012c0000000d02084070616c6c65745f636f6e7472616374733c456e7669726f6e6d656e745479706504045401100000001102084070616c6c65745f636f6e7472616374732841706956657273696f6e000004000d01010c753136000015020c4070616c6c65745f636f6e7472616374731870616c6c6574144572726f7204045400018c3c496e76616c69645363686564756c650000041901496e76616c6964207363686564756c6520737570706c6965642c20652e672e2077697468207a65726f20776569676874206f662061206261736963206f7065726174696f6e2e40496e76616c696443616c6c466c6167730001043501496e76616c696420636f6d62696e6174696f6e206f6620666c61677320737570706c69656420746f20607365616c5f63616c6c60206f7220607365616c5f64656c65676174655f63616c6c602e204f75744f66476173000204b854686520657865637574656420636f6e7472616374206578686175737465642069747320676173206c696d69742e504f7574707574427566666572546f6f536d616c6c0003040101546865206f75747075742062756666657220737570706c69656420746f206120636f6e7472616374204150492063616c6c2077617320746f6f20736d616c6c2e385472616e736665724661696c65640004083501506572666f726d696e672074686520726571756573746564207472616e73666572206661696c65642e2050726f6261626c7920626563617573652074686572652069736e277420656e6f75676894667265652062616c616e636520696e207468652073656e6465722773206163636f756e742e4c4d617843616c6c4465707468526561636865640005082101506572666f726d696e6720612063616c6c207761732064656e6965642062656361757365207468652063616c6c696e67206465707468207265616368656420746865206c696d6974946f6620776861742069732073706563696669656420696e20746865207363686564756c652e40436f6e74726163744e6f74466f756e64000604bc4e6f20636f6e74726163742077617320666f756e64206174207468652073706563696669656420616464726573732e30436f6465546f6f4c617267650007083d0154686520636f646520737570706c69656420746f2060696e7374616e74696174655f776974685f636f646560206578636565647320746865206c696d69742073706563696669656420696e207468654463757272656e74207363686564756c652e30436f64654e6f74466f756e64000804c44e6f20636f646520636f756c6420626520666f756e642061742074686520737570706c69656420636f646520686173682e40436f6465496e666f4e6f74466f756e64000904d84e6f20636f646520696e666f20636f756c6420626520666f756e642061742074686520737570706c69656420636f646520686173682e2c4f75744f66426f756e6473000a0425014120627566666572206f757473696465206f662073616e64626f78206d656d6f7279207761732070617373656420746f206120636f6e7472616374204150492066756e6374696f6e2e384465636f64696e674661696c6564000b042901496e7075742070617373656420746f206120636f6e7472616374204150492066756e6374696f6e206661696c656420746f206465636f646520617320657870656374656420747970652e3c436f6e747261637454726170706564000c0488436f6e7472616374207472617070656420647572696e6720657865637574696f6e2e3456616c7565546f6f4c61726765000d04cc5468652073697a6520646566696e656420696e2060543a3a4d617856616c756553697a6560207761732065786365656465642e605465726d696e617465645768696c655265656e7472616e74000e0819015465726d696e6174696f6e206f66206120636f6e7472616374206973206e6f7420616c6c6f776564207768696c652074686520636f6e747261637420697320616c7265616479e06f6e207468652063616c6c20737461636b2e2043616e2062652074726967676572656420627920607365616c5f7465726d696e617465602e38496e707574466f72776172646564000f044101607365616c5f63616c6c6020666f72776172646564207468697320636f6e74726163747320696e7075742e204974207468657265666f7265206973206e6f206c6f6e67657220617661696c61626c652e5052616e646f6d5375626a656374546f6f4c6f6e67001004d8546865207375626a6563742070617373656420746f20607365616c5f72616e646f6d60206578636565647320746865206c696d69742e34546f6f4d616e79546f706963730011041d0154686520616d6f756e74206f6620746f706963732070617373656420746f20607365616c5f6465706f7369745f6576656e747360206578636565647320746865206c696d69742e404e6f436861696e457874656e73696f6e00120c450154686520636861696e20646f6573206e6f742070726f76696465206120636861696e20657874656e73696f6e2e2043616c6c696e672074686520636861696e20657874656e73696f6e20726573756c74734d01696e2074686973206572726f722e204e6f74652074686174207468697320757375616c6c79202073686f756c646e27742068617070656e206173206465706c6f79696e67207375636820636f6e7472616374733069732072656a65637465642e3c58434d4465636f64654661696c6564001304844661696c656420746f206465636f6465207468652058434d2070726f6772616d2e444475706c6963617465436f6e7472616374001404c84120636f6e74726163742077697468207468652073616d65204163636f756e74496420616c7265616479206578697374732e5c5465726d696e61746564496e436f6e7374727563746f7200150cb84120636f6e74726163742073656c66206465737472756374656420696e2069747320636f6e7374727563746f722e00d0546869732063616e2062652074726967676572656420627920612063616c6c20746f20607365616c5f7465726d696e617465602e405265656e7472616e636544656e6965640016100d01412063616c6c20747269656420746f20696e766f6b65206120636f6e7472616374207468617420697320666c6167676564206173206e6f6e2d7265656e7472616e742e5d01546865206f6e6c79206f74686572206361757365206973207468617420612063616c6c2066726f6d206120636f6e747261637420696e746f207468652072756e74696d6520747269656420746f2063616c6c206261636b4901696e746f206070616c6c65742d636f6e747261637473602e205468697320776f756c64206d616b65207468652077686f6c652070616c6c6574207265656e7472616e7420776974682072656761726420746fbc636f6e747261637420636f646520657865637574696f6e207768696368206973206e6f7420737570706f727465642e7053746f726167654465706f7369744e6f74456e6f75676846756e647300170421014f726967696e20646f65736e2774206861766520656e6f7567682062616c616e636520746f20706179207468652072657175697265642073746f72616765206465706f736974732e7053746f726167654465706f7369744c696d69744578686175737465640018040d014d6f72652073746f72616765207761732063726561746564207468616e20616c6c6f776564206279207468652073746f72616765206465706f736974206c696d69742e24436f6465496e5573650019044901436f64652072656d6f76616c207761732064656e69656420626563617573652074686520636f6465206973207374696c6c20696e20757365206279206174206c65617374206f6e6520636f6e74726163742e40436f6e74726163745265766572746564001a10250154686520636f6e74726163742072616e20746f20636f6d706c6574696f6e20627574206465636964656420746f20726576657274206974732073746f72616765206368616e6765732e4901506c65617365206e6f746520746861742074686973206572726f72206973206f6e6c792072657475726e65642066726f6d2065787472696e736963732e205768656e2063616c6c6564206469726563746c795d016f72207669612052504320616e20604f6b602077696c6c2062652072657475726e65642e20496e20746869732063617365207468652063616c6c6572206e6565647320746f20696e73706563742074686520666c616773c4746f2064657465726d696e652077686574686572206120726576657273696f6e206861732074616b656e20706c6163652e30436f646552656a6563746564001b20f854686520636f6e7472616374277320636f64652077617320666f756e6420746f20626520696e76616c696420647572696e672076616c69646174696f6e2e004d01546865206d6f7374206c696b656c79206361757365206f662074686973206973207468617420616e20415049207761732075736564207768696368206973206e6f7420737570706f727465642062792074686551016e6f64652e20546869732068617070656e7320696620616e206f6c646572206e6f6465206973207573656420776974682061206e65772076657273696f6e206f6620696e6b212e20547279207570646174696e67a8796f7572206e6f646520746f20746865206e657765737420617661696c61626c652076657273696f6e2e00510141206d6f72652064657461696c6564206572726f722063616e20626520666f756e64206f6e20746865206e6f646520636f6e736f6c65206966206465627567206d657373616765732061726520656e61626c6564a8627920737570706c79696e6720602d6c72756e74696d653a3a636f6e7472616374733d6465627567602e3c496e64657465726d696e6973746963001c042101416e20696e64657465726d697374696320636f646520776173207573656420696e206120636f6e746578742077686572652074686973206973206e6f74207065726d69747465642e4c4d6967726174696f6e496e50726f6772657373001d042501412070656e64696e67206d6967726174696f6e206e6565647320746f20636f6d706c657465206265666f7265207468652065787472696e7369632063616e2062652063616c6c65642e504e6f4d6967726174696f6e506572666f726d6564001e040d014d6967726174652064697370617463682063616c6c2077617320617474656d7074656420627574206e6f206d6967726174696f6e2077617320706572666f726d65642e784d617844656c6567617465446570656e64656e6369657352656163686564001f04150154686520636f6e747261637420686173207265616368656420697473206d6178696d756d206e756d626572206f662064656c656761746520646570656e64656e636965732e6844656c6567617465446570656e64656e63794e6f74466f756e64002004150154686520646570656e64656e637920776173206e6f7420666f756e6420696e2074686520636f6e747261637427732064656c656761746520646570656e64656e636965732e7c44656c6567617465446570656e64656e6379416c7265616479457869737473002104f854686520636f6e747261637420616c726561647920646570656e6473206f6e2074686520676976656e2064656c656761746520646570656e64656e63792e8443616e6e6f7441646453656c66417344656c6567617465446570656e64656e6379002204290143616e206e6f742061646420612064656c656761746520646570656e64656e637920746f2074686520636f64652068617368206f662074686520636f6e747261637420697473656c662e048054686520604572726f726020656e756d206f6620746869732070616c6c65742e19020c3470616c6c65745f61737365747314747970657330417373657444657461696c730c1c42616c616e63650118244163636f756e7449640100384465706f73697442616c616e63650118003001146f776e65720001244163636f756e7449640001186973737565720001244163636f756e74496400011461646d696e0001244163636f756e74496400011c667265657a65720001244163636f756e744964000118737570706c7918011c42616c616e636500011c6465706f7369741801384465706f73697442616c616e636500012c6d696e5f62616c616e636518011c42616c616e636500013469735f73756666696369656e74780110626f6f6c0001206163636f756e747310010c75333200012c73756666696369656e747310010c753332000124617070726f76616c7310010c7533320001187374617475731d02012c417373657453746174757300001d020c3470616c6c65745f6173736574731474797065732c417373657453746174757300010c104c6976650000001846726f7a656e0001002844657374726f79696e670002000021020000040810000025020c3470616c6c65745f6173736574731474797065733041737365744163636f756e74101c42616c616e63650118384465706f73697442616c616e636501181445787472610184244163636f756e74496401000010011c62616c616e636518011c42616c616e6365000118737461747573290201344163636f756e74537461747573000118726561736f6e2d0201a84578697374656e6365526561736f6e3c4465706f73697442616c616e63652c204163636f756e7449643e00011465787472618401144578747261000029020c3470616c6c65745f617373657473147479706573344163636f756e7453746174757300010c184c69717569640000001846726f7a656e0001001c426c6f636b6564000200002d020c3470616c6c65745f6173736574731474797065733c4578697374656e6365526561736f6e081c42616c616e63650118244163636f756e7449640100011420436f6e73756d65720000002853756666696369656e740001002c4465706f73697448656c64040018011c42616c616e63650002003c4465706f736974526566756e6465640003002c4465706f73697446726f6d08000001244163636f756e744964000018011c42616c616e63650004000031020000040c1000000035020c3470616c6c65745f61737365747314747970657320417070726f76616c081c42616c616e63650118384465706f73697442616c616e6365011800080118616d6f756e7418011c42616c616e636500011c6465706f7369741801384465706f73697442616c616e6365000039020c3470616c6c65745f6173736574731474797065733441737365744d6574616461746108384465706f73697442616c616e6365011834426f756e646564537472696e67013d020014011c6465706f7369741801384465706f73697442616c616e63650001106e616d653d020134426f756e646564537472696e6700011873796d626f6c3d020134426f756e646564537472696e67000120646563696d616c73080108753800012469735f66726f7a656e780110626f6f6c00003d020c4c626f756e6465645f636f6c6c656374696f6e732c626f756e6465645f76656328426f756e64656456656308045401080453000004003401185665633c543e000041020c3470616c6c65745f6173736574731870616c6c6574144572726f720804540004490001502842616c616e63654c6f7700000415014163636f756e742062616c616e6365206d7573742062652067726561746572207468616e206f7220657175616c20746f20746865207472616e7366657220616d6f756e742e244e6f4163636f756e7400010490546865206163636f756e7420746f20616c74657220646f6573206e6f742065786973742e304e6f5065726d697373696f6e000204e8546865207369676e696e67206163636f756e7420686173206e6f207065726d697373696f6e20746f20646f20746865206f7065726174696f6e2e1c556e6b6e6f776e0003047854686520676976656e20617373657420494420697320756e6b6e6f776e2e1846726f7a656e00040474546865206f726967696e206163636f756e742069732066726f7a656e2e14496e5573650005047854686520617373657420494420697320616c72656164792074616b656e2e284261645769746e6573730006046c496e76616c6964207769746e657373206461746120676976656e2e384d696e42616c616e63655a65726f0007048c4d696e696d756d2062616c616e63652073686f756c64206265206e6f6e2d7a65726f2e4c556e617661696c61626c65436f6e73756d657200080c5901556e61626c6520746f20696e6372656d656e742074686520636f6e73756d6572207265666572656e636520636f756e74657273206f6e20746865206163636f756e742e20456974686572206e6f2070726f76696465724d017265666572656e63652065786973747320746f20616c6c6f772061206e6f6e2d7a65726f2062616c616e6365206f662061206e6f6e2d73656c662d73756666696369656e742061737365742c206f72206f6e65f06665776572207468656e20746865206d6178696d756d206e756d626572206f6620636f6e73756d65727320686173206265656e20726561636865642e2c4261644d657461646174610009045c496e76616c6964206d6574616461746120676976656e2e28556e617070726f766564000a04c44e6f20617070726f76616c20657869737473207468617420776f756c6420616c6c6f7720746865207472616e736665722e20576f756c64446965000b04350154686520736f75726365206163636f756e7420776f756c64206e6f74207375727669766520746865207472616e7366657220616e64206974206e6565647320746f207374617920616c6976652e34416c7265616479457869737473000c04845468652061737365742d6163636f756e7420616c7265616479206578697374732e244e6f4465706f736974000d04d45468652061737365742d6163636f756e7420646f65736e2774206861766520616e206173736f636961746564206465706f7369742e24576f756c644275726e000e04c4546865206f7065726174696f6e20776f756c6420726573756c7420696e2066756e6473206265696e67206275726e65642e244c6976654173736574000f0859015468652061737365742069732061206c69766520617373657420616e64206973206163746976656c79206265696e6720757365642e20557375616c6c7920656d697420666f72206f7065726174696f6e7320737563681d016173206073746172745f64657374726f796020776869636820726571756972652074686520617373657420746f20626520696e20612064657374726f79696e672073746174652e3041737365744e6f744c697665001004c8546865206173736574206973206e6f74206c6976652c20616e64206c696b656c79206265696e672064657374726f7965642e3c496e636f7272656374537461747573001104b054686520617373657420737461747573206973206e6f7420746865206578706563746564207374617475732e244e6f7446726f7a656e001204d85468652061737365742073686f756c642062652066726f7a656e206265666f72652074686520676976656e206f7065726174696f6e2e3843616c6c6261636b4661696c65640013048443616c6c6261636b20616374696f6e20726573756c74656420696e206572726f72048054686520604572726f726020656e756d206f6620746869732070616c6c65742e4502082873705f72756e74696d65384d756c74695369676e617475726500010c1c45643235353139040049020148656432353531393a3a5369676e61747572650000001c53723235353139040051020148737232353531393a3a5369676e617475726500010014456364736104005502014065636473613a3a5369676e61747572650002000049020c1c73705f636f72651c65643235353139245369676e6174757265000004004d0201205b75383b2036345d00004d0200000340000000080051020c1c73705f636f72651c73723235353139245369676e6174757265000004004d0201205b75383b2036345d000055020c1c73705f636f7265146563647361245369676e6174757265000004005902017c5b75383b205349474e41545552455f53455249414c495a45445f53495a455d000059020000034100000008005d02000004206102650269026d02710279027d02810200610210306672616d655f73797374656d28657874656e73696f6e7354636865636b5f6e6f6e5f7a65726f5f73656e64657248436865636b4e6f6e5a65726f53656e64657204045400000000650210306672616d655f73797374656d28657874656e73696f6e7348636865636b5f737065635f76657273696f6e40436865636b5370656356657273696f6e04045400000000690210306672616d655f73797374656d28657874656e73696f6e7340636865636b5f74785f76657273696f6e38436865636b547856657273696f6e040454000000006d0210306672616d655f73797374656d28657874656e73696f6e7334636865636b5f67656e6573697330436865636b47656e6573697304045400000000710210306672616d655f73797374656d28657874656e73696f6e733c636865636b5f6d6f7274616c69747938436865636b4d6f7274616c697479040454000004007502010c45726100007502102873705f72756e74696d651c67656e657269630c6572610c4572610001010420496d6d6f7274616c0000001c4d6f7274616c31040008000001001c4d6f7274616c32040008000002001c4d6f7274616c33040008000003001c4d6f7274616c34040008000004001c4d6f7274616c35040008000005001c4d6f7274616c36040008000006001c4d6f7274616c37040008000007001c4d6f7274616c38040008000008001c4d6f7274616c3904000800000900204d6f7274616c313004000800000a00204d6f7274616c313104000800000b00204d6f7274616c313204000800000c00204d6f7274616c313304000800000d00204d6f7274616c313404000800000e00204d6f7274616c313504000800000f00204d6f7274616c313604000800001000204d6f7274616c313704000800001100204d6f7274616c313804000800001200204d6f7274616c313904000800001300204d6f7274616c323004000800001400204d6f7274616c323104000800001500204d6f7274616c323204000800001600204d6f7274616c323304000800001700204d6f7274616c323404000800001800204d6f7274616c323504000800001900204d6f7274616c323604000800001a00204d6f7274616c323704000800001b00204d6f7274616c323804000800001c00204d6f7274616c323904000800001d00204d6f7274616c333004000800001e00204d6f7274616c333104000800001f00204d6f7274616c333204000800002000204d6f7274616c333304000800002100204d6f7274616c333404000800002200204d6f7274616c333504000800002300204d6f7274616c333604000800002400204d6f7274616c333704000800002500204d6f7274616c333804000800002600204d6f7274616c333904000800002700204d6f7274616c343004000800002800204d6f7274616c343104000800002900204d6f7274616c343204000800002a00204d6f7274616c343304000800002b00204d6f7274616c343404000800002c00204d6f7274616c343504000800002d00204d6f7274616c343604000800002e00204d6f7274616c343704000800002f00204d6f7274616c343804000800003000204d6f7274616c343904000800003100204d6f7274616c353004000800003200204d6f7274616c353104000800003300204d6f7274616c353204000800003400204d6f7274616c353304000800003500204d6f7274616c353404000800003600204d6f7274616c353504000800003700204d6f7274616c353604000800003800204d6f7274616c353704000800003900204d6f7274616c353804000800003a00204d6f7274616c353904000800003b00204d6f7274616c363004000800003c00204d6f7274616c363104000800003d00204d6f7274616c363204000800003e00204d6f7274616c363304000800003f00204d6f7274616c363404000800004000204d6f7274616c363504000800004100204d6f7274616c363604000800004200204d6f7274616c363704000800004300204d6f7274616c363804000800004400204d6f7274616c363904000800004500204d6f7274616c373004000800004600204d6f7274616c373104000800004700204d6f7274616c373204000800004800204d6f7274616c373304000800004900204d6f7274616c373404000800004a00204d6f7274616c373504000800004b00204d6f7274616c373604000800004c00204d6f7274616c373704000800004d00204d6f7274616c373804000800004e00204d6f7274616c373904000800004f00204d6f7274616c383004000800005000204d6f7274616c383104000800005100204d6f7274616c383204000800005200204d6f7274616c383304000800005300204d6f7274616c383404000800005400204d6f7274616c383504000800005500204d6f7274616c383604000800005600204d6f7274616c383704000800005700204d6f7274616c383804000800005800204d6f7274616c383904000800005900204d6f7274616c393004000800005a00204d6f7274616c393104000800005b00204d6f7274616c393204000800005c00204d6f7274616c393304000800005d00204d6f7274616c393404000800005e00204d6f7274616c393504000800005f00204d6f7274616c393604000800006000204d6f7274616c393704000800006100204d6f7274616c393804000800006200204d6f7274616c393904000800006300244d6f7274616c31303004000800006400244d6f7274616c31303104000800006500244d6f7274616c31303204000800006600244d6f7274616c31303304000800006700244d6f7274616c31303404000800006800244d6f7274616c31303504000800006900244d6f7274616c31303604000800006a00244d6f7274616c31303704000800006b00244d6f7274616c31303804000800006c00244d6f7274616c31303904000800006d00244d6f7274616c31313004000800006e00244d6f7274616c31313104000800006f00244d6f7274616c31313204000800007000244d6f7274616c31313304000800007100244d6f7274616c31313404000800007200244d6f7274616c31313504000800007300244d6f7274616c31313604000800007400244d6f7274616c31313704000800007500244d6f7274616c31313804000800007600244d6f7274616c31313904000800007700244d6f7274616c31323004000800007800244d6f7274616c31323104000800007900244d6f7274616c31323204000800007a00244d6f7274616c31323304000800007b00244d6f7274616c31323404000800007c00244d6f7274616c31323504000800007d00244d6f7274616c31323604000800007e00244d6f7274616c31323704000800007f00244d6f7274616c31323804000800008000244d6f7274616c31323904000800008100244d6f7274616c31333004000800008200244d6f7274616c31333104000800008300244d6f7274616c31333204000800008400244d6f7274616c31333304000800008500244d6f7274616c31333404000800008600244d6f7274616c31333504000800008700244d6f7274616c31333604000800008800244d6f7274616c31333704000800008900244d6f7274616c31333804000800008a00244d6f7274616c31333904000800008b00244d6f7274616c31343004000800008c00244d6f7274616c31343104000800008d00244d6f7274616c31343204000800008e00244d6f7274616c31343304000800008f00244d6f7274616c31343404000800009000244d6f7274616c31343504000800009100244d6f7274616c31343604000800009200244d6f7274616c31343704000800009300244d6f7274616c31343804000800009400244d6f7274616c31343904000800009500244d6f7274616c31353004000800009600244d6f7274616c31353104000800009700244d6f7274616c31353204000800009800244d6f7274616c31353304000800009900244d6f7274616c31353404000800009a00244d6f7274616c31353504000800009b00244d6f7274616c31353604000800009c00244d6f7274616c31353704000800009d00244d6f7274616c31353804000800009e00244d6f7274616c31353904000800009f00244d6f7274616c3136300400080000a000244d6f7274616c3136310400080000a100244d6f7274616c3136320400080000a200244d6f7274616c3136330400080000a300244d6f7274616c3136340400080000a400244d6f7274616c3136350400080000a500244d6f7274616c3136360400080000a600244d6f7274616c3136370400080000a700244d6f7274616c3136380400080000a800244d6f7274616c3136390400080000a900244d6f7274616c3137300400080000aa00244d6f7274616c3137310400080000ab00244d6f7274616c3137320400080000ac00244d6f7274616c3137330400080000ad00244d6f7274616c3137340400080000ae00244d6f7274616c3137350400080000af00244d6f7274616c3137360400080000b000244d6f7274616c3137370400080000b100244d6f7274616c3137380400080000b200244d6f7274616c3137390400080000b300244d6f7274616c3138300400080000b400244d6f7274616c3138310400080000b500244d6f7274616c3138320400080000b600244d6f7274616c3138330400080000b700244d6f7274616c3138340400080000b800244d6f7274616c3138350400080000b900244d6f7274616c3138360400080000ba00244d6f7274616c3138370400080000bb00244d6f7274616c3138380400080000bc00244d6f7274616c3138390400080000bd00244d6f7274616c3139300400080000be00244d6f7274616c3139310400080000bf00244d6f7274616c3139320400080000c000244d6f7274616c3139330400080000c100244d6f7274616c3139340400080000c200244d6f7274616c3139350400080000c300244d6f7274616c3139360400080000c400244d6f7274616c3139370400080000c500244d6f7274616c3139380400080000c600244d6f7274616c3139390400080000c700244d6f7274616c3230300400080000c800244d6f7274616c3230310400080000c900244d6f7274616c3230320400080000ca00244d6f7274616c3230330400080000cb00244d6f7274616c3230340400080000cc00244d6f7274616c3230350400080000cd00244d6f7274616c3230360400080000ce00244d6f7274616c3230370400080000cf00244d6f7274616c3230380400080000d000244d6f7274616c3230390400080000d100244d6f7274616c3231300400080000d200244d6f7274616c3231310400080000d300244d6f7274616c3231320400080000d400244d6f7274616c3231330400080000d500244d6f7274616c3231340400080000d600244d6f7274616c3231350400080000d700244d6f7274616c3231360400080000d800244d6f7274616c3231370400080000d900244d6f7274616c3231380400080000da00244d6f7274616c3231390400080000db00244d6f7274616c3232300400080000dc00244d6f7274616c3232310400080000dd00244d6f7274616c3232320400080000de00244d6f7274616c3232330400080000df00244d6f7274616c3232340400080000e000244d6f7274616c3232350400080000e100244d6f7274616c3232360400080000e200244d6f7274616c3232370400080000e300244d6f7274616c3232380400080000e400244d6f7274616c3232390400080000e500244d6f7274616c3233300400080000e600244d6f7274616c3233310400080000e700244d6f7274616c3233320400080000e800244d6f7274616c3233330400080000e900244d6f7274616c3233340400080000ea00244d6f7274616c3233350400080000eb00244d6f7274616c3233360400080000ec00244d6f7274616c3233370400080000ed00244d6f7274616c3233380400080000ee00244d6f7274616c3233390400080000ef00244d6f7274616c3234300400080000f000244d6f7274616c3234310400080000f100244d6f7274616c3234320400080000f200244d6f7274616c3234330400080000f300244d6f7274616c3234340400080000f400244d6f7274616c3234350400080000f500244d6f7274616c3234360400080000f600244d6f7274616c3234370400080000f700244d6f7274616c3234380400080000f800244d6f7274616c3234390400080000f900244d6f7274616c3235300400080000fa00244d6f7274616c3235310400080000fb00244d6f7274616c3235320400080000fc00244d6f7274616c3235330400080000fd00244d6f7274616c3235340400080000fe00244d6f7274616c3235350400080000ff0000790210306672616d655f73797374656d28657874656e73696f6e732c636865636b5f6e6f6e636528436865636b4e6f6e636504045400000400c00120543a3a4e6f6e636500007d0210306672616d655f73797374656d28657874656e73696f6e7330636865636b5f7765696768742c436865636b576569676874040454000000008102086870616c6c65745f7472616e73616374696f6e5f7061796d656e74604368617267655472616e73616374696f6e5061796d656e74040454000004003901013042616c616e63654f663c543e00008502102873705f72756e74696d651c67656e6572696314626c6f636b14426c6f636b08184865616465720189022445787472696e736963018d02000801186865616465728902011848656164657200012865787472696e73696373910201385665633c45787472696e7369633e00008902102873705f72756e74696d651c67656e65726963186865616465721848656164657208184e756d62657201101048617368000014012c706172656e745f68617368300130486173683a3a4f75747075740001186e756d626572c001184e756d62657200012873746174655f726f6f74300130486173683a3a4f757470757400013c65787472696e736963735f726f6f74300130486173683a3a4f757470757400011864696765737438011844696765737400008d02102873705f72756e74696d651c67656e657269634c756e636865636b65645f65787472696e73696348556e636865636b656445787472696e736963101c41646472657373012d011043616c6c012101245369676e6174757265014502144578747261015d020004003400000091020000028d02009502081c73705f636f7265384f70617175654d657461646174610000040034011c5665633c75383e0000990204184f7074696f6e0404540195020108104e6f6e6500000010536f6d650400950200000100009d020000021000a1020418526573756c740804540180044501a5020108084f6b040080000000000c4572720400a5020000010000a5020c2873705f72756e74696d65507472616e73616374696f6e5f76616c6964697479605472616e73616374696f6e56616c69646974794572726f720001081c496e76616c69640400a9020148496e76616c69645472616e73616374696f6e0000001c556e6b6e6f776e0400ad020148556e6b6e6f776e5472616e73616374696f6e00010000a9020c2873705f72756e74696d65507472616e73616374696f6e5f76616c696469747948496e76616c69645472616e73616374696f6e00012c1043616c6c0000001c5061796d656e7400010018467574757265000200145374616c650003002042616450726f6f6600040044416e6369656e744269727468426c6f636b0005004445786861757374735265736f757263657300060018437573746f6d04000801087538000700304261644d616e6461746f72790008004c4d616e6461746f727956616c69646174696f6e000900244261645369676e6572000a0000ad020c2873705f72756e74696d65507472616e73616374696f6e5f76616c696469747948556e6b6e6f776e5472616e73616374696f6e00010c3043616e6e6f744c6f6f6b75700000004c4e6f556e7369676e656456616c696461746f7200010018437573746f6d0400080108753800020000b102083073705f696e686572656e747330496e686572656e7444617461000004011064617461b502019442547265654d61703c496e686572656e744964656e7469666965722c205665633c75383e3e0000b502042042547265654d617008044b01090104560134000400b902000000b902000002bd0200bd020000040809013400c102083073705f696e686572656e747350436865636b496e686572656e7473526573756c7400000c01106f6b6179780110626f6f6c00012c666174616c5f6572726f72780110626f6f6c0001186572726f7273b1020130496e686572656e74446174610000c5020c2873705f72756e74696d65507472616e73616374696f6e5f76616c6964697479445472616e73616374696f6e536f7572636500010c1c496e426c6f636b000000144c6f63616c0001002045787465726e616c00020000c9020418526573756c7408045401cd02044501a5020108084f6b0400cd02000000000c4572720400a5020000010000cd020c2873705f72756e74696d65507472616e73616374696f6e5f76616c69646974794056616c69645472616e73616374696f6e00001401207072696f726974792c014c5472616e73616374696f6e5072696f726974790001207265717569726573d8014c5665633c5472616e73616374696f6e5461673e00012070726f7669646573d8014c5665633c5472616e73616374696f6e5461673e0001246c6f6e6765766974792c01505472616e73616374696f6e4c6f6e67657669747900012470726f706167617465780110626f6f6c0000d10204184f7074696f6e04045401340108104e6f6e6500000010536f6d650400340000010000d50204184f7074696f6e04045401d9020108104e6f6e6500000010536f6d650400d9020000010000d902000002dd0200dd020000040834e10200e1020c1c73705f636f72651863727970746f244b65795479706549640000040044011c5b75383b20345d0000e5020c6870616c6c65745f7472616e73616374696f6e5f7061796d656e741474797065734c52756e74696d654469737061746368496e666f081c42616c616e63650118185765696768740124000c0118776569676874240118576569676874000114636c6173735c01344469737061746368436c61737300012c7061727469616c5f66656518011c42616c616e63650000e9020c6870616c6c65745f7472616e73616374696f6e5f7061796d656e741474797065732846656544657461696c73041c42616c616e6365011800080134696e636c7573696f6e5f666565ed0201744f7074696f6e3c496e636c7573696f6e4665653c42616c616e63653e3e00010c74697018011c42616c616e63650000ed0204184f7074696f6e04045401f1020108104e6f6e6500000010536f6d650400f1020000010000f1020c6870616c6c65745f7472616e73616374696f6e5f7061796d656e7414747970657330496e636c7573696f6e466565041c42616c616e63650118000c0120626173655f66656518011c42616c616e636500011c6c656e5f66656518011c42616c616e636500014c61646a75737465645f7765696768745f66656518011c42616c616e63650000f50204184f7074696f6e04045401180108104e6f6e6500000010536f6d650400180000010000f9020c4070616c6c65745f636f6e747261637473287072696d69746976657338436f6e7472616374526573756c740c045201fd021c42616c616e636501182c4576656e745265636f7264014c001801306761735f636f6e73756d65642401185765696768740001306761735f726571756972656424011857656967687400013c73746f726167655f6465706f7369740903015c53746f726167654465706f7369743c42616c616e63653e00013464656275675f6d65737361676534011c5665633c75383e000118726573756c74fd020104520001186576656e74730d0301604f7074696f6e3c5665633c4576656e745265636f72643e3e0000fd020418526573756c74080454010103044501640108084f6b04000103000000000c457272040064000001000001030c4070616c6c65745f636f6e747261637473287072696d6974697665733c4578656352657475726e56616c75650000080114666c6167730503012c52657475726e466c6167730001106461746134011c5665633c75383e000005030c5470616c6c65745f636f6e7472616374735f7561706914666c6167732c52657475726e466c61677300000401106269747310010c753332000009030c4070616c6c65745f636f6e747261637473287072696d6974697665733853746f726167654465706f736974041c42616c616e63650118010818526566756e64040018011c42616c616e636500000018436861726765040018011c42616c616e6365000100000d0304184f7074696f6e0404540111030108104e6f6e6500000010536f6d6504001103000001000011030000024c0015030c4070616c6c65745f636f6e747261637473287072696d69746976657310436f6465041048617368013001081855706c6f6164040034011c5665633c75383e000000204578697374696e670400300110486173680001000019030c4070616c6c65745f636f6e747261637473287072696d69746976657338436f6e7472616374526573756c740c0452011d031c42616c616e636501182c4576656e745265636f7264014c001801306761735f636f6e73756d65642401185765696768740001306761735f726571756972656424011857656967687400013c73746f726167655f6465706f7369740903015c53746f726167654465706f7369743c42616c616e63653e00013464656275675f6d65737361676534011c5665633c75383e000118726573756c741d030104520001186576656e74730d0301604f7074696f6e3c5665633c4576656e745265636f72643e3e00001d030418526573756c74080454012103044501640108084f6b04002103000000000c457272040064000001000021030c4070616c6c65745f636f6e747261637473287072696d69746976657358496e7374616e746961746552657475726e56616c756504244163636f756e744964010000080118726573756c740103013c4578656352657475726e56616c75650001286163636f756e745f69640001244163636f756e744964000025030418526573756c74080454012903044501640108084f6b04002903000000000c457272040064000001000029030c4070616c6c65745f636f6e747261637473287072696d69746976657354436f646555706c6f616452657475726e56616c75650820436f64654861736801301c42616c616e6365011800080124636f64655f68617368300120436f64654861736800011c6465706f73697418011c42616c616e636500002d030418526573756c7408045401d10204450131030108084f6b0400d102000000000c45727204003103000001000031030c4070616c6c65745f636f6e747261637473287072696d6974697665734c436f6e74726163744163636573734572726f7200010c2c446f65736e744578697374000000444b65794465636f64696e674661696c65640001004c4d6967726174696f6e496e50726f67726573730002000035030418526573756c740804540184044501c40108084f6b040084000000000c4572720400c4000001000039030858636f6e7472616374735f6e6f64655f72756e74696d653052756e74696d654572726f720001181853797374656d0400110101706672616d655f73797374656d3a3a4572726f723c52756e74696d653e0000001c5574696c69747904006501017870616c6c65745f7574696c6974793a3a4572726f723c52756e74696d653e0002002042616c616e6365730400a501017c70616c6c65745f62616c616e6365733a3a4572726f723c52756e74696d653e000400105375646f0400b101016c70616c6c65745f7375646f3a3a4572726f723c52756e74696d653e00070024436f6e74726163747304001502018070616c6c65745f636f6e7472616374733a3a4572726f723c52756e74696d653e0008001841737365747304004102017470616c6c65745f6173736574733a3a4572726f723c52756e74696d653e00090000281853797374656d011853797374656d441c4163636f756e7401010402000c4101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008004e8205468652066756c6c206163636f756e7420696e666f726d6174696f6e20666f72206120706172746963756c6172206163636f756e742049442e3845787472696e736963436f756e74000010040004b820546f74616c2065787472696e7369637320636f756e7420666f72207468652063757272656e7420626c6f636b2e2c426c6f636b576569676874010020180000000000000488205468652063757272656e742077656967687420666f722074686520626c6f636b2e40416c6c45787472696e736963734c656e000010040004410120546f74616c206c656e6774682028696e2062797465732920666f7220616c6c2065787472696e736963732070757420746f6765746865722c20666f72207468652063757272656e7420626c6f636b2e24426c6f636b486173680101040510308000000000000000000000000000000000000000000000000000000000000000000498204d6170206f6620626c6f636b206e756d6265727320746f20626c6f636b206861736865732e3445787472696e736963446174610101040510340400043d012045787472696e73696373206461746120666f72207468652063757272656e7420626c6f636b20286d61707320616e2065787472696e736963277320696e64657820746f206974732064617461292e184e756d6265720100101000000000040901205468652063757272656e7420626c6f636b206e756d626572206265696e672070726f6365737365642e205365742062792060657865637574655f626c6f636b602e28506172656e744861736801003080000000000000000000000000000000000000000000000000000000000000000004702048617368206f66207468652070726576696f757320626c6f636b2e18446967657374010038040004f020446967657374206f66207468652063757272656e7420626c6f636b2c20616c736f2070617274206f662074686520626c6f636b206865616465722e184576656e747301004804001ca0204576656e7473206465706f736974656420666f72207468652063757272656e7420626c6f636b2e001d01204e4f54453a20546865206974656d20697320756e626f756e6420616e642073686f756c64207468657265666f7265206e657665722062652072656164206f6e20636861696e2ed020497420636f756c64206f746865727769736520696e666c6174652074686520506f562073697a65206f66206120626c6f636b2e002d01204576656e747320686176652061206c6172676520696e2d6d656d6f72792073697a652e20426f7820746865206576656e747320746f206e6f7420676f206f75742d6f662d6d656d6f7279fc206a75737420696e206361736520736f6d656f6e65207374696c6c207265616473207468656d2066726f6d2077697468696e207468652072756e74696d652e284576656e74436f756e74010010100000000004b820546865206e756d626572206f66206576656e747320696e2074686520604576656e74733c543e60206c6973742e2c4576656e74546f706963730101040230b40400282501204d617070696e67206265747765656e206120746f7069632028726570726573656e74656420627920543a3a486173682920616e64206120766563746f72206f6620696e646578657394206f66206576656e747320696e2074686520603c4576656e74733c543e3e60206c6973742e00510120416c6c20746f70696320766563746f727320686176652064657465726d696e69737469632073746f72616765206c6f636174696f6e7320646570656e64696e67206f6e2074686520746f7069632e2054686973450120616c6c6f7773206c696768742d636c69656e747320746f206c6576657261676520746865206368616e67657320747269652073746f7261676520747261636b696e67206d656368616e69736d20616e64e420696e2063617365206f66206368616e67657320666574636820746865206c697374206f66206576656e7473206f6620696e7465726573742e005901205468652076616c756520686173207468652074797065206028426c6f636b4e756d626572466f723c543e2c204576656e74496e646578296020626563617573652069662077652075736564206f6e6c79206a7573744d012074686520604576656e74496e64657860207468656e20696e20636173652069662074686520746f70696320686173207468652073616d6520636f6e74656e7473206f6e20746865206e65787420626c6f636b0101206e6f206e6f74696669636174696f6e2077696c6c20626520747269676765726564207468757320746865206576656e74206d69676874206265206c6f73742e484c61737452756e74696d65557067726164650000bc04000455012053746f726573207468652060737065635f76657273696f6e6020616e642060737065635f6e616d6560206f66207768656e20746865206c6173742072756e74696d6520757067726164652068617070656e65642e545570677261646564546f553332526566436f756e740100780400044d012054727565206966207765206861766520757067726164656420736f207468617420607479706520526566436f756e74602069732060753332602e2046616c7365202864656661756c7429206966206e6f742e605570677261646564546f547269706c65526566436f756e740100780400085d012054727565206966207765206861766520757067726164656420736f2074686174204163636f756e74496e666f20636f6e7461696e73207468726565207479706573206f662060526566436f756e74602e2046616c736548202864656661756c7429206966206e6f742e38457865637574696f6e50686173650000ac040004882054686520657865637574696f6e207068617365206f662074686520626c6f636b2e44417574686f72697a6564557067726164650000c8040004b82060536f6d6560206966206120636f6465207570677261646520686173206265656e20617574686f72697a65642e01cc01541830426c6f636b57656967687473dcf901025b1f5d000b00204aa9d10113ffffffffffffffffc2a0a91d00010bd05f9fa62e011366666666666666a6010b0098f73e5d0113ffffffffffffffbf010000c2a0a91d00010bd0e7f110a3011366666666666666e6010b00204aa9d10113ffffffffffffffff01070088526a74130000000000000040c2a0a91d0000000004d020426c6f636b20262065787472696e7369637320776569676874733a20626173652076616c75657320616e64206c696d6974732e2c426c6f636b4c656e677468ec3000003c00000050000000500004a820546865206d6178696d756d206c656e677468206f66206120626c6f636b2028696e206279746573292e38426c6f636b48617368436f756e74101060090000045501204d6178696d756d206e756d626572206f6620626c6f636b206e756d62657220746f20626c6f636b2068617368206d617070696e677320746f206b65657020286f6c64657374207072756e6564206669727374292e204462576569676874f44040787d010000000000e1f505000000000409012054686520776569676874206f662072756e74696d65206461746162617365206f7065726174696f6e73207468652072756e74696d652063616e20696e766f6b652e1c56657273696f6ef82103607375627374726174652d636f6e7472616374732d6e6f6465607375627374726174652d636f6e7472616374732d6e6f64650100000064000000010000002cdf6acb689907609b0400000037e397fc7c91f5e40200000040fe3ad401f8959a06000000d2bc9897eed08f1503000000f78b278be53f454c02000000ab3c0572291feb8b01000000bc9d89904f5b923f0100000037c8bb1350a9a2a804000000f3ff14d5ab5270590300000068b66ba122c93fa702000000fbc577b9d747efd60100000001000000010484204765742074686520636861696e27732063757272656e742076657273696f6e2e28535335385072656669780d01082a0014a8205468652064657369676e61746564205353353820707265666978206f66207468697320636861696e2e0039012054686973207265706c6163657320746865202273733538466f726d6174222070726f7065727479206465636c6172656420696e2074686520636861696e20737065632e20526561736f6e20697331012074686174207468652072756e74696d652073686f756c64206b6e6f772061626f7574207468652070726566697820696e206f7264657220746f206d616b6520757365206f662069742061737020616e206964656e746966696572206f662074686520636861696e2e01110100006052616e646f6d6e657373436f6c6c656374697665466c6970016052616e646f6d6e657373436f6c6c656374697665466c6970043852616e646f6d4d6174657269616c0100150104000c610120536572696573206f6620626c6f636b20686561646572732066726f6d20746865206c61737420383120626c6f636b73207468617420616374732061732072616e646f6d2073656564206d6174657269616c2e2054686973610120697320617272616e67656420617320612072696e672062756666657220776974682060626c6f636b5f6e756d626572202520383160206265696e672074686520696e64657820696e746f20746865206056656360206f664420746865206f6c6465737420686173682e0000000001001c5574696c69747900011901017c044c626174636865645f63616c6c735f6c696d69741010aa2a000004a820546865206c696d6974206f6e20746865206e756d626572206f6620626174636865642063616c6c732e01650102002454696d657374616d70012454696d657374616d70080c4e6f7701002c20000000000000000004a0205468652063757272656e742074696d6520666f72207468652063757272656e7420626c6f636b2e24446964557064617465010078040010d82057686574686572207468652074696d657374616d7020686173206265656e207570646174656420696e207468697320626c6f636b2e00550120546869732076616c7565206973207570646174656420746f206074727565602075706f6e207375636365737366756c207375626d697373696f6e206f6620612074696d657374616d702062792061206e6f64652e4501204974206973207468656e20636865636b65642061742074686520656e64206f66206561636820626c6f636b20657865637574696f6e20696e2074686520606f6e5f66696e616c697a656020686f6f6b2e0125010004344d696e696d756d506572696f642c200500000000000000188c20546865206d696e696d756d20706572696f64206265747765656e20626c6f636b732e004d012042652061776172652074686174207468697320697320646966666572656e7420746f20746865202a65787065637465642a20706572696f6420746861742074686520626c6f636b2070726f64756374696f6e4901206170706172617475732070726f76696465732e20596f75722063686f73656e20636f6e73656e7375732073797374656d2077696c6c2067656e6572616c6c7920776f726b2077697468207468697320746f61012064657465726d696e6520612073656e7369626c6520626c6f636b2074696d652e20466f72206578616d706c652c20696e2074686520417572612070616c6c65742069742077696c6c20626520646f75626c6520746869737020706572696f64206f6e2064656661756c742073657474696e67732e0003002042616c616e636573012042616c616e6365731c34546f74616c49737375616e6365010018400000000000000000000000000000000004982054686520746f74616c20756e6974732069737375656420696e207468652073797374656d2e40496e61637469766549737375616e636501001840000000000000000000000000000000000409012054686520746f74616c20756e697473206f66206f75747374616e64696e672064656163746976617465642062616c616e636520696e207468652073797374656d2e1c4163636f756e74010104020014010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080600901205468652042616c616e6365732070616c6c6574206578616d706c65206f662073746f72696e67207468652062616c616e6365206f6620616e206163636f756e742e00282023204578616d706c650034206060606e6f636f6d70696c65b02020696d706c2070616c6c65745f62616c616e6365733a3a436f6e66696720666f722052756e74696d65207b19022020202074797065204163636f756e7453746f7265203d2053746f726167654d61705368696d3c53656c663a3a4163636f756e743c52756e74696d653e2c206672616d655f73797374656d3a3a50726f76696465723c52756e74696d653e2c204163636f756e7449642c2053656c663a3a4163636f756e74446174613c42616c616e63653e3e0c20207d102060606000150120596f752063616e20616c736f2073746f7265207468652062616c616e6365206f6620616e206163636f756e7420696e20746865206053797374656d602070616c6c65742e00282023204578616d706c650034206060606e6f636f6d70696c65b02020696d706c2070616c6c65745f62616c616e6365733a3a436f6e66696720666f722052756e74696d65207b7420202074797065204163636f756e7453746f7265203d2053797374656d0c20207d102060606000510120427574207468697320636f6d657320776974682074726164656f6666732c2073746f72696e67206163636f756e742062616c616e63657320696e207468652073797374656d2070616c6c65742073746f7265736d0120606672616d655f73797374656d60206461746120616c6f6e677369646520746865206163636f756e74206461746120636f6e747261727920746f2073746f72696e67206163636f756e742062616c616e63657320696e207468652901206042616c616e636573602070616c6c65742c20776869636820757365732061206053746f726167654d61706020746f2073746f72652062616c616e6365732064617461206f6e6c792e4101204e4f54453a2054686973206973206f6e6c79207573656420696e207468652063617365207468617420746869732070616c6c6574206973207573656420746f2073746f72652062616c616e6365732e144c6f636b7301010402006901040008b820416e79206c6971756964697479206c6f636b73206f6e20736f6d65206163636f756e742062616c616e6365732e2501204e4f54453a2053686f756c64206f6e6c79206265206163636573736564207768656e2073657474696e672c206368616e67696e6720616e642066726565696e672061206c6f636b2e20526573657276657301010402007901040004a4204e616d6564207265736572766573206f6e20736f6d65206163636f756e742062616c616e6365732e14486f6c6473010104020085010400046c20486f6c6473206f6e206163636f756e742062616c616e6365732e1c467265657a6573010104020099010400048820467265657a65206c6f636b73206f6e206163636f756e742062616c616e6365732e012901018810484578697374656e7469616c4465706f736974184000ca9a3b00000000000000000000000020410120546865206d696e696d756d20616d6f756e7420726571756972656420746f206b65657020616e206163636f756e74206f70656e2e204d5553542042452047524541544552205448414e205a45524f2100590120496620796f75202a7265616c6c792a206e65656420697420746f206265207a65726f2c20796f752063616e20656e61626c652074686520666561747572652060696e7365637572655f7a65726f5f65646020666f72610120746869732070616c6c65742e20486f77657665722c20796f7520646f20736f20617420796f7572206f776e207269736b3a20746869732077696c6c206f70656e2075702061206d616a6f7220446f5320766563746f722e590120496e206361736520796f752068617665206d756c7469706c6520736f7572636573206f662070726f7669646572207265666572656e6365732c20796f75206d617920616c736f2067657420756e65787065637465648c206265686176696f757220696620796f7520736574207468697320746f207a65726f2e00f020426f74746f6d206c696e653a20446f20796f757273656c662061206661766f757220616e64206d616b65206974206174206c65617374206f6e6521204d61784c6f636b7310103200000008f420546865206d6178696d756d206e756d626572206f66206c6f636b7320746861742073686f756c64206578697374206f6e20616e206163636f756e742edc204e6f74207374726963746c7920656e666f726365642c20627574207573656420666f722077656967687420657374696d6174696f6e2e2c4d61785265736572766573101032000000040d0120546865206d6178696d756d206e756d626572206f66206e616d656420726573657276657320746861742063616e206578697374206f6e20616e206163636f756e742e284d6178467265657a657310100000000004610120546865206d6178696d756d206e756d626572206f6620696e646976696475616c20667265657a65206c6f636b7320746861742063616e206578697374206f6e20616e206163636f756e7420617420616e792074696d652e01a501040028417574686f72736869700128417574686f72736869700418417574686f720000000400046420417574686f72206f662063757272656e7420626c6f636b2e000000000500485472616e73616374696f6e5061796d656e7401485472616e73616374696f6e5061796d656e7408444e6578744665654d756c7469706c6965720100a90140000064a7b3b6e00d0000000000000000003853746f7261676556657273696f6e0100ad0104000000019004604f7065726174696f6e616c4665654d756c7469706c696572080405545901204120666565206d756c7469706c69657220666f7220604f7065726174696f6e616c602065787472696e7369637320746f20636f6d7075746520227669727475616c207469702220746f20626f6f73742074686569722c20607072696f726974796000510120546869732076616c7565206973206d756c7469706c69656420627920746865206066696e616c5f6665656020746f206f627461696e206120227669727475616c20746970222074686174206973206c61746572f420616464656420746f20612074697020636f6d706f6e656e7420696e20726567756c617220607072696f72697479602063616c63756c6174696f6e732e4d01204974206d65616e732074686174206120604e6f726d616c60207472616e73616374696f6e2063616e2066726f6e742d72756e20612073696d696c61726c792d73697a656420604f7065726174696f6e616c6041012065787472696e736963202877697468206e6f20746970292c20627920696e636c7564696e672061207469702076616c75652067726561746572207468616e20746865207669727475616c207469702e003c20606060727573742c69676e6f726540202f2f20466f7220604e6f726d616c608c206c6574207072696f72697479203d207072696f726974795f63616c6328746970293b0054202f2f20466f7220604f7065726174696f6e616c601101206c6574207669727475616c5f746970203d2028696e636c7573696f6e5f666565202b2074697029202a204f7065726174696f6e616c4665654d756c7469706c6965723bc4206c6574207072696f72697479203d207072696f726974795f63616c6328746970202b207669727475616c5f746970293b1020606060005101204e6f746520746861742073696e636520776520757365206066696e616c5f6665656020746865206d756c7469706c696572206170706c69657320616c736f20746f2074686520726567756c61722060746970605d012073656e74207769746820746865207472616e73616374696f6e2e20536f2c206e6f74206f6e6c7920646f657320746865207472616e73616374696f6e206765742061207072696f726974792062756d702062617365646101206f6e207468652060696e636c7573696f6e5f666565602c2062757420776520616c736f20616d706c6966792074686520696d70616374206f662074697073206170706c69656420746f20604f7065726174696f6e616c6038207472616e73616374696f6e732e000600105375646f01105375646f040c4b6579000000040004842054686520604163636f756e74496460206f6620746865207375646f206b65792e01450101940001b101070024436f6e7472616374730124436f6e7472616374731c305072697374696e65436f64650001040630b501040004cc2041206d617070696e672066726f6d206120636f6e7472616374277320636f6465206861736820746f2069747320636f64652e28436f6465496e666f4f660001040630b901040004e02041206d617070696e672066726f6d206120636f6e7472616374277320636f6465206861736820746f2069747320636f646520696e666f2e144e6f6e636501002c200000000000000000581d0120546869732069732061202a2a6d6f6e6f746f6e69632a2a20636f756e74657220696e6372656d656e746564206f6e20636f6e747261637420696e7374616e74696174696f6e2e0005012054686973206973207573656420696e206f7264657220746f2067656e657261746520756e6971756520747269652069647320666f7220636f6e7472616374732e2901205468652074726965206964206f662061206e657720636f6e74726163742069732063616c63756c617465642066726f6d2068617368286163636f756e745f69642c206e6f6e6365292e350120546865206e6f6e63652069732072657175697265642062656361757365206f74686572776973652074686520666f6c6c6f77696e672073657175656e636520776f756c64206c65616420746f84206120706f737369626c6520636f6c6c6973696f6e206f662073746f726167653a006820312e204372656174652061206e657720636f6e74726163742e6c20322e205465726d696e6174652074686520636f6e74726163742efc20332e20496d6d6564696174656c792072656372656174652074686520636f6e74726163742077697468207468652073616d65206163636f756e745f69642e00450120546869732069732062616420626563617573652074686520636f6e74656e7473206f6620612074726965206172652064656c65746564206c617a696c7920616e64207468657265206d6967687420626559012073746f72616765206f6620746865206f6c6420696e7374616e74696174696f6e207374696c6c20696e206974207768656e20746865206e657720636f6e747261637420697320637265617465642e20506c656173655901206e6f746520746861742077652063616e2774207265706c6163652074686520636f756e7465722062792074686520626c6f636b206e756d6265722062656361757365207468652073657175656e63652061626f766551012063616e2068617070656e20696e207468652073616d6520626c6f636b2e20576520616c736f2063616e2774206b65657020746865206163636f756e7420636f756e74657220696e206d656d6f7279206f6e6c79490120626563617573652073746f7261676520697320746865206f6e6c792077617920746f20636f6d6d756e6963617465206163726f737320646966666572656e742065787472696e7369637320696e20746865302073616d6520626c6f636b2e001c2023204e6f7465003d0120446f206e6f742075736520697420746f2064657465726d696e6520746865206e756d626572206f6620636f6e7472616374732e20497420776f6e27742062652064656372656d656e74656420696664206120636f6e74726163742069732064657374726f7965642e38436f6e7472616374496e666f4f660001040500bd0104000ca82054686520636f6465206173736f6369617465642077697468206120676976656e206163636f756e742e00d02054574f582d4e4f54453a20534146452073696e636520604163636f756e7449646020697320612073656375726520686173682e3444656c6574696f6e51756575650001040510c101040010c8204576696374656420636f6e7472616374732074686174206177616974206368696c6420747269652064656c6574696f6e2e004901204368696c6420747269652064656c6574696f6e2069732061206865617679206f7065726174696f6e20646570656e64696e67206f6e2074686520616d6f756e74206f662073746f72616765206974656d7341012073746f72656420696e207361696420747269652e205468657265666f72652074686973206f7065726174696f6e20697320706572666f726d6564206c617a696c7920696e20606f6e5f69646c65602e5044656c6574696f6e5175657565436f756e7465720100d501200000000000000000084d0120412070616972206f66206d6f6e6f746f6e696320636f756e74657273207573656420746f20747261636b20746865206c617465737420636f6e7472616374206d61726b656420666f722064656c6574696f6ea820616e6420746865206c61746573742064656c6574656420636f6e747261637420696e2071756575652e4c4d6967726174696f6e496e50726f67726573730000d90104000861012041206d6967726174696f6e2063616e207370616e206163726f7373206d756c7469706c6520626c6f636b732e20546869732073746f7261676520646566696e6573206120637572736f7220746f20747261636b207468654d012070726f6772657373206f6620746865206d6967726174696f6e2c20656e61626c696e6720757320746f20726573756d652066726f6d20746865206c61737420636f6d706c6574656420706f736974696f6e2e014901019c30205363686564756c65dd0105050400000010000000200000000040000000000040050a0000eeb013001842e8ca06f129e217f906012aa66b18001882c50a000cbaa609000ce63a13001862ab150018fe095e00188e31130018326f130018262013001882e3130018d694420038b21b100018750f0000b401050003d313424c4952c6dd48002896557900285e9b691e3127d5070082d80d001c0910003664461f9504010900e10204c20bea4649303ada3e1f85047101041e52190785045503048a7c2207a504510f045666491fa504650e042ae8622561272e109473852a328cf260352986b8d890ad51290f005e5f8beead2a72b1511fd527051000191200660e170020e510007ed82e00203d3400ea0f1b0020c91200aedb1a0020ad1200522fe70a3501baa9d502a896c4e309c101155a048ea80a000c7e2a0f00a01a7509000c16b3551fb9289ae0251f2128046820436f7374207363686564756c6520616e64206c696d6974732e384465706f736974506572427974651840404b4c000000000000000000000000001411012054686520616d6f756e74206f662062616c616e636520612063616c6c65722068617320746f2070617920666f7220656163682062797465206f662073746f726167652e001c2023204e6f7465002901204368616e67696e6720746869732076616c756520666f7220616e206578697374696e6720636861696e206d69676874206e65656420612073746f72616765206d6967726174696f6e2e4c44656661756c744465706f7369744c696d697418400000a08fe661000000000000000000000445012046616c6c6261636b2076616c756520746f206c696d6974207468652073746f72616765206465706f7369742069662069742773206e6f74206265696e6720736574206279207468652063616c6c65722e384465706f7369745065724974656d184000e876481700000000000000000000001405012054686520616d6f756e74206f662062616c616e636520612063616c6c65722068617320746f2070617920666f7220656163682073746f72616765206974656d2e001c2023204e6f7465002901204368616e67696e6720746869732076616c756520666f7220616e206578697374696e6720636861696e206d69676874206e65656420612073746f72616765206d6967726174696f6e2e70436f6465486173684c6f636b75704465706f73697450657263656e74ed011000000000104501205468652070657263656e74616765206f66207468652073746f72616765206465706f73697420746861742073686f756c642062652068656c6420666f72207573696e67206120636f646520686173682e610120496e7374616e74696174696e67206120636f6e74726163742c206f722063616c6c696e67205b60636861696e5f657874656e73696f6e3a3a4578743a3a6c6f636b5f64656c65676174655f646570656e64656e6379605d49012070726f74656374732074686520636f64652066726f6d206265696e672072656d6f7665642e20496e206f7264657220746f2070726576656e7420616275736520746865736520616374696f6e7320617265c42070726f746563746564207769746820612070657263656e74616765206f662074686520636f6465206465706f7369742e284d6178436f64654c656e10100000040014c020546865206d6178696d756d206c656e677468206f66206120636f6e747261637420636f646520696e2062797465732e005901205468652076616c75652073686f756c642062652063686f73656e206361726566756c6c792074616b696e6720696e746f20746865206163636f756e7420746865206f766572616c6c206d656d6f7279206c696d6974f020796f75722072756e74696d65206861732c2061732077656c6c20617320746865205b6d6178696d756d20616c6c6f7765642063616c6c737461636b5d012064657074685d28236173736f636961746564747970652e43616c6c537461636b292e204c6f6f6b20696e746f207468652060696e746567726974795f7465737428296020666f7220736f6d6520696e7369676874732e404d617853746f726167654b65794c656e10108000000004e020546865206d6178696d756d20616c6c6f7761626c65206c656e67746820696e20627974657320666f722073746f72616765206b6579732e5c4d617844656c6567617465446570656e64656e6369657310102000000008290120546865206d6178696d756d206e756d626572206f662064656c65676174655f646570656e64656e636965732074686174206120636f6e74726163742063616e206c6f636b2077697468d0205b60636861696e5f657874656e73696f6e3a3a4578743a3a6c6f636b5f64656c65676174655f646570656e64656e6379605d2e5c556e73616665556e737461626c65496e74657266616365780401241101204d616b6520636f6e74726163742063616c6c61626c652066756e6374696f6e73206d61726b65642061732060235b756e737461626c655d6020617661696c61626c652e003d0120436f6e7472616374732074686174207573652060235b756e737461626c655d602066756e6374696f6e7320776f6e27742062652061626c6520746f2062652075706c6f6164656420756e6c657373450120746869732069732073657420746f206074727565602e2054686973206973206f6e6c79206d65616e7420666f7220746573746e65747320616e6420646576206e6f64657320696e206f7264657220746f78206578706572696d656e742077697468206e65772066656174757265732e00282023205761726e696e6700c020446f202a2a6e6f742a2a2073657420746f20607472756560206f6e2070726f64756374696f6e7320636861696e732e444d617844656275674275666665724c656e10100000200004c420546865206d6178696d756d206c656e677468206f66207468652064656275672062756666657220696e2062797465732e2c456e7669726f6e6d656e74f10100102501205479706520746861742062756e646c657320746f67657468657220616c6c207468652072756e74696d6520636f6e666967757261626c6520696e746572666163652074797065732e0035012054686973206973206e6f742061207265616c20636f6e6669672e205765206a757374206d656e74696f6e207468652074797065206865726520617320636f6e7374616e7420736f2074686174f0206974732074797065206170706561727320696e20746865206d657461646174612e204f6e6c792076616c69642076616c756520697320602829602e2841706956657273696f6e11020801000c0901205468652076657273696f6e206f662074686520486f7374466e204150497320746861742061726520617661696c61626c6520696e207468652072756e74696d652e0068204f6e6c792076616c69642076616c756520697320602829602e01150208001841737365747301184173736574731014417373657400010402101902040004542044657461696c73206f6620616e2061737365742e1c4163636f756e74000108020221022502040004e42054686520686f6c64696e6773206f662061207370656369666963206163636f756e7420666f7220612073706563696669632061737365742e24417070726f76616c7300010c0202023102350204000c590120417070726f7665642062616c616e6365207472616e73666572732e2046697273742062616c616e63652069732074686520616d6f756e7420617070726f76656420666f72207472616e736665722e205365636f6e64e82069732074686520616d6f756e74206f662060543a3a43757272656e63796020726573657276656420666f722073746f72696e6720746869732e4901204669727374206b6579206973207468652061737365742049442c207365636f6e64206b657920697320746865206f776e657220616e64207468697264206b6579206973207468652064656c65676174652e204d65746164617461010104021039025000000000000000000000000000000000000000000458204d65746164617461206f6620616e2061737365742e01550101a81c4052656d6f76654974656d734c696d69741010e80300000c5101204d6178206e756d626572206f66206974656d7320746f2064657374726f7920706572206064657374726f795f6163636f756e74736020616e64206064657374726f795f617070726f76616c73602063616c6c2e003901204d75737420626520636f6e6669677572656420746f20726573756c7420696e2061207765696768742074686174206d616b657320656163682063616c6c2066697420696e206120626c6f636b2e3041737365744465706f73697418400000c16ff2862300000000000000000004f82054686520626173696320616d6f756e74206f662066756e64732074686174206d75737420626520726573657276656420666f7220616e2061737365742e4c41737365744163636f756e744465706f736974184000407a10f35a000000000000000000000845012054686520616d6f756e74206f662066756e64732074686174206d75737420626520726573657276656420666f722061206e6f6e2d70726f7669646572206173736574206163636f756e7420746f20626530206d61696e7461696e65642e4c4d657461646174614465706f7369744261736518400080c6a47e8d030000000000000000000451012054686520626173696320616d6f756e74206f662066756e64732074686174206d757374206265207265736572766564207768656e20616464696e67206d6574616461746120746f20796f75722061737365742e584d657461646174614465706f73697450657242797465184000407a10f35a0000000000000000000008550120546865206164646974696f6e616c2066756e64732074686174206d75737420626520726573657276656420666f7220746865206e756d626572206f6620627974657320796f752073746f726520696e20796f757228206d657461646174612e3c417070726f76616c4465706f736974184000407a10f35a000000000000000000000421012054686520616d6f756e74206f662066756e64732074686174206d757374206265207265736572766564207768656e206372656174696e672061206e657720617070726f76616c2e2c537472696e674c696d697410103200000004e020546865206d6178696d756d206c656e677468206f662061206e616d65206f722073796d626f6c2073746f726564206f6e2d636861696e2e0141020900042d01210145025d022048436865636b4e6f6e5a65726f53656e64657261028440436865636b5370656356657273696f6e65021038436865636b547856657273696f6e69021030436865636b47656e657369736d023038436865636b4d6f7274616c69747971023028436865636b4e6f6e63657902842c436865636b5765696768747d0284604368617267655472616e73616374696f6e5061796d656e74810284a42c10436f72650c1c76657273696f6e00f804902052657475726e73207468652076657273696f6e206f66207468652072756e74696d652e34657865637574655f626c6f636b0414626c6f636b850284046420457865637574652074686520676976656e20626c6f636b2e40696e697469616c697a655f626c6f636b041868656164657289028404a820496e697469616c697a65206120626c6f636b20776974682074686520676976656e206865616465722e042101205468652060436f7265602072756e74696d65206170692074686174206576657279205375627374726174652072756e74696d65206e6565647320746f20696d706c656d656e742e204d657461646174610c206d65746164617461009502048c2052657475726e7320746865206d65746164617461206f6620612072756e74696d652e4c6d657461646174615f61745f76657273696f6e041c76657273696f6e10990210a42052657475726e7320746865206d65746164617461206174206120676976656e2076657273696f6e2e0005012049662074686520676976656e206076657273696f6e602069736e277420737570706f727465642c20746869732077696c6c2072657475726e20604e6f6e65602e750120557365205b6053656c663a3a6d657461646174615f76657273696f6e73605d20746f2066696e64206f75742061626f757420737570706f72746564206d657461646174612076657273696f6e206f66207468652072756e74696d652e446d657461646174615f76657273696f6e73009d020ca42052657475726e732074686520737570706f72746564206d657461646174612076657273696f6e732e00c020546869732063616e206265207573656420746f2063616c6c20606d657461646174615f61745f76657273696f6e602e0401012054686520604d65746164617461602061706920747261697420746861742072657475726e73206d6574616461746120666f72207468652072756e74696d652e30426c6f636b4275696c646572103c6170706c795f65787472696e736963042465787472696e7369638d02a102106c204170706c792074686520676976656e2065787472696e7369632e0039012052657475726e7320616e20696e636c7573696f6e206f7574636f6d652077686963682073706563696669657320696620746869732065787472696e73696320697320696e636c7564656420696e4c207468697320626c6f636b206f72206e6f742e3866696e616c697a655f626c6f636b00890204682046696e697368207468652063757272656e7420626c6f636b2e4c696e686572656e745f65787472696e736963730420696e686572656e74b1029102043d012047656e657261746520696e686572656e742065787472696e736963732e2054686520696e686572656e7420646174612077696c6c20766172792066726f6d20636861696e20746f20636861696e2e3c636865636b5f696e686572656e74730814626c6f636b85021064617461b102c10204550120436865636b20746861742074686520696e686572656e7473206172652076616c69642e2054686520696e686572656e7420646174612077696c6c20766172792066726f6d20636861696e20746f20636861696e2e047101205468652060426c6f636b4275696c646572602061706920747261697420746861742070726f7669646573207468652072657175697265642066756e6374696f6e616c69747920666f72206275696c64696e67206120626c6f636b2e585461676765645472616e73616374696f6e5175657565045076616c69646174655f7472616e73616374696f6e0c18736f75726365c5020874788d0228626c6f636b5f6861736830c90224682056616c696461746520746865207472616e73616374696f6e2e0065012054686973206d6574686f6420697320696e766f6b656420627920746865207472616e73616374696f6e20706f6f6c20746f206c6561726e2064657461696c732061626f757420676976656e207472616e73616374696f6e2e45012054686520696d706c656d656e746174696f6e2073686f756c64206d616b65207375726520746f207665726966792074686520636f72726563746e657373206f6620746865207472616e73616374696f6e4d0120616761696e73742063757272656e742073746174652e2054686520676976656e2060626c6f636b5f686173686020636f72726573706f6e647320746f207468652068617368206f662074686520626c6f636b7c207468617420697320757365642061732063757272656e742073746174652e004501204e6f7465207468617420746869732063616c6c206d617920626520706572666f726d65642062792074686520706f6f6c206d756c7469706c652074696d657320616e64207472616e73616374696f6e73a4206d6967687420626520766572696669656420696e20616e7920706f737369626c65206f726465722e044d012054686520605461676765645472616e73616374696f6e5175657565602061706920747261697420666f7220696e746572666572696e67207769746820746865207472616e73616374696f6e2071756575652e444f6666636861696e576f726b6572417069043c6f6666636861696e5f776f726b6572041868656164657289028404c82053746172747320746865206f66662d636861696e207461736b20666f7220676976656e20626c6f636b206865616465722e046420546865206f6666636861696e20776f726b6572206170692e2c53657373696f6e4b657973085467656e65726174655f73657373696f6e5f6b657973041073656564d102341c15012047656e6572617465206120736574206f662073657373696f6e206b6579732077697468206f7074696f6e616c6c79207573696e672074686520676976656e20736565642e090120546865206b6579732073686f756c642062652073746f7265642077697468696e20746865206b657973746f7265206578706f736564207669612072756e74696d653c2065787465726e616c69746965732e00b0205468652073656564206e6565647320746f20626520612076616c69642060757466386020737472696e672e00d02052657475726e732074686520636f6e636174656e61746564205343414c4520656e636f646564207075626c6963206b6579732e4c6465636f64655f73657373696f6e5f6b657973041c656e636f64656434d5020c98204465636f64652074686520676976656e207075626c69632073657373696f6e206b6579732e00dc2052657475726e7320746865206c697374206f66207075626c696320726177207075626c6963206b657973202b206b657920747970652e04682053657373696f6e206b6579732072756e74696d65206170692e3c4163636f756e744e6f6e636541706904346163636f756e745f6e6f6e6365041c6163636f756e74001004c0204765742063757272656e74206163636f756e74206e6f6e6365206f6620676976656e20604163636f756e744964602e0480205468652041504920746f207175657279206163636f756e74206e6f6e63652e545472616e73616374696f6e5061796d656e74417069102871756572795f696e666f080c7578748d020c6c656e10e502004471756572795f6665655f64657461696c73080c7578748d020c6c656e10e902004c71756572795f7765696768745f746f5f66656504187765696768742418004c71756572795f6c656e6774685f746f5f66656504186c656e67746810180000645472616e73616374696f6e5061796d656e7443616c6c417069103c71756572795f63616c6c5f696e666f081063616c6c21010c6c656e10e50204490120517565727920696e666f726d6174696f6e206f66206120646973706174636820636c6173732c207765696768742c20616e6420666565206f66206120676976656e20656e636f646564206043616c6c602e5871756572795f63616c6c5f6665655f64657461696c73081063616c6c21010c6c656e10e90204b4205175657279206665652064657461696c73206f66206120676976656e20656e636f646564206043616c6c602e4c71756572795f7765696768745f746f5f6665650418776569676874241804010120517565727920746865206f7574707574206f66207468652063757272656e742060576569676874546f4665656020676976656e20736f6d6520696e7075742e4c71756572795f6c656e6774685f746f5f66656504186c656e677468101804010120517565727920746865206f7574707574206f66207468652063757272656e7420604c656e677468546f4665656020676976656e20736f6d6520696e7075742e0030436f6e747261637473417069101063616c6c18186f726967696e001064657374001476616c756518246761735f6c696d6974e85473746f726167655f6465706f7369745f6c696d6974f50228696e7075745f6461746134f9020cf420506572666f726d20612063616c6c2066726f6d206120737065636966696564206163636f756e7420746f206120676976656e20636f6e74726163742e008820536565205b6063726174653a3a50616c6c65743a3a626172655f63616c6c605d2e2c696e7374616e74696174651c186f726967696e001476616c756518246761735f6c696d6974e85473746f726167655f6465706f7369745f6c696d6974f50210636f646515031064617461341073616c743419030c7020496e7374616e74696174652061206e657720636f6e74726163742e00a42053656520605b63726174653a3a50616c6c65743a3a626172655f696e7374616e74696174655d602e2c75706c6f61645f636f646510186f726967696e0010636f6465345473746f726167655f6465706f7369745f6c696d6974f5022c64657465726d696e69736d510125030ce82055706c6f6164206e657720636f646520776974686f757420696e7374616e74696174696e67206120636f6e74726163742066726f6d2069742e00a420536565205b6063726174653a3a50616c6c65743a3a626172655f75706c6f61645f636f6465605d2e2c6765745f73746f72616765081c61646472657373000c6b6579342d0314bc205175657279206120676976656e2073746f72616765206b657920696e206120676976656e20636f6e74726163742e004d012052657475726e7320604f6b28536f6d65285665633c75383e292960206966207468652073746f726167652076616c75652065786973747320756e6465722074686520676976656e206b657920696e20746865610120737065636966696564206163636f756e7420616e6420604f6b284e6f6e65296020696620697420646f65736e27742e20496620746865206163636f756e7420737065636966696564206279207468652061646472657373090120646f65736e27742065786973742c206f7220646f65736e27742068617665206120636f6e7472616374207468656e2060457272602069732072657475726e65642e04bc2054686520415049207573656420746f206472792d72756e20636f6e747261637420696e746572616374696f6e732e3847656e657369734275696c64657208546372656174655f64656661756c745f636f6e6669670034100d012043726561746573207468652064656661756c74206047656e65736973436f6e6669676020616e642072657475726e732069742061732061204a534f4e20626c6f622e00b10120546869732066756e6374696f6e20696e7374616e746961746573207468652064656661756c74206047656e65736973436f6e666967602073747275637420666f72207468652072756e74696d6520616e642073657269616c697a657320697420696e746f2061204a534f4e810120626c6f622e2049742072657475726e73206120605665633c75383e6020636f6e7461696e696e6720746865204a534f4e20726570726573656e746174696f6e206f66207468652064656661756c74206047656e65736973436f6e666967602e306275696c645f636f6e66696704106a736f6e3435031c6d01204275696c64206047656e65736973436f6e666967602066726f6d2061204a534f4e20626c6f62206e6f74207573696e6720616e792064656661756c747320616e642073746f726520697420696e207468652073746f726167652e00ad0120546869732066756e6374696f6e20646573657269616c697a6573207468652066756c6c206047656e65736973436f6e666967602066726f6d2074686520676976656e204a534f4e20626c6f6220616e64207075747320697420696e746f207468652073746f726167652ea501204966207468652070726f7669646564204a534f4e20626c6f6220697320696e636f7272656374206f7220696e636f6d706c657465206f722074686520646573657269616c697a6174696f6e206661696c732c20616e206572726f722069732072657475726e65642e1101204974206973207265636f6d6d656e64656420746f206c6f6720616e79206572726f727320656e636f756e746572656420647572696e67207468652070726f636573732e009d0120506c65617365206e6f746520746861742070726f7669646564206a736f6e20626c6f62206d75737420636f6e7461696e20616c6c206047656e65736973436f6e66696760206669656c64732c206e6f2064656661756c74732077696c6c20626520757365642e04cc2041504920746f20696e74657261637420776974682047656e65736973436f6e66696720666f72207468652072756e74696d65210150390300'; + +export default substrateContractMetadata; diff --git a/packages/contracts/src/__tests__/utils.spec.ts b/packages/contracts/src/__tests__/utils.spec.ts index 3a7063cd..ada2c8db 100644 --- a/packages/contracts/src/__tests__/utils.spec.ts +++ b/packages/contracts/src/__tests__/utils.spec.ts @@ -3,7 +3,7 @@ import { describe, expect, it } from 'vitest'; import { ContractTypeDef} from '../types/index.js'; import { extractContractTypes, normalizeContractTypeDef, normalizeLabel, parseRawMetadata } from '../utils.js'; // @ts-ignore -import flipperRaw from './flipper.json' assert { type: "json" }; +import flipperRaw from './flipper_v4.json' assert { type: "json" }; describe('utils', () => { describe('normalizeContractTypeDef', () => {