@latticexyz/world-modules 2.0.0-transaction-context-af4b168c → 2.0.0-transaction-context-98ef570f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/AccessManagementSystem.sol/AccessManagementSystem.json +1 -1
- package/out/BalanceTransferSystem.sol/BalanceTransferSystem.json +1 -1
- package/out/BatchCallSystem.sol/BatchCallSystem.json +1 -1
- package/out/ERC20.t.sol/ERC20Test.json +1 -1
- package/out/ERC20Module.sol/ERC20Module.json +1 -1
- package/out/ERC721.t.sol/ERC721Recipient.json +1 -1
- package/out/ERC721.t.sol/ERC721Test.json +1 -1
- package/out/ERC721.t.sol/ERC721TokenReceiver.json +1 -1
- package/out/ERC721.t.sol/NonERC721Recipient.json +1 -1
- package/out/ERC721.t.sol/RevertingERC721Recipient.json +1 -1
- package/out/ERC721.t.sol/WrongReturnDataERC721Recipient.json +1 -1
- package/out/ERC721Module.sol/ERC721Module.json +1 -1
- package/out/InitModule.sol/InitModule.json +1 -1
- package/out/KeysInTableModule.sol/KeysInTableModule.json +1 -1
- package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.json +1 -1
- package/out/KeysWithValueModule.sol/KeysWithValueModule.json +1 -1
- package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.json +1 -1
- package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.json +1 -1
- package/out/Puppet.sol/Puppet.json +1 -1
- package/out/PuppetModule.sol/PuppetModule.json +1 -1
- package/out/PuppetModule.t.sol/PuppetModuleTest.json +1 -1
- package/out/PuppetModule.t.sol/PuppetTestSystem.json +1 -1
- package/out/RegistrationSystem.sol/RegistrationSystem.json +1 -1
- package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +1 -1
- package/out/StandardDelegationsModule.t.sol/StandardDelegationsModuleTest.json +1 -1
- package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.json +1 -1
- package/out/SystemSwitch.t.sol/EchoSystem.json +1 -1
- package/out/SystemSwitch.t.sol/SystemSwitchTest.json +1 -1
- package/out/UniqueEntityModule.sol/UniqueEntityModule.json +1 -1
- package/out/UniqueEntityModule.t.sol/UniqueEntityModuleTest.json +1 -1
- package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.json +1 -1
- package/out/World.sol/World.json +1 -1
- package/out/World.t.sol/EchoSystemHook.json +1 -1
- package/out/World.t.sol/IWorldTestSystem.json +1 -1
- package/out/World.t.sol/PayableFallbackSystem.json +1 -1
- package/out/World.t.sol/RevertSystemHook.json +1 -1
- package/out/World.t.sol/WorldTest.json +1 -1
- package/out/World.t.sol/WorldTestSystem.json +1 -1
- package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.json +1 -1
- package/out/query.t.sol/QueryTest.json +1 -1
- package/package.json +8 -8
@@ -1 +1 @@
|
|
1
|
-
{"abi":[{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"sender","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"value","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"registerStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"},{"name":"enabledHooksBitmap","type":"uint8","internalType":"uint8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerTable","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"},{"name":"keySchema","type":"bytes32","internalType":"Schema"},{"name":"valueSchema","type":"bytes32","internalType":"Schema"},{"name":"keyNames","type":"string[]","internalType":"string[]"},{"name":"fieldNames","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"function","name":"unregisterStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"PackedCounter"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"PackedCounter"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"FieldLayoutLib_Empty","inputs":[]},{"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PackedCounter_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType","inputs":[]},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_TableNotFound","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"UnauthorizedCallContext","inputs":[]},{"type":"error","name":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_AlreadyInitialized","inputs":[]},{"type":"error","name":"World_CallbackNotAllowed","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_DelegationNotFound","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"delegatee","type":"address","internalType":"address"}]},{"type":"error","name":"World_DirectCallToSystemForbidden","inputs":[{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_FunctionSelectorAlreadyExists","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_FunctionSelectorNotFound","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InsufficientBalance","inputs":[{"name":"balance","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"World_InterfaceNotSupported","inputs":[{"name":"contractAddress","type":"address","internalType":"address"},{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"World_InvalidResourceId","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceAlreadyExists","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceNotFound","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_SystemAlreadyExists","inputs":[{"name":"system","type":"address","internalType":"address"}]},{"type":"error","name":"World_UnlimitedDelegationNotAllowed","inputs":[]}],"bytecode":{"object":"0x60a060405230608052348015610013575f80fd5b506080516131cc61002c5f395f6103a101526131cc5ff3fe608060405234801561000f575f80fd5b506004361061007a575f3560e01c8063119df25f11610058578063119df25f146100ce57806345ec9354146100fb578063530f4b601461010e578063e1af802c14610121575f80fd5b806301ffc9a71461007e57806305609129146100a65780630ba51f49146100bb575b5f80fd5b61009161008c3660046129f0565b610129565b60405190151581526020015b60405180910390f35b6100b96100b4366004612a52565b6101c1565b005b6100b96100c9366004612ac4565b6101e8565b6100d66102da565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161009d565b604051601f19360135815260200161009d565b6100b961011c366004612b53565b6102e8565b6100d6610381565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b6101c961038a565b6101da826101d56102da565b6103fb565b6101e482826104b6565b5050565b6101f061038a565b5f6101fa896104e1565b6fffffffffffffffffffffffffffffffff191603610259578761021c896104f7565b6040517fe4ac069e000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b60405180910390fd5b6102a47f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008a1617610624565b6102b0886101d56102da565b6102d0888888886102c1888a612c3f565b6102cb8789612c3f565b610672565b5050505050505050565b5f6102e3610ad3565b905090565b6102f061038a565b61031a827f1873396a00000000000000000000000000000000000000000000000000000000610b05565b6103657f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610624565b610371836101d56102da565b61037c838383610b85565b505050565b5f6102e3610c73565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630036103f9576040517f9f03a02600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b73ffffffffffffffffffffffffffffffffffffffff811661045d7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610c7c565b73ffffffffffffffffffffffffffffffffffffffff16146101e457610481826104f7565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610250929190612d0b565b6101e47f746273746f726500000000000000000053746f7265486f6f6b730000000000008383610d15565b5f6104ee60706010612d56565b9190911b919050565b606081601081901b5f610509836104e1565b9050827fffffffffffffffffffffffffffff0000000000000000000000000000000000008316156105645761055f7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610e53565b61059b565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff198316156105c2576105bd83610e53565b6105f9565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b60405160200161060b93929190612d69565b6040516020818303038152906040529350505050919050565b61062d81610edc565b61066f578061063b826104f7565b6040517ffbf10ce6000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b50565b613a3160f11b867fffff00000000000000000000000000000000000000000000000000000000000016148015906106eb57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561074c57613a3160f11b868760405160200161070a91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610250939291600401612df6565b61075585610f76565b6107608460016111b8565b61076a835f6111b8565b60e084901c60e885901c0160ff168251146107ca5760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1681511461082a5760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146108a25760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b6108ab85611355565b6108b484611355565b14610906576108c285611355565b6108cb84611355565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b61090f85611386565b61091884611386565b1461096a5761092685611386565b61092f84611386565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b5f5b61097586611355565b811015610a105761099f61098985836113a2565b60c581111561099a5761099a612e36565b6113c9565b6008601b8390030287901c60ff1614610a08576008601b8290030286901c60ff166109cd61098986846113a2565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60010161096c565b50610a1a86610edc565b15610a74578586604051602001610a3391815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b610ac08686868686604051602001610a8c9190612e4a565b60405160208183030381529060405286604051602001610aac9190612e4a565b604051602081830303815290604052611421565b610acb866001611500565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610b025750335b90565b610b0f82826115b5565b6101e4576040517f74b5e6ff00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201527fffffffff0000000000000000000000000000000000000000000000000000000082166024820152604401610250565b613a3160f11b837fffff0000000000000000000000000000000000000000000000000000000000001614610bcd57613a3160f11b838460405160200161070a91815260200190565b610bd683610edc565b610c2f578283604051602001610bee91815260200190565b60408051601f19818403018152908290527f41e713ad0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b61037c837fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606085901b166bff0000000000000000000000605885901b16176115d0565b5f6102e3611685565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610cb357610cb3612eca565b60209081029190910101525f610d0a7f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006116d0565b60601c949350505050565b5f610d208484611705565b90505f815167ffffffffffffffff811115610d3d57610d3d612bfa565b604051908082528060200260200182016040528015610d66578160200160208202803683370190505b5090505f805b8351811015610e44578473ffffffffffffffffffffffffffffffffffffffff16610dbd858381518110610da157610da1612eca565b60200260200101516affffffffffffffffffffff191660601c90565b73ffffffffffffffffffffffffffffffffffffffff1614610e3c57838181518110610dea57610dea612eca565b6020026020010151838381518110610e0457610e04612eca565b7fffffffffffffffffffffffffffffffffffffffffff0000000000000000000000909216602092830291909101909101526001909101905b600101610d6c565b50808252610acb86868461176b565b60605f5b6010811015610ea8576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615610ea857600101610e57565b604080516fffffffffffffffffffffffffffffffff198516602082015281516030909101909152818152805b949350505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610f1357610f13612eca565b60209081029190910101525f610f6a7f746273746f72650000000000000000005265736f75726365496473000000000083837e010100010000000000000000000000000000000000000000000000000000006116d0565b9050610ed48160f81c90565b80610fad576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610fb782611386565b90506005811115610ffe576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610250565b5f61100883611355565b90505f6110158383612d56565b9050601c81111561105c576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610250565b5f805b838110156111055760ff601b82900360080287901c165f8190036110b2576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b60208111156110f0576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b6110fa8184612d56565b92505060010161105f565b5061110f856117c5565b811461115b5761111e856117c5565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610250565b825b601c811015610acb5760ff601b82900360080287901c1680156111af576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b5060010161115d565b801580156111c4575081155b156111e457604051635318beb960e01b81525f6004820152602401610250565b5f6111ee83611386565b9050600581111561121557604051635318beb960e01b815260048101829052602401610250565b5f61121f84611355565b90505f61122c8383612d56565b9050601c81111561125357604051635318beb960e01b815260048101829052602401610250565b5f805b838110156112bc575f61126c61098989846113a2565b9050805f036112a7576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6112b18184612d56565b925050600101611256565b506112c6866117c5565b81146112f1576112d5866117c5565b604051635318beb960e01b815260040161025091815260200190565b825b8281101561134c575f61130961098989846113a2565b90508015611343576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016112f3565b50505050505050565b5f6008600161136660026020612ede565b6113709190612ede565b61137a9190612ef1565b8260ff911c1692915050565b5f600860018061139860026020612ede565b6113669190612ede565b5f601b8290036008028360ff911c1660c58111156113c2576113c2612e36565b9392505050565b5f808260c58111156113dd576113dd612e36565b60ff16905060618110156113f757601f1660010192915050565b60618360c581111561140b5761140b612e36565b036114195750601492915050565b505f92915050565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f61145784846117e7565b90505f6114648585611803565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f8151811061149c5761149c612eca565b60209081029190910101526114f47f746273746f72650000000000000000005461626c657300000000000000000000828686867e6003022020200000000000000000000000000000000000000000000000000061182f565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061153457611534612eca565b60200260200101818152505061037c7f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f8560405160200161158091151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611b51565b5f6115bf83611b6d565b80156113c257506113c28383611bd0565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061160457611604612eca565b60200260200101818152505061037c7f746273746f726500000000000000000053746f7265486f6f6b730000000000005f1b825f8560405160200161167191907fffffffffffffffffffffffffffffffffffffffffff000000000000000000000091909116815260150190565b604051602081830303815290604052611c9c565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f9073ffffffffffffffffffffffffffffffffffffffff16806116cb573391505090565b919050565b5f6116fc6116de8686611cd4565b60ff858116601b0360080285901c166116f78587611d29565b611d61565b95945050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061173d5761173d612eca565b6020026020010181815250505f61175585835f611db1565b90506116fc611766825f8451611dea565b611e76565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061179f5761179f612eca565b6020026020010181815250506117bf84825f6117ba86611e85565b611e94565b50505050565b5f60086117d460026020612ede565b6117de9190612ef1565b9190911c919050565b815181515f9181810160389190911b1760609190911b176113c2565b60608282604051602001611818929190612f08565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036118bb57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516118ae9493929190612f70565b60405180910390a2610acb565b5f6118c587611ecc565b90505f5b8151811015611997575f8282815181106118e5576118e5612eca565b602002602001015190506119116001826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561198e576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611960908c908c908c908c908c908c90600401612fae565b5f604051808303815f87803b158015611977575f80fd5b505af1158015611989573d5f803e3d5ffd5b505050505b506001016118c9565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516119ce9493929190612f70565b60405180910390a25f6119e18888611cd4565b90505f6020870190506119f7825f895184611f69565b5f611a0185611386565b1115611a81575f611a128a8a612024565b87815590506020860191505f805f5b611a2a88611386565b8160ff161015611a7c57611a3f8d8d83612079565b9250611a5a8a8260ff166028026038011c64ffffffffff1690565b9150611a68835f8488611f69565b611a728286612d56565b9450600101611a21565b505050505b5f5b83518110156114f4575f848281518110611a9f57611a9f612eca565b60200260200101519050611acb6002826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15611b48576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611b1a908e908e908e908e908e908e90600401612fae565b5f604051808303815f87803b158015611b31575f80fd5b505af1158015611b43573d5f803e3d5ffd5b505050505b50600101611a83565b611b668585611b608487611d29565b856120f7565b5050505050565b5f611b98827f01ffc9a700000000000000000000000000000000000000000000000000000000611bd0565b80156101bb5750611bc9827fffffffff00000000000000000000000000000000000000000000000000000000611bd0565b1592915050565b6040517fffffffff00000000000000000000000000000000000000000000000000000000821660248201525f90819060440160408051601f19818403018152919052602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a70000000000000000000000000000000000000000000000000000000017815282519293505f9283928392909183918a617530fa92503d91505f519050828015611c86575060208210155b8015611c9157505f81115b979650505050505050565b5f611ca78585612382565b90505f611cc3828560ff166028026038011c64ffffffffff1690565b9050610acb868686845f8888612394565b5f8282604051602001611ce8929190613006565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff16811015611d5957611d4f60ff601b83900360080287901c1683612d56565b9150600101611d2d565b509392505050565b5f60208210611d8657602082048401935060208281611d8257611d82613040565b0691505b508254600882021b602082900380841115611d59576001850154600882021c82179150509392505050565b6060610ed4611dc1858585612079565b5f611de585611dd08989612382565b9060ff166028026038011c64ffffffffff1690565b612759565b5f81831180611df95750835182115b15611e36578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161025093929190613054565b60208401611e448482612d56565b90505f611e518585612ede565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6113c28360155f61277c565b6060816113c28160155f6127f4565b5f611e9f8585612382565b90505f611ebb828560ff166028026038011c64ffffffffff1690565b9050610acb8686865f858888612394565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110611f0457611f04612eca565b60209081029190910101525f611f3b7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611db1565b9050610ed4611766825f8451611dea565b5f8160ff1682611f5c8560581c90565b1660ff1614905092915050565b8215611fe15760208310611f9357602083048401935060208381611f8f57611f8f613040565b0692505b8215611fe15760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611fd25750506117bf565b50600194909401939182900391015b5b602082106120035780518455600190930192601f1990910190602001611fe2565b81156117bf575f5f19600884021c8554835182191691161785555050505050565b5f8282604051602001612038929190613006565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f838360405160200161208d929190613006565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361218157837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161217493929190613078565b60405180910390a26117bf565b5f61218c8585611cd4565b90505f61219886611ecc565b90505f5b8151811015612266575f8282815181106121b8576121b8612eca565b602002602001015190506121e46004826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561225d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061222f908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612246575f80fd5b505af1158015612258573d5f803e3d5ffd5b505050505b5060010161219c565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161229b93929190613078565b60405180910390a26122b6828565ffffffffffff1685612846565b5f5b815181101561134c575f8282815181106122d4576122d4612eca565b602002602001015190506123006008826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15612379576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061234b908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612362575f80fd5b505af1158015612374573d5f803e3d5ffd5b505050505b506001016122b8565b5f6113c26123908484612024565b5490565b613a3160f11b877fffff00000000000000000000000000000000000000000000000000000000000016146123dc57613a3160f11b878860405160200161070a91815260200190565b5f6123f6828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff168361240e9190612ede565b6124189190612d56565b905080821415801561243a57508161243086886130ec565b64ffffffffff1614155b1561248a576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610250565b818664ffffffffff1611156124db576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610250565b5f6124e784898461285c565b90505f6124f38b611ecc565b90505f5b81518110156125c4575f82828151811061251357612513612eca565b6020026020010151905061253f6010826affffffffffffffffffffff1916611f4c90919063ffffffff16565b156125bb57606081901c73ffffffffffffffffffffffffffffffffffffffff166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b815260040161258d9796959493929190613111565b5f604051808303815f87803b1580156125a4575f80fd5b505af11580156125b6573d5f803e3d5ffd5b505050505b506001016124f7565b5064ffffffffff88165f5b8a60ff168160ff161015612602576125f6878260ff166028026038011c64ffffffffff1690565b909101906001016125cf565b508b7faa63765a776145e5e6492f471ae097dfed11cd57a61bc2679dd43180422385b48c838b878c60405161263b95949392919061316e565b60405180910390a25082841461265b575f6126568c8c612024565b839055505b5f6126678c8c8c612079565b905061267b818a64ffffffffff1689612846565b505f5b815181101561274b575f82828151811061269a5761269a612eca565b602002602001015190506126c66020826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561274257606081901c73ffffffffffffffffffffffffffffffffffffffff1663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016127149796959493929190613111565b5f604051808303815f87803b15801561272b575f80fd5b505af115801561273d573d5f803e3d5ffd5b505050505b5060010161267e565b505050505050505050505050565b60405160208101601f19603f8484010116604052828252611d5985858584612929565b60605f6127898560801c90565b90506fffffffffffffffffffffffffffffffff85165f8582816127ae576127ae613040565b0490506040519350602084016020820281016040528185525f5b828110156127e8578451871c8252938701936020909101906001016127c8565b50505050509392505050565b82516060905f6128048583612ef1565b9050604051925060208301601f19603f83860101166040528184525f602088015b848210156127e8578051871b83529187019160019190910190602001612825565b61037c838383516128578560200190565b611f69565b5f64ffffffffff82111561289f576040517f4767058800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff168085106128d157808503820191506128d9565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b82156129ad57602083106129535760208304840193506020838161294f5761294f613040565b0692505b82156129ad5760208390035f8184101561297457505f19600884021c61297d565b505f19600882021c5b8554600886021b81845116821982161784525081841161299e5750506117bf565b50600194909401939182900391015b5b602082106129cf5783548152600190930192601f19909101906020016129ae565b81156117bf575f5f19600884021c8251865482191691161782525050505050565b5f60208284031215612a00575f80fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146113c2575f80fd5b803573ffffffffffffffffffffffffffffffffffffffff811681146116cb575f80fd5b5f8060408385031215612a63575f80fd5b82359150612a7360208401612a2f565b90509250929050565b5f8083601f840112612a8c575f80fd5b50813567ffffffffffffffff811115612aa3575f80fd5b6020830191508360208260051b8501011115612abd575f80fd5b9250929050565b5f805f805f805f8060c0898b031215612adb575f80fd5b88359750602089013596506040890135955060608901359450608089013567ffffffffffffffff80821115612b0e575f80fd5b612b1a8c838d01612a7c565b909650945060a08b0135915080821115612b32575f80fd5b50612b3f8b828c01612a7c565b999c989b5096995094979396929594505050565b5f805f60608486031215612b65575f80fd5b83359250612b7560208501612a2f565b9150604084013560ff81168114612b8a575f80fd5b809150509250925092565b5f5b83811015612baf578181015183820152602001612b97565b50505f910152565b5f8151808452612bce816020860160208601612b95565b601f01601f19169290920160200192915050565b828152604060208201525f610ed46040830184612bb7565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612c3757612c37612bfa565b604052919050565b5f67ffffffffffffffff80841115612c5957612c59612bfa565b8360051b6020612c6a818301612c0e565b868152918501918181019036841115612c81575f80fd5b865b84811015612cff57803586811115612c99575f80fd5b8801601f3681830112612caa575f80fd5b813588811115612cbc57612cbc612bfa565b612ccd87601f198484011601612c0e565b91508082523687828501011115612ce2575f80fd5b80878401888401375f908201870152845250918301918301612c83565b50979650505050505050565b604081525f612d1d6040830185612bb7565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101bb576101bb612d42565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612dc9816003860160208901612b95565b808401905081600382015284519150612de9826004830160208801612b95565b0160040195945050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f6116fc6060830184612bb7565b634e487b7160e01b5f52602160045260245ffd5b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015612ebd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452612eab858351612bb7565b94509285019290850190600101612e71565b5092979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b818103818111156101bb576101bb612d42565b80820281158282048414176101bb576101bb612d42565b5f8351612f19818460208801612b95565b835190830190612f2d818360208801612b95565b01949350505050565b5f815180845260208085019450602084015f5b83811015612f6557815187529582019590820190600101612f49565b509495945050505050565b608081525f612f826080830187612f36565b8281036020840152612f948187612bb7565b90508460408401528281036060840152611c918185612bb7565b86815260c060208201525f612fc660c0830188612f36565b8281036040840152612fd88188612bb7565b90508560608401528281036080840152612ff28186612bb7565b9150508260a0830152979650505050505050565b8281525f60208083018451602086015f5b8281101561303357815184529284019290840190600101613017565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b606081525f6130666060830186612bb7565b60208301949094525060400152919050565b606081525f61308a6060830186612f36565b65ffffffffffff8516602084015282810360408401526130aa8185612bb7565b9695505050505050565b848152608060208201525f6130cc6080830186612f36565b65ffffffffffff851660408401528281036060840152611c918185612bb7565b64ffffffffff81811683821601908082111561310a5761310a612d42565b5092915050565b87815260e060208201525f61312960e0830189612f36565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526131608185612bb7565b9a9950505050505050505050565b60a081525f61318060a0830188612f36565b65ffffffffffff8716602084015264ffffffffff8616604084015284606084015282810360808401526131b38185612bb7565b9897505050505050505056fea164736f6c6343000818000a","sourceMap":"1115:3225:89:-:0;;;915:4:82;872:48;;1115:3225:89;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c8063119df25f11610058578063119df25f146100ce57806345ec9354146100fb578063530f4b601461010e578063e1af802c14610121575f80fd5b806301ffc9a71461007e57806305609129146100a65780630ba51f49146100bb575b5f80fd5b61009161008c3660046129f0565b610129565b60405190151581526020015b60405180910390f35b6100b96100b4366004612a52565b6101c1565b005b6100b96100c9366004612ac4565b6101e8565b6100d66102da565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161009d565b604051601f19360135815260200161009d565b6100b961011c366004612b53565b6102e8565b6100d6610381565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b6101c961038a565b6101da826101d56102da565b6103fb565b6101e482826104b6565b5050565b6101f061038a565b5f6101fa896104e1565b6fffffffffffffffffffffffffffffffff191603610259578761021c896104f7565b6040517fe4ac069e000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b60405180910390fd5b6102a47f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008a1617610624565b6102b0886101d56102da565b6102d0888888886102c1888a612c3f565b6102cb8789612c3f565b610672565b5050505050505050565b5f6102e3610ad3565b905090565b6102f061038a565b61031a827f1873396a00000000000000000000000000000000000000000000000000000000610b05565b6103657f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610624565b610371836101d56102da565b61037c838383610b85565b505050565b5f6102e3610c73565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630036103f9576040517f9f03a02600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b73ffffffffffffffffffffffffffffffffffffffff811661045d7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610c7c565b73ffffffffffffffffffffffffffffffffffffffff16146101e457610481826104f7565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610250929190612d0b565b6101e47f746273746f726500000000000000000053746f7265486f6f6b730000000000008383610d15565b5f6104ee60706010612d56565b9190911b919050565b606081601081901b5f610509836104e1565b9050827fffffffffffffffffffffffffffff0000000000000000000000000000000000008316156105645761055f7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610e53565b61059b565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff198316156105c2576105bd83610e53565b6105f9565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b60405160200161060b93929190612d69565b6040516020818303038152906040529350505050919050565b61062d81610edc565b61066f578061063b826104f7565b6040517ffbf10ce6000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b50565b613a3160f11b867fffff00000000000000000000000000000000000000000000000000000000000016148015906106eb57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561074c57613a3160f11b868760405160200161070a91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610250939291600401612df6565b61075585610f76565b6107608460016111b8565b61076a835f6111b8565b60e084901c60e885901c0160ff168251146107ca5760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1681511461082a5760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146108a25760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b6108ab85611355565b6108b484611355565b14610906576108c285611355565b6108cb84611355565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b61090f85611386565b61091884611386565b1461096a5761092685611386565b61092f84611386565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b5f5b61097586611355565b811015610a105761099f61098985836113a2565b60c581111561099a5761099a612e36565b6113c9565b6008601b8390030287901c60ff1614610a08576008601b8290030286901c60ff166109cd61098986846113a2565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60010161096c565b50610a1a86610edc565b15610a74578586604051602001610a3391815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b610ac08686868686604051602001610a8c9190612e4a565b60405160208183030381529060405286604051602001610aac9190612e4a565b604051602081830303815290604052611421565b610acb866001611500565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610b025750335b90565b610b0f82826115b5565b6101e4576040517f74b5e6ff00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201527fffffffff0000000000000000000000000000000000000000000000000000000082166024820152604401610250565b613a3160f11b837fffff0000000000000000000000000000000000000000000000000000000000001614610bcd57613a3160f11b838460405160200161070a91815260200190565b610bd683610edc565b610c2f578283604051602001610bee91815260200190565b60408051601f19818403018152908290527f41e713ad0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b61037c837fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606085901b166bff0000000000000000000000605885901b16176115d0565b5f6102e3611685565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610cb357610cb3612eca565b60209081029190910101525f610d0a7f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006116d0565b60601c949350505050565b5f610d208484611705565b90505f815167ffffffffffffffff811115610d3d57610d3d612bfa565b604051908082528060200260200182016040528015610d66578160200160208202803683370190505b5090505f805b8351811015610e44578473ffffffffffffffffffffffffffffffffffffffff16610dbd858381518110610da157610da1612eca565b60200260200101516affffffffffffffffffffff191660601c90565b73ffffffffffffffffffffffffffffffffffffffff1614610e3c57838181518110610dea57610dea612eca565b6020026020010151838381518110610e0457610e04612eca565b7fffffffffffffffffffffffffffffffffffffffffff0000000000000000000000909216602092830291909101909101526001909101905b600101610d6c565b50808252610acb86868461176b565b60605f5b6010811015610ea8576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615610ea857600101610e57565b604080516fffffffffffffffffffffffffffffffff198516602082015281516030909101909152818152805b949350505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610f1357610f13612eca565b60209081029190910101525f610f6a7f746273746f72650000000000000000005265736f75726365496473000000000083837e010100010000000000000000000000000000000000000000000000000000006116d0565b9050610ed48160f81c90565b80610fad576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610fb782611386565b90506005811115610ffe576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610250565b5f61100883611355565b90505f6110158383612d56565b9050601c81111561105c576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610250565b5f805b838110156111055760ff601b82900360080287901c165f8190036110b2576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b60208111156110f0576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b6110fa8184612d56565b92505060010161105f565b5061110f856117c5565b811461115b5761111e856117c5565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610250565b825b601c811015610acb5760ff601b82900360080287901c1680156111af576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b5060010161115d565b801580156111c4575081155b156111e457604051635318beb960e01b81525f6004820152602401610250565b5f6111ee83611386565b9050600581111561121557604051635318beb960e01b815260048101829052602401610250565b5f61121f84611355565b90505f61122c8383612d56565b9050601c81111561125357604051635318beb960e01b815260048101829052602401610250565b5f805b838110156112bc575f61126c61098989846113a2565b9050805f036112a7576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6112b18184612d56565b925050600101611256565b506112c6866117c5565b81146112f1576112d5866117c5565b604051635318beb960e01b815260040161025091815260200190565b825b8281101561134c575f61130961098989846113a2565b90508015611343576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016112f3565b50505050505050565b5f6008600161136660026020612ede565b6113709190612ede565b61137a9190612ef1565b8260ff911c1692915050565b5f600860018061139860026020612ede565b6113669190612ede565b5f601b8290036008028360ff911c1660c58111156113c2576113c2612e36565b9392505050565b5f808260c58111156113dd576113dd612e36565b60ff16905060618110156113f757601f1660010192915050565b60618360c581111561140b5761140b612e36565b036114195750601492915050565b505f92915050565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f61145784846117e7565b90505f6114648585611803565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f8151811061149c5761149c612eca565b60209081029190910101526114f47f746273746f72650000000000000000005461626c657300000000000000000000828686867e6003022020200000000000000000000000000000000000000000000000000061182f565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061153457611534612eca565b60200260200101818152505061037c7f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f8560405160200161158091151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611b51565b5f6115bf83611b6d565b80156113c257506113c28383611bd0565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061160457611604612eca565b60200260200101818152505061037c7f746273746f726500000000000000000053746f7265486f6f6b730000000000005f1b825f8560405160200161167191907fffffffffffffffffffffffffffffffffffffffffff000000000000000000000091909116815260150190565b604051602081830303815290604052611c9c565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f9073ffffffffffffffffffffffffffffffffffffffff16806116cb573391505090565b919050565b5f6116fc6116de8686611cd4565b60ff858116601b0360080285901c166116f78587611d29565b611d61565b95945050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061173d5761173d612eca565b6020026020010181815250505f61175585835f611db1565b90506116fc611766825f8451611dea565b611e76565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061179f5761179f612eca565b6020026020010181815250506117bf84825f6117ba86611e85565b611e94565b50505050565b5f60086117d460026020612ede565b6117de9190612ef1565b9190911c919050565b815181515f9181810160389190911b1760609190911b176113c2565b60608282604051602001611818929190612f08565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036118bb57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516118ae9493929190612f70565b60405180910390a2610acb565b5f6118c587611ecc565b90505f5b8151811015611997575f8282815181106118e5576118e5612eca565b602002602001015190506119116001826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561198e576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611960908c908c908c908c908c908c90600401612fae565b5f604051808303815f87803b158015611977575f80fd5b505af1158015611989573d5f803e3d5ffd5b505050505b506001016118c9565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516119ce9493929190612f70565b60405180910390a25f6119e18888611cd4565b90505f6020870190506119f7825f895184611f69565b5f611a0185611386565b1115611a81575f611a128a8a612024565b87815590506020860191505f805f5b611a2a88611386565b8160ff161015611a7c57611a3f8d8d83612079565b9250611a5a8a8260ff166028026038011c64ffffffffff1690565b9150611a68835f8488611f69565b611a728286612d56565b9450600101611a21565b505050505b5f5b83518110156114f4575f848281518110611a9f57611a9f612eca565b60200260200101519050611acb6002826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15611b48576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611b1a908e908e908e908e908e908e90600401612fae565b5f604051808303815f87803b158015611b31575f80fd5b505af1158015611b43573d5f803e3d5ffd5b505050505b50600101611a83565b611b668585611b608487611d29565b856120f7565b5050505050565b5f611b98827f01ffc9a700000000000000000000000000000000000000000000000000000000611bd0565b80156101bb5750611bc9827fffffffff00000000000000000000000000000000000000000000000000000000611bd0565b1592915050565b6040517fffffffff00000000000000000000000000000000000000000000000000000000821660248201525f90819060440160408051601f19818403018152919052602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a70000000000000000000000000000000000000000000000000000000017815282519293505f9283928392909183918a617530fa92503d91505f519050828015611c86575060208210155b8015611c9157505f81115b979650505050505050565b5f611ca78585612382565b90505f611cc3828560ff166028026038011c64ffffffffff1690565b9050610acb868686845f8888612394565b5f8282604051602001611ce8929190613006565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff16811015611d5957611d4f60ff601b83900360080287901c1683612d56565b9150600101611d2d565b509392505050565b5f60208210611d8657602082048401935060208281611d8257611d82613040565b0691505b508254600882021b602082900380841115611d59576001850154600882021c82179150509392505050565b6060610ed4611dc1858585612079565b5f611de585611dd08989612382565b9060ff166028026038011c64ffffffffff1690565b612759565b5f81831180611df95750835182115b15611e36578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161025093929190613054565b60208401611e448482612d56565b90505f611e518585612ede565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6113c28360155f61277c565b6060816113c28160155f6127f4565b5f611e9f8585612382565b90505f611ebb828560ff166028026038011c64ffffffffff1690565b9050610acb8686865f858888612394565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110611f0457611f04612eca565b60209081029190910101525f611f3b7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611db1565b9050610ed4611766825f8451611dea565b5f8160ff1682611f5c8560581c90565b1660ff1614905092915050565b8215611fe15760208310611f9357602083048401935060208381611f8f57611f8f613040565b0692505b8215611fe15760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611fd25750506117bf565b50600194909401939182900391015b5b602082106120035780518455600190930192601f1990910190602001611fe2565b81156117bf575f5f19600884021c8554835182191691161785555050505050565b5f8282604051602001612038929190613006565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f838360405160200161208d929190613006565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361218157837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161217493929190613078565b60405180910390a26117bf565b5f61218c8585611cd4565b90505f61219886611ecc565b90505f5b8151811015612266575f8282815181106121b8576121b8612eca565b602002602001015190506121e46004826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561225d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061222f908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612246575f80fd5b505af1158015612258573d5f803e3d5ffd5b505050505b5060010161219c565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161229b93929190613078565b60405180910390a26122b6828565ffffffffffff1685612846565b5f5b815181101561134c575f8282815181106122d4576122d4612eca565b602002602001015190506123006008826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15612379576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061234b908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612362575f80fd5b505af1158015612374573d5f803e3d5ffd5b505050505b506001016122b8565b5f6113c26123908484612024565b5490565b613a3160f11b877fffff00000000000000000000000000000000000000000000000000000000000016146123dc57613a3160f11b878860405160200161070a91815260200190565b5f6123f6828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff168361240e9190612ede565b6124189190612d56565b905080821415801561243a57508161243086886130ec565b64ffffffffff1614155b1561248a576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610250565b818664ffffffffff1611156124db576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610250565b5f6124e784898461285c565b90505f6124f38b611ecc565b90505f5b81518110156125c4575f82828151811061251357612513612eca565b6020026020010151905061253f6010826affffffffffffffffffffff1916611f4c90919063ffffffff16565b156125bb57606081901c73ffffffffffffffffffffffffffffffffffffffff166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b815260040161258d9796959493929190613111565b5f604051808303815f87803b1580156125a4575f80fd5b505af11580156125b6573d5f803e3d5ffd5b505050505b506001016124f7565b5064ffffffffff88165f5b8a60ff168160ff161015612602576125f6878260ff166028026038011c64ffffffffff1690565b909101906001016125cf565b508b7faa63765a776145e5e6492f471ae097dfed11cd57a61bc2679dd43180422385b48c838b878c60405161263b95949392919061316e565b60405180910390a25082841461265b575f6126568c8c612024565b839055505b5f6126678c8c8c612079565b905061267b818a64ffffffffff1689612846565b505f5b815181101561274b575f82828151811061269a5761269a612eca565b602002602001015190506126c66020826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561274257606081901c73ffffffffffffffffffffffffffffffffffffffff1663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016127149796959493929190613111565b5f604051808303815f87803b15801561272b575f80fd5b505af115801561273d573d5f803e3d5ffd5b505050505b5060010161267e565b505050505050505050505050565b60405160208101601f19603f8484010116604052828252611d5985858584612929565b60605f6127898560801c90565b90506fffffffffffffffffffffffffffffffff85165f8582816127ae576127ae613040565b0490506040519350602084016020820281016040528185525f5b828110156127e8578451871c8252938701936020909101906001016127c8565b50505050509392505050565b82516060905f6128048583612ef1565b9050604051925060208301601f19603f83860101166040528184525f602088015b848210156127e8578051871b83529187019160019190910190602001612825565b61037c838383516128578560200190565b611f69565b5f64ffffffffff82111561289f576040517f4767058800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff168085106128d157808503820191506128d9565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b82156129ad57602083106129535760208304840193506020838161294f5761294f613040565b0692505b82156129ad5760208390035f8184101561297457505f19600884021c61297d565b505f19600882021c5b8554600886021b81845116821982161784525081841161299e5750506117bf565b50600194909401939182900391015b5b602082106129cf5783548152600190930192601f19909101906020016129ae565b81156117bf575f5f19600884021c8251865482191691161782525050505050565b5f60208284031215612a00575f80fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146113c2575f80fd5b803573ffffffffffffffffffffffffffffffffffffffff811681146116cb575f80fd5b5f8060408385031215612a63575f80fd5b82359150612a7360208401612a2f565b90509250929050565b5f8083601f840112612a8c575f80fd5b50813567ffffffffffffffff811115612aa3575f80fd5b6020830191508360208260051b8501011115612abd575f80fd5b9250929050565b5f805f805f805f8060c0898b031215612adb575f80fd5b88359750602089013596506040890135955060608901359450608089013567ffffffffffffffff80821115612b0e575f80fd5b612b1a8c838d01612a7c565b909650945060a08b0135915080821115612b32575f80fd5b50612b3f8b828c01612a7c565b999c989b5096995094979396929594505050565b5f805f60608486031215612b65575f80fd5b83359250612b7560208501612a2f565b9150604084013560ff81168114612b8a575f80fd5b809150509250925092565b5f5b83811015612baf578181015183820152602001612b97565b50505f910152565b5f8151808452612bce816020860160208601612b95565b601f01601f19169290920160200192915050565b828152604060208201525f610ed46040830184612bb7565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612c3757612c37612bfa565b604052919050565b5f67ffffffffffffffff80841115612c5957612c59612bfa565b8360051b6020612c6a818301612c0e565b868152918501918181019036841115612c81575f80fd5b865b84811015612cff57803586811115612c99575f80fd5b8801601f3681830112612caa575f80fd5b813588811115612cbc57612cbc612bfa565b612ccd87601f198484011601612c0e565b91508082523687828501011115612ce2575f80fd5b80878401888401375f908201870152845250918301918301612c83565b50979650505050505050565b604081525f612d1d6040830185612bb7565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101bb576101bb612d42565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612dc9816003860160208901612b95565b808401905081600382015284519150612de9826004830160208801612b95565b0160040195945050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f6116fc6060830184612bb7565b634e487b7160e01b5f52602160045260245ffd5b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015612ebd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452612eab858351612bb7565b94509285019290850190600101612e71565b5092979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b818103818111156101bb576101bb612d42565b80820281158282048414176101bb576101bb612d42565b5f8351612f19818460208801612b95565b835190830190612f2d818360208801612b95565b01949350505050565b5f815180845260208085019450602084015f5b83811015612f6557815187529582019590820190600101612f49565b509495945050505050565b608081525f612f826080830187612f36565b8281036020840152612f948187612bb7565b90508460408401528281036060840152611c918185612bb7565b86815260c060208201525f612fc660c0830188612f36565b8281036040840152612fd88188612bb7565b90508560608401528281036080840152612ff28186612bb7565b9150508260a0830152979650505050505050565b8281525f60208083018451602086015f5b8281101561303357815184529284019290840190600101613017565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b606081525f6130666060830186612bb7565b60208301949094525060400152919050565b606081525f61308a6060830186612f36565b65ffffffffffff8516602084015282810360408401526130aa8185612bb7565b9695505050505050565b848152608060208201525f6130cc6080830186612f36565b65ffffffffffff851660408401528281036060840152611c918185612bb7565b64ffffffffff81811683821601908082111561310a5761310a612d42565b5092915050565b87815260e060208201525f61312960e0830189612f36565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526131608185612bb7565b9a9950505050505050505050565b60a081525f61318060a0830188612f36565b65ffffffffffff8716602084015264ffffffffff8616604084015284606084015282810360808401526131b38185612bb7565b9897505050505050505056fea164736f6c6343000818000a","sourceMap":"1115:3225:89:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2265:198:58;;;;;;:::i;:::-;;:::i;:::-;;;516:14:207;;509:22;491:41;;479:2;464:18;2265:198:58;;;;;;;;4045:293:89;;;;;;:::i;:::-;;:::i;:::-;;1897:748;;;;;;:::i;:::-;;:::i;1196:113:58:-;;;:::i;:::-;;;2842:42:207;2830:55;;;2812:74;;2800:2;2785:18;1196:113:58;2666:226:207;1550:110:58;;;-1:-1:-1;;3551:14:58;3547:25;3534:39;3043:25:207;;3031:2;3016:18;1550:110:58;2897:177:207;3108:595:89;;;;;;:::i;:::-;;:::i;1876:98:58:-;;;:::i;2265:198::-;2341:4;2360:54;;;2375:39;2360:54;;:98;;-1:-1:-1;2418:40:58;;;2433:25;2418:40;2360:98;2353:105;2265:198;-1:-1:-1;;2265:198:58:o;4045:293:89:-;995:20:82;:18;:20::i;:::-;4199:49:89::1;4226:7;4235:12;:10;:12::i;:::-;4199:26;:49::i;:::-;4282:51;4312:7;4321:11;4282:29;:51::i;:::-;4045:293:::0;;:::o;1897:748::-;995:20:82;:18;:20::i;:::-;2212:9:89::1;2191:17;:7:::0;:15:::1;:17::i;:::-;-1:-1:-1::0;;2191:30:89::1;::::0;2187:110:::1;;2262:7;2271:18;:7;:16;:18::i;:::-;2238:52;;;;;;;;;;;;:::i;:::-;;;;;;;;2187:110;2349:56;816:18:98::0;578:36:59;2820:46;;2819:74;2349:30:89::1;:56::i;:::-;2467:49;2494:7;2503:12;:10;:12::i;2467:49::-;2549:91;2573:7:::0;2582:11;2595:9;2606:11;2549:91:::1;2619:8:::0;;2549:91:::1;:::i;:::-;;2629:10:::0;;2549:91:::1;:::i;:::-;:23;:91::i;:::-;1897:748:::0;;;;;;;;:::o;1196:113:58:-;1239:14;1268:36;:34;:36::i;:::-;1261:43;;1196:113;:::o;3108:595:89:-;995:20:82;:18;:20::i;:::-;3321:68:89::1;3346:11;3360:28;3321:16;:68::i;:::-;3442:56;816:18:98::0;578:36:59;2820:46;;2819:74;2349:30:89::1;:56::i;3442:::-;3548:49;3575:7;3584:12;:10;:12::i;3548:49::-;3629:69;3657:7;3666:11;3679:18;3629:27;:69::i;:::-;3108:595:::0;;;:::o;1876:98:58:-;1915:7;1937:32;:30;:32::i;1113:189:82:-;1182:23;1199:6;1182:23;1190:4;1182:23;1171:127;;1266:25;;;;;;;;;;;;;;1171:127;1113:189::o;2074:233:42:-;2159:58;;;:48;816:18:98;578:36:59;2820:46;;2819:74;2159:19:42;:48::i;:::-;:58;;;2155:148;;2266:21;:10;:19;:21::i;:::-;2289:6;2234:62;;;;;;;;;;;;:::i;12902:170:20:-;12990:77;1075:66:28;13037:7:20;13054:11;12990:27;:77::i;3030:160:59:-;3093:7;3157:26;438:6;385:5:16;3157:26:59;:::i;:::-;3123:61;;;;;3030:160;-1:-1:-1;3030:160:59:o;3351:592::-;3415:13;3485:10;385:5:16;2502:44:59;;;3436:19;3583;3485:10;3583:7;:19::i;:::-;3560:42;-1:-1:-1;3665:12:59;3704:35;;;;:102;;3753:53;;;;:34;:53::i;:::-;3704:102;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3833:25:59;;;:87;;3872:48;3907:12;3872:34;:48::i;:::-;3833:87;;;;;;;;;;;;;;;;;;;;;3637:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3608:330;;;;;3351:592;;;:::o;2536:206:42:-;2610:34;2633:10;2610:22;:34::i;:::-;2605:133;;2697:10;2709:21;:10;:19;:21::i;:::-;2661:70;;;;;;;;;;;;:::i;2605:133::-;2536:206;:::o;8858:2614:20:-;-1:-1:-1;;;9118:7:20;:35;;;;;;:83;;-1:-1:-1;9178:23:20;9157:7;:44;;;;9118:83;9114:209;;;-1:-1:-1;;;9273:7:20;9306;9289:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;9289:25:20;;;;-1:-1:-1;;9289:25:20;;;;;;;;;;9218:98;;;;;;;;;;:::i;9114:209::-;9369:22;:11;:20;:22::i;:::-;9432:40;:9;9465:4;9432:18;:40::i;:::-;9478:43;:11;9513:5;9478:20;:43::i;:::-;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9609:8:20;:15;:40;9605:148;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9730:15:20;;9666:80;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;9666:80:20;8680:248:207;9605:148:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9803:10:20;:17;:44;9799:158;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9932:17:20;;9864:86;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;9864:86:20;8680:248:207;9799:158:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10014:50:20;10010:171;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10081:93:20;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10081:93:20;8680:248:207;10010:171:20;10223:29;:11;:27;:29::i;:::-;10190;:11;:27;:29::i;:::-;:62;10186:225;;10328:29;:11;:27;:29::i;:::-;10367;:11;:27;:29::i;:::-;10269:135;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10269:135:20;8680:248:207;10186:225:20;10454:30;:11;:28;:30::i;:::-;10420;:11;:28;:30::i;:::-;:64;10416:230;;10561:30;:11;:28;:30::i;:::-;10601;:11;:28;:30::i;:::-;10501:138;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10501:138:20;8680:248:207;10416:230:20;10743:9;10738:314;10758:29;:11;:27;:29::i;:::-;10754:1;:33;10738:314;;;10832:44;:22;:11;10852:1;10832:19;:22::i;:::-;:42;;;;;;;;:::i;:::-;;:44::i;:::-;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10806:70:20;10802:244;;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10983:44:20;:22;:11;11003:1;10983:19;:22::i;:44::-;10895:142;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10895:142:20;8680:248:207;10802:244:20;10789:3;;10738:314;;;;11114:31;11137:7;11114:22;:31::i;:::-;11110:140;;;11200:7;11233;11216:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;11216:25:20;;;;-1:-1:-1;;11216:25:20;;;;;;;;;;11162:81;;;;;;;;;:::i;11110:140::-;11291:103;11303:7;11312:11;11325:9;11336:11;11360:8;11349:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;11382:10;11371:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;11291:11;:103::i;:::-;11430:37;11453:7;11462:4;11430:22;:37::i;:::-;8858:2614;;;;;;:::o;2743:383:58:-;3029:34;3033:14;3029:34;3016:48;3010:4;3006:59;;3076:45;;-1:-1:-1;3111:10:58;3076:45;2743:383;:::o;879:238:92:-;964:61;996:15;1013:11;964:31;:61::i;:::-;959:156;;1040:70;;;;;10191:42:207;10179:55;;1040:70:92;;;10161:74:207;10283:66;10271:79;;10251:18;;;10244:107;10134:18;;1040:70:92;9989:368:207;12074:624:20;-1:-1:-1;;;12258:7:20;:35;;;12254:161;;-1:-1:-1;;;12365:7:20;12398;12381:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;12254:161:20;12460:31;12483:7;12460:22;:31::i;:::-;12455:136;;12541:7;12574;12557:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;12557:25:20;;;;-1:-1:-1;;12557:25:20;;;;;;;;;;12508:76;;;;;;;;;:::i;12455:136::-;12597:96;12614:7;979:29:4;987:20;;;;979:29;1011:30;;;;;;979:62;12597:16:20;:96::i;3799:97:58:-;3840:7;3862:29;:27;:29::i;4483:306:74:-;4594:16;;;4608:1;4594:16;;;;;;;;;4544:13;;;;4594:16;;;;;;;;;;;;-1:-1:-1;4594:16:74;4565:45;;4649:11;4616:9;4626:1;4616:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;4668:13;4684:62;1269:66;4719:9;4668:13;1449:66;4684:24;:62::i;:::-;4760:23;;;4483:306;-1:-1:-1;;;;4483:306:74:o;1408:1069:4:-;1551:29;1583:42;1594:11;1607:17;1583:10;:42::i;:::-;1551:74;;1743:25;1785:12;:19;1771:34;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1771:34:4;;1743:62;;1853:21;1903:25;1898:312;1950:12;:19;1930:17;:39;1898:312;;;2073:19;2006:87;;:55;2016:12;2029:17;2016:31;;;;;;;;:::i;:::-;;;;;;;2006:53;;;3404:35;;;3274:170;2006:55;:87;;;2002:200;;2133:12;2146:17;2133:31;;;;;;;;:::i;:::-;;;;;;;2107:8;2116:13;2107:23;;;;;;;;:::i;:::-;:57;;;;:23;;;;;;;;;;;:57;2176:15;;;;;2002:200;1971:19;;1898:312;;;;2363:13;2353:8;2346:31;2420:52;2431:11;2444:17;2463:8;2420:10;:52::i;1796:322:59:-;1866:13;1887:14;1907:80;1923:2;1914:6;:11;1907:80;;;-1:-1:-1;;1941:34:59;;3152:1:2;3148:13;;3144:24;1941:39:59;;1937:50;1982:5;1937:50;1927:8;;1907:80;;;2023:30;;;-1:-1:-1;;10692:79:207;;2023:30:59;;;10680:92:207;2023:30:59;;10788:12:207;;;;2023:30:59;;;809:21:2;;;2023:30:59;2073:39;2059:54;1796:322;-1:-1:-1;;;;1796:322:59:o;3588:314:27:-;3702:16;;;3716:1;3702:16;;;;;;;;;3654:11;;;;3702:16;;;;;;;;;;;;-1:-1:-1;3702:16:27;3673:45;;3757:10;3724:9;3734:1;3724:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3775:13;3791:62;1076:66;3826:9;3775:13;1253:66;3791:24;:62::i;:::-;3775:78;;3867:29;3888:5;3875:20;;1452:10:16;1343:126;6774:1658:3;6457:45;6837:86;;6879:37;;;;;;;;;;;;;;6837:86;6929:25;6957:30;:11;:28;:30::i;:::-;6929:58;;902:1:30;6997:17:3;:38;6993:155;;;7052:89;;;;;;;;8854:25:207;;;902:1:30;8895:18:207;;;8888:34;8827:18;;7052:89:3;8680:248:207;6993:155:3;7154:24;7181:29;:11;:27;:29::i;:::-;7154:56;-1:-1:-1;7216:23:3;7242:36;7261:17;7154:56;7242:36;:::i;:::-;7216:62;;647:2:30;7288:15:3;:34;7284:140;;;7339:78;;;;;;;;8854:25:207;;;647:2:30;8895:18:207;;;8888:34;8827:18;;7339:78:3;8680:248:207;7284:140:3;7466:25;7502:9;7497:427;7517:16;7513:1;:20;7497:427;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;7545:24;7606:21;;;7602:232;;7646:51;;;;;;;;3043:25:207;;;3016:18;;7646:51:3;2897:177:207;7602:232:3;334:2:30;7716:16:3;:28;7712:122;;;7763:62;;;;;;;;3043:25:207;;;3016:18;;7763:62:3;2897:177:207;7712:122:3;7841:37;7862:16;7841:37;;:::i;:::-;;-1:-1:-1;;7906:3:3;;7497:427;;;;7991:30;:11;:28;:30::i;:::-;7970:17;:51;7966:183;;8092:30;:11;:28;:30::i;:::-;8038:104;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;;;8827:18;;8038:104:3;8680:248:207;7966:183:3;8205:16;8188:240;647:2:30;8223:1:3;:20;8188:240;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;8319:21;;8315:107;;8359:54;;;;;;;;3043:25:207;;;3016:18;;8359:54:3;2897:177:207;8315:107:3;-1:-1:-1;8245:3:3;;8188:240;;5689:1629:17;5796:10;5795:11;:31;;;;-1:-1:-1;6457:45:3;;5810:16:17;5791:80;;;5835:36;;-1:-1:-1;;;5835:36:17;;5869:1;5835:36;;;3043:25:207;3016:18;;5835:36:17;2897:177:207;5791:80:17;5934:25;5962;:6;:23;:25::i;:::-;5934:53;;902:1:30;5997:17:17;:38;5993:103;;;6044:52;;-1:-1:-1;;;6044:52:17;;;;;3043:25:207;;;3016:18;;6044:52:17;2897:177:207;5993:103:17;6103:24;6130;:6;:22;:24::i;:::-;6103:51;-1:-1:-1;6224:23:17;6250:36;6269:17;6103:51;6250:36;:::i;:::-;6224:62;;647:2:30;6296:15:17;:34;6292:97;;;6339:50;;-1:-1:-1;;;6339:50:17;;;;;3043:25:207;;;3016:18;;6339:50:17;2897:177:207;6292:97:17;6450:25;6486:9;6481:313;6501:16;6497:1;:20;6481:313;;;6529:24;6556:39;:17;:6;6571:1;6556:14;:17::i;:39::-;6529:66;;6607:16;6627:1;6607:21;6603:101;;6647:48;;;;;;;;;;;;;;6603:101;6711:37;6732:16;6711:37;;:::i;:::-;;-1:-1:-1;;6776:3:17;;6481:313;;;;6862:25;:6;:23;:25::i;:::-;6841:17;:46;6837:134;;6938:25;:6;:23;:25::i;:::-;6904:60;;-1:-1:-1;;;6904:60:17;;;;;;3043:25:207;;3031:2;3016:18;;2897:177;6837:134:17;7046:16;7029:285;7068:15;7064:1;:19;7029:285;;;7095:24;7122:39;:17;:6;7137:1;7122:14;:17::i;:39::-;7095:66;-1:-1:-1;7173:20:17;;7169:100;;7212:48;;;;;;;;;;;;;;7169:100;-1:-1:-1;7296:3:17;;7029:285;;;;5753:1565;;;;5689:1629;;:::o;5135:171:3:-;5208:7;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;5244:11:3;5223:78;5236:64;;5223:78;;5135:171;-1:-1:-1;;5135:171:3:o;5533:173::-;5607:7;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;3948:206:17:-;4018:10;4108:19;:27;;;4139:1;4107:33;4086:6;4061:82;4078:63;;4061:82;;;;;;;;;:::i;:::-;4054:89;3948:206;-1:-1:-1;;;3948:206:17:o;3195:520:1:-;3261:7;3274:13;3296:10;3290:17;;;;;;;;:::i;:::-;3274:33;;;;3324:2;3316:5;:10;3312:401;;;3568:2;3560:10;3574:1;3559:16;;;-1:-1:-1;;3195:520:1:o;3312:401::-;3610:18;3596:10;:32;;;;;;;;:::i;:::-;;3592:121;;-1:-1:-1;3643:2:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;-1:-1:-1;3707:1:1;;3195:520;-1:-1:-1;;3195:520:1:o;20651:676:29:-;25205:53;;;;;;12043:19:207;;;12078:12;;;12071:28;;;25178:12:29;12115::207;;;12108:28;;;25205:53:29;;;;;;;;;;12152:12:207;;;;25205:53:29;;;20942:29;20974:55;20988:18;21008:20;20974:13;:55::i;:::-;20942:87;;21035:25;21063:55;21077:18;21097:20;21063:13;:55::i;:::-;21154:16;;;21168:1;21154:16;;;;;;;;;21035:83;;-1:-1:-1;21125:26:29;;21154:16;;;;;;;;;;;;-1:-1:-1;21154:16:29;21125:45;;21209:7;21176:9;21186:1;21176:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;21224:98;1171:66;21254:9;21265:11;21278:15;21295:12;1343:66;21224:19;:98::i;:::-;20853:474;;;;20651:676;;;;;;:::o;4952:268:27:-;5052:16;;;5066:1;5052:16;;;;;;;;;5023:26;;5052:16;;;;;;;;;;;-1:-1:-1;5052:16:27;5023:45;;5107:10;5074:9;5084:1;5074:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;5125:90;1076:66;1060:83;;5160:9;5171:1;5192:6;5174:26;;;;;;11458:14:207;11451:22;11446:3;11442:32;11430:45;;11500:1;11491:11;;11307:201;5174:26:27;;;;-1:-1:-1;;5174:26:27;;;;;;;;;1253:66;5125:24;:90::i;1313:272:45:-;1400:4;1499:23;1514:7;1499:14;:23::i;:::-;:81;;;;;1526:54;1559:7;1568:11;1526:32;:54::i;10391:254:28:-;10488:16;;;10502:1;10488:16;;;;;;;;;10459:26;;10488:16;;;;;;;;;;;-1:-1:-1;10488:16:28;10459:45;;10543:7;10510:9;10520:1;10510:12;;;;;;;;:::i;:::-;;;;;;:41;;;;;10558:82;1075:66;1059:83;;10597:9;10608:1;10629:8;10611:28;;;;;;;11666:66:207;11654:79;;;;11642:92;;11759:2;11750:12;;11513:255;10611:28:28;;;;;;;;;;;;;10558;:82::i;1766:227:24:-;996:42;1855:22;1816:7;;1855:22;;;1883:106;;1931:10;1924:17;;;1766:227;:::o;1883:106::-;1969:13;1766:227;-1:-1:-1;1766:227:24:o;38022:541:20:-;38179:7;38316:242;38360:59;38401:7;38410:8;38360:40;:59::i;:::-;38437:31;;;;4479:19:3;:27;537:1:30;4478:44:3;4444:79;;;4431:93;38486:63:20;38525:11;38538:10;38486:38;:63::i;:::-;38316:17;:242::i;:::-;38303:255;38022:541;-1:-1:-1;;;;;38022:541:20:o;4214:369:26:-;4354:16;;;4368:1;4354:16;;;;;;;;;4295:22;;4325:26;;4354:16;;;;;;;;;;;;-1:-1:-1;4354:16:26;4325:45;;4409:10;4376:9;4386:1;4376:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4427:18;4448:49;4474:8;4484:9;4495:1;4448:25;:49::i;:::-;4427:70;;4511:66;:44;4532:5;4539:1;4542:5;:12;4511:20;:44::i;:::-;:64;:66::i;5601:282::-;5727:16;;;5741:1;5727:16;;;;;;;;;5698:26;;5727:16;;;;;;;;;;;-1:-1:-1;5727:16:26;5698:45;;5782:10;5749:9;5759:1;5749:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;5800:78;5826:8;5836:9;5847:1;5850:27;5870:5;5850:18;:27::i;:::-;5800:25;:78::i;:::-;5692:191;5601:282;;;:::o;4754:171:3:-;4828:7;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;4850:70:3;;;;;4754:171;-1:-1:-1;4754:171:3:o;25454:388:29:-;25762:32;;25796:34;;25580:29;;2444:5:15;;;834:16;2475:39;;;;2457:58;2556:23;2541:39;;;;2523:58;25740:91:29;2303:344:15;26007:234:29;26133:12;26184:18;26213:20;26160:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26153:83;;26007:234;;;;:::o;15127:3138:20:-;15421:23;15400:7;:44;;;15396:198;;15514:7;15498:75;15523:8;15533:10;15545:14;15561:11;15498:75;;;;;;;;;:::i;:::-;;;;;;;;15581:7;;15396:198;15732:22;15757:24;15773:7;15757:15;:24::i;:::-;15732:49;;15792:9;15787:340;15807:5;:12;15803:1;:16;15787:340;;;15834:9;15856:5;15862:1;15856:8;;;;;;;;:::i;:::-;;;;;;;15834:31;;15877:33;343:6:32;15877:4:20;:14;;;;;:33;;;;:::i;:::-;15873:248;;;15922:190;;;;;3404:35:4;;;;;15922:47:20;;:190;;15981:7;;16000:8;;16020:10;;16042:14;;16068:11;;16091;;15922:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15873:248;-1:-1:-1;15821:3:20;;15787:340;;;;16191:7;16175:75;16200:8;16210:10;16222:14;16238:11;16175:75;;;;;;;;;:::i;:::-;;;;;;;;16314:26;16343:59;16384:7;16393:8;16343:40;:59::i;:::-;16314:88;-1:-1:-1;16408:21:20;828:4:14;818:15;;16408:54:20;;16468:149;16506:18;16540:1;16557:10;:17;16597:13;16468;:149::i;:::-;16717:1;16684:30;:11;:28;:30::i;:::-;:34;16680:1174;;;16803:33;16839:66;16887:7;16896:8;16839:47;:66::i;:::-;629:28:19;;;16803:102:20;-1:-1:-1;828:4:14;818:15;;17079:47:20;;17235:27;17270:25;17308:7;17303:545;17321:30;:11;:28;:30::i;:::-;17317:1;:34;;;17303:545;;;17387:63;17429:7;17438:8;17448:1;17387:41;:63::i;:::-;17365:85;-1:-1:-1;17480:25:20;:14;17503:1;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;17480:25:20;17460:45;;17515:170;17557:19;17596:1;17617:17;17661:13;17515;:170::i;:::-;17695:34;17712:17;17695:34;;:::i;:::-;;-1:-1:-1;17826:3:20;;17303:545;;;;16720:1134;;;16680:1174;17928:9;17923:338;17943:5;:12;17939:1;:16;17923:338;;;17970:9;17992:5;17998:1;17992:8;;;;;;;;:::i;:::-;;;;;;;17970:31;;18013:32;437:6:32;18013:4:20;:14;;;;;:32;;;;:::i;:::-;18009:246;;;18057:189;;;;;3404:35:4;;;;;18057:46:20;;:189;;18115:7;;18134:8;;18154:10;;18176:14;;18202:11;;18225;;18057:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18009:246;-1:-1:-1;17957:3:20;;17923:338;;24989:355;25161:178;25195:7;25220:8;25250:63;25289:11;25302:10;25250:38;:63::i;:::-;25328:4;25161:16;:178::i;:::-;24989:355;;;;;:::o;709:400:45:-;773:4;962:68;995:7;1004:25;962:32;:68::i;:::-;:142;;;;-1:-1:-1;1041:63:45;1074:7;1083:20;1041:32;:63::i;:::-;1040:64;949:155;709:400;-1:-1:-1;;709:400:45:o;4133:576::-;4296:56;;14886:66:207;14874:79;;4296:56:45;;;14856:98:207;4235:4:45;;;;14829:18:207;;4296:56:45;;;-1:-1:-1;;4296:56:45;;;;;;;;;;;;;;;;;;;;;4534:20;;4296:56;;-1:-1:-1;;;;;;;4296:56:45;;-1:-1:-1;;4499:7:45;4492:5;4481:86;4470:97;;4588:16;4574:30;;4632:4;4626:11;4611:26;;4656:7;:29;;;;;4681:4;4667:10;:18;;4656:29;:48;;;;;4703:1;4689:11;:15;4656:48;4649:55;4133:576;-1:-1:-1;;;;;;;4133:576:45:o;30619:790:20:-;30878:36;30917:66;30965:7;30974:8;30917:47;:66::i;:::-;30878:105;-1:-1:-1;30989:26:20;31025:49;30878:105;31056:17;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;31025:49:20;30989:86;;31113:291;31167:7;31192:8;31227:17;31277:19;31318:1;31333:10;31375:22;31113:36;:291::i;52539:191::-;52641:7;52705;52714:8;52688:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;52688:35:20;;;;;;;;;52678:46;;52688:35;52678:46;;;;44145:22;52671:53;;52539:191;-1:-1:-1;;;52539:191:20:o;53556:242::-;53652:7;;;53691:84;53711:10;53707:14;;:1;:14;53691:84;;;53736:32;4431:93:3;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;53736:32:20;;:::i;:::-;;-1:-1:-1;53723:3:20;;53691:84;;;-1:-1:-1;53787:6:20;53556:242;-1:-1:-1;;;53556:242:20:o;8879:812:19:-;8977:14;9013:2;9003:6;:12;8999:112;;9072:2;9063:6;:11;9045:29;;;;9094:2;9084:12;;;;;;:::i;:::-;;;;8999:112;-1:-1:-1;9302:21:19;;9287:12;9275:25;;9271:53;9450:2;:11;;;9532:22;;;9528:159;;;9668:1;9652:14;9648:22;9642:29;9627:12;9612:13;9608:32;9604:68;9596:6;9593:80;9583:90;;8993:698;8879:812;;;;;:::o;39031:522:20:-;39167:12;39291:257;39330:79;39372:7;39381:8;39391:17;39330:41;:79::i;:::-;39427:1;39446:93;39521:17;39446:66;39494:7;39503:8;39446:47;:66::i;:::-;:74;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;39446:93:20;39291:12;:257::i;1954:561:18:-;2045:5;2140:3;2132:5;:11;:32;;;;2153:4;:11;2147:3;:17;2132:32;2128:80;;;2191:4;2197:5;2204:3;2173:35;;;;;;;;;;;;;:::i;2128:80::-;2274:4;2264:15;;2321:16;2332:5;2264:15;2321:16;:::i;:::-;;-1:-1:-1;2343:12:18;2358:11;2364:5;2358:3;:11;:::i;:::-;643:17;2493:15;2485:3;2474:14;;;;2473:36;;;;;;-1:-1:-1;;;;;1954:561:18:o;40037:220:34:-;40103:24;40135:30;40168:32;40186:6;40194:2;40198:1;40168:17;:32::i;39736:222:35:-;39800:12;39890:6;39914:39;39890:6;39947:2;39951:1;39914:17;:39::i;26034:737:20:-;26285:36;26324:66;26372:7;26381:8;26324:47;:66::i;:::-;26285:105;-1:-1:-1;26396:26:20;26432:49;26285:105;26463:17;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;26432:49:20;26396:86;;26489:277;26543:7;26568:8;26603:17;26646:1;26668:19;26701:4;26737:22;26489:36;:277::i;4391:342:28:-;4507:16;;;4521:1;4507:16;;;;;;;;;4448:22;;4478:26;;4507:16;;;;;;;;;;;;-1:-1:-1;4507:16:28;4478:45;;4562:7;4529:9;4539:1;4529:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;4577:18;4598:49;1075:66;4634:9;4577:18;4598:25;:49::i;:::-;4577:70;;4661:66;:44;4682:5;4689:1;4692:5;:12;4661:20;:44::i;2903:136:4:-;2973:4;3025:9;2992:42;;3011:9;2993:15;3003:4;3802:26;;;3672:162;2993:15;:27;2992:42;;;2985:49;;2903:136;;;;:::o;1423:2340:19:-;1536:10;;1532:1504;;1689:2;1679:6;:12;1675:122;;1752:2;1743:6;:11;1725:29;;;;1776:2;1766:12;;;;;;:::i;:::-;;;;1675:122;1887:10;;1883:1147;;2095:2;:11;;;1969:21;-1:-1:-1;;537:1:30;738:25:31;;716:48;2142:18:19;2127:33;;2329:12;2321:6;2317:25;2376:4;2365:9;2361:20;2353:28;;2431:13;2425:20;2414:9;2410:36;2392:54;;2679:4;2675:9;2658:14;2652:21;2648:37;2579:4;2567:10;2563:21;2506:193;2478:14;2458:253;;2770:13;2760:6;:23;2756:36;;2785:7;;;;2756:36;-1:-1:-1;2933:1:19;2915:19;;;;;2988:23;;;;;2946:30;1883:1147;3066:253;3083:2;3073:6;:12;3066:253;;3178:20;;3155:44;;3252:1;3234:19;;;;-1:-1:-1;;3292:12:19;;;;3280:2;3263:19;3066:253;;;3387:10;;3383:376;;3407:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;3695:21:19;;3606:20;;3628:9;;3602:36;3691:32;;3551:184;3507:238;;-1:-1:-1;1423:2340:19;;;;:::o;55104:230:20:-;55225:7;55309;55318:8;55292:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;55292:35:20;;;;;;;;;55282:46;;55292:35;55282:46;;;;44308:40;55255:73;;55104:230;-1:-1:-1;;;55104:230:20:o;54475:274::-;54619:7;54724;54733:8;54707:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;54697:46;;;;;;54676:17;54669:25;;54649:45;;;44217:34;54649:45;:94;54641:103;;54634:110;;54475:274;;;;;:::o;18901:1676::-;19101:23;19080:7;:44;;;19076:232;;19231:7;19187:100;19250:8;19267:5;19280:4;19187:100;;;;;;;;:::i;:::-;;;;;;;;19295:7;;19076:232;19314:16;19333:59;19374:7;19383:8;19333:40;:59::i;:::-;19314:78;;19538:22;19563:24;19579:7;19563:15;:24::i;:::-;19538:49;;19598:9;19593:328;19613:5;:12;19609:1;:16;19593:328;;;19640:9;19662:5;19668:1;19662:8;;;;;;;;:::i;:::-;;;;;;;19640:31;;19683:41;548:6:32;19683:4:20;:14;;;;;:41;;;;:::i;:::-;19679:236;;;19736:170;;;;;3404:35:4;;;;;19736:54:20;;:170;;19812:7;;19841:8;;19868:5;;19891:4;;19736:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19679:236;-1:-1:-1;19627:3:20;;19593:328;;;;20022:7;19978:100;20041:8;20058:5;20071:4;19978:100;;;;;;;;:::i;:::-;;;;;;;;20128:70;20160:8;20178:5;20128:70;;20191:4;20128:13;:70::i;:::-;20252:9;20247:326;20267:5;:12;20263:1;:16;20247:326;;;20294:9;20316:5;20322:1;20316:8;;;;;;;;:::i;:::-;;;;;;;20294:31;;20337:40;657:6:32;20337:4:20;:14;;;;;:40;;;;:::i;:::-;20333:234;;;20389:169;;;;;3404:35:4;;;;;20389:53:20;;:169;;20464:7;;20493:8;;20520:5;;20543:4;;20389:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20333:234;-1:-1:-1;20281:3:20;;20247:326;;55672:301;55793:13;55885:82;55916:48;55946:7;55955:8;55916:29;:48::i;:::-;4645:21:19;;4539:137;46038:3950:20;-1:-1:-1;;;46435:7:20;:35;;;46431:161;;-1:-1:-1;;;46542:7:20;46575;46558:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;46431:161:20;46598:27;46628:49;:22;46659:17;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;46628:49:20;46598:79;;46683:26;46748:4;:11;46734;46712:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;46683:76;;47031:18;47008:19;:41;;:98;;;;-1:-1:-1;47087:19:20;47053:30;47072:11;47053:16;:30;:::i;:::-;:53;;;;47008:98;47004:218;;;47123:92;;;;;17686:12:207;17725:15;;;47123:92:20;;;17707:34:207;17777:15;;;17757:18;;;17750:43;17829:15;;17809:18;;;17802:43;17649:18;;47123:92:20;17480:371:207;47004:218:20;47328:19;47309:16;:38;;;47305:140;;;47364:74;;;;;;;;18029:25:207;;;18102:12;18090:25;;18070:18;;;18063:53;18002:18;;47364:74:20;17856:266:207;47305:140:20;47484:35;47522:72;:22;47556:17;47575:18;47522:33;:72::i;:::-;47484:110;;47741:22;47766:24;47782:7;47766:15;:24::i;:::-;47741:49;;47801:9;47796:486;47816:5;:12;47812:1;:16;47796:486;;;47843:9;47865:5;47871:1;47865:8;;;;;;;;:::i;:::-;;;;;;;47843:31;;47886:42;770:6:32;47886:4:20;:14;;;;;:42;;;;:::i;:::-;47882:394;;;3404:35:4;;;;47940:55:20;;;48017:7;48046:8;48085:17;48132:16;48173:11;48212:22;48252:4;47940:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47882:394;-1:-1:-1;47830:3:20;;47796:486;;;-1:-1:-1;48340:32:20;;;:13;48480:107;48498:17;48494:21;;:1;:21;;;48480:107;;;48543:33;:22;48574:1;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;48543:33:20;48534:42;;;;48517:3;;48480:107;;;;48709:7;48656:228;48736:8;48768:5;48797:11;48834:21;48871:4;48656:228;;;;;;;;;;:::i;:::-;;;;;;;;48288:603;48976:18;48953:19;:41;48949:248;;49004:31;49038:48;49068:7;49077:8;49038:29;:48::i;:::-;629:28:19;;;-1:-1:-1;48949:248:20;49254:27;49284:61;49308:7;49317:8;49327:17;49284:23;:61::i;:::-;49254:91;;49353:92;49385:19;49414:16;49353:92;;49438:4;49353:13;:92::i;:::-;49246:206;49506:9;49501:483;49521:5;:12;49517:1;:16;49501:483;;;49548:9;49570:5;49576:1;49570:8;;;;;;;;:::i;:::-;;;;;;;49548:31;;49591:41;881:6:32;49591:4:20;:14;;;;;:41;;;;:::i;:::-;49587:391;;;3404:35:4;;;;49644:54:20;;;49720:7;49749:8;49788:17;49835:16;49876:11;49915:21;49954:4;49644:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49587:391;-1:-1:-1;49535:3:20;;49501:483;;;;46281:3707;;;;46038:3950;;;;;;;:::o;4976:669:19:-;5392:4;5386:11;5433:4;5421:17;;-1:-1:-1;;5307:16:19;5480:26;;;5307:16;5303:32;5452:4;5445:63;5552:6;5544;5537:22;5570:51;5575:14;5591:6;5599;5607:13;5570:4;:51::i;2615:1129:36:-;2735:22;2765:21;2789;:11;2869:3:18;2847:25;;2773:104;2789:21:36;2765:45;-1:-1:-1;643:17:18;3110:38;;2816:20:36;2978:11;3110:38:18;2978:11:36;2963:26;;;;:::i;:::-;;2949:40;;3098:4;3092:11;3083:20;;3141:4;3134:5;3130:16;3201:4;3188:11;3184:22;3170:12;3166:41;3160:4;3153:55;3251:11;3244:5;3237:26;3294:1;3271:463;3310:11;3307:1;3304:18;3271:463;;;3704:20;;3683:42;;3662:64;;3576:31;;;;3489:4;3471:23;;;;3397:1;3390:9;3271:463;;;3275:28;;3050:690;;;2615:1129;;;;;:::o;764:1343::-;936:12;;889:17;;914:19;977:26;992:11;936:12;977:26;:::i;:::-;954:49;;1375:4;1369:11;;-1:-1:-1;1418:4:36;1408:15;;-1:-1:-1;;5307:16:19;1465:32:36;;;5307:16:19;5303:32;1437:4:36;1430:69;1541:12;1535:4;1528:26;1585:1;1655:4;1648:5;1644:16;1562:535;1675:11;1672:1;1669:18;1562:535;;;2068:19;;2047:41;;2025:64;;1941:31;;;;1762:1;1755:9;;;;;1854:4;1836:23;1562:535;;900:162:19;989:68;995:14;1011:6;1019:4;:11;1032:24;1051:4;828::14;818:15;;692:151;1032:24:19;989:5;:68::i;7197:1488:15:-;7323:13;1004:16;7348:25;;7344:97;;;7390:44;;;;;;;;3043:25:207;;;3016:18;;7390:44:15;2897:177:207;7344:97:15;7503:13;6184:59;;;6801:16;;;922;6801;834;6790:27;6750:68;;;6728:92;;7766:38;;;7762:192;;7849:19;7831:15;:37;7816:52;;;;7762:192;;;7930:15;7908:19;:37;7893:52;;;;7762:192;-1:-1:-1;8270:16:15;834;922;8137;;;;8126:27;8262:35;;;8576:5;8415:26;8396:45;;;;8395:61;;;8557:24;;;;8586:34;;;;;8556:65;;-1:-1:-1;7197:1488:15;;;;;:::o;6010:2380:19:-;6127:10;;6123:1542;;6280:2;6270:6;:12;6266:122;;6343:2;6334:6;:11;6316:29;;;;6367:2;6357:12;;;;;;:::i;:::-;;;;6266:122;6478:10;;6474:1185;;6686:2;:11;;;6560:21;6744:22;;;6740:135;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;7069:14;7063:21;7048:12;7040:6;7036:25;7032:53;7309:4;7293:13;7287:20;7283:31;7219:4;7215:9;7203:10;7199:26;7144:184;7117:13;7097:243;;7399:13;7389:6;:23;7385:36;;7414:7;;;;7385:36;-1:-1:-1;7562:1:19;7544:19;;;;;7617:23;;;;;7575:30;6474:1185;7694:253;7711:2;7701:6;:12;7694:253;;7805:21;;7783:44;;7880:1;7862:19;;;;-1:-1:-1;;7920:12:19;;;;7908:2;7891:19;7694:253;;;8015:10;;8011:375;;8035:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;8323:20:19;;8233:21;;8256:9;;8229:37;8319:31;;8178:184;8135:237;;-1:-1:-1;6010:2380:19;;;;:::o;14:332:207:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;180:9;167:23;230:66;223:5;219:78;212:5;209:89;199:117;;312:1;309;302:12;543:208;623:20;;683:42;672:54;;662:65;;652:93;;741:1;738;731:12;756:316;874:6;882;935:2;923:9;914:7;910:23;906:32;903:52;;;951:1;948;941:12;903:52;987:9;974:23;964:33;;1016:50;1062:2;1051:9;1047:18;1016:50;:::i;:::-;1006:60;;756:316;;;;;:::o;1077:375::-;1148:8;1158:6;1212:3;1205:4;1197:6;1193:17;1189:27;1179:55;;1230:1;1227;1220:12;1179:55;-1:-1:-1;1253:20:207;;1296:18;1285:30;;1282:50;;;1328:1;1325;1318:12;1282:50;1365:4;1357:6;1353:17;1341:29;;1425:3;1418:4;1408:6;1405:1;1401:14;1393:6;1389:27;1385:38;1382:47;1379:67;;;1442:1;1439;1432:12;1379:67;1077:375;;;;;:::o;1457:1204::-;1755:6;1763;1771;1779;1787;1795;1803;1811;1864:3;1852:9;1843:7;1839:23;1835:33;1832:53;;;1881:1;1878;1871:12;1832:53;1917:9;1904:23;1894:33;;1974:2;1963:9;1959:18;1946:32;1936:42;;2025:2;2014:9;2010:18;1997:32;1987:42;;2076:2;2065:9;2061:18;2048:32;2038:42;;2131:3;2120:9;2116:19;2103:33;2155:18;2196:2;2188:6;2185:14;2182:34;;;2212:1;2209;2202:12;2182:34;2251:78;2321:7;2312:6;2301:9;2297:22;2251:78;:::i;:::-;2348:8;;-1:-1:-1;2225:104:207;-1:-1:-1;2436:3:207;2421:19;;2408:33;;-1:-1:-1;2453:16:207;;;2450:36;;;2482:1;2479;2472:12;2450:36;;2521:80;2593:7;2582:8;2571:9;2567:24;2521:80;:::i;:::-;1457:1204;;;;-1:-1:-1;1457:1204:207;;-1:-1:-1;1457:1204:207;;;;;;2620:8;-1:-1:-1;;;1457:1204:207:o;3079:473::-;3204:6;3212;3220;3273:2;3261:9;3252:7;3248:23;3244:32;3241:52;;;3289:1;3286;3279:12;3241:52;3325:9;3312:23;3302:33;;3354:50;3400:2;3389:9;3385:18;3354:50;:::i;:::-;3344:60;;3454:2;3443:9;3439:18;3426:32;3498:4;3491:5;3487:16;3480:5;3477:27;3467:55;;3518:1;3515;3508:12;3467:55;3541:5;3531:15;;;3079:473;;;;;:::o;3557:250::-;3642:1;3652:113;3666:6;3663:1;3660:13;3652:113;;;3742:11;;;3736:18;3723:11;;;3716:39;3688:2;3681:10;3652:113;;;-1:-1:-1;;3799:1:207;3781:16;;3774:27;3557:250::o;3812:330::-;3854:3;3892:5;3886:12;3919:6;3914:3;3907:19;3935:76;4004:6;3997:4;3992:3;3988:14;3981:4;3974:5;3970:16;3935:76;:::i;:::-;4056:2;4044:15;-1:-1:-1;;4040:88:207;4031:98;;;;4131:4;4027:109;;3812:330;-1:-1:-1;;3812:330:207:o;4147:322::-;4355:6;4344:9;4337:25;4398:2;4393;4382:9;4378:18;4371:30;4318:4;4418:45;4459:2;4448:9;4444:18;4436:6;4418:45;:::i;4474:184::-;-1:-1:-1;;;4523:1:207;4516:88;4623:4;4620:1;4613:15;4647:4;4644:1;4637:15;4663:334;4734:2;4728:9;4790:2;4780:13;;-1:-1:-1;;4776:86:207;4764:99;;4893:18;4878:34;;4914:22;;;4875:62;4872:88;;;4940:18;;:::i;:::-;4976:2;4969:22;4663:334;;-1:-1:-1;4663:334:207:o;5002:1392::-;5140:9;5174:18;5215:2;5207:6;5204:14;5201:40;;;5221:18;;:::i;:::-;5267:6;5264:1;5260:14;5293:4;5317:28;5341:2;5337;5333:11;5317:28;:::i;:::-;5379:19;;;5449:14;;;;5414:12;;;;5486:14;5475:26;;5472:46;;;5514:1;5511;5504:12;5472:46;5538:5;5552:809;5568:6;5563:3;5560:15;5552:809;;;5654:3;5641:17;5690:2;5677:11;5674:19;5671:39;;;5706:1;5703;5696:12;5671:39;5733:23;;5779:4;5823:14;5810:11;;;5806:32;5796:60;;5852:1;5849;5842:12;5796:60;5892:2;5879:16;5918:2;5914;5911:10;5908:36;;;5924:18;;:::i;:::-;5970:110;6076:2;-1:-1:-1;;6002:2:207;5998;5994:11;5990:84;5986:93;5970:110;:::i;:::-;5957:123;;6107:2;6100:5;6093:17;6151:14;6146:2;6141;6137;6133:11;6129:20;6126:40;6123:60;;;6179:1;6176;6169:12;6123:60;6238:2;6233;6229;6225:11;6220:2;6213:5;6209:14;6196:45;6286:1;6265:14;;;6261:23;;6254:34;6301:18;;-1:-1:-1;6339:12:207;;;;5585;;5552:809;;;-1:-1:-1;6383:5:207;5002:1392;-1:-1:-1;;;;;;;5002:1392:207:o;6399:340::-;6576:2;6565:9;6558:21;6539:4;6596:45;6637:2;6626:9;6622:18;6614:6;6596:45;:::i;:::-;6588:53;;6689:42;6681:6;6677:55;6672:2;6661:9;6657:18;6650:83;6399:340;;;;;:::o;6744:184::-;-1:-1:-1;;;6793:1:207;6786:88;6893:4;6890:1;6883:15;6917:4;6914:1;6907:15;6933:125;6998:9;;;7019:10;;;7016:36;;;7032:18;;:::i;7063:925::-;7512:66;7504:6;7500:79;7495:3;7488:92;7470:3;7599;7631:2;7627:1;7622:3;7618:11;7611:23;7663:6;7657:13;7679:74;7746:6;7742:1;7737:3;7733:11;7726:4;7718:6;7714:17;7679:74;:::i;:::-;7781:6;7776:3;7772:16;7762:26;;7816:2;7812:1;7808:2;7804:10;7797:22;7850:6;7844:13;7828:29;;7866:75;7932:8;7928:1;7924:2;7920:10;7913:4;7905:6;7901:17;7866:75;:::i;:::-;7961:17;7980:1;7957:25;;7063:925;-1:-1:-1;;;;;7063:925:207:o;8211:464::-;8457:66;8449:6;8445:79;8434:9;8427:98;8561:6;8556:2;8545:9;8541:18;8534:34;8604:2;8599;8588:9;8584:18;8577:30;8408:4;8624:45;8665:2;8654:9;8650:18;8642:6;8624:45;:::i;8933:184::-;-1:-1:-1;;;8982:1:207;8975:88;9082:4;9079:1;9072:15;9106:4;9103:1;9096:15;9122:862;9284:4;9313:2;9353;9342:9;9338:18;9383:2;9372:9;9365:21;9406:6;9441;9435:13;9472:6;9464;9457:22;9510:2;9499:9;9495:18;9488:25;;9572:2;9562:6;9559:1;9555:14;9544:9;9540:30;9536:39;9522:53;;9610:2;9602:6;9598:15;9631:1;9641:314;9655:6;9652:1;9649:13;9641:314;;;9744:66;9732:9;9724:6;9720:22;9716:95;9711:3;9704:108;9835:40;9868:6;9859;9853:13;9835:40;:::i;:::-;9825:50;-1:-1:-1;9933:12:207;;;;9898:15;;;;9677:1;9670:9;9641:314;;;-1:-1:-1;9972:6:207;;9122:862;-1:-1:-1;;;;;;;9122:862:207:o;10362:184::-;-1:-1:-1;;;10411:1:207;10404:88;10511:4;10508:1;10501:15;10535:4;10532:1;10525:15;11001:128;11068:9;;;11089:11;;;11086:37;;;11103:18;;:::i;11134:168::-;11207:9;;;11238;;11255:15;;;11249:22;;11235:37;11225:71;;11276:18;;:::i;12175:492::-;12350:3;12388:6;12382:13;12404:66;12463:6;12458:3;12451:4;12443:6;12439:17;12404:66;:::i;:::-;12533:13;;12492:16;;;;12555:70;12533:13;12492:16;12602:4;12590:17;;12555:70;:::i;:::-;12641:20;;12175:492;-1:-1:-1;;;;12175:492:207:o;12672:439::-;12725:3;12763:5;12757:12;12790:6;12785:3;12778:19;12816:4;12845;12840:3;12836:14;12829:21;;12884:4;12877:5;12873:16;12907:1;12917:169;12931:6;12928:1;12925:13;12917:169;;;12992:13;;12980:26;;13026:12;;;;13061:15;;;;12953:1;12946:9;12917:169;;;-1:-1:-1;13102:3:207;;12672:439;-1:-1:-1;;;;;12672:439:207:o;13116:690::-;13449:3;13438:9;13431:22;13412:4;13476:57;13528:3;13517:9;13513:19;13505:6;13476:57;:::i;:::-;13581:9;13573:6;13569:22;13564:2;13553:9;13549:18;13542:50;13615:33;13641:6;13633;13615:33;:::i;:::-;13601:47;;13684:6;13679:2;13668:9;13664:18;13657:34;13739:9;13731:6;13727:22;13722:2;13711:9;13707:18;13700:50;13767:33;13793:6;13785;13767:33;:::i;13811:896::-;14262:6;14251:9;14244:25;14305:3;14300:2;14289:9;14285:18;14278:31;14225:4;14332:57;14384:3;14373:9;14369:19;14361:6;14332:57;:::i;:::-;14437:9;14429:6;14425:22;14420:2;14409:9;14405:18;14398:50;14471:33;14497:6;14489;14471:33;:::i;:::-;14457:47;;14540:6;14535:2;14524:9;14520:18;14513:34;14596:9;14588:6;14584:22;14578:3;14567:9;14563:19;14556:51;14624:33;14650:6;14642;14624:33;:::i;:::-;14616:41;;;14694:6;14688:3;14677:9;14673:19;14666:35;13811:896;;;;;;;;;:::o;14965:639::-;15215:6;15210:3;15203:19;15185:3;15241:2;15274;15269:3;15265:12;15306:6;15300:13;15371:2;15363:6;15359:15;15392:1;15402:175;15416:6;15413:1;15410:13;15402:175;;;15479:13;;15465:28;;15515:14;;;;15552:15;;;;15438:1;15431:9;15402:175;;;-1:-1:-1;15593:5:207;;14965:639;-1:-1:-1;;;;;;;14965:639:207:o;15609:184::-;-1:-1:-1;;;15658:1:207;15651:88;15758:4;15755:1;15748:15;15782:4;15779:1;15772:15;15798:360;16001:2;15990:9;15983:21;15964:4;16021:45;16062:2;16051:9;16047:18;16039:6;16021:45;:::i;:::-;16097:2;16082:18;;16075:34;;;;-1:-1:-1;16140:2:207;16125:18;16118:34;16013:53;15798:360;-1:-1:-1;15798:360:207:o;16163:512::-;16414:2;16403:9;16396:21;16377:4;16440:56;16492:2;16481:9;16477:18;16469:6;16440:56;:::i;:::-;16544:14;16536:6;16532:27;16527:2;16516:9;16512:18;16505:55;16608:9;16600:6;16596:22;16591:2;16580:9;16576:18;16569:50;16636:33;16662:6;16654;16636:33;:::i;:::-;16628:41;16163:512;-1:-1:-1;;;;;;16163:512:207:o;16680:616::-;16990:6;16979:9;16972:25;17033:3;17028:2;17017:9;17013:18;17006:31;16953:4;17060:57;17112:3;17101:9;17097:19;17089:6;17060:57;:::i;:::-;17165:14;17157:6;17153:27;17148:2;17137:9;17133:18;17126:55;17229:9;17221:6;17217:22;17212:2;17201:9;17197:18;17190:50;17257:33;17283:6;17275;17257:33;:::i;17301:174::-;17368:12;17400:10;;;17412;;;17396:27;;17435:11;;;17432:37;;;17449:18;;:::i;:::-;17432:37;17301:174;;;;:::o;18127:899::-;18549:6;18538:9;18531:25;18592:3;18587:2;18576:9;18572:18;18565:31;18512:4;18619:57;18671:3;18660:9;18656:19;18648:6;18619:57;:::i;:::-;18724:4;18712:17;;18707:2;18692:18;;18685:45;18749:12;18797:15;;;18792:2;18777:18;;18770:43;18850:15;;18844:3;18829:19;;18822:44;18897:3;18882:19;;18875:35;;;18947:22;;;18941:3;18926:19;;18919:51;18987:33;18951:6;19005;18987:33;:::i;:::-;18979:41;18127:899;-1:-1:-1;;;;;;;;;;18127:899:207:o;19031:708::-;19370:3;19359:9;19352:22;19333:4;19397:57;19449:3;19438:9;19434:19;19426:6;19397:57;:::i;:::-;19502:14;19494:6;19490:27;19485:2;19474:9;19470:18;19463:55;19566:12;19558:6;19554:25;19549:2;19538:9;19534:18;19527:53;19616:6;19611:2;19600:9;19596:18;19589:34;19672:9;19664:6;19660:22;19654:3;19643:9;19639:19;19632:51;19700:33;19726:6;19718;19700:33;:::i;:::-;19692:41;19031:708;-1:-1:-1;;;;;;;;19031:708:207:o","linkReferences":{},"immutableReferences":{"36208":[{"start":929,"length":32}]}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","registerStoreHook(bytes32,address,uint8)":"530f4b60","registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":"0ba51f49","supportsInterface(bytes4)":"01ffc9a7","unregisterStoreHook(bytes32,address)":"05609129"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"FieldLayoutLib_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"PackedCounter_InvalidLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"SchemaLib_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SchemaLib_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableNotFound\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnauthorizedCallContext\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_DirectCallToSystemForbidden\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"World_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"},{\"internalType\":\"string[]\",\"name\":\"keyNames\",\"type\":\"string[]\"},{\"internalType\":\"string[]\",\"name\":\"fieldNames\",\"type\":\"string[]\"}],\"name\":\"registerTable\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This contract provides functionality for the registration of store-related resources within the World framework.\",\"errors\":{\"SchemaLib_InvalidLength(uint256)\":[{\"details\":\"Error raised when the provided schema has an invalid length.\"}],\"SchemaLib_StaticTypeAfterDynamicType()\":[{\"details\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_CallbackNotAllowed(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector of the disallowed callback.\"}}],\"World_DelegationNotFound(address,address)\":[{\"params\":{\"delegatee\":\"The address of the delegatee.\",\"delegator\":\"The address of the delegator.\"}}],\"World_DirectCallToSystemForbidden(address)\":[{\"params\":{\"caller\":\"the address who made a direct call to a System\"}}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_InsufficientBalance(uint256,uint256)\":[{\"params\":{\"amount\":\"The amount needed.\",\"balance\":\"The current balance.\"}}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"params\":{\"contractAddress\":\"The address of the contract in question.\",\"interfaceId\":\"The ID of the interface.\"}}],\"World_InvalidNamespace(bytes14)\":[{\"params\":{\"namespace\":\"The invalid namespace.\"}}],\"World_InvalidResourceId(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_SystemAlreadyExists(address)\":[{\"params\":{\"system\":\"The address of the system.\"}}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is set.\"}},\"Store_SpliceDynamicData(bytes32,bytes32[],uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{\"_msgSender()\":{\"returns\":{\"sender\":\"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"value\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"registerStoreHook(bytes32,address,uint8)\":{\"details\":\"The caller must be the owner of the namespace to which the table belongs. The hook must conform to the IStoreHook interface.\",\"params\":{\"enabledHooksBitmap\":\"A bitmap indicating which hook functionalities are enabled.\",\"hookAddress\":\"The address of the storage hook contract.\",\"tableId\":\"The resource ID of the table for which the hook is being registered.\"}},\"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])\":{\"details\":\"Registers a table with the specified configuration. If the namespace for the table does not exist, it's created. Existing namespaces require the caller to be the owner for table registration.\",\"params\":{\"fieldLayout\":\"The field layout structure for the table.\",\"fieldNames\":\"The names of the fields in the table.\",\"keyNames\":\"The names associated with the keys in the table.\",\"keySchema\":\"The schema for the keys of the table.\",\"tableId\":\"The resource ID of the table.\",\"valueSchema\":\"The schema for the values within the table.\"}},\"supportsInterface(bytes4)\":{\"params\":{\"interfaceId\":\"The ID of the interface in question.\"},\"returns\":{\"_0\":\"True if the interface is supported, false otherwise.\"}},\"unregisterStoreHook(bytes32,address)\":{\"details\":\"The caller must be the owner of the namespace to which the table belongs.\",\"params\":{\"hookAddress\":\"The address of the storage hook contract.\",\"tableId\":\"The resource ID of the table from which the hook is being unregistered.\"}}},\"title\":\"Store Registration System\",\"version\":1},\"userdoc\":{\"errors\":{\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_AlreadyInitialized()\":[{\"notice\":\"Raised when trying to initialize an already initialized World.\"}],\"World_CallbackNotAllowed(bytes4)\":[{\"notice\":\"Raised when the World is calling itself via an external call.\"}],\"World_DelegationNotFound(address,address)\":[{\"notice\":\"Raised when the specified delegation is not found.\"}],\"World_DirectCallToSystemForbidden(address)\":[{\"notice\":\"Raised when a System has been called directly and then makes an internal call to World, which is forbidden.\"}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"notice\":\"Raised when trying to register a function selector that already exists.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_InsufficientBalance(uint256,uint256)\":[{\"notice\":\"Raised when there's an insufficient balance for a particular operation.\"}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"notice\":\"Raised when the specified interface is not supported by the contract.\"}],\"World_InvalidNamespace(bytes14)\":[{\"notice\":\"Raised when an namespace contains an invalid sequence of characters (\\\"__\\\").\"}],\"World_InvalidResourceId(bytes32,string)\":[{\"notice\":\"Raised when an invalid resource ID is provided.\"}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Raised when an invalid resource type is provided.\"}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"notice\":\"Raised when trying to register a resource that already exists.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}],\"World_SystemAlreadyExists(address)\":[{\"notice\":\"Raised when trying to register a system that already exists.\"}],\"World_UnlimitedDelegationNotAllowed()\":[{\"notice\":\"Raised when trying to create an unlimited delegation in a context where it is not allowed, e.g. when registering a namespace fallback delegation.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceDynamicData(bytes32,bytes32[],uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"registerStoreHook(bytes32,address,uint8)\":{\"notice\":\"Register a storage hook for a specified table.\"},\"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])\":{\"notice\":\"Register a table within the World framework.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)\"},\"unregisterStoreHook(bytes32,address)\":{\"notice\":\"Unregister a previously registered storage hook for a specified table.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol\":\"StoreRegistrationSystem\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55\",\"dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf\",\"dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4\",\"dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b\",\"dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb\",\"dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84\",\"dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1\",\"dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e\",\"dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924\",\"dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67\",\"dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263\",\"dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912\",\"dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6\",\"dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2\",\"dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99\",\"dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a\",\"dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d\",\"dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3\",\"dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff\",\"dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787\",\"dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551\",\"dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea\",\"dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4\",\"dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44\",\"dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2\",\"dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38\",\"dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64\",\"dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb\",\"dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4\",\"dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf\",\"dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205\",\"dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed\",\"dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU\"]},\"node_modules/@latticexyz/world/src/AccessControl.sol\":{\"keccak256\":\"0xc1b9fa9167dc3d39d5591d0b2d5f7c3c12ad6aeaa0a1b83b1e326ebd104de439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed0ff59e3240fc85509fc5a1bc9c158f2056bd4be82ba88100ed138afc08d60c\",\"dweb:/ipfs/QmZScS3xhT8EMX4RrnVEqWm1VrGBG9JiA6aiZWtWMphF7q\"]},\"node_modules/@latticexyz/world/src/Delegation.sol\":{\"keccak256\":\"0xd049053827c730ad69585c1c7eb52b4fd9774370063aab461021a111ee0bc86a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e5a05e41e45c0054e835565046276d830581ca181e7ff3d83b15c71b6e01af89\",\"dweb:/ipfs/QmZYGFT621rS5fE2WXKX5wqBMENguMuY7DqaXPkZ2rcEfZ\"]},\"node_modules/@latticexyz/world/src/ERC165Checker.sol\":{\"keccak256\":\"0x26204bcfddbc272eae391f4512a629f53697867d582ea8cabcd6a8e04a255270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://46944bac8253250ba3f645a6164df8e996738bc76a544867677e54ede57619a1\",\"dweb:/ipfs/QmY1XSxQY9MuQSEvGaeQT6kqmeJ3VhYyRRTfzCkRmdsWsX\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d\",\"dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3\",\"dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc\",\"dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xd3645ee90c73dd991659a140c0132c5a2aaf27a296c457737b212d87b2f66402\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://519d81e2bc7233b1488339eaf9220f7eb57086dd3ee8e1831708ebc6e87f00db\",\"dweb:/ipfs/Qmf8RjMxuPXbteMeEB3vstjutsCrmveyBFCjVFt7nSYgtc\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x5e733399a521c7a051601e1f31835ac1653d310a04194e2d10c54206277586cb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d2646c3cf530d6768c4479c64477306a38b3358009792dfe82436cf1e6c27f90\",\"dweb:/ipfs/QmdD5Vk7iswuvWVHBsRkw3n7tJ1gaZ9X9y7s2SkurkQ829\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9\",\"dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91\"]},\"node_modules/@latticexyz/world/src/SystemCall.sol\":{\"keccak256\":\"0x9c3e1e5eb40d130e90726ca4bfabd748d190d076ecd95c668f038635f751cad2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40ba8d4ea85cdac5b622117bf70f56466bfd8b3b693fbb4ab266630768f8865d\",\"dweb:/ipfs/QmQ8ttFdCFJdw1thyDJHheoWNkdpQUM2u7kZzi4zj6mYh7\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x4b83d5791209b8f39773b07e5f162dfd0617f5f9b5b4bd371c087412e5ad01cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://033a3777136e6d5c581efc8bf2535403abe44874409c85d17a353fae6dc56006\",\"dweb:/ipfs/QmaXepBDVnmnMdVzuxbGT2qo5vqWnjB75KNCCdxRehrBMX\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74\",\"dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol\":{\"keccak256\":\"0x705f45c60cd9f5cf5ed2b92d73bef71f2c234ec281297dae79779860cfdf9e6f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b927d760e5f09c72c421ad62ab8da11a38a2a47d321e6b023e3d7c2a4a46a458\",\"dweb:/ipfs/QmXMDWhE5gVHURzFAL7cyA7EeFJRkykZRZwRV9qrTBj13Y\"]},\"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol\":{\"keccak256\":\"0x88a0bc28aa9ef62f524fd2592cc0aaaf3e33a8cb0c7674c6dba7f2115be551f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c64f10d7f97971fca0b7b2ab5b38f8d06d85d54b7b34d8ddc90da17264dae7dd\",\"dweb:/ipfs/QmeMgiefFv9fvetswGBG3q2LzL1SJ6zNwBwupSgVpSmpDG\"]},\"node_modules/@latticexyz/world/src/codegen/tables/FunctionSignatures.sol\":{\"keccak256\":\"0xfcaedc1b1a23f7b2c40fbc5cc71d1781de18f0b1cfbc40a83876852659137d2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8bad7219652c0f76a46107facc5fdcde7c1d3798d201499d87a7f584ac46db7\",\"dweb:/ipfs/Qma1yhF31Q9wxDYjQ8eCYdjpLVXjC2VVHMCipUjPVrRVdF\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceDelegationControl.sol\":{\"keccak256\":\"0x05b07d7a06c7e801fb0c0143dde8fce02907d9940f2862b63dcf085d43e54fdf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18eaa2e74e9db4d142a7743c6ab9bfa5e9ff5c3700c0db148840266c4ac8ad35\",\"dweb:/ipfs/QmRiBMxuzDRTST9C4nu8jo6z2D44HYG6VEpKNyDPa6HMhS\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e\",\"dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c\",\"dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol\":{\"keccak256\":\"0x65c5544ed57f2e01d6729339461496fa3db50dd843db6de163e6cca2b9b17c68\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d8acc162ac647954ffcfd98f6083823713b10d8dc4a05defc18199e9929faf2\",\"dweb:/ipfs/QmVEwCPrDFcQ84qbJyfm3dNEXuqMbUVVqi5DddmJUREriD\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c\",\"dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7\",\"dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR\"]},\"node_modules/@latticexyz/world/src/codegen/tables/UserDelegationControl.sol\":{\"keccak256\":\"0x25c8832ec6db8bc83d0a3c274d8cb49f93bfc57e2b0125c739caf19c1a2c8a51\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a226cf322efa14384b1191263136af4792d5e6285a7ffa9030218a44ec97d571\",\"dweb:/ipfs/QmYC19AoGU6v15mzTKq2oHWMKUeRnzxGEkKgHVEUcUKw91\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/LimitedCallContext.sol\":{\"keccak256\":\"0x95e23ed6d143242d8232f484f86c5ed14964d3b3b592a83ac8ad22239a9001aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2974121de686e47139d8adb6bdc7fd0854a56c745cc0497b8a8d88b55a3e77d6\",\"dweb:/ipfs/QmcXGbZL3wnFdJA8cvj9NnQtrnmkj2co84u3CJphYMg2Lc\"]},\"node_modules/@latticexyz/world/src/modules/init/constants.sol\":{\"keccak256\":\"0xe7eb58bdb9ebaf16162db44d7b02d7e95f70ac46910c19649bb57b835f96dad9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://23227e603db835db6390e872d11569749c8c8f22de770aa775ab7c99f450a752\",\"dweb:/ipfs/QmZkGgdNqbno253umMW8sCHC3QKd5WLjrQi7CbH74x36Z8\"]},\"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol\":{\"keccak256\":\"0x6de6e033845658f714e478982b9125bedb74d4db4e5794e647bc3c4fb6b5f84f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4c22d4ee79114f3a59bc7da6bc74e9ca0412a5c0bd606ccf79b141064699d2a7\",\"dweb:/ipfs/QmRuVPECJGZTw9k2PfAdDbbUUnptAF4e9VcqMkzhJ9mBBL\"]},\"node_modules/@latticexyz/world/src/modules/init/implementations/WorldRegistrationSystem.sol\":{\"keccak256\":\"0xe4b91af36de3852dea10f354ee91b7e6c8a78a0f4c40f72b94bdca411599ca6e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fd5e616104f0eb8c261f55901579b09871e91784995e3cb1055ac575995f7535\",\"dweb:/ipfs/QmYinJme183sz4QXH642734s62U8YkGWZ5fNPPfC6GzJmw\"]},\"node_modules/@latticexyz/world/src/requireInterface.sol\":{\"keccak256\":\"0x95e9469529f790727966c513ed19b42abf065a2cd482faba4b8e3404edfb8730\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da63bf514679a87134d2c36563c9c398906e1e06b27cb17eed10895cd7c87658\",\"dweb:/ipfs/QmUrfkw8YTs6zUq5eaWPgdLmTUJVsp1CRBGQz6kdh7bs3C\"]},\"node_modules/@latticexyz/world/src/requireNamespace.sol\":{\"keccak256\":\"0x3a98f80c6438d8670281c5ef1ecfc7ddc9c7c0d09fa66d54dda4fa812c89baa1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb7093a4816d52af381d8959601046a1d307fb32b11dfb787813144eb01ca9c6\",\"dweb:/ipfs/QmUj9hw39TNTtamhWvYAe647CYvNuTfxwsYSu2H4QmHfPi\"]},\"node_modules/@latticexyz/world/src/requireValidNamespace.sol\":{\"keccak256\":\"0x75f4a72a942bd59d237e6a1329da8f9a582b8d3d94ffeeb2ee4d7cfe992881bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5d6d3c0bb90663d8d411ef056faf0a126727fdeba806efea4403815943b94027\",\"dweb:/ipfs/QmXrAEDnRrqj3137fXPc91jyDMHFZHHJ39NmMUEh1y2AgL\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8\",\"dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW\"]},\"node_modules/@latticexyz/world/src/systemHookTypes.sol\":{\"keccak256\":\"0xf312c694828e49cd263d1df8ba82beb0376ce8dce1337f9e62ec52e3ed36a145\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b060c176e46fa6e55d2f525d1f1c64e3c371e6bf24b6d0ff05ae20b3c0c0c0d\",\"dweb:/ipfs/QmdLfnBQrYnLq1iwjX9UyzpDqe6EyJ21T56ZWUVJr1VQCy\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d\",\"dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"FieldLayoutLib_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyFields"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"PackedCounter_InvalidLength"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"SchemaLib_InvalidLength"},{"inputs":[],"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableNotFound"},{"inputs":[],"type":"error","name":"UnauthorizedCallContext"},{"inputs":[{"internalType":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"inputs":[],"type":"error","name":"World_AlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_CallbackNotAllowed"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"address","name":"delegatee","type":"address"}],"type":"error","name":"World_DelegationNotFound"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_DirectCallToSystemForbidden"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorAlreadyExists"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorNotFound"},{"inputs":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"type":"error","name":"World_InsufficientBalance"},{"inputs":[{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"type":"error","name":"World_InterfaceNotSupported"},{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"World_InvalidNamespace"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceId"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceType"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceNotFound"},{"inputs":[{"internalType":"address","name":"system","type":"address"}],"type":"error","name":"World_SystemAlreadyExists"},{"inputs":[],"type":"error","name":"World_UnlimitedDelegationNotAllowed"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"sender","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"value","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"},{"internalType":"uint8","name":"enabledHooksBitmap","type":"uint8"}],"stateMutability":"nonpayable","type":"function","name":"registerStoreHook"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"},{"internalType":"Schema","name":"keySchema","type":"bytes32"},{"internalType":"Schema","name":"valueSchema","type":"bytes32"},{"internalType":"string[]","name":"keyNames","type":"string[]"},{"internalType":"string[]","name":"fieldNames","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"registerTable"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterStoreHook"}],"devdoc":{"kind":"dev","methods":{"_msgSender()":{"returns":{"sender":"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"value":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"registerStoreHook(bytes32,address,uint8)":{"details":"The caller must be the owner of the namespace to which the table belongs. The hook must conform to the IStoreHook interface.","params":{"enabledHooksBitmap":"A bitmap indicating which hook functionalities are enabled.","hookAddress":"The address of the storage hook contract.","tableId":"The resource ID of the table for which the hook is being registered."}},"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":{"details":"Registers a table with the specified configuration. If the namespace for the table does not exist, it's created. Existing namespaces require the caller to be the owner for table registration.","params":{"fieldLayout":"The field layout structure for the table.","fieldNames":"The names of the fields in the table.","keyNames":"The names associated with the keys in the table.","keySchema":"The schema for the keys of the table.","tableId":"The resource ID of the table.","valueSchema":"The schema for the values within the table."}},"supportsInterface(bytes4)":{"params":{"interfaceId":"The ID of the interface in question."},"returns":{"_0":"True if the interface is supported, false otherwise."}},"unregisterStoreHook(bytes32,address)":{"details":"The caller must be the owner of the namespace to which the table belongs.","params":{"hookAddress":"The address of the storage hook contract.","tableId":"The resource ID of the table from which the hook is being unregistered."}}},"version":1},"userdoc":{"kind":"user","methods":{"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"registerStoreHook(bytes32,address,uint8)":{"notice":"Register a storage hook for a specified table."},"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":{"notice":"Register a table within the World framework."},"supportsInterface(bytes4)":{"notice":"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)"},"unregisterStoreHook(bytes32,address)":{"notice":"Unregister a previously registered storage hook for a specified table."}},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol":"StoreRegistrationSystem"},"evmVersion":"cancun","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd","urls":["bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55","dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728","urls":["bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf","dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09","urls":["bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4","dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3","urls":["bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b","dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreData.sol":{"keccak256":"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec","urls":["bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb","dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79","urls":["bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84","dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f","urls":["bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1","dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99","urls":["bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e","dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449","urls":["bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924","dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167","urls":["bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67","dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc","urls":["bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263","dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d","urls":["bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912","dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM"],"license":"MIT"},"node_modules/@latticexyz/store/src/PackedCounter.sol":{"keccak256":"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e","urls":["bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6","dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18","urls":["bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2","dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8","urls":["bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99","dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5","urls":["bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a","dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f","urls":["bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d","dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20","urls":["bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3","dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9","urls":["bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff","dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c","urls":["bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787","dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7","urls":["bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551","dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763","urls":["bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea","dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b","urls":["bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4","dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270","urls":["bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44","dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50","urls":["bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2","dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410","urls":["bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38","dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305","urls":["bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64","dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554","urls":["bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb","dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7","urls":["bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4","dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29","urls":["bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf","dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a","urls":["bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205","dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61","urls":["bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed","dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU"],"license":"MIT"},"node_modules/@latticexyz/world/src/AccessControl.sol":{"keccak256":"0xc1b9fa9167dc3d39d5591d0b2d5f7c3c12ad6aeaa0a1b83b1e326ebd104de439","urls":["bzz-raw://ed0ff59e3240fc85509fc5a1bc9c158f2056bd4be82ba88100ed138afc08d60c","dweb:/ipfs/QmZScS3xhT8EMX4RrnVEqWm1VrGBG9JiA6aiZWtWMphF7q"],"license":"MIT"},"node_modules/@latticexyz/world/src/Delegation.sol":{"keccak256":"0xd049053827c730ad69585c1c7eb52b4fd9774370063aab461021a111ee0bc86a","urls":["bzz-raw://e5a05e41e45c0054e835565046276d830581ca181e7ff3d83b15c71b6e01af89","dweb:/ipfs/QmZYGFT621rS5fE2WXKX5wqBMENguMuY7DqaXPkZ2rcEfZ"],"license":"MIT"},"node_modules/@latticexyz/world/src/ERC165Checker.sol":{"keccak256":"0x26204bcfddbc272eae391f4512a629f53697867d582ea8cabcd6a8e04a255270","urls":["bzz-raw://46944bac8253250ba3f645a6164df8e996738bc76a544867677e54ede57619a1","dweb:/ipfs/QmY1XSxQY9MuQSEvGaeQT6kqmeJ3VhYyRRTfzCkRmdsWsX"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e","urls":["bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d","dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695","urls":["bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3","dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc","urls":["bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc","dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xd3645ee90c73dd991659a140c0132c5a2aaf27a296c457737b212d87b2f66402","urls":["bzz-raw://519d81e2bc7233b1488339eaf9220f7eb57086dd3ee8e1831708ebc6e87f00db","dweb:/ipfs/Qmf8RjMxuPXbteMeEB3vstjutsCrmveyBFCjVFt7nSYgtc"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x5e733399a521c7a051601e1f31835ac1653d310a04194e2d10c54206277586cb","urls":["bzz-raw://d2646c3cf530d6768c4479c64477306a38b3358009792dfe82436cf1e6c27f90","dweb:/ipfs/QmdD5Vk7iswuvWVHBsRkw3n7tJ1gaZ9X9y7s2SkurkQ829"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3","urls":["bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9","dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91"],"license":"MIT"},"node_modules/@latticexyz/world/src/SystemCall.sol":{"keccak256":"0x9c3e1e5eb40d130e90726ca4bfabd748d190d076ecd95c668f038635f751cad2","urls":["bzz-raw://40ba8d4ea85cdac5b622117bf70f56466bfd8b3b693fbb4ab266630768f8865d","dweb:/ipfs/QmQ8ttFdCFJdw1thyDJHheoWNkdpQUM2u7kZzi4zj6mYh7"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x4b83d5791209b8f39773b07e5f162dfd0617f5f9b5b4bd371c087412e5ad01cf","urls":["bzz-raw://033a3777136e6d5c581efc8bf2535403abe44874409c85d17a353fae6dc56006","dweb:/ipfs/QmaXepBDVnmnMdVzuxbGT2qo5vqWnjB75KNCCdxRehrBMX"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd","urls":["bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74","dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol":{"keccak256":"0x705f45c60cd9f5cf5ed2b92d73bef71f2c234ec281297dae79779860cfdf9e6f","urls":["bzz-raw://b927d760e5f09c72c421ad62ab8da11a38a2a47d321e6b023e3d7c2a4a46a458","dweb:/ipfs/QmXMDWhE5gVHURzFAL7cyA7EeFJRkykZRZwRV9qrTBj13Y"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol":{"keccak256":"0x88a0bc28aa9ef62f524fd2592cc0aaaf3e33a8cb0c7674c6dba7f2115be551f8","urls":["bzz-raw://c64f10d7f97971fca0b7b2ab5b38f8d06d85d54b7b34d8ddc90da17264dae7dd","dweb:/ipfs/QmeMgiefFv9fvetswGBG3q2LzL1SJ6zNwBwupSgVpSmpDG"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/FunctionSignatures.sol":{"keccak256":"0xfcaedc1b1a23f7b2c40fbc5cc71d1781de18f0b1cfbc40a83876852659137d2b","urls":["bzz-raw://d8bad7219652c0f76a46107facc5fdcde7c1d3798d201499d87a7f584ac46db7","dweb:/ipfs/Qma1yhF31Q9wxDYjQ8eCYdjpLVXjC2VVHMCipUjPVrRVdF"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceDelegationControl.sol":{"keccak256":"0x05b07d7a06c7e801fb0c0143dde8fce02907d9940f2862b63dcf085d43e54fdf","urls":["bzz-raw://18eaa2e74e9db4d142a7743c6ab9bfa5e9ff5c3700c0db148840266c4ac8ad35","dweb:/ipfs/QmRiBMxuzDRTST9C4nu8jo6z2D44HYG6VEpKNyDPa6HMhS"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd","urls":["bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e","dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568","urls":["bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c","dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol":{"keccak256":"0x65c5544ed57f2e01d6729339461496fa3db50dd843db6de163e6cca2b9b17c68","urls":["bzz-raw://9d8acc162ac647954ffcfd98f6083823713b10d8dc4a05defc18199e9929faf2","dweb:/ipfs/QmVEwCPrDFcQ84qbJyfm3dNEXuqMbUVVqi5DddmJUREriD"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194","urls":["bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c","dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21","urls":["bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7","dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/UserDelegationControl.sol":{"keccak256":"0x25c8832ec6db8bc83d0a3c274d8cb49f93bfc57e2b0125c739caf19c1a2c8a51","urls":["bzz-raw://a226cf322efa14384b1191263136af4792d5e6285a7ffa9030218a44ec97d571","dweb:/ipfs/QmYC19AoGU6v15mzTKq2oHWMKUeRnzxGEkKgHVEUcUKw91"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/LimitedCallContext.sol":{"keccak256":"0x95e23ed6d143242d8232f484f86c5ed14964d3b3b592a83ac8ad22239a9001aa","urls":["bzz-raw://2974121de686e47139d8adb6bdc7fd0854a56c745cc0497b8a8d88b55a3e77d6","dweb:/ipfs/QmcXGbZL3wnFdJA8cvj9NnQtrnmkj2co84u3CJphYMg2Lc"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/constants.sol":{"keccak256":"0xe7eb58bdb9ebaf16162db44d7b02d7e95f70ac46910c19649bb57b835f96dad9","urls":["bzz-raw://23227e603db835db6390e872d11569749c8c8f22de770aa775ab7c99f450a752","dweb:/ipfs/QmZkGgdNqbno253umMW8sCHC3QKd5WLjrQi7CbH74x36Z8"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol":{"keccak256":"0x6de6e033845658f714e478982b9125bedb74d4db4e5794e647bc3c4fb6b5f84f","urls":["bzz-raw://4c22d4ee79114f3a59bc7da6bc74e9ca0412a5c0bd606ccf79b141064699d2a7","dweb:/ipfs/QmRuVPECJGZTw9k2PfAdDbbUUnptAF4e9VcqMkzhJ9mBBL"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/implementations/WorldRegistrationSystem.sol":{"keccak256":"0xe4b91af36de3852dea10f354ee91b7e6c8a78a0f4c40f72b94bdca411599ca6e","urls":["bzz-raw://fd5e616104f0eb8c261f55901579b09871e91784995e3cb1055ac575995f7535","dweb:/ipfs/QmYinJme183sz4QXH642734s62U8YkGWZ5fNPPfC6GzJmw"],"license":"MIT"},"node_modules/@latticexyz/world/src/requireInterface.sol":{"keccak256":"0x95e9469529f790727966c513ed19b42abf065a2cd482faba4b8e3404edfb8730","urls":["bzz-raw://da63bf514679a87134d2c36563c9c398906e1e06b27cb17eed10895cd7c87658","dweb:/ipfs/QmUrfkw8YTs6zUq5eaWPgdLmTUJVsp1CRBGQz6kdh7bs3C"],"license":"MIT"},"node_modules/@latticexyz/world/src/requireNamespace.sol":{"keccak256":"0x3a98f80c6438d8670281c5ef1ecfc7ddc9c7c0d09fa66d54dda4fa812c89baa1","urls":["bzz-raw://fb7093a4816d52af381d8959601046a1d307fb32b11dfb787813144eb01ca9c6","dweb:/ipfs/QmUj9hw39TNTtamhWvYAe647CYvNuTfxwsYSu2H4QmHfPi"],"license":"MIT"},"node_modules/@latticexyz/world/src/requireValidNamespace.sol":{"keccak256":"0x75f4a72a942bd59d237e6a1329da8f9a582b8d3d94ffeeb2ee4d7cfe992881bc","urls":["bzz-raw://5d6d3c0bb90663d8d411ef056faf0a126727fdeba806efea4403815943b94027","dweb:/ipfs/QmXrAEDnRrqj3137fXPc91jyDMHFZHHJ39NmMUEh1y2AgL"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a","urls":["bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8","dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW"],"license":"MIT"},"node_modules/@latticexyz/world/src/systemHookTypes.sol":{"keccak256":"0xf312c694828e49cd263d1df8ba82beb0376ce8dce1337f9e62ec52e3ed36a145","urls":["bzz-raw://2b060c176e46fa6e55d2f525d1f1c64e3c371e6bf24b6d0ff05ae20b3c0c0c0d","dweb:/ipfs/QmdLfnBQrYnLq1iwjX9UyzpDqe6EyJ21T56ZWUVJr1VQCy"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed","urls":["bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d","dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12"],"license":"MIT"}},"version":1},"id":89}
|
1
|
+
{"abi":[{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"sender","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"value","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"registerStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"},{"name":"enabledHooksBitmap","type":"uint8","internalType":"uint8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerTable","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"},{"name":"keySchema","type":"bytes32","internalType":"Schema"},{"name":"valueSchema","type":"bytes32","internalType":"Schema"},{"name":"keyNames","type":"string[]","internalType":"string[]"},{"name":"fieldNames","type":"string[]","internalType":"string[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"function","name":"unregisterStoreHook","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"hookAddress","type":"address","internalType":"contract IStoreHook"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"PackedCounter"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"PackedCounter"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"FieldLayoutLib_Empty","inputs":[]},{"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PackedCounter_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType","inputs":[]},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_IndexOutOfBounds","inputs":[{"name":"length","type":"uint256","internalType":"uint256"},{"name":"accessedIndex","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidSplice","inputs":[{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"fieldLength","type":"uint40","internalType":"uint40"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_TableNotFound","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]},{"type":"error","name":"UnauthorizedCallContext","inputs":[]},{"type":"error","name":"World_AccessDenied","inputs":[{"name":"resource","type":"string","internalType":"string"},{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_AlreadyInitialized","inputs":[]},{"type":"error","name":"World_CallbackNotAllowed","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_DelegationNotFound","inputs":[{"name":"delegator","type":"address","internalType":"address"},{"name":"delegatee","type":"address","internalType":"address"}]},{"type":"error","name":"World_DirectCallToSystemForbidden","inputs":[{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"World_FunctionSelectorAlreadyExists","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_FunctionSelectorNotFound","inputs":[{"name":"functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InsufficientBalance","inputs":[{"name":"balance","type":"uint256","internalType":"uint256"},{"name":"amount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"World_InterfaceNotSupported","inputs":[{"name":"contractAddress","type":"address","internalType":"address"},{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"World_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"World_InvalidResourceId","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceAlreadyExists","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_ResourceNotFound","inputs":[{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"World_SystemAlreadyExists","inputs":[{"name":"system","type":"address","internalType":"address"}]},{"type":"error","name":"World_UnlimitedDelegationNotAllowed","inputs":[]}],"bytecode":{"object":"0x60a060405230608052348015610013575f80fd5b506080516131cc61002c5f395f6103a101526131cc5ff3fe608060405234801561000f575f80fd5b506004361061007a575f3560e01c8063119df25f11610058578063119df25f146100ce57806345ec9354146100fb578063530f4b601461010e578063e1af802c14610121575f80fd5b806301ffc9a71461007e57806305609129146100a65780630ba51f49146100bb575b5f80fd5b61009161008c3660046129f0565b610129565b60405190151581526020015b60405180910390f35b6100b96100b4366004612a52565b6101c1565b005b6100b96100c9366004612ac4565b6101e8565b6100d66102da565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161009d565b604051601f19360135815260200161009d565b6100b961011c366004612b53565b6102e8565b6100d6610381565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b6101c961038a565b6101da826101d56102da565b6103fb565b6101e482826104b6565b5050565b6101f061038a565b5f6101fa896104e1565b6fffffffffffffffffffffffffffffffff191603610259578761021c896104f7565b6040517fe4ac069e000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b60405180910390fd5b6102a47f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008a1617610624565b6102b0886101d56102da565b6102d0888888886102c1888a612c3f565b6102cb8789612c3f565b610672565b5050505050505050565b5f6102e3610ad3565b905090565b6102f061038a565b61031a827f1873396a00000000000000000000000000000000000000000000000000000000610b05565b6103657f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610624565b610371836101d56102da565b61037c838383610b85565b505050565b5f6102e3610c73565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630036103f9576040517f9f03a02600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b73ffffffffffffffffffffffffffffffffffffffff811661045d7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610c7c565b73ffffffffffffffffffffffffffffffffffffffff16146101e457610481826104f7565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610250929190612d0b565b6101e47f746273746f726500000000000000000053746f7265486f6f6b730000000000008383610d15565b5f6104ee60706010612d56565b9190911b919050565b606081601081901b5f610509836104e1565b9050827fffffffffffffffffffffffffffff0000000000000000000000000000000000008316156105645761055f7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610e53565b61059b565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff198316156105c2576105bd83610e53565b6105f9565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b60405160200161060b93929190612d69565b6040516020818303038152906040529350505050919050565b61062d81610edc565b61066f578061063b826104f7565b6040517ffbf10ce6000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b50565b613a3160f11b867fffff00000000000000000000000000000000000000000000000000000000000016148015906106eb57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561074c57613a3160f11b868760405160200161070a91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610250939291600401612df6565b61075585610f76565b6107608460016111b8565b61076a835f6111b8565b60e084901c60e885901c0160ff168251146107ca5760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1681511461082a5760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146108a25760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b6108ab85611355565b6108b484611355565b14610906576108c285611355565b6108cb84611355565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b61090f85611386565b61091884611386565b1461096a5761092685611386565b61092f84611386565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b5f5b61097586611355565b811015610a105761099f61098985836113a2565b60c581111561099a5761099a612e36565b6113c9565b6008601b8390030287901c60ff1614610a08576008601b8290030286901c60ff166109cd61098986846113a2565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60010161096c565b50610a1a86610edc565b15610a74578586604051602001610a3391815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b610ac08686868686604051602001610a8c9190612e4a565b60405160208183030381529060405286604051602001610aac9190612e4a565b604051602081830303815290604052611421565b610acb866001611500565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610b025750335b90565b610b0f82826115b5565b6101e4576040517f74b5e6ff00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201527fffffffff0000000000000000000000000000000000000000000000000000000082166024820152604401610250565b613a3160f11b837fffff0000000000000000000000000000000000000000000000000000000000001614610bcd57613a3160f11b838460405160200161070a91815260200190565b610bd683610edc565b610c2f578283604051602001610bee91815260200190565b60408051601f19818403018152908290527f41e713ad0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b61037c837fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606085901b166bff0000000000000000000000605885901b16176115d0565b5f6102e3611685565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610cb357610cb3612eca565b60209081029190910101525f610d0a7f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006116d0565b60601c949350505050565b5f610d208484611705565b90505f815167ffffffffffffffff811115610d3d57610d3d612bfa565b604051908082528060200260200182016040528015610d66578160200160208202803683370190505b5090505f805b8351811015610e44578473ffffffffffffffffffffffffffffffffffffffff16610dbd858381518110610da157610da1612eca565b60200260200101516affffffffffffffffffffff191660601c90565b73ffffffffffffffffffffffffffffffffffffffff1614610e3c57838181518110610dea57610dea612eca565b6020026020010151838381518110610e0457610e04612eca565b7fffffffffffffffffffffffffffffffffffffffffff0000000000000000000000909216602092830291909101909101526001909101905b600101610d6c565b50808252610acb86868461176b565b60605f5b6010811015610ea8576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615610ea857600101610e57565b604080516fffffffffffffffffffffffffffffffff198516602082015281516030909101909152818152805b949350505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610f1357610f13612eca565b60209081029190910101525f610f6a7f746273746f72650000000000000000005265736f75726365496473000000000083837e010100010000000000000000000000000000000000000000000000000000006116d0565b9050610ed48160f81c90565b80610fad576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610fb782611386565b90506005811115610ffe576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610250565b5f61100883611355565b90505f6110158383612d56565b9050601c81111561105c576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610250565b5f805b838110156111055760ff601b82900360080287901c165f8190036110b2576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b60208111156110f0576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b6110fa8184612d56565b92505060010161105f565b5061110f856117c5565b811461115b5761111e856117c5565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610250565b825b601c811015610acb5760ff601b82900360080287901c1680156111af576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b5060010161115d565b801580156111c4575081155b156111e457604051635318beb960e01b81525f6004820152602401610250565b5f6111ee83611386565b9050600581111561121557604051635318beb960e01b815260048101829052602401610250565b5f61121f84611355565b90505f61122c8383612d56565b9050601c81111561125357604051635318beb960e01b815260048101829052602401610250565b5f805b838110156112bc575f61126c61098989846113a2565b9050805f036112a7576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6112b18184612d56565b925050600101611256565b506112c6866117c5565b81146112f1576112d5866117c5565b604051635318beb960e01b815260040161025091815260200190565b825b8281101561134c575f61130961098989846113a2565b90508015611343576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016112f3565b50505050505050565b5f6008600161136660026020612ede565b6113709190612ede565b61137a9190612ef1565b8260ff911c1692915050565b5f600860018061139860026020612ede565b6113669190612ede565b5f601b8290036008028360ff911c1660c58111156113c2576113c2612e36565b9392505050565b5f808260c58111156113dd576113dd612e36565b60ff16905060618110156113f757601f1660010192915050565b60618360c581111561140b5761140b612e36565b036114195750601492915050565b505f92915050565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f61145784846117e7565b90505f6114648585611803565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f8151811061149c5761149c612eca565b60209081029190910101526114f47f746273746f72650000000000000000005461626c657300000000000000000000828686867e6003022020200000000000000000000000000000000000000000000000000061182f565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061153457611534612eca565b60200260200101818152505061037c7f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f8560405160200161158091151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611b51565b5f6115bf83611b6d565b80156113c257506113c28383611bd0565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061160457611604612eca565b60200260200101818152505061037c7f746273746f726500000000000000000053746f7265486f6f6b730000000000005f1b825f8560405160200161167191907fffffffffffffffffffffffffffffffffffffffffff000000000000000000000091909116815260150190565b604051602081830303815290604052611c9c565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f9073ffffffffffffffffffffffffffffffffffffffff16806116cb573391505090565b919050565b5f6116fc6116de8686611cd4565b60ff858116601b0360080285901c166116f78587611d29565b611d61565b95945050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061173d5761173d612eca565b6020026020010181815250505f61175585835f611db1565b90506116fc611766825f8451611dea565b611e76565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061179f5761179f612eca565b6020026020010181815250506117bf84825f6117ba86611e85565b611e94565b50505050565b5f60086117d460026020612ede565b6117de9190612ef1565b9190911c919050565b815181515f9181810160389190911b1760609190911b176113c2565b60608282604051602001611818929190612f08565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036118bb57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516118ae9493929190612f70565b60405180910390a2610acb565b5f6118c587611ecc565b90505f5b8151811015611997575f8282815181106118e5576118e5612eca565b602002602001015190506119116001826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561198e576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611960908c908c908c908c908c908c90600401612fae565b5f604051808303815f87803b158015611977575f80fd5b505af1158015611989573d5f803e3d5ffd5b505050505b506001016118c9565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516119ce9493929190612f70565b60405180910390a25f6119e18888611cd4565b90505f6020870190506119f7825f895184611f69565b5f611a0185611386565b1115611a81575f611a128a8a612024565b87815590506020860191505f805f5b611a2a88611386565b8160ff161015611a7c57611a3f8d8d83612079565b9250611a5a8a8260ff166028026038011c64ffffffffff1690565b9150611a68835f8488611f69565b611a728286612d56565b9450600101611a21565b505050505b5f5b83518110156114f4575f848281518110611a9f57611a9f612eca565b60200260200101519050611acb6002826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15611b48576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611b1a908e908e908e908e908e908e90600401612fae565b5f604051808303815f87803b158015611b31575f80fd5b505af1158015611b43573d5f803e3d5ffd5b505050505b50600101611a83565b611b668585611b608487611d29565b856120f7565b5050505050565b5f611b98827f01ffc9a700000000000000000000000000000000000000000000000000000000611bd0565b80156101bb5750611bc9827fffffffff00000000000000000000000000000000000000000000000000000000611bd0565b1592915050565b6040517fffffffff00000000000000000000000000000000000000000000000000000000821660248201525f90819060440160408051601f19818403018152919052602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a70000000000000000000000000000000000000000000000000000000017815282519293505f9283928392909183918a617530fa92503d91505f519050828015611c86575060208210155b8015611c9157505f81115b979650505050505050565b5f611ca78585612382565b90505f611cc3828560ff166028026038011c64ffffffffff1690565b9050610acb868686845f8888612394565b5f8282604051602001611ce8929190613006565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff16811015611d5957611d4f60ff601b83900360080287901c1683612d56565b9150600101611d2d565b509392505050565b5f60208210611d8657602082048401935060208281611d8257611d82613040565b0691505b508254600882021b602082900380841115611d59576001850154600882021c82179150509392505050565b6060610ed4611dc1858585612079565b5f611de585611dd08989612382565b9060ff166028026038011c64ffffffffff1690565b612759565b5f81831180611df95750835182115b15611e36578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161025093929190613054565b60208401611e448482612d56565b90505f611e518585612ede565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6113c28360155f61277c565b6060816113c28160155f6127f4565b5f611e9f8585612382565b90505f611ebb828560ff166028026038011c64ffffffffff1690565b9050610acb8686865f858888612394565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110611f0457611f04612eca565b60209081029190910101525f611f3b7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611db1565b9050610ed4611766825f8451611dea565b5f8160ff1682611f5c8560581c90565b1660ff1614905092915050565b8215611fe15760208310611f9357602083048401935060208381611f8f57611f8f613040565b0692505b8215611fe15760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611fd25750506117bf565b50600194909401939182900391015b5b602082106120035780518455600190930192601f1990910190602001611fe2565b81156117bf575f5f19600884021c8554835182191691161785555050505050565b5f8282604051602001612038929190613006565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f838360405160200161208d929190613006565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361218157837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161217493929190613078565b60405180910390a26117bf565b5f61218c8585611cd4565b90505f61219886611ecc565b90505f5b8151811015612266575f8282815181106121b8576121b8612eca565b602002602001015190506121e46004826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561225d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061222f908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612246575f80fd5b505af1158015612258573d5f803e3d5ffd5b505050505b5060010161219c565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161229b93929190613078565b60405180910390a26122b6828565ffffffffffff1685612846565b5f5b815181101561134c575f8282815181106122d4576122d4612eca565b602002602001015190506123006008826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15612379576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061234b908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612362575f80fd5b505af1158015612374573d5f803e3d5ffd5b505050505b506001016122b8565b5f6113c26123908484612024565b5490565b613a3160f11b877fffff00000000000000000000000000000000000000000000000000000000000016146123dc57613a3160f11b878860405160200161070a91815260200190565b5f6123f6828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff168361240e9190612ede565b6124189190612d56565b905080821415801561243a57508161243086886130ec565b64ffffffffff1614155b1561248a576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610250565b818664ffffffffff1611156124db576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610250565b5f6124e784898461285c565b90505f6124f38b611ecc565b90505f5b81518110156125c4575f82828151811061251357612513612eca565b6020026020010151905061253f6010826affffffffffffffffffffff1916611f4c90919063ffffffff16565b156125bb57606081901c73ffffffffffffffffffffffffffffffffffffffff166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b815260040161258d9796959493929190613111565b5f604051808303815f87803b1580156125a4575f80fd5b505af11580156125b6573d5f803e3d5ffd5b505050505b506001016124f7565b5064ffffffffff88165f5b8a60ff168160ff161015612602576125f6878260ff166028026038011c64ffffffffff1690565b909101906001016125cf565b508b7faa63765a776145e5e6492f471ae097dfed11cd57a61bc2679dd43180422385b48c838b878c60405161263b95949392919061316e565b60405180910390a25082841461265b575f6126568c8c612024565b839055505b5f6126678c8c8c612079565b905061267b818a64ffffffffff1689612846565b505f5b815181101561274b575f82828151811061269a5761269a612eca565b602002602001015190506126c66020826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561274257606081901c73ffffffffffffffffffffffffffffffffffffffff1663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016127149796959493929190613111565b5f604051808303815f87803b15801561272b575f80fd5b505af115801561273d573d5f803e3d5ffd5b505050505b5060010161267e565b505050505050505050505050565b60405160208101601f19603f8484010116604052828252611d5985858584612929565b60605f6127898560801c90565b90506fffffffffffffffffffffffffffffffff85165f8582816127ae576127ae613040565b0490506040519350602084016020820281016040528185525f5b828110156127e8578451871c8252938701936020909101906001016127c8565b50505050509392505050565b82516060905f6128048583612ef1565b9050604051925060208301601f19603f83860101166040528184525f602088015b848210156127e8578051871b83529187019160019190910190602001612825565b61037c838383516128578560200190565b611f69565b5f64ffffffffff82111561289f576040517f4767058800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff168085106128d157808503820191506128d9565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b82156129ad57602083106129535760208304840193506020838161294f5761294f613040565b0692505b82156129ad5760208390035f8184101561297457505f19600884021c61297d565b505f19600882021c5b8554600886021b81845116821982161784525081841161299e5750506117bf565b50600194909401939182900391015b5b602082106129cf5783548152600190930192601f19909101906020016129ae565b81156117bf575f5f19600884021c8251865482191691161782525050505050565b5f60208284031215612a00575f80fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146113c2575f80fd5b803573ffffffffffffffffffffffffffffffffffffffff811681146116cb575f80fd5b5f8060408385031215612a63575f80fd5b82359150612a7360208401612a2f565b90509250929050565b5f8083601f840112612a8c575f80fd5b50813567ffffffffffffffff811115612aa3575f80fd5b6020830191508360208260051b8501011115612abd575f80fd5b9250929050565b5f805f805f805f8060c0898b031215612adb575f80fd5b88359750602089013596506040890135955060608901359450608089013567ffffffffffffffff80821115612b0e575f80fd5b612b1a8c838d01612a7c565b909650945060a08b0135915080821115612b32575f80fd5b50612b3f8b828c01612a7c565b999c989b5096995094979396929594505050565b5f805f60608486031215612b65575f80fd5b83359250612b7560208501612a2f565b9150604084013560ff81168114612b8a575f80fd5b809150509250925092565b5f5b83811015612baf578181015183820152602001612b97565b50505f910152565b5f8151808452612bce816020860160208601612b95565b601f01601f19169290920160200192915050565b828152604060208201525f610ed46040830184612bb7565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612c3757612c37612bfa565b604052919050565b5f67ffffffffffffffff80841115612c5957612c59612bfa565b8360051b6020612c6a818301612c0e565b868152918501918181019036841115612c81575f80fd5b865b84811015612cff57803586811115612c99575f80fd5b8801601f3681830112612caa575f80fd5b813588811115612cbc57612cbc612bfa565b612ccd87601f198484011601612c0e565b91508082523687828501011115612ce2575f80fd5b80878401888401375f908201870152845250918301918301612c83565b50979650505050505050565b604081525f612d1d6040830185612bb7565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101bb576101bb612d42565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612dc9816003860160208901612b95565b808401905081600382015284519150612de9826004830160208801612b95565b0160040195945050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f6116fc6060830184612bb7565b634e487b7160e01b5f52602160045260245ffd5b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015612ebd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452612eab858351612bb7565b94509285019290850190600101612e71565b5092979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b818103818111156101bb576101bb612d42565b80820281158282048414176101bb576101bb612d42565b5f8351612f19818460208801612b95565b835190830190612f2d818360208801612b95565b01949350505050565b5f815180845260208085019450602084015f5b83811015612f6557815187529582019590820190600101612f49565b509495945050505050565b608081525f612f826080830187612f36565b8281036020840152612f948187612bb7565b90508460408401528281036060840152611c918185612bb7565b86815260c060208201525f612fc660c0830188612f36565b8281036040840152612fd88188612bb7565b90508560608401528281036080840152612ff28186612bb7565b9150508260a0830152979650505050505050565b8281525f60208083018451602086015f5b8281101561303357815184529284019290840190600101613017565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b606081525f6130666060830186612bb7565b60208301949094525060400152919050565b606081525f61308a6060830186612f36565b65ffffffffffff8516602084015282810360408401526130aa8185612bb7565b9695505050505050565b848152608060208201525f6130cc6080830186612f36565b65ffffffffffff851660408401528281036060840152611c918185612bb7565b64ffffffffff81811683821601908082111561310a5761310a612d42565b5092915050565b87815260e060208201525f61312960e0830189612f36565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526131608185612bb7565b9a9950505050505050505050565b60a081525f61318060a0830188612f36565b65ffffffffffff8716602084015264ffffffffff8616604084015284606084015282810360808401526131b38185612bb7565b9897505050505050505056fea164736f6c6343000818000a","sourceMap":"1115:3225:89:-:0;;;915:4:82;872:48;;1115:3225:89;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c8063119df25f11610058578063119df25f146100ce57806345ec9354146100fb578063530f4b601461010e578063e1af802c14610121575f80fd5b806301ffc9a71461007e57806305609129146100a65780630ba51f49146100bb575b5f80fd5b61009161008c3660046129f0565b610129565b60405190151581526020015b60405180910390f35b6100b96100b4366004612a52565b6101c1565b005b6100b96100c9366004612ac4565b6101e8565b6100d66102da565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161009d565b604051601f19360135815260200161009d565b6100b961011c366004612b53565b6102e8565b6100d6610381565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806101bb57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b6101c961038a565b6101da826101d56102da565b6103fb565b6101e482826104b6565b5050565b6101f061038a565b5f6101fa896104e1565b6fffffffffffffffffffffffffffffffff191603610259578761021c896104f7565b6040517fe4ac069e000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b60405180910390fd5b6102a47f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff000000000000000000000000000000008a1617610624565b6102b0886101d56102da565b6102d0888888886102c1888a612c3f565b6102cb8789612c3f565b610672565b5050505050505050565b5f6102e3610ad3565b905090565b6102f061038a565b61031a827f1873396a00000000000000000000000000000000000000000000000000000000610b05565b6103657f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610624565b610371836101d56102da565b61037c838383610b85565b505050565b5f6102e3610c73565b73ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001630036103f9576040517f9f03a02600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b73ffffffffffffffffffffffffffffffffffffffff811661045d7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617610c7c565b73ffffffffffffffffffffffffffffffffffffffff16146101e457610481826104f7565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610250929190612d0b565b6101e47f746273746f726500000000000000000053746f7265486f6f6b730000000000008383610d15565b5f6104ee60706010612d56565b9190911b919050565b606081601081901b5f610509836104e1565b9050827fffffffffffffffffffffffffffff0000000000000000000000000000000000008316156105645761055f7fffffffffffffffffffffffffffff0000000000000000000000000000000000008416610e53565b61059b565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff198316156105c2576105bd83610e53565b6105f9565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b60405160200161060b93929190612d69565b6040516020818303038152906040529350505050919050565b61062d81610edc565b61066f578061063b826104f7565b6040517ffbf10ce6000000000000000000000000000000000000000000000000000000008152600401610250929190612be2565b50565b613a3160f11b867fffff00000000000000000000000000000000000000000000000000000000000016148015906106eb57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561074c57613a3160f11b868760405160200161070a91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610250939291600401612df6565b61075585610f76565b6107608460016111b8565b61076a835f6111b8565b60e084901c60e885901c0160ff168251146107ca5760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1681511461082a5760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146108a25760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b6108ab85611355565b6108b484611355565b14610906576108c285611355565b6108cb84611355565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b61090f85611386565b61091884611386565b1461096a5761092685611386565b61092f84611386565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b5f5b61097586611355565b811015610a105761099f61098985836113a2565b60c581111561099a5761099a612e36565b6113c9565b6008601b8390030287901c60ff1614610a08576008601b8290030286901c60ff166109cd61098986846113a2565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610250565b60010161096c565b50610a1a86610edc565b15610a74578586604051602001610a3391815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b610ac08686868686604051602001610a8c9190612e4a565b60405160208183030381529060405286604051602001610aac9190612e4a565b604051602081830303815290604052611421565b610acb866001611500565b505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c80610b025750335b90565b610b0f82826115b5565b6101e4576040517f74b5e6ff00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201527fffffffff0000000000000000000000000000000000000000000000000000000082166024820152604401610250565b613a3160f11b837fffff0000000000000000000000000000000000000000000000000000000000001614610bcd57613a3160f11b838460405160200161070a91815260200190565b610bd683610edc565b610c2f578283604051602001610bee91815260200190565b60408051601f19818403018152908290527f41e713ad0000000000000000000000000000000000000000000000000000000082526102509291600401612be2565b61037c837fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606085901b166bff0000000000000000000000605885901b16176115d0565b5f6102e3611685565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610cb357610cb3612eca565b60209081029190910101525f610d0a7f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006116d0565b60601c949350505050565b5f610d208484611705565b90505f815167ffffffffffffffff811115610d3d57610d3d612bfa565b604051908082528060200260200182016040528015610d66578160200160208202803683370190505b5090505f805b8351811015610e44578473ffffffffffffffffffffffffffffffffffffffff16610dbd858381518110610da157610da1612eca565b60200260200101516affffffffffffffffffffff191660601c90565b73ffffffffffffffffffffffffffffffffffffffff1614610e3c57838181518110610dea57610dea612eca565b6020026020010151838381518110610e0457610e04612eca565b7fffffffffffffffffffffffffffffffffffffffffff0000000000000000000000909216602092830291909101909101526001909101905b600101610d6c565b50808252610acb86868461176b565b60605f5b6010811015610ea8576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615610ea857600101610e57565b604080516fffffffffffffffffffffffffffffffff198516602082015281516030909101909152818152805b949350505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610f1357610f13612eca565b60209081029190910101525f610f6a7f746273746f72650000000000000000005265736f75726365496473000000000083837e010100010000000000000000000000000000000000000000000000000000006116d0565b9050610ed48160f81c90565b80610fad576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610fb782611386565b90506005811115610ffe576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610250565b5f61100883611355565b90505f6110158383612d56565b9050601c81111561105c576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610250565b5f805b838110156111055760ff601b82900360080287901c165f8190036110b2576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b60208111156110f0576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b6110fa8184612d56565b92505060010161105f565b5061110f856117c5565b811461115b5761111e856117c5565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610250565b825b601c811015610acb5760ff601b82900360080287901c1680156111af576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b5060010161115d565b801580156111c4575081155b156111e457604051635318beb960e01b81525f6004820152602401610250565b5f6111ee83611386565b9050600581111561121557604051635318beb960e01b815260048101829052602401610250565b5f61121f84611355565b90505f61122c8383612d56565b9050601c81111561125357604051635318beb960e01b815260048101829052602401610250565b5f805b838110156112bc575f61126c61098989846113a2565b9050805f036112a7576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6112b18184612d56565b925050600101611256565b506112c6866117c5565b81146112f1576112d5866117c5565b604051635318beb960e01b815260040161025091815260200190565b825b8281101561134c575f61130961098989846113a2565b90508015611343576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016112f3565b50505050505050565b5f6008600161136660026020612ede565b6113709190612ede565b61137a9190612ef1565b8260ff911c1692915050565b5f600860018061139860026020612ede565b6113669190612ede565b5f601b8290036008028360ff911c1660c58111156113c2576113c2612e36565b9392505050565b5f808260c58111156113dd576113dd612e36565b60ff16905060618110156113f757601f1660010192915050565b60618360c581111561140b5761140b612e36565b036114195750601492915050565b505f92915050565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f61145784846117e7565b90505f6114648585611803565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f8151811061149c5761149c612eca565b60209081029190910101526114f47f746273746f72650000000000000000005461626c657300000000000000000000828686867e6003022020200000000000000000000000000000000000000000000000000061182f565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061153457611534612eca565b60200260200101818152505061037c7f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f8560405160200161158091151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611b51565b5f6115bf83611b6d565b80156113c257506113c28383611bd0565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061160457611604612eca565b60200260200101818152505061037c7f746273746f726500000000000000000053746f7265486f6f6b730000000000005f1b825f8560405160200161167191907fffffffffffffffffffffffffffffffffffffffffff000000000000000000000091909116815260150190565b604051602081830303815290604052611c9c565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f9073ffffffffffffffffffffffffffffffffffffffff16806116cb573391505090565b919050565b5f6116fc6116de8686611cd4565b60ff858116601b0360080285901c166116f78587611d29565b611d61565b95945050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f8151811061173d5761173d612eca565b6020026020010181815250505f61175585835f611db1565b90506116fc611766825f8451611dea565b611e76565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061179f5761179f612eca565b6020026020010181815250506117bf84825f6117ba86611e85565b611e94565b50505050565b5f60086117d460026020612ede565b6117de9190612ef1565b9190911c919050565b815181515f9181810160389190911b1760609190911b176113c2565b60608282604051602001611818929190612f08565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff00000000000000000000000000000000000000000000000000000000000016036118bb57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516118ae9493929190612f70565b60405180910390a2610acb565b5f6118c587611ecc565b90505f5b8151811015611997575f8282815181106118e5576118e5612eca565b602002602001015190506119116001826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561198e576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611960908c908c908c908c908c908c90600401612fae565b5f604051808303815f87803b158015611977575f80fd5b505af1158015611989573d5f803e3d5ffd5b505050505b506001016118c9565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9878787876040516119ce9493929190612f70565b60405180910390a25f6119e18888611cd4565b90505f6020870190506119f7825f895184611f69565b5f611a0185611386565b1115611a81575f611a128a8a612024565b87815590506020860191505f805f5b611a2a88611386565b8160ff161015611a7c57611a3f8d8d83612079565b9250611a5a8a8260ff166028026038011c64ffffffffff1690565b9150611a68835f8488611f69565b611a728286612d56565b9450600101611a21565b505050505b5f5b83518110156114f4575f848281518110611a9f57611a9f612eca565b60200260200101519050611acb6002826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15611b48576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611b1a908e908e908e908e908e908e90600401612fae565b5f604051808303815f87803b158015611b31575f80fd5b505af1158015611b43573d5f803e3d5ffd5b505050505b50600101611a83565b611b668585611b608487611d29565b856120f7565b5050505050565b5f611b98827f01ffc9a700000000000000000000000000000000000000000000000000000000611bd0565b80156101bb5750611bc9827fffffffff00000000000000000000000000000000000000000000000000000000611bd0565b1592915050565b6040517fffffffff00000000000000000000000000000000000000000000000000000000821660248201525f90819060440160408051601f19818403018152919052602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a70000000000000000000000000000000000000000000000000000000017815282519293505f9283928392909183918a617530fa92503d91505f519050828015611c86575060208210155b8015611c9157505f81115b979650505050505050565b5f611ca78585612382565b90505f611cc3828560ff166028026038011c64ffffffffff1690565b9050610acb868686845f8888612394565b5f8282604051602001611ce8929190613006565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff16811015611d5957611d4f60ff601b83900360080287901c1683612d56565b9150600101611d2d565b509392505050565b5f60208210611d8657602082048401935060208281611d8257611d82613040565b0691505b508254600882021b602082900380841115611d59576001850154600882021c82179150509392505050565b6060610ed4611dc1858585612079565b5f611de585611dd08989612382565b9060ff166028026038011c64ffffffffff1690565b612759565b5f81831180611df95750835182115b15611e36578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161025093929190613054565b60208401611e448482612d56565b90505f611e518585612ede565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6113c28360155f61277c565b6060816113c28160155f6127f4565b5f611e9f8585612382565b90505f611ebb828560ff166028026038011c64ffffffffff1690565b9050610acb8686865f858888612394565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110611f0457611f04612eca565b60209081029190910101525f611f3b7f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611db1565b9050610ed4611766825f8451611dea565b5f8160ff1682611f5c8560581c90565b1660ff1614905092915050565b8215611fe15760208310611f9357602083048401935060208381611f8f57611f8f613040565b0692505b8215611fe15760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611fd25750506117bf565b50600194909401939182900391015b5b602082106120035780518455600190930192601f1990910190602001611fe2565b81156117bf575f5f19600884021c8554835182191691161785555050505050565b5f8282604051602001612038929190613006565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f838360405160200161208d929190613006565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361218157837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161217493929190613078565b60405180910390a26117bf565b5f61218c8585611cd4565b90505f61219886611ecc565b90505f5b8151811015612266575f8282815181106121b8576121b8612eca565b602002602001015190506121e46004826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561225d576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061222f908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612246575f80fd5b505af1158015612258573d5f803e3d5ffd5b505050505b5060010161219c565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161229b93929190613078565b60405180910390a26122b6828565ffffffffffff1685612846565b5f5b815181101561134c575f8282815181106122d4576122d4612eca565b602002602001015190506123006008826affffffffffffffffffffff1916611f4c90919063ffffffff16565b15612379576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061234b908b908b908b908b906004016130b4565b5f604051808303815f87803b158015612362575f80fd5b505af1158015612374573d5f803e3d5ffd5b505050505b506001016122b8565b5f6113c26123908484612024565b5490565b613a3160f11b877fffff00000000000000000000000000000000000000000000000000000000000016146123dc57613a3160f11b878860405160200161070a91815260200190565b5f6123f6828760ff166028026038011c64ffffffffff1690565b90505f83518564ffffffffff168361240e9190612ede565b6124189190612d56565b905080821415801561243a57508161243086886130ec565b64ffffffffff1614155b1561248a576040517fa65010b400000000000000000000000000000000000000000000000000000000815264ffffffffff8088166004830152808716602483015283166044820152606401610250565b818664ffffffffff1611156124db576040517f7e8578d30000000000000000000000000000000000000000000000000000000081526004810183905264ffffffffff87166024820152604401610250565b5f6124e784898461285c565b90505f6124f38b611ecc565b90505f5b81518110156125c4575f82828151811061251357612513612eca565b6020026020010151905061253f6010826affffffffffffffffffffff1916611f4c90919063ffffffff16565b156125bb57606081901c73ffffffffffffffffffffffffffffffffffffffff166355eb5a288e8e8e8e8e8d8f6040518863ffffffff1660e01b815260040161258d9796959493929190613111565b5f604051808303815f87803b1580156125a4575f80fd5b505af11580156125b6573d5f803e3d5ffd5b505050505b506001016124f7565b5064ffffffffff88165f5b8a60ff168160ff161015612602576125f6878260ff166028026038011c64ffffffffff1690565b909101906001016125cf565b508b7faa63765a776145e5e6492f471ae097dfed11cd57a61bc2679dd43180422385b48c838b878c60405161263b95949392919061316e565b60405180910390a25082841461265b575f6126568c8c612024565b839055505b5f6126678c8c8c612079565b905061267b818a64ffffffffff1689612846565b505f5b815181101561274b575f82828151811061269a5761269a612eca565b602002602001015190506126c66020826affffffffffffffffffffff1916611f4c90919063ffffffff16565b1561274257606081901c73ffffffffffffffffffffffffffffffffffffffff1663635845338e8e8e8e8e8a8f6040518863ffffffff1660e01b81526004016127149796959493929190613111565b5f604051808303815f87803b15801561272b575f80fd5b505af115801561273d573d5f803e3d5ffd5b505050505b5060010161267e565b505050505050505050505050565b60405160208101601f19603f8484010116604052828252611d5985858584612929565b60605f6127898560801c90565b90506fffffffffffffffffffffffffffffffff85165f8582816127ae576127ae613040565b0490506040519350602084016020820281016040528185525f5b828110156127e8578451871c8252938701936020909101906001016127c8565b50505050509392505050565b82516060905f6128048583612ef1565b9050604051925060208301601f19603f83860101166040528184525f602088015b848210156127e8578051871b83529187019160019190910190602001612825565b61037c838383516128578560200190565b611f69565b5f64ffffffffff82111561289f576040517f4767058800000000000000000000000000000000000000000000000000000000815260048101839052602401610250565b8366ffffffffffffff811660ff851660280260380182901c64ffffffffff168085106128d157808503820191506128d9565b848103820391505b5064ffffffffff6038602860ff8816020181811b197fffffffffffffffffffffffffffffffffffffffffffffffffff000000000000009490941690921792909216918416901b1790509392505050565b82156129ad57602083106129535760208304840193506020838161294f5761294f613040565b0692505b82156129ad5760208390035f8184101561297457505f19600884021c61297d565b505f19600882021c5b8554600886021b81845116821982161784525081841161299e5750506117bf565b50600194909401939182900391015b5b602082106129cf5783548152600190930192601f19909101906020016129ae565b81156117bf575f5f19600884021c8251865482191691161782525050505050565b5f60208284031215612a00575f80fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146113c2575f80fd5b803573ffffffffffffffffffffffffffffffffffffffff811681146116cb575f80fd5b5f8060408385031215612a63575f80fd5b82359150612a7360208401612a2f565b90509250929050565b5f8083601f840112612a8c575f80fd5b50813567ffffffffffffffff811115612aa3575f80fd5b6020830191508360208260051b8501011115612abd575f80fd5b9250929050565b5f805f805f805f8060c0898b031215612adb575f80fd5b88359750602089013596506040890135955060608901359450608089013567ffffffffffffffff80821115612b0e575f80fd5b612b1a8c838d01612a7c565b909650945060a08b0135915080821115612b32575f80fd5b50612b3f8b828c01612a7c565b999c989b5096995094979396929594505050565b5f805f60608486031215612b65575f80fd5b83359250612b7560208501612a2f565b9150604084013560ff81168114612b8a575f80fd5b809150509250925092565b5f5b83811015612baf578181015183820152602001612b97565b50505f910152565b5f8151808452612bce816020860160208601612b95565b601f01601f19169290920160200192915050565b828152604060208201525f610ed46040830184612bb7565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612c3757612c37612bfa565b604052919050565b5f67ffffffffffffffff80841115612c5957612c59612bfa565b8360051b6020612c6a818301612c0e565b868152918501918181019036841115612c81575f80fd5b865b84811015612cff57803586811115612c99575f80fd5b8801601f3681830112612caa575f80fd5b813588811115612cbc57612cbc612bfa565b612ccd87601f198484011601612c0e565b91508082523687828501011115612ce2575f80fd5b80878401888401375f908201870152845250918301918301612c83565b50979650505050505050565b604081525f612d1d6040830185612bb7565b905073ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156101bb576101bb612d42565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612dc9816003860160208901612b95565b808401905081600382015284519150612de9826004830160208801612b95565b0160040195945050505050565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f6116fc6060830184612bb7565b634e487b7160e01b5f52602160045260245ffd5b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015612ebd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0888603018452612eab858351612bb7565b94509285019290850190600101612e71565b5092979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b818103818111156101bb576101bb612d42565b80820281158282048414176101bb576101bb612d42565b5f8351612f19818460208801612b95565b835190830190612f2d818360208801612b95565b01949350505050565b5f815180845260208085019450602084015f5b83811015612f6557815187529582019590820190600101612f49565b509495945050505050565b608081525f612f826080830187612f36565b8281036020840152612f948187612bb7565b90508460408401528281036060840152611c918185612bb7565b86815260c060208201525f612fc660c0830188612f36565b8281036040840152612fd88188612bb7565b90508560608401528281036080840152612ff28186612bb7565b9150508260a0830152979650505050505050565b8281525f60208083018451602086015f5b8281101561303357815184529284019290840190600101613017565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b606081525f6130666060830186612bb7565b60208301949094525060400152919050565b606081525f61308a6060830186612f36565b65ffffffffffff8516602084015282810360408401526130aa8185612bb7565b9695505050505050565b848152608060208201525f6130cc6080830186612f36565b65ffffffffffff851660408401528281036060840152611c918185612bb7565b64ffffffffff81811683821601908082111561310a5761310a612d42565b5092915050565b87815260e060208201525f61312960e0830189612f36565b60ff8816604084015264ffffffffff87811660608501528616608084015260a0830185905282810360c08401526131608185612bb7565b9a9950505050505050505050565b60a081525f61318060a0830188612f36565b65ffffffffffff8716602084015264ffffffffff8616604084015284606084015282810360808401526131b38185612bb7565b9897505050505050505056fea164736f6c6343000818000a","sourceMap":"1115:3225:89:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2265:198:58;;;;;;:::i;:::-;;:::i;:::-;;;516:14:207;;509:22;491:41;;479:2;464:18;2265:198:58;;;;;;;;4045:293:89;;;;;;:::i;:::-;;:::i;:::-;;1897:748;;;;;;:::i;:::-;;:::i;1196:113:58:-;;;:::i;:::-;;;2842:42:207;2830:55;;;2812:74;;2800:2;2785:18;1196:113:58;2666:226:207;1550:110:58;;;-1:-1:-1;;3551:14:58;3547:25;3534:39;3043:25:207;;3031:2;3016:18;1550:110:58;2897:177:207;3108:595:89;;;;;;:::i;:::-;;:::i;1876:98:58:-;;;:::i;2265:198::-;2341:4;2360:54;;;2375:39;2360:54;;:98;;-1:-1:-1;2418:40:58;;;2433:25;2418:40;2360:98;2353:105;2265:198;-1:-1:-1;;2265:198:58:o;4045:293:89:-;995:20:82;:18;:20::i;:::-;4199:49:89::1;4226:7;4235:12;:10;:12::i;:::-;4199:26;:49::i;:::-;4282:51;4312:7;4321:11;4282:29;:51::i;:::-;4045:293:::0;;:::o;1897:748::-;995:20:82;:18;:20::i;:::-;2212:9:89::1;2191:17;:7:::0;:15:::1;:17::i;:::-;-1:-1:-1::0;;2191:30:89::1;::::0;2187:110:::1;;2262:7;2271:18;:7;:16;:18::i;:::-;2238:52;;;;;;;;;;;;:::i;:::-;;;;;;;;2187:110;2349:56;816:18:98::0;578:36:59;2820:46;;2819:74;2349:30:89::1;:56::i;:::-;2467:49;2494:7;2503:12;:10;:12::i;2467:49::-;2549:91;2573:7:::0;2582:11;2595:9;2606:11;2549:91:::1;2619:8:::0;;2549:91:::1;:::i;:::-;;2629:10:::0;;2549:91:::1;:::i;:::-;:23;:91::i;:::-;1897:748:::0;;;;;;;;:::o;1196:113:58:-;1239:14;1268:36;:34;:36::i;:::-;1261:43;;1196:113;:::o;3108:595:89:-;995:20:82;:18;:20::i;:::-;3321:68:89::1;3346:11;3360:28;3321:16;:68::i;:::-;3442:56;816:18:98::0;578:36:59;2820:46;;2819:74;2349:30:89::1;:56::i;3442:::-;3548:49;3575:7;3584:12;:10;:12::i;3548:49::-;3629:69;3657:7;3666:11;3679:18;3629:27;:69::i;:::-;3108:595:::0;;;:::o;1876:98:58:-;1915:7;1937:32;:30;:32::i;1113:189:82:-;1182:23;1199:6;1182:23;1190:4;1182:23;1171:127;;1266:25;;;;;;;;;;;;;;1171:127;1113:189::o;2074:233:42:-;2159:58;;;:48;816:18:98;578:36:59;2820:46;;2819:74;2159:19:42;:48::i;:::-;:58;;;2155:148;;2266:21;:10;:19;:21::i;:::-;2289:6;2234:62;;;;;;;;;;;;:::i;12902:170:20:-;12990:77;1075:66:28;13037:7:20;13054:11;12990:27;:77::i;3030:160:59:-;3093:7;3157:26;438:6;385:5:16;3157:26:59;:::i;:::-;3123:61;;;;;3030:160;-1:-1:-1;3030:160:59:o;3351:592::-;3415:13;3485:10;385:5:16;2502:44:59;;;3436:19;3583;3485:10;3583:7;:19::i;:::-;3560:42;-1:-1:-1;3665:12:59;3704:35;;;;:102;;3753:53;;;;:34;:53::i;:::-;3704:102;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3833:25:59;;;:87;;3872:48;3907:12;3872:34;:48::i;:::-;3833:87;;;;;;;;;;;;;;;;;;;;;3637:293;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3608:330;;;;;3351:592;;;:::o;2536:206:42:-;2610:34;2633:10;2610:22;:34::i;:::-;2605:133;;2697:10;2709:21;:10;:19;:21::i;:::-;2661:70;;;;;;;;;;;;:::i;2605:133::-;2536:206;:::o;8858:2614:20:-;-1:-1:-1;;;9118:7:20;:35;;;;;;:83;;-1:-1:-1;9178:23:20;9157:7;:44;;;;9118:83;9114:209;;;-1:-1:-1;;;9273:7:20;9306;9289:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;9289:25:20;;;;-1:-1:-1;;9289:25:20;;;;;;;;;;9218:98;;;;;;;;;;:::i;9114:209::-;9369:22;:11;:20;:22::i;:::-;9432:40;:9;9465:4;9432:18;:40::i;:::-;9478:43;:11;9513:5;9478:20;:43::i;:::-;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9609:8:20;:15;:40;9605:148;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9730:15:20;;9666:80;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;9666:80:20;8680:248:207;9605:148:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9803:10:20;:17;:44;9799:158;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9932:17:20;;9864:86;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;9864:86:20;8680:248:207;9799:158:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10014:50:20;10010:171;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10081:93:20;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10081:93:20;8680:248:207;10010:171:20;10223:29;:11;:27;:29::i;:::-;10190;:11;:27;:29::i;:::-;:62;10186:225;;10328:29;:11;:27;:29::i;:::-;10367;:11;:27;:29::i;:::-;10269:135;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10269:135:20;8680:248:207;10186:225:20;10454:30;:11;:28;:30::i;:::-;10420;:11;:28;:30::i;:::-;:64;10416:230;;10561:30;:11;:28;:30::i;:::-;10601;:11;:28;:30::i;:::-;10501:138;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10501:138:20;8680:248:207;10416:230:20;10743:9;10738:314;10758:29;:11;:27;:29::i;:::-;10754:1;:33;10738:314;;;10832:44;:22;:11;10852:1;10832:19;:22::i;:::-;:42;;;;;;;;:::i;:::-;;:44::i;:::-;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10806:70:20;10802:244;;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10983:44:20;:22;:11;11003:1;10983:19;:22::i;:44::-;10895:142;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;8827:18;;10895:142:20;8680:248:207;10802:244:20;10789:3;;10738:314;;;;11114:31;11137:7;11114:22;:31::i;:::-;11110:140;;;11200:7;11233;11216:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;11216:25:20;;;;-1:-1:-1;;11216:25:20;;;;;;;;;;11162:81;;;;;;;;;:::i;11110:140::-;11291:103;11303:7;11312:11;11325:9;11336:11;11360:8;11349:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;11382:10;11371:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;11291:11;:103::i;:::-;11430:37;11453:7;11462:4;11430:22;:37::i;:::-;8858:2614;;;;;;:::o;2743:383:58:-;3029:34;3033:14;3029:34;3016:48;3010:4;3006:59;;3076:45;;-1:-1:-1;3111:10:58;3076:45;2743:383;:::o;879:238:92:-;964:61;996:15;1013:11;964:31;:61::i;:::-;959:156;;1040:70;;;;;10191:42:207;10179:55;;1040:70:92;;;10161:74:207;10283:66;10271:79;;10251:18;;;10244:107;10134:18;;1040:70:92;9989:368:207;12074:624:20;-1:-1:-1;;;12258:7:20;:35;;;12254:161;;-1:-1:-1;;;12365:7:20;12398;12381:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;12254:161:20;12460:31;12483:7;12460:22;:31::i;:::-;12455:136;;12541:7;12574;12557:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;12557:25:20;;;;-1:-1:-1;;12557:25:20;;;;;;;;;;12508:76;;;;;;;;;:::i;12455:136::-;12597:96;12614:7;979:29:4;987:20;;;;979:29;1011:30;;;;;;979:62;12597:16:20;:96::i;3799:97:58:-;3840:7;3862:29;:27;:29::i;4483:306:74:-;4594:16;;;4608:1;4594:16;;;;;;;;;4544:13;;;;4594:16;;;;;;;;;;;;-1:-1:-1;4594:16:74;4565:45;;4649:11;4616:9;4626:1;4616:12;;;;;;;;:::i;:::-;;;;;;;;;;:45;4668:13;4684:62;1269:66;4719:9;4668:13;1449:66;4684:24;:62::i;:::-;4760:23;;;4483:306;-1:-1:-1;;;;4483:306:74:o;1408:1069:4:-;1551:29;1583:42;1594:11;1607:17;1583:10;:42::i;:::-;1551:74;;1743:25;1785:12;:19;1771:34;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1771:34:4;;1743:62;;1853:21;1903:25;1898:312;1950:12;:19;1930:17;:39;1898:312;;;2073:19;2006:87;;:55;2016:12;2029:17;2016:31;;;;;;;;:::i;:::-;;;;;;;2006:53;;;3404:35;;;3274:170;2006:55;:87;;;2002:200;;2133:12;2146:17;2133:31;;;;;;;;:::i;:::-;;;;;;;2107:8;2116:13;2107:23;;;;;;;;:::i;:::-;:57;;;;:23;;;;;;;;;;;:57;2176:15;;;;;2002:200;1971:19;;1898:312;;;;2363:13;2353:8;2346:31;2420:52;2431:11;2444:17;2463:8;2420:10;:52::i;1796:322:59:-;1866:13;1887:14;1907:80;1923:2;1914:6;:11;1907:80;;;-1:-1:-1;;1941:34:59;;3152:1:2;3148:13;;3144:24;1941:39:59;;1937:50;1982:5;1937:50;1927:8;;1907:80;;;2023:30;;;-1:-1:-1;;10692:79:207;;2023:30:59;;;10680:92:207;2023:30:59;;10788:12:207;;;;2023:30:59;;;809:21:2;;;2023:30:59;2073:39;2059:54;1796:322;-1:-1:-1;;;;1796:322:59:o;3588:314:27:-;3702:16;;;3716:1;3702:16;;;;;;;;;3654:11;;;;3702:16;;;;;;;;;;;;-1:-1:-1;3702:16:27;3673:45;;3757:10;3724:9;3734:1;3724:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3775:13;3791:62;1076:66;3826:9;3775:13;1253:66;3791:24;:62::i;:::-;3775:78;;3867:29;3888:5;3875:20;;1452:10:16;1343:126;6774:1658:3;6457:45;6837:86;;6879:37;;;;;;;;;;;;;;6837:86;6929:25;6957:30;:11;:28;:30::i;:::-;6929:58;;902:1:30;6997:17:3;:38;6993:155;;;7052:89;;;;;;;;8854:25:207;;;902:1:30;8895:18:207;;;8888:34;8827:18;;7052:89:3;8680:248:207;6993:155:3;7154:24;7181:29;:11;:27;:29::i;:::-;7154:56;-1:-1:-1;7216:23:3;7242:36;7261:17;7154:56;7242:36;:::i;:::-;7216:62;;647:2:30;7288:15:3;:34;7284:140;;;7339:78;;;;;;;;8854:25:207;;;647:2:30;8895:18:207;;;8888:34;8827:18;;7339:78:3;8680:248:207;7284:140:3;7466:25;7502:9;7497:427;7517:16;7513:1;:20;7497:427;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;7545:24;7606:21;;;7602:232;;7646:51;;;;;;;;3043:25:207;;;3016:18;;7646:51:3;2897:177:207;7602:232:3;334:2:30;7716:16:3;:28;7712:122;;;7763:62;;;;;;;;3043:25:207;;;3016:18;;7763:62:3;2897:177:207;7712:122:3;7841:37;7862:16;7841:37;;:::i;:::-;;-1:-1:-1;;7906:3:3;;7497:427;;;;7991:30;:11;:28;:30::i;:::-;7970:17;:51;7966:183;;8092:30;:11;:28;:30::i;:::-;8038:104;;;;;;;;8854:25:207;;;;8895:18;;;8888:34;;;8827:18;;8038:104:3;8680:248:207;7966:183:3;8205:16;8188:240;647:2:30;8223:1:3;:20;8188:240;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;8319:21;;8315:107;;8359:54;;;;;;;;3043:25:207;;;3016:18;;8359:54:3;2897:177:207;8315:107:3;-1:-1:-1;8245:3:3;;8188:240;;5689:1629:17;5796:10;5795:11;:31;;;;-1:-1:-1;6457:45:3;;5810:16:17;5791:80;;;5835:36;;-1:-1:-1;;;5835:36:17;;5869:1;5835:36;;;3043:25:207;3016:18;;5835:36:17;2897:177:207;5791:80:17;5934:25;5962;:6;:23;:25::i;:::-;5934:53;;902:1:30;5997:17:17;:38;5993:103;;;6044:52;;-1:-1:-1;;;6044:52:17;;;;;3043:25:207;;;3016:18;;6044:52:17;2897:177:207;5993:103:17;6103:24;6130;:6;:22;:24::i;:::-;6103:51;-1:-1:-1;6224:23:17;6250:36;6269:17;6103:51;6250:36;:::i;:::-;6224:62;;647:2:30;6296:15:17;:34;6292:97;;;6339:50;;-1:-1:-1;;;6339:50:17;;;;;3043:25:207;;;3016:18;;6339:50:17;2897:177:207;6292:97:17;6450:25;6486:9;6481:313;6501:16;6497:1;:20;6481:313;;;6529:24;6556:39;:17;:6;6571:1;6556:14;:17::i;:39::-;6529:66;;6607:16;6627:1;6607:21;6603:101;;6647:48;;;;;;;;;;;;;;6603:101;6711:37;6732:16;6711:37;;:::i;:::-;;-1:-1:-1;;6776:3:17;;6481:313;;;;6862:25;:6;:23;:25::i;:::-;6841:17;:46;6837:134;;6938:25;:6;:23;:25::i;:::-;6904:60;;-1:-1:-1;;;6904:60:17;;;;;;3043:25:207;;3031:2;3016:18;;2897:177;6837:134:17;7046:16;7029:285;7068:15;7064:1;:19;7029:285;;;7095:24;7122:39;:17;:6;7137:1;7122:14;:17::i;:39::-;7095:66;-1:-1:-1;7173:20:17;;7169:100;;7212:48;;;;;;;;;;;;;;7169:100;-1:-1:-1;7296:3:17;;7029:285;;;;5753:1565;;;;5689:1629;;:::o;5135:171:3:-;5208:7;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;5244:11:3;5223:78;5236:64;;5223:78;;5135:171;-1:-1:-1;;5135:171:3:o;5533:173::-;5607:7;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;3948:206:17:-;4018:10;4108:19;:27;;;4139:1;4107:33;4086:6;4061:82;4078:63;;4061:82;;;;;;;;;:::i;:::-;4054:89;3948:206;-1:-1:-1;;;3948:206:17:o;3195:520:1:-;3261:7;3274:13;3296:10;3290:17;;;;;;;;:::i;:::-;3274:33;;;;3324:2;3316:5;:10;3312:401;;;3568:2;3560:10;3574:1;3559:16;;;-1:-1:-1;;3195:520:1:o;3312:401::-;3610:18;3596:10;:32;;;;;;;;:::i;:::-;;3592:121;;-1:-1:-1;3643:2:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;-1:-1:-1;3707:1:1;;3195:520;-1:-1:-1;;3195:520:1:o;20651:676:29:-;25205:53;;;;;;12043:19:207;;;12078:12;;;12071:28;;;25178:12:29;12115::207;;;12108:28;;;25205:53:29;;;;;;;;;;12152:12:207;;;;25205:53:29;;;20942:29;20974:55;20988:18;21008:20;20974:13;:55::i;:::-;20942:87;;21035:25;21063:55;21077:18;21097:20;21063:13;:55::i;:::-;21154:16;;;21168:1;21154:16;;;;;;;;;21035:83;;-1:-1:-1;21125:26:29;;21154:16;;;;;;;;;;;;-1:-1:-1;21154:16:29;21125:45;;21209:7;21176:9;21186:1;21176:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;21224:98;1171:66;21254:9;21265:11;21278:15;21295:12;1343:66;21224:19;:98::i;:::-;20853:474;;;;20651:676;;;;;;:::o;4952:268:27:-;5052:16;;;5066:1;5052:16;;;;;;;;;5023:26;;5052:16;;;;;;;;;;;-1:-1:-1;5052:16:27;5023:45;;5107:10;5074:9;5084:1;5074:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;5125:90;1076:66;1060:83;;5160:9;5171:1;5192:6;5174:26;;;;;;11458:14:207;11451:22;11446:3;11442:32;11430:45;;11500:1;11491:11;;11307:201;5174:26:27;;;;-1:-1:-1;;5174:26:27;;;;;;;;;1253:66;5125:24;:90::i;1313:272:45:-;1400:4;1499:23;1514:7;1499:14;:23::i;:::-;:81;;;;;1526:54;1559:7;1568:11;1526:32;:54::i;10391:254:28:-;10488:16;;;10502:1;10488:16;;;;;;;;;10459:26;;10488:16;;;;;;;;;;;-1:-1:-1;10488:16:28;10459:45;;10543:7;10510:9;10520:1;10510:12;;;;;;;;:::i;:::-;;;;;;:41;;;;;10558:82;1075:66;1059:83;;10597:9;10608:1;10629:8;10611:28;;;;;;;11666:66:207;11654:79;;;;11642:92;;11759:2;11750:12;;11513:255;10611:28:28;;;;;;;;;;;;;10558;:82::i;1766:227:24:-;996:42;1855:22;1816:7;;1855:22;;;1883:106;;1931:10;1924:17;;;1766:227;:::o;1883:106::-;1969:13;1766:227;-1:-1:-1;1766:227:24:o;38022:541:20:-;38179:7;38316:242;38360:59;38401:7;38410:8;38360:40;:59::i;:::-;38437:31;;;;4479:19:3;:27;537:1:30;4478:44:3;4444:79;;;4431:93;38486:63:20;38525:11;38538:10;38486:38;:63::i;:::-;38316:17;:242::i;:::-;38303:255;38022:541;-1:-1:-1;;;;;38022:541:20:o;4214:369:26:-;4354:16;;;4368:1;4354:16;;;;;;;;;4295:22;;4325:26;;4354:16;;;;;;;;;;;;-1:-1:-1;4354:16:26;4325:45;;4409:10;4376:9;4386:1;4376:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4427:18;4448:49;4474:8;4484:9;4495:1;4448:25;:49::i;:::-;4427:70;;4511:66;:44;4532:5;4539:1;4542:5;:12;4511:20;:44::i;:::-;:64;:66::i;5601:282::-;5727:16;;;5741:1;5727:16;;;;;;;;;5698:26;;5727:16;;;;;;;;;;;-1:-1:-1;5727:16:26;5698:45;;5782:10;5749:9;5759:1;5749:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;5800:78;5826:8;5836:9;5847:1;5850:27;5870:5;5850:18;:27::i;:::-;5800:25;:78::i;:::-;5692:191;5601:282;;;:::o;4754:171:3:-;4828:7;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;4850:70:3;;;;;4754:171;-1:-1:-1;4754:171:3:o;25454:388:29:-;25762:32;;25796:34;;25580:29;;2444:5:15;;;834:16;2475:39;;;;2457:58;2556:23;2541:39;;;;2523:58;25740:91:29;2303:344:15;26007:234:29;26133:12;26184:18;26213:20;26160:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26153:83;;26007:234;;;;:::o;15127:3138:20:-;15421:23;15400:7;:44;;;15396:198;;15514:7;15498:75;15523:8;15533:10;15545:14;15561:11;15498:75;;;;;;;;;:::i;:::-;;;;;;;;15581:7;;15396:198;15732:22;15757:24;15773:7;15757:15;:24::i;:::-;15732:49;;15792:9;15787:340;15807:5;:12;15803:1;:16;15787:340;;;15834:9;15856:5;15862:1;15856:8;;;;;;;;:::i;:::-;;;;;;;15834:31;;15877:33;343:6:32;15877:4:20;:14;;;;;:33;;;;:::i;:::-;15873:248;;;15922:190;;;;;3404:35:4;;;;;15922:47:20;;:190;;15981:7;;16000:8;;16020:10;;16042:14;;16068:11;;16091;;15922:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15873:248;-1:-1:-1;15821:3:20;;15787:340;;;;16191:7;16175:75;16200:8;16210:10;16222:14;16238:11;16175:75;;;;;;;;;:::i;:::-;;;;;;;;16314:26;16343:59;16384:7;16393:8;16343:40;:59::i;:::-;16314:88;-1:-1:-1;16408:21:20;828:4:14;818:15;;16408:54:20;;16468:149;16506:18;16540:1;16557:10;:17;16597:13;16468;:149::i;:::-;16717:1;16684:30;:11;:28;:30::i;:::-;:34;16680:1174;;;16803:33;16839:66;16887:7;16896:8;16839:47;:66::i;:::-;629:28:19;;;16803:102:20;-1:-1:-1;828:4:14;818:15;;17079:47:20;;17235:27;17270:25;17308:7;17303:545;17321:30;:11;:28;:30::i;:::-;17317:1;:34;;;17303:545;;;17387:63;17429:7;17438:8;17448:1;17387:41;:63::i;:::-;17365:85;-1:-1:-1;17480:25:20;:14;17503:1;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;17480:25:20;17460:45;;17515:170;17557:19;17596:1;17617:17;17661:13;17515;:170::i;:::-;17695:34;17712:17;17695:34;;:::i;:::-;;-1:-1:-1;17826:3:20;;17303:545;;;;16720:1134;;;16680:1174;17928:9;17923:338;17943:5;:12;17939:1;:16;17923:338;;;17970:9;17992:5;17998:1;17992:8;;;;;;;;:::i;:::-;;;;;;;17970:31;;18013:32;437:6:32;18013:4:20;:14;;;;;:32;;;;:::i;:::-;18009:246;;;18057:189;;;;;3404:35:4;;;;;18057:46:20;;:189;;18115:7;;18134:8;;18154:10;;18176:14;;18202:11;;18225;;18057:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18009:246;-1:-1:-1;17957:3:20;;17923:338;;24989:355;25161:178;25195:7;25220:8;25250:63;25289:11;25302:10;25250:38;:63::i;:::-;25328:4;25161:16;:178::i;:::-;24989:355;;;;;:::o;709:400:45:-;773:4;962:68;995:7;1004:25;962:32;:68::i;:::-;:142;;;;-1:-1:-1;1041:63:45;1074:7;1083:20;1041:32;:63::i;:::-;1040:64;949:155;709:400;-1:-1:-1;;709:400:45:o;4133:576::-;4296:56;;14886:66:207;14874:79;;4296:56:45;;;14856:98:207;4235:4:45;;;;14829:18:207;;4296:56:45;;;-1:-1:-1;;4296:56:45;;;;;;;;;;;;;;;;;;;;;4534:20;;4296:56;;-1:-1:-1;;;;;;;4296:56:45;;-1:-1:-1;;4499:7:45;4492:5;4481:86;4470:97;;4588:16;4574:30;;4632:4;4626:11;4611:26;;4656:7;:29;;;;;4681:4;4667:10;:18;;4656:29;:48;;;;;4703:1;4689:11;:15;4656:48;4649:55;4133:576;-1:-1:-1;;;;;;;4133:576:45:o;30619:790:20:-;30878:36;30917:66;30965:7;30974:8;30917:47;:66::i;:::-;30878:105;-1:-1:-1;30989:26:20;31025:49;30878:105;31056:17;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;31025:49:20;30989:86;;31113:291;31167:7;31192:8;31227:17;31277:19;31318:1;31333:10;31375:22;31113:36;:291::i;52539:191::-;52641:7;52705;52714:8;52688:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;52688:35:20;;;;;;;;;52678:46;;52688:35;52678:46;;;;44145:22;52671:53;;52539:191;-1:-1:-1;;;52539:191:20:o;53556:242::-;53652:7;;;53691:84;53711:10;53707:14;;:1;:14;53691:84;;;53736:32;4431:93:3;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;53736:32:20;;:::i;:::-;;-1:-1:-1;53723:3:20;;53691:84;;;-1:-1:-1;53787:6:20;53556:242;-1:-1:-1;;;53556:242:20:o;8879:812:19:-;8977:14;9013:2;9003:6;:12;8999:112;;9072:2;9063:6;:11;9045:29;;;;9094:2;9084:12;;;;;;:::i;:::-;;;;8999:112;-1:-1:-1;9302:21:19;;9287:12;9275:25;;9271:53;9450:2;:11;;;9532:22;;;9528:159;;;9668:1;9652:14;9648:22;9642:29;9627:12;9612:13;9608:32;9604:68;9596:6;9593:80;9583:90;;8993:698;8879:812;;;;;:::o;39031:522:20:-;39167:12;39291:257;39330:79;39372:7;39381:8;39391:17;39330:41;:79::i;:::-;39427:1;39446:93;39521:17;39446:66;39494:7;39503:8;39446:47;:66::i;:::-;:74;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;39446:93:20;39291:12;:257::i;1954:561:18:-;2045:5;2140:3;2132:5;:11;:32;;;;2153:4;:11;2147:3;:17;2132:32;2128:80;;;2191:4;2197:5;2204:3;2173:35;;;;;;;;;;;;;:::i;2128:80::-;2274:4;2264:15;;2321:16;2332:5;2264:15;2321:16;:::i;:::-;;-1:-1:-1;2343:12:18;2358:11;2364:5;2358:3;:11;:::i;:::-;643:17;2493:15;2485:3;2474:14;;;;2473:36;;;;;;-1:-1:-1;;;;;1954:561:18:o;40037:220:34:-;40103:24;40135:30;40168:32;40186:6;40194:2;40198:1;40168:17;:32::i;39736:222:35:-;39800:12;39890:6;39914:39;39890:6;39947:2;39951:1;39914:17;:39::i;26034:737:20:-;26285:36;26324:66;26372:7;26381:8;26324:47;:66::i;:::-;26285:105;-1:-1:-1;26396:26:20;26432:49;26285:105;26463:17;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;26432:49:20;26396:86;;26489:277;26543:7;26568:8;26603:17;26646:1;26668:19;26701:4;26737:22;26489:36;:277::i;4391:342:28:-;4507:16;;;4521:1;4507:16;;;;;;;;;4448:22;;4478:26;;4507:16;;;;;;;;;;;;-1:-1:-1;4507:16:28;4478:45;;4562:7;4529:9;4539:1;4529:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;4577:18;4598:49;1075:66;4634:9;4577:18;4598:25;:49::i;:::-;4577:70;;4661:66;:44;4682:5;4689:1;4692:5;:12;4661:20;:44::i;2903:136:4:-;2973:4;3025:9;2992:42;;3011:9;2993:15;3003:4;3802:26;;;3672:162;2993:15;:27;2992:42;;;2985:49;;2903:136;;;;:::o;1423:2340:19:-;1536:10;;1532:1504;;1689:2;1679:6;:12;1675:122;;1752:2;1743:6;:11;1725:29;;;;1776:2;1766:12;;;;;;:::i;:::-;;;;1675:122;1887:10;;1883:1147;;2095:2;:11;;;1969:21;-1:-1:-1;;537:1:30;738:25:31;;716:48;2142:18:19;2127:33;;2329:12;2321:6;2317:25;2376:4;2365:9;2361:20;2353:28;;2431:13;2425:20;2414:9;2410:36;2392:54;;2679:4;2675:9;2658:14;2652:21;2648:37;2579:4;2567:10;2563:21;2506:193;2478:14;2458:253;;2770:13;2760:6;:23;2756:36;;2785:7;;;;2756:36;-1:-1:-1;2933:1:19;2915:19;;;;;2988:23;;;;;2946:30;1883:1147;3066:253;3083:2;3073:6;:12;3066:253;;3178:20;;3155:44;;3252:1;3234:19;;;;-1:-1:-1;;3292:12:19;;;;3280:2;3263:19;3066:253;;;3387:10;;3383:376;;3407:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;3695:21:19;;3606:20;;3628:9;;3602:36;3691:32;;3551:184;3507:238;;-1:-1:-1;1423:2340:19;;;;:::o;55104:230:20:-;55225:7;55309;55318:8;55292:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;55292:35:20;;;;;;;;;55282:46;;55292:35;55282:46;;;;44308:40;55255:73;;55104:230;-1:-1:-1;;;55104:230:20:o;54475:274::-;54619:7;54724;54733:8;54707:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;54697:46;;;;;;54676:17;54669:25;;54649:45;;;44217:34;54649:45;:94;54641:103;;54634:110;;54475:274;;;;;:::o;18901:1676::-;19101:23;19080:7;:44;;;19076:232;;19231:7;19187:100;19250:8;19267:5;19280:4;19187:100;;;;;;;;:::i;:::-;;;;;;;;19295:7;;19076:232;19314:16;19333:59;19374:7;19383:8;19333:40;:59::i;:::-;19314:78;;19538:22;19563:24;19579:7;19563:15;:24::i;:::-;19538:49;;19598:9;19593:328;19613:5;:12;19609:1;:16;19593:328;;;19640:9;19662:5;19668:1;19662:8;;;;;;;;:::i;:::-;;;;;;;19640:31;;19683:41;548:6:32;19683:4:20;:14;;;;;:41;;;;:::i;:::-;19679:236;;;19736:170;;;;;3404:35:4;;;;;19736:54:20;;:170;;19812:7;;19841:8;;19868:5;;19891:4;;19736:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19679:236;-1:-1:-1;19627:3:20;;19593:328;;;;20022:7;19978:100;20041:8;20058:5;20071:4;19978:100;;;;;;;;:::i;:::-;;;;;;;;20128:70;20160:8;20178:5;20128:70;;20191:4;20128:13;:70::i;:::-;20252:9;20247:326;20267:5;:12;20263:1;:16;20247:326;;;20294:9;20316:5;20322:1;20316:8;;;;;;;;:::i;:::-;;;;;;;20294:31;;20337:40;657:6:32;20337:4:20;:14;;;;;:40;;;;:::i;:::-;20333:234;;;20389:169;;;;;3404:35:4;;;;;20389:53:20;;:169;;20464:7;;20493:8;;20520:5;;20543:4;;20389:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20333:234;-1:-1:-1;20281:3:20;;20247:326;;55672:301;55793:13;55885:82;55916:48;55946:7;55955:8;55916:29;:48::i;:::-;4645:21:19;;4539:137;46038:3950:20;-1:-1:-1;;;46435:7:20;:35;;;46431:161;;-1:-1:-1;;;46542:7:20;46575;46558:25;;;;;;8153:19:207;;8197:2;8188:12;;7993:213;46431:161:20;46598:27;46628:49;:22;46659:17;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;46628:49:20;46598:79;;46683:26;46748:4;:11;46734;46712:33;;:19;:33;;;;:::i;:::-;:47;;;;:::i;:::-;46683:76;;47031:18;47008:19;:41;;:98;;;;-1:-1:-1;47087:19:20;47053:30;47072:11;47053:16;:30;:::i;:::-;:53;;;;47008:98;47004:218;;;47123:92;;;;;17686:12:207;17725:15;;;47123:92:20;;;17707:34:207;17777:15;;;17757:18;;;17750:43;17829:15;;17809:18;;;17802:43;17649:18;;47123:92:20;17480:371:207;47004:218:20;47328:19;47309:16;:38;;;47305:140;;;47364:74;;;;;;;;18029:25:207;;;18102:12;18090:25;;18070:18;;;18063:53;18002:18;;47364:74:20;17856:266:207;47305:140:20;47484:35;47522:72;:22;47556:17;47575:18;47522:33;:72::i;:::-;47484:110;;47741:22;47766:24;47782:7;47766:15;:24::i;:::-;47741:49;;47801:9;47796:486;47816:5;:12;47812:1;:16;47796:486;;;47843:9;47865:5;47871:1;47865:8;;;;;;;;:::i;:::-;;;;;;;47843:31;;47886:42;770:6:32;47886:4:20;:14;;;;;:42;;;;:::i;:::-;47882:394;;;3404:35:4;;;;47940:55:20;;;48017:7;48046:8;48085:17;48132:16;48173:11;48212:22;48252:4;47940:327;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47882:394;-1:-1:-1;47830:3:20;;47796:486;;;-1:-1:-1;48340:32:20;;;:13;48480:107;48498:17;48494:21;;:1;:21;;;48480:107;;;48543:33;:22;48574:1;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;48543:33:20;48534:42;;;;48517:3;;48480:107;;;;48709:7;48656:228;48736:8;48768:5;48797:11;48834:21;48871:4;48656:228;;;;;;;;;;:::i;:::-;;;;;;;;48288:603;48976:18;48953:19;:41;48949:248;;49004:31;49038:48;49068:7;49077:8;49038:29;:48::i;:::-;629:28:19;;;-1:-1:-1;48949:248:20;49254:27;49284:61;49308:7;49317:8;49327:17;49284:23;:61::i;:::-;49254:91;;49353:92;49385:19;49414:16;49353:92;;49438:4;49353:13;:92::i;:::-;49246:206;49506:9;49501:483;49521:5;:12;49517:1;:16;49501:483;;;49548:9;49570:5;49576:1;49570:8;;;;;;;;:::i;:::-;;;;;;;49548:31;;49591:41;881:6:32;49591:4:20;:14;;;;;:41;;;;:::i;:::-;49587:391;;;3404:35:4;;;;49644:54:20;;;49720:7;49749:8;49788:17;49835:16;49876:11;49915:21;49954:4;49644:325;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49587:391;-1:-1:-1;49535:3:20;;49501:483;;;;46281:3707;;;;46038:3950;;;;;;;:::o;4976:669:19:-;5392:4;5386:11;5433:4;5421:17;;-1:-1:-1;;5307:16:19;5480:26;;;5307:16;5303:32;5452:4;5445:63;5552:6;5544;5537:22;5570:51;5575:14;5591:6;5599;5607:13;5570:4;:51::i;2615:1129:36:-;2735:22;2765:21;2789;:11;2869:3:18;2847:25;;2773:104;2789:21:36;2765:45;-1:-1:-1;643:17:18;3110:38;;2816:20:36;2978:11;3110:38:18;2978:11:36;2963:26;;;;:::i;:::-;;2949:40;;3098:4;3092:11;3083:20;;3141:4;3134:5;3130:16;3201:4;3188:11;3184:22;3170:12;3166:41;3160:4;3153:55;3251:11;3244:5;3237:26;3294:1;3271:463;3310:11;3307:1;3304:18;3271:463;;;3704:20;;3683:42;;3662:64;;3576:31;;;;3489:4;3471:23;;;;3397:1;3390:9;3271:463;;;3275:28;;3050:690;;;2615:1129;;;;;:::o;764:1343::-;936:12;;889:17;;914:19;977:26;992:11;936:12;977:26;:::i;:::-;954:49;;1375:4;1369:11;;-1:-1:-1;1418:4:36;1408:15;;-1:-1:-1;;5307:16:19;1465:32:36;;;5307:16:19;5303:32;1437:4:36;1430:69;1541:12;1535:4;1528:26;1585:1;1655:4;1648:5;1644:16;1562:535;1675:11;1672:1;1669:18;1562:535;;;2068:19;;2047:41;;2025:64;;1941:31;;;;1762:1;1755:9;;;;;1854:4;1836:23;1562:535;;900:162:19;989:68;995:14;1011:6;1019:4;:11;1032:24;1051:4;828::14;818:15;;692:151;1032:24:19;989:5;:68::i;7197:1488:15:-;7323:13;1004:16;7348:25;;7344:97;;;7390:44;;;;;;;;3043:25:207;;;3016:18;;7390:44:15;2897:177:207;7344:97:15;7503:13;6184:59;;;6801:16;;;922;6801;834;6790:27;6750:68;;;6728:92;;7766:38;;;7762:192;;7849:19;7831:15;:37;7816:52;;;;7762:192;;;7930:15;7908:19;:37;7893:52;;;;7762:192;-1:-1:-1;8270:16:15;834;922;8137;;;;8126:27;8262:35;;;8576:5;8415:26;8396:45;;;;8395:61;;;8557:24;;;;8586:34;;;;;8556:65;;-1:-1:-1;7197:1488:15;;;;;:::o;6010:2380:19:-;6127:10;;6123:1542;;6280:2;6270:6;:12;6266:122;;6343:2;6334:6;:11;6316:29;;;;6367:2;6357:12;;;;;;:::i;:::-;;;;6266:122;6478:10;;6474:1185;;6686:2;:11;;;6560:21;6744:22;;;6740:135;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;7069:14;7063:21;7048:12;7040:6;7036:25;7032:53;7309:4;7293:13;7287:20;7283:31;7219:4;7215:9;7203:10;7199:26;7144:184;7117:13;7097:243;;7399:13;7389:6;:23;7385:36;;7414:7;;;;7385:36;-1:-1:-1;7562:1:19;7544:19;;;;;7617:23;;;;;7575:30;6474:1185;7694:253;7711:2;7701:6;:12;7694:253;;7805:21;;7783:44;;7880:1;7862:19;;;;-1:-1:-1;;7920:12:19;;;;7908:2;7891:19;7694:253;;;8015:10;;8011:375;;8035:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;8323:20:19;;8233:21;;8256:9;;8229:37;8319:31;;8178:184;8135:237;;-1:-1:-1;6010:2380:19;;;;:::o;14:332:207:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;180:9;167:23;230:66;223:5;219:78;212:5;209:89;199:117;;312:1;309;302:12;543:208;623:20;;683:42;672:54;;662:65;;652:93;;741:1;738;731:12;756:316;874:6;882;935:2;923:9;914:7;910:23;906:32;903:52;;;951:1;948;941:12;903:52;987:9;974:23;964:33;;1016:50;1062:2;1051:9;1047:18;1016:50;:::i;:::-;1006:60;;756:316;;;;;:::o;1077:375::-;1148:8;1158:6;1212:3;1205:4;1197:6;1193:17;1189:27;1179:55;;1230:1;1227;1220:12;1179:55;-1:-1:-1;1253:20:207;;1296:18;1285:30;;1282:50;;;1328:1;1325;1318:12;1282:50;1365:4;1357:6;1353:17;1341:29;;1425:3;1418:4;1408:6;1405:1;1401:14;1393:6;1389:27;1385:38;1382:47;1379:67;;;1442:1;1439;1432:12;1379:67;1077:375;;;;;:::o;1457:1204::-;1755:6;1763;1771;1779;1787;1795;1803;1811;1864:3;1852:9;1843:7;1839:23;1835:33;1832:53;;;1881:1;1878;1871:12;1832:53;1917:9;1904:23;1894:33;;1974:2;1963:9;1959:18;1946:32;1936:42;;2025:2;2014:9;2010:18;1997:32;1987:42;;2076:2;2065:9;2061:18;2048:32;2038:42;;2131:3;2120:9;2116:19;2103:33;2155:18;2196:2;2188:6;2185:14;2182:34;;;2212:1;2209;2202:12;2182:34;2251:78;2321:7;2312:6;2301:9;2297:22;2251:78;:::i;:::-;2348:8;;-1:-1:-1;2225:104:207;-1:-1:-1;2436:3:207;2421:19;;2408:33;;-1:-1:-1;2453:16:207;;;2450:36;;;2482:1;2479;2472:12;2450:36;;2521:80;2593:7;2582:8;2571:9;2567:24;2521:80;:::i;:::-;1457:1204;;;;-1:-1:-1;1457:1204:207;;-1:-1:-1;1457:1204:207;;;;;;2620:8;-1:-1:-1;;;1457:1204:207:o;3079:473::-;3204:6;3212;3220;3273:2;3261:9;3252:7;3248:23;3244:32;3241:52;;;3289:1;3286;3279:12;3241:52;3325:9;3312:23;3302:33;;3354:50;3400:2;3389:9;3385:18;3354:50;:::i;:::-;3344:60;;3454:2;3443:9;3439:18;3426:32;3498:4;3491:5;3487:16;3480:5;3477:27;3467:55;;3518:1;3515;3508:12;3467:55;3541:5;3531:15;;;3079:473;;;;;:::o;3557:250::-;3642:1;3652:113;3666:6;3663:1;3660:13;3652:113;;;3742:11;;;3736:18;3723:11;;;3716:39;3688:2;3681:10;3652:113;;;-1:-1:-1;;3799:1:207;3781:16;;3774:27;3557:250::o;3812:330::-;3854:3;3892:5;3886:12;3919:6;3914:3;3907:19;3935:76;4004:6;3997:4;3992:3;3988:14;3981:4;3974:5;3970:16;3935:76;:::i;:::-;4056:2;4044:15;-1:-1:-1;;4040:88:207;4031:98;;;;4131:4;4027:109;;3812:330;-1:-1:-1;;3812:330:207:o;4147:322::-;4355:6;4344:9;4337:25;4398:2;4393;4382:9;4378:18;4371:30;4318:4;4418:45;4459:2;4448:9;4444:18;4436:6;4418:45;:::i;4474:184::-;-1:-1:-1;;;4523:1:207;4516:88;4623:4;4620:1;4613:15;4647:4;4644:1;4637:15;4663:334;4734:2;4728:9;4790:2;4780:13;;-1:-1:-1;;4776:86:207;4764:99;;4893:18;4878:34;;4914:22;;;4875:62;4872:88;;;4940:18;;:::i;:::-;4976:2;4969:22;4663:334;;-1:-1:-1;4663:334:207:o;5002:1392::-;5140:9;5174:18;5215:2;5207:6;5204:14;5201:40;;;5221:18;;:::i;:::-;5267:6;5264:1;5260:14;5293:4;5317:28;5341:2;5337;5333:11;5317:28;:::i;:::-;5379:19;;;5449:14;;;;5414:12;;;;5486:14;5475:26;;5472:46;;;5514:1;5511;5504:12;5472:46;5538:5;5552:809;5568:6;5563:3;5560:15;5552:809;;;5654:3;5641:17;5690:2;5677:11;5674:19;5671:39;;;5706:1;5703;5696:12;5671:39;5733:23;;5779:4;5823:14;5810:11;;;5806:32;5796:60;;5852:1;5849;5842:12;5796:60;5892:2;5879:16;5918:2;5914;5911:10;5908:36;;;5924:18;;:::i;:::-;5970:110;6076:2;-1:-1:-1;;6002:2:207;5998;5994:11;5990:84;5986:93;5970:110;:::i;:::-;5957:123;;6107:2;6100:5;6093:17;6151:14;6146:2;6141;6137;6133:11;6129:20;6126:40;6123:60;;;6179:1;6176;6169:12;6123:60;6238:2;6233;6229;6225:11;6220:2;6213:5;6209:14;6196:45;6286:1;6265:14;;;6261:23;;6254:34;6301:18;;-1:-1:-1;6339:12:207;;;;5585;;5552:809;;;-1:-1:-1;6383:5:207;5002:1392;-1:-1:-1;;;;;;;5002:1392:207:o;6399:340::-;6576:2;6565:9;6558:21;6539:4;6596:45;6637:2;6626:9;6622:18;6614:6;6596:45;:::i;:::-;6588:53;;6689:42;6681:6;6677:55;6672:2;6661:9;6657:18;6650:83;6399:340;;;;;:::o;6744:184::-;-1:-1:-1;;;6793:1:207;6786:88;6893:4;6890:1;6883:15;6917:4;6914:1;6907:15;6933:125;6998:9;;;7019:10;;;7016:36;;;7032:18;;:::i;7063:925::-;7512:66;7504:6;7500:79;7495:3;7488:92;7470:3;7599;7631:2;7627:1;7622:3;7618:11;7611:23;7663:6;7657:13;7679:74;7746:6;7742:1;7737:3;7733:11;7726:4;7718:6;7714:17;7679:74;:::i;:::-;7781:6;7776:3;7772:16;7762:26;;7816:2;7812:1;7808:2;7804:10;7797:22;7850:6;7844:13;7828:29;;7866:75;7932:8;7928:1;7924:2;7920:10;7913:4;7905:6;7901:17;7866:75;:::i;:::-;7961:17;7980:1;7957:25;;7063:925;-1:-1:-1;;;;;7063:925:207:o;8211:464::-;8457:66;8449:6;8445:79;8434:9;8427:98;8561:6;8556:2;8545:9;8541:18;8534:34;8604:2;8599;8588:9;8584:18;8577:30;8408:4;8624:45;8665:2;8654:9;8650:18;8642:6;8624:45;:::i;8933:184::-;-1:-1:-1;;;8982:1:207;8975:88;9082:4;9079:1;9072:15;9106:4;9103:1;9096:15;9122:862;9284:4;9313:2;9353;9342:9;9338:18;9383:2;9372:9;9365:21;9406:6;9441;9435:13;9472:6;9464;9457:22;9510:2;9499:9;9495:18;9488:25;;9572:2;9562:6;9559:1;9555:14;9544:9;9540:30;9536:39;9522:53;;9610:2;9602:6;9598:15;9631:1;9641:314;9655:6;9652:1;9649:13;9641:314;;;9744:66;9732:9;9724:6;9720:22;9716:95;9711:3;9704:108;9835:40;9868:6;9859;9853:13;9835:40;:::i;:::-;9825:50;-1:-1:-1;9933:12:207;;;;9898:15;;;;9677:1;9670:9;9641:314;;;-1:-1:-1;9972:6:207;;9122:862;-1:-1:-1;;;;;;;9122:862:207:o;10362:184::-;-1:-1:-1;;;10411:1:207;10404:88;10511:4;10508:1;10501:15;10535:4;10532:1;10525:15;11001:128;11068:9;;;11089:11;;;11086:37;;;11103:18;;:::i;11134:168::-;11207:9;;;11238;;11255:15;;;11249:22;;11235:37;11225:71;;11276:18;;:::i;12175:492::-;12350:3;12388:6;12382:13;12404:66;12463:6;12458:3;12451:4;12443:6;12439:17;12404:66;:::i;:::-;12533:13;;12492:16;;;;12555:70;12533:13;12492:16;12602:4;12590:17;;12555:70;:::i;:::-;12641:20;;12175:492;-1:-1:-1;;;;12175:492:207:o;12672:439::-;12725:3;12763:5;12757:12;12790:6;12785:3;12778:19;12816:4;12845;12840:3;12836:14;12829:21;;12884:4;12877:5;12873:16;12907:1;12917:169;12931:6;12928:1;12925:13;12917:169;;;12992:13;;12980:26;;13026:12;;;;13061:15;;;;12953:1;12946:9;12917:169;;;-1:-1:-1;13102:3:207;;12672:439;-1:-1:-1;;;;;12672:439:207:o;13116:690::-;13449:3;13438:9;13431:22;13412:4;13476:57;13528:3;13517:9;13513:19;13505:6;13476:57;:::i;:::-;13581:9;13573:6;13569:22;13564:2;13553:9;13549:18;13542:50;13615:33;13641:6;13633;13615:33;:::i;:::-;13601:47;;13684:6;13679:2;13668:9;13664:18;13657:34;13739:9;13731:6;13727:22;13722:2;13711:9;13707:18;13700:50;13767:33;13793:6;13785;13767:33;:::i;13811:896::-;14262:6;14251:9;14244:25;14305:3;14300:2;14289:9;14285:18;14278:31;14225:4;14332:57;14384:3;14373:9;14369:19;14361:6;14332:57;:::i;:::-;14437:9;14429:6;14425:22;14420:2;14409:9;14405:18;14398:50;14471:33;14497:6;14489;14471:33;:::i;:::-;14457:47;;14540:6;14535:2;14524:9;14520:18;14513:34;14596:9;14588:6;14584:22;14578:3;14567:9;14563:19;14556:51;14624:33;14650:6;14642;14624:33;:::i;:::-;14616:41;;;14694:6;14688:3;14677:9;14673:19;14666:35;13811:896;;;;;;;;;:::o;14965:639::-;15215:6;15210:3;15203:19;15185:3;15241:2;15274;15269:3;15265:12;15306:6;15300:13;15371:2;15363:6;15359:15;15392:1;15402:175;15416:6;15413:1;15410:13;15402:175;;;15479:13;;15465:28;;15515:14;;;;15552:15;;;;15438:1;15431:9;15402:175;;;-1:-1:-1;15593:5:207;;14965:639;-1:-1:-1;;;;;;;14965:639:207:o;15609:184::-;-1:-1:-1;;;15658:1:207;15651:88;15758:4;15755:1;15748:15;15782:4;15779:1;15772:15;15798:360;16001:2;15990:9;15983:21;15964:4;16021:45;16062:2;16051:9;16047:18;16039:6;16021:45;:::i;:::-;16097:2;16082:18;;16075:34;;;;-1:-1:-1;16140:2:207;16125:18;16118:34;16013:53;15798:360;-1:-1:-1;15798:360:207:o;16163:512::-;16414:2;16403:9;16396:21;16377:4;16440:56;16492:2;16481:9;16477:18;16469:6;16440:56;:::i;:::-;16544:14;16536:6;16532:27;16527:2;16516:9;16512:18;16505:55;16608:9;16600:6;16596:22;16591:2;16580:9;16576:18;16569:50;16636:33;16662:6;16654;16636:33;:::i;:::-;16628:41;16163:512;-1:-1:-1;;;;;;16163:512:207:o;16680:616::-;16990:6;16979:9;16972:25;17033:3;17028:2;17017:9;17013:18;17006:31;16953:4;17060:57;17112:3;17101:9;17097:19;17089:6;17060:57;:::i;:::-;17165:14;17157:6;17153:27;17148:2;17137:9;17133:18;17126:55;17229:9;17221:6;17217:22;17212:2;17201:9;17197:18;17190:50;17257:33;17283:6;17275;17257:33;:::i;17301:174::-;17368:12;17400:10;;;17412;;;17396:27;;17435:11;;;17432:37;;;17449:18;;:::i;:::-;17432:37;17301:174;;;;:::o;18127:899::-;18549:6;18538:9;18531:25;18592:3;18587:2;18576:9;18572:18;18565:31;18512:4;18619:57;18671:3;18660:9;18656:19;18648:6;18619:57;:::i;:::-;18724:4;18712:17;;18707:2;18692:18;;18685:45;18749:12;18797:15;;;18792:2;18777:18;;18770:43;18850:15;;18844:3;18829:19;;18822:44;18897:3;18882:19;;18875:35;;;18947:22;;;18941:3;18926:19;;18919:51;18987:33;18951:6;19005;18987:33;:::i;:::-;18979:41;18127:899;-1:-1:-1;;;;;;;;;;18127:899:207:o;19031:708::-;19370:3;19359:9;19352:22;19333:4;19397:57;19449:3;19438:9;19434:19;19426:6;19397:57;:::i;:::-;19502:14;19494:6;19490:27;19485:2;19474:9;19470:18;19463:55;19566:12;19558:6;19554:25;19549:2;19538:9;19534:18;19527:53;19616:6;19611:2;19600:9;19596:18;19589:34;19672:9;19664:6;19660:22;19654:3;19643:9;19639:19;19632:51;19700:33;19726:6;19718;19700:33;:::i;:::-;19692:41;19031:708;-1:-1:-1;;;;;;;;19031:708:207:o","linkReferences":{},"immutableReferences":{"36188":[{"start":929,"length":32}]}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","registerStoreHook(bytes32,address,uint8)":"530f4b60","registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":"0ba51f49","supportsInterface(bytes4)":"01ffc9a7","unregisterStoreHook(bytes32,address)":"05609129"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"FieldLayoutLib_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"PackedCounter_InvalidLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"SchemaLib_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SchemaLib_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableNotFound\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UnauthorizedCallContext\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_DirectCallToSystemForbidden\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"World_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"},{\"internalType\":\"string[]\",\"name\":\"keyNames\",\"type\":\"string[]\"},{\"internalType\":\"string[]\",\"name\":\"fieldNames\",\"type\":\"string[]\"}],\"name\":\"registerTable\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This contract provides functionality for the registration of store-related resources within the World framework.\",\"errors\":{\"SchemaLib_InvalidLength(uint256)\":[{\"details\":\"Error raised when the provided schema has an invalid length.\"}],\"SchemaLib_StaticTypeAfterDynamicType()\":[{\"details\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}],\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_CallbackNotAllowed(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector of the disallowed callback.\"}}],\"World_DelegationNotFound(address,address)\":[{\"params\":{\"delegatee\":\"The address of the delegatee.\",\"delegator\":\"The address of the delegator.\"}}],\"World_DirectCallToSystemForbidden(address)\":[{\"params\":{\"caller\":\"the address who made a direct call to a System\"}}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_InsufficientBalance(uint256,uint256)\":[{\"params\":{\"amount\":\"The amount needed.\",\"balance\":\"The current balance.\"}}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"params\":{\"contractAddress\":\"The address of the contract in question.\",\"interfaceId\":\"The ID of the interface.\"}}],\"World_InvalidNamespace(bytes14)\":[{\"params\":{\"namespace\":\"The invalid namespace.\"}}],\"World_InvalidResourceId(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_SystemAlreadyExists(address)\":[{\"params\":{\"system\":\"The address of the system.\"}}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is set.\"}},\"Store_SpliceDynamicData(bytes32,bytes32[],uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{\"_msgSender()\":{\"returns\":{\"sender\":\"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"value\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"registerStoreHook(bytes32,address,uint8)\":{\"details\":\"The caller must be the owner of the namespace to which the table belongs. The hook must conform to the IStoreHook interface.\",\"params\":{\"enabledHooksBitmap\":\"A bitmap indicating which hook functionalities are enabled.\",\"hookAddress\":\"The address of the storage hook contract.\",\"tableId\":\"The resource ID of the table for which the hook is being registered.\"}},\"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])\":{\"details\":\"Registers a table with the specified configuration. If the namespace for the table does not exist, it's created. Existing namespaces require the caller to be the owner for table registration.\",\"params\":{\"fieldLayout\":\"The field layout structure for the table.\",\"fieldNames\":\"The names of the fields in the table.\",\"keyNames\":\"The names associated with the keys in the table.\",\"keySchema\":\"The schema for the keys of the table.\",\"tableId\":\"The resource ID of the table.\",\"valueSchema\":\"The schema for the values within the table.\"}},\"supportsInterface(bytes4)\":{\"params\":{\"interfaceId\":\"The ID of the interface in question.\"},\"returns\":{\"_0\":\"True if the interface is supported, false otherwise.\"}},\"unregisterStoreHook(bytes32,address)\":{\"details\":\"The caller must be the owner of the namespace to which the table belongs.\",\"params\":{\"hookAddress\":\"The address of the storage hook contract.\",\"tableId\":\"The resource ID of the table from which the hook is being unregistered.\"}}},\"title\":\"Store Registration System\",\"version\":1},\"userdoc\":{\"errors\":{\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_AlreadyInitialized()\":[{\"notice\":\"Raised when trying to initialize an already initialized World.\"}],\"World_CallbackNotAllowed(bytes4)\":[{\"notice\":\"Raised when the World is calling itself via an external call.\"}],\"World_DelegationNotFound(address,address)\":[{\"notice\":\"Raised when the specified delegation is not found.\"}],\"World_DirectCallToSystemForbidden(address)\":[{\"notice\":\"Raised when a System has been called directly and then makes an internal call to World, which is forbidden.\"}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"notice\":\"Raised when trying to register a function selector that already exists.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_InsufficientBalance(uint256,uint256)\":[{\"notice\":\"Raised when there's an insufficient balance for a particular operation.\"}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"notice\":\"Raised when the specified interface is not supported by the contract.\"}],\"World_InvalidNamespace(bytes14)\":[{\"notice\":\"Raised when an namespace contains an invalid sequence of characters (\\\"__\\\").\"}],\"World_InvalidResourceId(bytes32,string)\":[{\"notice\":\"Raised when an invalid resource ID is provided.\"}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Raised when an invalid resource type is provided.\"}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"notice\":\"Raised when trying to register a resource that already exists.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}],\"World_SystemAlreadyExists(address)\":[{\"notice\":\"Raised when trying to register a system that already exists.\"}],\"World_UnlimitedDelegationNotAllowed()\":[{\"notice\":\"Raised when trying to create an unlimited delegation in a context where it is not allowed, e.g. when registering a namespace fallback delegation.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceDynamicData(bytes32,bytes32[],uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"registerStoreHook(bytes32,address,uint8)\":{\"notice\":\"Register a storage hook for a specified table.\"},\"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])\":{\"notice\":\"Register a table within the World framework.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)\"},\"unregisterStoreHook(bytes32,address)\":{\"notice\":\"Unregister a previously registered storage hook for a specified table.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol\":\"StoreRegistrationSystem\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55\",\"dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf\",\"dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4\",\"dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b\",\"dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb\",\"dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84\",\"dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1\",\"dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e\",\"dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924\",\"dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67\",\"dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263\",\"dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912\",\"dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6\",\"dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2\",\"dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99\",\"dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a\",\"dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d\",\"dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3\",\"dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff\",\"dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787\",\"dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551\",\"dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea\",\"dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4\",\"dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44\",\"dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2\",\"dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38\",\"dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64\",\"dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb\",\"dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4\",\"dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf\",\"dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205\",\"dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed\",\"dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU\"]},\"node_modules/@latticexyz/world/src/AccessControl.sol\":{\"keccak256\":\"0xc1b9fa9167dc3d39d5591d0b2d5f7c3c12ad6aeaa0a1b83b1e326ebd104de439\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed0ff59e3240fc85509fc5a1bc9c158f2056bd4be82ba88100ed138afc08d60c\",\"dweb:/ipfs/QmZScS3xhT8EMX4RrnVEqWm1VrGBG9JiA6aiZWtWMphF7q\"]},\"node_modules/@latticexyz/world/src/Delegation.sol\":{\"keccak256\":\"0xd049053827c730ad69585c1c7eb52b4fd9774370063aab461021a111ee0bc86a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e5a05e41e45c0054e835565046276d830581ca181e7ff3d83b15c71b6e01af89\",\"dweb:/ipfs/QmZYGFT621rS5fE2WXKX5wqBMENguMuY7DqaXPkZ2rcEfZ\"]},\"node_modules/@latticexyz/world/src/ERC165Checker.sol\":{\"keccak256\":\"0x26204bcfddbc272eae391f4512a629f53697867d582ea8cabcd6a8e04a255270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://46944bac8253250ba3f645a6164df8e996738bc76a544867677e54ede57619a1\",\"dweb:/ipfs/QmY1XSxQY9MuQSEvGaeQT6kqmeJ3VhYyRRTfzCkRmdsWsX\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d\",\"dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3\",\"dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc\",\"dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xd3645ee90c73dd991659a140c0132c5a2aaf27a296c457737b212d87b2f66402\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://519d81e2bc7233b1488339eaf9220f7eb57086dd3ee8e1831708ebc6e87f00db\",\"dweb:/ipfs/Qmf8RjMxuPXbteMeEB3vstjutsCrmveyBFCjVFt7nSYgtc\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x5e733399a521c7a051601e1f31835ac1653d310a04194e2d10c54206277586cb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d2646c3cf530d6768c4479c64477306a38b3358009792dfe82436cf1e6c27f90\",\"dweb:/ipfs/QmdD5Vk7iswuvWVHBsRkw3n7tJ1gaZ9X9y7s2SkurkQ829\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9\",\"dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91\"]},\"node_modules/@latticexyz/world/src/SystemCall.sol\":{\"keccak256\":\"0x9c3e1e5eb40d130e90726ca4bfabd748d190d076ecd95c668f038635f751cad2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40ba8d4ea85cdac5b622117bf70f56466bfd8b3b693fbb4ab266630768f8865d\",\"dweb:/ipfs/QmQ8ttFdCFJdw1thyDJHheoWNkdpQUM2u7kZzi4zj6mYh7\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x4b83d5791209b8f39773b07e5f162dfd0617f5f9b5b4bd371c087412e5ad01cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://033a3777136e6d5c581efc8bf2535403abe44874409c85d17a353fae6dc56006\",\"dweb:/ipfs/QmaXepBDVnmnMdVzuxbGT2qo5vqWnjB75KNCCdxRehrBMX\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74\",\"dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol\":{\"keccak256\":\"0x705f45c60cd9f5cf5ed2b92d73bef71f2c234ec281297dae79779860cfdf9e6f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b927d760e5f09c72c421ad62ab8da11a38a2a47d321e6b023e3d7c2a4a46a458\",\"dweb:/ipfs/QmXMDWhE5gVHURzFAL7cyA7EeFJRkykZRZwRV9qrTBj13Y\"]},\"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol\":{\"keccak256\":\"0x88a0bc28aa9ef62f524fd2592cc0aaaf3e33a8cb0c7674c6dba7f2115be551f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c64f10d7f97971fca0b7b2ab5b38f8d06d85d54b7b34d8ddc90da17264dae7dd\",\"dweb:/ipfs/QmeMgiefFv9fvetswGBG3q2LzL1SJ6zNwBwupSgVpSmpDG\"]},\"node_modules/@latticexyz/world/src/codegen/tables/FunctionSignatures.sol\":{\"keccak256\":\"0xfcaedc1b1a23f7b2c40fbc5cc71d1781de18f0b1cfbc40a83876852659137d2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8bad7219652c0f76a46107facc5fdcde7c1d3798d201499d87a7f584ac46db7\",\"dweb:/ipfs/Qma1yhF31Q9wxDYjQ8eCYdjpLVXjC2VVHMCipUjPVrRVdF\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceDelegationControl.sol\":{\"keccak256\":\"0x05b07d7a06c7e801fb0c0143dde8fce02907d9940f2862b63dcf085d43e54fdf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18eaa2e74e9db4d142a7743c6ab9bfa5e9ff5c3700c0db148840266c4ac8ad35\",\"dweb:/ipfs/QmRiBMxuzDRTST9C4nu8jo6z2D44HYG6VEpKNyDPa6HMhS\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e\",\"dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c\",\"dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol\":{\"keccak256\":\"0x65c5544ed57f2e01d6729339461496fa3db50dd843db6de163e6cca2b9b17c68\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d8acc162ac647954ffcfd98f6083823713b10d8dc4a05defc18199e9929faf2\",\"dweb:/ipfs/QmVEwCPrDFcQ84qbJyfm3dNEXuqMbUVVqi5DddmJUREriD\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c\",\"dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7\",\"dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR\"]},\"node_modules/@latticexyz/world/src/codegen/tables/UserDelegationControl.sol\":{\"keccak256\":\"0x25c8832ec6db8bc83d0a3c274d8cb49f93bfc57e2b0125c739caf19c1a2c8a51\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a226cf322efa14384b1191263136af4792d5e6285a7ffa9030218a44ec97d571\",\"dweb:/ipfs/QmYC19AoGU6v15mzTKq2oHWMKUeRnzxGEkKgHVEUcUKw91\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/LimitedCallContext.sol\":{\"keccak256\":\"0x95e23ed6d143242d8232f484f86c5ed14964d3b3b592a83ac8ad22239a9001aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2974121de686e47139d8adb6bdc7fd0854a56c745cc0497b8a8d88b55a3e77d6\",\"dweb:/ipfs/QmcXGbZL3wnFdJA8cvj9NnQtrnmkj2co84u3CJphYMg2Lc\"]},\"node_modules/@latticexyz/world/src/modules/init/constants.sol\":{\"keccak256\":\"0xe7eb58bdb9ebaf16162db44d7b02d7e95f70ac46910c19649bb57b835f96dad9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://23227e603db835db6390e872d11569749c8c8f22de770aa775ab7c99f450a752\",\"dweb:/ipfs/QmZkGgdNqbno253umMW8sCHC3QKd5WLjrQi7CbH74x36Z8\"]},\"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol\":{\"keccak256\":\"0x6de6e033845658f714e478982b9125bedb74d4db4e5794e647bc3c4fb6b5f84f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4c22d4ee79114f3a59bc7da6bc74e9ca0412a5c0bd606ccf79b141064699d2a7\",\"dweb:/ipfs/QmRuVPECJGZTw9k2PfAdDbbUUnptAF4e9VcqMkzhJ9mBBL\"]},\"node_modules/@latticexyz/world/src/modules/init/implementations/WorldRegistrationSystem.sol\":{\"keccak256\":\"0xe4b91af36de3852dea10f354ee91b7e6c8a78a0f4c40f72b94bdca411599ca6e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fd5e616104f0eb8c261f55901579b09871e91784995e3cb1055ac575995f7535\",\"dweb:/ipfs/QmYinJme183sz4QXH642734s62U8YkGWZ5fNPPfC6GzJmw\"]},\"node_modules/@latticexyz/world/src/requireInterface.sol\":{\"keccak256\":\"0x95e9469529f790727966c513ed19b42abf065a2cd482faba4b8e3404edfb8730\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://da63bf514679a87134d2c36563c9c398906e1e06b27cb17eed10895cd7c87658\",\"dweb:/ipfs/QmUrfkw8YTs6zUq5eaWPgdLmTUJVsp1CRBGQz6kdh7bs3C\"]},\"node_modules/@latticexyz/world/src/requireNamespace.sol\":{\"keccak256\":\"0x3a98f80c6438d8670281c5ef1ecfc7ddc9c7c0d09fa66d54dda4fa812c89baa1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb7093a4816d52af381d8959601046a1d307fb32b11dfb787813144eb01ca9c6\",\"dweb:/ipfs/QmUj9hw39TNTtamhWvYAe647CYvNuTfxwsYSu2H4QmHfPi\"]},\"node_modules/@latticexyz/world/src/requireValidNamespace.sol\":{\"keccak256\":\"0x75f4a72a942bd59d237e6a1329da8f9a582b8d3d94ffeeb2ee4d7cfe992881bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5d6d3c0bb90663d8d411ef056faf0a126727fdeba806efea4403815943b94027\",\"dweb:/ipfs/QmXrAEDnRrqj3137fXPc91jyDMHFZHHJ39NmMUEh1y2AgL\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8\",\"dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW\"]},\"node_modules/@latticexyz/world/src/systemHookTypes.sol\":{\"keccak256\":\"0xf312c694828e49cd263d1df8ba82beb0376ce8dce1337f9e62ec52e3ed36a145\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b060c176e46fa6e55d2f525d1f1c64e3c371e6bf24b6d0ff05ae20b3c0c0c0d\",\"dweb:/ipfs/QmdLfnBQrYnLq1iwjX9UyzpDqe6EyJ21T56ZWUVJr1VQCy\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d\",\"dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"FieldLayoutLib_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyFields"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"PackedCounter_InvalidLength"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"SchemaLib_InvalidLength"},{"inputs":[],"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"},{"internalType":"uint256","name":"accessedIndex","type":"uint256"}],"type":"error","name":"Store_IndexOutOfBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"uint40","name":"fieldLength","type":"uint40"}],"type":"error","name":"Store_InvalidSplice"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableNotFound"},{"inputs":[],"type":"error","name":"UnauthorizedCallContext"},{"inputs":[{"internalType":"string","name":"resource","type":"string"},{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_AccessDenied"},{"inputs":[],"type":"error","name":"World_AlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_CallbackNotAllowed"},{"inputs":[{"internalType":"address","name":"delegator","type":"address"},{"internalType":"address","name":"delegatee","type":"address"}],"type":"error","name":"World_DelegationNotFound"},{"inputs":[{"internalType":"address","name":"caller","type":"address"}],"type":"error","name":"World_DirectCallToSystemForbidden"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorAlreadyExists"},{"inputs":[{"internalType":"bytes4","name":"functionSelector","type":"bytes4"}],"type":"error","name":"World_FunctionSelectorNotFound"},{"inputs":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"type":"error","name":"World_InsufficientBalance"},{"inputs":[{"internalType":"address","name":"contractAddress","type":"address"},{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"type":"error","name":"World_InterfaceNotSupported"},{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"World_InvalidNamespace"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceId"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_InvalidResourceType"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"World_ResourceNotFound"},{"inputs":[{"internalType":"address","name":"system","type":"address"}],"type":"error","name":"World_SystemAlreadyExists"},{"inputs":[],"type":"error","name":"World_UnlimitedDelegationNotAllowed"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"sender","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"value","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"},{"internalType":"uint8","name":"enabledHooksBitmap","type":"uint8"}],"stateMutability":"nonpayable","type":"function","name":"registerStoreHook"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"},{"internalType":"Schema","name":"keySchema","type":"bytes32"},{"internalType":"Schema","name":"valueSchema","type":"bytes32"},{"internalType":"string[]","name":"keyNames","type":"string[]"},{"internalType":"string[]","name":"fieldNames","type":"string[]"}],"stateMutability":"nonpayable","type":"function","name":"registerTable"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"contract IStoreHook","name":"hookAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"unregisterStoreHook"}],"devdoc":{"kind":"dev","methods":{"_msgSender()":{"returns":{"sender":"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"value":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"registerStoreHook(bytes32,address,uint8)":{"details":"The caller must be the owner of the namespace to which the table belongs. The hook must conform to the IStoreHook interface.","params":{"enabledHooksBitmap":"A bitmap indicating which hook functionalities are enabled.","hookAddress":"The address of the storage hook contract.","tableId":"The resource ID of the table for which the hook is being registered."}},"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":{"details":"Registers a table with the specified configuration. If the namespace for the table does not exist, it's created. Existing namespaces require the caller to be the owner for table registration.","params":{"fieldLayout":"The field layout structure for the table.","fieldNames":"The names of the fields in the table.","keyNames":"The names associated with the keys in the table.","keySchema":"The schema for the keys of the table.","tableId":"The resource ID of the table.","valueSchema":"The schema for the values within the table."}},"supportsInterface(bytes4)":{"params":{"interfaceId":"The ID of the interface in question."},"returns":{"_0":"True if the interface is supported, false otherwise."}},"unregisterStoreHook(bytes32,address)":{"details":"The caller must be the owner of the namespace to which the table belongs.","params":{"hookAddress":"The address of the storage hook contract.","tableId":"The resource ID of the table from which the hook is being unregistered."}}},"version":1},"userdoc":{"kind":"user","methods":{"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"registerStoreHook(bytes32,address,uint8)":{"notice":"Register a storage hook for a specified table."},"registerTable(bytes32,bytes32,bytes32,bytes32,string[],string[])":{"notice":"Register a table within the World framework."},"supportsInterface(bytes4)":{"notice":"Checks if an interface is supported by the contract. using ERC-165 supportsInterface (see https://eips.ethereum.org/EIPS/eip-165)"},"unregisterStoreHook(bytes32,address)":{"notice":"Unregister a previously registered storage hook for a specified table."}},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol":"StoreRegistrationSystem"},"evmVersion":"cancun","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd","urls":["bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55","dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728","urls":["bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf","dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09","urls":["bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4","dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3","urls":["bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b","dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreData.sol":{"keccak256":"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec","urls":["bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb","dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79","urls":["bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84","dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f","urls":["bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1","dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99","urls":["bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e","dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449","urls":["bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924","dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167","urls":["bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67","dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc","urls":["bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263","dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d","urls":["bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912","dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM"],"license":"MIT"},"node_modules/@latticexyz/store/src/PackedCounter.sol":{"keccak256":"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e","urls":["bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6","dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18","urls":["bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2","dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8","urls":["bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99","dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5","urls":["bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a","dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f","urls":["bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d","dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20","urls":["bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3","dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9","urls":["bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff","dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c","urls":["bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787","dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7","urls":["bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551","dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763","urls":["bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea","dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b","urls":["bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4","dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270","urls":["bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44","dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50","urls":["bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2","dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410","urls":["bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38","dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305","urls":["bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64","dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554","urls":["bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb","dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7","urls":["bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4","dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29","urls":["bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf","dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a","urls":["bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205","dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61","urls":["bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed","dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU"],"license":"MIT"},"node_modules/@latticexyz/world/src/AccessControl.sol":{"keccak256":"0xc1b9fa9167dc3d39d5591d0b2d5f7c3c12ad6aeaa0a1b83b1e326ebd104de439","urls":["bzz-raw://ed0ff59e3240fc85509fc5a1bc9c158f2056bd4be82ba88100ed138afc08d60c","dweb:/ipfs/QmZScS3xhT8EMX4RrnVEqWm1VrGBG9JiA6aiZWtWMphF7q"],"license":"MIT"},"node_modules/@latticexyz/world/src/Delegation.sol":{"keccak256":"0xd049053827c730ad69585c1c7eb52b4fd9774370063aab461021a111ee0bc86a","urls":["bzz-raw://e5a05e41e45c0054e835565046276d830581ca181e7ff3d83b15c71b6e01af89","dweb:/ipfs/QmZYGFT621rS5fE2WXKX5wqBMENguMuY7DqaXPkZ2rcEfZ"],"license":"MIT"},"node_modules/@latticexyz/world/src/ERC165Checker.sol":{"keccak256":"0x26204bcfddbc272eae391f4512a629f53697867d582ea8cabcd6a8e04a255270","urls":["bzz-raw://46944bac8253250ba3f645a6164df8e996738bc76a544867677e54ede57619a1","dweb:/ipfs/QmY1XSxQY9MuQSEvGaeQT6kqmeJ3VhYyRRTfzCkRmdsWsX"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e","urls":["bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d","dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695","urls":["bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3","dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc","urls":["bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc","dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xd3645ee90c73dd991659a140c0132c5a2aaf27a296c457737b212d87b2f66402","urls":["bzz-raw://519d81e2bc7233b1488339eaf9220f7eb57086dd3ee8e1831708ebc6e87f00db","dweb:/ipfs/Qmf8RjMxuPXbteMeEB3vstjutsCrmveyBFCjVFt7nSYgtc"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x5e733399a521c7a051601e1f31835ac1653d310a04194e2d10c54206277586cb","urls":["bzz-raw://d2646c3cf530d6768c4479c64477306a38b3358009792dfe82436cf1e6c27f90","dweb:/ipfs/QmdD5Vk7iswuvWVHBsRkw3n7tJ1gaZ9X9y7s2SkurkQ829"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3","urls":["bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9","dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91"],"license":"MIT"},"node_modules/@latticexyz/world/src/SystemCall.sol":{"keccak256":"0x9c3e1e5eb40d130e90726ca4bfabd748d190d076ecd95c668f038635f751cad2","urls":["bzz-raw://40ba8d4ea85cdac5b622117bf70f56466bfd8b3b693fbb4ab266630768f8865d","dweb:/ipfs/QmQ8ttFdCFJdw1thyDJHheoWNkdpQUM2u7kZzi4zj6mYh7"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x4b83d5791209b8f39773b07e5f162dfd0617f5f9b5b4bd371c087412e5ad01cf","urls":["bzz-raw://033a3777136e6d5c581efc8bf2535403abe44874409c85d17a353fae6dc56006","dweb:/ipfs/QmaXepBDVnmnMdVzuxbGT2qo5vqWnjB75KNCCdxRehrBMX"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd","urls":["bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74","dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Balances.sol":{"keccak256":"0x705f45c60cd9f5cf5ed2b92d73bef71f2c234ec281297dae79779860cfdf9e6f","urls":["bzz-raw://b927d760e5f09c72c421ad62ab8da11a38a2a47d321e6b023e3d7c2a4a46a458","dweb:/ipfs/QmXMDWhE5gVHURzFAL7cyA7EeFJRkykZRZwRV9qrTBj13Y"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/FunctionSelectors.sol":{"keccak256":"0x88a0bc28aa9ef62f524fd2592cc0aaaf3e33a8cb0c7674c6dba7f2115be551f8","urls":["bzz-raw://c64f10d7f97971fca0b7b2ab5b38f8d06d85d54b7b34d8ddc90da17264dae7dd","dweb:/ipfs/QmeMgiefFv9fvetswGBG3q2LzL1SJ6zNwBwupSgVpSmpDG"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/FunctionSignatures.sol":{"keccak256":"0xfcaedc1b1a23f7b2c40fbc5cc71d1781de18f0b1cfbc40a83876852659137d2b","urls":["bzz-raw://d8bad7219652c0f76a46107facc5fdcde7c1d3798d201499d87a7f584ac46db7","dweb:/ipfs/Qma1yhF31Q9wxDYjQ8eCYdjpLVXjC2VVHMCipUjPVrRVdF"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceDelegationControl.sol":{"keccak256":"0x05b07d7a06c7e801fb0c0143dde8fce02907d9940f2862b63dcf085d43e54fdf","urls":["bzz-raw://18eaa2e74e9db4d142a7743c6ab9bfa5e9ff5c3700c0db148840266c4ac8ad35","dweb:/ipfs/QmRiBMxuzDRTST9C4nu8jo6z2D44HYG6VEpKNyDPa6HMhS"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd","urls":["bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e","dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568","urls":["bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c","dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemHooks.sol":{"keccak256":"0x65c5544ed57f2e01d6729339461496fa3db50dd843db6de163e6cca2b9b17c68","urls":["bzz-raw://9d8acc162ac647954ffcfd98f6083823713b10d8dc4a05defc18199e9929faf2","dweb:/ipfs/QmVEwCPrDFcQ84qbJyfm3dNEXuqMbUVVqi5DddmJUREriD"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194","urls":["bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c","dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21","urls":["bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7","dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/UserDelegationControl.sol":{"keccak256":"0x25c8832ec6db8bc83d0a3c274d8cb49f93bfc57e2b0125c739caf19c1a2c8a51","urls":["bzz-raw://a226cf322efa14384b1191263136af4792d5e6285a7ffa9030218a44ec97d571","dweb:/ipfs/QmYC19AoGU6v15mzTKq2oHWMKUeRnzxGEkKgHVEUcUKw91"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/LimitedCallContext.sol":{"keccak256":"0x95e23ed6d143242d8232f484f86c5ed14964d3b3b592a83ac8ad22239a9001aa","urls":["bzz-raw://2974121de686e47139d8adb6bdc7fd0854a56c745cc0497b8a8d88b55a3e77d6","dweb:/ipfs/QmcXGbZL3wnFdJA8cvj9NnQtrnmkj2co84u3CJphYMg2Lc"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/constants.sol":{"keccak256":"0xe7eb58bdb9ebaf16162db44d7b02d7e95f70ac46910c19649bb57b835f96dad9","urls":["bzz-raw://23227e603db835db6390e872d11569749c8c8f22de770aa775ab7c99f450a752","dweb:/ipfs/QmZkGgdNqbno253umMW8sCHC3QKd5WLjrQi7CbH74x36Z8"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/implementations/StoreRegistrationSystem.sol":{"keccak256":"0x6de6e033845658f714e478982b9125bedb74d4db4e5794e647bc3c4fb6b5f84f","urls":["bzz-raw://4c22d4ee79114f3a59bc7da6bc74e9ca0412a5c0bd606ccf79b141064699d2a7","dweb:/ipfs/QmRuVPECJGZTw9k2PfAdDbbUUnptAF4e9VcqMkzhJ9mBBL"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/implementations/WorldRegistrationSystem.sol":{"keccak256":"0xe4b91af36de3852dea10f354ee91b7e6c8a78a0f4c40f72b94bdca411599ca6e","urls":["bzz-raw://fd5e616104f0eb8c261f55901579b09871e91784995e3cb1055ac575995f7535","dweb:/ipfs/QmYinJme183sz4QXH642734s62U8YkGWZ5fNPPfC6GzJmw"],"license":"MIT"},"node_modules/@latticexyz/world/src/requireInterface.sol":{"keccak256":"0x95e9469529f790727966c513ed19b42abf065a2cd482faba4b8e3404edfb8730","urls":["bzz-raw://da63bf514679a87134d2c36563c9c398906e1e06b27cb17eed10895cd7c87658","dweb:/ipfs/QmUrfkw8YTs6zUq5eaWPgdLmTUJVsp1CRBGQz6kdh7bs3C"],"license":"MIT"},"node_modules/@latticexyz/world/src/requireNamespace.sol":{"keccak256":"0x3a98f80c6438d8670281c5ef1ecfc7ddc9c7c0d09fa66d54dda4fa812c89baa1","urls":["bzz-raw://fb7093a4816d52af381d8959601046a1d307fb32b11dfb787813144eb01ca9c6","dweb:/ipfs/QmUj9hw39TNTtamhWvYAe647CYvNuTfxwsYSu2H4QmHfPi"],"license":"MIT"},"node_modules/@latticexyz/world/src/requireValidNamespace.sol":{"keccak256":"0x75f4a72a942bd59d237e6a1329da8f9a582b8d3d94ffeeb2ee4d7cfe992881bc","urls":["bzz-raw://5d6d3c0bb90663d8d411ef056faf0a126727fdeba806efea4403815943b94027","dweb:/ipfs/QmXrAEDnRrqj3137fXPc91jyDMHFZHHJ39NmMUEh1y2AgL"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a","urls":["bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8","dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW"],"license":"MIT"},"node_modules/@latticexyz/world/src/systemHookTypes.sol":{"keccak256":"0xf312c694828e49cd263d1df8ba82beb0376ce8dce1337f9e62ec52e3ed36a145","urls":["bzz-raw://2b060c176e46fa6e55d2f525d1f1c64e3c371e6bf24b6d0ff05ae20b3c0c0c0d","dweb:/ipfs/QmdLfnBQrYnLq1iwjX9UyzpDqe6EyJ21T56ZWUVJr1VQCy"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed","urls":["bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d","dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12"],"license":"MIT"}},"version":1},"id":89}
|